Copyright (c) 2013 John L. Jerz

Appendix G: Tracing Mobility through Squares Attacked by both Friendly and Enemy Pieces

Home
A Proposed Heuristic for a Computer Chess Program (John L. Jerz)
Problem Solving and the Gathering of Diagnostic Information (John L. Jerz)
A Concept of Strategy (John L. Jerz)
Books/Articles I am Reading
Quotes from References of Interest
Satire/ Play
Viva La Vida
Quotes on Thinking
Quotes on Planning
Quotes on Strategy
Quotes Concerning Problem Solving
Computer Chess
Chess Analysis
Early Computers/ New Computers
Problem Solving/ Creativity
Game Theory
Favorite Links
About Me
Additional Notes
The Case for Using Probabilistic Knowledge in a Computer Chess Program (John L. Jerz)
Resilience in Man and Machine

Appendix G: Tracing Mobility through Squares Attacked by both Friendly and Enemy Pieces
 
"Even with a coherent and usable set of goals to guide strategic planning, the process is still difficult because alternatives have to be evaluated in the face of uncertainty." - Alan Gropman, Long-Range Planning (1979)
 
This subject is important considering the fact that it will often be the case that it will not be clear whether we can "safely" trace piece mobility through squares attacked by both friendly and enemy pieces.
 
The first thing we need to do is to count up how many mobility squares and pieces attacked are involved if the piece is "allowed" to trace mobility through the candidate square. If the answer is that "not much" mobility/ attacked pieces/ defended pieces result, then it may not matter what method we use to determine the "allowability" of such mobility in the evaluation function.
 
If mobility through the square in question would permit significant pressure, we might consider a simple algorithm that simply counts the number of attackers and the numbers of defenders. If there are and equal or greater number of friendly pieces "defending" the square in question, then we might allow the piece in question to trace mobility through the square in question and put pressure on the pieces in the squares beyond.
 
A more complicated algorithm will consider, in addition to the above information, the lowest value enemy "attacker". We might consider a "speculative exchange of pieces" on the square in question, involving available attackers and defenders.
 
When estimating the positional pressure of the pieces, we might just consider the "upper bound" for piece mobility (no restrictions placed) and the "lower bound" (mobility denied for any square attacked by an enemy piece) and just split the difference, or take some fractional value of "upper" and "lower" bounds.
 
Whatever method we use will have to be tested. One of these above methods will perform better than the others in a sample tournament of a few hundred games (at a fast time control), and perhaps we should make our decision on which algorithm to use based on the performance results from such a tournament. Our task now becomes one of creatively generating strategies for resolving such conflicts (when they occur) and generating performance test results.
 
We might get best results by assuming that the end-point "leaf" positions in our search tree are absolutely quiescent, in that there are no pins, forks, or other tactical tricks lurking. It might be, however, that we should consider the presence/ absence of a small number of these tricks when scoring the position. There might be an easy way to identify positional "cues" which indicate that taking the computing time to identify and score these tactical measures has a performance "payoff".
 
Another idea here is to use probability. When we have a case where we are tracing mobility for our knight and we come up to a square attacked by an enemy knight. We might ask, "in a database of 1000 games, what is the probability that a knight can move safely through a square attacked by an enemy knight?" We might find that the probability in this case is 50%. We would then use the 50% to modify the bonus given to this piece for mobility through the square in question. We would then need a database of a large number of games, and a processing run which computes the probabilities of pieces being able to safely trace mobility through certain squares attacked by enemy pieces. The general goal here is to estimate how much the enemy knight constrains the movement of our own knight.
 
Performance testing will again tell us the method(s) that we should adopt in our proposed heuristic.

Enter supporting content here