I've written the contest referee program and a couple sample agents. I can't
post the referee program until after the contest ends, since it would provide
a partial solution to the problem. However, I can be available tomorrow from
noon to 10pm. For any submission received between now and 10 tomorrow night,
I will build your agent and play it against itself and send you the transcript
of the match.
Please complete the registration process before submitting anything.
Below are two sample transcripts.
Good luck,
David
--
#t indicates the player has declared the move final.
#f otherwise.
Match 1
receiving move: player1
received move: player1 ((1 2) (3 2) #f)
writing move: player2 ((1 2) (3 2))
written move: player2 ((1 2) (3 2))
receiving move: player2
received move: player2 ((8 7) (2 4) #f)
game declared
winner: player1
loser: player2
reason: illegal move made
winner's pieces ((1 3) (1 4) (1 5) (1 6) (1 7) (8 2) (8 3) (8 4) (8 5) (8 6)
(8 7))
loser's pieces ((2 1) (3 1) (4 1) (5 1) (6 1) (7 1) (2 8) (3 8) (4 8) (5 8) (6
8) (7 8))
Match 2
receiving move: player1
received move: player1 ((1 2) (3 2) #f)
writing move: player2 ((1 2) (3 2))
written move: player2 ((1 2) (3 2))
receiving move: player2
received move: player2 ((2 1) (2 3) #f)
writing move: player1 ((2 1) (2 3))
written move: player1 ((2 1) (2 3))
receiving move: player1
received move: player1 ((1 3) (3 3) #f)
writing move: player2 ((1 3) (3 3))
written move: player2 ((1 3) (3 3))
receiving move: player2
received move: player2 ((3 1) (3 3) #f)
writing move: player1 ((3 1) (3 3))
written move: player1 ((3 1) (3 3))
receiving move: player1
received move: player1 ((1 4) (3 4) #f)
writing move: player2 ((1 4) (3 4))
written move: player2 ((1 4) (3 4))
receiving move: player2
received move: player2 ((4 1) (4 3) #f)
writing move: player1 ((4 1) (4 3))
written move: player1 ((4 1) (4 3))
receiving move: player1
received move: player1 ((1 5) (1 2) #f)
writing move: player2 ((1 5) (1 2))
written move: player2 ((1 5) (1 2))
receiving move: player2
received move: player2 ((5 1) (2 1) #f)
writing move: player1 ((5 1) (2 1))
written move: player1 ((5 1) (2 1))
receiving move: player1
received move: player1 ((1 6) (1 4) #f)
writing move: player2 ((1 6) (1 4))
written move: player2 ((1 6) (1 4))
receiving move: player2
received move: player2 ((6 1) (4 1) #f)
writing move: player1 ((6 1) (4 1))
written move: player1 ((6 1) (4 1))
receiving move: player1
received move: player1 ((1 7) (1 6) #f)
writing move: player2 ((1 7) (1 6))
written move: player2 ((1 7) (1 6))
receiving move: player2
received move: player2 ((7 1) (6 1) #f)
writing move: player1 ((7 1) (6 1))
written move: player1 ((7 1) (6 1))
receiving move: player1
received move: player1 ((8 2) (7 2) #f)
writing move: player2 ((8 2) (7 2))
written move: player2 ((8 2) (7 2))
receiving move: player2
received move: player2 ((2 8) (2 7) #f)
writing move: player1 ((2 8) (2 7))
written move: player1 ((2 8) (2 7))
receiving move: player1
received move: player1 ((8 3) (7 3) #f)
writing move: player2 ((8 3) (7 3))
written move: player2 ((8 3) (7 3))
receiving move: player2
received move: player2 ((3 8) (3 7) #f)
writing move: player1 ((3 8) (3 7))
written move: player1 ((3 8) (3 7))
receiving move: player1
received move: player1 ((8 4) (7 4) #f)
writing move: player2 ((8 4) (7 4))
written move: player2 ((8 4) (7 4))
receiving move: player2
received move: player2 ((4 8) (4 7) #f)
writing move: player1 ((4 8) (4 7))
written move: player1 ((4 8) (4 7))
receiving move: player1
received move: player1 ((8 5) (7 5) #f)
writing move: player2 ((8 5) (7 5))
written move: player2 ((8 5) (7 5))
receiving move: player2
received move: player2 ((5 8) (2 8) #f)
writing move: player1 ((5 8) (2 8))
written move: player1 ((5 8) (2 8))
receiving move: player1
received move: player1 ((8 6) (7 6) #t)
game declared
winner: player1
loser: player2
reason: move declared final and was terminal
winner's pieces ((8 7))
loser's pieces ((6 8) (7 8))
|