2.1 First International RoShamBo
Competition
In 1999, Darse Billings, a researcher at the Uni-
versity of Alberta organized the First International
RoShamBo Competition. The format of the compe-
tition and the results can be found on his website
(Billings, 1999a). In this competition, every player
competes against every other player in matches of a
thousand rounds each. If the score is between minus
fifty and plus fifty, it is a tie. The results are reported
using two ranking systems. The first one is Open
Ranking where the rank is determined by the sum of
the scores of all matches played, while the Best of the
Best considers only the number of matches won. An
analysis of the participating algorithms revealed that
all the techniques used could be grouped under two
main families of algorithms. Programs either used a
direct history method where the predictor is looking
at the history for matching patterns or alternatively
used statistical methods such as Markov Models or
frequency counters.
The winner of the first competition was a pro-
gram named Iocaine Powder, developed by Dan Eg-
nor (Egnor, 2000). The source code can be found on-
line in the compilation of all the participants (Billings,
1999b). This bot uses a direct history method along
with a meta-strategy called Sicilian reasoning. The
concept of Sicilian reasoning comes from the movie
The Princess Bride. It is a meta-strategy that incorpo-
rates the level of prediction the opponent is using and
allows the algorithm to evaluate which degree of pre-
diction (simple-guessing, second-guessing or triple-
guessing) is best performing. It also allows the al-
gorithm to evaluate if the opponent is using a similar
meta-strategy. On top of that, the Iocaine Powder bot
also uses multiple strategies and a meta-meta-strategy
and shows full understanding of the complexity of
this game. Full description of the algorithm with its
source code can be found online (Billings, 1999b).
2.2 Second International RoShamBo
Competition
A second competition was held the following year
(Billings, 2000a) based on the same rules. It also in-
cluded a test suite were participants could test their
algorithm against the winners of the previous com-
petition, hoping to raise the level of the new submis-
sions. Although this new generation saw some im-
provement, most algorithms were inspired by the pre-
vious winner, Iocaine Powder. However, even with
access to its source code, the new entries did not im-
prove much on its idea (except for the new winner)
since Iocaine Powder still managed to finish in third
place, overall.
The winner of the second event was Greenberg by
Andrzej Nagorko which is a direct descendant of Io-
caine Powder. Although its source code is available
online, it is not documented nor described so it is hard
to understand the improvements executed on its pre-
decessor, but it appears to use the same idea of multi-
ple strategies along with Sicilian reasoning.
2.3 RPSContest
Eleven years later, Byron Knoll reopened the compe-
tition through an online platform known as RPSCon-
test (Knoll, 2011). Although there has not been any
update since 2012, the platform still works today and
the leader board is automatically kept up to date. The
format of the competition is slightly different from the
two previous ones. The programs must be submitted
in Python and the CPU limit is set to five seconds per
match. The ranking is also less representative than
the previous ranking schemes since it is based on the
average win ratio of random matches. The win ratio
is the number of victories divided by the total number
of matches, weighted more heavily on recent matches.
There is also no limit placed on the number of submis-
sions or their content. It is common to see an author
submitting more than ten versions of the same algo-
rithm. It is obvious that duplicating a better than av-
erage bot a hundred times will have a negative effect
on the ranking of all the other algorithms.
Daniel Lu provided a comprehensive summary of
the most common strategies and meta-strategies for
playing RPS (Lu, 2011). Following the two Interna-
tional RoShamBo Competitions, bots based on his-
tory matching or statistical methods were proven to
work well, but having an ongoing online tournament
allowed new ideas to emerge. Notably, some of the
top players are now using neural networks to analyze
the emerging history of a game and hence, predict the
opponent’s next move. Surprisingly, only two bots in
the leader board are using EAs and they are ranked
below average.
We reviewed the bots on the first page of the leader
board (top 50) to include only the best (usually latest)
version of an algorithm and exclude all other versions.
This gave us a succinct list of the latest versions of
the best performing algorithms. The rest of the list
(comprising of weaker algorithms) was skipped over
except for any EA-based program.
At the time of this study, the number one bot
on the leader board was Tweak the best. This bot
uses multiple strategies and meta-strategies with a
Markov Model to make its prediction. The next bot to
ECTA 2019 - 11th International Conference on Evolutionary Computation Theory and Applications
206