20.03.2014 Aufrufe

Einführung in die Methoden der Künstlichen Intelligenz - Goethe ...

Einführung in die Methoden der Künstlichen Intelligenz - Goethe ...

Einführung in die Methoden der Künstlichen Intelligenz - Goethe ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

2.4 Suche <strong>in</strong> Spielbäumen<br />

2.4 Suche <strong>in</strong> Spielbäumen<br />

Ziel <strong>die</strong>ses Kapitels ist <strong>die</strong> Untersuchung von algorithmischen <strong>Methoden</strong> zum <strong>in</strong>telligenten<br />

Beherrschen von strategischen Zweipersonenspielen, wie z.B. Schach, Dame, Mühle, Go,<br />

Tictactoe, bei dem <strong>der</strong> Zufall ke<strong>in</strong>e Rolle spielt (siehe auch 2 Artikel aus (Wegener, 1996)).<br />

Spiele mit mehr als zwei Personen s<strong>in</strong>d auch <strong>in</strong>teressant, aber erfor<strong>der</strong>n an<strong>der</strong>e <strong>Methoden</strong><br />

und werden hier nicht behandelt.<br />

Zum Schachspiel existierten bereits vor Benutzung von Computern Schachtheorien,<br />

Untersuchungen zu Gew<strong>in</strong>nstrategien <strong>in</strong> bestimmten Spielsituationen (Eröffnungen, Endspiel,<br />

usw) und zum Bewerten von Spielsituationen. Mittlerweile gibt es zahlreiche Varianten<br />

von recht passabel spielenden Schachprogrammen, und auch e<strong>in</strong>ige sehr spielstarke<br />

Programme.<br />

Es gibt zwei verschiedene Ansätze, e<strong>in</strong> Programm zum Schachspielen zu konzipieren:<br />

1. Man baut auf den bekannten Schachtheorien und Begriffen auf, wie Verteidigung,<br />

Angriff, Bedrohung, Decken, Mittelfeld, ..., und versucht <strong>die</strong> menschliche Methode<br />

zu programmieren.<br />

2. Man versucht mit re<strong>in</strong>er Absuche aller Möglichkeiten unter Ausnutzung <strong>der</strong> Geschw<strong>in</strong>digkeit<br />

e<strong>in</strong>es Computers, e<strong>in</strong>en guten nächsten Zug zu f<strong>in</strong>den.<br />

Betrachtet man heutige, erfolgreiche Schachprogramme, dann ist <strong>die</strong> wesentliche Methode<br />

das Absuchen <strong>der</strong> Varianten, wobei auf e<strong>in</strong>er (e<strong>in</strong>fachen) statischen Bewertung von<br />

Spielsituationen aufgebaut wird. Ergänzend dazu wird e<strong>in</strong>e Eröffnungsbibliothek verwendet<br />

und Endspielvarianten werden getrennt programmiert. Die Programmierung <strong>der</strong><br />

meisten Schachtheorien scheitert daran, dass sie nicht auf Computer übertragbar s<strong>in</strong>d, da<br />

<strong>die</strong> Begriffe unscharf def<strong>in</strong>iert s<strong>in</strong>d.<br />

Wir betrachten zunächst sogenannte Spielbäume, <strong>die</strong> e<strong>in</strong> Zweipersonenspiel repräsentieren:<br />

Def<strong>in</strong>ition 2.4.1 (Spielbaum). Es gibt zwei Spieler, <strong>die</strong> gegene<strong>in</strong>an<strong>der</strong> spielen. Diese werden aus<br />

bald ersichtlichen Gründen Maximierer und M<strong>in</strong>imierer genannt. Wir nehmen an, es gibt e<strong>in</strong>e<br />

Darstellung e<strong>in</strong>er Spielsituation (z.B. Schachbrett mit Aufstellung <strong>der</strong> Figuren), und <strong>die</strong> Angabe<br />

welcher <strong>der</strong> beiden Spieler am Zug ist. Der Spielbaum dazu ist wiefolgt def<strong>in</strong>iert:<br />

• Die Wurzel ist mit <strong>der</strong> aktuellen Spielsituation markiert.<br />

• Für jeden Knoten s<strong>in</strong>d dess K<strong>in</strong><strong>der</strong> genau <strong>die</strong> Spielsituationen <strong>die</strong> durch den nächsten Zug<br />

des aktuellen Spielers möglich s<strong>in</strong>d. Pro Ebene wechselt <strong>der</strong> Spieler<br />

• Blätter s<strong>in</strong>d Knoten, <strong>die</strong> ke<strong>in</strong>e Nachfolger mehr haben, d.h. Endsituation des Spiels<br />

• Blätter werden mit e<strong>in</strong>em Gew<strong>in</strong>nwert bewertet. Normalerweise ist <strong>die</strong> e<strong>in</strong>e ganze Zahl.<br />

Bei Schach z.B.: 1, wenn <strong>der</strong> Maximierer gewonnen hat, -1, wenn <strong>der</strong> M<strong>in</strong>imierer gewonnen<br />

hat, 0 bei Remis. Bei an<strong>der</strong>en Spielen kann <strong>die</strong>s auch e<strong>in</strong>e Punktzahl o.ä. se<strong>in</strong>.<br />

M. Schmidt-Schauß & D. Sabel, Skript KI, WS 2012/13 53 Stand: 19. Oktober 2012

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!