Hur Alan Turing hittade maskintänkande i det mänskliga sinnet
av Jonathon Keats
1935 bestämde sig Alan Turing för att bygga upp ett rykte genom att överflankera världens ledande matematiker. Turing var 22 år gammal, och en ny karl i Cambridge. Hans mål, David Hilbert, var den vördade University of G Jacobttingen professor som ensam hade satt forskningsagendan för matematik från 20-talet.
Hilbert var ingen match för den brittiska uppstarten. I sin bok Turings Vision visar Chris Bernhardt skickligt hur Turing streckade en av Hilberts stora ambitioner med ett mästerligt bevis – under vilket han oavsiktligt uppfann den moderna datorn.
annons
titeln på Turings papper, ”På beräkningsbara nummer, med en ansökan till Entscheidungsproblem” (vilket betyder ”beslutsproblem”), är knappast inbjudande, och läsning det tar avancerad utbildning. Detta kan förklara varför, som Turings berömmelse exploderade, mest populära skrivande fokuserade på hans krigstid codebreaking, hans efterkrigstid skriva om artificiell intelligens-eller hans förföljelse och åtal för att vara gay och postum kunglig förlåtelse.
men vad Bernhardts bok saknar i drama, kompenserar det för i klar förklaring. Turings Vision gör det möjligt för noggranna läsare att uppskatta beviset som gjorde Turings namn och som en bonus att förstå grunderna i moderna datorer.
Entscheidungsproblemet var en del av Hilberts arbete för att visa att matematikens grundläggande axiom är logiskt konsekventa. För detta ändamål sökte Hilbert en algoritm – ett beräkningsförfarande – som skulle indikera om ett givet matematiskt uttalande kunde bevisas från dessa axiomer ensamma. Turing visade beslutsamt att det inte fanns någon sådan algoritm.
”Turing visade att det inte fanns någon mekanisk uppsättning regler för lösningar av alla matematiska problem”
För att göra det, förklarar Bernhardt, var Turing tvungen att först upprätta en arbetsdefinition för termen algoritm – för att definiera vad det innebär att beräkna. Turing tittade på mänskliga ”datorer” – människor som gjorde beräkningar. Uppgiften innebär att skriva symboler på papper, noterade han. ”Datorns beteende när som helst bestäms av symbolerna… han observerar och hans ”sinnestillstånd”.”
att bryta ner uppenbarligen komplex kogitation i enkla aritmetiska förfaranden, gjorde Turing beräkning explicit och eliminerade det mänskliga elementet. ”Turings nya insikt var att definiera algoritmer när det gäller teoretiska datormaskiner”, skriver Bernhardt. ”Allt som kan beräknas kan beräknas med en Turing-maskin.”
därför var maskinerna centrala för Turings papper. För att visa att det fanns algoritmer som Turing maskiner skulle köras på obestämd tid och inconclusively var ett sätt att visa Hilbert misstog. Turing bevisade”att det fanns frågor som var bortom algoritmernas makt att svara”. Hans triumf var spektakulär och förödande för dem som trodde (som Hilbert gjorde) att alla problem kunde lösas.men lika avgörande som de teoretiska maskinerna var för Turings bevis, visade de sig ha ännu mer inverkan i sig, vilket gav en konceptuell modell för moderna datorer. Inflytandet var direkt och informerade John von Neumanns banbrytande design från 1945 för elektroniska datorer och de rumsstorleksmaskiner som tillämpade hans arkitektur. Liksom Turings maskiner använde datorerna ettor och nollor för att koda program och data. Detta är fortfarande viktigt för språk och nätverk på hög nivå, så när man lär sig om Turing-maskiner tar läsarna upp principer för datavetenskap.
det finns också filosofiska konsekvenser idag. Med baserade datorer på mänskligt beteende noterade Turing att människor verkligen är Turing-maskiner. Datorer är våra speglar: oavsett om vi undrar eller skakar senast AI, tittar vi bara på oss själva.
Turings Vision: Födelsen av datavetenskap
Chris Bernhardt
MIT Press (köp från Amazon*)
denna artikel dök upp i tryck under rubriken ”är vi Turing-maskiner?”
(* När du köper via länkar på den här sidan kan vi tjäna en liten provision, men det spelar ingen roll i det vi granskar eller vår åsikt om det.)
mer om dessa ämnen:
- matematik
- computing
- algoritmer