Přírodou inspirované metody umělé inteligence Roman Neruda Ústav informatiky AVČR roman@cs.cas.cz Nové Hrady, červenec 2012
Od Darwina a Mendela...
... k inteligentním agentům.
Umělá inteligence
2 přístupy Inteligence: schopnost individua účelně jednat, rozumně myslet a efektivně se vyrovnávat se svým o a. The capacity to acquire and apply knowledge. b. The faculty of thought and reason. Silná: cílem je stvořit umělý myslící systém Slabá: systémy, které se chovají v určitém kontextu inteligentně
Turingův stroj a test Alan Turing základy teorie výpočtů, Turingův stroj Turingův test: Poznat muže/ženu Poznat člověka/stroj Eliza Paradox čínského pokoje
Umělá inteligence Inteligentní chování Učení Schopnost adaptace Řízení Plánování Rozpoznávání (řeč, písmo, obrázky) Symbolická Expertní systémy, formální logika Výpočetní Neuronové sítě Evoluční algoritmy Fuzzy logika
Umělý život
Podstata života? Kombinace 4 elementů Voda, vzduch, oheň, zem (Empedokles) Duše/psyche/anima (Demokritos) 3 duše (Aristoteles) Nic (Descartes) Élan vital (Bergson) Elektřina (M. Shelly)
Dnešní biologie Živé organismy lze charakterizovat jako strukturálně vysoce složité, hierarchicky uspořádané, termodynamicky otevřené a autoregulující se nukleoproteinové soustavy, jejichž podstatnými vlastnostmi jsou metabolismus, autoreprodukce a schopnost vyvíjet se. (Rozsypal a kol, 1994) Things with the capacity for metabolism and motion. Life is a self-sustained chemical system capable of undergoing Darwinian evolution. Life is matter that can reproduce itself and evolve as survival dictates.
A-life, život jaký by mohl být Studuje základní rysy, procesy a zákony života Pomocí počítačových modelů, hardwarových robotů a biochemických technologií Soft, hard, wet
Celulární automaty Von Neumann: Sebereplikující se roboti Matematický model CA Studium chaotického chování, emergence
Řád chaosu Lindenmayerovy systémy Popis rostoucích struktur pomocí formálních gramatik Nástroj k modelování růstu rostlin, (X F-[[X]+X]+F[+FX]-X), (F FF)
Hejna, stáda, roje Craig Reynolds: boid Pohyb hejn ptáků se dá popsat 3 jednoduchými pravidly Aplikace v počítačové grafice Aplikace v řešení úloh umělé inteligence Mravenčí algoritmy: nepřímá komunikace
Tierra, svět je operační systém T. S. Ray simulace ekologických vztahů v počítači: Živočich = sebereplikující se software Zdroje = paměť a čas procesoru Evoluce = mutace, vymírání Parazitismus
Karl Simms, operační systém je svět Karl Simms: vývoj abstraktních organismů s reálnými fyzikálními zákony Řízení neuronovou sítí Emergence chování pohyb, plavání, V 90.letech superpočítač, dnes PC (3DVCE)
Golem, roboti už jdou Spojení evoluce a 3D tiskárny Evoluce robotických živočichů řízených umělou neuronovou sítí v SW simulátoru Realizace a testování v HW prototypu
Budoucnost patří bakteriím? Martyn Amos: DNA computing Zákodujme problém do DNA, Nechme přírodu počítat Bio-počítač hraje piškvorky Řešení problému obchodního cestujícího pomocí svítící E.coli
Umělé neuronové sítě
Perceptron 1943: McCulloch, Pitts: formální neuron 1958: Rosenblatt: perceptron Lineárně separabilní Učící algoritmus Důkaz konvergence Hardware
XOR 1969: Minsky, Pappert: Perceptrons. Neumí XOR Sítě s více vrstavmi asi nejde učit Konec NS na 15 let Kohonen, Hopfield, Grossberg, Amari, Ruso
Back Propagation Učení sítě = nastavení hodnot vah dle tréningov Učení s učitelem Nelineární optimalizace - minimalizace chyby Metoda největšího spádu, apod. Derivaci de/dw lze odvodit
Evoluční algoritmy
Princip Genetických Algoritmů Gen = zakódované řešení problému Fitness Populace genů Selekce: Ruleta Turnaje Mutace Křížení
Genetické programování Evoluce programů Reprezentace syntaktickými stromy S-expressions, LISP Křížení, Mutace, Procedury
Proč evoluce funguje? Mutace = náhodné změny Selekce = pohyb správným směrem Věta o schématech: GA rekombinují kompaktní parciální řešení při hledání optima. Nadějná Implicitní paralelismus: GA s n jedinci v populaci pracuje zh Křížení: výměna informací Zabraňuje uvíznutí v lokálních minimech.
Roboti
Khepera (2000 př.n.l.)
Khepera (2000 n.l.)
průměr 7cm, výška 3cm váha 80g, uveze 250g rychlost 0,02 m/s 0,5 m/s procesor Motorola 68331, 25MHz 512KB RAM 2 servo motorky 8 aktivních infra čidel (5cm dosah) moduly (věže) pro komunikaci, zrak, hmat Khepera HW
Jak řídit Kheperu pomocí NS
Jak učit NS pomocí GA Učitel nehodnotí každý krok (nejde to) Evidují se 'správné' a 'špatné' typy chování To je zakódováno v účelové funkci (fitness) GA Hlavní problém GA v ER: volba fitness obecná vs. konkrétní více kritérií najednou(multiobjective optimization) Softwarová simulace Desítky pokusů, stovky jedinců, tisíce generací
Budoucnost?
Inteligentní agenti
Wearable computing
Kyborgové?
V rámci umělé inteligence: hybridní metody Soft computing: EA+NS+Fuzzy Soft + tradiční UI (symbolická) Soft + hard computing (numerika, statistika) V IT: inteligentní (adaptivní) agenti Autonomní software, Mobilní, komunikativní, sociální Nálady, emoce, model dle lidské mysli Kolem nás: všudypřítomné počítače Smart devices, ubiquitus, wearable computing V nás: Kyborgové, DNA computing (?)