The Inferno Thread, part II
Posted: Sat Mar 07, 2020 5:24 pm
Three years ago I ran a kind of blog here on the creation of an engine for Tenjiku Shogi ( http://talkchess.com/forum3/viewtopic.php?f=7&t=63356 ). This never progressed much beyond the search and move generation; because I was a bit in a hurry (I had entered it in a correspondence tournament before I had even started designing it, and my clock was running), I started running it with a makeshift material-only evaluation (using piece values obtained from the internet) as soon as I could. Even with this evaluation, and half its time already elapsed, it still managed to finish second in the tourney. The year after it, it even won, because it had white in the key game against the title defender. (And having white is a pretty significant advantage,in Tenjiku Shogi.) Last year, however, it played black again, and dismally lost, despite coming out of the opening with a little advantage.
The reason was that the material-only evaluation utterly sucked; it did not encourage pushing its Pawns (which in the opening phase can be very dangerous, as they would allow enemy Fire Demons to sneak into your camp). And it did not even have piece-square tables, just a centralization bonus for all pieces. Which made all its strong sliders 'float up' against its mostly unbroken Pawn wall like air bubbles against an ice sheet, after which it was just waiting to be slaughtered by a well-planned breakthough of the opponent in a selected place. Even the piece values sucked, making it take many of the unfavorable trades the opponent smartly offered it. (This mostly because of the lack to take promotability into account correctly.)
The 4th championship in which it participates is just starting, so it is high time to shape up its evaluation a bit. I want to report about that project here. Rather than reviving the old thread, I started this new one.
I would like to fix the following things that proved to be obvious and embarrasing shortcomings last year:
* Pawn structure: scattering the Pawns too much (creating too many holes for diagonal movers) should still be discouraged. But not by absolute discouragement of any Pawn move, but by detecting and penalizing actual holes. So that holes will be closed after they served their use. Advancing all Pawns one rank would keep the Pawn wall as closed as it can be, and should be encouraged. It creates more space for the pieces behind it to reposition themselves, and (very important!) is allows the original Pawn rank (which is the foremost rank of the promotion zone) to be protected by sideway sliders.
* Mobility: especially for slider development it is very important to optimize actual mobility, rather than mindlessly have them march towards the center as far as they can. This also provides a drive for pushing Pawns.
* Stepper clusters: there are many pieces that move like a King with some moves missing. On the 16x16 board it takes very long to get them into play, even for defensive purposes (as they start on the back rank it takes 4 moves to even use one to protect Pawns on their starting rank!). Initially they seem almost useless. But in last year's game they were decisive. For an isolated stepper adventurously attacking is rather suicidal. But clusters of steppers mutually protecting each other can become very dangerous when they approach the promotion zone (somewhat like connected passed super-Pawns). As they all do promote, with a quite significant gain in value.
* Piece values should be rationalize w.r.t. promotability, through some algorithm that can estimate how much of the (latent) promotion value you will be able to harvest, considering the current actual material balance of the base values. You will not be able to promote anything before you have worn down the opponent's defense of the promotion zone, and doing the latter will unavoidably force you to trade much of your material for his. And you won't get any promotion gain from the pieces you trade. In last year's game the engine was left with sliders that gained almost nothing on promotion bythe time the zones became undefensible against slider intrusion, while the opponent had smartly kept a few sliders with strong promotion, amongst which the one that promoted to the virtually invincible Fire Demon. (Which we now think is worth any number of enemy pieces.)
The reason was that the material-only evaluation utterly sucked; it did not encourage pushing its Pawns (which in the opening phase can be very dangerous, as they would allow enemy Fire Demons to sneak into your camp). And it did not even have piece-square tables, just a centralization bonus for all pieces. Which made all its strong sliders 'float up' against its mostly unbroken Pawn wall like air bubbles against an ice sheet, after which it was just waiting to be slaughtered by a well-planned breakthough of the opponent in a selected place. Even the piece values sucked, making it take many of the unfavorable trades the opponent smartly offered it. (This mostly because of the lack to take promotability into account correctly.)
The 4th championship in which it participates is just starting, so it is high time to shape up its evaluation a bit. I want to report about that project here. Rather than reviving the old thread, I started this new one.
I would like to fix the following things that proved to be obvious and embarrasing shortcomings last year:
* Pawn structure: scattering the Pawns too much (creating too many holes for diagonal movers) should still be discouraged. But not by absolute discouragement of any Pawn move, but by detecting and penalizing actual holes. So that holes will be closed after they served their use. Advancing all Pawns one rank would keep the Pawn wall as closed as it can be, and should be encouraged. It creates more space for the pieces behind it to reposition themselves, and (very important!) is allows the original Pawn rank (which is the foremost rank of the promotion zone) to be protected by sideway sliders.
* Mobility: especially for slider development it is very important to optimize actual mobility, rather than mindlessly have them march towards the center as far as they can. This also provides a drive for pushing Pawns.
* Stepper clusters: there are many pieces that move like a King with some moves missing. On the 16x16 board it takes very long to get them into play, even for defensive purposes (as they start on the back rank it takes 4 moves to even use one to protect Pawns on their starting rank!). Initially they seem almost useless. But in last year's game they were decisive. For an isolated stepper adventurously attacking is rather suicidal. But clusters of steppers mutually protecting each other can become very dangerous when they approach the promotion zone (somewhat like connected passed super-Pawns). As they all do promote, with a quite significant gain in value.
* Piece values should be rationalize w.r.t. promotability, through some algorithm that can estimate how much of the (latent) promotion value you will be able to harvest, considering the current actual material balance of the base values. You will not be able to promote anything before you have worn down the opponent's defense of the promotion zone, and doing the latter will unavoidably force you to trade much of your material for his. And you won't get any promotion gain from the pieces you trade. In last year's game the engine was left with sliders that gained almost nothing on promotion bythe time the zones became undefensible against slider intrusion, while the opponent had smartly kept a few sliders with strong promotion, amongst which the one that promoted to the virtually invincible Fire Demon. (Which we now think is worth any number of enemy pieces.)