Mobility

Home * Evaluation * Mobility



Mobility, a measure of the number of choices (legal moves) a player has in a given position. It is often used as a term in the evaluation function of chess programs. It is based on the idea that the more choices you have at your disposal, the stronger your position. A study by Eliot Slater of 350 tournament games in which the material balance was still even after the 20th move showed a definite correlation between a player's mobility and the number of games won.

=Calculating Mobility= In computer programs, mobility is sometimes calculated differently than simply by summing up the number of legal or pseudo-legal moves. Often, it is done piece-by-piece, and the mobility bonus per possible move is not always the same for each type of piece (e.g., in the opening, the mobility of the bishops and knights is more important than that of the rooks). Sometimes forward mobility is scored higher than backward mobility, sometimes (in case of rooks) vertical mobility gets priority over horizontal mobility. Also, if a piece can move to the square of another friendly piece, sometimes that move is also counted - although it would not be a legal move, it is protecting the friendly piece, and therefore still serves a useful role.

Safe Mobility
A couple of programs evaluates so-called safe mobility - counting only squares where a piece can move without being En prise. This might be quite expensive, unless a program already keeps incrementally updated attack tables. In some cases, most notably in case of a knight, a middle-of-the-ground approach, not counting squares controlled by enemy pawns, seems best.

Papa's Entropy
Notes by Tony Marsland on The World Computer-Chess Championship by Hayes and Levy  : Freedom and Papa both use mobility as their primary term in their evaluation functions. As with Wita, both use the ratio of computer's moves / opponent moves. Papa and Wita also multiply by the ratio of the squares controlled and Papa goes one step further and takes the logarithm of this product to form the "entropy" of the position. The true merit of this entropy over the product ratio was not made clear, but it does ensure that in extreme situations the evaluation remains more closely bounded. =The Value of Reaching a Square= Dan Heisman represents an attempt at mathematical abstraction applied to chess, introducing seven concepts as fundamental in analyzing a chess position: mobility, flexibility, vulnerability, center control, piece coordination, time and speed. Heisman applies two dichotomies: actual versus potential and local versus global:

Distance as generalization of mobility and unification of Heisman's notions was introduced by Robert Levinson and Richard Snyder in the famous 1993 ICCA Journal, Vol. 16, No. 3. Abstract and excerpt: This article suggests a new approach to computer chess. A graph-theoretic representation of chess knowledge, uniformly based on a single mathematical abstraction, DISTANCE, is described. Most of the traditional forms of chess knowledge, it is shown, can be formalized in this new representation. In addition to comparing this approach to others, the article gives some experimental results and suggests how the new representation may be unified with existing approaches.

The DISTANCE idea is based on exploring a piece's mobility graph to determine what is close to and what is close to it. From a DISTANCE standpoint, moves on the chess-board are only considered good if they result in improved movement graphs for the mover's pieces and/or inferior ones for the opponent's pieces. Often, a good chess-player will move a piece, not to improve the attacking chances of that piece but rather the attacking chances of the piece behind it. =Mobility with Bitboards= For programs using Bitboards, piece mobility can be calculated very quickly either by Population Count or a SIMD-wise kind of weighted population count. Similar to Attacks by Occupancy Lookup to determine attack sets of sliding pieces, one may use pre-calculated population count or even center-weighted population count as a rough estimate on piece mobility. However it does not consider subsets of let say safe target squares. Most strong chess programs use a mobility calculation as part of the positional evaluation in some way. This approach is taken to the extremes in case of OliThink - a chess engine whose evaluation consists entirely of material balance and mobility. =Progressive Mobility= Fill approaches, like Dumb7Fill or Kogge-Stone algorithm are great to determine target sets one may reach in two or more moves, which population or weighted population might be considered as progressive mobility in some kind of positions. Another application in late endings is to determine whether a piece may control a decisive stop or telestop of a passed pawn in time. Path finding algorithms for various pieces may be applied to find so called Trajectories.

=Quotes=

Alan Turing
Quote by Alan Turing on Slater's 1950 paper Statistics for the Chess Computer and the Factor of Mobility : I wish to make two points concerning Dr. Slater's paper. I was greatly interested by the statistics provided, but fear that some people might draw invalid conclusions from them. It might for instance be thought that a good way of playing is to maximize one's mobility at one's next move, or perhaps to minimize that of one's opponent at his next move but one. It is evidently not feasible to foresee mobilities many moves ahead. Although the immediate mobility is a useful measure of the relative advantage of the players in normal play it by no means follows that it is wise to direct one's play to maximizing such a measure. To do so would be like taking a statistical analysis of the laundry of men in various positions and deciding, from the data collected, that an infallible method of getting ahead in life was to send a large number of shirts to the wash each week.

Eliot Slater
Eliot Slater in reply : Dr. Turing's argument by analogy what a naive laundry worker might conclude about ways of becoming rich really amounts to the suggestion that strategic advantage is the cause rather than the product of an advantage in mobility. I do not think that this can be accepted. An advantage in mobility usually appears in a game a number of moves before strategic advantage is detectable in other ways; it seems to be an essential aspect of what chess-players understand by "development"; and it supplies the decisive criterion of winning or losing.

