Shortest Chess Games between two Chess Programs

Discussion of anything and everything relating to chess playing software and machines.

Moderator: Ras

User avatar
Spacious_Mind
Posts: 317
Joined: Mon Nov 02, 2009 12:05 am
Location: Alabama

Shortest Chess Games between two Chess Programs

Post by Spacious_Mind »

In the Computer Chess Club: Programming and Technical Discussions Forum someone posted today a game where the program was checkmated in 8 moves.

This made me go back through my collection of games played between programs to see which were the shortest matches played between two computer programs.

The shortest that I have experienced playing two programs is a checkmate for Black in 6 moves:

[Event "U1400 Green Stage 1 Group N"]
[Site "Active Chess 0:30/1"]
[Date "2008.05.31"]
[Round "5"]
[White "Systema Computachess, LV 8."]
[Black "Excalibur Viper, LV C5."]
[Result "0-1"]
[ECO "C40"]
[WhiteElo "1200"]
[BlackElo "1300"]
[Annotator "Mind,Spacious"]
[PlyCount "12"]
[EventDate "2008.??.??"]
[EventType "tourn (rapid)"]
[EventRounds "18"]
[EventCountry "USA"]
[EventCategory "6"]

{Systema Computachess has no book} 1. e4 e5 2. Nf3 {Excalibur Viper out of book
} d5 3. Nc3 dxe4 4. Nxe5 Qd4 5. f4 Bc5 6. Nb5 Qf2# 0-1

[d]rnb1k1nr/ppp2ppp/8/1Nb1N3/4pP2/8/PPPP1qPP/R1BQKB1R w KQkq - 0 7

Systema Computachess played at it's maximum level with takes about 20 seconds to move. It ranks amongst one of the weakest computers ever sold to the public :)

As a win for White the shortest match I have experienced is a checkmate game in 7:

[Event "Commodore 64 Group A"]
[Site "Hoover, Alabama, USA 30:1"]
[Date "2009.02.28"]
[Round "1"]
[White "Radica Model 1101 CS1, LV C5."]
[Black "CBM C64 Master Chess, LV 30S."]
[Result "1-0"]
[ECO "B07"]
[WhiteElo "1300"]
[BlackElo "1200"]
[Annotator "Mind,Spacious"]
[PlyCount "13"]
[EventDate "2009.??.??"]
[EventType "match (rapid)"]
[EventRounds "2"]
[EventCountry "USA"]

1. d4 d6 2. e4 Kd7 3. Qg4+ Kc6 4. d5+ Kc5 5. Be3+ Kb4 6. Qe2 Nf6 7. Qb5# 1-0

[d]rnbq1b1r/ppp1pppp/3p1n2/1Q1P4/1k2P3/4B3/PPP2PPP/RN2KBNR b KQ - 0 7

This game is really amusing to see Black's King moves :P It is amazing that the Software Company Mastertronics actually sold this program for the Commodore 64 at British Pounds 1.99 in the 80's. Master Chess was easily the worst Commercial Program sold for the Commodore 64.

I would love to see some other gems from you all. From my experiences so far the shortest checkmates seem to be more likely wins for Black than for White in games between chess programs.

Has anyone else played games between two programs with checkmates in less moves then shown above?

Best regards

Nick
UncombedCoconut
Posts: 319
Joined: Fri Dec 18, 2009 11:40 am
Location: Naperville, IL

Re: Shortest Chess Games between two Chess Programs

Post by UncombedCoconut »

Spacious_Mind wrote:This game is really amusing to see Black's King moves :P
It has the same playing style as my shell script. :P But I guess it could have searched twice as deep without seeing that mate.

The topic makes me wonder how quickly (in theory) a fixed-depth blind searcher can be mated in the opening...
Carlos777
Posts: 1937
Joined: Sun Dec 13, 2009 6:09 pm

Re: Shortest Chess Games between two Chess Programs

Post by Carlos777 »

Maybe it is not what you are looking for. Anyway, all the games than ended with mate in 7 or less moves in my Battle of the Forgotten tournament:

http://talkchess.com/forum/viewtopic.php?t=31754

[Event "BotF"]
[Site "HOME-56F4A7E489"]
[Date "2010.01.25"]
[Round "1"]
[White "Hoplite 2.1.1dc"]
[Black "Brutus RND"]
[Result "1-0"]
[ECO "A40"]
[WhiteElo "2200"]
[BlackElo "2200"]
[PlyCount "9"]
[EventDate "2010.??.??"]
[TimeControl "60+1"]

