Sztuczna Inteligencja Szukanie, gry i ludzkie myślenie

32
Sztuczna Inteligencja Sztuczna Inteligencja Szukanie, gry i ludzkie Szukanie, gry i ludzkie myślenie myślenie Włodzisław Duch Katedra Informatyki Stosowanej UMK Google: W. Duch

description

Sztuczna Inteligencja Szukanie, gry i ludzkie myślenie. Włodzisław Duch Katedra Informatyki Stosowanej UMK Google: W. Duch. Gry planszowe. Szukanie i ludzkie myślenie. Paradoksy kognitywne. Reprezentacja wiedzy ... . Co będzie. Warcaby. - PowerPoint PPT Presentation

Transcript of Sztuczna Inteligencja Szukanie, gry i ludzkie myślenie

Page 1: Sztuczna Inteligencja Szukanie, gry i ludzkie myślenie

Sztuczna InteligencjaSztuczna InteligencjaSzukanie, gry i ludzkie myślenieSzukanie, gry i ludzkie myślenie

Włodzisław DuchKatedra Informatyki Stosowanej UMK

Google: W. Duch

Page 2: Sztuczna Inteligencja Szukanie, gry i ludzkie myślenie

Co będzieCo będzie

• Gry planszowe.

• Szukanie i ludzkie myślenie.

• Paradoksy kognitywne.

• Reprezentacja wiedzy ...

Page 3: Sztuczna Inteligencja Szukanie, gry i ludzkie myślenie

WarcabyWarcaby• 1952, Samuel, pierwszy program uczący się gry w warcaby.

• 1992, Chinook (J. Schaeffer, UoA) wygrywa US. Open. Program używa szukania

• Mistrzostwa człowiek-maszyna, Londyn 1992Dr. Marion Tinsley, wygrał z Chinookiem 4-2, 33 remisy.Użyto 8-proc. stacji Silicon Graphics 4D/480, 256 MB RAM, baza danych wszystkich końcówek z 1-7 figurami + prawie połowa wszystkich partii z 8 figurami.

• 1994, remis 1-1 i 18 remisów. • 1995, wygrana Chinooka 1-0 i 31 remisów.

Użyto komputera SGI z 512 MB RAM.

• 2007, udowodniono, że najnowsza wersja Chinook nie może przegrać partii, warcaby uznano za w pełni rozwiązane.

Page 4: Sztuczna Inteligencja Szukanie, gry i ludzkie myślenie

Trik-trak, OthelloTrik-trak, Othello• Trik-trak (backgammon), popularny w Japonii.

Zawiera element niepewności (rzut kostką).

• 1980, program BKG wygrał raz z mistrzem świata.

• 1992, program Tesauro, techniki jak dla warcabów + uczenie się (sieć neuronowa) lepszych ocen, ranking wśród 3 najlepszych graczy.

• 1995, Logistello zwycięża mistrza świata Takeshi Murakami do 6 do 0!

Program grał parę tygodni sam z sobą poprawiając swoje funkcje oceny heurystycznej.

Mistrzowskie rezultaty w wielu grach osiągnięto dopiero w latach 1990.Moc obliczeniowa to warunek konieczny, ale nie wystarczający ...

Page 5: Sztuczna Inteligencja Szukanie, gry i ludzkie myślenie

Szachy – ogólnieSzachy – ogólnieStatyczna ocena sytuacji na planszy: liczba figur, wartość figur, położenie figur, możliwości ruchów.

Funkcja oceny: suma Wi Fi, dobierz wsp. Wi

Zależność liczba ruchów - siła programu.

Mistrz świata > 2800 punktów. Przewidywania na: 5 pełnych ruchów (10 poziomów) - 1500 punktów. Od 5-10 poziomów mamy 200 p/poziom.Dla 10 ruchów ok. 2500 punktów.Ok. 35 ruchów/poziom, heurystyki redukują to do 6/poz; dla 1000 ocen/sek, 150 sek/ruch, b=35, ok. 3-4 ruchy - nowicjusz.

Zależność jakość-szybkość obliczeń.

Page 6: Sztuczna Inteligencja Szukanie, gry i ludzkie myślenie

