Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Unstable aspiration search

Author: Robert Hyatt

Date: 20:25:32 02/10/03

Go up one level in this thread


On February 10, 2003 at 16:21:23, Sune Fischer wrote:

>I'm fooling around with some root node aspiration search,
>Looks like it is a tad unstable, I wonder if that is normal.
>
>It produces different preferred moves at different plies.
>E.g. normally it prefers e4 at ply 11, but using a narrow window of 0.1 pawn it
>prefers e4 already at ply 9. Sure the hashtable is going to make a difference
>here, I realize that, but still a change on the root move is not an
>insignificant effect.
>
>The narrower the window, the more instability. Is this to be expected?
>

I don't see why.  With _one_ possible exception.  "lazy evaluation".  It
might cause lazy eval errors if you are not careful.  But if you disable
lazy evaluation, and you get different best move/score at the root based
on the aspiration window, you have a problem.

Just beware of things based on alpha/beta, such as lazy evaluation, or
perhaps some sort of forward-pruning issue (such as null-move).

If you want to post a position, I can twiddle my aspiration to whatever you
are testing with and run the same searches and post what happens to me at those
window widths...





>the code:
>
>window = param::pawn_unit/10;
>walpha = previous_score-window;
>wbeta = previous_score+window;
>score = -b.Search(1,ONEPLY*(maxdepth-1),-wbeta,-walpha,0);
>if (score <= walpha) {
>	score = -b.Search(1,ONEPLY*(maxdepth-1),-wbeta,-alpha,0);
>	if (score >= wbeta)
>		score = -b.Search(1,ONEPLY*(maxdepth-1),-beta,-alpha,0);
>} else if (score >= wbeta) {
>	score = -b.Search(1,ONEPLY*(maxdepth-1),-beta,-walpha,0);
>	if (score <= walpha)
>		score = -b.Search(1,ONEPLY*(maxdepth-1),-beta,-alpha,0);
>}
>
>
>results of different window widths:
>
>window=pawn_unit:
>
>1	-1	0	1		1.a3
>1	14	1	5		1.d3
>1	23	1	14		1.d4
>1	105	1	21		1.Nc3
>2	-103	1	52		1.Nc3 Nf3
>2	0	2	96		1.Nf3 Nf6
>3	103	2	280		1.Nf3 Nf6 2.Nc3
>4	-23	2	507		1.Nf3 Nc3
>4	23	3	1535		1.Nc3 Nf6 2.Nf3
>5	23	3	1711		1.Nc3 Nf6 2.Nf3
>6	0	4	2781		1.Nc3 Nf6 2.Nf3 Nc6 3.e4 e5
>7	16	5	7890		1.Nc3 Nf6 2.Nf3 Nc6 3.d4 d5 4.Bf4
>8	6	6	14544		1.Nc3 Nf6 2.Nf3 Nc6 3.e4 d5 4.e5 Ng4
>9	15	33	197084		1.Nc3 d5 2.Nf3 Nc6
>10	8	66	439047		1.Nc3 Nf6 2.e4 e5 3.Nf3 Nc6
>11	12	234	1641245		1.Nc3 Nf6 2.Nf3 Nc6 3.d4 d5 4.e3 Bf5 5.Bd3 Bxd3 6.Qxd3
>11	15	597	4247723		1.e4 e5 2.Nf3 Nc6
>12	12	992	7037705		1.e4 e5 2.Nf3 Nc6 3.Nc3 Nf6 4.Bb5 exd4
>13	14	2475	17533424	1.e4 e5 2.Nf3 Nc6 3.Nc3 Nf6 4.Bb5 Nd4 5.O-O Bc5 6.Nxe5 Nxb5
>7.Nxb5 Nxe4
>14	14	3768	26153111	1.e4 e5 2.Nf3 Nc6 3.Nc3 Nf6 4.Bb5 Nd4 5.O-O Bc5 6.Nxe5 Nxb5
>7.Nxb5 Nxe4
>
>window=pawn_unit/10:
>
>1	-1	0	1		1.a3
>1	14	1	5		1.d3
>1	23	1	14		1.d4
>1	105	1	21		1.Nc3
>2	-103	2	52		1.Nc3 Nf3
>2	0	2	96		1.Nf3 Nf6
>3	103	2	272		1.Nf3 Nf6 2.Nc3
>4	-23	2	489		1.Nf3 Nc3
>4	23	3	1517		1.Nc3 Nf6 2.Nf3
>5	23	3	1693		1.Nc3 Nf6 2.Nf3
>6	-16	4	3765		1.Nc3 Nf3
>6	16	4	4367		1.Nf3 Nf6 2.Nc3
>7	16	5	8324		1.Nf3 Nf6 2.Nc3
>8	6	7	15958		1.Nf3 Nf6 2.Nc3 Nc6 3.e4 d5 4.e5 Ng4 5.Nxe4
>9	15	21	112696		1.Nf3 Nf6 2.Nc3 d5 3.d4 Nc6 4.Bf4 Bf5 5.e3
>9	17	41	249717		1.e4 Nc6 2.Nc3 Nf6 3.Nf3 d5 4.exd5 Nxd5 5.Bd3
>10	8	110	729380		1.e4 Nf6 2.Nc3 e5 3.Nf3 Nc6 4.Nc3
>11	15	392	2758226		1.e4 e5 2.Nf3 Nc6 3.Bb5 Nf6 4.Bxc6 dxc6 5.Nc3 Bd6 6.O-O
>12	12	740	5225754		1.e4 e5 2.Nf3 Nc6 3.Nc3 Nf6 4.Bb5 Bd6 5.O-O a6 6.Bxc6 dxc6
>13	14	2689	19137433	1.e4 e5 2.Nc3 Nf6 3.Nf3
>14	14	3521	25053272	1.e4 e5 2.Nc3 Nf6 3.Nf3
>
>window=pawn_unit/100: (pawn_unit=1000)
>
>
>1	-1	0	1		1.a3
>1	14	0	5		1.d3
>1	23	0	14		1.d4
>1	105	1	21		1.Nc3
>2	-206	1	49		1.Nc3 Nf3
>2	0	1	93		1.Nf3 Nf6
>3	103	1	271		1.Nf3 Nf6 2.Nc3
>4	-23	2	553		1.Nf3 Nc3
>4	23	2	1629		1.Nc3 Nf6 2.Nf3
>5	23	2	1803		1.Nc3 Nf6 2.Nf3
>6	-16	3	3382		1.Nc3 Nf3
>6	16	4	3829		1.Nf3 Nf6 2.Nc3
>7	16	4	7702		1.Nf3 Nf6 2.Nc3
>8	-15	7	26519		1.Nf3 Nc3
>8	-11	10	37593		1.a3 Nf6 2.Nc3 Nc6 3.Nf3 d5 4.d4 Bf5 5.Nxe4
>8	17	15	76685		1.e4 Nf6 2.Nc3 Nc6 3.Nf3
>9	17	31	185188		1.e4 d5 2.Nc3 Nf6
>10	-24	86	596412		1.e4 exd5
>10	0	106	742042		1.d4 d5 2.Nc3 Nf6 3.Nf3 Nc6 4.Bf4 Bf5 5.Nb5 Rc8 6.Nxe5
>10	8	161	1149018		1.Nc3 Nf6 2.e4 e5 3.Nf3 Nc6
>11	12	347	2482318		1.Nc3 Nf6 2.Nf3 Nc6 3.d4 d5 4.e3 Bf5 5.Bd3 Bxd3 6.Qxd3
>11	15	658	4712297		1.e4 e5 2.Nf3 Nc6
>12	-14	1006	7183908		1.e4 Nc3
>12	14	1222	8702636		1.Nc3 Nf6 2.Nf3 Nc6 3.e4 e5
>13	14	1970	14002541	1.Nc3 Nf6 2.Nf3 Nc6 3.e4 e5
>14	14	3647	25603089	1.Nc3 Nf6 2.Nf3 Nc6 3.e4 e5



This page took 0.01 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.