Mikä on algoritmi? Selitys, esimerkit ja algoritmin ero prosessiin

Algoritmi on täsmällinen ja vaiheittainen toimintaohje, joka ratkaisee rajatun ongelman tai tuottaa määritellyn tuloksen. Katso käytännön esimerkit.

Piirroskilpikonna osoittaa kahta taulua, joista toisessa algoritmi etenee syötteestä vaiheiden kautta tulokseen ja toisessa prosessi haarautuu ja palaa takaisin
Luotu OpenAI ImageGenillä

Pyydä tekoälyä tiivistämään:

Algoritmi kuulostaa helposti joltakin, joka asuu hakukoneen konehuoneessa ja ymmärtää vain matematiikkaa. Todellisuudessa algoritmi on täsmällinen ja vaiheittainen toimintaohje, jonka avulla ratkaistaan rajattu ongelma tai tuotetaan määritelty lopputulos.

Riittävän tarkka resepti muistuttaa algoritmia. Siinä määritellään käytettävät ainekset, suoritettavat vaiheet ja tavoiteltu lopputulos. Digitaalisessa palvelussa ainesten tilalla voi olla dataa, mutta perusidea on sama.

Pelkkä luettelo aineksista ja valmis kakku eivät silti muodosta algoritmia. Niiden väliin tarvitaan ohjeet, joiden perusteella suorittaja tietää, mitä tehdä jokaisessa vaiheessa. Ohjeen ei pitäisi nojata siihen, että joku arvaa puuttuvat kohdat tai tulkitsee ilmauksen ”paista sopivasti” samalla tavalla kuin ohjeen kirjoittaja.

Algoritmia voi kuvata kolmella osalla

  1. 01SyöteMistä tiedosta tai tilanteesta aloitetaan?
  2. 02VaiheetMitä tehdään ja millä ehdoilla?
  3. 03TulosMitä suoritus tuottaa?

Lyhyt vastaus: algoritmi on riittävän täsmällinen sarja vaiheita, joilla lähtötilanteesta tuotetaan määritelty tulos.

Syöte, vaiheet ja tulos auttavat kuvaamaan algoritmin rakennetta. Ne eivät yksin todista, että jokin toiminta on algoritmi. Myös tavallisella työprosessilla, raportilla tai ihmisen tekemällä arviolla voi olla lähtötiedot ja lopputulos.

Algoritmeja käytetään lähes kaikkialla

Algoritmeja ei käytetä vain sosiaalisen median suosituksiin. Niitä käytetään hakukoneissa, verkkokaupoissa, navigaattoreissa, tietojen lajittelussa ja toimiston jääkaapin täydentämisessä.

Haku

Missä järjestyksessä sivut näytetään?

Sosiaalinen media

Missä järjestyksessä julkaisut näytetään?

Suoratoistopalvelu

Mitä katsottavaa suositellaan seuraavaksi?

SEO-analyysi

Mihin järjestykseen löydetyt ongelmat asetetaan?

Toimiston jääkaappi

Milloin juomia pitää tilata lisää?

Kaikissa tapauksissa ratkaistaan rajattu tehtävä ennalta määriteltyjen vaiheiden avulla. Lopputulos voi olla päätös, laskettu arvo, järjestetty lista, suositus tai muunnettu tieto.

Esimerkki 1: sosiaalisen median syöte

Sosiaalisen median palvelun pitää valita suuresta julkaisujoukosta, missä järjestyksessä julkaisut näytetään. Yksinkertaistettu algoritmi voi toimia näin:

Syöte

Mitä tietoa käytetään?

  • Tarjolla olevat julkaisut
  • Katsotut julkaisut
  • Klikkaukset ja kommentit
  • Jaetut sisällöt
  • Seuratut tilit

Vaiheet

  1. Laske jokaiselle julkaisulle kiinnostavuutta kuvaava arvio.
  2. Järjestä julkaisut arvion perusteella.
  3. Valitse korkeimmat arviot saaneet julkaisut näytettäviksi.

Tulos

Julkaisut näytetään siinä järjestyksessä, jossa niiden arvioidaan kiinnostavan sinua.

Todelliset suosittelujärjestelmät käyttävät paljon enemmän tietoa ja monimutkaisempia laskentamalleja. Esimerkki näyttää silti niiden perusrakenteen: järjestelmä vastaanottaa tietoa, käsittelee vaihtoehdot määriteltyjen vaiheiden avulla ja tuottaa järjestetyn syötteen.

Tulos ei ole välttämättä hyvä vain siksi, että algoritmi suoritettiin oikein. Jos kiinnostavuutta mitataan huonoilla perusteilla, järjestelmä voi järjestää julkaisut täysin johdonmukaisesti ja silti ärsyttävästi. Kone teki työnsä. Työ vain määriteltiin huonosti.

Esimerkki 2: toimiston jääkaapin juomatilanne

Algoritmin ei tarvitse yrittää ennustaa ihmisen mieltymyksiä. Se voi vastata myös hyvin konkreettiseen kysymykseen: riittävätkö jääkaapin juomat seuraavaan täyttöön asti?

Syöte tänään

36 juomaa jääkaapissa
Arvioitu kulutus
6 / päivä
Seuraava täyttö
8 päivän kuluttua

