Plain alphabeta speed

Code, algorithms, languages, construction...

Plain alphabeta speed

Postby tetra » Tue Dec 23, 2014 1:29 am

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
tetra
 
Posts: 17
Joined: Sun Jul 06, 2014 1:14 am

Re: Plain alphabeta speed

Postby H.G.Muller » Tue Dec 23, 2014 9:39 am

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?
H.G.Muller
 
Posts: 179
Joined: Sun Jul 14, 2013 10:00 am

Re: Plain alphabeta speed

Postby tetra » Tue Dec 23, 2014 1:21 pm

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..
tetra
 
Posts: 17
Joined: Sun Jul 06, 2014 1:14 am

Re: Plain alphabeta speed

Postby H.G.Muller » Tue Dec 23, 2014 4:44 pm

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.)
H.G.Muller
 
Posts: 179
Joined: Sun Jul 14, 2013 10:00 am

Re: Plain alphabeta speed

Postby grandsmaster » Sun Feb 01, 2015 12:22 pm

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?
grandsmaster
 
Posts: 9
Joined: Sun Aug 03, 2014 1:40 pm


Return to Programming and Technical Discussions

Who is online

Users browsing this forum: No registered users and 2 guests

cron