Programming a chess AI

2020-07-02 13:02发布

问题:

I'm looking to try and write a chess AI. Is there something i can use on the .NET framework (or maybe even a chess program scripted in Lua) that will let me write and test a chess AI without worrying about actually makign a chess game?

回答1:

Not sure about what you are trying to do.

If you are looking for a ready-to-use chess GUI, you can use WinBoard. It is completely decoupled from the underlying chess engine(s), thanks to an established communication protocol. Your chess engine thus becomes a console app exchanging commands with the GUI.

A more modern alternative following the same concept is UCI. A GUI supporting UCI is Arena.



回答2:

I write a Computer Chess Blog that takes you through all the steps of writing a chess engine in C# from scratch, it includes a computer chess links section and a chess game starter kit.

http://www.chessbin.com

Adam Berent



回答3:

Here are some open source chess boards / games that run on Windows.

  • GNU XBoard

  • SCID

  • C# Micro Chess



回答4:

  1. Use one of the open source chess games.
  2. Figure out the interface that decides the computer's next move.
  3. Implement your own AI using the same interface and remove the user interface part.
  4. Compare your AI to the included one.
  5. Fun!