Fyzika a inteligentní organismy
podle článku Johna C. Collinse zpracoval: Jiří Svršek

Někdy se tvrdí, že na základě Gödelovy věty o neúplnosti a souvisejících matematických výsledků nemůže skutečná umělá inteligence existovat. Roger Penrose na základě existence lidské inteligence vyvozuje, že fyzikální teorie vyžadují fundamentální změny. Autor článku [X1] John C. Collins se snaží dokázat, že tyto úvahy jsou chybné.

Je možná umělá inteligence? Jsou současné fyzikální teorie dostatečné pro redukcionistické vysvětlení vědomí? Roger Penrose ve svých pracích pomocí silných matematických argumentů odpovídá na obě otázky záporně.

Pro fyziku je Penroseův závěr skutečným úderem. Penrose tvrdí, že pochopení lidského mozku bude vyžadovat velké změny v současných mikroskopických fyzikálních teoriích (v kvantové mechanice obecně a v kvantové teorii gravitace speciálně). To je ovšem v rozporu s naší běžnou vědeckou zkušeností. Obrovský pokrok teorie elementárních částic a molekulární biologie během posledních třiceti let neměl žádný přímý vliv ani na kvantovou mechaniku ani na kvantovou teorii gravitace. Nyní významný teoretický fyzik tvrdí, že by se fyzikové měli soustředit spíše na neurony než na výkonné urychlovače elementárních částic, aby bylo dosaženo pokroku fyziky. Lze mu věřit?

Autor článku [X1] předkládá elementární argument, který dokazuje, že Penroseův způsob uvažování je chybný.
 

1. Penroseův argument

Roger Penrose ukazuje, že současné mikroskopické fyzikální teorie jsou vypočitatelné, a že jsou základem všech chemických a biologických jevů. Z toho vyplývá, že všechny vlastnosti biologických organismů lze simulovat počítačovým programem. Samozřejmě takový počítačový program bude obtížné implementovat, ale tato skutečnost nijak neovlivňuje Penroseovy úvahy. Mezi biologickými organismy se vyskytují matematikové, takže zmíněný počítačový program bude obsahovat "umělé matematiky", kteří budou svými schopnostmi plně odpovídat živým matematikům. To je ale v rozporu s Turingovým problémem zastavení počítačového programu, podle něhož nelze rozhodnout ani ověřit, zda se počítač při zpracování určitého programu někdy zastaví. Podle tohoto problému musí být umělý matematik méně schopnější něž lidský matematik.
 
Na základě tohoto rozporu Roger Penrose dochází k závěru, že je nutné vyvinout lepší fyzikální teorie, které musí být na rozdíl od současných fyzikálních teorií nevypočitatelné. Současně s tím Penrose bourá jakékoliv naděje na vývoj skutečné umělé inteligence. 

Tento argument samozřejmě vyvolal rozsáhlou debatu. Kritici poukazují na skutečnost, že reálné počítačové programy mají bohatší chování, než výpočty Turingova počítače. Turingův problém zastavení počítačového programu se týká neinteraktivních počítačových programů, zatímco lidské bytosti se často chovají obdobně jako interaktivní programy. Přesto Penroseovy argumenty tímto nejsou vyvráceny. Například inteligentní počítač potřebuje výcvik v určitém prostředí, které lze simulovat dalším počítačem. Příkladem je řídící počítač letadla, který je vycvičen leteckým simulátorem.

Roger Penrose proto tvrdí, že každý interaktivní program lze odvodit z neinteraktivního programu, který nebude záviset na opakované interakci s živou bytostí nebo s prostředím. Autor článku [X1] tvrdí, že tento argument lze vyvrátit. Neinteraktivní program, který by přesně splňoval předpoklady Turingova problému, nepochybně ztratí některé schopnosti domnělého inteligentního interaktivního programu.
 

2. Turingův problém zastavení programu

Alan Turing ve své práci z roku 1936 přišel s myšlenkou obecně použitelného nebo univerzálního počítače, stroje tak pružného, že může provést libovolný možný strojový výpočet. Přesto takový počítač má v principu své omezení. Tímto omezením je otázka, zda se počítač při zpracování programu zastaví nebo nezastaví.

Pokud uvažujeme určitý omezený čas, je problém jednoduchý. Pokud chceme zjistit, zda se počítač zastaví třeba za rok, spustíme jej a počkáme rok. Turing ukázal, že problém nastává, pokud žádné časové omezení neexistuje. Tento problém souvisí s čistou matematikou.

Problém zastavení programu tvrdí, že nelze rozhodnout ani ověřit, zda se počítač při zpracování programu někdy zastaví. Tento problém není algoritmicky řešitelný. Nelze sestavit počítač, který by ověřil, zda se jiný počítač někdy zastaví. V žádném axiomatickém formálním systému nelze rozhodnout, zda se určitý program zastaví nebo nezastaví. V principu lze prozkoumat všechny možné úvahy, prozkoumat všechny možné důkazy a hledat důkaz, který by dokázal, zda se určitý program zastaví.

