Solving Orthodox Chess Problems
Since a long time, around 1973, I'm interested in chess problems,
and how to solve them with the help of a computer program.
List of contents
What is a Chess Problem?
Posing a chess problem consists of
The stipulation ``mate in N moves'' means, that the side to move
shall do a key move, such that
even with the best possible counter-play
there will be a mate in (or before) move N.
Defining the contents of a chess board:
which pieces are placed where.
The stipulation (the task to solve):
e.g. ``white moves and mates in 2 moves''
Additional conditions to be fulfilled (not discussed here).
Sometimes there is additional information necessary
to disambiguate between equal looking boards,
which allow for different sets of legal moves:
which castlings are still allowed, and/or
where is an e.p. move possible.
What is so ``orthodox'' about it?
``White moves and mates in N moves'' is the classic stipulation.
Later there have been invented more exotic stipulations.
An orthodox problem is restricted to those chess pieces
which are also used for playing chess.
Especially for chess problems there have been invented
lots of other pieces, which move in funny ways.
These are not considered to be orthodox.
Additionally, the chess board contents posed in an orthodox problem
must be reachable in a legal chess game (although such a game
need not make sense, legality is sufficient).
How does this relate to computers?
The task to solve a chess problem is exactly defined,
with mathematical rigor. A proposed solution to a chess problem
is either right or wrong, not good or bad.
If the stipulation restricts the number of moves,
then the task to solve a chess problem is even obviously limited.
Therefore, the task to solve chess problems is even more
suited to computers and programming,
than the task to play chess.
Programs to solve chess problems
Of course, all chess playing programs can be used to assist
in problem solving.
Many of them have special ``problem modes'',
which solve orthodox problems.
A drawback (for the problemist) is that they often do
not find the shortest mate, or duals and cooks.
Of course, for the analysis of real world chess games
(not artificially constructed problems)
that is no harm.
There are also some specialized mate finders and solvers,
partially freeware and partially commercial products.
"Freely available" normally means
"for non-commercial purposes".
I will not try to list all commercially available products,
or all freeware programs, but I list some link lists below.
[for older versions try also
this alternate link]
It is freely available, solves chess problems
and knows about nearly all the excotic fairy pieces,
conditions and stipulations.
It is tri-lingual (German, English and French).
CHEST is my own problem solving program,
and is freely available since 18-Dec-1999.
It mainly solves orthodox chess problems (mate in N moves).
It is distributed as source code (ANSI-C).
by Franz Huber
is an UCI-adapter for CHEST,
so that you can use it from any GUI which can run UCI chess engines.
Chess Problem Software, full list
by Mario Velucchi.
It is mainly in Italian, but
may help you to understand most of it.
The DMOZ open directory project
A really good collection of commented links,
listing many programs for chess problems,
including some for fairy chess and retrograde analysis.
Recommended also for other subjects.
CRAFTY (official ftp download)
A freely available chess playing program which is really strong.
Its author, Bob Hyatt, is a well known computer chess ``guru''
(also co-author of Cray Blitz).
(in all recent versions) is not only a good chess playing
program, but also a very excellent mate searcher.
Currently I have no special link for it... just try your favorite
They sell chess playing programs and some mate solvers,
e.g. ALYBADIX and GUSTAV.
They also have an extensive list of freeware.
A collection of chess programs and other chess related stuff.
a free chess problemist's toolkit,
as explained by Don French.
Arkadia maintains a list of
Chess Problem Software.
PGN, EPD and FEN
These acronyms stand for
Portable Game Notation,
Extended Position Description and
The former is used to denote complete games,
while the latter two denote game or problem positions.
They are especially useful for import and export to and from chess software.
You may download the PGN Standard titled
"The Specification and Implementation Guide"
by Steven J. Edwards,
containing the description of all three: FGN, EPD and FEN.
Other resources (links) around chess problems
uses chess problems to test chess playing programs.
When the above link does not work,
try this one.
has many chess problems and a solving contest.
[Appears to be gone:]
among other things also has a solving contest.
The Retrograde Analysis Corner
has a glossary for retro and fairy chess.
has good links.
There is a german page with mate and selfmate problems composed by
and a weekly challenge.
has a problem competition and some links.
Chess Problem Server
has a database of several problem collections.
Manfred Rosenboom (maro)
has a good
containing definitions, organizations, clubs, servers, links and more,
Chess Test Suite Collection,
Chess Vocabulary in 4 Languages
(Deutsch, English, Francaise and Italiano).
Supreme-Chess problem collection
contains over 600 chess problems
and is extended weekly.
A good (moderated) forum is the
CCC (Computer-Chess Club).
(a working email address),
but otherwise it is free.
It is hosted by
America's Largest Chess Store - chess sets and more.
I visit this forum nearly daily, and like it very much.
Back to the
home page of Heiner Marxen.
$Date: 2009/07/24 19:29:13 $