Maszyna Turinga
Maszyna Turinga to model prostego automatu logicznego, opracowanego przez angielskiego matematyka i kryptologa, Alana Turinga, znanego przede wszystkim ze swojego wkładu w rozszyfrowanie kodu maszyny Enigma, używanej przez Nazistów podczas II wojny światowej. Turing przedstawił światu koncepcję swojej "logicznej maszyny obliczeniowej" w 1936 roku (W. Isaacson 2014, s. 135-137). Uznaje się ją za najprostszą konstrukcję podobną współczesnym komputerom. Opiera się ona na działaniu systemu jedynkowego (S. Wrycza (red.) 2010, s. 54). Do dziś funkcjonuje stwierdzenie, że program jest rozwiązywalny na komputerze, jeżeli da się zdefiniować odpowiednią dla niego maszynę Turinga. Podobnie też, za obliczalną uważa się taką funkcję, która zostanie wyliczona przez tę maszynę (Wrycza S. (red.) 2010, s. 185).
TL;DR
Maszyna Turinga to prosty model automatu logicznego opracowany przez Alana Turinga. Składa się z taśmy, ruchomej głowicy i układu sterującego. Maszyna działa na zasadzie odczytywania i zapisywania symboli na taśmie. Turing zaproponował Test Turinga, który ma sprawdzić, czy maszyny mogą myśleć jak ludzie. Test polega na dialogu z maszyną, gdzie sędzia nie może odróżnić jej od człowieka. Test jest kontrowersyjny i nie definiuje w pełni inteligencji maszynowej. Podczas testu w 1991 roku, maszyna Weintrauba oszukała połowę sędziów, a nawet trzech sędziów uznano Shakespearowego znawcę za maszynę.
Składowe Maszyny Turinga
Automat logiczny musi zawierać trzy podstawowe składowe, żeby móc zostać uznanym za mechanizm Maszyny Turinga. Są nimi:
- taśma o nieskończonej długości, podzielona na komórki zawierające przetwarzane znaki,
- ruchoma głowica odczytująco-zapisująca,
- układ pozwalający na sterowanie głowicą w lewo i w prawo (Wrycza S. (red.) 2010, s. 185).
Taśma składa się z komórek, z kolei każda komórka zawiera symbol analizowany i przetwarzany przez maszynę. Są to tzw. dane wejściowe. Dzięki układowi sterującemu, głowica jest w stanie odczytywać wartości z kolejnych komórek. Po przetworzeniu znaków są one kodowane jako dane wyjściowe. Następnym elementem maszyny jest głowica. To ona jest odpowiedzialna za analizę symboli zawartych w komórkach. Przetwarzanie danych to z kolei nic innego, jak odczytywanie wartości z komórki i zapisywanie do niej innego symbolu. Ostatnią składową jest układ sterujący. To on nakazuje głowicy przemieszczenie się do sąsiednich komórek oraz odbiera i wysyła do niej poszczególne symbole (Lula P., Madej J., Stal J., Tadeusiewicz R., Tuchowski J. (2012), s. 30-31).
Sposób działania
Aby maszyna Turinga działała skutecznie, jej układ sterujący musi znajdować się w pewnym stanie. To właśnie ten stan określa, jaką czynność ma wykonać maszyna po sczytaniu symbolu z komórki. Stany przyjmują wartości od q0 do qn, gdzie q0 określa stan początkowy. Pojedyncza instrukcja dla maszyny Turinga zawiera pięć symboli - So, qi, Sz, qj, L/R, gdzie:
- So stanowi symbol, który jest odczytywany z aktualnej komórki,
- qi to aktualny stan układu sterującego,
- Sz określa znak, który ma zostać zapisany w bieżącej komórce,
- qj oznacza stan, w który ma przejść układ sterowania po wykonaniu instrukcji,
- L/R czyli zmiana położenia głowicy. L to przesunięcie o jedną komórkę w lewo, natomiast R w prawo. N to komenda pozostawiająca głowicę w niezmienionej pozycji (Lula P., Madej J., Stal J., Tadeusiewicz R., Tuchowski J. (2012), s. 45).
Test Turinga
Alan Turing szukając odpowiedzi na nurtujące go pytanie "Czy maszyny myślą?", zaproponował swego rodzaju test, nazwany przez niego samego "grą naśladownictwa", a dopiero później, od jego nazwiska: "Testem Turinga". W 1950 roku na łamach dziennika "Mind" opublikował on artykuł "Maszyna licząca a inteligencja" (ang. Computing Machinery and Intelligence) (W. Isaacson (2014), s. 281), w którym miał dowodzić tego, że urządzenie jest w stanie opanować ludzki sposób myślenia. Zasady testu są niezwykle proste. Sędzia prowadzi dialog z drugą stroną (jest nią człowiek bądź komputer). Maszyna zdaje egzamin, jeśli arbiter nie jest w stanie określić, czy prowadził rozmowę z istotą ludzką, czy z urządzeniem. Należy pamiętać, że zachowania zarówno żywej osoby, jak i programu są jak najbardziej zbliżone do zachowań ludzkich. Oczywiście, test nie jest idealny i nie do końca definiuje inteligencję maszynową. Wynikłe o to liczne spory, zwłaszcza podnoszone przez kognitywistów, oraz wszelkie wątpliwości co do jego efektywności są jak najbardziej zrozumiałe. Przez lata sformułowano trzy główne problemy testu:
- maszyna, aby przejść test Turinga, może posługiwać się sprytnie wymyślonymi regułami. Nawet jeśli uda się jej symulować ludzką konwersację, to w rzeczywistości nie musi świadczyć to o inteligencji programu,
- to, że maszyna nie posiada umiejętności ludzkiej rozmowy, nie musi świadczyć o tym, że nie jest inteligenta (sytuacja odwrotna do poprzedniej),
- zaproponowanej przez Turinga gry z pewnością nie zaliczyłby znaczny procent ludzi.
Ograniczony test Turinga po raz pierwszy odbył się w 1991 roku. Wówczas to, w Bostońskim Muzeum komputerów, sześć maszyn miało udawać ludzi a dwie osoby maszyny. W teście brało udział dziesięciu sędziów, z których każdy przeprowadził rozmowę ze wszystkimi partnerami. Zwyciężył program autorstwa Josepha Weintrauba. Udało mu się oszukać połowę arbitrów. Dużym zaskoczeniem był fakt, że aż trzech sędziów uznało Shakespearowego znawcę za urządzenie mechaniczne. Wyjątkowo szybkie i dokładne cytowanie utworów poety zostało uznane za odczyt z pamięci masowej.
Maszyna Turinga — artykuły polecane |
Daniel Kahneman — Firewall — Permutacja — Afirmacja — Test Turinga — Geocentryzm — Pragmatyzm — Uczenie maszynowe — Koncentracja uwagi |
Bibliografia
- Hodges A. (2014) Alan Turing: Enigma, Wydawnictwo Albatros, Warszawa
- Isaacson W. (2014) The Innovators. How a Group of Hackers, Geniuses, and Geeks Created the Digital Revolution, Simon & Schuster Press, London
- Januszkiewicz K. (2013) O komputerach, programach, algorytmach i architekturze, "Architecturae et Artibus", Vol. 5, Nr 1
- Lula P., Madej J., Stal J., Tadeusiewicz R., Tuchowski J. (2012) Metody i narzędzia programowania, Studio R.C., Kraków
- Mróz A., Pełka K., Obuszewski M., Warzocha P. (2017), Problem złożoności relacji człowiek-maszyna w kontekście technologii cyfrowych, Preteksty, Vol. 7, Nr 1
- Piesko M. (2011) Nieobliczalna obliczalność, Wydawnictwo Copernicus Center Press, Kraków
- Stacewicz P. (2016), O algorytmach i algorytmicznej dostępności wiedzy, Studia metodologiczne, Nr 36
- Wrycza S. (red.) (2010), Informatyka ekonomiczna. Podręcznik akademicki, Polskie Wydawnictwo Ekonomiczne, Warszawa
Autor: Natalia Kargula, Michał Srokosz