Older versions of crafty had a lot of anti-human type code in them. Avoid trading material, avoid locked pawn structures, avoid certain types of problematic opening positions (Stonewall as an example where a program usually mishandles things and falls into a kingside attack before it realizes what is going on). But over time, I have removed many of those crutches because as depth/speed has gone up, the ability to handle those with general knowledge has improved. Nowadays there is really nothing wrong with playing black against a strong human, and walking into a Stonewall setup. Programs should not fear endgames and therefore avoid trading, because they play endgames extremely accurately also.Fernando wrote:What a pleasure to see you here, Bob! Respect what Chris W told to you and what you answered, I cannot add nothing but just the banal assertion that when you have a massive tool to do something, better to drop the old stone hammer.
What I do fully take from Chris thinking, not expressed here but elsewhere and lot time ago, is his idea that there is something Ok in the engine pushing the adversary to uncharted waters, that is, choosing sometimes lines that are not the best in terms of conventional scores, but are the best in terms of risky sub lines coming from there. Against humans this is usually lethal. At that you can add a superb improvement in the amount of interesting games.
I wonder if you could program a Crafty tailored specifically to take humans.
My best
Fern
In short, for a good while we needed "anti-human" strategies in a chess engine to avoid playing into positions where the computer's strength was nullified. Nowadays, it seems to be the humans that are trying to rely on anti-computer strategies, and the computers are getting better at dealing with them, without needing special-case code...
Yes there are a few small holes scattered around, but overall...