Cutechess-cli: A command line tool for engine-engine matches

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

Moderators: hgm, Rebel, chrisw

User avatar
ilari
Posts: 750
Joined: Mon Mar 27, 2006 7:45 pm
Location: Finland

Re: Millispeconds and a new EPD spec

Post by ilari »

Could a moderator move this discussion of the EPD specs to a new thread perhaps? I think it's a very interesting topic, something I want to follow closely, but it doesn't have much to do with cutechess-cli.
User avatar
ilari
Posts: 750
Joined: Mon Mar 27, 2006 7:45 pm
Location: Finland

Re: Cutechess-cli version 0.2.1 is out

Post by ilari »

What's new?

- Fixed a bug in 0.2.0 that forced both engines to always use the same time control
- The engines can use separate opening books

The latter feature was requested a long time ago, but it was surprisingly difficult to implement so that it works with all the other options. I removed the general options "-book" and "-bookdepth", and added new engine options "book" and "bookdepth". Polyglot opening books and PGN input can be used at the same time. A couple of examples:

- Use huge_book.bin for Sloppy and small_book.bin for Fruit
- Limit both books to 5 fullmoves

Code: Select all

cutechess-cli -fcp conf=Sloppy book=/home/me/pg_books/huge_book.bin -scp conf=Fruit book=/home/me/pg_books/small_book.bin -both bookdepth=5 tc=60

- Play the 4 first halfmoves (plies) from openings.pgn
- Use huge_book.bin for both engines
- Limit huge_book.bin's depth to 10 fullmoves. The 4 plies from openings.pgn is included in this number, so the maximum number of fullmoves from huge_book.bin is actually 8, assuming that the games in openings.pgn have at least 4 halfmoves each.

Code: Select all

cutechess-cli -fcp conf=Sloppy -scp conf=Fruit -both book=/home/me/pg_books/huge_book.bin bookdepth=10 tc=60 -pgnin /home/me/pgn/openings.pgn -pgndepth 4
Audmeister
Posts: 135
Joined: Sun Jun 01, 2008 9:38 am

Re: Cutechess-cli version 0.2.1 is out

Post by Audmeister »

This is a great new update!

Now I can test books super duper fast! :)
IanO
Posts: 496
Joined: Wed Mar 08, 2006 9:45 pm
Location: Portland, OR

Re: Cutechess-cli version 0.2.1 is out

Post by IanO »

Since moving to OS X 10.6, I have not been able to load Rybka with microwine under cutechess-cli. Could there be a problem with exec()ing an arch=x86_64 binary from your 32-bit build of cutechess-cli?

[Edit: nevermind, I had forgotten to add back a "dir=." parameter while experimenting. All is well.]
Hart

Re: Cutechess-cli: A command line tool for engine-engine mat

Post by Hart »

Code: Select all

[Result "1/2-1/2"]
[PlyCount "16"]
[EventDate "2009.??.??"]

1. e4 {book} e5 {book} 2. Nf3 {book} Nc6 {book} 3. Bb5 {book} a6 {book} 4. Ba4
{book} Nf6 {book} 5. O-O {book} Be7 {book} 6. Re1 {book} b5 {book} 7. Bb3 {
0.00/7 0.16s} O-O {-0.03/12 0.53s} 8. a4 {0.00/8 0.16s} Bb7 {
0.00/13 0.52s  Draw by adjudication} 1/2-1/2
This does not make sense to me as I am using -draw 5 0

Am I doing something wrong?
User avatar
ilari
Posts: 750
Joined: Mon Mar 27, 2006 7:45 pm
Location: Finland

Re: Cutechess-cli: A command line tool for engine-engine mat

Post by ilari »

Hart wrote:

Code: Select all

[Result "1/2-1/2"]
[PlyCount "16"]
[EventDate "2009.??.??"]

1. e4 {book} e5 {book} 2. Nf3 {book} Nc6 {book} 3. Bb5 {book} a6 {book} 4. Ba4
{book} Nf6 {book} 5. O-O {book} Be7 {book} 6. Re1 {book} b5 {book} 7. Bb3 {
0.00/7 0.16s} O-O {-0.03/12 0.53s} 8. a4 {0.00/8 0.16s} Bb7 {
0.00/13 0.52s  Draw by adjudication} 1/2-1/2
This does not make sense to me as I am using -draw 5 0

Am I doing something wrong?
Yes, it makes sense. "-draw 5 0" means that the games are adjudicated as draws if the evaluation of both engines is 0 after 5 full moves have been played. Most people use something like "-draw 120 10".

Maybe I could add a new parameter to "-draw" that would specify the number of consecutive moves where the eval is within x centipawns.
Hart

Re: Cutechess-cli: A command line tool for engine-engine mat

Post by Hart »

Okay, I misunderstood then. I just assumed it was for n consecutive moves within x centipawns of 0. A new parameter for this would be be very useful, IMO. Thanks for the prompt response.
Hart

Re: Cutechess-cli: A command line tool for engine-engine mat

Post by Hart »

cutechess-cli -fcp cmd=A.exe proto=uci -scp cmd=B.exe proto=uci -games 800 -pgnout out.pgn -pgnin suite.pgn -both tc=1/2 -concurrency 4
cutechess-cli -fcp cmd=A.exe proto=uci -scp cmd=C.exe proto=uci -games 800 -pgnout out.pgn -pgnin suite.pgn -both tc=1/2 -concurrency 4
cutechess-cli -fcp cmd=B.exe proto=uci -scp cmd=C.exe proto=uci -games 800 -pgnout out.pgn -pgnin suite.pgn -both tc=1/2 -concurrency 4

I would like these to execute in sequence. Is there a straightforward way to make this happen?

Thanks in advance.
Edsel Apostol
Posts: 803
Joined: Mon Jul 17, 2006 5:53 am
Full name: Edsel Apostol

Re: Cutechess-cli: A command line tool for engine-engine mat

Post by Edsel Apostol »

Hart wrote:cutechess-cli -fcp cmd=A.exe proto=uci -scp cmd=B.exe proto=uci -games 800 -pgnout out.pgn -pgnin suite.pgn -both tc=1/2 -concurrency 4
cutechess-cli -fcp cmd=A.exe proto=uci -scp cmd=C.exe proto=uci -games 800 -pgnout out.pgn -pgnin suite.pgn -both tc=1/2 -concurrency 4
cutechess-cli -fcp cmd=B.exe proto=uci -scp cmd=C.exe proto=uci -games 800 -pgnout out.pgn -pgnin suite.pgn -both tc=1/2 -concurrency 4

I would like these to execute in sequence. Is there a straightforward way to make this happen?

Thanks in advance.
You can try putting it in a batch file.
Hart

Re: Cutechess-cli: A command line tool for engine-engine mat

Post by Hart »

I was afraid that they'd run concurrently but this works just as I wanted it to. Thanks a million.