Vaiheet

6 × 8 = 48
Laske ennen täyttöä tarvittavien juomien määrä.

36 − 48 = −12
Vertaa nykyistä määrää arvioituun tarpeeseen.

Tulos

Tilaa lisää

Vähintään 12 juomaa, käytännössä hieman enemmän turvamarginaaliksi.

Tämä on algoritmi, koska ratkaistava tehtävä ja suoritettavat vaiheet on määritelty. Sama laskenta voidaan tehdä uudelleen eri juomamäärällä, kulutusarviolla ja täyttöpäivällä.

Näin torstaina jääkaapissa on muutakin kuin valo ja yksi kaikkien välttelemä sitruunavesi.

Miten algoritmi eroaa prosessista?

Prosessi ja algoritmi voivat esiintyä samassa työnkulussa, mutta ne kuvaavat eri asioita.

Prosessi

Kuvaa koko työnkulun

  1. Kerää data
  2. Tarkista sivut
  3. Priorisoi löydökset
  4. Raportoi

Vastaa: mitä työssä tehdään ja missä järjestyksessä?

Algoritmi

Ratkaisee rajatun tehtävän

Syöte
Sivun liikenne, konversiot ja tekniset virheet
Vaiheet
Laske sivun merkitys, arvioi virheen vakavuus ja yhdistä arviot
Tulos
Korkea, keskitasoinen tai matala korjausprioriteetti

Vastaa: millä täsmällisillä vaiheilla tulos tuotetaan?

Prosessi kuvaa laajemman työnkulun. Algoritmi määrittelee, miten rajattu tehtävä suoritetaan tai yksittäinen tulos tuotetaan.

Algoritmi voi olla yksi vaihe prosessin sisällä. SEO-auditoinnin prosessi voi esimerkiksi sisältää algoritmin, joka asettaa löydetyt ongelmat korjausjärjestykseen. Raportin kirjoittaminen tai asiakkaan kanssa keskusteleminen eivät silti muutu algoritmeiksi vain siksi, että ne ovat saman prosessin osia.

Tuottaako algoritmi aina hyvän tuloksen?

Ei. Algoritmi voi suorittaa sille annetut vaiheet oikein ja tuottaa silti huonon tai hyödyttömän tuloksen.

Tuloksen laatu riippuu ainakin neljästä asiasta:

  1. Tehtävän määrittelystä. Algoritmi voi ratkaista väärän ongelman erittäin tehokkaasti.
  2. Syötteen laadusta. Puutteellinen tai virheellinen data heikentää tulosta.
  3. Vaiheiden oikeellisuudesta. Virheellinen laskenta tai huonosti määritelty ehto tuottaa väärän tuloksen.
  4. Tavoitteen valinnasta. Jonkun täytyy päättää, mitä hyvällä tuloksella tarkoitetaan.

Algoritmi ei poista vastuuta

Se tekee suoritustavasta täsmällisen ja toistettavan. Ihmisen tehtäväksi jää määritellä tavoite, valita käytettävä tieto ja arvioida tuloksen seuraukset.

Yhteenveto

Algoritmi on täsmällinen ja vaiheittainen toimintaohje, jonka avulla ratkaistaan rajattu ongelma tai tuotetaan määritelty tulos. Se voi järjestää hakutuloksia, laskea reitin, lajitella tietoja, priorisoida SEO-löydöksiä tai kertoa, milloin toimiston jääkaappiin pitää tilata lisää juomia.

Syöte, vaiheet ja tulos auttavat kuvaamaan algoritmin rakennetta. Algoritmin tunnistamiseen tarvitaan silti tarkempia kysymyksiä.

Kun haluat arvioida, onko jokin toiminta algoritmi, kysy:

  1. Onko ratkaistava tehtävä tai tuotettava tulos rajattu selkeästi?
  2. Onko toiminta kuvattu täsmällisinä ja suoritettavina vaiheina?
  3. Onko jokaisessa vaiheessa selvää, mitä tehdään ja millä ehdolla siirrytään seuraavaan vaiheeseen?
  4. Voidaanko sama ohje suorittaa uudelleen sallituilla lähtötiedoilla ilman, että suorittajan täytyy keksiä puuttuvia ohjeita?
  5. Onko suorituksen tuottama tulos tai päättymisehto määritelty?

Jos kaikkiin kysymyksiin löytyy vastaus, toimintaa voidaan todennäköisesti kuvata algoritmina. Pelkkä syöte, jonkinlainen käsittely ja lopputulos eivät vielä riitä. Muuten lähes jokainen maanantaipalaverikin olisi algoritmi, eikä siihen ole syytä ryhtyä.

Jutun erittely

SANAT
800
Kelpo määrä tekstiä.
OTSIKOT
10
Väljä rakenne.
LUKUAIKA
4 min
Selviät kyllä.
LINKIT
0
Rohkea valinta.
KOODILOHKOT
0
Et tarvitse terminaalia.
KUVAT
0
Sekin on rohkea valinta.

Haluatko lisää Karppinen.one-sisältöä?

Lisää Karppinen.one Googlen ensisijaiseksi lähteeksi, niin näet enemmän artikkeleitani hakutuloksissa.

Lisää Karppinen.one ensisijaiseksi lähteeksi Googlessa