=See also=
 * Blockade
 * Center Control
 * Connectivity
 * CPW-Engine_eval
 * Influence Quantity of Pieces
 * Pin
 * Population Count of Bitboards
 * Mobility in Chess 4.6


 * Search with Random Leaf Values
 * Space
 * Square Control
 * Strategy
 * Trapped Pieces

=Publications=

1949 ...

 * Claude Shannon (1949). Programming a Computer for Playing Chess. pdf from The Computer History Museum
 * Eliot Slater (1950). Statistics for the Chess Computer and the Factor of Mobility. Proceedings of the Symposium on Information Theory, London. Reprinted (1988) in Computer Chess Compendium, pp. 113-117. Including the transcript of a discussion with Alan Turing and Jack Good
 * Adriaan de Groot (1965, 1978). Thought and Choice in Chess. Mouton & Co Publishers, The Hague, The Netherlands. amazon, google

1980 ...

 * Dap Hartmann (1987). How to Extract Relevant Knowledge from Grandmaster Games. Part 2: the Notion of Mobility, and the Work of De Groot and Slater. ICCA Journal, Vol. 10, No. 2
 * Jan Eric Larsson (1987). Challenging that Mobility is Fundamental. ICCA Journal, Vol. 10, No. 3

1990 ...

 * Dan Heisman (1990, 1999, 2010, 2015).The Positional Elements of Chess. Russell Enterprises
 * Chrilly Donninger (1992). The Relation of Mobility, Strategy and the Mean Dead Rabbit in Chess. Heuristic Programming in AI 3
 * Robert Levinson, Richard Snyder (1993). Distance: Toward the Unification of Chess Knowledge. ICCA Journal, Vol. 16, No. 3
 * Jonathan Allen, Edward Hamilton, Robert Levinson (1997). New Advances in Adaptive Pattern-Oriented Chess. Advances in Computer Chess 8

2000 ...

 * Mark Levene, Trevor Fenner (2001). The Effect of Mobility on Minimaxing of Game Trees with Random Leaf Values. Artificial Intelligence, Vol. 130, No. 1, Review in ICGA Journal, Vol. 24, No. 4, pdf
 * Chrilly Donninger (2006). Plättchen zählen. pdf (German) » Square Control
 * John L. Jerz (2008, 2013). A Proposed Heuristic for a Computer Chess Program.

=Forum Posts=

1993 ...

 * deriving piece values from mobility by Barney Pell, rgc, August 09, 1993
 * Mobility Measure: Proposed Algorithm by Dietrich Kappe, rgc, September 23, 1993

1995 ...

 * Playing for position (mobility) by S.Read, rgcc, September 29, 1995
 * Re: Playing for position (mobility) by Peter Mysliwietz, rgcc, October 02, 1995 » Mobility in Zugzwang


 * Re: Incoporating chess knowledge in chess programs by Bruce Moreland, rgcc, June 28, 1996 » Search with Random Leaf Values
 * Mobility in evaluation functions- how much is it worth? by Tom King, rgcc, June 07, 1997
 * Mobility in eval by Willie Wood, CCC, November 24, 1997

2000 ...

 * Mobility in chess engines by Jean-François Gazet, rgcc, May 11, 2003
 * piece mobility? by Daniel Shawul, CCC, January 08, 2004
 * An idea: Offensive and defensive mobility by Tord Romstad, CCC, February 06, 2004

2005 ...

 * Mobility by David B. Weller, CCC, January 06, 2005
 * Mobility in Chess Evaluation Function at terminal-nodes by Stuart Cracraft, CCC, December 28, 2005
 * Re: CCC Retirement, Robert Hyatt on Mobility, CCC, January 16, 2006
 * Magic and precomputation by Onno Garms, Winboard Programming Forum, September 23, 2007
 * The limits of "Just-mobility-evaluation" by Oliver Brausch, CCC, January 29, 2008
 * Random number mobility scores by Guest, rgcc, September 20, 2008 » Search with Random Leaf Values
 * future mobility evaluation term by Stuart Cracraft, CCC, December 01, 2008

2010 ...

 * mobility evaluation of stockfish by Uri Blass, CCC, October 09, 2010
 * Attack and mobility evaluation in chess variants by Evert Glebbeek, CCC, February 15, 2011
 * Mobility eval by Harm Geert Muller, CCC, May 01, 2012
 * static mobility(Q&D) by Harm Geert Muller, CCC, March 13, 2013
 * Safe spatial mobility by Lyudmil Tsvetkov, CCC, August 04, 2013
 * Re: Engine results: a surprise! by Harm Geert Muller, CCC, October 18, 2013

2015 ...

 * mobility score by Colin Jenkins, CCC, May 15, 2015
 * Bishop Mobility ? by Henk van den Belt, CCC, August 31, 2016
 * Mobility Evaluation ? by Mahmoud Uthman, CCC, October 12, 2016
 * Safe mobility? by J. Wesley Cleveland, CCC, July, 18, 2017

2020 ...

 * Excluding squares from mobility by Oliver Brausch, CCC, September 27, 2020

=External Links=
 * Mobility from Wikipedia
 * Chess Strategy/Mobility - Wikibooks
 * bitboard mobility Copyright (c) 2003, Gunnar Andersson » Othello
 * MadChess 3.0 Beta 5c5d4fc (Piece Mobility) by Erik Madsen, February 1, 2020 » MadChess

=References= Up one level