Szachy - historia.Szachy - historia.• 1958, pierwszy program szachowy, Alex Bernstein.

Szkocki międzynarodowy mistrz szachowy funduje nagrodę dla programu, który ogra go chociaż raz na cztery partie.W 1985 roku przegrał wszystkie cztery partie.

• 1985, HiTech wśród najlepszych 800 graczy, oceniał ok. 10 mln pozycji, w 1988 roku wygrał z arcymistrzem.

Intel+IBM: szachy to dobra reklama.  • 1994 Chess Genius na PC Pentium, kilka razy zwyciężył Gary

Kasparova; czas grania ograniczono do 25 minut na zawodnika.

• 1996 – Deep Blue przegrał z Kasparowem 2:3• 1997 – Deep Blue wygrał 3.5:2.5 • 2002 – program Deep Fritz na PC remisuje z Vladimirem Kramnikiem

Przez dwa miesiące Kramink trenował z programem Deep Fritz.

Page 7: Sztuczna Inteligencja Szukanie, gry i ludzkie myślenie

Deep Thought i Deep BlueDeep Thought i Deep BlueDeep Thought, od 1985 roku, 4 studentów z USA (T. Hsu, T. Anantharaman, M. Campbell, A. Nowatzyk).

Program Deep Blue (nowsze Deep Thought) + hardware do gry w szachy: 32 procesory IBM RS6000/SP2 + 256 ASIC.Ocenia 200-1000 milionów pozycji/sek! Duża biblioteka otwarć i końcówek.

Deep Thought – szukanie alfa-beta, ok. 10 ruchów w skomplikowanych sytuacjach. Deep Blue - ok. 14 ruchów, 3000 punktów, pobił Kasparova.

Reakcja prasy – potworna szybkość i pamięć zwyciężyły. Mózg: 10.000 razy większa pamięć/szybkość więc to uwagi bez sensu!

Moc już nadchodzi i będzie z nami …

Page 8: Sztuczna Inteligencja Szukanie, gry i ludzkie myślenie

Ostatni mecz ... Ostatni mecz ... Kasparov vs. X3D Deep Fritz junior.Nowy Jork, listopad 2003.

Mecz zakończył się remisem; główną atrakcją była gra w wirtualnej rzeczywistości.

Komputer, na którym zainstalowany był program Fritz był około 100 razy

wolniejszy niż Deep Blue i do tego zajęty generowaniem obrazu w 3 wymiarach, nic więc dziwnego, że mecz zakończył się remisem. PC stoi w kącie ... następny taki mecz odbędzie się z programem działającym na telefonie?

Najwięcej punktów Elo w historii miał Kasaprov, 2851, tylko 4 osoby w historii miały ponad 2800 punktów. Program Rybka oceniany jest (4/2011) na 3261 punktów a Houdini 3309 punktów.

Page 9: Sztuczna Inteligencja Szukanie, gry i ludzkie myślenie

Go: większe wyzwanie Go: większe wyzwanie Liczba ruchów w Go to średnio 260 (szachy tylko 35).Liczba partii: 10260 (szachy 10123).Liczba różnych pozycji na planszy: 10172 (szachy 1046).

Techniki szukania są mało przydatne: obecne programy są kiepskie na standardowej planszy 19x19, ale na poziomie mistrzowskim na planszach 9x9.Pierwszy program w 1968 roku, najlepszy obecnie Go4++ napisał M. Reiss, program jest znacznie lepszy od swojego twórcy.

Konieczne do dobrego grania w Go jest: rozpoznawanie struktur (typ lokalnych konfiguracji), reprezentacja relacji przestrzennych, uczenie maszynowe, strategie i planowanie, metody reprezentacje wiedzy.  

Nagroda 1 mln $ dla programu, który pokona mistrza z Taiwanu!MoGo (Many Faces of Go, Ver. 12) na komputerze 15Tfl, Monte Carlo Tree Search (MCTS), wygrał z mistrzem Myungwan Kim (8 Dan), przy handicapie 9 kamieni. Więcej rezultatów komputerowego go.

Page 10: Sztuczna Inteligencja Szukanie, gry i ludzkie myślenie

Szukanie a ludzkie myślenieSzukanie a ludzkie myślenie

