Rotated Indices

From Chessprogramming wiki
Jump to: navigation, search

Home * Board Representation * Bitboards * Sliding Piece Attacks * Rotated Indices

Barbara Mittman - Yellow Cherries [1]

Rotated indices,
a deconcentrated version of rotated bitboards, proposed by Alessandro Damiani [2] as used in his engine Fortress. Instead of using rotated bitboards with packed 15 diagonals and 15 anti-diagonals each, Alessandro applies an array of 16 + 30 rotated indices for all 16 orthogonal and 30 diagonal lines on the board. Those indices are incrementally updated during make/unmake, which takes a tad more effort - but once updated, the rotated indices pay off, the more often they are used inside a node of the search. No further computation is required to look up attacks, pure indexed memory accesses.

The possible disadvantage - rotated indices, similar or slightly worse than rotated bitboards, are not as versatile as techniques relying on one occupancy bitboard only - if it is about a temporary change of the occupancy on the fly for x-rays and pinned pieces etc..

See also

Forum Posts

References