Representatie & Zoeken College 4: Zoeken met heuristieken 2-speler bomen mini-max zoeken a-b pruning Leeswijzer: Hoofdstuk 4.4 AI4 1 Verschillende typen bomen (1) 5 4 Single player or-bomen 3 2 c3 1 e1 b4 a4 a2 a1 AI4 c4 b5 c1 a b c d e e5 d4 d3 e2 2 Verschillende typen bomen (2) Single player and/or-bomen = AND zin onderwerp naam johan actie anoniem lidw. woord wodan de een man hond AI4 werkw. speelt werkw. houdt bijt van voorwerp johan wodan 3 Verschillende typen bomen (3) Multi-player bomen wit zwart wit zwart AI4 4 Heuristiek voor 2-speler bomen • Aanname: tegenstander zelfde kennis als ik • MINiMAX-algorithme – 2 spelers, MIN en MAX – heuristiek h: hoog = goed voor MAX laag = goed voor MIN • Simpele methode: genereer hele zoekboom bereken h(n) voor alle bladeren herhaal vanaf bladeren tot wortel: Als ouder = MIN dan h(ouder)=min (h(kinderen)) Als ouder = MAX dan h(ouder)=max (h(kinderen)) AI4 5 Vb. van MINiMAX op totale zoekboom 1 1 0 1 1 0 1 0 1 0 AI4 MIN 0 1 MIN 0 1 MAX MAX MIN MAX 6 Verbetering van MINiMAX (1) Doorzoek boom slechts tot cut-off depth n Gevaar: horizon-effect 3 3 3 2 AI4 0 9 35 MAX 0 9 7 0 MIN 2 7 2 4 2 MAX 6 15 6 MIN 7 Verbetering van MINiMAX (1) Doorzoek niet de hele boom tot diepte n 3 3 3 2 0 5 35 AI4 MAX 0 2 0 0 MAX 2 2 MIN 1 MIN 8 Algorithme: a-b-pruning • a (bij MAX knopen) = ondergrens voor MAX = ondergrens voor h (a kan alleen groeien) • b (bij MIN knopen) = bovengrens voor MIN Algorithme Onderzoek één tak tot cut-off diepte Bereken h van alle broers Als MIN: h(ouder) = maximimum van broers b-grens(groutouder)=h(ouder) Bekijk neefjes (= kinderen van ooms) Stop met oom+kinderen zodra h(n) b-grens(grootouder) AI4 -: omgekeerd bij MAX knopen 9 Analyse van a-b-pruning • Beste gedrag als kinderen van MAX knopen met hoogste h eerst gegenereerd worden • Ditto voor MIN knopen • Bij optimale ordening: – b daalt tot b (schaak: 35 6) • Bij willekeurige ordening: – b daalt tot b/log b (schaak: 35 22) • In praktijk: – b daalt tot b3/4 (schaak: 35 14) AI4 10 Geschiedenis & state-of-the-art (schaken) • Herbert Simon (1957): voorspelling van machine-wereldkampioen in 10 jaar... • Belle (1982), speciale hardware, meester nivo • HITECH (1985), grootmeesternivo, 106 posities/zet • Deep Thought, 0.51012 posities/zet • Deep Blue, 1024 parallele computers, 100-200 1012 posities/zet, kijkt 14 zetten vooruit AI4 11 Geschiedenis & state-of-the-art (schaken) • Nu: – snelschaak (5-25 min): machine verslaat Kasparov – toernooischaak: • machine bij top 100 (10?) • machine verslaat Kasparov incidenteel AI4 12 Mens versus Machine • Schaken: January 18, 2005. We have achieved a milestone in our quest to solve the game of top checkers. 100 We have a tentative proof that the White Doctor opening (10-14 22-18 12-16) is a draw. This means that our program when playing Black (the weak side) will never lose. When playing White, our program will never lose and may win (if the opponent makes a mistake). • Dammen: TRUUS, Stef Keetman, top 30 • Checkers: • Othello: CHINOOK, Schaeffer, top 2 (1994) > WK • Go: beginner nivo, b>360(!!) $ 2.000.000 prijs AI4 13