Re: Extracting data from the Robot during battle

Pavel Ĺ avara <[email protected]> Sun, 23 Jan 2022 12:30:13 +0100
Newsgroups gmane.comp.java.robocode
Message-ID <CABB+071PyMeWPTHOpX7+GFg_W=_LS93gA_d-q_RzERiMW=XvMg@mail.gmail.com>
--0000000000005638dc05d63e2d15
Content-Type: text/plain; charset="UTF-8"

Hi  Victor,

The Robocode engine comes with a system of modules, where you could
plug-in your own module and consume in-game events.
See addBattleListener
https://robocode.sourceforge.io/docs/robocode/

Here I played with data mining using Kusto analytic engine.
https://github.com/robo-code/rur/blob/marius/robocode.plugin.kusto/src/main/java/net/sf/robocode/plugin/kusto/KustoRecordManager.java

Modules are more practical than wrestling with connectivity from inside of
the robot, as the robot is locked down for security and to prevent cheating.

The engine's external API could be used to execute battles in an
automated way.
Or you can also configure your own LiteRumble server and direct your own
roborumble client to it, to run a specific set of battles for your training.

Note, that the engine has full visibility to precise locations of bullets
etc. It also has it one or two ticks earlier than the actual robot could
get it via radar.
The engine's view is richer and if you used it for training, the real robot
would not have the same information available in real fair battle.
And therefore, don't confuse inputs from information the engine has, with
limited information the robot has.

Cheers
Pavel


On Fri, Jan 21, 2022 at 4:53 PM Victor Konde Jr <[email protected]>
wrote:

> Hello everyone,
>
> Happy 2022, I hope everyone is well.
>
> I am currently working on an evolutionary neural network project using
> IntelliJ, coded in java.
>
> Before battle, I construct neural network controllers that dictate the
> behavior of the robots. I then evaluate the performance of the controller
> based on the robots behavior for further analysis.
>
> My challenge is, extracting data from the battles that may aid in
> determining the fitness of the neural network involved after a round of
> battle, and after the rounds of battles have been completed.
>
> The manual routine I've been using is running the battle, extracting the
> results, and then running it again. That is challenging if I have an
> algorithm that requires 1000 runs with each run having 100 generations,
> that is, 100000 loops.
>
> I would really appreciate any support given in this regard.
>
> Thanks in advance
>
> Victor
>
> --
> You received this message because you are subscribed to the Google Groups
> "Robocode" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/robocode/4afb9a20-e1c0-4d83-8b36-a7824977dab4n%40googlegroups.com
> <https://groups.google.com/d/msgid/robocode/4afb9a20-e1c0-4d83-8b36-a7824977dab4n%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>

-- 
You received this message because you are subscribed to the Google Groups "Robocode" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
To view this discussion on the web visit https://groups.google.com/d/msgid/robocode/CABB%2B071PyMeWPTHOpX7%2BGFg_W%3D_LS93gA_d-q_RzERiMW%3DXvMg%40mail.gmail.com.

--0000000000005638dc05d63e2d15
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div dir=3D"ltr"><div dir=3D"ltr"><div dir=3D"ltr"><div di=
r=3D"ltr"><div dir=3D"ltr"><div dir=3D"ltr">Hi=C2=A0 Victor,<div><br></div>=
<div>The Robocode engine comes with a system of modules, where you could pl=
ug-in=C2=A0your own module and consume in-game=C2=A0events.</div><div>See a=
ddBattleListener=C2=A0</div><div><a href=3D"https://robocode.sourceforge.io=
/docs/robocode/">https://robocode.sourceforge.io/docs/robocode/</a>=C2=A0</=
div><div><br></div><div>Here I played with data mining using Kusto analytic=
 engine.</div><div><a href=3D"https://github.com/robo-code/rur/blob/marius/=
robocode.plugin.kusto/src/main/java/net/sf/robocode/plugin/kusto/KustoRecor=
dManager.java">https://github.com/robo-code/rur/blob/marius/robocode.plugin=
.kusto/src/main/java/net/sf/robocode/plugin/kusto/KustoRecordManager.java</=
a><br></div><div><br></div><div>Modules are more practical than wrestling=
=C2=A0with connectivity from inside of the robot, as the=C2=A0robot is lock=
ed=C2=A0down for security and to prevent cheating.</div><div><br></div><div=
>The engine&#39;s external API could=C2=A0be used to execute battles in an =
automated=C2=A0way.<br></div><div><div>Or you can also configure your own L=
iteRumble server and direct your own roborumble client to it, to run a spec=
ific set of battles for your training.</div><div><br></div></div><div><div>=
Note, that the engine has full visibility to precise locations of bullets e=
tc. It also has it one or two ticks earlier=C2=A0than the actual robot coul=
d get it via radar.<br></div><div>The engine&#39;s view is richer and if yo=
u used it for training, the real robot would not have the same information =
available in real fair battle.<br></div><div>And therefore, don&#39;t confu=
se inputs from information the engine has, with limited information the rob=
ot has.</div><div><br></div><div></div></div><div>Cheers<br></div><div>Pave=
l</div><div><br></div></div></div></div></div></div></div></div><br><div cl=
ass=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr">On Fri, Jan 21, 2=
022 at 4:53 PM Victor Konde Jr &lt;<a href=3D"mailto:[email protected]"=
>[email protected]</a>&gt; wrote:<br></div><blockquote class=3D"gmail_q=
uote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,2=
04);padding-left:1ex">Hello everyone,<div><br></div><div>Happy 2022, I hope=
 everyone is well.</div><div><br></div><div>I am currently working on an ev=
olutionary neural network project using IntelliJ, coded in java.</div><div>=
<br></div><div>Before battle, I construct neural network controllers that d=
ictate the behavior of the robots. I then evaluate the performance of the c=
ontroller based on the robots behavior for further analysis.</div><div><br>=
</div><div>My challenge is, extracting data from the battles that may aid i=
n determining the fitness of the neural network involved after a round of b=
attle, and after the rounds of battles have been completed.</div><div><br><=
/div><div>The manual routine I&#39;ve been using is running the battle, ext=
racting the results, and then running it again. That is challenging if I ha=
ve an algorithm that requires 1000 runs with each run having 100 generation=
s, that is, 100000 loops.</div><div><br></div><div>I would really appreciat=
e any support given in this regard.</div><div><br></div><div>Thanks in adva=
nce</div><div><br></div><div>Victor</div>

<p></p>

-- <br>
You received this message because you are subscribed to the Google Groups &=
quot;Robocode&quot; group.<br>
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:[email protected]" target=3D"=
_blank">[email protected]</a>.<br>
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/d/msgid/robocode/4afb9a20-e1c0-4d83-8b36-a7824977dab4n%40googlegroups.co=
m?utm_medium=3Demail&amp;utm_source=3Dfooter" target=3D"_blank">https://gro=
ups.google.com/d/msgid/robocode/4afb9a20-e1c0-4d83-8b36-a7824977dab4n%40goo=
glegroups.com</a>.<br>
</blockquote></div>

<p></p>

-- <br />
You received this message because you are subscribed to the Google Groups &=
quot;Robocode&quot; group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:[email protected]">robocode+u=
[email protected]</a>.<br />
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/d/msgid/robocode/CABB%2B071PyMeWPTHOpX7%2BGFg_W%3D_LS93gA_d-q_RzERiMW%3D=
XvMg%40mail.gmail.com?utm_medium=3Demail&utm_source=3Dfooter">https://group=
s.google.com/d/msgid/robocode/CABB%2B071PyMeWPTHOpX7%2BGFg_W%3D_LS93gA_d-q_=
RzERiMW%3DXvMg%40mail.gmail.com</a>.<br />

--0000000000005638dc05d63e2d15--