Horizon effect

Discussion of chess software programming and technical issues.

Moderators: hgm, Rebel, chrisw

User avatar
Evert
Posts: 2929
Joined: Sat Jan 22, 2011 12:42 am
Location: NL

Re: Horizon effect

Post by Evert »

hgm wrote:The latter is usually the case. And it is very common: A Fire Demon of player A is lured away to the wings, where it can burn away an enormous amount of material. But that allows the Demon of player B to develop and attack the center, destroying A's jumping generals there in a sacrifice. (Nominally the generals are worth less than the Demon.) Then the jumping generals of player B get a free view on the suffocated King of A, as all remaining pieces of A are transparent to them. It takes quite some moves to perform the mate, and the plan can only be set into motion after Demon A penetrates the wings deeply enough that it isn't able to quickly move back to the center.

I guess this could be described by an eval term that increases the value of the jumping generals that can move along a file if the opponent does not have the equivalent one (which could block it), and his King doesn't have any escape squares on a different file. Or, as a precursor, when they both do have the generals, but a Demon can burn them away.
Isn't it reasonable to have a piece-value term that increases the value of jumping sliders if the opponent lacks the appropriate blockers? Then you can compound that in king-safety if the king has no air-hole.
If you use piece lists (with a bitmask? If you separate the pawns it would fit in a 64 bit integer) this could be done quickly.
User avatar
hgm
Posts: 27895
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: Horizon effect

Post by hgm »

Well, if the King has some suitable air space, (off-file, or off-diagonal, depending on the way the threatening jumpers move), having no blockers isn't really a disadvantage. Because perpetual checking is forbidden. So it is really dependent on both lack of air space and loss of the blocker shield. (The latter in particular for file attacks, because the diagonals are not shielded in the first place, and there is no way to quickly get any shielding pieces on them. So there the only defense is to control the diagoal all the way to the board edge with your own slider. For files that is not possible, because you cannot get the Pawn out of the way, but for diagonals you can easily create a hole in the Pawn wall.)

And use of the blockers might be very costly. The initial position has the jumping Rooks facing each other, soft-pinning each other on the Fire Demons directly behind them. So using the jumping Rook to block a check by a jumping Queen or Rook might lose you a Demon. Of course one could have an elaborate matching of the jumping-sliders + Demons patterns.

I use a piece list, but it is unfortunately a bit longer, because I use separate entries for the promoted versions. (This to always have them sorted by value.) Having a presence mask could be a useful ehancement, but I don't have that now.