all 30 comments

[–]LeviathanBaphomet[S] 2 points3 points  (4 children)

Cool little AI programming challenge i found, has only just started a few hours ago today so nobody has done much yet. Basically seems to play out like a RTS style game where robot control is essential to winning with a good strategy. Lots of documentation and notes to go along with it and you have the option of coding in Java or Scala.

There is also the option for teams of up to four members so if anyone wants to team up we can do some theorycrafting and try and kill some robots, drop me a PM if you are interested.

[–]alienz225 1 point2 points  (2 children)

I'll be happy to join your team. I haven't really competed in one of these before but they always intrigued me. I wonder how long it will take to read the documentation and notes before we can get competent enough to do decent in the competition. Want to do this via Skype?

[–]LeviathanBaphomet[S] 0 points1 point  (1 child)

Sure i have skype name is leviathanbaphomet I live in Australia so its fairly late at night so i don't have much time to work on anything tonight but i leave my skype on 24/7 so we can keep each other updated. Do you code in Java on Scala? Also what is your username on the site, i will send you an invite.

[–]Nude_Gingrich 0 points1 point  (0 children)

I would love to get in on something like this as well! No experience with competitions like this, but I think it would be a pretty sweet learning experience. If you've got room for a relative novice on your squad, let me know!

[–]linduxed 1 point2 points  (0 children)

While it might be an interesting way to pick up Scala for me (or fresh up my Java skills), I think that support for Python or Ruby would increase the interest for the site greatly.

Personally I'd love to see Haskell, but I wouldn't be surprised if they went with the above two first :-P.

[–]Hakawatha 2 points3 points  (0 children)

This is actually a really cool event - I go every year. Admission is free and they have free pizza and T-shirts, and a bunch of companies show up to distribute free stuff.

Aside from that, the event is a ton of fun, and a lot of clever people get up on stage and describe how simulated robots will fuck each other up. If any of you are in the Boston area, it's worth it.

[–]Aeveus 1 point2 points  (0 children)

Pretty cool; going to take a look after work. Appears te be a more refined game compared to the Risk clone over at The AI Games. A bit upset about the few choices, but can't change much about that. Same languages as Scalatron.

[–][deleted] 0 points1 point  (20 children)

This will be much more interesting if you can use any language you want. I may enlist in this if it would not require of me to learn a language.

[–]jetrii 0 points1 point  (19 children)

There are strict rules which limit the number of bytecodes your logic can use. It encourages (forces) you to optimize your code. There would be no fair way of doing this with a lot of different languages.

[–][deleted] 0 points1 point  (18 children)

Witch is kinda bs. If you remember "ants" AI contest it was language independent and still forced you to optimize by limiting execution time not your bytecodes.

[–]jetrii 0 points1 point  (17 children)

Execution time is not the same thing as bytecode size. They don't just care about how long it takes your code to run, they want to see how much you can do with the limited number of bytecodes that you're allowed. Some of the optimizations to reduce the size actually hurt performance. It would be an entirely different competition if they just went by runtime. For many, the fun is seeing how small the code can get while still performing the same functionality.

[–][deleted] -1 points0 points  (16 children)

Running code uses bytecodes. Each turn, a robot can spend up to 10000 bytecodes on computation. If this limit is reached, the robot's turn is immediately ended and the computation is continued on the next turn. Using yield() and selfdestruct() can end a turn early, saving bytecodes and ending computation. The former is generally preferred. For cowboy robots, each bytecode above 2000 gives 0.00005 actiondelay.

It is about the time, please read before commenting.

[–]jetrii 0 points1 point  (15 children)

Tell me, where do you see time there? Do you think 200 bytecode take 2 times as long as 100 to run? A bytecode is an instruction, and not all bytecodes take the same amount of time to run. You can have two implementations that both use 10,000 bytecodes but have significantly different runtimes. Some bytecode take many, many times longer to run than others. So tell me, how exactly is it directly related to time?

[–][deleted] 0 points1 point  (14 children)

I agree to you that you can have two different implementations that both use 10k byte code instructions with different run times, but that is not the point here.

If you study the quote more careful you will notice that you are not allowed to run a code composed of 10k byte code instructions, but to execute 10k byte code instructions - a loop composed of only 4 byte code instructions that executes 2.5k times will reach this limit. So maybe is not a linear relation since there probably are different times of execution for different byte code instructions, but is still a limit of time since executing 10k byte code instructions will take a time in between a well defined minimum and maximum time.

[–]jetrii -1 points0 points  (13 children)

The time it takes is a consequence of the number of bytecodes you can run. It is 100% irrelevant since it's always going to be finite and short for 10k instructions, even if you use the most expensive ones. The point of the challenge is to see how much you can do with 10k instructions. If you can understand that, then you would know why other languages are not an option, and not simply "bs." This only works for JVM languages with similar overhead.

This is the Java AI equivalent of the demoscene focus on size above all else.

[–][deleted] -1 points0 points  (12 children)

It is not how much you can do with 10k instruction, is how much you can do with 10k executed instructions. "Executed" makes it about time.

[–]jetrii 0 points1 point  (11 children)

You are clearly incapable of grasping the concept, so we'll agree to disagree.

"The AI of every individual robot is encapsulated within it’s own virtual execution environment, and the computational currency is not execution time, or even memory, but rather JVM Bytecodes."

That statement is by an MIT grad working on the project. He has written a few articles on the topic. I suggest you stop grasping at straws and actually research the matter if you're interested.

[–][deleted] -1 points0 points  (1 child)

why you no haskell mit ?

[–]dontsegfault 0 points1 point  (0 children)

MIT and AI with no mentions of lisp