Back home


Engine: Myrddin

Author: John Merlino, USA.

Move Now

Edit Mode

Analyze Mode

Opening Book

Create book

Ponder On/Off

Hash Tables

Table Bases

v0.83

Yes

setboard

Yes

Yes

No

Yes

128MB fixed

No

Draw claim

Resign

Force and go

Program language

Source available

Learn

XBoard

UCI

First release

No

No

Yes

C

No

No

No

No

March 9, 2009

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

Configuration: No

Homepage: Myrddin
Download: Yes
Info: See readme below!

Readme: 

Myrddin v0.81 Alpha 2 Release Notes -- 5/26/09
--------------------------------------------------------------------------------
Myrddin is a winboard-compliant chess engine to a reasonable degree. It supports 
protover 1 primarily to support the Chessmaster interface, and also protover 2. 

Alpha 2 plays approximately 1600-1700 ELO against chess engines, and probably 
100-200 points higher against humans. This is an improvement of approximately 
400 points compared to Alpha 1.

Its most recent tournament performance, in the promotional division of ChessWar 
XIV (www.open-aurec.com/chesswar), was rated at 1655 over 11 rounds. Myrddin 
scored 6.5 points (+5 =3 -3) and placed 51st out of 212 engines rated between 
1859 and 812. The median engine rating was 1499.

The following winboard commands are supported:
protover
new
go
?
analyze
playother
setboard
force
white/black
time/otim
level
hard/easy
result
undo/remove
post/nopost
quit/exit

Myrddin also supports "eval", which returns a static evaluation of the current
game position, and "perft N", where 'N' is the perft depth requested. Neither 
of these are supported during a search.

Winboard UI notes: 
-- It is crucial that the winboard UI being used send the "time" command to the
    engine, as Myrddin does not have an internal clock.  
-- Pondering is ON by default.
-- Post is ON by default, as opposed to the winboard protocol. This is just for
    debugging convenience.

General Notes:
-- Evaluation is rather simple: wood counting, piece square tables, pawn 
    structure, king safety, rooks behind passers, and some knowledge about 
    minor piece placement in relation to pawns. There's a long way to go here.
-- Search is basic alpha/beta, with reasonable extensions for check, capture,
    promotion and positions that have very few legal moves.
-- Max search depth is 30. 
-- The ProDeo opening book is used by kind permission of Ed Schröder.
-- Draw claims from the opponent are not supported, nor does Myrddin know how 
    to claim a draw.
-- There is just enough winboard support to play games on ICS. But without 
    support for "draw" offers, I'm sure there are some scary loopholes and/or 
    exploits. 
-- When the engine is in analysis mode, positive scores always favor White and
    negative scores always favor Black. When the engine is thinking or 
    pondering, positive moves favor Myrddin.
-- A logfile called "Myrddin-T.log" is automatically created with every program
    run, where "T" is the system clock time. The output of the log is not very 
    interesting at this time -- mostly just communication reality-check stuff.

FULL DISCLOSURE: The move generation code was "heavily borrowed" from the
Chessmaster UI, but I feel that this is not "cloning" as I worked on that title
for many years. Also, the code has been improved a fair bit, and is now about 
30% faster than the original code.  

Many thanks to the following brilliant people who helped/guided me (either 
directly or indirectly) in countless ways with their work:
TSCP -- Tom Kerrigan
Firstchess -- Pham Hong Nguyen
Greko -- Vladimir Medvedev
Crafty -- Dr. Robert Hyatt
Gerbil -- Bruce Moreland
Belofte -- Yves Debilloez
Chessmaster -- Lots of brilliant people, but mostly Johan de Koning (programmer 
    of The King engine), Don Laabs (programmer of many of the low-level chess 
    UI routines, including the move generator), James Stoddard (programmer of 
    Chessmaster Live, the winboard UI support, and most of the game-handling 
    routines) and Dave Cobb (programmer of the opening book editor and many 
    other support features).

Version List
---------------
v0.80 Alpha 1, released on 3/9/09
Initial Release

v0.81 Alpha 2, released on 5/26/09
Change List:
-- Greatly improved move generation speed (perft 6 on initial position has gone
    from 57 to 41 seconds on P4-3.0)
-- Search now pings the input command handler every 8K nodes (about 1/30-1/50 
    second, depending on position and hardware), so applicable commands can now 
    be entered during search/analysis
-- Search will allocate extra thinking time when it gets noticeable drop in 
    score
-- Evaluation improvements -- pawn structure, open and semi-open files for 
    rooks, rooks behind passers, king safety
-- Added MVV/LVA and PV Move Ordering
-- Added Killer and History move ordering heuristics
-- Added Null Move reductions
-- Added Late Move reductions
-- Added Opening Book (ProDeo -- Thanks, Ed!)
-- Added pondering, so "hard" and "easy" commands are now supported
-- "analyze", "?" and "result" commands are now supported
-- "level" command is now fully supported for all time control types
-- Added check for dirty pawn structure before evaluation
-- Search can be interrupted due to time management considerations
-- Added Hash Tables, with a fixed size of 128MB
-- Maximum search depth increased from 20 to 30
-- Fixed a bug with evaluating castling moves
-- Fixed a bug determining which King piece table to use
-- Can now generate capturing moves only so quiescent search has less moves to
    sort/deal with
-- Quiescent moves are added to PV
-- Added code for pushing lone King towards edge of board
-- Added material and 50-move draw detection
-- Fixed a bug in the "undo" and "remove" commands
-- Scores in analyze mode will always be positive if White is winning and 
    negative if Black is winning
-- Fixed some bugs in the 3-fold repetition detection
-- Fixed a stupid bug that caused me to check for user input WAY too often -- 
    many thanks to Bob Hyatt for pointing me in the right direction
-- Significant code cleanup

Known Problems:
-- Analyze mode can crash using an "undo", possibly only after a "setboard"
    command has been received 

To do for next release, in approximate order of priority
-- better quiescent search pruning/reductions
-- outposts and escape routes
-- improve king safety eval
-- draw claims -- sending and receiving
-- SEE
-- come up with better way to define changes from opening/middlegame/endgame
-- commandline options (hash table size, turn off logfile, etc.)
-- edit mode (primarily for supporting the Chessmaster GUI)
-- Ping

Please send bug reports and general suggestions/comments to JVMerlino@aol.com.
If you wish to enter Myrddin into one of your own tournaments, please feel free
to do so! But please let me know so I can follow the tournament.

Thanks for playing!