Back home


Engine: Holmes

Author: Andreas Herrmann, Germany.

Move Now

Edit Mode

Analyze Mode

Opening Book

Create book

Ponder On/Off

Hash Tables

Table Bases

v0.8.29e

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Nalimov

Draw claim

Resign

Force and go

Program language

Source available

Learn

XBoard

UCI

First release

Yes

Yes

Yes

Pascal

No

Yes

No

No

01-06-2000

WinBoard.ini lines:
"Holmes" /fd=d:\Winboard\Holmes
"Holmes" /sd=d:\Winboard\Holmes

Configuration: Holmes.ini

Homepage: No
Download: Yes, below.
Info:


Copyright ©
Holmes by Andreas Herrmann, Germany.

Available:

Holmes 0.8.29e (Tiny book included)

Next files can be used for both, Holmes and BlackBishop:

dll files (Neccesary dll's to run Holmes and/or BlackBishop)
Small book (0,5MB zipped)
Medium book (1,25MB zipped)

Readme:
table of contents
=================

What is Holmes?
License agreement
How to install Holmes
FAQ
Playing strength
Internals & features
Thanks

What is Holmes?
---------------

Holmes is my second chess program, that i have written. It comes without a 
graphical user interface (GUI). You can play against Holmes in console mode, but
you can install it also as a Winboard engine under a GUI like Winboard, Arena or 
any other chess GUI, which can handle Winboard engines.


Licence agreement
-----------------

Holmes, copyright (c) 2000-2004 by Andreas Herrmann. No part of this software 
may be reproduced in any form without written permission of the author. The 
program is a product without warranty. No liability shall be assumed for direct 
or consequential damage caused by the use of this software. You can copy this 
software to friends, collegues, etc, as long as the package stays unchanged, 
complete, and the copies gives obvious credit to the author. It's not allowed to
offer this program on other web pages without written permission of the author. 
It's also not allowed to offer the program inside commercial products or on 
freeware/shareware CDs without written permission of the author.

How to install Holmes
---------------------

The hints here on how to install are only valid for the versions 0.8.20m and 
0.8.29e. For the old versions 0.3.5 and 0.8.2v please read the readme.txt from 
the according download package.
At first download all necessary files and then unzip them all together in a 
separate folder (e.g. d:\Holmes).
Now you can edit the Holmes.ini, to setup Holmes. The Hash, PawnHash and 
TBCacheSize values are in MB. Don't forget to setup the right table base folder 
(TBPath=...) in Holmes.ini. If you want to use also a bigger opening book (only 
in version 0.8.29e possible, because of a new book format) then don't forget to 
set the new book filename in Holmes.ini.
Attention: Don't mix files from different versions of Holmes. The book files and 
the ini files are most totally different between the versions.

Playing in console mode:
To play against Holmes in console mode, just start Holmes and then enter 
"textmode" inside Holmes. With this command you will see a bit more output, than 
without. To get a help about all possible commands, just enter the command 
"help".

Install Holmes as an Winboard engine under Winboard:
If you want to install Holmes as an engine under Winboard, you have to edit 
"winboard.ini" inside your Winboard folder. There you have to insert two lines. 
The first under "/firstChessProgramNames=..."
"Holmes" /fd=d:\Holmes
The second line you have to insert under "/secondChessProgramNames=..."
"Holmes" /sd=d:\Holmes
Instead of d:\Holmes use the folder, in which you have installed Holmes.

Install Holmes as an Winboard engine under Arena:
To install Holmes under Arena, press key F11 and then the button New. In the 
following window you have to select as type of engine Winboard. Now you can 
select the Holmes.exe, that's it. For further help, just read the very well help
files inside Arena.

Install Holmes under other chess GUIs:
I havn't tryd Holmes under other GUIs, but Holmes should also work under all 
other GUIs, which can handle Winboard engines. If you have installed Holmes 
successful under another GUI, it would be nice if you can explain it in the 
forum of wbholmes.de for other users of Holmes.

FAQ
---

The hints here on how to install are only valid for the versions 0.8.20m and 
0.8.29e. For the old versions 0.3.5 and 0.8.2v please read the readme.txt from 
the according download package.

Q: Why does Holmes exits after start?
A: Perhaps you have NOT enough memory. Look to the last logfile of Holmes for 
   the reason.

Q: Where can i find the logfiles of Holmes?
A: Inside the folder where you have installed Holmes, you will find a subfolder 
   named "\log". In this folder you will find the logfiles, for excample 
   "log00021.txt". The file with the highest date/time stamp is the newest.

Q: Why does Holmes beeps one or more times after start?
A: There could be several reasons. You have not enough memory or the opening 
   book was not found or the table base files were not found or nullmove is 
   disabled. Look to the last logfile of Holmes for the reason.

Q: How can i check the current settings for Holmes?
A: Start Holmes.exe and input the command "info".

Q: Which levels are working with Holmes?
A: Holmes can handle all levels from the Winboard protocol:
   - x moves in y minutes
   - all moves in x minutes
   - all moves in x minutes + y seconds per move
   Holmes can also handle levels like the following excamples under the GUI 
   Arena, if you enable "advanced level command for WB engines" in Arena.
   - 1. timecontrol: 40 moves in 40 minutes 2. timecontrol: 30 minutes for the 
     rest
   - 1. timecontrol: 40 moves in 40 minutes 2. timecontrol: 40 moves in 20 
     minutes 3. timecontrol: 15 minutes for the rest
   In other GUIs the combined levels doesn't work with Holmes.

Playing strength
----------------

Holmes is a medium strength chess program. The program is optimized for Athlon 
machines, and should do better on Athlon processors than on Intel processors. 
After own tests i know that Holmes plays also better in longer time controls 
than in blitz, compared to most other chess programs. Holmes plays often good 
attacks against it's opponents king and has won so sometimes against much 
stronger chess programs, but a big weakness is the endgame play of Holmes.

Internals & features
--------------------

- written in Delphi / Pascal
- Board presentation 10x12 integer array
- Alpha-Beta search
- Iterative Deepening
- Quiescence search
- Separate root search with aspiration window
- 2 Transposition tables (always replace and distance replace scheme)
- Pawn hash table
- Move generation with the help of piece tables
- Moveordering by Killer and History heuristic, capture moves by MVV/LVA
- Nullmove forward pruning with enhancements
- Futility pruning
- Extensions (check, recapture, pawn push, and some more)
- Nalimov table base access
- Attack tables for king safety and other evaluations
- Permanent brain (pondering)
- Lazy eval
- Separate endgame evaluation
- Complex time management
- Opening book
- Book learning
- Offer and accept draw
- Can resign
- Claims draw (repetition, fifty moves rule, stalemate and insufficient mating 
  material)
- Winboard protocoll I and II (all commands)
- Analyze mode
- Save/load PGN
- Autosave game as PGN and list
- Save/load FEN/EPD
- Analyze test suites
- Benchmark test
- Create opening book
- SAN, LAN or coordinate notation
- Hint and book hint possible
- Logfile
- Batch mode
- Extended Winboard level command (3 tripple)
- Can Whisper and Kibitz on a chess server
and a lot more

Thanks
------

Thanks to Eugene Nalimov and Andrew Kadatch for the permission to use table 
bases in Holmes.
Thanks to Tony Werten, for the permission to use his table base DLL inside 
Holmes.
Also much thanks to all the tester of Holmes.

Andreas Herrmann

© COPYRIGHT 2001 - 2012 All Rights Reserved wbec-ridderkerk.nl