Tuesday, August 26, 2008

Timeline

Checklist for building an evaluation function

Material values -- completed.
Piece-square tables -- by early Sep
Hostages -- by late Sep
Rabbit advancement, goal threats --by early Oct
Trap control -- by late Oct
Blockades, pins -- by early Nov
Mobility -- by late Nov
Relative positioning -- by early Dec

Testing and refinement -- next year

Friday, August 8, 2008

More Blunders

First tournament game against BilalQ. Blundered twice, crippled by camel frame most of the game. Right after winning his camel i blundered my horse, then the site died on his turn. Win on time, very bad way to end the game.
The Arimaa community is very close. The reason why there are few active games at a time is because the others would watch (especially human-human games) and comment.

Tuesday, July 29, 2008

Preliminary Evaluation Function

Ok, i'll show i did some "real work" instead of just playing. (Playing is part of our research.)
Drawing on my understanding, i'll first impose a relative material evaluation system. Evaluation rubrics (ha, ha) consists of relative strength and (negative) relative weakness.
Obviously, for example, when all the camels and horses are gone than either the dog is elevated to relative camel strength or the elephant is downgraded to relative horse strength.

Complete material values (penalty for each next-strongest enemy piece captured)

Elephant: 20 (-5 M, -2 H1, -3 H2, -1 D1, -2.5 D2, -0.5 C1, -1 C2, -0.2 for all R)
Camel: 12 (-1 H1, -2 H2, -0.5 D1, -2 D2, -0.5 C1, -2 C2, -0.1 for all R)
Horse: 8 x 2 (-1 D1, -1.5 D2, -0.5 C1, -1 C2, -0.1 for all R)
Dog: 5 x 2 (-0.5 C1, -1 C2, -0.1 for all R)
Cat: 3 x 2 (-0.1 for all R)
Rabbit: 1, 1.5, 2.5, 3.5, 5, 7, 10, 100 for each successive rabbit

Next up is to compare these against the FAME and DAPE empirical differences.

Monday, July 28, 2008

General comments

On the whole, Arimaa becomes very intuitive. My current way of playing is search depth 1 turn: what am i going to do this turn? At the most i check if i could have blundered away any pieces. In chess, it is possible to calculate a few moves ahead because of forced moves, and there are no major changes to the board each move. In fact, i think i am playing Arimaa quite reasonably is because i trained myself in blitz on FICS -- don't think, just move what you think is good. Normally if i see a bishop for pawn exchange that may crack the enemy's castled position i would just whack, partially since the opponent is human and that may provoke a psychological awakening. Using the shock element for me in chess is best when the guy has pawnstormed me and i just park my king in the corner behind his pawn. Then he would be wasting time thinking of how to crack my "hostage shield", and i can attack elsewhere.
Now, back to the point.
I find Arimaa a lot more simulative of war than chess in terms of strategy and positioning. It presents a problem of how to allocate resources better and organise units effectively. Blockades, hostages, advancement, breaks, combined attacks, siege defence, etc are all applicable for war, instead of pins, skewers, forks, point-pressure and open threats in chess.
Programmes now play Arimaa very predictably, and that is where they fail. Humans can learn and adapt their style to counter the bots. For example, i realised that bot_Aamira liked to steamroller (my original plan when i first learnt Arimaa). So i tried to disrupt the formation in the opening by attacking with my lone elephant, trying to force the bot's camel and elephant to the same side and sticking them there. In the midgame the bot would put much pressure on my home traps, so usually, if i don't blunder, i would defend until i find a hole in the flank to push through a rabbit.
Perhaps because of this, bot_Bomb has always owned the computer championships even though it was hardly modified after 2005 (maybe Fotland lost interest). Its style is more varied, and actually offered an elephant sacrifice/ blockade to beat naveed in this year's challenge match.

Blunders....

I blunder too much )=
I believe i'm stronger than bot_Aamira2006P2, but my current record is 4-5.
I'm trying to get used to this bot's aggressiveness. Usually, if i can defend properly and not blunder, the bot will overcommit and try to cover up by jamming the board with pieces. Then i can just force a wing rabbit through.
I won without any piece being removed from the board once.
Like Kasparov said, playing computers is a walking through a minefield.

UPDATE: I'm now 7-7 against bot_Aamira2006P2. I keep failing to see goal threats.

Thursday, July 24, 2008

Update

I just thought of putting up some stuff, so:

Finished proposal last Sunday, 20th July. (OMBWTFBBQ). Took a bit of Thursday, Friday night, most of Saturday and some of Sunday. Blame me.... everything except lit review was done by Friday night, then i tried to go and understand the computer algorithms, all those heuristics stuff.... at least now i got idea what is alpha-beta, history heuristics and killer move, but still don't understand transposition tables, zobrist keys.

I only get to play occasionally, and my current streak is Arimaazilla +2, Loc2005P2 +3, Loc2006P2 +1. Beat Loc2005P2 twice in the library this afternoon 24 July. I still need to improve in the opening and defending. I also often miss forced goals and blunder a lot (currently, this level bots are still weak enough so i still can do last-ditch rescues).

I do not know how Kenneth is doing, i presume he is learning matlab and python for a start.

UPDATE: I crossed the 1700 rating mark. Current record: Loc2005P2 +4, Loc2006P2 +5. Was on 9-game winning streak until blundered and lost to Aamira2006P2....

Tuesday, July 15, 2008

Journal Reading

Today, we started reading a 77 page thesis written by Christ-Jan Cox under Prof. Dr. H.J. van den Herik, Dr. ir. J.W.H.M. Uiterwijk, Dr. ir. P.H.M. Spronck, Dr. ir. H.H.L.M. Donkers of the University Maastricht.

Also, over the weekend, Perry played 4 successive wins against Bomb2005P1, proving that a very inexperienced player can actually easily beat a not so strong bot.