Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: CT 15 and evaluation problem

Author: José Carlos

Date: 05:55:56 11/03/03

Go up one level in this thread


On November 02, 2003 at 15:26:06, Christophe Theron wrote:

>On November 02, 2003 at 05:38:58, Kurt Utzinger wrote:
>
>>On November 02, 2003 at 04:54:06, Gian-Carlo Pascutto wrote:
>>
>>>On November 02, 2003 at 03:44:09, Ricardo Gibert wrote:
>>>
>>>>On November 02, 2003 at 03:20:26, Kurt Utzinger wrote:
>>>>
>>>>>A good example where Chess Tiger 15 needs much more time than
>>>>>most other engines to evaluate the position as a draw:
>>>>>
>>>>>[D]8/8/r7/3K4/3Q4/5p2/5p2/6k1 b - - 0 1
>>>>>
>>>>
>>>>This is also a good example of a type of position of negligible practical >value.
>>>>I don't think CT15's programmer needs to worry about it at all.
>>>
>>>*cough* *cough* *cough*
>>>
>>>IsiChess - ChessTiger, Dutch Open 2003
>>>
>>>--
>>>GCP
>>
>>IsiChess MMX - Chess Tiger
>>[D]8/1k6/p5q1/4P3/1P3P2/7Q/3K3p/8 b - - 0 1
>>
>>Analysis by Chess Tiger 15.0: (P4 1.8/24 MB hash)
>>
>>64...Qg1 65.e6 Qd4+ 66.Kc1 Qa1+ 67.Kd2
>>  µ  (-0.88)   Depth: 1   00:00:00
>>  -+  (-7.51)   Depth: 4   00:00:00  2kN
>>64...Qb1 65.Qd7+ Kb6 66.Qd6+ Kb5 67.Qc5+ Ka4 68.e6 Qf1
>>  -+  (-7.80)   Depth: 4   00:00:00  5kN
>>  -+  (-7.41)   Depth: 6   00:00:00  15kN
>>64...Qg1 65.Qd7+ Kb6 66.Qd8+ Kb5 67.Qa5+ Kc4 68.Qxa6+ Kxb4 69.Qb7+ Kc5 70.Qa7+
>>Kc4 71.Qa4+ Kd5 72.Qa8+ Ke6
>>  -+  (-8.02)   Depth: 6   00:00:00  47kN
>>  -+  (-7.80)   Depth: 15   00:02:16  55491kN, tb=187
>>
>>(Utzinger, MyTown 02.11.2003)
>>
>>
>>IsiChess MMX - Chess Tiger
>>8/1k6/p5q1/4P3/1P3P2/7Q/3K3p/8 b - - 0 1
>>
>>Analysis by Deep Sjeng 1.5:
>>***************************
>>
>>64...Qg1 65.Qd7+ Kb6 66.Qd8+ Kc6 67.Qd6+ Kb5 68.Qb8+ Kc6
>>  ²  (0.40)   Depth: 3/12   00:00:00
>>  =  (0.21)   Depth: 5/18   00:00:00
>>64...Qf7 65.Kc3 Qxf4 66.Qd7+ Kb8 67.Qd8+ Ka7 68.Qd7+ Ka8 69.Qc6+ Kb8 70.Qe8+ Ka7
>>71.Qd7+
>>  =  (0.06)   Depth: 5/19   00:00:00
>>  =  (0.00)   Depth: 9/29   00:00:05  1986kN, tb=162
>>64...Qg1 65.Qd7+ Kb6 66.Qd8+ Kb5 67.Qa5+ Kc6 68.Qxa6+ Kd5 69.Qb7+ Ke6 70.Qc8+
>>Kd5 71.Qb7+ Ke6 72.Qc8+ Kd5 73.Qb7+
>>  ³  (-0.48)   Depth: 9/29   00:00:07  2593kN, tb=163
>>  =  (0.00)   Depth: 13/38   00:00:49  17560kN, tb=1597
>>
>>(Utzinger, MyTown 02.11.2003)
>
>
>
>It's the problem when you allow a huge speculative evaluation of passed pawns.
>You have to add an almost infinite number of exceptions if you want to handle
>this perfectly.
>
>And I don't think it is possible to program even this exception. I'm pretty sure
>you could, by moving just one pawn, turn this position from a draw to a win.
>
>On the other hand, when I tried to add a speculative evaluation of perpetuals I
>got worse results. Yes it would look smarter in positions like this one, but the
>winning rate dropped.
>
>Which probably only means that I did not do it right.
>
>In the same vein, the following position has always been a nightmare for Tiger:
>
>[D]8/1KP5/3q2k1/8/6p1/8/8/8 b - -
>
>This position comes from a real game between the Modular Game System Sargon 2.5
>and Mike III, played in September 1980 during the Personal Computer World Fair.
>Mike III continued the game with a long series of checks leading to a draw.
>
>Chess Tiger is not smarter than Mike III here. It is something that I had fixed
>in the 16 bits version, to the expense of some added complexity in the passed
>pawns evaluation code. I have not transfered this code to the 32 bits version
>because it was not general enough (add another black pawn and the code did not
>work).
>
>I am interested in results of other (amateur and commercial) programs.
>
>
>
>    Christophe

  Anubis 0.00.0030
  PIII - 933
  30Mb hash

4	9.99	0.13	    2458  d6b4 b7c8 b4f8 c8d7 f8g7 d7d8 g7h8 d8e7
5	9.99	0.18	    5877  d6b4 b7c8 b4f8 c8d7 f8g7 d7d8 g7h8 d8e7
				  h8f6 e7d7
5	10.98	0.24	   20232  d6c7 b7a8 c7d8 a8b7 g4g3 b7a7 g3g2
6	104.28	0.28	   22418  d6c7 b7c7 g4g3 c7b8 g3g2 b8a8 g2g1Q
7	106.20	0.42	   68874  d6c7 b7a6 g4g3 a6b5 g3g2 b5a4 c7c4 a4a3
				  c4b3 a3b3 g2g1Q

  The trick is very easy in this case: I have a special function to evaluate
KQK. The first line is:

	SINT32 s32Eval = pPos->s32EvalMaterial * 10;

  After that, I add / substract bonus for the normal things we evaluate there
(king proximity to the edge, etc...)
  I hope this helps Tiger somehow... ;)

  José C.



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.