Page 1 of 1

Plain alphabeta speed

Posted: Tue Dec 23, 2014 1:29 am
by tetra
So, I just finished polishing my move generator and now that I have a very fast generator I moved to the search completely..

Common engines like stockfish crunch 20 depth in a matter of 1-2 seconds in my computer but my plain alpha beta with no improvements just can get to 7-8 depth in +/- 10 seconds.. Is this normal?

I also tested negascout without even understanding it and the speed improvements were small.. it is faster but not even 10 depth can reach in considerable time.. Are those normal results?

// tetrapack

Re: Plain alphabeta speed

Posted: Tue Dec 23, 2014 9:39 am
by H.G.Muller
That even sounds fast. Do you already have a Quiescence Search?

It also depends on what evaluation you have. E.g. with material only (and no Piece-Square Tables) alpha-beta becomes very efficient, because every move that is not a tactical blunder scores the same, which means that you almost always will pick the best move first, whichever one you pick.

Also important is whether you have a transposition table or not. How long does it take to solve Fine #70, for instance?

Re: Plain alphabeta speed

Posted: Tue Dec 23, 2014 1:21 pm
by tetra
H.G.Muller wrote:That even sounds fast. Do you already have a Quiescence Search?

It also depends on what evaluation you have. E.g. with material only (and no Piece-Square Tables) alpha-beta becomes very efficient, because every move that is not a tactical blunder scores the same, which means that you almost always will pick the best move first, whichever one you pick.

Also important is whether you have a transposition table or not. How long does it take to solve Fine #70, for instance?
Yes I do have a quiescence search and yes I do understand why with only material evaluation alpha-beta is fast. Because of that I made my evaluation function taking into account both material and mobility.. This are the score and speed I'am getting for the starting position, and like I said just plain alpha-beta with no tt, heuristiscs, etc:

Code: Select all

>>> think 9 
depth 01 = 0,00 in 0,000013942s
depth 02 = 0,01 in 0,000118899s
depth 03 = 0,06 in 0,000517903s
depth 04 = -0,03 in 0,004138761s
depth 05 = 0,07 in 0,026121426s
depth 06 = -0,04 in 0,551037494s
depth 07 = 0,08 in 3,642081666s
depth 08 = -0,05 in 82,813356898s
>>>
If you say this is normal then I'am happy :D
But is it really?

What you mean "solve Fine #70"?? that would take too much time..

Re: Plain alphabeta speed

Posted: Tue Dec 23, 2014 4:44 pm
by H.G.Muller
I mentioned the Fine #70 position because it is a Pawn ending, for which fixed-depth is a good approach. But without TT it would be hopeless.

For comparison: micro-Max 1.6, which is also fixed-depth without TT, takes 5 sec to reach depth 7 in the opening position:

Code: Select all

dep	score	nodes	time	(not shown:  tbhits	knps	seldep)
  7	+0.14 	13.2M  	0:05.46	e2e3
  6	  0.00 	1.64M  	0:00.75	b1c3
  5	+0.15 	143800	0:00.06	b1c3
  4	  0.00 	15572  	0:00.00	d2d4
  3	+0.15 	1784    	0:00.00	c2c4
  2	  0.00 	142      	0:00.00	c2c4
  1	+0.15 	22        	0:00.00	c2c4
  0	  0.00 	1          	0:00.00	a8a8
So 10 ply doesn;t seem bad at all. It also depends a lot on what move-ordering devices you use. (E.g. PV move, killer, history, IID.)

Re: Plain alphabeta speed

Posted: Sun Feb 01, 2015 12:22 pm
by grandsmaster
I think it's actually quite fast for a plain-alpha beta, assuming you're talking about the initial position. More importantly, does the search return a move you're expecting?