1. d4 f6 {[%eval -14,12] [%emt 0:00:02]} 2. e4 {[%eval 64,5] [%emt 0:00:03]} e5
{[%eval -67,10] [%emt 0:00:02]} 3. dxe5 {[%eval 87,6] [%emt 0:00:01]} Kf7 {
[%eval -82,10] [%emt 0:00:02]} 4. Bc4+ {[%eval 239,5] [%emt 0:00:02]} Kg6 {
[%eval -201,9] [%emt 0:00:02]} 5. Qg4# {[%eval -32767,2] [%emt 0:00:00]} 1-0

[Event "BotF"]
[Site "HOME-56F4A7E489"]
[Date "2010.01.25"]
[Round "1"]
[White "Brutus RND"]
[Black "Hoichess 0103 ja"]
[Result "0-1"]
[ECO "A00"]
[WhiteElo "2200"]
[BlackElo "2200"]
[PlyCount "8"]
[EventDate "2010.??.??"]
[TimeControl "60+1"]

1. h3 {[%eval 25,12] [%emt 0:00:02]} d5 2. b4 {[%eval -2,12] [%emt 0:00:02]} e5
{[%eval 125,8] [%emt 0:00:04]} 3. f3 {[%eval -50,10] [%emt 0:00:02]} Qh4+ {
[%eval 32766,3] [%emt 0:00:00]} 4. g3 Qxg3# {[%eval -32767,1] [%emt 0:00:00]}
0-1

[Event "BotF"]
[Site "HOME-56F4A7E489"]
[Date "2010.01.25"]
[Round "1"]
[White "Sachy 0.2.01"]
[Black "Brutus RND"]
[Result "1-0"]
[ECO "B00"]
[WhiteElo "2200"]
[BlackElo "2200"]
[PlyCount "9"]
[EventDate "2010.??.??"]
[TimeControl "60+1"]

1. e4 g5 {[%eval -18,11] [%emt 0:00:02]} 2. Qf3 b5 {[%eval -6,11] [%emt 0:00:
02]} 3. Qb3 f5 {[%eval -75,11] [%emt 0:00:02]} 4. Qf3 fxe4 {[%eval -142,11]
[%emt 0:00:02]} 5. Qh5# 1-0

[Event "BotF"]
[Site "HOME-56F4A7E489"]
[Date "2010.01.26"]
[Round "1"]
[White "Chessv 0.94"]
[Black "Brutus RND"]
[Result "1-0"]
[ECO "A04"]
[WhiteElo "2200"]
[BlackElo "2200"]
[PlyCount "13"]
[EventDate "2010.??.??"]
[TimeControl "60+1"]

1. g3 f5 {[%eval 20,11] [%emt 0:00:02]} 2. Nf3 {[%eval 52,7] [%emt 0:00:01]}
Kf7 {[%eval -8,11] [%emt 0:00:02]} 3. Bh3 {[%eval 69,6] [%emt 0:00:01]} f4 {
[%eval -45,11] [%emt 0:00:02]} 4. gxf4 {[%eval 132,6] [%emt 0:00:00]} h5 {
[%eval -115,11] [%emt 0:00:02]} 5. Ne5+ {[%eval 212,8] [%emt 0:00:01]} Ke8 {
[%eval -277,11] [%emt 0:00:02]} 6. Bf5 {[%eval 265,7] [%emt 0:00:00]} a6 {
[%eval -314,12] [%emt 0:00:02]} 7. Bg6# {[%eval 31900,24] [%emt 0:00:00]} 1-0

[Event "BotF"]
[Site "HOME-56F4A7E489"]
[Date "2010.01.26"]
[Round "2"]
[White "Brutus RND"]
[Black "ArabianKnight 0.88"]
[Result "0-1"]
[ECO "D00"]
[WhiteElo "2200"]
[BlackElo "2200"]
[PlyCount "14"]
[EventDate "2010.??.??"]
[TimeControl "60+1"]

1. d4 {[%eval 25,12] [%emt 0:00:02]} Nf6 2. Be3 {[%eval 16,11] [%emt 0:00:02]}
d5 3. a3 {[%eval -13,11] [%emt 0:00:02]} e6 4. c3 {[%eval -12,10] [%emt 0:00:
02]} Bd6 5. Bd2 {[%eval -59,10] [%emt 0:00:02]} Ne4 6. Bg5 {[%eval -70,9]
[%emt 0:00:02]} Qxg5 7. Qc1 {[%eval -392,10] [%emt 0:00:02]} Qxc1# 0-1

[Event "BotF"]
[Site "HOME-56F4A7E489"]
[Date "2010.01.26"]
[Round "2"]
[White "Kace 0.82 ja"]
[Black "Brutus RND"]
[Result "1-0"]
[ECO "B00"]
[WhiteElo "2200"]
[BlackElo "2200"]
[PlyCount "9"]
[EventDate "2010.??.??"]
[TimeControl "60+1"]

