Pamiętacie film “Imitation Game” w reżyserii Mortena Tyldum’a z Benedictem Cumberbatch’em w roli głównej z 2014 roku? Film opowiada tragiczną historię genialnego brytyjskiego matematyka Alana Turinga – jednego z głównych członków zespołu łamiącego niemiecką maszynę szyfrującą Enigmę [1].

Enigma

Co ma więc wspólnego tytuł „Imitation Game” z rozszyfrowywaniem Enigmy i rolą Alana Turinga w tym procesie? Prace nad kodem Enigmą oraz maszynami deszyfrującymi były objęte najwyższym poziomem bezpieczeństwa i absolutną tajemnicą wojskową. Proces odtajniania dokumentów oraz roli jaką miał Alan Turing w tych pracach rozpoczął się dopiero w 1982 roku. A jednak Alan Turing w świecie matematyki i informatyki jest niemal postacią kultową – znaną od ponad 70 lat – dzięki niemu mamy współczesny komputer, a swoją sławę zawdzięcza właśnie wspomnianej „Imitation Game” – ale po kolei.

Komputery i pytanie czy mogą one myśleć

Turing jako matematyk był już z znany w latach trzydziestych ubiegłego wieku. W 1936 roku, mając zaledwie 24 lata napisał swoją najważniejszą pracę z dziedziny matematyki „On Computable Numbers With An Application To The Entscheidungsproblem”, w której zaproponował abstrakcyjną koncepcję maszyny obliczeniowej wyposażonej w program – ciąg instrukcji oraz pamięć – rolę pamięci miała pełnić taśma z zapisanymi instrukcjami oraz parametrami programu. Dziś koncepcję tę znamy jako tzw. „uniwersalna maszyna Turinga” i według niej zbudowane są wszystkie współczesne komputery (za wyjątkiem komputerów kwantowych). W czasach kiedy Turing pisał swój artykuł nie istniały techniczne możliwości zbudowania takiej maszyny obliczeniowej. Jednak wybuch II Wojny Światowej przyspieszył prace nad tworzeniem maszyn , które w pewny sensie automatyzowały obliczenia oraz tzw. przekształcenia symboli (niezbędne do łamania kodów Enigmy). Urządzenia te były oparte o przekaźniki elektromagnetyczne. Testowano również użycie lamp próżniowych. Prace te ostatecznie doprowadziły do powstania w połowie lat 40stych XX wieku pierwszych komputerów opartych o wskazane przez Turinga założenia.

Powstanie komputerów – maszyn, które znacznie przewyższały zdolności człowieka w obszarze arytmetyki doprowadziło do coraz częściej zadawanego pytania – „Czy maszyna może myśleć?”. Czy kiedyś komputer będzie myślał jak człowiek, rozwiązywał problemy, grał w szachy czy stanie się kreatywny?

Imitation Game

W październiku 1950 roku, Turing w czasopiśmie „Mind” opublikował swój bodajże najsłynniejszy artykuł „Computing Machinery and Intelligence”. To właśnie dzięki niemu jest dziś tak znany. Turing postanowił raz na zawsze „rozwiązać” problem myślących maszyn.

