Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: What is the lowest rated program tha can still solve this position ?

Author: Sune Fischer

Date: 15:15:03 04/20/03

Go up one level in this thread


On April 20, 2003 at 17:20:11, Uri Blass wrote:


>>>>All you have to do is to support the egtbs.
>>>
>>>No
>>
>>Yes :)
>>
>>>You do not need to have tablebases for this and most people have not enough
>>>memory for all the 5 piece tablebases(KBPP vs K is 5).
>>
>>It's a simple TB draw 4 moves in, the PV of Crafty also shows that.
>
>It proves nothing.

What doesn't it prove?
I said that the TBs are all you need to find this, and that this was the reason
Crafty found it, because the PV had the <EGTB> tag.

Here is Frenzee, with TBs:
1	177	0	13		1...Ra4
2	190	0	71		1...Ra4 2.Bd5
2	173	1	162		1...Ra1+ 2.Rf1 Rb1
3	186	1	409		1...Ra1+ 2.Rf1 Ra2 3.Rd1
3	176	1	870		1...Rc7 2.Rd2 Rc2
4	187	2	1876		1...Rc7 2.Rb2 Rc1+ 3.Kf2 Kf4
4	176	2	2366		1...Ra1+ 2.Rf1 Ra2 3.Rd1 Rb2
5	194	2	4674		1...Ra1+ 2.Rf1 Ra2 3.Re1 Rd2 4.Re7
5	191	3	9216		1...Rc7 2.Rb2 Kf4 3.Rb4+ Kg5
6	189	5	26552		1...Rc7 2.Rb2 Rc1+ 3.Kf2 Rh1 4.Kg3 Rc1
7	199	11	72486		1...Rc7 2.Rb2 Rc8 3.Rb7
7	194	19	113728		1...Ra1+ 2.Rf1 Ra2 3.h4+ Kg6 4.h5+ Kg5 5.Re1 Rd2 6.Re7
8	0	41	208218		1...Ra1+ 2.Rf1 Rxf1+ 3.Kxf1 Bh3 4.gxh3 Kf4 5.h4 Ke5 6.h3 Kf4 7.h5
Kf5 8.h4 Ke6 9.h6 Kf7 10.h5 Kg8 11.h7+ Kxh7 12.h6 Kxh6 13.Bd1 Kg5 14.Bc2 Kf4
15.Bb1 Ke3 16.Ba2 Kd2 17.Bb1 Kc1 18.Ba2 Kd1 19.Bb1 Kc1

It is easy.

The question is if Crafty can find it _without_ TBs....


>>I believe any engine with a not completely broken TB implementation can find
>>this draw. It might be a good position to check the implementation, though.
>
>No
>
>I believe that most people have not the KBPP vs K tablebases so it is bad
>position.

Err??

>I do not so
>I cannot use it to test nothing about tablebases and I do not plan to download
>the KBPP vs K tablebases only for testing because I prefer to use memory of the
>computer for other purposes.
>
>I think that programs should know every 4 vs 1 position by knowledge and it is a
>waste of time even to call tablebases in 4 vs 1 positions.

If you program every bit of 4 vs 1 knowledge you are practicly building your own
table bases. So what's the difference?

>I think that it is dependent on the knowledge.
>I did not think about specific knowledge for 5 piece positions but about
>knowledge that is also common to 6 and 7 piece positions(I agree that knowledge
>like knowledge to win KRB vs KR or KBN vs K may do tablebases less important but
>I did not think about that knowledge but about knowledge in evaluation that is
>relevant also for other positions).
>
>It may be possible to use it in a productive way to avoid problems
>that I mentioned(the program prefers loss by KR vs KPPP and not drawn KR vs KPP)
>by having rules to trust tablebases scores only in part of the cases but I do
>not like it.

I'm not sure I know what you're thinking of, but you can try using swindle
techniques, ie. if you see a draw turn off the TBs and let it search among the
non-losing moves. It won't help one bit if the opponent also has TBs :)

>I also do not like learning to use another code that is not mine when there are
>a lot of other things that should be improved.

I feel the same, on the other hand I think programming 4-5 piece knowledge is
not very exciting. Only if you can do something that is expressed in a general
form.

>>Maybe, maybe not (have you checked the code?).
>
>I do not need to do it.
>I can simply give crafty to analyze and I do not have the relevant tablebases.

Okay, guess it's not unlikely to have this bit of specific eval.
Maybe I too should add this case :)

>>I don't think anyone is highly motivated to program lots of simple 4-5 piece
>>specific endgames when the engine most often is used with TBs. Seems time would
>>be better spent in the areas out of reach for the TBs.
>
>This is exactly the point.
>
>This knowledge is mainly for position that is out of the tablebases and also for
>position that is in the tablebases.
>
>KBPP vs KP is also draw.
>
>7k/2p5/8/8/8/7P/7P/5BK1 w - - 0 1

Not always:
7k/8/8/7P/7P/7P/2p4P/5BK1 w - - 0 1

:)

>>I also think there are too many exceptions to make simple rules for what is won,
>>drawn or lost in these endgames. Often one tempi is enough to change the
>>outcome, if you add general knowledge you are likely to be wrong in lots of
>>cases too.
>
>Your opinion.
>
>My opinion is that there are some rules that are always right.
>I dislike tablebases at this moment.
>
>I also do not like to add to my code something that is even not alway
>correct(tablebases can tell you mate in 90 and it is a drawn by the 50 move
>rule.

But does this hurt?
It will find the shortest mate, if this turns out to be drawn to the 50 move
rule then nothing has been lost, because it couldn't find a shorter mate anyway.

>I know that programs with tablebases usually have no rule to translate mate in
>90 to some static score that is less than mate because of the 50 move rule and I
>do not like copying from what other people are doing.

Neither do I, but it is rather fuzzy who is copying what.
I didn't invent alpha-beta or PVS or SEE or nullmove, either :)

-S.

>Uri



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.