1. e4 Na6 {[%eval -21,9] [%emt 0:00:02]} 2. Bc4 {[%eval 5,5] [%emt 0:00:01]}
Nc5 {[%eval -21,9] [%emt 0:00:02]} 3. Qh5 {[%eval -82,5] [%emt 0:00:02]} Ne6 {
[%eval 7,10] [%emt 0:00:02]} 4. Bxe6 {[%eval 305,4] [%emt 0:00:01]} h6 {[%eval
-26,11] [%emt 0:00:02]} 5. Qxf7# {[%eval 32760,6] [%emt 0:00:01]} 1-0

[Event "BotF"]
[Site "HOME-56F4A7E489"]
[Date "2010.01.26"]
[Round "2"]
[White "Brutus RND"]
[Black "JChess 1.0"]
[Result "0-1"]
[ECO "A00"]
[WhiteElo "2200"]
[BlackElo "2200"]
[PlyCount "14"]
[EventDate "2010.??.??"]
[TimeControl "60+1"]

1. a4 {[%eval 25,11] [%emt 0:00:02]} Nf6 {[%eval -2,4] [%emt 0:00:01]} 2. g4 {
[%eval -4,11] [%emt 0:00:02]} Nxg4 {[%eval 84,4] [%emt 0:00:01]} 3. Na3 {
[%eval -103,10] [%emt 0:00:02]} d5 {[%eval 106,4] [%emt 0:00:01]} 4. b3 {
[%eval -150,10] [%emt 0:00:02]} e5 {[%eval 126,4] [%emt 0:00:01]} 5. c3 {
[%eval -209,8] [%emt 0:00:02]} Qh4 {[%eval 154,3] [%emt 0:00:01]} 6. Qc2 {
[%eval -376,9] [%emt 0:00:02]} Qxf2+ {[%eval 31864,2] [%emt 0:00:00]} 7. Kd1
Qxf1# {[%eval 31866,1] [%emt 0:00:00]} 0-1

[Event "BotF"]
[Site "HOME-56F4A7E489"]
[Date "2010.01.26"]
[Round "2"]
[White "Brutus RND"]
[Black "IACH 0.56z"]
[Result "0-1"]
[ECO "A03"]
[WhiteElo "2200"]
[BlackElo "2200"]
[PlyCount "8"]
[EventDate "2010.??.??"]
[TimeControl "60+1"]

1. h3 {[%eval 25,11] [%emt 0:00:02]} e5 {[%eval 6,10] [%emt 0:00:01]} 2. g4 {
[%eval -22,11] [%emt 0:00:02]} Nc6 {[%eval 26,9] [%emt 0:00:01]} 3. Nc3 {
[%eval -44,9] [%emt 0:00:02]} d5 {[%eval 22,10] [%emt 0:00:01]} 4. f4 {[%eval
-56,9] [%emt 0:00:02]} Qh4# {[%eval -32767,64] [%emt 0:00:01]} 0-1

[Event "BotF3"]
[Site "HOME-56F4A7E489"]
[Date "2010.01.28"]
[Round "1"]
[White "Brutus RND"]
[Black "Pierre 1.7 ja"]
[Result "0-1"]
[ECO "A00"]
[WhiteElo "2200"]
[BlackElo "2200"]
[PlyCount "10"]
[EventDate "2010.??.??"]
[TimeControl "60+1"]

1. f3 {[%eval 25,12] [%emt 0:00:02]} e5 {[%eval 35,6] [%emt 0:00:03]} 2. h4 {
[%eval -32,11] [%emt 0:00:02]} Be7 {[%eval 74,6] [%emt 0:00:02]} 3. b4 {[%eval
-60,13] [%emt 0:00:02]} Bxh4+ {[%eval 32354,5] [%emt 0:00:00]} 4. Rxh4 {[%eval
-31900,3] [%emt 0:00:00]} Qxh4+ {[%eval 32692,3] [%emt 0:00:00]} 5. g3 Qxg3# {
[%eval 32238,1] [%emt 0:00:00]} 0-1

[Event "BotF3"]
[Site "HOME-56F4A7E489"]
[Date "2010.01.29"]
[Round "1"]
[White "Brutus RND"]
[Black "Marquis 1.6"]
[Result "0-1"]
[ECO "A10"]
[WhiteElo "2200"]
[BlackElo "2200"]
[PlyCount "14"]
[EventDate "2010.??.??"]
[TimeControl "60+1"]