Na wstępie artykułu Turing jasno postawi tezę, że postawione pytanie jest bez sensu – komputery nigdy, wg autora [2], nie będą myśleć w sposób znany człowiekowi ponieważ działanie komputera oparte jest na innych zasadach. Czy jednak będą myśleć w ogóle? W jaki sposób się o tym przekonać? Jak sprawdzić czy maszyna myśli? Matematyk doszedł do wniosku, że jedyną metodą będzie obserwacja „zachowania” takiej maszyny – jeżeli dojdziemy do wniosku, że nie będziemy w stanie odróżnić jej zachowania od zachowania człowieka, to taką maszynę będziemy mogli uznać za myślącą [3]. I tu zbliżamy się do wyjaśnienia tytułu wspomnianego filmu – Turing wpadł na genialny w swojej prostocie pomysł. Przed II wojną światową, w Wielkiej Brytanii grano w bardzo popularna grę towarzyską – „Imitation game” (https://en.wikipedia.org/wiki/Computing_Machinery_and_Intelligence ) – W grze brały udział trzy osoby: kobieta, mężczyzna oraz „sędzia”, którym mogła być dowolna inna osoba. Kobieta i mężczyzna zamykali się w oddzielnych pokojach, w taki sposób aby sędzia nie wiedział, w którym pokoju znajduje się kobieta, a w którym mężczyzna. Zabawa polegała na tym, że sędzia mógł zadawać każdej osobie dowolne pytania, które przekazywał w formie pisanej na karteczkach podawanych pod drzwiami. Kobieta i mężczyzna odpowiadali na te pytania, również w formie pisemnej. Zadanie „sędziego” polegało na tym by odgadnąć kto jest kobietą a kto mężczyzną.

Rys. Oryginalna koncepcja gry w naśladownictwo https://en.wikipedia.org/wiki/Turing_test

Turing wpadł na pomysł aby jedną z osób zastąpić komputerem. Zadanie sędziego polegałoby na tym aby zidentyfikować kto jest człowiekiem a co jest maszyną.

Rys. Gra w naśladownictwo z komputerem w roli jednej z osób https://en.wikipedia.org/wiki/Turing_test

Turing zaproponował aby komunikacja odbywała się za pomocą tzw. dalekopisu zamiast ręcznie pisanych pytań i odpowiedzi (wtedy nie było Internetu!). Zasugerował nawet uproszczenie „testu” eliminując człowieka jako drugiego gracza. W takim przypadku sędzia miałby za zadanie jedyne zidentyfikowanie czy komputer po drugiej stronie jest na tyle przekonujący, iż jego odpowiedzi (zachowania / reakcje) są nieodróżnialne od zachowania człowieka. Gdyby komputer stał się nie do odróżnienia od człowieka w ocenie innego człowieka, to moglibyśmy uznać, że taki komputer na swój sposób myśli i potrafi imitować zachowania nieodróżnialne od zachowań człowieka.

Test Turinga w filmie

Pisząc o Teście Turinga nie sposób nie odnieść do jego wpływu na kulturę – zwłaszcza literaturę i kino. Wspomniany test często gości na ekranach kin.

W klasycznym już „Blade Runner” w reżyserii Ridleya Scotta z 1982 roku z Harissonem Fordem w roli głównej słynna jest scena kiedy łowca androidów policjant Rick Deckard (grany przez Forda) – przesłuchuje podejrzanego i stara się ustalić czy jest on człowiekiem czy replikantem:

https://www.youtube.com/watch?v=ChJVaTqU2So

W „WestWorld” androidy są tak doskonałe i nieodróżnialne od ludzi, iż tylko zdawkowo wspomina się, że przeszły one już Test Turinga w odległej przeszłości:

https://www.youtube.com/watch?v=CjUZwGqHeHQ

Chyba jednak najbardziej dotykającym tematu tytułem jest Ex Machina z 2015 roku niemal w całości poświęcona testowi myślącej maszyny:

https://www.youtube.com/watch?v=mAtmopQxu0o

Czy maszyna kiedyś przejdzie Test Turinga?

Turing wierzył, że „in about fifty years’ time it will be possible, to programme computers, with a storage capacity of about 109, to make them play the imitation game so well that an average interrogator will not have more than 70 per cent chance of making the right identification after five minutes of questioning”I [4].

Jakiś czas później w wywiadzie dla BBC Turing dodał, że komputer będzie też w stanie wygrywać z człowiekiem w szachy na poziomie arcymistrzowskim przed końcem XX wieku. Patrząc z perspektywy Turinga – gra w szachy z komputerem oraz gra w naśladownictwo mogły być synonimami „myślenia”. Choć przewidywania Turinga co do wygranej przez komputer w szachy okazały się trafne (jak wiemy w 1997 komputer Deep Blue firmy IBM pokonał w meczu ówczesnego mistrza świata Garryego Kasparowa), to jak dotąd żaden komputer nie przeszedł wiarygodnego Testu Turinga. Trzeba też przyznać, że działanie Deep Blue w dużej mierze opiera się o zasadę tzw. „brutalnej siły” opartej o wprowadzenie odpowiednio dużej ilości tzw. otwarć i końcówek gry w szachy do pamięci komputera a nie myślenie sensu stricte. Choć złożoność gry w szachy sięga 10120 i przekracza liczbę atomów we Wszechświecie, to liczba otwarć oraz końcówek gry jest zdecydowanie mniejsza nie mówiąc, już o liczbie optymalnych posunięć. Stąd też stosunkowa łatwość w zbudowaniu programu komputerowego, który byłby w stanie pokonać mistrza szachowego. Problem w dużej mierze opierał się na mocy obliczeniowej oraz pamięci (dziś podobną mocą obliczeniową jak Deep Blue dysponują smartphony…).

Znaczenie ciekawsze było jednak zwycięstwo komputera w inną grę logiczną – GO, której złożoność szacuje się na 10720 kombinacji (czyli o 600 rzędów wielkości więcej niż dla szachów: 10 z sześciuset zerami!). W tym przypadku moc obliczeniowa oraz pamięć nie zdają się rozwiązać problemu – lecz z rozwiązaniem przyszła sztuczna sieć neuronowa oraz techniki tzw. uczenia maszynowego. W 2016 roku firma DeepMind zbudowała program AlphaGo, który w dniach 9 – 15 marca 2016 roku rozgromił ówczesnego mistrza świata Lee Sedola w pięciu pojedynkach. Sztuczna sieć neuronowa działa na takiej samej zasadzie jak neurony w mózgu i stąd można powiedzieć, że zbliża nas to do zbudowania maszyny, która będzie potrafiła myśleć. (https://en.wikipedia.org/wiki/AlphaGo_versus_Lee_Sedol).

I tu wracamy do kwestii przejścia przez komputer Testu Turinga – choć od 2014 roku co jakiś czas dowiadujemy się, że jakiś program „przeszedł” Test Turinga, to wkrótce okazuje się, że za tą informacją tkwi jakiś „haczyk”. Na dziś z całą pewnością można powiedzieć, że żaden program nie przeszedł Testu Turinga. Choć ocenia się, że współczesne superkomputery osiągnęły moc obliczeniową mózgu (a nawet większą) czyli ok. 2x 1015 operacji na sekundę, a w 3ciej dekadzie XXI wieku osiągną taką moc komputery osobiste, to problem tkwi w oprogramowaniu. Złożoność języka (w przeciwieństwie do szachów czy gry w GO) jest nieskończona. Program, który ma przejść Test Turinga nie tylko będzie musiał zrozumieć język naturalny, ale również posiadać wiedzę o świecie i swoim otoczeniu, zdrowy rozsądek, własne doświadczenia oraz rozumieć prawa rządzące ich zachowaniem. Kiedy to nastąpi? Myślę, że wkrótce (przed końcem lat 20stych XXI wieku), ale nawet Turing się mylił…

[1] Kod Enigmy tak naprawdę został złamany przez polskich matematyków: Mariana Rejewskiego, Henryka Zygalskiego oraz Jerzego Różyckiego już w roku 1932 (!). Opracowali oni również metodę i maszynę, dzięki której można byłoby złamać szyfr – tzw. „bombę” – niestety budżet Biura Szyfrów Wojska Polskiego nie pozwalał na rozbudowę projektu i ostatecznie plany bomby oraz samą maszynę szyfrującą zdobytą przez polski wywiad przekazano wywiadowi brytyjskiemu. W dniach 25-26 lipca 1939 roku w Pyrach pod Warszawą odbyła się konferencja polskich, brytyjskich i francuskich kryptologów, podczas której polscy matematycy wytłumaczyli działanie Enigmy i maszyn deszyfrujących oraz zaprezentowali swoje umiejętności kryptograficzne. Informacje te zostały wykorzystane do stworzenia maszyny deszyfrującej tzw. „bomby Turinga” – to właśnie ta maszyna została zaprezentowana we wspomnianym filmie. 

[2] Kiedy Turing pisał artykuł nie istniały jeszcze sztuczne sieci neuronowe, których działanie przypomina działanie ludzkiego mózgu. Pierwszą sztuczną siecią neuronową był Perceptron opracowany Franka Rosenblatta w roku 1957. Dziś pewne zadania poznawcze realizowane przez komputery jak rozpoznawanie mowy, obrazów czy wzorców zachowań opiera się właśnie o symulację działania neuronów i tzw. uczenie maszynowe. Wydaje się więc, że komputer który przejdzie Test Turinga będzie właśnie zbudowany w oparciu o symulację działania neuronów i sztuczne sieci neuronowe.

[3] Lata pięćdziesiąte były czasami triumfów psychologii behawioralnej, która przede wszystkim badała zewnętrzne czynniki procesów umysłowych – czyli zachowania. Wydaje się, że nurt ten mocno wpłynął na poglądy Turinga i ostateczny pomysł jak zweryfikować czy maszyna może myśleć.

[4] https://www.csee.umbc.edu/courses/471/papers/turing.pdf

Sprawdź również: https://glivia.com/

By admin