On seeing the International RoShamBo Programming Competition website, I was dissapointed to see that the page had last been updated in over 4 years ago. I believed it would be an interesting competition, so I decided to start my own. I quickly created a simple RoShamBo framework of my own in C++, and I issued the challenge on GameDev.Net and AnandTech.
RoShamBo is a simple turn-based game for two players. Each turn, both players select a throw (either "Paper", "Rock", or "Scissors") simultaneously. If both players selected the same throw, then that round is counted as a tie and scores remain the same. Otherwise, "Paper" beats "Rock", "Rock" beats "Scissors", and "Scissors" beat "Paper". The player with the winning throw receives +1 point, while their opponent receives -1 point. The number of turns is arbitrary, but most often play is limited to a single turn.
It may seem that there can be no strategy to such a simple game. When playing in real life, strategies involve psychological and physical trickery, but in a computer such things are of no use. How, then, can one computer program conclusively win a tournament? There are two parts to the answer - first of all, selecting random will give an approximately equal number of wins and losses, so that the final score would be very close to 0 and thus it isn't a very good strategy. Second is the fact that there are already some computer opponents included that are guaranteed to use some kind of strategy - the sample bots. Since they don't use very good strategies (for example, one will always use the throw you used last turn), it is possible to get a higher score by taking advantage of their poor strategies. If your program noticed it was playing against 'CopyBot', it could always counter the throw it made last turn and win every time.
The first deadline of the competition wass April 10th, 2005 1:00 AM Central Standard Time, but no entries were received. I'm working on restructuring the competition to help encourage participation in any future versions.
All rules are subject to change without notice, and further criteria beyond the posted rules may be used for judging.
Extrarius's RoShamBo Programming Competition Framework v1.1.0 (March 29, 2005 7:00 PM CST)
SkillHack
If you have any questions, comments, or suggestions reguarding this competition, you can contact me (Extrarius) using either the e-mail address in the framework (above), or by sending a private message to Extrarius(on GameDev.Net; on AnandTech).