Programmierwettbewerb: 4-Gewinnt Engine



  • Hallo, beim Lesen des Schach-Threads ist mir gerade die Idee gekommen man koennte doch mal so eine Art Wettbewerb machen indem wir Engines gegeneinander antreten lassen.
    Ein kleines Konsolenframework dafuer ist schnell gebastelt, dann muss jeder eben eine Player-Klasse erstellen.

    Falls Intresse besteht bitte melden, ich versuchs grade zum Spass da ich noch nie sowas gemacht habe.



  • Soweit ich weiß, gibts für 4 gewinnt (mit Standardbrettgröße) eine Gewinnstrategie für den der anfängt, die man dann einfach mit Hilfe eines Eröffnungsbuches nachspielen kann.
    Somit ist ein 4-Gewinnt KI Vergleich ziemlich witzlos :>

    edit: siehe auch http://en.wikipedia.org/wiki/Connect_Four



  • Dann nehmen wir eben Mühle oder Dame.



  • ... oder Schach?!



  • life schrieb:

    Soweit ich weiß, gibts für 4 gewinnt (mit Standardbrettgröße) eine Gewinnstrategie für den der anfängt, die man dann einfach mit Hilfe eines Eröffnungsbuches nachspielen kann.
    Somit ist ein 4-Gewinnt KI Vergleich ziemlich witzlos :>

    edit: siehe auch http://en.wikipedia.org/wiki/Connect_Four

    Wow das hab ich nicht gewusst, gleich mal lesen 😃

    Erhard Henkes schrieb:

    Dann nehmen wir eben Mühle oder Dame.

    Finde ich gut, das sollte ueberschaubar bleiben.

    Erhard Henkes schrieb:

    ... oder Schach?!

    Wir wollen es doch nicht uebertreiben ... oder?



  • Finde ich gut, das sollte ueberschaubar bleiben.

    Wenn Du ein Framework in C++ / Konsole erzeugst mit einer beispielhaften (kann völlig "blöd" sein) Player-Klasse (oder besser "Engine"-Klasse), damit man weiß, welche Methoden vorhanden sein müssen, könnte es losgehen. :xmas1:



  • für 4-gewinnt haben wir auf dem forentreff eine engine gebastelt - evtl hat volkard die noch



  • Erfindet doch ein Spiel mit ganz eigenen Regeln. Was bekanntes gibts doch schon überall (zum downloaden). Ein Mini Strategiespiel, in dem Bots gegeneinander kämpfen, resourcen/energie/Munition... sammeln müssen, oder sich vermehren können.



  • MalWasNeues schrieb:

    Erfindet doch ein Spiel mit ganz eigenen Regeln. Was bekanntes gibts doch schon überall (zum downloaden). Ein Mini Strategiespiel, in dem Bots gegeneinander kämpfen, resourcen/energie/Munition... sammeln müssen, oder sich vermehren können.

    Nunja im Grunde ist es ja nur zum Spass! Wer auf etwas fertiges zureuckgreift kann das gerne machen, nur sollte er dann wenigstens so ehrlich sein die Quelle mit anzugeben!
    Finde Muehle eigentlich ganz lustig, laesst sich auch einfach bauen. Weiss aber nicht wann ich da dazu komme. Wenn jemand Lust hat kann er es ja machen.



  • Wie wärs mit Realtimebattle?



  • Ich finde die Idee mit nem eigenen Spiel mit eigenen Regeln auch nicht so schlecht. Denn sich auf Ehrlichkeit zu verlassen... ich weiss nicht.



  • Das Problem bei sowas ist immer, daß man das Spiel selbst nicht kennt. Und dann kommt man auch nicht auf einfache Heuristiken, die für den Anfang schonmal einiges bringen.

    Auf jeden Fall sollte man drauf achten kein Spiel auszuwählen, bei dem zwei Parteien antreten, die sehr unterschiedlich agieren und auch andere Ziele verfolgen. Sonst hat man nämlich gleich doppelte Arbeit, darunter leidet üblicherweise die Zahl der Teilnehmer erheblich.



  • Hi,

    oder ihr macht eins fuer Stratego:
    http://de.wikipedia.org/wiki/Stratego

    Ist zwar kein 'offenes' Spiel, also wirds ueber Wahrscheinlichkeiten funktionieren. Aber ist bestimmt auch ganz lustig :xmas1: :xmas2:



  • Naja, Stratego ist schon ein ziemlicher Hammer - soll heissen sehr kompliziert.



  • Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum Rund um die Programmierung verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.



  • Backgammon wäre vielleicht auch interessant. Gibts zwar auch schon KI für, aber es ist sicher nicht so ausgelutscht wie 4-Gewinnt.



  • Hi,
    naja man kann es ganz einfach machen:
    ==> Zufaellig mit einer Figur (ausser Fahne oder Bombe) nach vorne ziehen und angreifen.
    Oder eben kompliziert:
    ==> Sich die Positionen der anderen Figuren merken, wenn man sie einmal gesehen hat. Abschaetzen wo die andere Fahne stehen koennte, bzw. Bomben. Dann halt die Minoere entsprechend zu den Bomben bringen (zum entschaerfen).

    Gerade weil es eben nicht so einfach ala 'Ich waehle den besten Zug und mache den dann' zu machen ist koennte es doch interessant werden. Dann erkennt man waehrend des Spiels (KI gegen KI) dann wirklich unterschiede.

    Die eine KI ist z.b. eher defensiv und vorsichtig, waehrend die andere aggressiv vorgeht ohne Ruecksicht auf Verluste.
    Vielleicht koennte man dann sogar eine lernende KI einbauen. Sie merkt sich vielleicht, wo die verschiedenen Gegner die Bomben platzieren und errechnet so dann eine Wahrscheinlichkeit wo in kommenden Partien Bomben stehen koennten.

    Man sieht im Vergleich zum Dame oder sogar Schach, bietet so ein Spiel viel mehr Moeglichkeiten bzw. Freiheiten 😃



  • ich hatte eigentlich zur WM geplannt (bis mir was sehr bloedes dazwischen kam) so einen KI-contest fuer ein fussballspiel zu machen. (kennt vielleicht jemand?)

    die regeln sind sehr einfach, zum spielen benoetigt man ein kariertes blatt papier und nen stifft. dann zeichnet man ein 8*20 kaestchen rechteck auf, an beiden kurzen seiten in der mitte kommt ein 2*1 tor dran

    --------------------
     |
     |
    |
    |
     |
     |
     |----------...
    

    das spiel faengt in der mitte an (anstoss), ein spieler kann einen strich zeichnen, entweder einer linie entlang, oder diagonal, das macht man abwechselnd. trifft nun ein spieler eine wand (bande) oder an einem knotenpunkt auf einen vorher gezeichneten strich (pass) so darf er einen weiteren strich machen, bis er eben auf keinen strich trifft.

    ziel ist es natuerlich das tor zu treffen.

    ich weiss nicht wie deterministisch das ganze ist, zwischen zwei menschen ist es auf jedenfall sehr spassig. Mit einer KI ist das ganze aufgrund des simplen zugsystems und doch tiefer komplexitaet eventuell ein interresantes spiel 🙂

    rapso->greets();





  • Spieltipp schrieb:

    http://matheplanet.com/matheplanet/nuke/html/article.php?sid=1030&mode=nested&order=0

    Das haben wir im ersten Semester immer in der Progra-Vorlesung gespielt. Macht echt Spaß!


Log in to reply