-
How to develop a chess program from scratch (for total beginners) Ep. 5: Check Legality of Moves
Overview A chess program is nothing without a function that checks the validity of moves. This function allows the program to play legal moves and without it, nothing would be possible. In this chapter we will analyze this function. The computer utilizes this function at two points: This can be illustrated better in the program…
-
Chess programming and basic chess principles: Episode 2 – Double attack
Double attack is the single most important thing a computer (or a human) should search for when thinking for a game of chess. Why is that? Well, simply put, there is no other way to win material other than the double attack! If you threat one piece of the opponent then the opponent can simply…
-
Chess programming and basic chess principles: Episode 1 – The center
Overview How can a computer think better when playing chess? The raw power of computing alone does not suffice. No matter how powerful a computer is, it will never manage to compute to the depth needed to play a perfect game – at least with the current technological capabilities of human kind. So we need…