When different chess engines play against each other, they don’t always have the same outcome. Why not?

381 viewsOther

This has bugged me for a bit. If chess engines are meant to always play the best moves, then how come two chess engines playing against each other doesn’t always have the same winner?

In: Other

22 Answers

Anonymous 0 Comments

“best move” is not the same as “only move” or “winning move”.

a game of chess is usually not decided in the first 3 moves, so there is a lot of room for different opening strategies to be considered or acted/reacted on

chess engines also have some artifacts left over from either the programmer OR the historical games used as data sets.

Anonymous 0 Comments

If they would be let to play from the first moves, then yeah, they would draw every time.

However when they are put against each other, the first few moves (the opening and maybe a couple moves after) are chosen by humans and then they play as both black and white respectively. The position they are left with to decide themseleves is already into such unknown territory that it is quite impossible to know the best next move even for them.

Anonymous 0 Comments

When you’re talking about arranged matches between chess engines, they typically do not start playing from move 1.

The organizers of the matchup will set the match up to play a specific opening, and then let the engines work it out from there. These different openings cause enough variation that there can be an advantage to one side or the other, or a certain engine might be better in a certain position than another.

Beyond that, the engines are not *always* deterministic. Different circumstances like time pressure or a limit on depth can influence move choice.

Anonymous 0 Comments

There isn’t only one best move, especially in the opening.

For the first five to six moves, there are multiple options called “book moves”, which are all equally likely to bring to victory. After that, the possible best moves reduce to one or two, only to increase again in the late game.

Anonymous 0 Comments

There are too many possible moves to be able to truly find the best move every time, so the engines must select a smaller number of moves to look at in detail. Especially as in tournaments they put time limits on moves, so the engine has to pick an (admittedly still huge) random selection of “good” moves to analyse in detail and determine out of those which is actually the best to keep within the time limit. 

If the engines had infinite time then they would be able to select the best moves consistently without this random sample approach.

Anonymous 0 Comments

While chess engines are much better than the best human players, they are NOT perfect (and far from it).

Chess is a far more complex problem than any computer can solve. Engines do the best they can with limited time and memory.

To make matters worse, chess is (probably) a drawn game (but we can’t even prove that yet).

This means that any game where neither player ever plays a losing move is technically an example of a “perfect game.”

Essentially, any drawing move would be a candidate for perfect play. So even perfect chess engines would have an enormous variety of “perfect” chess games to play through.

Anonymous 0 Comments

Chess isn’t solved. Computers go to a certain depth in possible move orders before it all gets too complex. Then they decide which position is best. But it all still relies on the computer looking at a position of pieces and saying “yep this is very slightly better than some other position of pieces”. And then you also have to consider that the computer cant go through every possible combinations of moves, that would be very wasteful, so it carefully selects “promising” paths to look at. Both the pathing and the evaluation depends drastically from engine to engine.

Anonymous 0 Comments

They do have the same outcome if the AI plays 100% of the game. That’s why humans will force the white engine to use a variety of different openings. If they weren’t forced by humans to play a variety of openings, they would just open with the same opening every game.

Anonymous 0 Comments

Sometimes, when they have two possible moves that are close to equal, they will choose one at random.

Anonymous 0 Comments

Algorithms for finding best moves are often randomized, such as Monte Carlo tree search. There are certain advantages to that, imagine going through a maze systematically (e.g. taking leftmost unvisited turn) vs. going randomish (exploring some area, but not completely, going to explore other area etc.) Chances are you will find exit faster with randomized approach.