Formální axiomatický systém nepotřebuje žádného matematika, stačí pouze mechanicky ověřovat jednotlivé důkazy. Pokud by takový systém existoval, pak lze vždy určit, zda se nějaký program zastaví nebo ne. Kurt Gödel ukázal, že takový axiomatický formální systém neexistuje.

Turing se zabýval těmito otázkami hlouběji než Gödel. Gödel se zabýval elementární aritmetikou čísel, kdežto Turing problém rozšířil na libovolný axiomatický formální systém a převedl jej na problém zastavení libovolného programu, tedy algoritmu, který funguje na základě pravidel axiomatického formálního systému.

Turingův počítač je nějaké zařízení, které provádí určitý definovaný výpočet. Alan Turing ve své práci výpočet definoval obecně matematicky. Na rozdíl od Turinga autor článku [X1] studuje reálné počítače se současnými počítačovými programy.

Problém zastavení se týká programu Tk(n), který má jeden argument a splňuje následující podmínku:
 
Program Tk(n) se zastaví tehdy a jen tehdy, pokud lze zkonstruovat platný důkaz, že podprogram s jedním argumentem definovaným pomocí n se nezastaví, když je spuštěn s hodnotou n. 

V tomto případě předpis v programu Tk(n) představuje zdrojový kód pro podprogram. Argument n je zdrojovým kódem pro jiný podprogram a Tk se sám zabývá dokazováním vlastností druhého podprogramu.

Turingovu větu o zastavení programu získáme, pokud položíme n = k, tj. když program Tk má dokázat, zda se sám zastaví. Zde leží rozpor, pokud se program Tk(k) nezastaví. Ze specifikace programu vidíme, že tento program není schopen dokázat tvrzení o sobě.

Avšak matematik může Turingovu větu dokázat. Odtud by plynul závěr, že umělá inteligence nemůže existovat, a případně některé další závěry.
 

3. Výpočty nikoliv ve smyslu Turingova počítače

Jaký je vztah mezi čistě abstraktním programem, který dokazuje Turingovu větu, a počítačovým programem, který simuluje biologické organismy? Chování organismu (stejně jako matematika) je poněkud bohatší a odlišné od programu, který jen dokazuje Turingovu větu. Odpověď leží v obecném předpokladu, že všechny počítače a počítačové programy jsou příklady Turingova počítače a že na každý program lze nahlížet jako na nějaký podprogram Tk.

Avšak předpoklad ekvivalence mezi Turingovým počítačem a reálnými počítačovými programy není zcela správný. Turingův počítač vychází z představy, že máme určitý datový vstup, jehož data jsou počítačem zpracována a výsledky jsou zaslány na datový výstup. Taková představa je zcela správná například pro výpočet trigonometrických funkcí. Avšak reálný počítačový program může být interaktivní. Může opakovaně odesílat výsledky výpočtu do vnějšího světa a přijímat odpovídající reakce z vnějšího světa. Příkladem jsou interaktivní textové procesory nebo programy pro řízení letadel. Takové programy nejsou Turingovými počítači v přesném slova smyslu. Jak ukázali R. Geroch a J.B. Hartle, Turingův počítač odpovídá jen jistému typu počítačového programu, který zpracovává všechna data ze vstupu jediným průchodem.
 
Tento rozdíl mezi výpočty v Turingově smyslu a interaktivními výpočty je pro Penroseovy závěry zásadní. Software, který bude napodobovat reálnou inteligenci, bude jistě patřit mezi složité interaktivní programy. Navíc, aby nebylo nutné programovat všechny podrobnosti jeho chování, bude se program muset učit na základě interakce s prostředím (heuristický program). Prototypem takového programu jsou umělé neuronové sítě, jejichž vznik podnítily objevy v oblasti biologie. 

Aby bylo možno použít Turingovu větu o zastavení programu, muselo by se dokázat, že program simulující lidské chování lze vytvořit z programu Turingova typu.
 

4. Interaktivní programy

Roger Penrose podává řadu příkladů, které mají ukázat, že lze snadno vytvořit potřebný neinteraktivní program s použitím interaktivního programu jako jedné z jeho komponent.

Existuje zde však jeden velký problém, jak připravit vstup programu, aby program věděl, jakou větu má dokázat. Program, který můžeme nazvat "umělým matematikem", je v postavení vědce, jehož zaměstnavatel specifikuje problém, jímž se má zabývat. Aby vědecká práce dospěla k efektivním výsledkům, výzkumník musí být schopen zjistit požadavky svého zaměstnavatele v libovolné části vědeckého projektu. Výzkumníkovy otázky budou silně záviset na detailech vývoje jeho vědecké práce. Jak je vědcům dobře známo, výzkumník musí mít možnost v každé fázi vědeckého projektu pokládat nepředvídatelné otázky, protože jinak projekt nemusí očekávaných cílů vůbec dosáhnout.

