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
©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
działania, tzn. działa tak, aby osiągnąć cel, przy aktualnie
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 przetwarzanie 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 - zalety
• 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 - wady
• 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
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 zachowanie/działanie to takie zachowanie, które
prowadzi do osiągnięcia celu przy aktualnie przyjętych założeniach.
założeniach.
Racjonalne działanie to coś więcej niż racjonalne
myślenie/wnioskowanie:
• logiczne wnioskowanie - warunek dostateczny (ale nie konieczny!)
racjonalnego zachowania
• 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!)
©AM
8
Działać racjonalnie: racjonalny system
Wszystkie (sześć) zdolności potrzebnych do testu 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
• Metody wnioskowania
– Algorytmy przeszukiwania
przestrzeni stanów
– Przeszukiwanie baz danych (np.
dla końcówek szachowych)
– Systemy uczące 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
– Go
– Układanka 1616-pozycyjna
– Kółko i krzyżyk
©AM
Automatyczne wnioskowanie i dowodzenie
twierdzeń
©AM
• Reprezentacja wiedzy
– Rachunek zdań
– Rachunek predykatów
• Metody wnioskowania
– Reguła odrywania (modus ponens)
– Unifikacja (uzgadnianie)
– Rezolucja (strategie rezolucyjne)
rezolucyjne)
• Pierwsze zastosowania
– Logic Theorist (Newell&Simon’63)
Newell&Simon’63)
– GPS - General Problem Solver (Newell&Simon’66)
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
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 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
[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 (intersection
(intersection search)
search)
• 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
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
– Segmentacja
• 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).
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/
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,
Russell, P. Norvig,
Norvig, Artificial Intelligence.
Intelligence. A
Modern Approach.
Approach. Prentice Hall,
Hall, Upper Saddle River,
River,
New Yersey,
Yersey, 1994.
©AM
19
Download