user20150: Can a minimax function with just alpha beta pruning really evaluate 1.8 billion chess positions (3 ply = 356) in just a second?
My chess engine, which uses minimax with only alpha beta pruning, takes 30 seconds to search 2 ply deep, evaluate the leaves, and determine the best move.

user15223: There're some problems with your question:

Alpha-beta pruning doesn't make you search faster, it makes you search further. For illustration (these numbers are not accurate) if your computer is searching at 1 million nodes (here a "node" is a position) per second, without alpha-beta pruning you might only make it 5 ply deep. With it, you might reach 10 ply.
Obviously, how fast you search is going to depend on hardware. With sufficiently powerful hardware you can search 1.8 billion nodes per second. For example right now, Fishtesting is running with this hardware: 650 machines 5048 cores 1.21M nps (6127.86M total nps) 8825 games/minute. That's 6.1 billion nodes per second.
However note that Fishtesting is running with 5048 cores. A typical desktop computer might have 4 cores, so this is fantastically powerful hardware. If you're getting 1.8 billion nodes per second, and you have reasonably normal hardware, your eval function is probably very simple compared to the top engines.


20150: <p>Can a minimax function with just alpha beta pruning really evaluate 1.8 billion chess positions (3 ply = 356) in just a second?</p>

<p>My chess engine, which uses minimax with only alpha beta pruning, takes 30 seconds to search 2 ply deep, evaluate the leaves, and determine the best move.</p>
 15223: <p>There're some problems with your question:</p>

<ul>
<li>Alpha-beta pruning doesn't make you search faster, it makes you search <em>further</em>. For illustration (these numbers are not accurate) if your computer is searching at 1 million nodes (here a "node" is a position) per second, without alpha-beta pruning you might only make it 5 ply deep. With it, you might reach 10 ply.</li>
<li>Obviously, how fast you search is going to depend on hardware. With sufficiently powerful hardware you can search 1.8 billion nodes per second. For example right now, <a href="http://tests.stockfishchess.org/tests" rel="nofollow noreferrer">Fishtesting</a> is running with this hardware: 650 machines 5048 cores 1.21M nps (6127.86M total nps) 8825 games/minute. That's 6.1 billion nodes per second.</li>
<li>However note that Fishtesting is running with 5048 cores. A typical desktop computer might have 4 cores, so this is fantastically powerful hardware. If you're getting 1.8 billion nodes per second, and you have reasonably normal hardware, your eval function is probably very simple compared to the top engines.</li>
</ul>
