Older Version Newer Version

GerdIsenberg GerdIsenberg Nov 11, 2017

**[[Home]] * [[Board Representation]] * [[Bitboards]] * [[Pawn Pattern and Properties]] * Dispersion and Distortion**
|| [[image:Luna.jpg width="195" height="252" link="http://www.chgs.umn.edu/museum/responses/bak/chess.html"]] ||~   || **Dispersion** and **Distortion**,
[[Hans Kmoch|Kmoch's]] terms <ref>[[Hans Kmoch]] (**1959, 1990**). //Pawn Power in Chess//. New York: Dover, 1990. Previous ed.: New York: McKay, 1959. ISBN 0-486-26486-6</ref> <ref>[[https://www.chess.com/forum/view/chess-equipment/pawn-power-in-chess-by-hans-kmoch-glossary-of-terms|Pawn Power in Chess by Hans Kmoch - Glossary of Terms - Chess Forums]] - [[https://en.wikipedia.org/wiki/Chess.com|Chess.com]]</ref> for [[Pawn Structure|pawn structure]] [[Weak Pawns|weaknesses]] due to vertical or horizontal splitting caused by [[Captures|captures]] or [[Pawn Push|advancement]]. The proposed functions may be used via an additional scaling or indirection, f.i. to index a table with concrete penalties. ||
|| [[Arts#Bak|Samuel Bak]] - Luna <ref>[[http://www.chgs.umn.edu/museum/responses/bak/chess.html|Chess in the Art of Samuel Bak]], [[http://www.chgs.umn.edu/|Center for Holocaust & Genocide Studies]], [[https://en.wikipedia.org/wiki/University_of_Minnesota|University of Minnesota]]</ref> ||~   ||^   ||
[[toc]]
=Dispersion= 
[[#Dispersion]] **Dispersion** is [[Hans Kmoch|Kmoch's]] term for vertical splitting of pawns (most commonly, isolation) caused by captures. Having three or four [[Pawn Islands (Bitboards)|islands]] while the opponent has one or two - assuming about the same number of pawns for both sides - may be considered in evaluation. But this is also implicitly done by evaluating [[Double and Triple (Bitboards)|double- or triple]] and [[Isolated Pawns (Bitboards)#IsolanisSetWise|isolated]] or the balance of weak pawns in general. Some arbitrary dispersion measure, intended as [[Evaluation|evaluation]] term.
[[code format="cpp"]]
int dispersion(U64 pawns)
{
   BYTE fileset  = (BYTE) soutFill(pawns);
   int  ni = popCount(islandsEastFiles(fileset));
   int  np = popCount(wpawns);
   return abs(3*ni*ni - np);
}

BYTE islandsEastFiles(BYTE f) {return f & ((f ^ (f >> 1));}
[[code]]
The higher the worse.
[[code]]
  \  number if islands
   \     1   2   3   4
np  \    3  12  27  48
_____\________________
 1   |   2   -   -   -
 2   |   1  10   -   -
 3   |   0   9  24   -
 4   |   1   8  23  44
 5   |   2   7  22  43
 6   |   3   6  21  42
 7   |   4   5  20  41
 8   |   5   4  19  40
[[code]]
[[#Distortion]]
=Distortion= 
Distortion is [[Hans Kmoch|Kmoch's]] term for horizontal splitting of pawns caused by advances. One may use something like this based on [[Pawn Fills|rearfill]], xor and [[Population Count|population count]] to get an idea of distortion. It considers the rank-difference of two file-adjacent pawns (if any) as distortion penalty - the higher the worse. [[Isolated Pawns (Bitboards)IsolanisSetWise|Half-isolated]] or even [[Isolated Pawn|isolated pawns]] contribute a distortion penalty according to the size of their rearfill from 2 to 7 for each empty neighboring file, which discourages advancement of such pawns, interacting with terms considerring (half-) isolated pawns. Alternatively, for a "reverse" distortion penalty to encourage advancement of half-isolanis, one may use [[Pawn Fills|frontfill]] instead with a slightly different semantic is case of [[Doubled Pawn|doubled pawns]]. 
[[code format="cpp"]]
int wDistortion(U64 wpawns) {
   U64 fill  = wRearFill(wpawns); // wFrontFill
   U64 delta = (fill ^ (fill<<1)) & C64(0xfefefefefefefefe));
   return popCount(delta);
}
[[code]]
High distortion sample:
[[code]]
wpawns              rearFill            rearFill << 1      xor & ~A-File
. . . . . . . .     . . . . . . . .     . . . . . . . .     . . . . . . . .
. . . . . . . .     . . . . . . . .     . . . . . . . .     . . . . . . . .
. . 1 . 1 . 1 .     . . 1 . 1 . 1 .     . . . 1 . 1 . 1     . . 1 1 1 1 1 1
. . . . . . . .     . . 1 . 1 . 1 .     . . . 1 . 1 . 1     . . 1 1 1 1 1 1
1 . . . . . . .     1 . 1 . 1 . 1 .     . 1 . 1 . 1 . 1     . 1 1 1 1 1 1 1
. . . . . . . .     1 . 1 . 1 . 1 .     1 1 . 1 . 1 . 1     . 1 1 1 1 1 1 1
. 1 . 1 . 1 . 1     1 1 1 1 1 1 1 1     1 1 1 1 1 1 1 1     . . . . . . . .
. . . . . . . .     1 1 1 1 1 1 1 1     . 1 1 1 1 1 1 1     . . . . . . . .

                                                            26 bits sets
[[code]]
=See also= 
* [[Isolated Pawn]]
* [[Isolated Pawns (Bitboards)]]
* [[Pawn Islands]]
* [[Pawn Islands (Bitboards)]]

=External Links= 
* [[https://www.chess.com/forum/view/chess-equipment/pawn-power-in-chess-by-hans-kmoch-glossary-of-terms|Pawn Power in Chess by Hans Kmoch - Glossary of Terms - Chess Forums]] - [[https://en.wikipedia.org/wiki/Chess.com|Chess.com]]
* [[http://perl.guru.org/scott/hobbies/chess/|Monsoon/Typhoon Homepage]] by [[Scott Gasch]]
* [[https://en.wikipedia.org/wiki/Dispersion|Dispersion from Wikipedia]]
* [[https://en.wikipedia.org/wiki/Distortion_%28disambiguation%29|Distortion (disambiguation) from Wikipedia]]

=References= 
<references />
=What links here?= 
[[include page="Dispersion and Distortion" component="backlinks" limit="40" ]]
**[[Pawn Pattern and Properties|Up one Level]]**