Jokaisen jokapäiväisessä elämässään on pakko ratkaista suuri määrä erilaisia tehtäviä. Hän ei ajattele joidenkin ongelmien ratkaisemista ("päivittäistavaroiden ostaminen"), kun taas toiset aiheuttavat vaikeuksia ja pitkiä pohdintoja ("Rubikin kuution kerääminen"). Edellä olevilla yksinkertaisista ja monimutkaisista tehtävistä on yhteistä, että ne voidaan jakaa yksittäisiin ymmärrettäviin vaiheisiin. Tällaisten vaiheiden järjestystä voidaan käyttää muistutuksena ongelman ratkaisemisessa. Tätä jaksoa voidaan kutsua algoritmiksi.
Tietysti voit kerätä Rubikin kuution ilman muistiota yksinkertaisesti siirtämällä reunoja satunnaisessa järjestyksessä. Mutta mahdollisten vaihtoehtojen luettelointi voi viedä kauan, se on tuottamaton ja epäoptimaalinen prosessi. On paljon helpompaa saada luettelo vaiheista, joiden peräkkäinen suorittaminen johtaa aina positiiviseen tulokseen. Nämä periaatteet muodostivat sellaisen käsitteen kuin "algoritmi".
Algoritmi on joukko käskyjä (vaiheita), jotka kuvaavat toteuttajan toimintojen järjestystä ongelman ratkaisemisen lopputuloksen saavuttamiseksi rajallisessa määrin toimia.
Mikä on esiintyjä?
Algoritmin yleisen ymmärtämisen parantamiseksi on myös otettava huomioon "algoritmin toteuttajan" käsite. Algoritmin käsitteessä oleva toteuttaja tarkoittaa abstraktia järjestelmää, joka kykenee suorittamaan algoritmin kuvaamat toiminnot ja jolla on useita ominaisuuksia. Esittäjänä tarkoitetaan useimmiten yhtä tai toista teknistä keinoa (3D-tulostin, CNC-kone, tietokone), mutta on kuitenkin ymmärrettävä, että tämä on laaja käsite: esiintyjä voi olla esimerkiksi henkilö.
Kuitenkin vain järjestelmää, jolla on samanaikaisesti useita parametreja, voidaan kutsua esiintyjäksi:
- ympäristö
- komentojärjestelmä;
- perustoiminnot
- kieltäytyminen, jos toimenpiteiden toteuttaminen on mahdotonta.
Algoritmin ominaisuudet
Esittäjän käsitteelle asetetut rajoitukset johtavat siihen, että myös algoritmin käsitteellä on useita ominaisuuksia ja rajoituksia. Algoritmit ovat yleistyneet juuri näiden rajoitusten takia, jotka edistävät standardointia. Algoritmien ominaisuuksien joukossa ovat:
- massiivisuus (algoritmin kyky pysyä oikeassa erilaisissa syötetiedoissa);
- varmuus (missä tahansa algoritmin vaiheessa esiintyjällä on oltava riittävästi tietoja sen suorittamiseksi);
- determinismi (samoilla syötetiedoilla tulisi saada sama tulos);
Miksi algoritmeja tarvitaan?
Yllä olevat ominaisuudet tarjoavat algoritmien laajan käytön. Joten algoritmit palvelevat kaikkien prosessien kuvausten standardisointia. Ilman algoritmeja minkäänlainen laskenta olisi mahdotonta, ja ratkaisu mihin tahansa ongelmaan alkaisi tyhjästä - vaikka se olisi ratkaistu monta kertaa. Algoritmien käyttö antaa sinun ratkaista nopeasti saman tyyppiset ongelmat, vähentää ratkaisun löytämiseen käytettyä aikaa, automatisoida sen löytämisen ja jakaa myös löydetyn ratkaisun standardoidussa muodossa, mikä tarkoittaa, että jokainen voi ymmärtää sen.