See also ebooksgratis.com: no banners, no cookies, totally FREE.

CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
Privacy Policy Cookie Policy Terms and Conditions
Robocode – Wikipedia

Robocode

aus Wikipedia, der freien Enzyklopädie

Startbildschirm
Startbildschirm

Robocode ist ein Open Source-Programmierspiel, bei dem virtuelle Roboter auf einem Spielfeld gegeneinander kämpfen. Entwickelt wurde es von Mathew Nelson (ursprünglich von IBM), zurzeit ist Flemming N. Larsen Hauptentwickler und nimmt Aktualisierungen und Bugfixes vor. Weiterentwickelt wird es von der Community. Es wurde entwickelt, um die Programmiersprache Java im spielerischen Umgang erlernen zu können. Aufgrund der einfachen Bedienung und dank der mitgelieferten Beispiele kann schon in wenigen Minuten ein simpler virtueller Roboter (kurz: Bots) entwickelt werden. Die Entwicklung komplexerer Bots nimmt jedoch wesentlich mehr Zeit in Anspruch.

Inhaltsverzeichnis

[Bearbeiten] Das Spiel

Die Spieler schreiben die Software für einen virtuellen Roboter (einen Panzer), welcher dann gegen andere Bots (von anderen Mitspielern und daher mit anderer Software) auf einem ebenfalls virtuellen 2-dimensionalen Schlachtfeld antreten. Die Bots können sich bewegen, schießen und bestimmte Variablen ihrer Umwelt wahrnehmen. Obwohl die Grundidee hinter diesem Spiel sehr einfach ist, ist es sehr schwierig eine gute Strategie für einen Sieg zu entwickeln. Die besten Bots haben deshalb auch hunderte Zeilen Softwarecode und verfolgen bei ihrer Siegstrategie so unterschiedliche Ansätze wie statistische Analysen, ereignisbasierte Routinen oder ein künstliches neuronales Netz.

Bei dem Spiel geht es darum, den eigenen Panzer so zu programmieren, dass er so wenig wie möglich getroffen wird und selbst so oft wie möglich die Panzer der anderen Spieler trifft. Gewinnbedingung ist, als letzter Roboter auf dem Spielfeld zu verbleiben oder in Teamspielen, alle Roboter der gegnerischen Teams vernichtet zu haben.

Das Spiel ist kein Onlinespiel, es ist also nicht möglich, Partien über das Internet auszutragen. Man kann aber eine Vielzahl an Steuerprogrammen (die teilweise sogar als Open Source vorliegen) im Internet finden, welche man dann auf seiner lokalen Maschine ausführen kann. Die Steuersoftware läuft in einer abgeschirmten Umgebung, d.h. es bestehen keine Sicherheitsrisiken beim Ausführen fremder Binärdateien. Lässt man die eigene Software gegen die fremde antreten, lässt sich die Effektivität der eigenen Software testen.

[Bearbeiten] Größenbeschränkungen

Um Programmierer dazu zu zwingen, den Funktionsumfang ihrer Bots einzuschränken, gibt es verschieden Roboterklassen, die sich durch unterschiedliche Größen der Binärdateien auszeichnen. Auf diese Weise bleibt es auch Anfängern offen, sich mit etablierten Robocode-Spielern zu messen.

Man unterscheidet:

  1. Megabots ohne Größenbeschränkung
  2. Minibots mit unter 1500 Bytes
  3. Microbots mit weniger als 750 Bytes
  4. Nanobots mit weniger als 250 Bytes

[Bearbeiten] Ligen

Es gibt mehrere Robocode Ligen, die bekanntesten sind:

[Bearbeiten] RoboRumble@Home

RoboRumble@Home ist eine ständige Liga, die drei verschiedene Disziplinen in allen Klassen austrägt. Die Disziplinen sind:

  1. 1-on-1, wobei nur 2 Roboter auf das Spielfeld gelassen werden
  2. melee, eine Massenschlacht mit mehr als zwei Robotern; wer als letzter übrig bleibt, gewinnt
  3. team, Gruppen treten gegeneinander an.

In den Modi 1-on-1 und melee tritt jeder Roboter mindesten ein mal gegen jeden anderen an. Im Team-Modus scheiden Teams nach einer Niederlage aus (KO-System).

[Bearbeiten] Robocode Little League

Die Robocode Little Leage war spezialisiert auf größenbeschränkte Bots. Die RLL ist momentan nicht mehr aktiv.

[Bearbeiten] Einige wichtige Bots

Die besten Bots in allen Klassen und Disziplinen (Stand Februar 2006)

[Bearbeiten] RR@H Champions

Klasse Disziplin Bot Kommentar
Megabots 1-on-1 Dookius Hochspezialisierter 1-on-1 Bot. Seit langem ungeschlagen und Open-Source.
melee Aleph
teams Aleph Eine spezialisierte Team-Version von Aleph
Gesamt Shadow Ein hervorragender Allrounder
Minibots 1-on-1 Pugilist Open-Source-Bot. Über ein Jahr lang Tabellenerster.
melee GlowBlowMelee
Gesamt - Durch die Größenbeschränkung sind die Bots sehr spezialisiert.
Microbots 1-on-1 Thorn Open Source
melee Shiz Open Source
Gesamt - Durch die Größenbeschränkung sind die Bots sehr spezialisiert.
Nanobots 1-on-1 Spinter Open Source
melee Lib Open Source
Gesamt DoctorBob Für seine Klasse schlägt sich dieser Bot recht gut in allen Disziplinen.

[Bearbeiten] Besondere Bots

Der lange Zeit als unschlagbar geltende SandboxDT ist noch immer ein starker Gegner und definiert noch heute die Trennlinie zwischen Spreu und Weizen.

Technisch besonders interessant sind Shadow, der das sogenannte 'WaveSurfing' einführte und FloodMini, ein Open-Source Minibot, der die StatisticalTargeting-Technologie etablierte.

In den letzten Jahren gilt CassiusClay, ebenfalls Open Source, als einer der technisch ausgefeiltesten Bots.

Phoenix, die aktuelle Nummer 2 der RR@H, zeigte erstmals eine grafische Debug-Umgebung.

[Bearbeiten] Weblinks


aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -