BedMaker

Jump to navigation Jump to search

It looks like you have an extra space in the bot name, the " (2)". Could that be the issue?

Skilgannon21:49, 19 July 2012

Feel free to inspect the actual command I entered; I pasted it up above.

java -Xmx512M -cp bin:hsqldb.jar roboResearch.CLI -S -t 3 -C challenges/debroglie1.rrc -c "tjk.deBroglie rev0116" -r 35 -s 14

has problems while

java -Xmx512M -cp bin:hsqldb.jar roboResearch.CLI -S -C challenges/debroglie1.rrc -c "tjk.deBroglie rev0116" -r 35 -s 14

does not.

What's odd is that the lines that declare what config will be running (before the actual battles start) seem to indicate that the bot name was read correctly. Again, as I pasted above:

Challenge: deBroglierev108 150-57-95

Bot: tjk.deBroglie rev0116

Alias: null

Rounds: 35

Threads: 3

Type: null

Seasons: 14

But then, a moment later, RoboResearch has " (2)" appended to the end of the bot name. Very odd.

Tkiesel23:08, 19 July 2012
 

I think the (2) is appended to the bot name because it was a battle with two of the same bot. But I don't understand how RoboResearch could have gotten confused enough for that to happen. I think Skilgannon is right that it's confusing the parsing going on in BattleResults.load, though I can't exactly follow how (because I'm not too familiar with the format of the output it parses).

I'd really like to modify RoboResearch to use the Robocode control API, or write a new batch battle runner that does. RoboResearch runs a battle in a fresh Robocode instance each time from a .battle file and parses the results from the output. I recently tinkered with this - starting a new JVM each time is a lot more painful when you're running 1-round battles, like I was for my perceptual gun =). And I realized it requires a separate Robocode install for each thread, or you hit concurrency exceptions reading in JARs. RoboResearch makes use of a debug property that starts Robocode with a different "working directory" so each thread can load bots from a different directory, but there's really no way to do that for separate threads using the Robocode control API. (Not that it's a big deal to have a bunch of full Robocode installs, but it would make the change to RoboResearch quite a bit more complicated.) Also, the SQL db it uses slows down a lot once you have a lot of results in there, forcing me to manually clear it from time to time. I'm sure there's a better solution.

Voidious03:43, 20 July 2012
 

You do not have permission to edit this page, for the following reasons:

  • The action you have requested is limited to users in the group: Users.
  • You must confirm your email address before editing pages. Please set and validate your email address through your user preferences.

You can view and copy the source of this page.

Return to Thread:User talk:Tkiesel/BedMaker/reply (26).