Jak ludzie rozwiązują problemy wymagające myślenia? Intuicja?

Szachy: człowiek stosuje „zmodyfikowane progresywne pogłębianie”, ograniczone poszukiwanie w głąb, ocena w oparciu o heurystyki z doświadczenia. Intuicja = ogromna pamięć, rozpoznawanie wzorców – inne ograniczenia sprzętowe niż AI.Liczba pamiętanych „prototypowych” wzorców ~ 50.000.

Mistrz szachowy po 5-sek. ekspozycji układa średnio 23 figury z 25 na pokazanych pozycjach, nowicjusz 3 lub 4 figury. Figury ułożone przypadkowo taka sama liczba błędów.Szybki test poziomu gry w szachy.

Page 11: Sztuczna Inteligencja Szukanie, gry i ludzkie myślenie

Badania psychologiczne. Badania psychologiczne. Prezentacja 5 sekund, ruchy oczu mistrza i nowicjusza.

Prezentacja dłuższa, od nowicjusza do mistrza. Największe różnice są w czasach reakcji i liczbie prawidłowo zapamiętanych figur.

Page 12: Sztuczna Inteligencja Szukanie, gry i ludzkie myślenie

Szukanie Szukanie a ludzkie a ludzkie myśleniemyślenie. . Mechanizm „porcjowania” przy pamiętaniu złożonych struktur, mała pamięć robocza wymaga ciągłego porcjowania. Działa to trochę jak kompilacja przyrostowa.

Szachy: uczenie + pamięć, rozpoznawanie wzorców, ocena sytuacji oparta na pamięci. Uwaga skupiona jest (rozwijana jest gałąź grafu) na obszarach słabszych, ocena wzrokowa wzorców struktur.

Ekspert lepiej rozpoznaje i lepiej pamięta, ale tylko istotne struktury, znane z doświadczenia, a nie struktury przypadkowe.

Porcjowanie jest wykorzystywane w mnemotechnice.Inteligencja jest ściśle związana z sytuacją, domeną wiedzy.  

Page 13: Sztuczna Inteligencja Szukanie, gry i ludzkie myślenie

Złudzenia zmysłowe

Zmysły często nas zwodzą, np. na tych obrazkach.

Page 14: Sztuczna Inteligencja Szukanie, gry i ludzkie myślenie

Złudzenia kognitywne Złudzenia kognitywne

Przeczytaj zdanie:

  FINISHED FILES ARE THE RE- SULT OF YEARS OF SCIENTIF- IC STUDY COMBINED WITH THE EXPERIENCE OF YEARS. Teraz policz ile jest liter F w tym zdaniu. Policz je TYLKO RAZ, nie cofaj się i nie powtarzaj liczenia.

Page 15: Sztuczna Inteligencja Szukanie, gry i ludzkie myślenie

ParadoksyParadoksy ludzkie ludzkiegogo myśleni myślenia a Myślenie przebiega schematycznie, możliwe są złudzenia poznawcze. Przykład wnioskowania łatwy, trudniejszy i b. trudny (niemożliwy?)

Każdy człowiek jest ssakiem.Sokrates jest człowiekiem.

Wniosek: Sokrates jest ssakiem.Schemat: A => B, C=>A, więc C=>B

Wniosek: żaden Rurytanin nie jest żeglarzem.Schemat: ~A => B, C=>A, więc ~C => B

Żaden rolnik nie jest żeglarzem.Wszyscy Rurytanie to rolnicy.

Page 16: Sztuczna Inteligencja Szukanie, gry i ludzkie myślenie

Niemożliwy ?Niemożliwy ?

Wszyscy członkowie gabinetu to złodzieje.Żaden muzyk nie jest członkiem gabinetu.

Wniosek: ... muzycy ??? złodzieje

Takie sylogizmy rozważano już w starożytności. Jest 256 możliwości ale tylko 24 poprawne.http://pl.wikipedia.org/wiki/Sylogizm

Pytanie: czemu jest tak trudno przeprowadzić proste rozumowanie?

Page 17: Sztuczna Inteligencja Szukanie, gry i ludzkie myślenie

Test karciany (Wason 1960)Test karciany (Wason 1960)

Na jednej stronie kart są cyfry, na drugiej litery. Które karty należy obrócić, by sprawdzić prawdziwość reguły:

• jeśli jest samogłoska to cyfra jest parzysta

A K 2 7Ile minimalnie kart trzeba przewrócić?

Page 18: Sztuczna Inteligencja Szukanie, gry i ludzkie myślenie

Martwić się czy nie?Martwić się czy nie?

Załóżmy, że w Polsce 1 na 1000 osób ma wirusa HIV.Nowy test polegający na badaniu śliny, o dokładności 99.5%, wprowadzono do obowiązkowych badań okresowych.

Test wypadł pozytywnie. Jakie jest prawdopodobieństwo, że osoba ma HIV?

Page 19: Sztuczna Inteligencja Szukanie, gry i ludzkie myślenie

Obiekty w przestrzeni cech• Opis matematyczny reprezentuje obiekty O przy pomocy

pomiarów, jakie na nich przeprowadzono, podając wartości cech{Oi} => X(Oi), gdzie Xj(Oi) jest wartością j-tej cechy opisującej Oi

• Atrybut i cecha są często traktowane jako synonimy, chociaż ściśle ujmując “wiek” jest atrybutem a “młody” cechą, wartością.

• Typy atrybutów: kategoryczne: symboliczne, dyskretne – mogą mieć charakter nominalny (nieuporządkowany), np. “słodki, kwaśny, gorzki”, albo porządkowy, np. kolory w widmie światła,albo: mały < średni < duży (drink).ciągłe: wartości numeryczne, np. wiek. x2

x1

x3 x(O)

Wektor cech X =(x1,x2,x3 ... xd), o d-składowych wskazuje na punkt w przestrzeni cech.

Page 20: Sztuczna Inteligencja Szukanie, gry i ludzkie myślenie

Przykład: ryby Chapter 1.2, Pattern Classification (2nd ed) by R. O. Duda, P. E. Hart and D. G. Stork, John Wiley & Sons, 2000

Automatyzacja sortowania dwóch gatunków ryb, łososia i suma morskiego, które przesuwają się na pasie sortownika. Czujniki oceniają różne cechy: długość, jasność, szerokość, liczbę płetw

Patrzymy na histogramy. • Wybieramy liczbę przedziałów, np. n=20 (dyskretne dane)

• obliczamy szerokość przedziału =(xmaxxmin)/n,

• obliczamy N(C,ri) = #sztuk C {łosoś, sum} w każdym przedziale

