1 / 8

FlexChess

FlexChess. HTWG Konstanz - Rolf Englputzeder (TI7) Feb 2008. Überblick. Flexibilität. Quellcode. Künstliche Intelligenz. Todo. C++ Projekt mit OpenGL nutzung Texturierte Modelle mit Blender modelliert Variables Regelwerk (XML) ‏ Veröffentlicht unter flexchess.googlecode.com.

kedma
Download Presentation

FlexChess

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. FlexChess HTWG Konstanz - Rolf Englputzeder (TI7) Feb 2008

  2. Überblick Flexibilität Quellcode Künstliche Intelligenz Todo • C++ Projekt mit OpenGL nutzung • Texturierte Modelle mit Blender modelliert • Variables Regelwerk (XML)‏ • Veröffentlicht unter flexchess.googlecode.com HTWG Konstanz - Rolf Englputzeder (TI7) Feb 2008

  3. Überblick Flexibilität Quellcode Künstliche Intelligenz Todo Es gibt zwei Möglichkeiten für Regel Änderungen: erfordert nur ein Neustart des Programms • XML Dateien Editieren • Startaufstellung (formation.xml)‏ • Eigenschaften der Figuren (figures.xml)‏ • Spielbrett Eigenschaften (board.xml)‏ • Eigenen „Controller“ implementieren • von AbstractController Interface ableiten • eigene Regeln implementieren ... das Programm muss neu kompiliert werden HTWG Konstanz - Rolf Englputzeder (TI7) Feb 2008

  4. Überblick Flexibilität Quellcode Künstliche Intelligenz Todo UML Klassendiagramm HTWG Konstanz - Rolf Englputzeder (TI7) Feb 2008

  5. Überblick Flexibilität Quellcode Künstliche Intelligenz Todo Implementiere Algorithmen: • AI_0 ist ein Zufallgenerator (debugging)‏ • AI_1 arbeitet nach dem Alpha-Beta-Algorithmus (Minimax Prinzip)‏ • schaut zwei Halbzüge in die Zukunft • maximiert die eigene Punktzahl • minimiert die gegnerische Punktzahl • Punktzahl ist setzt sich aus Materialwert der Figuren zusammen • bei mehreren gleichen Ergebnissen entscheidet der Zufall HTWG Konstanz - Rolf Englputzeder (TI7) Feb 2008

  6. Überblick Flexibilität Quellcode Künstliche Intelligenz Todo mein Materialwert – gegnerischer Materialwert Alpha-Beta-Verfahren: +5 . . . -2 -3 +6 . . . +3 +4 -2 +7 +8 +6 HTWG Konstanz - Rolf Englputzeder (TI7) Feb 2008

  7. Überblick Flexibilität Quellcode Künstliche Intelligenz Todo • die allgemeine KI weiter entwickeln • nicht nur Materialwert beachten sondern auch den Stellungswert der Figuren • auf eigene „Beweglichkeit“ achten • auf „Angriffsmöglichkeiten“ achten • das Alpha-Beta-Verfahren Rekursiv (beliebige Tiefe einstellbar) implementieren • spezielle KI für die Standard Schach-Regeln implementieren • Stellung des eigenen Königs schützen • den gegnerischen König um jeden Preis Schachmatt setzen • Rochade einplanen, Fähigkeiten des Bauers einplanen • kleine Datenbank für die ersten Start-Züge einbauen • das Spiel erweitern für bis zu vier Spieler auf einem Spielbrett! • „schwebende“ Figuren implementieren („hover“ Eigenschaft in figures.xml)‏ HTWG Konstanz - Rolf Englputzeder (TI7) Feb 2008

  8. flexchess.googlecode.com HTWG Konstanz - Rolf Englputzeder (TI7) Feb 2008

More Related