Foren » 31. BwInf

Runde 2 - Aufgabe 3

    • 13 Beiträge
    30. Dezember 2012 19:24:46 CET

    Hallo (ich hoffe, das Thema existiert noch nicht),

     

    Ich habe endlich geschafft, ESU einigermaßen zum Laufen zu bringen (was sicherlich zu den schwersten Problemen in meiner gesamten Informatik-Laufbahn gehört ;) habe 2 Standard-KIs angelegt, kompiliert, Logik und Startzustand heruntergeladen und eingestellt, bei beiden KIs "nimmt teil" angewählt, auf "Simulation starten" geclickt, aber nichts passiert (außer dass im Debug-Fenster "Start Simulation with Standard_logik, Standard_startzustand" stand)!

     

    Noch 'ne Frage: Warum stehen eigentlich so viele Zustandsmanipulationsmethoden bereit?

     

    LG Felix

    • 13 Beiträge
    30. Dezember 2012 20:27:21 CET
    Noch 'ne Frage: Müssen KIs eigentlich immer aus einer Datei bestehen?

    PS: Ich glaube, eine Schritt-Für-Schritt-Anweisung wäre für den Anfang einfacher durchzugehen gewesen als ein Wiki...
    • 13 Beiträge
    30. Dezember 2012 20:53:58 CET
    Ach ja, wie lange sollte das Qualifizieren (jetzt auf di188.di.informatik.tu-darmstadt.de/ai/) eigentlich höchstens dauern?
    • 22 Beiträge
    31. Dezember 2012 14:49:52 CET
    Mich würde brennend interessieren, wie du deine KI lokal kompilieren konntest. Be mir bricht es immer mit einer Fehlermeldung ab.

    ---------------------------------
    Fehlermeldung:

    Der Befehl "javac" ist entweder falsch geschrieben oder konnte nicht gefunden werden. Der Befehl "jar" ist entweder falsch geschrieben oder konnte nicht gefunden werden
    • 13 Beiträge
    31. Dezember 2012 16:05:21 CET
    javac ist der Java-Compiler und ich gehe davon aus, dass ESU davon ausgeht, dass dieser installiert und auffindbar ist. Wenn alles installiert ist, könnte ich mir noch vorstellen, dass es an deinem nicht-so-unixoiden System liegt (falls du eins hast), wofür mir dann aber keine Lösung einfiele.
    Ich habe übrigens einfach auf "Kompilieren" gedrückt :)

    LG Felix
    • 22 Beiträge
    31. Dezember 2012 17:33:38 CET

    Dass er den Compiler nicht findet, wundert mich. Immerhin ist das JDK bereits installiert. Auch die javac.exe ist im Programmverzeichnis vorhanden.

     

    Edit: - gelöscht-

     

    Edit 2: Es wäre schön im Wiki eine funktionierende!!! Anleitung mit einer Liste der benötitgten Software zu haben.

     

    Edit 3: Wo liegt den der Ursprung des verwendeten Koordinatensystems? Oben links, oder unten links?


    Dieser Beitrag wurde am 31. Dezember 2012 23:33:35 CET von Simon - bearbeitet
    • 13 Beiträge
    1. Januar 2013 16:42:44 CET

    Bedeutet Edit 3 dass du es hinbekommen hast, eine Simulation zu starten oder fragst du nur so?

    Wenn ersteres, würde das mich wiederum brennend interessieren.

     

    LG Felix

     

    PS: Frohes neues Jahr!

     

    EDIT: Ich hatte nicht mitgekriegt, dass es eine neue ESU-Version gibt. Jetzt bin ich wahrscheinlich genauso weit wie du, d. h. es interessiert mich nicht mehr so brennend, ich kann die Frage aber nicht beantworten.


    Dieser Beitrag wurde am 1. Januar 2013 20:37:19 CET von felix bauckholt bearbeitet
    • 22 Beiträge
    1. Januar 2013 23:17:46 CET
    Nein, bei mir funktioniert es auch mit der neuen Version nicht : )

    Ich habe bisher immer auf dem Server gearbeitet... mit desaströsen Ergebnissen.
    Man bekommt kaum Feedback, sodass ein produktives Verbessern des Algorithmus' kaum möglich ist.

    Läuft es bei dir? Wenn ja, was hast du gemacht? : )
    Dieser Beitrag wurde am 1. Januar 2013 23:22:40 CET von Simon - bearbeitet
    • 4 Beiträge
    2. Januar 2013 20:19:06 CET
    Also bei mir funktioniert es jetzt. Was mich erst einmal verwirrt hat war, dass das Programm erst einmal überhaupt nicht reagiert. Das heißt in dem Fall aber nicht, dass es abgestürzt ist, sondern einfach nur, dass es rechnet.
    Zur nächsten Ansicht kommt man erst, wenn das komplette Spiel durchgerechnet ist.

    Aber mal eine ganz andere Frage: Wie finde ich überhaupt raus, welcher der Käfer meiner ist? Ich bekomme ja nur die Liste aller Käfer. Kann ich die ID, die in gehoert gespeichert ist irgendwo finden?
    • 22 Beiträge
    2. Januar 2013 20:48:17 CET

    Die id wird als erstes Parameter beim Aufruf der Funtkion übergeben: public void zug(int id, Spiel.Zustand zustand, Spiel.Zug zug)

    Nein, das Programm hängt bei mir nicht. Nur das kompilieren will nicht so recht klappen.

     

    Edit: Ich habe das Programm endlich zum laufen bekommen : ) Eine einzige popelige Umgebungsvariable war falsch gesetzt...


    Dieser Beitrag wurde am 3. Januar 2013 00:32:12 CET von Simon - bearbeitet
    • 4 Beiträge
    2. Januar 2013 20:49:55 CET
    Danke :) Das war dann wohl mal ein fall von hiding in plain sight haha

    Viel Glück mit deinem Compiler
    • 13 Beiträge
    3. Januar 2013 21:10:47 CET
    Ist das mit der ID eig jetzt so, dass man abfragt, mit wessen gehoert()-Wert sie übereinstimmt?

    Und wie ist das jetzt mit der Rechenzeit? Ist es OK wenn mein Programm am Anfang (Auf meinem Rechner) erstmal 6 Minuten durchrechnet?

    LG Felix
    • 4 Beiträge
    3. Januar 2013 21:14:08 CET
    Dein Programm kann auf deinem Rechner (im Endeffekt) gar nichts rechnen. Du musst es in Python oder Java schreiben und dann auf den Turnierserver hochladen.

    Probiere es einfach aus. Die Rechenzeit war bis jetzt für mich nie ein Problem gewesen. Das ist eher eine Absicherung dagegen, dass sich beide KIs in irgendeiner Ecke aufhängen und der Server tagelang rechnet ohne zu einem Ergebnis zu kommen.
    • 4 Beiträge
    3. Januar 2013 21:16:39 CET
    6 Minuten könnten aber auf jeden Fall kritisch werden.

    Ich weiß ja nicht was du vorhast, aber dafür, jeden einzelnen Weg, den es gibt nach dem Zufallsprinzip durchzurechnen und danach den besten zu nehmen, wird die Zeit bestimmt nicht ausreichen.

    Aber wie gesagt, ich würde mir da erstmal keinen großen Kopf drüber machen, lieber erstmal eine Version hochladen und später anpassen, falls es Probleme gibt.
    • 13 Beiträge
    4. Januar 2013 12:42:11 CET

    Wie Kritisch genau? Mein Programm muss nämlich vorm ersten Zug eine "Landkarte" des Bretts anfertigen und braucht dafür seine 64000000 Operationen, sonst geht nur ein random walk :(

    Wäre es sonst irgentwie möglich, den Berechnungsvorgang auf 2 Züge zu verteilen?

    EDIT: Naja jetzt hab ichs anders hingekriegt und zeit ist nicht mehr mein Problem.

     

    Wie ist das eigentlich mit Simons Frage "Wo liegt den der Ursprung des verwendeten Koordinatensystems? Oben links, oder unten links?"

     

    EDIT: Wenn ich übrigens auf "Qualifizieren" drücke, wird bei mir die Seite neu geladen, es kommt keine Fehlermeldung, es scheint aber nichts qualifiziert worden zu sein.

     

    LG Felix


    Dieser Beitrag wurde am 4. Januar 2013 20:54:42 CET von felix bauckholt bearbeitet
    • 22 Beiträge
    4. Januar 2013 20:39:22 CET

    Das anfertigen einer Karte sollte eigentlich kein Problem sein, solange du dabei keine unnötigen Rechenoperationen ausführst und die Struktur, in der du die Daten ablegst, nicht unnötig komplex ist.

     

    Bezüglich des Ursprungs wage ich zu behaupten, dass dieser oben links liegt. Also ein Hochlaufen dem verringern des Y-Wertes um eins entspricht.

     

    Edit: Du kannst Daten übrigens über verschiedene Züge hinweg speichern, in dem du, falls du auf Java setzt, einfach die gegebene KI-Klasse um deine Felder erweiterst. Damit sollte es kein Problem sein Brechnungen über beliebig viele Züge zu strecken.

     

    Edit2: Wenn du Qualifizieren gedrückt hast und dieses auch abgeschlossen ist (was manchmal etwas dauern kann...) sollte eine Rückmeldung unter dem Quelltext in der rechten Box stehen.


    Dieser Beitrag wurde am 4. Januar 2013 21:03:21 CET von Simon - bearbeitet
    • 13 Beiträge
    5. Januar 2013 10:35:38 CET

    Zu edit2:

    Wenn es länger dauert, steht bei "qualifiziert" doch so ein "Wartesymbol" statt  und die Seite wird immer wieder geladen, oder?

     

    Bei meiner ESU ist Python als Option für neue KIs verschwunden!

     

    EDIT: Ich habe mir eine neue ESU-Version heruntergeladen, jetzt gibt es aber einen Fehler,

    (Die KI ist abgestürzt)
    Traceback (most recent call last):
      File "AI", line 141, in
        ns = imp.load_source("Spiel", "AIPI")
      File "AIPI", line 7, in
        import pyxb
    ImportError: No module named pyxb

    , obwohl ich pyxb installiert habe!

     

    EDIT 2: Nanu? Warum antwortet niemand? Hab ich die Apokalypse verpasst?

     

    LG Felix


    Dieser Beitrag wurde am 6. Januar 2013 13:42:33 CET von felix bauckholt bearbeitet
    • 13 Beiträge
    11. Januar 2013 16:20:41 CET

    Ach ja wie ist das eigentlich genau mit der Bewertung? Wird einfach geguckt, wieviele Punkte man hat (Wie das bei der Rangliste standart ist) oder werden die Siege gezählt? Oder wird am Schluss irgendwas anderes gemacht?

     

    Und wie fließt die Bewertung dann in die Aufgabenbewertung ein?

     

    LG Felix

    • 13 Beiträge
    11. Januar 2013 18:46:24 CET
    In der Aufgabenstellung steht:
    "Diese KI wird – zusammen mit deiner Dokumentation zu dieser Aufgabe
    – von uns nach den allgemeinen Kriterien des Bundeswettbewerbs Informatik bewertet.
    Außerdem nehmen alle eingereichten KIs an einem abschließenden Turnier teil, dessen Ausgang
    in die Bewertung eingeht."

    Also es fließen neben den Ergebnissen im Turnier auch noch weitere Kriterien in die Aufgabenbewertung ein. Sicherlich werden deine Lösungsidee, deine Dokumentation und deine Umsetzung an sich auch bewertet.

    Wie die Bewertung des Turniers genau aussieht, geht aus der Aufgabenstellung nicht hervor. Aber das wird sicherlich fair geregelt...

    Viele Grüße
    Markus
    • 14 Beiträge
    11. Januar 2013 19:53:51 CET
    Mal ganz ehrlich. Was ist ein Startzustand und wo kann man ihn downloaden??? Es ist alles viel zu unklar wie schon desöfteren erwähnt :/
    • 13 Beiträge
    11. Januar 2013 20:30:28 CET
    Geh auf turnier.bundeswettbewerb-informatik.de, logg dich ein, click links oben auf das grüne "Tourality", scroll zu "Startzustände" und click bei "Standard" auf das download-icon

    LG Felix
    • 14 Beiträge
    11. Januar 2013 20:37:38 CET
    ok danke. Endlich funktioniert alles. Aber es wäre gut eine Schritt für Schritt Anweisung zu machen.

    LG faustdonner
    • 14 Beiträge
    14. Januar 2013 07:40:04 CET

    Hey Leute ich kann meinen Quelltext nicht ONLINE kompilieren :( Offline gehts aber wenn ich im Browser speichern & kompilieren drücke passiert nix :/


    Dieser Beitrag wurde am 14. Januar 2013 07:40:42 CET von Sebastian Mense bearbeitet
    • 6 Beiträge
    21. Januar 2013 14:48:30 CET

    Ich habe es eben endlich geschafft meine erste KI zu qualifizieren. :)

     

    Allerdings hätte ich da noch 2 Fragen:

    1. Ist es irgendwie möglich bei einer Herausforderung die Ausgaben, die meine KI macht, zu sehen?

    2. Wie kann es sein, dass die KIs bei einer Herausforderung unterschiedlich viele Züge machen? Zählt es nicht als Zug wenn man einfach stehen bleibt?

    3. Was passiert, wenn mein Käfer gegen ein Hindernis oder gegen den Rand des Spielfeldes läuft?


    Dieser Beitrag wurde am 21. Januar 2013 14:52:40 CET von Daniel G bearbeitet
    • 14 Beiträge
    21. Januar 2013 15:10:39 CET
    1. Nein nicht das ich wüsste.
    2. Ja. Wenn die KI zu viele ungültige Züge hintereinander macht wird sie einfach ausgeschaltet.
    3. Dann wird das als ungültig gewertet und dein Zug wird beendet!

    MFG Sebastian