1. Na3 {[%eval 25,12] [%emt 0:00:02]} e6 2. d3 {[%eval -19,11] [%emt 0:00:02]}
Qf6 3. c4 {[%eval 25,11] [%emt 0:00:02]} Bxa3 4. Qd2 {[%eval -302,12] [%emt 0:
00:02]} Nc6 5. Qc2 {[%eval -362,10] [%emt 0:00:02]} Bb4+ 6. Kd1 {[%eval -338,
10] [%emt 0:00:02]} Qxf2 7. Rb1 {[%eval -487,11] [%emt 0:00:02]} Qxf1# 0-1

[Event "BotF3"]
[Site "HOME-56F4A7E489"]
[Date "2010.01.29"]
[Round "1"]
[White "Marginal 0.1"]
[Black "Brutus RND"]
[Result "1-0"]
[ECO "A43"]
[WhiteElo "2200"]
[BlackElo "2200"]
[PlyCount "11"]
[EventDate "2010.??.??"]
[TimeControl "60+1"]

1. d4 f6 {[%eval -14,12] [%emt 0:00:02]} 2. e4 {[%eval 58,6] [%emt 0:00:04]} a5
{[%eval -67,10] [%emt 0:00:02]} 3. Be3 {[%eval 98,5] [%emt 0:00:03]} c5 {
[%eval -87,11] [%emt 0:00:02]} 4. dxc5 {[%eval 175,6] [%emt 0:00:04]} h6 {
[%eval -149,11] [%emt 0:00:02]} 5. Qh5+ {[%eval 32764,3] [%emt 0:00:00]} g6 6.
Qxg6# {[%eval 32766,1] [%emt 0:00:00]} 1-0

[Event "BotF3"]
[Site "HOME-56F4A7E489"]
[Date "2010.01.30"]
[Round "1"]
[White "ALChess1.5b"]
[Black "Brutus RND"]
[Result "1-0"]
[ECO "A16"]
[WhiteElo "2200"]
[BlackElo "2200"]
[PlyCount "13"]
[EventDate "2010.??.??"]
[TimeControl "60+1"]

1. c4 Nf6 {[%eval 5,12] [%emt 0:00:02]} 2. Nc3 Nh5 {[%eval 7,12] [%emt 0:00:02]
} 3. e4 {[%eval 39,6] [%emt 0:00:02]} g6 {[%eval -69,12] [%emt 0:00:02]} 4. d4
{[%eval 21,6] [%emt 0:00:02]} f6 {[%eval -74,11] [%emt 0:00:02]} 5. Be2 {
[%eval 71,6] [%emt 0:00:02]} Ng3 {[%eval -117,12] [%emt 0:00:02]} 6. hxg3 {
[%eval 354,6] [%emt 0:00:02]} g5 {[%eval -401,11] [%emt 0:00:02]} 7. Bh5# {
[%eval 32766,4] [%emt 0:00:00]} 1-0

[Event "BotF3"]
[Site "HOME-56F4A7E489"]
[Date "2010.01.30"]
[Round "1"]
[White "Brutus RND"]
[Black "IQ23 0.03"]
[Result "0-1"]
[ECO "A45"]
[WhiteElo "2200"]
[BlackElo "2200"]
[PlyCount "14"]
[EventDate "2010.??.??"]
[TimeControl "60+1"]

1. a4 {[%eval 25,12] [%emt 0:00:02]} Nf6 2. c3 {[%eval -11,12] [%emt 0:00:02]}
e5 {[%eval 42,7] [%emt 0:00:02]} 3. g3 {[%eval -34,11] [%emt 0:00:02]} Be7 {
[%eval 63,7] [%emt 0:00:03]} 4. d4 {[%eval -33,11] [%emt 0:00:02]} exd4 {
[%eval 68,7] [%emt 0:00:02]} 5. Ra2 {[%eval -30,12] [%emt 0:00:02]} dxc3 {
[%eval 170,7] [%emt 0:00:03]} 6. Qb3 {[%eval -150,11] [%emt 0:00:02]} cxb2 {
[%eval 335,7] [%emt 0:00:03]} 7. Qb5 {[%eval -228,10] [%emt 0:00:02]} bxc1=Q# {
[%eval 9997,7] [%emt 0:00:01]} 0-1

[Event "BotF3"]
[Site "HOME-56F4A7E489"]
[Date "2010.01.31"]
[Round "2"]
[White "Pyotr Am 0.6"]
[Black "Brutus RND"]
[Result "1-0"]
[ECO "B00"]
[WhiteElo "2200"]
[BlackElo "2200"]
[PlyCount "11"]
[EventDate "2010.??.??"]
[TimeControl "60+1"]

