Website founded by
Milan Velimirović
in 2006

17:06 UTC
ISC 2022



Remember me

Forgot your
Click here!
to create your account if you don't already have one.

Rating lists


MatPlus.Net Forum Internet and Computing A Popeye request...
You can only view this page!
(1) Posted by Ian Shanahan [Wednesday, Apr 10, 2013 21:54]

A Popeye request...

It is ubiquitously known that Popeye has an Intelligence mode for otherwise orthodox H#/= (and their series counterparts) that greatly increases their solving speed. Would the Popeye team please implement Intelligence mode for Ser-S#/= as well (without Faiy pieces or conditions)? Although I'm not a programmer myself, I imagine it would simply be a matter of using the already-existing Intelligence-mode algorithm, thence eliminating all of the unforced solutions. Thank you in advance!
(Read Only)pid=10180
(2) Posted by Torsten Linß [Wednesday, Apr 10, 2013 23:03]

Without going into details, there might be a chance of adapting the intelligent mode to ser-s#/=, but I doubt it will be very efficient. [Ian, would you please send me a typical ser-s#/= you want to test. So I can play around a little bit.]

At present I can only recommend to give Popeye as much memory as possible. For series movers hashtables are particularly efficient. [Use the -maxmem option on the command line, for example py -maxmem 256G pyin ;)]
(Read Only)pid=10182
(3) Posted by Ian Shanahan [Friday, Apr 12, 2013 01:57]; edited by Ian Shanahan [13-04-12]

One way of verifying the soundness of a long series-mover's intention - to test it for any unwanted duals - is to use Popeye's ser.a=>b facility. If it passes this test, then another trick for Ser-S#/= on the way to fully testing it for soundness is to turn the board around, reverse colours, and test that position as a Ser-H#/= using Popeye's "option movenumber intelligent". (In the output file, one simply ignores all unforced solutions.) I sent a Ser-S=27 to Torsten, as he requested. Using this technique, Popeye found an overwhelming number of unforced solutions in 21 that took an inordinate amount of time for Popeye to output. Torsten then alerted me to Popeye's "option [movenumber] intelligent n" (n = 2 or 3), whereby Popeye proceeds on to the next possible (stale)mating configuration once it has found 2 or 3 'solutions' for the one currently being scrutinized. This is a brilliant tool! For my Ser-S=27, with this more specific option, Popeye progressed far sooner on to sequences 22 moves long. Once it has tested level 27 (after at least 100 hours, we estimate!), it will then be 100% C+. However, for a Ser-S#, still further work is required. Consider the following problem:

Ian Shanahan: =4th HM, "The Problemist" 1996. (C?)

(= 6+3 )


1.b8B 2.a8Q 4.Qxc5 6.a8R 8.Rf6 9.Ke6 10.Be5 11.Qd6 15.c8S 20.Sg7+, Sxg7#.

With "option movenumber intelligent 2", and testing as a Ser-H#20, Popeye will find the equivalent of: ... 11.Qd6, Sg7# as well as at least another line ending in Sd6# with the wKc8, wR/Pc7 & wXb8 (I know for a fact from the appropriate ser.a=>b tests that for Ser-S#20, this scenario cannot be forced in less than 21 moves, so it is not a potential cook). After Popeye has completed testing, its output file must be analysed. One then finds the point where outputted potential solutions diverge and runs a third test - using Popeye normally, as a Ser-S# from there (if the truncated problem is not too long). Only then will the Ser-S# be 100% C+. Torsten's advice, above, to invoke maxmem with generous capacity also speeds up solving too...

Many thanks to Torsten!
(Read Only)pid=10190

No more posts

MatPlus.Net Forum Internet and Computing A Popeye request...