Author: Heiner Marxen
Date: 11:51:55 11/29/99
Go up one level in this thread
On November 29, 1999 at 11:58:52, leonid wrote: >On November 29, 1999 at 09:49:36, Heiner Marxen wrote: > >>>What I wanted to know is how many variation of "mate solving logic" you have in >>>your game. Number of variation can go endlessly. I left, for instance, only >four >>>in my logic. Difference in version of the logic consist in the fact that each >>>will find at different speed solution. Some logic will find more rapidly the >>>response but will find the mate not all the time when it is there. >> >>I see. I have just one variation: prove shortest mate (or absence of). >> >>I have some ideas about a mate finder mode, but not yet implemented >>anything. Dann Corbit suggested a material evaluation goal to me, >>but I'm not yet sure that I like it. > >Material evaluation sound to me as very strange. I do nothing of this kind. When >you look for mate there are no reason to search any material evaluation. Yes, sure, that is strange. What Dann suggested was a completely different goal: do not search for a mate, but for a (forced) material gain. Although even if found, it does not say much, it could be an interesting starting point for tactical analysis. >Can you say, if few words, how in general mate is found in the logic, not >necessarily your. I have no idea what is the usual way. When I wrote my logic I >expected that everybody do almost the same way. After I found that nobody even >write it inside of the chess game. You came as the next surprise. Not only you As you say: most do not write an explicit mate solver. You obviously think a mate solver to be the natural first stage of a playing program. Most others seem to disagree. So the "usual way" is somewhat undefined. The basic mate logic is so simple, that I cannot imagine someone doing it much different than you and me. Special options are - transposition table (TT, cache): I do that, it is really important for depth >= 5. The deeper, the better. - internal iterative deepening: I do that. TT helps here. - special treatment in the last few plies, including specialized move generators. Of course there are other things you can do, but they start to become exotic, like - let the defender try to find a mate in 1 - if the attacker has only pawns (besides his king), try to count how many moves he must do at least in order to promote one in order to say check at least (provided the pawns themselves cannot say check). One thing is important, however, and I do not know about any special method besides my own: how to select the first defender move. Nearly always all defender moves are good enough to defy the intended mate, since the few attacker moves we already did most often are so absurd, that there is no chance to deliver any mate any more. But the different defender moves do span search trees of vastly different size. To select that defender move which spans the smallest tree is *very* important. Basically, I prefer checks and captures: both reduce the legal moves of the attacker, which is a good thing. I also increase the freedom of the defender king. Beyond that it becomes fuzzy. >wrote the stand alone mate solving logic but did it a long, long time before me. It just happened that I choose to write a mate solver as my first nontrivial programming exercise. I stuck to that project :-) >The next descovery was for me the positions of invitable mate, through your >page, that was composed in a stange way like I did. Later I found even few other >places that contain similar positions. I do not know of any book or web page, which presents the art of programming a chess mate solver, or discusses the important techniques of it. For the art of "mate finding", as opposed to "proving shortest mate", there is some literature, e.g. together with "proof-number search". There are some web resources. But they do not search for shortest mate, but for any mate, which is a more practically useful task. >Leonid Heiner Marxen heiner@drb.insel.de http://www.drb.insel.de/~heiner/
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.