Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: I don't use illegal moves EVER

Author: leonid

Date: 14:57:01 11/29/99

Go up one level in this thread


On November 29, 1999 at 14:51:55, Heiner Marxen wrote:

>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.

What Dann have said sound to me as partially correct. It is correct in the sense
that in the chess game it is not necessary to even look for mate. Material
balance will say to your game where to go. Only he is missing one point - mate
solving logic is really efficent! It is good to have it in your complet chess
game. In a split of the second you can see the mate as far as 14 plys deep. Here
the exact time: 400Mhz AMD, around 30 nodes in each ply, not the most quick mate
solving logic used for better seeing, 14 plys deep, take average 0.05 of second.
This is not expensive to use before each move and it is more that welcome help
at the end of the game. I just can't reach some efficent positional move at
comparable speed even 8 plys deep.



>>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.

Here we are 100% different but the reason is mainly in the code bulk. Also for
me mate solving logic is already so quick compared with what I need for the
chess game (not for the stand alone logic) that some extra speed have almost no
sense. After experience, I could see that the most chess game must recognize the
mate 8 and 10 plys deep.


>- internal iterative deepening: I do that.  TT helps here.

Nothing similar even here.

>- special treatment in the last few plies, including specialized move
>  generators.

Perfect coincidence in this moment. Those two first plies give the most speeding
in mate solving logic and positional one.


>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).


Don't do this. My logic have no tables or something of this nature. Everything
is found after strict general logic and nothing more. All those additional tools
could become very interesting to look through, if I will come one day back to
this part of my game and when the volume of game will be no more the problem.

>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.

Here we conicide once again. In my logic checking moves goes ahead of the moves
line. The same is true for "positional logic". Even there this kind of alignent
speed the game.


>>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.


I never found no talking about the mate solving techincs as well, but I found
some places with the interest to the solution of the mate containing positions.
Some mate contaning positions were created in the way like I did. They containe
many fantasy pieces, like nine queens and four rooks. I never have seen this
kind of problems published in chess journals that I used to verify my logic. I
also expected that it is very difficult to compose such a position without any
help from special software. But some people did. I still have many of those
positions in my collection. They was created and used for cleaning the bugs from
the code. They are still  used from time to time.

I feel me almost nostalgic when I think about mate solving logic. It was the
most intersting and verifiable part of my game. Now, even after many months of
trying and asking around, I have no idea where my positional logic stays in the
sense of speed. In mate everything was visible and reachable. Just try few
positions on your and other game. If you need you can create there as many mate
containing positions as you like on the spot.

Leonid.


>>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.