1. e4 f5 {[%eval -18,11] [%emt 0:00:02]} 2. exf5 d5 {[%eval -85,11] [%emt 0:00:
02]} 3. Bb5+ c6 {[%eval -114,13] [%emt 0:00:02]} 4. Qh5+ g6 {[%eval -109,13]
[%emt 0:00:02]} 5. fxg6 Bd7 {[%eval -264,12] [%emt 0:00:02]} 6. g7# 1-0

[Event "BotF3"]
[Site "HOME-56F4A7E489"]
[Date "2010.01.31"]
[Round "2"]
[White "Brutus RND"]
[Black "Philemon 0.5"]
[Result "0-1"]
[ECO "A03"]
[WhiteElo "2200"]
[BlackElo "2200"]
[PlyCount "8"]
[EventDate "2010.??.??"]
[TimeControl "60+1"]

1. f4 {[%eval 25,12] [%emt 0:00:02]} d5 2. h3 {[%eval -7,12] [%emt 0:00:02]} e5
{[%eval 144,6] [%emt 0:00:01]} 3. c4 {[%eval -186,10] [%emt 0:00:02]} Qh4+ {
[%eval 32764,5] [%emt 0:00:01]} 4. g3 Qxg3# {[%eval 32766,2] [%emt 0:00:00]}
0-1

[Event "BotF3"]
[Site "HOME-56F4A7E489"]
[Date "2010.02.03"]
[Round "2"]
[White "Brutus RND"]
[Black "Damas9"]
[Result "0-1"]
[ECO "A00"]
[WhiteElo "2200"]
[BlackElo "2200"]
[PlyCount "14"]
[EventDate "2010.??.??"]
[TimeControl "60+1"]

1. a4 {[%eval 25,12] [%emt 0:00:02]} d5 {[%eval -4,6] [%emt 0:00:02]} 2. e4 {
[%eval -8,12] [%emt 0:00:02]} dxe4 {[%eval 76,6] [%emt 0:00:02]} 3. Nc3 {
[%eval -67,11] [%emt 0:00:02]} Nf6 {[%eval 72,5] [%emt 0:00:02]} 4. d3 {[%eval
-59,11] [%emt 0:00:02]} exd3 {[%eval 82,6] [%emt 0:00:02]} 5. Na2 {[%eval -72,
10] [%emt 0:00:02]} dxc2 {[%eval 218,6] [%emt 0:00:02]} 6. Qd7+ {[%eval -229,
10] [%emt 0:00:02]} Qxd7 {[%eval 1181,5] [%emt 0:00:02]} 7. Nb4 {[%eval -1241,
11] [%emt 0:00:02]} Qd1# {[%eval -32767,2] [%emt 0:00:00]} 0-1

[Event "BotF3"]
[Site "HOME-56F4A7E489"]
[Date "2010.02.03"]
[Round "2"]
[White "Brutus RND"]
[Black "Frittle 0.5"]
[Result "0-1"]
[ECO "A00"]
[WhiteElo "2200"]
[BlackElo "2200"]
[PlyCount "12"]
[EventDate "2010.??.??"]
[TimeControl "60+1"]

1. a3 {[%eval 25,12] [%emt 0:00:02]} d5 2. b4 {[%eval -6,12] [%emt 0:00:02]} e6
{[%eval 125,5] [%emt 0:00:00]} 3. g4 {[%eval -31,11] [%emt 0:00:02]} Nf6 {
[%eval 195,5] [%emt 0:00:02]} 4. Bb2 {[%eval -55,10] [%emt 0:00:02]} Nxg4 {
[%eval 310,5] [%emt 0:00:01]} 5. Bxg7 {[%eval -114,11] [%emt 0:00:02]} Bxg7 {
[%eval 525,5] [%emt 0:00:00]} 6. f3 {[%eval -988,11] [%emt 0:00:02]} Qh4# {
[%eval 32668,2] [%emt 0:00:00]} 0-1

[Event "BotF3"]
[Site "HOME-56F4A7E489"]
[Date "2010.02.04"]
[Round "2"]
[White "Fimbulwinter 5.02"]
[Black "Brutus RND"]
[Result "1-0"]
[ECO "A04"]
[WhiteElo "2200"]
[BlackElo "2200"]
[PlyCount "7"]
[EventDate "2010.??.??"]
[TimeControl "60+1"]

1. e4 g5 {[%eval -18,11] [%emt 0:00:02]} 2. Nf3 {[%eval 39,5] [%emt 0:00:02]}
c5 {[%eval -39,10] [%emt 0:00:02]} 3. Nxg5 {[%eval 170,5] [%emt 0:00:01]} f5 {
[%eval -157,10] [%emt 0:00:02]} 4. Qh5# {[%eval -32767,6] [%emt 0:00:01]} 1-0

