290 likes | 463 Views
Historie umělé inteligence. Dana Nejedlová Katedra informatiky Ekonomická fakulta Technická univerzita v Liberci. Co je to inteligence?. Běžná definice umělé inteligence: UI je obor, který se snaží konstruovat inteligentní stroje a chápat inteligentní entity. Ale co je to inteligence?
E N D
Historie umělé inteligence Dana Nejedlová Katedra informatiky Ekonomická fakulta Technická univerzita v Liberci
Co je to inteligence? • Běžná definice umělé inteligence: • UI je obor, který se snaží konstruovat inteligentní stroje a chápat inteligentní entity. • Ale co je to inteligence? • Učení se, operování s fakty, ale také kreativita, vědomí, emoce a intuice. • Mohou být stroje inteligentní? • Dodnes není jisté, zda je možné sestrojit stroj se všemi aspekty inteligence. • Tento výzkum je v oboru UI ústřední.
Co je umělá inteligence? • Stavba strojů manipulujících se symboly, provádějící rozpoznávání, učení a další formy inference • Řešení problémů, ve kterých je nutné použít heuristické prohledávání namísto analytického přístupu • Využívání nepřesných, neúplných nebo špatně definovaných informací • Nalézání formalismů pro reprezentaci informací, které by to kompenzovaly • Určování významných kvalitativních znaků situace a operování s nimi • Práce se syntaxí a sémantikou • Nalézání odpovědí, které nejsou ani přesné ani optimální ale v určitém smyslu „dostatečné“ • Využívání velkého množství znalostí z omezené domény • Využívání metaznalostí (znalostí o znalostech) pro zlepšení řízení strategií řešení problémů
Před vznikem elektronických počítačů • Starověké a středověké mýty • Talos, Pandora, Golem • umělí lidé, roboti • Výzkum od starověku do 17. stolení n.l. • Aristoteles, Gottfried Wilhelm Leibniz • automatizace racionálního uvažování • Thomas Hobbes, René Descartes • mechanistické pojetí živých bytostí • 20. století, 1948 • Norbert Wiener – Cybernetics: Or the Control and Communication in the Animal and the Machine • Inteligentní chování je výsledkem zpětné vazby.
Počátky elektronických počítačů • John Louis von Neumann (1903 – 1957) • Von Neumannova architektura počítače • konzultace na projektu EDVAC (1945) • Teorie her (1944) • Je aplikovatelná na interagující inteligentní agenty. • Celulární automaty (1966) • Mají výpočetní kapacitu. • Alan Mathison Turing (1912 – 1954) • Turingův stroj (1936) • formalizace algoritmu, abstrakce počítače • Turingův test (1950) • návrh, jak testovat schopnost stroje demonstrovat myšlení • Programování počítače „Manchester Mark I“ (1949)
Vznik pojmu „umělá inteligence“ • John McCarthy poprvé použil termín „Artificial Intelligence“ jako téma Dartmouthské konference v roce 1956. • Místo konání: • Dartmouth College, Hanover, stát New Hamphshire, USA • Organizátoři: • John McCarthy, Marvin Minsky, Nathaniel Rochester a Claude Shannon • Účastníci: • Ray Solomonoff, Oliver Selfridge, Trenchard More, Arthur Samuel, Herbert Simon a Allen Newell • Cíl: • Dokázat, že každý aspekt učení nebo jakýkoliv jiný znak lidské inteligence se dá v principu precizně popsat a potom simulovat na stroji.
Přístupy k umělé inteligenci • Good Old-fashioned Artificial Intelligence (GOFAI) neboli symbolická umělá inteligence (John Haugeland, 1985) • Program (například klasifikátor) ve stylu GOFAI je složen z částí (například pravidel), které mají jasný vztah k reálnému světu. • New-fangled Artificial Intelligence • Nejdůležitější větví byl konekcionismus (connectionism) – umělé neuronové sítě (McCulloch – Pitts, 1943). • Genetické algoritmy (Holland, 1975) a další druhy biologicky inspirovaného zpracování informace • Strong AI (John Searle, 1980) • Umělá inteligence je skutečná inteligence. • Řešení komplexních úkolů, například robotika. • Weak AI • Umělá inteligence je pouhou imitací lidské skutečné inteligence. • Řešení specifických problémů nepokrývajících celou škálu lidských schopností, například rozpoznání písma nebo šachy.
Motivace pro biologicky inspirované zpracování informace • Danny Hillis: The Connection Machine (1985) • Stroje programované pomocí GOFAI jsou tím pomalejší, čím více je v nich znalostí. • Prohledávají bázi znalostí. • U lidí je tomu naopak. • Mají masivně paralelní architekturu mozku. • Lidé nejsou výsledkem inženýrského projektu. • Jsou výsledkem evoluce. • Marvin Minsky: The Society of Mind (1986) • Model lidské inteligence vystavěné z interakcí jednoduchých částí zvaných agenty(i?), kteří nemají vědomí. • Je obtížné si představit, jak by evoluce zformovala tak složitý systém, jako je lidská mysl, jako jeden celek. • Evoluce ale mohla vytvořit jednotlivé specializované kognitivní jednotky a formovat mechanismy jejich interakcí. • Marvin Minsky: The Emotion Machine (2006) • Emoce jsou jen jiným způsobem přemýšlení, který naše mysl používá pro zvýšení naší inteligence.
Filozofie umělé inteligence • Co je to inteligence a myšlení? • Turingův test (1950) • Podle GOFAI je myšlení manipulací se symboly, a proto program ve stylu GOFAI myslí. • Problém čínského pokoje (John Searle, 1980) • Myšlení lidí a počítačů je naprosto odlišné. • Je lidská inteligence neoddělitelná od vědomí a emocí? • Co znamená tvrzení, že počítač rozumí přirozenému jazyku? • Kdo je zodpovědný za rozhodnutí učiněná UI? • Jaká má být etika chování se lidí k výtvorům s umělou inteligencí?
Hard versus Soft computing • Good Old-fashioned Artificial Intelligence • Pravidla (IF – THEN rules) • Heuristika • New-fangled Artificial Intelligence • Neuronové sítě • Fuzzy logic (mlhavá logika) • Probabilistic reasoning • belief networks (Bayes networks) • genetic algorithms • chaos theory • parts of learning theory (machine learning)
Heuristika • Metoda řešení problémů, která je obvykle úspěšná, ale v některých situacích může selhat • Nejasně definované problémy s chybějícími nebo nejednoznačnými daty • Medicínská diagnostika • Vidění, rozpoznání řeči • Pomáhá rozhodnout se mezi nekonečným množstvím možných interpretací. • Problém může mít přesné řešení, ale cena jeho výpočtu může být prohibitivní. • Šachy, tic-tac-toe, 15 or 8-puzzle, rozvrhy, hledání cesty… • Heuristická funkce • Oceňuje každé stádium řešení. • Počet konfliktů v množství možných rozvrhů • Pomáhá rozhodnout se o dalším kroku vedoucímu k řešení. • Vývěr rozvrhu s nejmenším počtem konfliktů, který bude dále upravován tak, aby došlo k nalezení vyhovujícího rozvrhu
Očekávání od umělé inteligence • Předpovědi Herberta Simona a Allena Newella (Heuristic Problem Solving, 1958), že do 10 let • se počítač stane světovým šachovým šampiónem, • počítač objeví důležitý nový matematický teorém, • počítače budou komponovat hudbu přijímanou dobře kritikou, • většina teorií v psychologii bude ve formě počítačových programů.
Typická úloha řešená v UI • Problém 8 královen • Existuje způsob, jak rozmístit8 královen na šachovnici tak, aby se žádné dvě z nich nemohly vzájemně napadnout?
Těžký problém pro UI • Problém neúplné šachovnice • Existuje způsob, jak umístit kostky domina na šachovnici tak, aby byla zakrytá všechna pole šachovnice a kostky domina se nepřekrývaly?
Omezení umělé inteligence • David Hilbert (1862 – 1943) aKurt Gödel (1906 – 1978) • Gödelův teorém neúplnosti (1931) • Bezespornost formálního systému nelze uvnitř tohoto systému dokázat, protože v něm mohou být tvrzení s autoreferencí – logické paradoxy typu: • Toto tvrzení je nepravdivé. • Některé úlohy nelze algoritmizovat. • Problém zastavení algoritmu • Nelze rozhodnout, zda se algoritmus v konečném čase zastaví. • Týká se to opět algoritmů odkazujících se samy na sebe. • Teorie složitosti (NP-completeness, 1971) • Některé problémy lze algoritmizovat, ale výpočet nelze prakticky (na počítači) dokončit, protože bychom se nedočkali.
Gödelův teorém neúplnosti • V každém axiomatickém matematickém systému schopném definovat množinu přirozených čísel jsou věty nedokazatelné axiomy tohoto systému. • Příklad teorému 1 = 2 • Důkaz teorému: • Když a = b, a ≠ 0, b ≠ 0, • potom platí také dvě následující rovnosti: a2 – b2 = (a – b) ∙ (a + b), a2 – b2 = a2 – ab. • A z těchto rovností lze odvodit následující tvrzení: a2 – ab = (a – b) ∙ (a + b) a ∙ (a – b) = (a – b) ∙ (a + b) a = a + b a = a + a a = 2a 1 = 2 • Pravdivost se dá ověřit jen pomocí znalostí přesahujících aritmetiku operující s přirozenými konečnými čísly.
The Logic Theorist – první program s umělou inteligencí • Allen Newell, J.C. Shaw a Herbert Simon v Carnegie Institute of Technology, nyní Carnegie Mellon University, v roce 1955 • Hledal logické důkazy z knihy Principia Mathematica (Bertrand Russell a Alfred North Whitehead, 1910). • Využíval mentální postupy lidských expertů. • kognitivní věda • Pro implementaci programu Logic Theorist na počítači, tito tři badatelé vyvinuli programovací jazyk IPL, předchůdce jazyka Lisp.
Programovací jazyky • Úkoly jako zpracování přirozeného jazyka, reprezentace znalostí nebo dokazování teorémů vyžadovaly speciální jazyk pro zpracování symbolických dat. • Lisp (John McCarthy, USA, 1958) • funkcionální paradigma / zpracování seznamů • Program se skládá z funkcí s vnořenými funkcemi. • Data a programy jsou reprezentovány stejně: seznamem. • (+ 1 2 3) je jednak seznam 4 atomů a zároveň funkce s hodnotou 6. • Program může sloužit jako data pro jiný program! • Mocná vlastnost dovolující flexibilní a produktivní psaní programů. • Prolog (Alain Colmerauer, Evropa, 1972) • deklarativní paradigma / logické programování • Program se skládá z faktů a pravidel. • Programátor popíše (deklaruje) problém. • Překladač z nich vydedukuje nová fakta. • Programátor nepíše algoritmus pro řešení.
Programy se symbolickou umělou inteligencí • The General Problem Solver (1957) • Řešil formalizované symbolické problémy, například matematické důkazy a šachy. • The Geometry Theorem Prover (1958) • Dokazoval teorémy pomocí explicitně reprezentovaných axiomů. • SAINT (Symbolic Automatic INTegrator) • Integrální počet (1961) • ANALOGY (1963) • Obrázek A má vztah k obrázku B jako obrázek C k obrázku D. • IQ testy se užívají k měření inteligence lidí. • Počítače lze naprogramovat tak, aby v IQ testech excelovaly. • Ale ty samé programy by byly v reálných situacích hloupé.
Zpracování přirozeného jazyka • STUDENT (1964, 1967) • Řešil slovní úlohy z algebry. • SIR (Semantic Information Retrieval, 1968) • Četl jednoduché věty a odpovídal na otázky. • ELIZA (1965) • Simulovala psychoterapeuta. • TLC (Teachable Language Comprehender) (1969) • Četl text a vytvářel z něj sémantickou síť. • SUR (Speech Understanding Research) (1971) • 5-ti letý plán agentury ARPA (dnes DARPA) na výzkum rozpoznání spojité mluvené řeči
Expertní systémy • Patří do symbolické umělé inteligence. • Používají množinu pravidel a heuristiku. • MACSYMA (MIT, 1968 -1982) • Prováděl symbolické matematické výpočty. • DENDRAL (SRI, 1965) • Identifikuje chemikálie. • MYCIN (SRI, Edward Shortliffe, 1974) • Diagnostikoval infekční nemoci z krve. • Pokračovatelé: EMYCIN, PUFF, INTERNIST - CADUCEUS
Komerční expertní systémy • PROSPECTOR (SRI, 1974 – 1983) • Analyzuje geologická data. Hledá ložiska. • XCON – eXpert CONfigurer (CMU, 1978) • Konfiguroval počítače řady VAX firmy DEC. • TEIRESIAS (SRI, Randall Davis, 1976) • Knowledge Acquisition System (KAS) • Získává znalosti od lidských expertů. • Vytváří znalostí báze pro expertní systémy.
Robotika • Marvin Lee Minsky (* 1927) • Freddy (University of Edinburgh,1973) • SHAKEY (SRI, 1969) • SHRDLU (MIT, Terry Winograd, 1970) • blocks worlds (MIT, 1970) • Robot má manipulovat se stavebními kostkami podle instrukcí. • počítačové vidění • porozumění přirozenému jazyku • plánování
První umělé neuronové sítě • Warren McCulloch a Walter Pitts • Model umělého neuronu (1943) • Neuron reprezentuje funkce. • Donald Olding Hebb • Pravidlo pro učení neuronové sítě (1949) • Marvin Minsky a Dean Edmonds postavili první počítač s neuronovou sítí. • SNARC (1951)
Další umělé neuronové sítě • Frank Rosenblatt • Perceptron (1957) • jednovrstvá síť a její pravidlo učení umožňující jí naučit se lineárně separabilní funkce • Bernard Widrow a Marcian Ted Hoff • minimalizace čtverce chyby sítě • Delta rule (pravidlo učení neuronové sítě) • ADAptive LINEar Systems or neurons or ADALINEs (1960) • MADALINEs (1962) • vícevrstvé verze ADALINEs
Kritika neuronových sítí • Kniha „Perceptrons“ (Marvin Minsky a Seymour Papert, 1969) • Když se jednovrstvé neuronové sítě typu Perceptron neumí naučit funkci XOR (ta je lineárně neseparabilní), tak se to nenaučí ani vícevrstvé sítě. • Financování výzkumu neuronových sítí tím bylo do počátku 80. let 20. století zastaveno. • Vícevrstvé neuronové sítě se funkci XOR ale naučit mohou. • Jen je třeba najít správný algoritmus pro jejich učení.
Vzkříšení neuronových sítí • Hopfieldova síť (John Hopfield, 1982) • Umí se naučit několik obrázků (vzorů). • Self-Organizing Map (SOM) (Teuvo Kohonen, 1982) • Umí se učit bez dozoru. (unsupervised learning) • Backpropagation (Arthur Bryson a Yu-Chi Ho, 1969) • algoritmus učení vícevrstvé neuronové sítě • Vyžaduje, aby neurony sítě neměly ostrý práh. • Protože byl nepovšimnut, byl potom několikrát znovuobjeven v 70. a 80. letech 20. století a popularizován v roce 1986. • NETtalk (Terry Sejnowski a Charles Rosenberg, 1986) • Vícevrstvá neuronová síť, která se učila anglickou výslovnost a uměla zobecňovat. • Používala backpropagation.
Nejvýznamnější laboratoře • MIT (Massachusetts Institute of Technology) • 1959 - John McCarthy a Marvin Minsky založili Artificial Intelligence Laboratory. • SRI (Stanford Research Institute) • 1963 - John McCarthy založil AI Laboratory. • CMU (Carnegie Mellon University) • 1980 - Raj Reddy založil The Robotics Institute. • IBM • AT&T Bell Labs • University of Edinburgh
Současnost • Robotické hračky, vesmírné sondy • Robotika ve strojírenství • Domácí spotřebiče (pračky, vysavače) • Data Mining, detekce podvodů, filtrování spamu • Hledání informací na Internetu (webové agenty) • Modelování interaktivních procesů (agenty) • E-business – personalizace obchodů • Inteligentní výukové systémy a SW rozhraní • Role-playing games, šachové programy • Rozpoznání řeči a obrazu • Strojový překlad