SZTUCZNA INTELIGENCJA ARTIFICIAL INTELLIGENCE WYKŁAD 1 WPROWADZENIE Dr hab. inż. Barbara Dębska, prof. PWSZ KROSNO Dr hab. inż. Barbara Dębska, prof. PWSZ Krosno
http://www.prz.edu.pl/~bjdebska hasło – ‘ artint’ Dr hab. inż. Barbara Dębska, prof. PWSZ Krosno
LITERATURA L. Bolc, J. Cytowski, Szukanie heurystyczne. J. Chromiec, E. Strzemieczna, Sztuczna inteligencja. Podstawowe metody konstrukcji i analizy systemów eksperckich (Akademicka Oficyna Wydawnicza, Warszawa 1994) E. Chwiałkowska, Sztuczna Inteligencja w Systemach Eksperckich (MIKOM 1991) Z. Hippe, Zastosowanie metod sztucznej inteligencji w chemii (PWN, Warszawa 1993) J. Mulawka, Sztuczna Inteligencja (1995) Jerzy Cytowski, Metody i algorytmy sztucznej inteligencji w cyfrowym przetwarzaniu sygnałów. Akademicka Oficyna Wydawnicza PLJ, Warszawa 1999 Dr hab. inż. Barbara Dębska, prof. PWSZ Krosno
AI uważana jest za część informatyki. Definicja Sztuczna inteligencja (Artificial Intelligence, AI) to dziedzina nauki zajmująca się rozwiązywaniem zagadnień efektywnie niealgorytmizowalnych, w oparciu o modelowanie wiedzy. AI uważana jest za część informatyki. Inne definicje: * AI - to nauka mająca za zadanie nauczyć maszyny zachowań podobnych do ludzkich. * AI - to nauka o tym, jak nauczyć maszyny robić rzeczy, które obecnie ludzie robią lepiej. * AI - to nauka o komputerowych modelach wiedzy umożliwiających rozumienie, wnioskowanie i działanie. Dr hab. inż. Barbara Dębska, prof. PWSZ Krosno
AI i inne nauki AI zaliczana jest do nauk kognitywnych (tzn. związanych z procesem poznawczym, odnoszących się do poznawania czegoś). AI to część ogólniejszej dziedziny, nazywanej Inteligencją Obliczeniową (Computational Intelligence), której celem jest rozwiązywanie zagadnień efektywnie niealgorytmizowalnych, przy pomocy obliczeń. „Obszary badań naukowych powstają w wyniku skupienia się zainteresowania uczonych wokół różnych zjawisk. Nauki nie powstają w wyniku definicji, ale zostają rozpoznane” – definicja wg. A. Newell, 1973 AI została rozpoznana jeszcze przed informatyką! Dr hab. inż. Barbara Dębska, prof. PWSZ Krosno
Jak powstała sztuczna inteligencja? Ramon Lull, XIII wiek, kataloński filozof i teolog, franciszkanin, autor „Ars magna generalis et ultimata” - systemu logicznego, obejmującego wszystkie gałęzie wiedzy. Gottfried Leibniz, 1646-1716. Czterodziałaniowa maszyna licząca w 1694 r, projekt maszyny działającej w systemie dwójkowym. Pisząc o „rachunku filozoficznym” Leibniz wyraża nadzieję, że w przyszłości dzięki rozwojowi logiki matematycznej zamiast się spierać, wystarczy policzyć - Calculemus! Problem Leibniza: jak większa liczba dzielona przez mniejszą może dać to samo co mniejsza przez większą? Dr hab. inż. Barbara Dębska, prof. PWSZ Krosno
Początki informatyki 1949: Claude Shannon i teoria informacji; Norbert Wiener „Cybernetyka czyli sterowanie i komunikacja w zwierzęciu i maszynie”. McCulloch i Pitts - sieć nerwowa jako układu elementów logicznych. Allan Turing, 1912-1954, ojciec informatyki teoretycznej, rozważa w 1950 roku możliwości myślenia maszyn, formułuje „Test Turinga” i opisuje go w pracy „Computing Machinery and Intelligence”. Dr hab. inż. Barbara Dębska, prof. PWSZ Krosno
Test Turinga W pokoju B lub C znajduje się testowany komputer. Przesłuchujący A może zadać dowolne pytanie, a komputer odpowiada sprawiając wrażenie istoty ludzkiej. Komputer przechodzi test jeśli A nie rozpozna go w wyznaczonym czasie (faktycznie komputer powinien przejść kilka testów z różnymi przesłuchującymi). B: Człowiek lub komputer C: Człowiek lub komputer A: Osoba przesłuchująca UWAGA!!! Żaden komputer nigdy nie dotarł w pobliże granicy przejścia tego testu Dr hab. inż. Barbara Dębska, prof. PWSZ Krosno
3. Kiedy zamordowano prezydenta Kennedy’ego? Rozważmy na ile inteligentny musi być program, aby reagować na następujące pytania zadawane przez osobę A: 1. Czy jesteś komputerem? 2. Która godzina? 3. Kiedy zamordowano prezydenta Kennedy’ego? 4. Ile jest 2276498 * 7896? 5. Czy białe mogą dać mata w takiej to a takiej sytuacji na szachownicy? 6. Opisz swoich rodziców? 7. Jakie wrażenie wywiera na tobie następujący wiersz ....? 8. Co myślisz o Karolu Dickensie? oczywiste zaprzeczenie komputer ma wbudowany RTC dostęp do encyklopedii niezbędne opóźnienie czasowe odpowiedzi niezbędna wiedza o grze w szachy wyuczenie odpowiedzi na niektóre pytania 7 i 8 - wymaga zdolności wyrażania preferencji, opinii, emocji i stanowiska Dr hab. inż. Barbara Dębska, prof. PWSZ Krosno
Powstanie AI Marvin Minksky, 1956, wprowadza nazwę "sztuczna inteligencja". Allen Newell, Herbert Simon, 1958 - General Problem Solver, podejmuje próbę stworzenia ogólnego programu do rozwiązywania problemów. Newell i Simon, 1975, określają AI jako naukę empiryczną, budując symboliczne systemy oparte na wiedzy jako modelu umysłu. wykłady Williama Jamesa w Harvard University, 1988: „... Psychologia dojrzała już do zunifikowanych teorii poznania, czyli takich teorii, które postulują spójny system mechanizmów pozwalających wyjaśnić wszystkie aspekty działania umysłu. ...” Dr hab. inż. Barbara Dębska, prof. PWSZ Krosno
Okresy rozwoju AI według Patrick’a Winston'a Era prehistoryczna: od maszyny analitycznej Charles'a Babbage (1842) do około 1960 roku. Era romantyczna, 1960-1965, kiedy przewidywano, że AI osiągnie swoje cele w ciągu 10 lat. Okres ciemności: 1965-1970, w którym niewiele się działo, opadł entuzjazm i pojawiły się głosy bardzo krytyczne. Renesans: 1970-1975, gdy zaczęto budować pierwsze systemy doradcze, użyteczne w praktyce. Okres partnerstwa: 1975-1980, gdy do badań nad AI wprowadzono metody kognitywistyki (teorii poznania). Okres komercjalizacji: 1980-1990, gdy programy AI, a szczególnie systemy doradcze zaczęto sprzedawać komercyjnie. Wielkie projekty: 5 generacja; projekty hybrydowe CI; era agentów, elementy AI w wielu programach. Dr hab. inż. Barbara Dębska, prof. PWSZ Krosno
Kluczowe zagadnienia Rozwiązywanie problemów: gry i zagadki logiczne, gry planszowe, obliczenia symboliczne. Główne metody to szukanie i redukcja problemów. Drzewa decyzyjne. Mistrzowskie rezultaty: warcaby, szachy i inne, Systemy ekspertowe, systemy doradczo-decyzyjne, inżynieria wiedzy. Reprezentacja wiedzy, dialog z systemem, wyjaśnianie rozumowania, akwizycja wiedzy od ekspertów dziedzinowych. Uczenie się na przykładach lub przez analogię. Uczenie maszynowe: metody statystyczne (analiza skupień), rozpoznawanie obrazów, logika rozmyta, sieci neuronowe, algorytmy genetyczne. Zagadnienia filozoficzne AI. Czy maszyny mogą myśleć? Czy mogą być twórcze? Czy mogą być świadome? Jakie są ograniczenia ich możliwości? Dr hab. inż. Barbara Dębska, prof. PWSZ Krosno
Wersja silna AI Wersja silna AI: komputer odpowiednio zaprogramowany jest w istotny sposób równoważny mózgowi i może mieć stany poznawcze. Wersja często atakowana, prowadzone są ciągłe spory filozoficzne, czy jest to możliwe? Symulacja inteligencji to nie „prawdziwa inteligencja”, umysł nie jest programem a mózg nie jest komputerem. Stąd następująca definicja: Sztuczna inteligencja to to, czego jeszcze nie potrafią zrobić sztuczne systemy. Najsilniejsze ośrodki AI na świecie: MIT, Stanford, CalTech, Berkeley. W Europie: Edynburg w Szkocji, Marsylia w Francji. Wielkie firmy komputerowe: IBM, Microsoft, Siemens. Dr hab. inż. Barbara Dębska, prof. PWSZ Krosno
Za i przeciw AI Trudno o dobrą teorię. Inteligencja jest bardzo złożoną funkcją mózgu. Jedynie systemy o podobnej złożoności mogą ze sobą konkurować. Wielkie projekty w AI pozwoliły sporo się nauczyć. Najbardziej ambitne projekty: Japoński projekt komputerów piątej generacji. Projekty amerykańskie. Projekty europejskie. Dr hab. inż. Barbara Dębska, prof. PWSZ Krosno
Komputery piątej generacji Lata 1982-94. Budżet rzędu miliarda USD na 10 lat. Ministry of International Trade and Industry (MITI, Japonia). Ok. 40 młodych ludzi z różnych firm komputerowych. Institute for New Generation of Computer Technology (ICOT). Budowa „Knowledge Information Processing Systems (KIPS)”. W latach 90. KIPS’y miały być „centralnym narzędziem we wszystkich dziedzinach społecznej działalności, włączając w to ekonomię, przemysł, kulturę, życie codzienne”. Dr hab. inż. Barbara Dębska, prof. PWSZ Krosno
Główne założenia dla komputerów 5-tej generacji Tłumaczenie, ok. 100 000 słów z japońskiego na angielski z dokładnością 90%. Rozumienie ciągłej mowy w zakresie 50000 słów z dokładnością 95%. Dialog z maszyną w języku naturalnym. Stworzenie systemów eksperckich korzystających z 10.000 reguł wnioskowania. „Pattern Information Processing National Systems” (PIPNS) – analiza obrazów przy założeniu przechowywania do 100.000 obrazów w pamięci. Dr hab. inż. Barbara Dębska, prof. PWSZ Krosno
Wyniki Program zakończono w 1994 roku, o pierwotnych celach zapomniano !!!, natomiast Rozwinięto systemy równoległego i rozproszonego przetwarzania wiedzy oraz systemy równoległego wnioskowania (PIM, Parallel Inference Machines). Opracowano obiektowo-zorientowane języki do reprezentacji wiedzy: np.: KL1, KLIC, pozwalające na opis skomplikowanych fragmentów wiedzy, np. dotyczących reakcji biologicznych czy zagadnień prawniczych. Rozwinięto metody szukania i organizacji wiedzy w dużych, rozproszonych bazach danych multimedialnych. Rozwinięto komputerowe wspomaganie projektowania (CAD, computer– aided design) z wykorzystywaniem wnioskowania logicznego z możliwością jego realizowania na komputerach umożliwiających równoległe przetwarzanie. Dr hab. inż. Barbara Dębska, prof. PWSZ Krosno
Projekty amerykańskie Najsilniejsze, specjalizujące się w AI ośrodki naukowe są w USA. Główne projekty AI finansowane są przez ARPA (Advanced Research Projects Agency of Department of Defense) dotyczyły prac na potrzeb armii – automatyczne samoloty i czołgi. Powstało Microelectronic and Computer Technology Corporation (MCTC), od 1983 roku będące konsorcjum większości dużych firm komputerowych. AI, CAD/CAM (computer aided manufacturing), superkomputery, IC ... Podjęto „Inicjatywę superkomputerową” (supercomputing initiative) – hardware: tera-byte flop computer i gigabit networks - The Grid. Opracowano alternatywę do systemów o milionach reguł: inteligencję behawioralną, która zakłada, że rozwój robota podobny jest do rozwoju dziecka. (behawioryzm – uczłowieczenie) Dr hab. inż. Barbara Dębska, prof. PWSZ Krosno
Europa W Anglii do 1973 powstało sporo prac w dziedzinie AI. Raport matematyka Sir Jamesa Lighthilla - AI to utopia; fundusze obcięto. Po 1982 r. sytuacja się zmieniła; kilka dobrych ośrodków (Edynburg, Sussex) kognitywnych. Francja, od 1982 realizowano program rozwoju komunikacji, robotyki i AI. Plany: w 1990 roku 20% produkcji będzie wykonywanej dzięki robotom. Projekt inteligentnej encyklopedii. Unia Europejska: ESPRIT - European Strategic Program for Resources in Information Technology, w tym rozwój mikroelektroniki, robotyki, AI, oprogramowania. Budowa społeczeństwa informacyjnego – 6 Program Ramowy UE. Udział politechnik, uniwersytetów i dużych firmy IT w badaniach nad AI. Powstanie Sieci Centrów Doskonałości Dr hab. inż. Barbara Dębska, prof. PWSZ Krosno
I. SZUKANIE I REDUKCJA PROBLEMÓW Szukajcie a (być może) znajdziecie! Szukanie - jedna z najważniejszych metod informatyki, niemal utożsamiana ze sztuczną inteligencją. Występuje w wielu problemach: dedukcji, rozumowania, wnioskowania, planowania, dowodzenia twierdzeń ... Donald E. Knuth poświęcił szukaniu cały tom: „The art of computer programming. Vol. III. Sorting & Search”. (Sztuka programowania, Tom 3, ”Sortowanie i wyszukiwanie”, WNT, 2002) Szukajcie a (być może) znajdziecie! Sposoby przeszukiwania: - Systematyczna eksploracja alternatyw. - Sekwencja kroków prowadząca do rozwiązania. Dr hab. inż. Barbara Dębska, prof. PWSZ Krosno
Definicja problemu Trzy elementy potrzebne do zdefiniowania problemu: Baza danych: fakty, stany, możliwości, opis sytuacji. Możliwe operacje: zmieniają stan bazy danych. Strategia kontrolna: start, stop i kolejność operacji. Właściwości procesu szukania rozwiązania: Ciąg operacji tworzy sekwencję działań, od stanu początkowego do stanu końcowego (celu). Z każdą operacją związany jest pewien koszt. W procesie szukania należy dążyć do minimalizacji całkowitych kosztów. Dr hab. inż. Barbara Dębska, prof. PWSZ Krosno
Rodzaje algorytmów Znaleziona sekwencja operacji <=> rozumowanie. Rozumowanie bezpośrednie: od danych do celu (data driven), zwane szukaniem z dołu do góry (bottom-up). Rozumowanie wstecz: od celu do danych, kierowane przez cele (goal directed), z góry na dół (top-down) Analiza środków i celów (means-ends analysis): strategia mieszana, tworzy cele pośrednie. Jak przedstawić proces szukania? Grafy lub struktury drzewiaste. Strategie przeszukiwań: różne sposoby tworzenia grafów lub przechodzenia przez graf. Dr hab. inż. Barbara Dębska, prof. PWSZ Krosno
Grafy i szukanie węzły = stany bazy; tworzone w miarę potrzeb. gałęzie = operacje prowadzące do nowych stanów. Dr hab. inż. Barbara Dębska, prof. PWSZ Krosno
Struktury drzewiaste i szukanie grafy w których każdy węzeł ma tylko jednego poprzednika. Drzewo wszystkich możliwości wyznacza przestrzeń szukania. Dr hab. inż. Barbara Dębska, prof. PWSZ Krosno
Eksplozja liczby rozwiązań Przestrzeń szukania może być nieskończona lub ogromnie wielka. Np. jeśli jest 10 operatorów a potrzeba 100 kroków to – 10100 elementarnych stanów Dla warcabów jest około 1040 różnych gier! Liczba gier w szachach jest rzędu 10120 (tyle węzłów końcowych) Kostka Rubika, ok. 1017 możliwości ułożenia klocków na ściankach. Jak znaleźć drogę do rozwiązania w tak wielkiej przestrzeni tworząc najmniejszy graf szukania? W AI interesują nas zagadnienia nieobliczalne, NP-trudne - liczba węzłów rośnie prowadząc do „eksplozji kombinatorycznej”. Drzewo szukania powinno być małym podzbiorem całej przestrzeni szukania. Podstawowe pytanie: Jak to osiągnąć? Dr hab. inż. Barbara Dębska, prof. PWSZ Krosno
Heurystyki Metoda „wygeneruj i testuj”. Generator nowych stanów (węzłów) produkuje hipotezy. generuj wszystkie możliwe stany (zupełność); unikaj powtarzania tych samych stanów (unikalność); używaj wszystkich informacji pozwalających wstępnie ograniczyć możliwe hipotezy (np. stosuj zdrowy rozsądek – common sense). Testuj wyniki. „Heurystyczny” - pomocny w rozwiązaniu, służący odkryciu, zawierający praktyczne zasady. Wiedza heurystyczna - wiedza nie gwarantująca rozwiązania. Proces heurystyczny oznacza proces mogący - ale nie gwarantujący - doprowadzić do rozwiązania, strategię, trik. Proces heurystyczny - przeciwstawienie ślepego szukania. Dr hab. inż. Barbara Dębska, prof. PWSZ Krosno
Przykład heurystyki – pewna osoba zgubiła szkła kontaktowe. Różne metody poszukiwań: - Szukanie na ślepo – schylanie się i szukanie po omacku losowo; - Szukanie systematyczne – Przeszukiwanie powierzchni w sposób zorganizowany w coraz to większych kręgach wokół punktu centralnego - Szukanie analityczne – rozwiązuje się ścisłe równania matematyczne uwzględniające ciężar i kształt szkieł, siłę ciążenia, wiatr, opór powietrza, topografię, sprężystość i strukturę powierzchni. - Szukanie heurystyczne – po pierwsze określamy przybliżony kierunek upadku, opierając się na naszej wiedzy domyślamy się na jaką odległość mogły upaść szkła, a następnie ograniczamy poszukiwania do wyznaczonego obszaru. - Szukanie leniwe – znajdujemy najbliższego optyka ... Główną wadą metody heurystycznej jest fakt braku pewności sukcesu (zawodzą w tzw. szczególnych przypadkach). Dr hab. inż. Barbara Dębska, prof. PWSZ Krosno
Przesuwanka Przykład: 15-ka lub 8-ka, prosta przesuwanka. Przestrzeń stanów liczy 9!/2=181440 elementów (połowa jest niedostępna bez np. zamiany 1<=>2). Stan = macierz 3 na 3. Operacje = przesuwanie; 4 operacje na pustym polu; Ruchy = zbiór operatorów Od, Og, Ol, Op Zbiór stanów wyjściowych S i końcowych G. Problem zdefiniowany jest jako trójka (S,O,G). Rozwiązanie problemu = ciąg operatorów przekształcających S ® G. Dr hab. inż. Barbara Dębska, prof. PWSZ Krosno
PAP 8.10.2007 Dr hab. inż. Barbara Dębska, prof. PWSZ Krosno
Królowe i kryptologia Problem N królowych. Stan początkowy: dowolny układ N królowych. Operator: przestaw królową na jedno z pustych pól. Cel: ustawienie N królowych tak, by żadna nie atakowała pozostałych. Cel dodatkowy: znaleźć wszystkie możliwe rozwiązania. Dr hab. inż. Barbara Dębska, prof. PWSZ Krosno
Lis i gęsi Farmer, lis, gęś, ziarno pusto Pusto Problem: Jak przewieźć lisa, gęś i ziarno małą łódką na drugą stronę rzeki, jeśli zmieści się w niej nie więcej niż jedna rzecz? Farmer, lis, gęś, ziarno pusto Jeśli nie pilnować to: lis zje gęś, gęś zje ziarno (farmer zje wszystko). Pusto Farmer, lis, gęś, ziarno Dr hab. inż. Barbara Dębska, prof. PWSZ Krosno
Algorytm rozwiązania Dr hab. inż. Barbara Dębska, prof. PWSZ Krosno
Reprezentacja redukcyjna Najważniejsze nie stany, ale cele, czyli opisy problemu Opis początkowego problemu Zbiór operatorów transformujących dany problem na problemy cząstkowe Zbiór problemów elementarnych Wieża z Hanoi. Krążki A, B, C, . . . Kołki, i, j, k. Problem całkowity: przesuń n klocków z i na j. Podproblemy: Przesuń stos n-1 klocków z i na j Przesuń jeden klocek z i na k Przesuń stos n-1 klocków z j na k Problem elementarny: przesunięcie pojedynczego klocka. Dr hab. inż. Barbara Dębska, prof. PWSZ Krosno
Rzeczywiste problemy Metody szukania są przydatne do rozwiązywania wielu rzeczywistych problemów. Szukanie optymalnej drogi: rutowanie pakietów w sieciach komputerowych, rezerwacje lotnicze lub kolejowe. Projektowanie VLSI: jak optymalnie rozmieścić miliony elementów uwzględniając wiele ograniczeń? Jaką strukturę przyjmie białko po zwinięciu się łańcucha aminokwasów? Szukanie drogi przez roboty, szukanie inteligentnego życia na Marsie, autonomiczne urządzenia ratunkowe. Planowanie zajęć w większej szkole. Gry planszowe, gry wojenne, gry komputerowe. Dowodzenie twierdzeń matematycznych. Dr hab. inż. Barbara Dębska, prof. PWSZ Krosno
Procedury szukania Szukanie na ślepo - nie mamy żadnej informacji. Szukanie heurystycze - potrafimy ocenić postępy. Na ślepo: Monte Carlo, czyli procedura Brytyjskiego Muzeum. Dla większych problemów jeśli istnieje wiele rozwiązań może coś się uda znaleźć ... i ślepej kurze ... Szukanie w głąb. Szukanie w szerz, sprawdzając wszystkie możliwości. Dr hab. inż. Barbara Dębska, prof. PWSZ Krosno
Dziękuję za uwagę Dr hab. inż. Barbara Dębska, prof. PWSZ Krosno