Mikä on Turingin kone?

Turingin kone on filosofinen rakenne tietokoneen toiminnalle, jonka keksi vuonna 1936 kuuluisa englantilainen 20 -luvun matemaatikko ja logiikka Alan Turing. Turingin koneen ideat ovat perusta kaikille nykyaikaisille tietokoneohjelmistoille ja -laitteistoille, jotka ovat olemassa vuodesta 2011 lähtien, vaikka todellisia Turingin luomia konsepteja ei koskaan käytetty todellisen laitteen rakentamiseen tuolloin, ja ne keksittiin ennen digitaalisten tietokoneiden olemassaoloa todellinen muoto. Periaatteisiin, joilla Turingin kone toimii, kuuluvat joukko tulo- ja lähtötietojen ohjaimia, kone tietojen käsittelemiseksi jossain muodossa ja vakiintuneet säännöt siitä, miten kone käsittelee näitä tietoja.

Nero Alan Turingin löydön takana oli, että mikä tahansa johdonmukainen symboliryhmä, joka edustaa mielekästä tietoa, kuten matemaattiset symbolit tai kirjaimet, jotka koostuvat kielestä, voidaan käsitellä koneellisesti mekaanisesti, jos heille annetaan asianmukaiset säännöt niiden käsittelylle. Tämä johtaisi mekaanisten laitteiden luomiseen, joita voitaisiin esittää loogisilla kysymyksillä monimutkaisiin ongelmiin ja saada nopeasti puolueettomia vastauksia. Turingin kone oli tässä suhteessa tietokonealgoritmin edeltäjä, joka on koottu luettelo tietokoneen ohjeista, joihin tietokoneiden keskusyksiköt (CPU) tukeutuvat toimimaan vuodesta 2011 lähtien.

Turingin koneen suunnittelu oli yksinkertaista 21-luvun nykypäivän laskentastandardien mukaan, ja sen fyysisellä toiminnalla oli epäkäytännöllisyyttä sen toteuttamisessa, mutta ideoilla, joihin se rakennettiin, oli vankka perusta. Kone muodostui nauhasta tai nauhasta, johon oli painettu symboleja, joita pää pystyi lukemaan, kun nauha vietiin sen yli. Kun symboleja luettiin, ne kutsuivat tiettyjä koneen tiloja, jotka ohjaisivat nauhan liikettä ja vaikuttavat koneen tuottamiin lähtöarvoihin. Vuoden 2011 analoginen nykyaikaisille tietokonejärjestelmille olisi, että nauha edustaa tietokoneohjelmistokoodia tai -algoritmeja, lukija on suoritin ja lähtö on näyttö- ja lähetysjärjestelmiä, kuten näyttöjä, kaiuttimia ja tulostimia, verkkoliikennettä ja paljon muuta.

Turingin koneen taustalla olevia ideoita pidettiin perustavanlaatuisena funktiona minkä tahansa laskentasarjan suorittamisessa, ja niitä voitaisiin myös verrata ihmisen aivojen toimintaan. Turing itse ja muut aikansa ajattelevat, että Turingin kone voitaisiin mukauttaa suorittamaan käytännössä mitä tahansa kuviteltavissa olevaa laskentaa ja toimimaan universaalina koneena kaikkien ihmisten ongelmien ratkaisemiseksi. Konseptin kanssa pian noussut ongelma tunnetaan kuitenkin nimellä Turingin tarpit, ja se viittaa siihen tosiasiaan, että vaikka Turingin kone voi käsitellä mitä tahansa johdonmukaista symbolisarjaa, tällaisen koneen tuottaminen merkityksellisiin vastauksiin kysymykset perustuvat täysin yhä monimutkaisempiin ja monikerroksisiin käsittelysääntöihin.

Tietojenkäsittelytiede kohtasi pian ongelmia Turingin koneen periaatteisiin perustuvien ohjelmisto- ja laitteistojärjestelmien joutumisessa merkityksettömiin laskelmiin, joita kutsutaan ohjelmasilmukoiksi. Loogiset rajoitukset johtivat mukautuksiin Turingin koneen periaatteisiin, kuten kvantti- ja todennäköisyysperusteisiin Turingin koneisiin. Todennäköisyyspohjainen Turingin kone käyttää ajatusta siitä, että useita nauhoja ajetaan koneessa samanaikaisesti eri tulosten tuottamiseksi rinnakkain, jotka sitten painotetaan toisiaan vastaan ​​sen perusteella, mikä todennäköisyys on todennäköisin. Tällaiset koneet tekisivät johtopäätöksiä samalla tavalla kuin sumea logiikkaohjelmisto toimii kehittyneissä ohjausjärjestelmissä vuodesta 2011 lähtien.

Turingin koneen periaatteeseen perustuvassa kvanttitietokoneessa olisi äärettömän pitkä nauha, jossa on soluja symboleista ikuisessa määrittämättömässä tilassa lukemiseen asti. Tämä tarjoaisi rinnakkaiskäsittelyn muodon, joka olisi huomattavasti parempi kuin tietokoneissa käytetyt tietojenkäsittelymenetelmät vuodesta 2011. Quantum Turing -koneet tarjoavat mahdollisuuden tallentaa useita arvoja yksittäisiin muistisoluihin, kunnes niitä käytetään, mitä tavalliset logiikkapohjaiset tietokoneet eivät voi tehdä.