Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: ProbCut: An Effective Selective Extension of the Alpha-Beta Algorithm

Author: martin fierz

Date: 02:38:50 07/22/04

Go up one level in this thread


On July 21, 2004 at 10:20:30, Albert Silver wrote:

>Hi,
>
>This is probably old news to many, but I ran across the pages of Michael Buro
>(http://www.cs.ualberta.ca/~mburo/), and saw an article on ProbCut, highly
>recommending it, and even mentioning its inclusion in a version of Crafty 18.15.
>
>"ProbCut works in chess on top of null-move search! Download
>mpc_crafty_18.15.tgz to play with it. We encourage all chess programmers to
>experiment with ProbCut!"
>
>One can download the article "ProbCut: An Effective Selective Extension of the
>Alpha-Beta Algorithm" on his page of publications
>(http://www.cs.ualberta.ca/~mburo/publications.html) as well as a follow-up
>article "A.X. Jiang and M. Buro, First Experimental Results of ProbCut Applied
>to Chess", Proceedings of the Advances in Computer Games Conference 10, Graz
>2003.
>
>For new programmers looking for material, this is certainly one, plus it might
>be added to the links in the Computer Chess Resource Center.
>
>                                    Albert

probcut (or the multi-version) is an elegant algorithm which you can apply with
minimal coding effort to any alpha-beta searcher. in a way it's like null-move
only it avoids the zugzwang problem that nullmove has, because it doesn't
include "pass" moves. on the negative side, there is no clear-cut criterion as
to when a move is rejected (in null-move it's clear). you need to artificially
introduce bounds for when you reject a move; buro describes how you set up an
experiment and do regression analysis to find these bounds - that is much more
effort than null-move.

buro used it mainly for othello, and it worked fine there. i used it in my
checkers program, and it worked fine there (beats a non-selective version hands
down); although my own selective search outperforms it. i think the reason for
that is that my selective search has some specific checkers knowledge that a
general algorithm like probcut doesn't have.

as for the crafty experiment, i think they basically stopped the match they
played before it was statistically significant, which is a shame. others
couldn't reproduce their results, which makes it worse... i would also be very
surprised if probcut / multi-probcut propped on top of a null-move-search would
work: both algorithms attempt to do the same thing, only slightly differently.
so i'd suppose that you should use either one or the other, but not both
together, as you will be pruning way too much then!

i would really like to see an experiment with MPC instead of null-move in
crafty.

cheers
  martin



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.