Recently, after a long break, I started playing chess again. The last time I played seriously, I was in high school, and it goes without saying that the world has changed a great deal since then. For one thing, back in those days you needed a real person to play with, and you played face-to-face over a board that had real pieces. These days, a lot of play happens online, either on your PC or on your phone (I use lichess.org, which I heartily recommend), and you can play quasi-anonymously with people from all over the world in real time. When I was in high school, although there were computer chess engines, they were still not able to beat the best humans (although even then I myself stood no chance against them). Now, even the best humans cannot beat the best chess engines. But I have also changed since high school: I have earned university degrees in statistics and economics, and this training has permanently affected how I view the world.
For instance, these days I recognize that chess is Markov: during any game, at any time, the current layout of the board and whose move it is is a perfect summary of the situation in the game; we do not need to know how exactly the current layout arose or whether we are on move 2 or move 50 (assuming that it is not a timed game). Also, chess is a dynamic game: when deciding which move is best, we need to think not only about the current move but also about future moves: the possible responses of our opponent to our next move, our responses to them, and so on. Readers with some training in economics will recognize how to solve such a game: start at the end, and move backwards, using a process called dynamic programming. In principle, by starting at the end, and working backwards, one could determine the optimal move for any given layout of the board. Of course, one of the complications is that we don't know how the game is going to end: there is a vast number of possible chess endings. To solve the game using dynamic programming, one would need to start at all possible endings, work backwards along the optimal path, and find that ending that corresponds to the current board layout (assuming that there is only a single optimal move for any chess position, there would only be one). A perfect chess player would perform this optimization process at each move, making the assumption that his or her opponent was also playing optimally, and this would determine who would win the game.
This is exactly how theoretical models of economic agents are built. Most economic models are Markov; economic agents, like the perfect chess players I describe above, are assumed to be infinitely-forward-looking, rational, and have infinite computational ability (which of course they would need to perform the kind of optimizations I described above).
You might then ask, what about the computer chess engines? Have they solved the game of chess, in that they are perfectly able to produce the optimal chess move given any particular board layout? It turns out that the answer to that question is no. There are many chess engines out there. The best at the moment seems to be Stockfish, an open-source collaborative effort (available at www.stockfishchess.org). Stockfish wins most, but not all, of the computer chess tournaments. Exactly how Stockfish works is beyond the scope of this post. But importantly, it does NOT determine the exact best move given a position by iterating backward from all final possible positions to the current position, as our rational economic agent would. There are too many possible chess games (>10^120) to make this approach computationally feasible. Rather, Stockfish is based on a heuristic numerical score for any given board layout. It iterates forward from the current position a certain number of moves, choosing the heuristic-maximizing move in each position, and evaluates the final position after those moves using a combination of its heuristic ranking and chess tables (e.g. a king and a rook will always beat a lone king, assuming optimal play etc). In this way, Stockfish produces an evaluation of the current board position, which is expressed in an unclear unit called 'centipawns'. An advantage of more than 1.5 centipawns for any side would result in a clear victory for a chess master; a gap of more than 4 is insurmountable. Note that the idea that a particular position can be ranked is a clear admission that Stockfish has not fully solved the game: a fully-solved solution to chess would eliminate randomness. Each board position could then be ranked in one of only three ways: a draw, a victory for white or a victory for black. To be clear, even though Stockfish may not be perfect, it is very very good - even human grandmasters cannot beat it.
One of the great things about Stockfish is that it is open-source. This means that chess apps can use the Stockfish engine to let users analyze their games and see where they went wrong. Lichess does this well, which is one reason I like it. The picture below shows Stockfish's analysis of a recent game I played. The final position is shown on the board (white won with a checkmate), along with the analysis in a graph below.
You can see from the graph that Stockfish estimates that white always starts off with a small advantage (this comes from the fact that white moves first). A characteristic of any optimal dynamic strategy is that there are no good moves: because Stockfish iterates forward, the current evaluation of the layout assumes that each player plays optimally from this point onwards. If players play these optimal moves, their relative position remains the same. The position only changes if players play bad moves. In the first few moves, white's relative position improved. This is not because white played good moves, but rather because Stockfish evaluated the moves that black played as being bad ones. More likely, both players made sub-optimal moves, but black's moves were worse than white's. At move 6, white blundered, causing his position to worsen radically. Over the rest of the game, white recovered and blundered, until black made a catastrophic blunder in move 20 which resulted in an unavoidable checkmate 3 moves later. Because Stockfish anticipated the checkmate, white's relative position immediately moved to 'won' in move 20, and because white didn't make any subsequent mistakes, it remained there until the game ended.
You can see the drama and struggle of chess illustrated in the graph: the relative advantage fluctuates wildly from side to side. White is probably playing better, but battles against occasional serious blunders. Black is more consistent and holds his own, but throws it all away at the end in a single catastrophic move.
The economist in me wonders what chess would look like if both players were perfect economic agents. That is, what would chess look like if we wrote down an economic model of chess? Well, the answer can be seen from the graph, and our intuition that perfect chess players make no bad moves. So, white would start off with a slight advantage. Each player would play optimally, which means that white's first-move advantage would slowly fade away until the game ended in a draw. Each and every game would be exactly the same. Nothing to see here folks: no drama, no excitement, (and no fun!). In fact, rational economic agents would not even bother playing. They would look at the opening position of the game and the rules, and know immediately that white's first-mover advantage was not sufficient to guarantee victory, and that the game would therefore end in a draw regardless of who was black or white.
Said differently, chess is only fun because humans are limited in their ability to calculate and so make mistakes. These mistakes create opportunities that the other player can exploit. And it is these errors that create the immense variation in chess games and the fun that we have playing it.
How is it that the economic model of chess is so different from reality? The explanation must lie in our assumption about how chess players behave. Real chess players are not like economic agents: we care about the past (so how we got to a particular position matters, for example if we are trying to execute a strategy that we hope will lead to checkmate); we make mistakes (in my case, too many!), and the mental costs of looking ahead more than two or three moves are so large that we usually don't bother, so we rely on intuition more than calculation. Charitably, intuition is an emotional response to the layout of pieces on the board that has been honed by experience. More harshly maybe, it is some combination of educated guesses and hope. Herbert Simon called this 'bounded rationality'.
Before taking up chess, I thought that bounded rationality meant that economic models were at least an approximation to the world in which we live. Now, I am not sure we can be so confident. The economic model of chess, for example, is so bad that it misses the essential attribute of the game and makes predictions that are beyond foolish. There is an old joke about two economists walking down the road. The one sees a $20 bill, and tells his friend: "There's a $20 bill!" The friend says: "It can't be. If it were, someone would already have picked it up". In the world in which we live, there ARE $20 bills on the sidewalk. And probably much more, besides.
Comments