WPC13



  • Ponto schrieb:

    Ist spannender, aber man kann ja nicht 24 Stunden am Tag an dem Problem hängen 🙂

    ja, man muß auch ebay machen, chatten und spielen, damit es nicht einseitig wird.



  • mein code hat nur noch eine schleife drin.



  • Klasse, und ich hab gut 900unübersichtliche zeilen, 20 funktionen und keine lust mehr, was drann zu ändern... 🙂



  • -Foo- schrieb:

    Klasse, und ich hab gut 900unübersichtliche zeilen, 20 funktionen und keine lust mehr, was drann zu ändern... 🙂

    316 zeilen
    23 funktionen, davon 6 mit mehr als einem statement.
    aber das ändert sich noch. bin froh, daß es nach dem redesign noch läuft.
    aber noch habe ich nix, was mich über 341 bringt. morgend wird sich auszahlen, daß ich meinen neuen code ändern kann.



  • volkard schrieb:

    mein code hat nur noch eine schleife drin.

    Macht das das Ergebnis besser?



  • Hab 709+105 zeilen und 29 schleifen.



  • Ponto schrieb:

    volkard schrieb:

    mein code hat nur noch eine schleife drin.

    Macht das das Ergebnis besser?

    nee, überhaupt nicht.
    ich hoffe nur, daß ich dadurch die möglichkeit hätte, ihn besser zu machen, wenn mir ein toller trick einfiele.

    aber ist wohl nicht so. 341 bleibt 341. ok, vielleicht habe ich nachkommastellen verbessert. ich werfe jetzt Pontos messprogramm an und schau morgen früh nach.



  • Ponto schrieb:

    Da mein Algorithmus keine Harakirientscheidungen, a la rand() macht, kann ich den Erwartungswert genau ausrechnen. Dieser liegt bei 341.362786787123

    auch mit dem korrigierten messprog?
    ich bin jetzt leicht über 342.



  • Könnte dann die Aufgabenstellung aktualisiert werden, oder bleibt sie so wie sie ist ???

    Devil



  • devil81 schrieb:

    Könnte dann die Aufgabenstellung aktualisiert werden, oder bleibt sie so wie sie ist ???

    Devil

    Was sollte aktualisiert werden?



  • Ponto schrieb:

    devil81 schrieb:

    Könnte dann die Aufgabenstellung aktualisiert werden, oder bleibt sie so wie sie ist ???

    Devil

    Was sollte aktualisiert werden?

    Dinge die hier im Thread stehen, sind nicht mit dem wpc Forum deckungsgleich.
    So z.b. die Form wie was jetzt eingesandt werden soll etc.



  • devil81 schrieb:

    Ponto schrieb:

    Was sollte aktualisiert werden?

    Dinge die hier im Thread stehen, sind nicht mit dem wpc Forum deckungsgleich.
    So z.b. die Form wie was jetzt eingesandt werden soll etc.

    Ich denke mal, das wpc Forum ist die Referenz



  • Jo, kann ich machen 🙂

    aber ist das wirklich sooo wichtig?



  • Jester schrieb:

    Jo, kann ich machen 🙂

    aber ist das wirklich sooo wichtig?

    wollte nur damit wissen, welches nun die Anforderungen sind,
    und ob sich was dran geändert hat.

    Devil



  • Da die Zeit abgelaufen ist, hier mal der Bot, den ich geschrieben habe:

    http://www.pontohonk.de/wpc13/PontoAgent.tgz

    Die Arbeitsweise ist einfach:

    1. Wenn ein neues Feld betreten wurde, sammle alle verfügbaren Informationen zusammen

    2. Analysiere die Situation
    2a) Falls es ein definitiv freies Feld gibt, gehe dort hin.
    2b) Falls es kein freies Feld gibt, aber ein Feld, das frei wird, wenn man das Monster tötet. gehe zum ersten solchen Feld.
    2c) Falls keiner der beiden oberen Fälle zutrifft, checke ob das Feld eine der gespeicherten Formen hat, gehe dann das Risiko ein auf eine Falle zu treten. Die gespeicherten Fälle sind alle Situationen, in denen es auf lange Sicht besser ist ein Risiko einzugehen.
    2d) Falls nichts zutrifft, gebe auf.

    3. Wird ein Weg gesucht, so läuft ein einfacher Dijkstra, der die kürzeste Zugfolge sucht, bis ein Prädikat erfüllt ist. Für die Fälle 2a) 2b) und 2c) gibt es jeweils ein eigenes Prädikat.

    4. Führe die Zugfolge aus, bis das Zielfeld erreicht wurde.

    Die wesentlichen Methoden sind:

    update_info() für 1.
    analyse() für 2.
    search_path() für 3.
    move() für 4.

    Die riskanten Fälle sind in der riskmap kodiert. Dabei sind die Felder wie folgt benannt:

    DHLP
    CGKO
    BFJN
    AEIM

    Nach jedem Feld steht die Information, wie oft für das Feld eine Falle in einem benachbarten Feld gemeldet wurde. Eine G2 bedeutet also, auf zwei Nachbarfeldern von G wurde ein Luftzug gespürt. Zu jeder Situation gibt es die Information, auf welches Feld man treten kann.

    Insgesamt hat der Bot einen Erwartungswert von 348.791945988877 Punkten pro Runde.



  • Ponto schrieb:

    2c) Falls keiner der beiden oberen Fälle zutrifft, checke ob das Feld eine der gespeicherten Formen hat, gehe dann das Risiko ein auf eine Falle zu treten. Die gespeicherten Fälle sind alle Situationen, in denen es auf lange Sicht besser ist ein Risiko einzugehen.
    Insgesamt hat der Bot einen Erwartungswert von 348.791945988877 Punkten pro Runde.

    damit haste mich um längen geschlagen.
    342,280



  • volkard schrieb:

    Ponto schrieb:

    2c) Falls keiner der beiden oberen Fälle zutrifft, checke ob das Feld eine der gespeicherten Formen hat, gehe dann das Risiko ein auf eine Falle zu treten. Die gespeicherten Fälle sind alle Situationen, in denen es auf lange Sicht besser ist ein Risiko einzugehen.
    Insgesamt hat der Bot einen Erwartungswert von 348.791945988877 Punkten pro Runde.

    damit haste mich um längen geschlagen.
    342,280

    Je nachdem, welche Instanzen Jester testet, kann das auch in die Hose gehen. Hängt halt von der Anzahl und der Verteilung ab.



  • Ponto schrieb:

    Je nachdem, welche Instanzen Jester testet, kann das auch in die Hose gehen. Hängt halt von der Anzahl und der Verteilung ab.

    ich hoffe, es gibt keine einsendungen, die rand() benutzen. dann kann der volltest genommen werden.
    oder, falls nicht, hoffe ich, die, die rand() benutzen, sind deutlich schlechter, und erlauben, daß die nicht-rand()-benutzer in einer anderen liga sind und getrennt einen volltest machen können.
    mal sehen, wie es wird.

    edit: aber dein code wird meinen auch bei sagen wir mal ab 100000 tests sicher plattmachen. der unterschied ist einfach zu groß.



  • Wann kann man die Auswertung erwarten?



  • hallo

    ich denke die Ergebnisse gibt es heute abend.

    MfG Jester


Anmelden zum Antworten