ri = [xmin+(i-1), xmin+ii=1...n

• prawdopodobieństwo łączne P(C,ri)=N(C,ri)/N, gdzie N = liczba ryb

Łączne prawdopodobieństwo P(C,ri) = P(ri|C)P(C)

Page 21: Sztuczna Inteligencja Szukanie, gry i ludzkie myślenie

Przykład histogramówRozkład liczby ryb w dwóch wymiarach w 20 przedziałach:ldługość i jasność. Zaznaczono optymalne progi podziału.

P(ri|C) przybliża rozkład prawdopodobieństwa dla klasy P(x|C). Możemy go dokładnie obliczyć tylko w granicy nieskończenie wielu przykładów i podziału na nieskończenie wiele przedziałów.

W praktyce zawsze dzielimy na niewielką liczbę przedziałów.

Page 22: Sztuczna Inteligencja Szukanie, gry i ludzkie myślenie

Rodzaje prawdopodobieństwaTablica współwystępowania klasa-cecha: P(C,ri)=N(C,ri)/N

N(C, ri) = macierz,

rzędy = klasy, kolumny = cechy ri

P(C, ri) – prawdopodobieństwo

łączne, P obserwacji obiektu z klasy C dla którego cecha xri

1 1 1 2 1 3

2 1 2 2 2 3

3 1 3 2 3 3

4 1 4 2 4 3

5 1 5 2 5 3

, , ,, , ,, , ,, , ,, , ,

P C r P C r P C rP C r P C r P C rP C r P C r P C rP C r P C r P C rP C r P C r P C r

P(C) to prawd. a priori pojawienia się obiektów z danej klasy, przed wykonaniem pomiarów i określeniem, że xri ma jakąś wartość. To suma w danym rzędzie: , i

i

P C x r P C P(xri) to prawd że znajdujemy jakąś obserwację dla które cecha xri

czyli suma dla danej kolumny. ,j i ij

P C x r P x r

Page 23: Sztuczna Inteligencja Szukanie, gry i ludzkie myślenie

Prawdopodobieństwa warunkoweJeśli znana jest klasa C (rodzaj obiektu) to jakie jest prawdopodobieństwo że ma on własność xri ?

P(xri|C) oznacza warunkowe prawdopodobieństwo, że znając C cecha x będzie leżała w przedziale ri.

Suma po wszystkich wartościach cech:

, ii

P C x r P C | , /i iP x r C P C x r P C

PC(x)=P(x|C) rozkład prawd. warunkowego to po prostu przeskalowane

prawdopodobieństwo łączne, trzeba podzielić P(C,x)/P(C)

| 1ii

P x r C i dla łącznego prawdopodobieństwa

Dlatego mamy:

Page 24: Sztuczna Inteligencja Szukanie, gry i ludzkie myślenie

Formuły probabilistyczneRelacje probabilistyczne wynikają z prostych reguł sumowania!

Macierz rozkładu łącznych prawdopodobieństw: P(C, x) dla dyskretnych wartości obserwacji x, liczymy ile razy zaobserwowano łącznie N(C,x), skalujemy tak by prawdop. sumowało się do 1, czyli P(C, x) = N(C,x)/N

1

1

, ;

| 1;

n

ii

n

ii

P C P C x

P x C

Rząd macierzy P(C, x) sumuje się do:

dlatego P(x|C)=P(C, x)/P(C) sumuje się do

Kolumna macierzy P(C, x) sumuje się do: dlatego P(C|x)=P(C, x)/P(x)

sumuje się do

, ;

| 1;

i iC

iC

P x P C x

P C x

Page 25: Sztuczna Inteligencja Szukanie, gry i ludzkie myślenie

Twierdzenie BayesaFormuła Bayesa pozwala na obliczenie prawdopodobieństwa a posteriori P(C|x) (czyli po dokonaniu obserwacji) znając łatwy do

zmierzenia rozkład warunkowy P(x|C).

Sumują się do 1 bo wiemy, że jeśli obserwujemy xi to musi to być jedna z

C klas, jak też wiemy, że jeśli obiekt jest z klasy C to x musi mieć jedną z wartości xi

Obydwa prawdopodobieństwa są wynikiem podzielenia P(C,xi).

Formułka Bayesajest więc oczywista.

1;

1

| | 1;

| , /

| , /

C

ii

ii C

i i

i i i

P C

P x

P x C P C x

P x C P C x P C

P C x P C x P x

| |i i iP C x P x P x C P C

Page 26: Sztuczna Inteligencja Szukanie, gry i ludzkie myślenie

Kwiatki Mamy dwa rodzaje Irysów: Irys Setosa oraz Irys Virginica

Długość liści określamy w dwóch przedziałach, r1=[0,3] cm i r2=[3,6] cm.Dla 100 kwiatów dostajemy następujące rozkłady (Setosa, Virginica):

36 4( , )

8 52N C r

Therefore probabilities for finding different types of Iris flowers is:

0.36 0.04( , )

0.08 0.52P C r

Stąd

1 2

1 2

40, 60

44, 56

N C N C

N r N r

1 1

2 2

0.4; 0.44

0.6; 0.56

P C P r

P C P r

0.82 0.07 0.90 0.10( | ) ; ( | )

0.18 0.93 0.13 0.87P C r P r C

Page 27: Sztuczna Inteligencja Szukanie, gry i ludzkie myślenie

Martwić się czy nie?Martwić się czy nie?

Naiwnie: 1 na 1000 osób ma wirusa HIV, czyli Test ma dokładność 99.5%, więc na 1000 osób wykaże 5 z HIV, a ponieważ jest tylko 1 ma wirusa to dokładność ~20%. Dokładniej: dwie klasy H+, H-, dwie obserwacje T+, T-Interesuje nas P(HIV+|T+): P(HIV+)=0.001 a P(HIV)=0.999 oraz P(T+|HIV+)=0.995

P(HIV+|T+) P(T+) = P(HIV+,T+) = P(T+|HIV+) P(HIV+)P(HIV+|T+) P(T+) = 0.995 * 0.001P(T+)=P(T+|HIV+)+P(T+|HIV-)P(HIV+|T+)=0.995, Prawdopodobieństwo, że osoba ma HIV

Page 28: Sztuczna Inteligencja Szukanie, gry i ludzkie myślenie

Paradoks Monty Hall Paradoks Monty Hall Monty Hall Paradox, czyli przykład złudzenia kognitywnego.Stosowany np. w teleturnieju „idź na całość”.

Reguły zabawy: Mamy 3 kubki i złota monetę. Wychodzisz z pokoju, ja pod jednym z kubków ukrywam monetę. Wracasz i wybierasz jeden z kubków. Ja, wiedząc, pod którym jest moneta, odkrywam jeden z pustych kubków.

Masz teraz szansę zmienić swoją decyzję i pozostać przy już wybranym kubku lub wybrać pozostały.

Czy najlepszą strategią jest: 1. zawsze trzymanie się pierwotnego wyboru, 2. zawsze zmiana, 3. czy przypadkowy wybór?

Zajrzyj tu by zagrać samemu.

Page 29: Sztuczna Inteligencja Szukanie, gry i ludzkie myślenie

Swobodny wybórSwobodny wybórEksperymenty psychologiczne: Wybieramy cukierki różnych kolorów, wydaje się, że kolory R, G, B wybierane są równie często, zakładamy równe preferencje.

Dajemy do wyboru R i G, wybierane jest np. RDajemy do wyboru G i B, wybierane jest zwykle B.

Wnioski psychologów: mamy tu dysonans poznawczy, wybieramy B bo jak się raz decydujemy że nie chcemy G to później też nie wybieramy G.Czy naprawdę? Dopiero w 2008 roku zauważono, że:Jeśli początkowo były słabe preferencje R > G to są 3 możliwości:

R>G>B, R>B>G, lub B>R>G, czyli 2/3 szans na wybór B zamiast G.

Być może wszystkie podobne psychologiczne eksperymenty były źle przeanalizowane? Inverse base rates i inne?

Page 30: Sztuczna Inteligencja Szukanie, gry i ludzkie myślenie

Gry komputeroweGry komputerowe

Inny rodzaj testu Turinga: czy walczę z człowiekiem czy z programem? Botprize: sterowane są postaci z Unreal Tournament 2004.

http://botprize.org/

Po 5 latach od rozpoczęcia dwie drużyny w 2012 roku; dwie drużyny (3 osoby z Univ. of Texas at Austin i  Mihai Polceanu, rumunski student z Brest, Francja) przekonały sędziów, że ich bot jest człowiekiem.

Page 31: Sztuczna Inteligencja Szukanie, gry i ludzkie myślenie

WnioskiWnioski

Myślenie jest rzeczą trudną ... prościej jest używać schematów.

Tylko w kontekście naturalnych sytuacji myślenie przychodzi nam łatwo.

Page 32: Sztuczna Inteligencja Szukanie, gry i ludzkie myślenie

Przykładowe pytaniaPrzykładowe pytania• Jak działa Teoretyk Logiki?• Jakie były cele GPS? Czego nas nauczył GPS? • Jaka jest kolejność ocen węzłów grafu w strategii minimaksu? • Podać przykładowe funkcje oceny dla szachów.• Do czego służy technika alfa-beta?• Co umożliwia sprawne działanie w grach pomimo niewielkiej

pojemności pamięci roboczej? • Jaka jest pojemność pamięci roboczej człowieka i jakie inspiracje

dla AI z tego wynikają? • Jaką strategię stosują ludzie w grze w szachy? • Wszyscy A to B. Żaden C nie jest A. Jaki stąd wniosek? • Oszacuj jaka jest szansa choroby mając częstość jej występowania

i dokładność testu, który wypadł pozytywnie. • Oszacuj liczbę operacji wykonywanych przez mózg Kasparowa i

wytłumacz, dlaczego przegrał z systemem Deep Blue. • Narysować zależność stopnia kompetencji programu od szybkości

szukania i wielkości jego bazy wiedzy.