Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi KI für ein Dame Projekt (https://www.delphipraxis.net/131218-ki-fuer-ein-dame-projekt.html)

Zeb22 20. Mär 2009 21:06


KI für ein Dame Projekt
 
Ja nabend erstmal. Nun sitze ich hier und frage mich, Mensch wie programmiere ich bloß eine KI für mein Dame Projekt. Leute gibt mir Anreize, ich stehe auf dem schlauch..

Vielleicht mit if Anweisungen, wenn das, dann das.

alzaimar 20. Mär 2009 21:29

Re: KI für ein Dame Projekt
 
Hier mal ein paar Ansätze: "Backtracking", "Alpha-Beta Pruning", "Minimax-Algorithmus", "NegaMax-Algorithmus".

Wenn du da durch bist, dann spielt das Programm schon recht brauchbar.
Im Delphi-Forum ist ein netter Thread zum Thema "Spiele-KI". Hier wurde das sehr simple "Bauernspiel" behandelt.

Dunkel 20. Mär 2009 21:43

Re: KI für ein Dame Projekt
 
Hallo!

Dame wird ja auf einem 8x8 Felder großem Brett gespielt, von denen auch "nur" die Hälfte der Felder (ergo 32) benutzt werden. Mit if-Abfragen ist sowas durchaus machbar, aber eine heiden Tipparbeit, wenn man wirklich jede denkbare und mögliche Situation auf dem Spielfeld so "analysieren" und entsprechend am Besten darauf reagieren möchte. Und mit KI hat das in dem Sinne auch nichts zu tun, da jeder Zug des Computers durch die if-Abfragen vorgegeben ist.

Ein neuronales Netzt würde sich für sowas durchaus anbieten. Der Vorteil wäre, dass der Computergegner mit der Zeit, nur weil Du mit ihm spielst, dazulernt und immer besser wird. Der Nachteil ist, dass ein neuronales Netz keine triviale Sache ist. Hier im Forum findest Du ein paar sehr interessante Threads zu diesem Thema. Google, Wikipedia und Co. liefern auch einigen nützlichen Input.

KI ist nicht ohne Grund ein Forschungsgebiet der Informationstechnik. Es ist schon eine Herausforderung einem Computer das Tic-Tac-Toe-Spielen (via KI) beizubringen. Dame, Schach oder gar noch komplexere Spiele können dann schon regelrecht ausarten.

alzaimar 21. Mär 2009 14:53

Re: KI für ein Dame Projekt
 
Ein neuronales Netz wird nicht als Universallösung hinhalten können. Es eignet sich eigentlich nur als Mustererkennung. Da ist es allerdings gut.

Hier werden eher Suchbäume aufgespannt und analysiert. Beim Tic-Tac-Toe kann man den Suchbaum komplett ausrechnen. Man weiss also *sofort*, wer gewinnt und ob der Computer gewinnen könnte.

Nikolas 22. Mär 2009 12:05

Re: KI für ein Dame Projekt
 
[quote]

@ Dunkel: Da muss ich dir stark wiedersprechen. Es ist absolut unmöglich, Dame mit if's zu lösen.
"Durchaus machbar" klingt nach ein paar Tagen arbeit. Allein die Endspieldatenbank von Dame
(die man sich kaufen kann) hat (je nach Anzahl der restlichen Steine auf dem Feld) noch ein paar
Gigabyte bis TerraByte. Da will ich sehen, wie du die tippst. (besonders, woher du besten
Zug für jede der Stellungen kennen willst.

Ein NN ist NICHT die Antwort auf alle Fragen, die "KI" beinhalten. Wie würdest du denn ein
solches Netz aufbauen? Bei den (fast) unendlich vielen Zugmöglichkeiten bräuchtest du
a) SEHR viele Ebenen und
b) NOCH SEHR VIEL MEHR Testeingaben.

Einfach ein paar mal mit dem Netz (per Hand) spielen und plötzlich besiegt dich das Netz,
ist auf keinen Fall drin.

@Zeb: Wenn du wirklich den Ansatz mit if's verfolgen wolltest, würde ich dir empfehlen, ein paar
Monate bis Jahre passende Literatur zu studieren, oder gleich Informatik oder Mathe zu studieren
und dich dann noch mal daran zu versuchen. Ich glaube, du unterschätzt das Problem um ein paar
(so 3-4) Größenordnungen.

@ Alzeimar:
Auch in der Mustererkennung ist ein NN eher ein historisches Werkzeug. SVM sind hier eher der aktuelle Stand, da sie deutlich weniger Beispieldaten brauchen, damit schneller sind und auch keine Ebenen konzipiert werden müssen.

alzaimar 22. Mär 2009 19:39

Re: KI für ein Dame Projekt
 
Zitat:

Zitat von Nikolas
Auch in der Mustererkennung ist ein NN eher ein historisches Werkzeug. SVM sind hier eher der aktuelle Stand, ..

Danke für die Korrektur, ich bin eben nicht auf dem neuesten Stand.


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:57 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz