Starten Sie den Mini AI Cup # 3. Maschinenkampf auf engstem Raum



Seit 2012 veranstalten wir den jährlichen AI AI Cup Programmierwettbewerb für künstliche Intelligenz. Dieses Jahr wird es etwas später beginnen - nicht im November, sondern Mitte Dezember. Und für diejenigen, die ihr Niveau vorbereiten oder bewerten möchten, führen wir regelmäßig Mini-Wettbewerbe Mini AI Cups durch. Die Aufgaben sind etwas einfacher als die bei RAIC angebotenen, aber nicht weniger spannend.

Und heute eröffnen wir die Registrierung für den Mini AI Cup # 3 basierend auf Drive AHEAD.

Kurz zum vorherigen Mini AI Cup




Der vergangene Mini AI Cup wurde als Analogon zu dem von vielen Agar.io geliebten Spiel implementiert und für den Start autonomer Bots angepasst, die um die Überlebenschance kämpfen. Es stellte sich als ziemlich groß heraus - mehr als 1200 neue Teilnehmer wurden registriert und die Anzahl der aktiven Spieler überstieg 300 Personen. Während sich die Bots buchstäblich gegenseitig aßen, aßen Teilnehmer und Zuschauer Eimer Popcorn. Die Art und Weise, wie der Bot aus den vorteilhaftesten Positionen ausweichen, gerissen und angreifen will, wie er um sein Leben fürchtet und sich vor Gegnern versteckt, verursacht nach Jahrzehnten unfreiwillig Angst um sein Leben.

Am Ende des Artikels finden Sie fünf nützliche Links zur Analyse der Strategien der Teilnehmer.

Wir möchten uns bei allen für das Feedback sowie bei unseren Mitwirkenden für ihre Hilfe bei der Fertigstellung der technischen Probleme bedanken. Wir schätzen unsere Community und jedes Mal, wenn wir versuchen, die Meisterschaften interessanter zu gestalten.

Spielregeln der neuen Meisterschaft


Diesmal war der ideologische Inspirator des Wettbewerbs ein Spielzeug namens Drive Ahead - eine wütende mobile Spielhalle über den Kampf gegen Autos auf engstem Raum. Die Mechanik der Schlachten in diesem Spiel schien interessant und nicht trivial zu sein und beschloss, es für die Meisterschaft zu wiederholen.



Hier ist eine der Karten auf dem Spielfeld. Der Spieler wird aufgefordert, eine Strategie für die KI zu schreiben, die das Auto fährt und versucht, das Auto des Gegners durch Drücken eines speziellen Knopfes am Körper zu deaktivieren. Klingt das einfach? Viel Glück im Kampf mit Crazy Loaf!



Insgesamt stehen drei Autos zur Verfügung: Loaf, VAZ 2108 und ein weiteres geheimes Auto, das Sie in einem Beta-Test mit verschiedenen Skins sehen werden.

Die Maschine verfügt über viele Parameter, die geändert werden können. Zum Beispiel: Antrieb, Höchstgeschwindigkeit, Gewicht, Radparameter (Gewicht, Größe, Position), Federungsparameter. Derzeit sind 6 verschiedene Karten verfügbar.

Spiele gehen zu 5 Todesfällen, derjenige, der überlebt hat, ist der Gewinner. Unentschieden sind möglich. Eine Einschränkung wurde auf eine Spielsitzung gesetzt. Wenn während 600 Ticks (ein Tick ist eine Zeiteinheit in der Spielwelt) der Gewinner nicht bekannt gegeben wird, wächst die Müllmenge auf der Karte. An wessen Knopf der Müll zuerst kommt, wird er verlieren.

Physik-Motor


Um die Risiken bei der Entwicklung der grundlegenden Mechanik des Spiels zu minimieren, haben wir uns für die Chipmunk-Physik-Engine entschieden. Dies ist eine beliebte plattformübergreifende Open-Source-Engine, die in C geschrieben wurde, in vielen mobilen Spielzeugen verwendet wird und auf anderen Engines wie Cocos2D, Apportable und Marmalade basiert.

Mit Chipmunk können Sie sich an andere Programmiersprachen binden. Die vollständige Liste finden Sie auf der offiziellen Website . Wir ließen den Motor auf und ab laufen, es schien uns ziemlich angenehm.

Die Mechanik


