Robocode

Robocode is een open source educatief spel gestart zijn door Mathew Nelson. Bijdragen worden gemaakt door mensen met inbegrip van Flemming N. Larsen en Pavel Savara die werken op Robocode om het actueel te houden en bevestig de bugs.

Het spel helpt mensen leren programmeren in Java of, vanaf versie 1.7.2, .NET Framework programmering languages.A eenvoudige robot kan worden geschreven in slechts een paar minuten - maar het perfectioneren van een bot kan maanden duren.

Spel

Concurrenten schrijven software die een miniatuur tank die andere identiek gebouwde tanks vecht in een speelveld controleert. Robots kunnen bewegen, schieten op elkaar, scannen voor elkaar, en druk op de muren of andere robots, indien verkeerd geprogrammeerd. Hoewel het idee van het spel is eenvoudig, die nodig zijn om te winnen strategie niet. Robots kunnen duizenden lijnen in hun code gewijd aan de strategie. Sommige van de meer succesvolle robots gebruiken technieken zoals statistische analyse of pogingen tot neurale netwerken in hun ontwerpen.

Veilig bots andere mensen lopen

Een robot kan worden getoetst aan anderen door het downloaden van de Java bytecode of CLR Class Library. Robocode biedt een beveiligingssandbox die internet herverdeling veilig maakt.

Beweging en doelgerichtheid

Robocode programmering probeert te bereiken:

  • Beweging: Vermijd geraakt te veel.
  • Targeting: Probeer te voorspellen waar de tegenstanders zal bewegen en sloeg hen zo veel mogelijk.

Top bots kunnen gebruiken:

  • Golfsurfen - Het aanpassen van de beweging en proberen te voorkomen dat je geraakt op dezelfde manier twee keer.
  • Statistische Targeting - Verzamel gegevens dat de targeting situatie beschrijft samen met wat zou de juiste beslissing voor elke situatie. Gebruik deze gegevens om gerichte beslissingen te nemen.
  • GuessFactor Targeting - De meest bekende vorm van statistische targeting waar de statistieken voor de vijandelijke robots worden elk uitgedrukt door een getal tussen -1,0 en 1,0.
  • Patroon Matching - Probeert om patronen van de waargenomen gedrag overeen met eerder waargenomen patronen, en beslissingen nemen over targeting op basis rond dat.

Monster bots

Meerdere monster robots zijn opgenomen in Robocode om de beginner te helpen. Ze tonen technieken die worden gebruikt bij het coderen van robots, van event-driven programmeren tot het schrijven van gegevens naar bestanden voor later gebruik.

Open source bots

De RoboWiki heeft een uitgebreide lijst van open source robots.

Code grootte beperkingen

Om de deelnemers te dwingen bepalen wat functies in een bot op te nemen zijn er vier categorieën codesize verschillende competities voor Robocode.

RoboRumble belangrijkste actieve concurrentie is de RoboRumble een doorlopende competitie gebaseerd op gedistribueerde berekening op een soortgelijke manier SETI De RR functies competities voor 1-op-1, melee en teams. 1-op-1 en melee wedstrijden worden uitgevoerd voor de vier hoofdcategorieën code grootte.

De RR maakt gebruik van een rating systeem gebaseerd op de gemiddelde score een bot scoort tegen alle anderen, die bekend staat als Averaged Percentage Score, of APS. Er is ook een ranking waar alleen winnen of verliezen telt, met 2 punten gegeven voor een overwinning, 1 voor een gelijkspel, en 0 voor een verlies, bekend als de Premier League of de PL. De naam is geïnspireerd door het Engels voetbalcompetitie met dezelfde naam, die werkt off van een soortgelijke ranking mechanisme.

Terwijl de APS heeft de neiging om een ​​ranking die kracht tegen zwakkere en sterkere bots zowel weerspiegelt zijn, de PL heeft de neiging om kracht tegen de sterkere bots weerspiegelen. Dus terwijl een bot zeer effectief in het ontwijken kan zijn eenvoudig te richten met een nauwkeurigheid van 90%, en dus krijgt een hoge APS scoren, een ander bot mag alleen ontwijken met een nauwkeurigheid van 70%, maar in staat zijn om sterkere bots effectiever te bestrijden. Zo zou krijgen een lagere APS scoren, maar een hogere PL ranking.

De RoboRumble ondersteunt alleen Java robots.

Robocode Little League

Hoewel niet meer actief, de Robocode Little League biedt nog steeds tafels op het afgelopen toernooien.

Twin Duel

Twin Duel is een 2v2 wekelijkse survivalist toernooi. Het toernooi brengt uitdagingen voor Robocoders - ze hebben een goede mix van zowel één-op-één en melee strategie. Het is een codesize beperkte competitie, die alleen teams staan ​​onder 2000 bytes aan deelgenomen. Het formaat van het toernooi is single-eliminatie round-robin met een uitzondering van de laatste, die de beste van de drie series.

Internationale wedstrijden

  • Virtual Combat gehouden door CodeFest'11, de jaarlijkse internationale online codering festival van Computer Engineering Society, IIT BHU
  • Robocode UDL in handen van de Universitat de Lleida
  • Robocode Ierland - Robocode Ierland, Games Fleadh Game Festival
  • IPL Robocode competitie 2010 - Belgische Robocode Concurrentie

RR kampioenen

De 29 september 2009 kampioenen van de RR zijn:

Invloedrijke bots

  • SandboxDT, was ooit een onverslaanbare robot. Het is tweemaal onttroond door Duelist en Shadow, die zijn regering eindigde. Het blijft een sterke concurrent te zijn, tekening in nieuwe programmeurs en bots.
  • Schaduw, is een bot die Surfen van de Golf-concept introduceert in Robocode. Het houdt een melee kroon.
  • FloodMini, een open source Minibot met Statistische Targeting, heeft geholpen Robocoders begrijpen Statistische Targeting.
  • CassiusClay, een open source top bot, heeft geholpen coders begrijpen geavanceerde beweging en targeting technieken.
  • Silversurfer, een open source Braziliaanse top bot, 3e plaats in RoboRumble General 1v1, 2 mei 2004. Wave Lijden beweging met Pattern Matching richtsysteem.
  • Phoenix, actuele nr.5 bot, demonstreert de kracht van grafische debugging. De code gebruikt voor het opstellen debugging informatie op het scherm is open-source, uitgebracht als DrawingBot.
  • YersiniaPestis de huidige # 11 robot, is de eerste robot die de PL kroon Shadow nam.

Robocode wiki

De belangrijkste site voor Robocode kennis en discussies is het RoboWiki, met technieken en strategieën, informatie over bots, broncode, en vraag om hulp. De RoboWiki gastheren RoboRumble in Robocode kan beginnen met Robocode Beginners FAQ.

(0)
(0)
Commentaren - 0
Geen commentaar

Voeg een reactie

smile smile smile smile smile smile smile smile
smile smile smile smile smile smile smile smile
smile smile smile smile smile smile smile smile
smile smile smile smile
Tekens over: 3000
captcha