Komputaatio

Komputaatio on yleinen informaation käsittelyä kuvaava termi. Se sisältää siten laajan alueen inhimillisestä ajattelusta kapea-alaiseen laskentaan. Sanalla komputaatio korostetaan hyvin määritellyn mallin (formaali malli) suorituksen seuraamista ja sitä, kuinka se voidaan ilmaista algoritmilla, protokollalla, verkkorakenteella tai muulla vastaavalla.

Englanninkielestä löytyy selvä yhteys sanojen computer ja computation, välille. Suomenkielinen käännös laskenta ei kuitenkaan kuvaa hyvin komputaation monipuolista luonnetta, johon liittyy myös loogista toimintaa ja yleensä kaikki mitä tietokoneella voidaan tehdä. Siten on paikallaan käyttää omaa termiä komputaatio. 

 Komputaation eri muotoja 

Komputaatiot  voidaan luokitella kolmella ortogonaalisella kriteerillä: 
 digitaalinen vs. analoginen
 perättäinen vs. rinnakkainen
 eräajo vs. interaktiivinen

Digitaalista komputaatiota käytetään tyypillisesti simuloimaan luonnon prosesseja ja ilmiöitä, joista osa voi olla analogisia. Monimutkaisimmissa tapauksissa on syytä erottaa toisistaan matemaattinen malli ja sen suorittaminen. Jos esimerkiksi sqrt tarkoittaa neliöjuuren laskentaa, sqrt(2) palauttaisi likiarvon 1.41.., mutta aivan toinen tarkastelutapa on kuinka ohjelmoida tai laskea neliöjuuri kullekin luvulle tietokoneella.

 Komputaation matemaattisia malleja 

Komputaatioteoriassa (myös laskennan teoria, laskettavuus) on määritelty erilaisia matemaattisia malleja tietokoneille ja ohjelmistoille. Komputaatio on tällöin kehityskulku (evoluutio), joka saa aikaan diskreettejä tapahtumia kuvatulle mallille.  Tyypillisiä tällaisia malleja ovat:

 Turingin kone
 Pinoautomaatti
 Äärellinen automaatti

Tietokoneiden matemaattisia malleja sekä ohjelmointikieliä voidaan luokitella niiden ilmaisukyvyn ja rajoitusten mukaan Chomskyn hierarkialla. Tosin on muitakin luokitteluja.

 Kirjallisuutta 
 Hopcroft, John E., and Jeffrey D. Ullman (2006). Introduction to Automata Theory, Languages, and Computation. 3rd ed Reading, MA: Addison-Wesley.  Johdatus automaattien teoriaan, kieliin ja komputaatioon.

Luokka:Tietojenkäsittelytiede
Luokka:Tietojenkäsittelyteoria