Page 1 of 1

Enhanced PVS algorithm

Posted: Thu Aug 20, 2015 10:55 pm
by geko
Where can I find a sample code for EPVS ?

Re: Enhanced PVS algorithm

Posted: Fri Aug 21, 2015 2:24 am
by hyatt
geko wrote:Where can I find a sample code for EPVS ?
Are you talking about the EPVS that was described in my dissertation? That's the only EPVS I have ever seen. PVS is too old (not what we call PVS today, but the PVS parallel principal variation search algorithm circa 1980 or so). EPVS was a bit better. But there are MUCH better approaches today. EPVS has a serious scaling problem which is what led to DTS and my dissertation...

Re: Enhanced PVS algorithm

Posted: Fri Aug 21, 2015 10:26 am
by geko
Hi, i would like to implement an simple SMP algorithm but I'm confused. What do you advise me to start?

Re: Enhanced PVS algorithm

Posted: Fri Aug 21, 2015 3:33 pm
by hyatt
geko wrote:Hi, i would like to implement an simple SMP algorithm but I'm confused. What do you advise me to start?

The basic idea for searching in parallel is best explained by the Young Brothers Wait algorithm. Which is what the original parallel PVS algorithm was about. The term "simple SMP algorithm" is an oxymoron. There is NOTHING simple about parallel search. My dissertation (1988) had a detailed writeup about PVS, EPVS and ended with the new (at the time) DTS algorithm.

First step is to get a firm mental grasp on alpha/beta and understand it completely.

Re: Enhanced PVS algorithm

Posted: Wed Aug 26, 2015 8:18 pm
by User923005
Tord made a nice sample implementation called viper.
http://www.glaurungchess.com/viper/

Re: Enhanced PVS algorithm

Posted: Wed Aug 26, 2015 10:35 pm
by User923005
Viper has aged a lot and would not compile on my machine.
Here is a version which has a few small tweaks and which compiles with VS 2015:
https://www.dropbox.com/s/98hg9iuyevs28fx/viper.7z?dl=0