Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Improving the endgame of my engine

Author: martin fierz

Date: 06:00:46 04/08/04

Go up one level in this thread


On April 08, 2004 at 08:13:11, Renze Steenhuisen wrote:

>>>I'm about to start coding on my engine again and have thought about improving
>>>the endgame play. I don't like using egtb so I'm thinking about using special
>>>evaluation cases when there are few pieces left on the board. Is this a good
>>>idea or is special evaluation cases a dead end?
>>
>>i do the same. my problem is that i have only covered a couple of special cases
>>up to now, and not in much detail. another problem is that many things are still
>>the same for all endgames; e.g. it is nearly always good to have a centralized
>>king, and it is always good to have passers and candidates and so on. however,
>>for example the value of a passer depends on the endgame type. so you need some
>>kind of strategy for computing common things for all endgames, and only doing
>>some special stuff for the special cases. because if you want to write an entire
>>eval for every type of ending, your code will get HUGE :-)
>
>If it pays of, it doesn't really matter... Although it is lots of work!

what i meant is that if you *repeat* the same stuff in every endgame eval
function, then if you decide to change something you have to change it
everywhere, and you will forget to do it at one place etc. etc.

>
>>i still haven't figured out a really good way to do this myself, my code is a
>>bit of a mess in this respect :-(
>
>Tidy it up then, it gives you some time to think about your code as well. Most
>of the time I do such a thing it does help!

hehe, i'd like to tidy up. but it's quite unclear what belongs where IMO. as i
say, you need to do the basic stuff in one place, and then use that information
in the special eval functions - for readability, debuggability and
maintainability. so you need to decide what you do where and how, which is a
difficult decision...


>
>>but in principle, i believe that you need special knowledge for different
>>endings. there *are* huge differences between different types of endgames, and
>>this leads to eval discontinuities - but i'm pretty certain that you shouldn't
>>worry about this. there is the "eval discontinuity = evil" fraction here with
>>bob as spokesperson. but as a chess player i can assure you that these
>>discontinuities are absolutely real, and IMO a good evaluation should know about
>>them...
>>
>>cheers
>>  martin
>
>What is the definition of End Game in here? Are we talking about late endgame
>(==EGTBs have been generated), or are we talking about more general things like
>"Pawn Ending", etc etc?

general things. pawn ending ~= knight ending != queen ending comes to mind. or
opposite-colored bishop ending != same-colored bishop ending. and so on. i just
won a drawn endgame yesterday against a 2000-rated kid because she didn't
realize that the rook ending she was in was drawn while the pawn ending was
not...

cheers
  martin

>
>Cheers!
>  Renze



This page took 0 seconds to execute

Last modified: Thu, 15 Apr 21 08:11:13 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.