[Event "BotF3"]
[Site "HOME-56F4A7E489"]
[Date "2010.01.28"]
[Round "1"]
[White "Brutus RND"]
[Black "Qutechess 1.01t rev3 ja"]
[Result "0-1"]
[ECO "A00"]
[WhiteElo "2200"]
[BlackElo "2200"]
[PlyCount "8"]
[EventDate "2010.??.??"]
[TimeControl "60+1"]

1. c4 {[%eval 25,12] [%emt 0:00:02]} Nf6 2. g4 {[%eval 2,11] [%emt 0:00:02]}
Nxg4 {[%eval 99,5] [%emt 0:00:01]} 3. f4 {[%eval -115,11] [%emt 0:00:02]} e5 {
[%eval 202,4] [%emt 0:00:01]} 4. Na3 {[%eval -251,10] [%emt 0:00:02]} Qh4# {
[%eval -32767,2] [%emt 0:00:00]} 0-1

As you may notice, the constant in these games is Brutus RND, a random mover created by the same author of Brutus, Stephan Vermeire. Kind of cheating. :D

Anyway, there is one game where Brutus RND was not in:

[Event "BotF3"]
[Site "HOME-56F4A7E489"]
[Date "2010.02.01"]
[Round "2"]
[White "Omar 3.1"]
[Black "Needle 0.531"]
[Result "0-1"]
[ECO "C33"]
[WhiteElo "2200"]
[BlackElo "2200"]
[PlyCount "12"]
[EventDate "2010.??.??"]
[TimeControl "60+1"]

1. e4 e5 2. f4 exf4 {[%eval 43,6] [%emt 0:00:02]} 3. Bc4 Qh4+ {[%eval 84,6]
[%emt 0:00:01]} 4. Kf1 Nf6 {[%eval 65,6] [%emt 0:00:01]} 5. e5 Ng4 {[%eval 210,
6] [%emt 0:00:01]} 6. Nf3 Qf2# {[%eval -32767,2] [%emt 0:00:00]} 0-1

Carlos.
User avatar
Spacious_Mind
Posts: 317
Joined: Mon Nov 02, 2009 12:05 am
Location: Alabama

Re: Shortest Chess Games between two Chess Programs

Post by Spacious_Mind »

Carlos777 wrote:Maybe it is not what you are looking for. Anyway, all the games than ended with mate in 7 or less moves in my Battle of the Forgotten tournament:
Hi Carlos,

That is too funny :P I thought dedicateds had some of the weakest programs ever created!

I might just have to play Brutus against some of the weakest dedicateds to see who is the BEST !! :P

Thanks and best regards

Nick
User avatar
hgm
Posts: 28387
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: Shortest Chess Games between two Chess Programs

Post by hgm »

Note that this is Brutus RND, a derivative of Brutus that implements a random mover. It just randomly selects from all legal moves, with equal probability.

That engines without search sometimes also have the upper hand, is shown in this game of NEG 0.3d (a program that plays only by SEE value and piece-square tables, does not know what checkmate is, but has a built-in preference for checking moves when it has to choose between moves of equal SEE value):

Code: Select all

[Event "ChessWar XIII Promotion 40m/20'"]
[Site "DELL-E6600"]
[Date "2008.10.05"]
[Round "6.95"]
[White "NEG 0.3d"]
[Black "Eden2"]
[Result "1-0"]
[WhiteElo "970"]
[BlackElo "874"]
[ECO "A00"]
[PlyCount "11"]
[EventDate "2008.??.??"]
[Annotator "2. +0.06"]

1. Nc3 f6 2. e3 {+0.06/11} a6 3. Qh5+ {+0.15/10} g6 4. Qe2 {+0.09/9} h6 5.
d4 {+0.34/10} g5 6. Qh5# {-8.22/9}
{
Xboard adjudication: Checkmate
}
1-0
[d]rnbqkbnr/1pppp3/p4p1p/6pQ/3P4/2N1P3/PPP2PPP/R1B1KBNR b
Carlos777
Posts: 1937
Joined: Sun Dec 13, 2009 6:09 pm

Re: Shortest Chess Games between two Chess Programs

Post by Carlos777 »

In 156 games, Brutus RND (just a random mover as H.G. Muller pointed out, the real Brutus 8.05 is a strong chess engine) won 4, drew 2 and lost 150 games. His wins were by illegal moves made by his opponents (Pos and Omar). Here his 2 draws:

