Entwickler-Ecke

Freeware Projekte - Eimerkette - Bitte helft mir, brauche Tips für KI !


Thorsten-Bln - Do 13.12.07 00:28
Titel: Eimerkette - Bitte helft mir, brauche Tips für KI !
Hallo,
bin dabei einen Klassiker den ich noch aus 386er Zeiten in Erinnerung habe, nachzuschreiben.

Das spielt nennt sich Eimerkette, es gab aber auch mal eine Variante die nannte sich Octavian.

Es geht dabei darum, dass auf einem Spielfeld von Spieler und Computer abwechselnd jeweils ein Stein/Punkt gesetzt wird.

Zu beachten ist dabei, dass ein Feld/Eimer in der Mitte, welches 4 Nachbarfelder hat, bei 4 voll ist und bei 5 überläuft und seinen Inhalt gleichmäßig auf die Nachbarfelder verteilt. Ein Eckfeld, welches nur 2 Nachbarfelder hat. Ist folglicherweise bei 2 voll und läuft bei 3 über.

Wenn ein Feld überläuft und das Nachbarfeld gehört dem Gegner, dann gewinnt man dieses Feld und den dortigen Inhalt dazu.

Gewonnen hat derjenige, dem irgendwann das ganze Spielfeld gehört.


Leider ist der Computerspieler momentan noch recht "dämlich" und verliert so gut wie immer. Da er bisher seine Züge nur zufällig macht.

Ich habe jedoch momentan keinerlei Ideen, wie ich ihm eine KI beibringe, sodass er auch taktisch zieht.

Ihr könnt es Euch ja mal runterladen und ansehen. Evtl. hat von Euch einer ne Idee ?

Aber auch für sonstige Verbesserungsvorschläge bin ich offen.

Liebe Grüße
Thorsten


Jann1k - Do 13.12.07 17:13

eien möglichkeit wäre zB die KI jeden möglichen Zug durchspielen zu lassen und den zu nehmen, der am meisten Raumgewinn bringt


golgol - Do 13.12.07 17:25

Ich denke user profile iconJann1k hat dir da schon die wahrscheinlich praktikabelste Lösung genannt. Die Wahrscheinlich aufwändigste Lösung hab ich mal machen müssen. Es handelt sich dabei um sogenannte
künstliche neuronale Netze [http://de.wikipedia.org/wiki/K%C3%BCnstliches_neuronales_Netz] - aber ich denke das ist ein kleiner Overkill, da die Möglichen Züge imho relativ zeitnahe durchgespielt werden können.


Fiete - Do 13.12.07 19:09
Titel: Re: Eimerkette - Bitte helft mir , brauche Tips für KI !
Moin Thorsten,

schau doch mal unter "logisches Minenspiel" im open source bereich.
Ich kenne das Spiel unter dem Namen Sprengmeister.

Gruß
Fiete


Thorsten-Bln - Do 13.12.07 21:43

So...

habe jetzt eine KI implementiert.. Ich habe nun schon ein paar Mal gewonnen, aber auch verloren.

Genau so sollte es ja sein..


Hat noch jemand Verbesserungsvorschläge ?


Jann1k - Do 13.12.07 21:54

verbesserungsvorschläge kann man nur machen, wenn du auch sagst wie deine KI funktioniert.

Wenn du meinen Vorschlag umgesetzt hast, kannst du deine KI ja bei den 3-5 besten Zügen schauen lassen, wie viele Felder der Gegner gewinnen kann und dann aus der Differenz quasi den effektiven Raumgewinn berechnen


Thorsten-Bln - Do 13.12.07 22:03

Naja, ich hab ja den Quellcode zum Ausprobieren bereitgestellt, daher war das Verbesserungsvorschläge darauf bezogen.

Codeoptimierungen etc.


Wie die KI funktioniert ist eigentlich recht einfach. Er bewertet nun alle Felder, bevor er ein Feld auswählt auf das er setzt.

1. Es wird geschaut, wem das Feld gehört :
a) niemanden --> Bewertung +1
b) ihm selber --> Bewertung +2
c) dem Gegner --> Bewertung -100

2. Es wird geschaut, wie einfach der Eimer gefüllt werden kann :
a) Eckeimer --> Bewertung +3
b) Randeimer --> Bewertung +2
c) Mitte-Eimer --> Bewertung +1

3) Es wird geschaut wie die Nachbarfelder gefüllt sind
a) Je leerem Nachbarfeld --> Bewertung +1
b) Nachbarfeld gehört ihm selber --> Bewertung +2
c) Nachbarfeld gehört dem Gegner :
I. Gegner bekommt Nachbarfeld schneller voll --> Bewertung -3
II. Gegner bekommt Nachbarfeld langsamer voll --> Bewertung +3


laublau - Sa 25.05.19 14:59

Hi...

Bist Du an dem Projekt noch dran?
Ich würde mir wünschen, dass die KI auch noch berücksichtigt, wie schnell ein Feld zurück-erobert werden kann.. sprich: Befindet sich in unmittelbarer Nähe ein Feld, das der Gegner zum überlaufen bringen kann, was KI-Felder auch sofort wieder zum überlaufen bringt.. :)

Aber herzlichen Dank - das Spiel habe ich so vermisst.. :D


Sinspin - Sa 25.05.19 22:27

Zitat:
Verfasst: Do 13.12.07

Ich glaube, eher nicht. Das ist 11 Jahre und 5 Monate her.