Added new sample AI - "vixen"
authorSam Moore <matches@ucc.asn.au>
Tue, 20 Dec 2011 10:41:29 +0000 (18:41 +0800)
committerSam Moore <matches@ucc.asn.au>
Tue, 20 Dec 2011 10:41:29 +0000 (18:41 +0800)
commit3d01a5643ce96271f2b7db1cdcc9cafb189667f9
treeb4e423d1cb41e3865cdc6e7ce30b9a7c957437f5
parent6e5327743543d606ff88e4a8228989460f8a5a30
Added new sample AI - "vixen"

I was going to create a highly advanced super AI and not reveal the source code. Then I would win the competition!
But, turns out it is just as shit as all the others, so I added it to git. Also I made the competition, so that seems fairly self defeating.

"vixen" (where do I get these names? Well, a fox is smart, and a vixen is a fox. Therefore, "vixen" is a smart AI. Q.E.D)

I basically copied asmodeus' "optimised score" and path finding technique, but I changed the way scores are calculated to include probability.
At one point I was adding the scores for paths that began with the same direction. This seemed like a brilliant idea. It was not.

After all this, vixen beats asmodeus some of the time, I haven't tested how often, but each AI has beaten the other at least a few times.
Most of the time vixen loses seems to be due to losing the marshal or general on bombs. Its pretty good at countering the spy.

It turns out writing a decent stratego AI is harder than I thought :P

In other news, in the manager program, I removed the automatic hiding of the AI's pieces when a human is playing, because its useless and annoying.
progcomp/agents/basic_python/basic_python.py
progcomp/agents/vixen/asmodeus.py [new symlink]
progcomp/agents/vixen/basic_python.py [new symlink]
progcomp/agents/vixen/info [new file with mode: 0644]
progcomp/agents/vixen/path.py [new symlink]
progcomp/agents/vixen/vixen.py [new file with mode: 0755]
progcomp/judge/manager/game.cpp

UCC git Repository :: git.ucc.asn.au