Die Mechanik wird in Python 3.4 mit der Pymunk-Engine und dem Pyglet-Visualizer geschrieben. Zu Beginn der Meisterschaft ist localrunner (lokaler Simulator) sofort im Github- Repository verfügbar, es müssen jedoch alle Abhängigkeiten für ihn und Python selbst installiert werden. Localrunner startet vollständig von der Konsole, unterstützt das Aufzeichnen von Spielen, das Anzeigen von Debugging-Informationen und das Spielen mit der Tastatur.

Für Sie wurde eine API erstellt, nach der die in Ihrer Lieblingssprache geschriebene Strategie des Spielers (von STDIN) die Änderungen im Zustand der Welt liest und (an STDOUT) seine Aktionen sendet. Somit interagiert der Benutzer mit dem Spiel.

Während des Wettbewerbs können die Teilnehmer zwei Spielesitzungen erstellen: Bewertung (Spiel um Punkte, von denen die Liste der Finalisten abhängt) und Bewertung (Spiel "einfach so", um ihre Strategie in Aktion zu testen).

Die Maschinensteuerung ist erst in der ersten Phase einfach: links, rechts und abstellen des Motors. In Rating- und Endspielen werden neue Möglichkeiten hinzugefügt, um die Anzahl der Strategien zu erhöhen.

Technische Merkmale


Wir unterstützen die Arbeit mit Go 1.10, Java 1.8, C # Mono 4.3, NodeJS 9, C ++ 11, C ++ 17, Python 2.7 / 3.5, PHP7, Kotlin, Haskell, Scala, Rust und Elixir.

Wir haben versucht, das Hinzufügen neuer Sprachen so einfach wie möglich zu gestalten - wir benötigen nur eine Docker-Datei mit einer bestimmten Vorlage. Wenn Sie möchten, dass Ihre Lieblingssprache in der Liste der unterstützten Sprachen angezeigt wird, stellen Sie einfach eine Pull-Anfrage, und wir werden sie testen.

Heutzutage beträgt die maximale Menge an Quellcode für eine Strategie 20 Megabyte in archivierter Form. Darüber hinaus haben wir eine weitere Beschränkung für die Anzahl der gesendeten Lösungen pro Tag - 20 Stück.

Die vollständigen Meisterschaftsregeln werden zu Beginn des Wettbewerbs in diesem Repository veröffentlicht.

Zeitplan


30. August - Der Beta-Test des Wettbewerbs beginnt. Die Spieler schreiben die ersten Entscheidungen, um es sich bequem zu machen und bereit zu sein, Spiele zu bewerten.
6. September - Bewertungsspiele geöffnet;
20. September - Bewertungsspiele stoppen, N Teilnehmer mit den besten Entscheidungen gehen ins Finale und erhalten eine kleine Pause, um ihre Entscheidungen abzuschließen (nur am Wochenende);
24. September - Endspiele zwischen Entscheidungen der Top-Spieler.

Preise


Erster Platz - das brandneue MacBook Air;
Zweiter und dritter Platz - Apple iPad;
Vierter, fünfter, sechster Platz - Samsung Gear S3.

Wir glauben, dass der Teilnehmer das Recht hat, im Gegenzug ein weiteres Geschenk von gleichem Wert anzufordern. Wenn Sie Ideen zur Aktualisierung der Preisliste haben, hinterlassen Sie diese in den Kommentaren unter dem Artikel. Wir sind Ihnen dankbar.

Darüber hinaus wird unser Taximobil- Taxi den TOP10-Teilnehmern einen Rabatt von 250 Rubel * 20 Fahrten / Monat gewähren.

Alle Spieler, die sich für das Finale qualifiziert haben, erhalten Marken-T-Shirts unserer Meisterschaft.

Lass uns gehen


Die Registrierung ist offen: aicups.ru . Für diejenigen, die Teil unserer freundlichen Community werden möchten, haben wir einen Chat auf Telegram - @aicups , einem offiziellen Informationskanal für die Meisterschaften - @mrgchamps und einer VK- Gruppe.

Nützliche Artikel - Analyse der letzten Meisterschaft:


  1. Alexey Dichkovsky ( @DragoonXen ) - "Mini ai cup 2 oder fast AgarIO - was könnte getan werden, um zu gewinnen"
  2. Alexander Gusev ( @Geotyper ) - „Erstellen eines Bots für die Teilnahme am AI Mini Cup 2018 basierend auf einem wiederkehrenden neuronalen Netzwerk“ , „(Teil 2)“ , „(Teil 3)“
  3. Alexander Gusev ( @Geotyper ) - „Einen Bot erstellen , um am AI Mini Cup teilzunehmen. GPU-Erfahrung »

Source: https://habr.com/ru/post/de421397/


All Articles