Wprowadzenie do Sztucznej Inteligencji

advertisement
Wprowadzenie do Sztucznej
Inteligencji
Wykład 1
Informatyka Studia InŜynierskie
©AM
Dlaczego badania nad sztuczną inteligencją?
• Próba zrozumienia istot inteligentnych - lepsze poznanie
samego siebie (filozofia, psychologia)
• Wyzwanie dla badaczy - konstrukcja inteligentnych maszyn
• Nieograniczone moŜliwości zastosowań praktycznych
©AM
1
Geneza badań nad sztuczną inteligencją
• StaroŜytne początki w badaniach nad logiką formalną
• Koniec lat 5050-tych XX w. prawdziwy impuls do rozwoju z
chwilą stworzenia pierwszego komputera
• Pojawienie się terminu „sztuczna inteligencja” - rok 1956
• Obecnie uwaŜana za jedną z najistotniejszych dziedzin nauki
obok biologii molekularnej i inŜynierii genetycznej,
informatyki kwantowej
©AM
Inteligencja - próba definicji
• Czy jest to jakaś pojedyncza własność, cecha, czy raczej zbiór pewnych
pewnych
umiejętności?
• W jakim stopniu jest wyuczona, a w jakim wrodzona?
• Co tak naprawdę dzieje się w trakcie uczenia?
• Czym w gruncie rzeczy jest kreatywność? Czym intuicja?
• Czy inteligencja moŜe być stwierdzona jedynie na podstawie
obserwacji zachowania, czy wymaga raczej poznania jakiś
„wewnętrznych” mechanizmów?
• Jak wiedza jest reprezentowana w systemie nerwowym i czy płyną z
tego jakieś wnioski odnośnie budowy inteligentnych maszyn?
• Czym jest samoświadomość i czy ma znaczenie dla inteligencji?
• Czy w ogóle moŜliwe jest stworzenie inteligentnych maszyn, czy
inteligencja wymaga raczej bogactwa doznań i doświadczeń, które są
dostępne jedynie w realnie istniejącym świecie?
©AM
2
Definicje sztucznej inteligencji
• [Sztuczna inteligencja to automatyzacja] zdolności przypisanych
ludzkiemu myśleniu, zdolności taki jak podejmowanie decyzji,
rozwiązywanie problemów, uczenie się... [Bellman
[Bellman,, 1978]
• Sztuczna inteligencja to badania prowadzone w kierunku
stworzenia komputerów, które myślą ... maszyn posiadających
umysł. [Haugeland
[Haugeland,, 1985]
• Sztuczna inteligencja to sztuka tworzenia maszyn zdolnych do
wykonywania działań, wymagających od człowieka zaangaŜowania
inteligencji. [Kurzweil
[Kurzweil,, 1990]
• Sztuczna inteligencja to badania mające na celu stworzenie
komputerów posiadających umiejętności, w których człowiek jest
obecnie lepszy. [Rich
[Rich i Knight,
Knight, 1991]
©AM
Definicje sztucznej inteligencji c.d.
• Sztuczna inteligencja to badanie zdolności umysłowych za pomocą
modeli obliczeniowych. [Charniak
[Charniak i McDermott,
McDermott, 1985]
• Sztuczna inteligencja to studia nad modelami obliczeniowymi, które
umoŜliwiają percepcję, wnioskowanie i działanie. [Winston
[Winston,, 1992]
• Sztuczna inteligencja to badania mające na celu opis i symulację
inteligentnego zachowania w kategoriach procesów obliczeniowych.
[Schalkoff,
Schalkoff, 1990]
• Sztuczna inteligencja jest gałęzią informatyki, zajmującą się
automatyzacją inteligentnego zachowania.[Luger
zachowania.[Luger i Stubblefield,
Stubblefield, 1993]
©AM
3
Definicje sztucznej inteligencji c.d.
myślenie
(wnioskowanie)
[Kurzweil,
Kurzweil, 1990]
[Rich i Knight,
Knight, 1991]
[Charniak i McDermott,
McDermott, 1985]
[Winston,
Winston, 1992]
zachowanie
(działanie)
[Bellman,
Bellman, 1978]
[Haugeland,
Haugeland, 1985]
[Schalkoff,
Schalkoff, 1990]
[Luger i Stubblefield,
Stubblefield, 1993]
ludzkie
racjonalne
©AM
Koncepcje sztucznej inteligencji
„Silna” sztuczna inteligencja - system inteligentny, to
taki, który jest bezpośrednim odzwierciedleniem
inteligencji człowieka
„Słaba” sztuczna inteligencja - system inteligentny, to taki,
który działa racjonalnie (koncepcja systemowa).
©AM
4
Systemowa koncepcja sztucznej inteligencji
Idealistyczna koncepcja racjonalności
System funkcjonuje racjonalnie, jeśli wykonuje właściwe
czynności (akcje, operacje), tzn. działa w sposób
gwarantujący osiągnięcie celu, przy przyjętych
załoŜeniach.
©AM
Działać jak człowiek: Test Turinga
©AM
5
Test Turinga
Mechanizmy niezbędne w teście Turinga:
Turinga:
• zdolność do przetwarzania języka naturalnego
• zdolność do reprezentowania wiedzy
• zdolność do automatycznego wnioskowania
• zdolność uczenia się
Mechanizmy niezbędne w „pełnym” teście Turinga:
Turinga:
• zdolność do rozpoznawania obrazów
• zdolność poruszania się i przemieszczania obiektów
(zdolności manualne)
©AM
Test Turinga - charakterystyka
• Badanie porównawcze zachowania istoty rozumnej w kontekście
pewnego zbioru pytań; standard pozwalający wykryć inteligencję
bez odwoływania się do "prawdziwej natury” inteligencji,
wykorzystujący jedyny dostępny "wzorzec"
• Zignorowanie wątpliwości dotyczących wewnętrznych procesów
maszyny, towarzyszących inteligentnemu zachowaniu i jego
świadomości bądź braku świadomości podejmowanych decyzji
• Eliminacja jakichkolwiek tendencji do preferowania inteligencji
organizmów Ŝywych nad inteligencję maszyn poprzez ograniczenie
kontaktu jedynie do zdalnej formy wymiany informacji
©AM
6
Test Turinga - charakterystyka
• Ograniczenie badań zachowania jedynie do zadań o charakterze
symbolicznym; nie są sprawdzane moŜliwości percepcji
zmysłowej ani umiejętności manualne, choć uwaŜane są za
istotny przejaw ludzkiej inteligencji
• Ograniczenie pojęcia inteligencji jedynie do jej ludzkiej postaci;
postaci;
Czy inteligencja maszynowa lub jakakolwiek inna nie moŜe mieć
zupełnie odmiennej formy (inny, nieznany nam rodzaj
inteligencji)?
©AM
Myśleć jak człowiek: Cognitive science
Kognitywistyka (ang. cognitive science) – opis
i modelowanie ludzkiego sposobu myślenia,
jego procesu poznania i inteligentnego zachowania.
Metody:
• introspekcja
• eksperymenty neurologiczne i psychologiczne
©AM
7
Myśleć racjonalnie: tradycje logiki
Język logiki formalnej - precyzyjna notacja/forma wyraŜania opisów
wszystkich obiektów i związków między nimi.
Zalety:
Twierdzenie Gödla - moŜliwe jest zbudowanie programu, który
znajdzie rozwiązanie kaŜdego problemu logicznego, o ile ono istnieje
istnieje
(jeśli nie istnieje, to nie wiemy czy program się zatrzyma!).
Wady:
Trudno wyrazić wiedzę nieformalną w języku logiki, szczególnie zaś
zaś
wiedzę niepewną, niepełną i nieprecyzyjną.
Praktyczna realizacja programu rozwiązującego realne problemy
logiczne jest obecnie niemoŜliwa ze względu na wymagania zasobowe.
zasobowe.
©AM
Działać racjonalnie: racjonalny system
Systemowa sztuczna inteligencja - studiowanie i konstruowanie
racjonalnych systemów (agentów) sztucznej inteligencji.
Racjonalne działanie to zachowanie prowadzące właściwą drogą do
osiągnięcia celu; działanie poprawne przy przyjętych załoŜeniach i
postawionym celu.
Racjonalne działanie to coś więcej niŜ racjonalne
myślenie/wnioskowanie:
• logiczne wnioskowanie - warunek dostateczny (ale nie konieczny!)
racjonalnego zachowania
©AM
• racjonalne działanie bez wnioskowania (np. natychmiastowa reakcja
reakcja
mistrza gry w szachy)
• racjonalne działanie bez moŜliwości prowadzenia wnioskowania
(przymus działania bez moŜliwości wnioskowania!)
8
Działać racjonalnie: racjonalny system
Wszystkie (sześć) zdolności potrzebnych w teście Turinga to cechy
niezbędne równieŜ w osiągnięciu racjonalnego działania.
Zalety koncepcji racjonalnego agenta:
• większy poziom ogólności - racjonalne myślenie nie jest jednym
sposobem osiągnięcia racjonalnego zachowania,
• moŜliwa do weryfikacji i realizacji w praktyce ze względu na
precyzyjną i kompletną definicję.
Obecny poziom technologii uniemoŜliwia pełną realizację systemowej
systemowej
koncepcji sztucznej inteligencji w skomplikowanych środowiskach
stąd koncepcja ograniczonej racjonalności - właściwego działania w
sytuacji ograniczonych zasobów obliczeniowych (pamięci i/lub czasu).
czasu).
©AM
Obszary zastosowań sztucznej inteligencji
• Gry
• Automatyczne wnioskowanie i dowodzenie
twierdzeń
• Systemy eksperckie
• Przetwarzanie języka naturalnego
• Rozpoznawanie obrazów
• Planowanie działań i robotyka
• Automatyczne (maszynowe) uczenie się
©AM
9
Gry
• Reprezentacja wiedzy
– Przestrzeń stanów gry
• Metody wnioskowania
– Algorytmy przeszukiwania
grafów przestrzeni stanów
– Przeszukiwanie baz danych
(np. dla końcówek szachowych)
– Maszynowe uczenie się
• Uwagi
– Przejrzysta struktura formalna
problemu
– Mała ilość wiedzy formalnej
niezbędnej do rozwiązania
problemu
• Pierwsze zastosowania
– Szachy:
* Charles Babbage - Analytical
Engine
* Claude Shannon (1950) - opis
algorytmu
* Alan Turing - opis algorytmu
* Arthur Samuel (1963) program uczący się
– Warcaby
– Układanka 1616-pozycyjna
– Kółko i krzyŜyk
©AM
Automatyczne wnioskowanie i dowodzenie
twierdzeń
• Reprezentacja wiedzy
– Rachunek zdań
– Rachunek predykatów
• Metody wnioskowania
– Reguła odrywania (modus ponens)
– Unifikacja (uzgadnianie)
– Rezolucja (strategie rezolucyjne)
• Pierwsze zastosowania
– Logic Theorist (Newell&Simon’63)
– GPS - General Problem Solver (Newell&Simon’66)
– Artificial Matematician
• Dziedziny współczesnych zastosowań
– Projektowanie i weryfikacja układów techniki cyfrowej (AURA’83, MRS’90)
– Synteza i weryfikacja poprawności programów komputerowych (alg. RSA’84)
– Sterowanie złoŜonymi systemami
©AM
10
Systemy eksperckie
• Reprezentacja wiedzy
– Reguły produkcji
– Ramy
• Metody wnioskowania
– Cykl „stimulus
„stimulus--response”
response” („recognize
(„recognize--act”)
act”)
– Dopasowywanie wzorców (ang. pattern matching)
matching)
– Sterowanie agendą zadań
• Pierwsze zastosowania
– DENDRAL (Stanford’60) - struktura cząsteczek związków organ.
– MYCIN (Stanford’70) - diagnoza i terapia infekcji bakteryjnych krwi
– PROSPECTOR - geologia (ocena złóŜ surowców)
– XCON - konfiguracja komputerów firmy VAX
• Dziedziny współczesnych zastosowań
©AM
– Rolnictwo, przemysł, usługi, handel
– Nauka, medycyna
– Wojskowość
Automatyczne (maszynowe) uczenie się
• Reprezentacja wiedzy
– Drzewa decyzyjne, drzewa probabilistyczne
– Reguły decyzyjne, sztuczne sieci neuronowe
• Metody wnioskowania
–
–
–
–
Algorytm ID3 (Quinlan
), C4.5
(Quinlan),
Analogia
Dopasowanie
Uogólnienie i specyfikacja
• Pierwsze zastosowania
– METAMETA-DENDRAL
– TEREZJASZ (współpraca z systemem eksperckim MYCIN)
• Zastosowania współczesne
– Systemy oparte na bazach wiedzy (syst
(syst.. eksperckie, syst.
syst. doradcze, robotyka)
– Eksploracja i odkrywanie wiedzy z duŜych bazach danych
©AM
11
Automatyczne (maszynowe) uczenie się
• Uczenie się to konstruowanie i zmiana reprezentacji
doświadczonych faktów [R.Michalski, 1986].
• Uczenie się to wykorzystywanie doświadczeń z przeszłości
w celu doskonalenia działania w bieŜącym stanie i
rozwiązywania aktualnych problemów [Bolc
[Bolc,, 1992].
• Uczeniem się systemu jest kaŜda autonomiczna zmiana w
systemie zachodząca na podstawie doświadczeń, która
prowadzi do poprawy jakości jego działania [Cichosz,
2000].
©AM
Automatyczne (maszynowe) uczenie się
Kryteria podziału systemów uczących się:
• forma reprezentacji wiedzy
• sposób wykorzystywania wiedzy
• źródło postać informacji trenującej
• mechanizm nabywania i doskonalenia wiedzy
©AM
12
Automatyczne (maszynowe) uczenie się
Podział systemów uczących się ze względu na formę
reprezentacji wiedzy:
wiedzy:
• systemy subsymboliczne,
• systemy symboliczne.
Podział systemów uczących się ze względu na postać
informacji trenującej:
trenującej:
• uczenie się bez nadzoru (ang. unsupervised learning),
learning),
• uczenie się z nadzorem (ang. supervised learning),
learning),
• uczenie się ze wzmocnieniem (ang. reinforcement learning)
learning)
©AM
Automatyczne (maszynowe) uczenie się
Podział systemów uczących się ze względu na sposób
wykorzystywania wiedzy:
wiedzy:
• klasyfikacja,
• aproksymacja,
• podejmowanie decyzji,
• modelowanie środowiska.
©AM
13
Automatyczne (maszynowe) uczenie się
Podział systemów uczących się ze względu na mechanizm
nabywania wiedzy:
wiedzy:
• na podstawie instrukcji (ang. from instruction,
instruction, by being told),
told),
• przez analogię (ang. by analogy),
analogy),
• przez indukcję (ang. inductive learning),
learning),
– na przykładach (ang. from examples),
examples),
– przez obserwację i odkrywanie (ang. from observation and discovery),
discovery),
• przez dedukcję (ang. by deduction),
deduction),
• przez wyjaśnianie (ang. explanationexplanation-based learning).
learning).
©AM
Planowanie działań i robotyka
• Reprezentacja wiedzy
– Logika predykatów
– Lista operatorów (akcji)
– Tablica trójkątna (ang. triangle
table)
table)
– Makrooperatory
• Metody wnioskowania
– Strategia „least
„least--commitment”
commitment”
– MeansMeans-Ends Analysis
– Procedura regresji operatorów
– Przeszukiwanie „wzdłuŜ” (ang.
lengthlength-first search)
search)
• Pierwsze zastosowania
– STRIPS (Fikes’71)
– ABSTRIPS (Sacerdoti’74)
– NONLIN (Nilsson’80)
– NOAH (Sacerdoti’75(Sacerdoti’75-77)
• Dziedziny współczesnych zastosowań
– Systemy planowania podróŜy
– Automatyczne linie produkcyjne
– Sterowanie robotów
– Szeregowanie procesów produkcji
©AM
14
Planowanie działań i robotyka c.d.
Planowanie to jest techniką rozwiązywania problemów z dziedziny
AI, polegającą na określeniu ciągu akcji (operacji) jakie naleŜy
podjąć, aby przejść z zadanego stanu początkowego do stanu
końcowego będącego celem.
Zbiór operatorów
{Oi}
Stan początkowy
Si
System
Planowania
Działań
Stan końcowy
Sg
Plan
©AM
Planowanie działań i robotyka c.d.
• Charakterystyka problemów planowania
– Bardzo złoŜona reprezentacja stanu problemu
– Niepewność i niepełność informacji
– Przestrzeń przeszukiwań o znacznym rozmiarze
– Występowanie konfliktów w trakcie przeszukiwania na
skutek niejawnych interakcji pomiędzy operatorami/akcjami
• Wykorzystywane metody
– Dekompozycja problemu (częściowa lub całkowita)
– Planowanie nieliniowe
– Planowanie hierarchiczne
– Strategia „least
„least--commitment”
commitment”
©AM
15
Przetwarzanie języka naturalnego
• Reprezentacja wiedzy
– Sieci semantyczne
– Ramy, scenariusze, skojarzenia
• Metody wnioskowania
– Przeszukiwanie przekrojowe, ukierunkowane sieci
• Pierwsze zastosowania
–
–
–
–
ELIZA (Weizenbaum’66) - psycholog terapeuta
PARRY (Colby’75) - model paranoika
STUDENT (Bobrow’86) - znaczenie pojedynczych słów
SHRDLU (Winogad’73) - rozmowy o świecie klocków
• Dziedziny współczesnych zastosowań
– Rozpoznawanie mowy (częściowe) i pisma oraz ich translacja
– Robotyka
– Sterowanie
©AM
Przetwarzanie języka naturalnego
Podstawowy problem:
Zgromadzenie i zorganizowanie wiedzy kontekstowej
(powszechnie dostępnej i potocznej!) w taki sposób, aby
mogła zostać uŜyta do automatycznego rozumienia języka
naturalnego.
Poziomy przetwarzania języka naturalnego:
• sygnałowy,
• fonetyczny,
• fonematyczny,
• sylabiczny,
• frazeologiczny,
• syntaktyczny,
• semantyczny,
• pragmatyczny.
©AM
16
Rozpoznawanie obrazów
• Reprezentacja wiedzy
– Rastrowa, dyskretyzacja
– Opis kształtu, wektorowa
• Metody wnioskowania
– Wygładzanie, generacja otoczki
– Segmentacja, triangularyzacja
• Pierwsze zastosowania
– Kontrola jakości wyrobów w ESP (Robotiker
(Robotiker,, Portugalia)
– ZAPP - ocena tusz wieprzowych
• Dziedziny współczesnych zastosowań
– Robotyka, zautomatyzowana produkcja
– Diagnostyka medyczna (obrazowa)
– Nawigacja, kryminalistyka
©AM
Podstawowe zagadnienia dotyczące budowy
systemów sztucznej inteligencji
Reprezentacja wiedzy jest to sposób przedstawienia
całego zakresu wiedzy niezbędnej dla inteligentnego
zachowania w formalnym języku, to znaczy takim, którym
moŜe posługiwać się komputer.
Przeszukiwanie jest techniką rozwiązywania problemów,
polegającą na systematycznej eksploracji przestrzeni
stanów (hipotez rozwiązania) problemu, to znaczy analizie
wszystkich kolejnych i alternatywnych (równoległych)
kroków pojawiających się w procesie rozwiązywania
problemu.
©AM
17
Kognitywizm a konekcjonizm w sztucznej
inteligencji
Kognitywizm
Opis i modelowanie procesów poznawczych jest
moŜliwy na poziomie symbolicznym (paradygmat von
Neumanna).
Konekcjonizm
Opis i modelowanie procesów poznawczych za
pomocą duŜej liczby maksymalnie uproszczonych
jednostek przetwarzających, połączonych w
skomplikowane sieci i realizujących przetwarzanie
subsymboliczne (przetwarzanie rozproszone i
równoległe).
©AM
Kognitywizm w sztucznej inteligencji
Fizyczny system symboli to zbiór elementów
zwanych symbolami, będących fizycznymi wzorcami,
które mogą występować jako składniki elementów
innego typu zwanych wyraŜeniami (lub strukturami
symbolicznymi).
Hipoteza Fizycznego Systemu Symboli
Fizyczny system symboli ma niezbędne i wystarczające środki
do wygenerowania inteligentnego działania (Newell
(Newell,, Simon’76).
©AM
18
Literatura
1. Charniak,
Charniak, D. McDermott,
McDermott, Introduction to Artificial
Intelligence,
Intelligence, Addison Wesley,
Wesley, 1985.
2. G.F. Lugger,
Lugger, W.A. Stubblefield,
Stubblefield, Artificial Intelligence
and the Design of Expert Systems,
Systems, The
Benjamin/Cummings
Benjamin/Cummings Publ.
Publ. Comp.
Comp. Inc.,
Inc., 1989.
3. E. Rich,
Rich, Artificial Intelligence,
Intelligence, McGraw Hill,
Hill, 1983.
4. E. Rich,
Rich, Knight,
Knight, Artificial Intelligence,
Intelligence, McGraw Hill,
Hill,
1991.
5. S. J. Russell, P. Norvig,
Norvig, Artificial Intelligence.
Intelligence. A
Modern Approach.
Approach. Prentice Hall, Upper Saddle River,
River,
New Yersey,
Yersey, 1994.
©AM
19
Download