Aby bylo možno zkonstruovat neinteraktivní program, který požaduje Roger Penrose, musíme objevit otázky, které umělý matematik bude pokládat, a připojit k programu zařízení, které bude odpovědi dávat v daném pořadí. Původní počítač a zařízení dávající odpovědi tvoří kombinaci, na níž lze použít Turingovu větu o zastavení programu.

Avšak jak lze objevit otázky, na něž se program bude během své činnosti dotazovat? Nejjednodušší možností je spustit program a shromáždit všechny otázky, na něž se dotazuje. Odpovědi se zaznamenají do zařízení na odpovědi a program se znovu spustí.

Příkladem takové kombinace může být demoverze grafického konstrukčního programu, kdy grafický program a program podávající odpovědi jsou interaktivní, ale společně nepotřebují žádný vstup z vnějšího prostředí. Taková kombinace je Turingovým strojem.

Autor článku [X1] se však domnívá, že zde existuje problém, který nelze vyřešit. Prvním vstupem do programu byl požadavek dokázat určitou větu o určitém výpočetním systému. Tento výpočetní systém je tvořen programem samotným a všemi dodatečnými zařízeními. Pokud znovu spustíme program, abychom mu mohli předat odpovědi na jím položené otázky, podmínky Turingovy věty se změnily. Věta se nyní týká nejen původního výpočetního systému a zařízení podávajícího odpovědi, ale především zaznamenaných odpovědí.

Odpovědi byly zaznamenány poté, co program byl přinucen, aby dokázal větu o výpočetním systému bez odpovědí zaznamenaných v zařízení poskytujícím odpovědi. Proč by nyní otázky měly být stejné, když se podmínky Turingovy věty změnily? Pokud nové otázky nebudou stejné, nemají záznamy odpovědí na původní otázky žádný význam.

Samozřejmě podmínky věty se nemusí příliš změnit. Na druhé straně u složitých výpočetních systémů obvykle výstup silně závisí na detailech na vstupu. Systémy, které bychom považovali za inteligentní a tvořivé, na základě sebemenší změny na vstupu budou dávat zcela neočekávané výsledky.

Není problémem zjistit přesné otázky, které umělý matematik může položit. Avšak nelze sestavit odpovědi, pokud neznáme příslušné otázky. Aby bylo možno použít Turingovu větu, je nutné předem znát přesně otázky a odpovědi. Příslušný program má za úkol dokázat určitou větu K o určitém podprogramu. Avšak důkaz Turingovy věty nelze použít, pokud v programu, který má dokázat větu K, nebo v podprogramu, o němž se má dokázat věta K, změníme jediný bit.

Protože nelze předem stanovit otázky, na něž se bude program při důkazu věty K dotazovat, nelze Turingovu větu na simulace biologických organismů použít.
 

5. Závěr
Inteligentní software se musí chovat podobně jako člověk a díky tomu neodpovídá definici Turingova počítače. Penroseovy závěry požadují, aby každý výpočet bylo možno redukovat na nějaký Turingův počítač, aby bylo možno aplikovat Turingovu větu o zastavení programu. Důkaz této věty ale požaduje naprostou shodu mezi programem, který dokazuje věty o určitém podprogramu, a tímto podprogramem. Avšak požadavky kladené na inteligentní software v principu tuto shodu vylučují, protože inteligentní program je nutně interaktivní. 

Na tomto příkladu vidíme příklad obecného jevu v moderní vědě: libovolné tvrzení o reálném světě je přinejmenším poněkud nepřesné. Logické a matematické uvažování, na jehož základě chceme činit předpovědi, lze použít pouze v případě, že toto uvažování je odolné vůči odchylkám mezi matematickým popisem a reálným světem. Zdá se, že v případě Penroseových úvah tomu tak není.

Literatura a odkazy:

[X1] John C. Collins: On the Compatibility Between Physics and Intelligent Organisms. 9 Feb 2001. DESY, Notkestrasse 85, D-22603 Hamburg, Germany, and II Institut fur Theoretische Physik, Universität Hamburg, Luruper Chaussee 149, D-22761 Hamburg, Germany.

[X1] G. J. Chaitin: A Century of Controversy over the Foundation of Mathematics. 27 Aug 1999. chao-dyn/9909001 e-Print archive. Los Alamos National Laboratory. US National Science Foundation.

[1] Roger Penrose: Makrosvět, mikrosvět a lidská mysl. Mladá fronta, edice Kolumbus, Praha 1999. Z angl. orig.: The Large, the Small and the Human Mind. The Press Syndicate of the University of Cambridge, Cambridge 1997. Překlad: Jiří Langer. ISBN: 80-204-0780-4