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 defend it or move it. And life goes on…

But if you threaten two pieces at the same time, then nothing can be done…
This is essentially the only way every chess game is won (or lost). A perfect game by both sides always ends up in a draw. A win at any level (from amateur to grandmaster level) is won when one of the players can manage to bring themselves into a position where they can make a double threat.
Embedding this into your computer chess program could be easier than you might think. All you have to do is spot those moves that threaten more than one (undefended) pieces of the opponent and increase their value.
Or in a different way: You can impose a penalty on the moves that could result in the human opponent being able to threaten two pieces at the same time.
Simply put: Try to detect moves that threaten more than one pieces.
(And then do something in the CountScore function of the program to promote such moves)
Practical examples will follow…
Leave a Reply