[Event "BotF2"]
[Site "HOME-56F4A7E489"]
[Date "2010.01.27"]
[Round "2"]
[White "Geko 0.43"]
[Black "Brutus RND"]
[Result "1/2-1/2"]
[ECO "A00"]
[WhiteElo "2200"]
[BlackElo "2200"]
[PlyCount "47"]
[EventDate "2010.??.??"]
[TimeControl "60+1"]

1. e3 Na6 {[%eval -7,11] [%emt 0:00:02]} 2. Qf3 f6 {[%eval 41,12] [%emt 0:00:
02]} 3. Bxa6 b5 {[%eval -311,12] [%emt 0:00:02]} 4. Qxa8 f5 {[%eval -519,13]
[%emt 0:00:02]} 5. Qxc8 h5 {[%eval -1162,12] [%emt 0:00:02]} 6. Qxd8+ Kf7 {
[%eval -1278,13] [%emt 0:00:02]} 7. Qxc7 Ke8 {[%eval -2438,12] [%emt 0:00:02]}
8. Nf3 d6 {[%eval -2776,10] [%emt 0:00:02]} 9. Bxb5+ Kf7 10. Bc4+ d5 {[%eval
-2576,10] [%emt 0:00:02]} 11. Bxd5+ Kg6 {[%eval -31900,10] [%emt 0:00:00]} 12.
Ke2 Kh7 {[%eval -2769,11] [%emt 0:00:02]} 13. Be6 Nf6 {[%eval -2625,11] [%emt
0:00:02]} 14. Bxf5+ Kh6 {[%eval -2676,12] [%emt 0:00:02]} 15. Be6 Ne8 {[%eval
-2676,13] [%emt 0:00:02]} 16. Qxa7 Nd6 {[%eval -2679,11] [%emt 0:00:02]} 17.
Nc3 Nc8 {[%eval -2778,9] [%emt 0:00:01]} 18. Bxc8 Rg8 {[%eval -3179,11] [%emt
0:00:02]} 19. Be6 Kg6 {[%eval -3688,11] [%emt 0:00:02]} 20. Bxg8 e5 {[%eval
-31900,5] [%emt 0:00:00]} 21. Qf7+ Kh6 22. Qxf8 Kg6 {[%eval -31900,5] [%emt 0:
00:00]} 23. Nxe5+ Kh6 {[%eval -31900,3] [%emt 0:00:00]} 24. h4 {Stalemate}
1/2-1/2

[Event "BotF2"]
[Site "HOME-56F4A7E489"]
[Date "2010.01.27"]
[Round "2"]
[White "Brutus RND"]
[Black "Ace v0.1"]
[Result "1/2-1/2"]
[ECO "A03"]
[WhiteElo "2200"]
[BlackElo "2200"]
[PlyCount "48"]
[EventDate "2010.??.??"]
[TimeControl "60+1"]

1. f4 {[%eval 25,11] [%emt 0:00:02]} d5 2. Nf3 {[%eval -10,11] [%emt 0:00:02]}
Nf6 3. g4 {[%eval -9,10] [%emt 0:00:02]} Bxg4 4. Rg1 {[%eval -147,9] [%emt 0:
00:02]} Bxf3 5. h4 {[%eval -133,10] [%emt 0:00:02]} Bxe2 6. Kf2 {[%eval -207,
10] [%emt 0:00:02]} Bxd1 7. Kg3 {[%eval -1502,10] [%emt 0:00:02]} Bxc2 8. Be2 {
[%eval -1669,8] [%emt 0:00:02]} Bxb1 9. d3 {[%eval -1656,9] [%emt 0:00:02]}
Bxd3 10. Kh3 {[%eval -1707,10] [%emt 0:00:02]} Bxe2 11. a3 {[%eval -2376,9]
[%emt 0:00:02]} e5 12. Rg2 {[%eval -2443,8] [%emt 0:00:02]} exf4 13. Be3 {
[%eval -2284,11] [%emt 0:00:02]} fxe3 14. Rg6 {[%eval -2583,9] [%emt 0:00:02]}
hxg6 15. Kg2 {[%eval -31900,6] [%emt 0:00:00]} Rxh4 16. a4 {[%eval -31900,8]
[%emt 0:00:01]} Rxa4 17. Rh1 {[%eval -31900,10] [%emt 0:00:02]} Nc6 18. Kg3 {
[%eval -31900,8] [%emt 0:00:02]} Bd6+ 19. Kg2 {[%eval -31900,4] [%emt 0:00:00]}
d4 20. Rh4 {[%eval -3894,8] [%emt 0:00:01]} d3 21. Kg1 {[%eval -4335,9] [%emt
0:00:01]} Rxh4 22. Kg2 {[%eval -31900,3] [%emt 0:00:00]} d2 23. b4 {[%eval
-31900,3] [%emt 0:00:00]} d1=Q 24. b5 Bxb5 {Stalemate} 1/2-1/2

