# What would be the Elo rating of a computer which plays all optimal moves?

What would be the Elo rating of a computer which plays all optimal moves?
By playing all optimal moves, I mean that it always wins if possible, or else draws if that is the best result possible.

• It depends on the opposition, but for USCF rastings (another form of ELO) it would max out at about 400 points above the strongest USCF player. That would be the 2854-rated Hikaru Nakamaru. So about 3254 USCF. The simulator on the USCF site always awarded at least one point, never maxing out. But I suspect that's a deficiency in the simulator. Apr 11 '14 at 3:11
• The simulator (at least in its current form) does stop awarding a point eventually, but that is a deficiency in the simulator - it doesn't show decimal points. And USCF doesn't max out at 400 (although FIDE does.)
– D M
Mar 14 '18 at 19:26
• @TonyEnnis : this calculation is only accurate if you consider that the supreme-entity would score 100% with both colors against Hikaru. If we believe Nakamura to be strong enough to grab at least a few draws against the beast (Nakamura himself surely believes so...), then the beast's rating would be less high. Mar 15 '18 at 9:05

ELO is not an absolute measurement; it is only meaningful relevant to the ELOs of other players. This is because it is only calculated based on performance against other rated players. The "Maximum ELO", which seems to be what you're looking for, is therefore equal to the ELO of a player at such a time when his ELO is so high that he cannot gain any ELO points for defeating the second-highest-rated player.

The answer to your question, then, relies on at least the following two questions:

1. What is the highest-rated opponent that this theoretical machine could always defeat?

2. How much higher than that rating does an ELO need to be, in order not to gain any points from a victory?

The problem is this: if you play this machine against itself, the outcome is undefined. If we assume (since we don't know) that Chess is a fair game (Black and White have equal winning/drawing chances), then this machine can't raise its ELO indefinitely by repeatedly playing and defeating another version of itself, because it'll lose half the time and not get anywhere. So without hacking the system (see below), there is an upper bound somewhere.

What that upper bound is, however, is very fluid and somewhat ill-defined, because players' ratings are always in motion, and because rating systems are not equivalent. So to give you a value, let me make a couple of simplifying assumptions.

• "Perfect play" is always a victory. (If draws are possible with perfect play from one side, it doesn't change the endpoint, but it does make it take longer to reach the top).
• We use the FIDE ELO system, including the k-factor tiers (the k-factor will be 10 in the range we care about).
• FIDE only uses integer ELO values.
• The highest-rated opponent for this machine is Magnus Carlsen, currently rated at 2881.
• Magnus is willing and able to play against this machine as many times as needed for the machine to reach its peak ELO. Between games against the machine, Magnus will play other humans to regain his 2881 ELO rating.

Given these assumptions, the machine will max out at about 3351 ELO1, where if it wins, its ELO will increase by less than half a point (`+0.49 to 3351.49`), which will be discarded (rounded down to `3351`).

If a competitor achieves an ELO above 2881, than the upper bound increases. This fact allows us to pull the following (very silly) stunt, if we so choose:

1. We have a machine that always wins.
2. Presumably, we could build another one.
3. We pit the machine against Magnus until it achieves FIDE ELO 3351.
4. We disable perfect play on the machine (Machine 1). We set Machine 1 to always lose.
5. We build another machine, Machine 2, and play it against Machine 1 until it cannot gain more ELO points.
6. Repeat steps 4-5 with new machines ad nauseam to create a machine with an arbitrarily-high FIDE ELO.

1 I haven't done all the calculations myself by hand. I just plugged the appropriate numbers into this calculator. It's entirely possible that the formula used there differs from the current FIDE rules, but the basic premise is the same even if the numbers are inexact.

• I think the minimal Elo gain from a win is 0.8 points. That's what you get when your opponent is rated more than 400 lower than you, no matter how low. This was a well known loophole for gaining Elo by playing against very weak players, so maybe it has been fixed by now? Feb 4 '15 at 8:24
• Is the upper bound given based on rating the games one at a time? In a tournament or a match, all games are considered in the rating system using the initial ratings, without rounding between games.
– JiK
Feb 22 '15 at 16:39
• I guess the number of 3351 is completely meaningless (=does not represent the relative strength), because you had the machine artificially play against one opponent only. As far as I understand, the Elo system only gives numbers that can be compared if you play lots of games against all kind of players. Mar 14 '18 at 22:09

This is extremely hard to say, because the initial position is probably a draw. Besides playing perfectly, the computer also has to set problems for the opponent.

If the position is a draw, then there may be fifteen different moves that don't lose. The computer will have no reason to prefer one over another, so perhaps it'll just decide to drop a pawn or so knowing it can hold all the endgames. Why not?

This is already very obvious when trying to use tablebases to learn how to draw worse endgames. In, say, Rook + Bishop vs Rook, the computer (playing the stronger side) will sometimes just give away the rook or bishop!

"Perfect chess" is hard to define.

I suspect that current engines, that aim for a good position, would very often get superior positions against perfect engines. They would just never manage to actually win them, of course. Against human grandmasters with some experience playing the perfect table-based engines, I suspect that perfect engines would have a lower TPR than current engines.

The max rating of a system is going to depend on the details of the system and who the participants are. There's not just one "Elo" formula, and the details can be important.

Under FIDE ratings regulation 8.54, "A difference in rating of more than 400 points shall be counted for rating purposes as though it were a difference of 400 points." This allows a rating to become arbitrarily high, regardless of the strength of the opponents - you can always get at least one rating point by winning.

Under the USCF correspondence chess ratings system, "Rating differences that exceed 350 points are figured as 350 points." So, similar to the FIDE system, points could continue to be gained even with a large ratings difference, allowing a rating to become arbitrarily high.

However, under the USCF rating system for OTB play, ratings are stored as floating points instead of integers, and there isn't a maximum allowable difference listed, allowing someone to gain a fraction of a point for a win against someone far below them.

The question then becomes: how often could the human get a point off the computer? If the human could, on average, get one point every 10,001 games (either a win or two draws), the computer's rating would stabilize at 1600 points above the human. If the human could get a point every 1,001 games, the computer's rating would stabilize at 1200 points above.

And if this ever moved out of the theoretical, then once it became clear that this computer is perfect, GMs would begin to copy its moves, especially in the opening but probably going into what would ordinarily be the middlegame. I think we'd start seeing draws much more often once this happens - it's much easier to draw if you're essentially playing it against itself for the first 20 moves, and you know the line to that point isn't losing.

5200 ELO or greater, based on this: