Image for How to Write a Bitboard Chess Engine : How Chess Programs Work

How to Write a Bitboard Chess Engine : How Chess Programs Work

See all formats and editions

Introduction

There are a number of reasons why you may be interested in how a chess program is written:

  • You are learning programming and interested in learning something different.
  • You are a programmer who is interesting in developing their programming experience.
  • You are a chess enthusiast and would like to improve your chess by learning how chess programs work.
  • You are interested in developing a chess program and playing against it.
  • You are interested in developing a chess program and having it play other engines.

You do need to be an expert programmer to understand this book.The code is written as simply as possible.The code is designed to be simple even for intermediate and even novice programmers.

If you are not a programmer, but am interested in chess, this book may be of interest.

The book includes annotation of the source code for a complete chess engine the author has developed as a teaching tool.The complete source code is available at GitHub. The program can be compiled using a freely downloadable compiler.You can alter the code and see if you can make it stronger.

The program is a derivative of my program referred to in my earlier book How to Write a Chess Program, which did not use bitboards. The book explains how bitboards work and some of the many ways they can be useful in programming. The bitboard version runs considerably faster and is consequently stronger.

Alternatively you can simply download the exe file and run the program.

The engine is strong enough to beat most social players.

Features of the engine include:

  • The ability to load positions.
  • The ability to play in chess engine tournaments, with programs such as Arena.
  • Its very fast.
  • It displays the best line of play for both sides.
  • Detects checkmate.
  • Detects draws by repetition, 50 move rule, stalemate or reduction of material.

Evaluation

The engine evaluates elements of a position including:

  • Material.
  • Piece position.
  • King safety.
  • Pawn structure.
  • Passed pawns etc

Search

The engine uses a standard alpha-beta minimax search including:

  • Cut offs.
  • Move ordering.
  • History moves,
  • Hash tables.
  • Extensions.
  • Reductions.
  • Capture search.

And much more...

My other books on computer chess are How to Write a Chess Program, The Joy of Chess Programming and Think Like a Computer.

Read More
Available
£8.34 Save 15.00%
RRP £9.81
Add Line Customisation
Usually dispatched within 4 weeks
Add to List
Product Details
Independently Published
863278743Y / 9798632787437
Paperback / softback
22/06/2020
136 pages
152 x 229 mm, 209 grams
General (US: Trade) Learn More