This one was not count in the tournament, because MicroChess1976 was removed of the tournament due to illegal moves:

[Event "BotF3"]
[Site "HOME-56F4A7E489"]
[Date "2010.01.29"]
[Round "1"]
[White "Brutus RND"]
[Black "Microchess1976"]
[Result "1/2-1/2"]
[ECO "B00"]
[WhiteElo "2200"]
[BlackElo "2200"]
[PlyCount "86"]
[EventDate "2010.??.??"]
[TimeControl "60+1"]

1. f4 {[%eval 25,12] [%emt 0:00:02]} d5 2. d4 {[%eval -7,12] [%emt 0:00:02]}
Qd6 3. h3 {[%eval 1,11] [%emt 0:00:02]} Qb4+ 4. Nc3 {[%eval 16,12] [%emt 0:00:
02]} Bf5 5. Rb1 {[%eval 71,12] [%emt 0:00:02]} Nc6 6. Kd2 {[%eval -28,10]
[%emt 0:00:02]} Qxd4+ 7. Ke1 Qb4 8. Bd2 {[%eval -85,12] [%emt 0:00:02]} d4 9.
Ne4 {[%eval -153,12] [%emt 0:00:02]} Qc4 10. Ra1 {[%eval -152,12] [%emt 0:00:
02]} Bxe4 11. Kf2 {[%eval -505,10] [%emt 0:00:02]} f6 12. Ba5 {[%eval -504,10]
[%emt 0:00:02]} Nxa5 13. h4 {[%eval -876,10] [%emt 0:00:02]} Nh6 14. Qe1 {
[%eval -876,11] [%emt 0:00:02]} Ng4+ 15. Kg3 Ne3 16. Rb1 {[%eval -776,10]
[%emt 0:00:02]} Nf5+ 17. Kg4 {[%eval -1002,10] [%emt 0:00:02]} Ne3+ 18. Kg3 {
[%eval -50,25] [%emt 0:00:02]} Nf5+ 19. Kh2 Nc6 20. Qd1 {[%eval -976,12] [%emt
0:00:01]} Ne3 21. Qe1 {[%eval -1076,11] [%emt 0:00:01]} Ng4+ 22. Kg3 {[%eval
-976,11] [%emt 0:00:01]} Ne3 23. Kh3 {[%eval -50,20] [%emt 0:00:01]} Bf5+ 24.
Kg3 {[%eval -1077,11] [%emt 0:00:01]} Qxa2 25. Qc1 {[%eval -1130,11] [%emt 0:
00:01]} Nd5 26. Nh3 {[%eval -659,12] [%emt 0:00:01]} Rd8 27. Ng5 {[%eval -676,
12] [%emt 0:00:01]} h6 28. Qd1 {[%eval -876,11] [%emt 0:00:01]} Ne3 29. c3 {
[%eval -1378,9] [%emt 0:00:01]} Nxd1 30. Nf7 {[%eval -2080,11] [%emt 0:00:01]}
Kxf7 31. h5 {[%eval -2452,12] [%emt 0:00:01]} Bxb1 32. e4 {[%eval -2880,10]
[%emt 0:00:01]} Qb3 33. Rh3 {[%eval -2877,10] [%emt 0:00:01]} Bxe4 34. Rh4 {
[%eval -3410,10] [%emt 0:00:01]} Nxb2 35. Rh3 {[%eval -3469,12] [%emt 0:00:01]}
Qxc3+ 36. Kg4 {[%eval -3282,12] [%emt 0:00:01]} f5+ 37. Kh4 Qe1+ 38. g3 {
[%eval -31900,10] [%emt 0:00:00]} Qxf1 39. g4 {[%eval -31900,7] [%emt 0:00:00]}
Qe1+ 40. Rg3 Qh1+ 41. Rh3 Qe1+ 42. Rg3 Qh1+ 43. Rh3 Qe1+ {3-fold repetition}
1/2-1/2

As you can notice, Brutus RND had a lot of luck to get a draw in those games. The same with his wins. The games are entertaining though, at least for me. :D

Regards,
Carlos
User avatar
hgm
Posts: 28387
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: Shortest Chess Games between two Chess Programs

Post by hgm »

If you play it against Pos 1.17 often enough, it will probably get a win by checkmate. Pos has the funny habit to immediately march its King to the center, where t is easily checkmated by accident.