I look for it, help me, please!
Weakest engine with multi-PV
Moderator: Ras
-
perejaslav
- Posts: 240
- Joined: Sat Mar 18, 2006 4:01 am
- Location: Cold
Weakest engine with multi-PV
Which is the weakest UCI chess engine with the Multi-PV support? 
I look for it, help me, please!
I look for it, help me, please!
-
hgm
- Posts: 28426
- Joined: Fri Mar 10, 2006 10:06 am
- Location: Amsterdam
- Full name: H G Muller
Re: Weakest engine with multi-PV
I could make a multi-PV version of Fairy-Max for you, if you wanted. (Would be slightly above 2000 Elo, on the CCRL scale.) But Alas, it is WinBoard, not UCI.
It would be of some interest to do this, because then it would also be the strongest engine to support multi-PV in Knightmate, Gothic Chess, Berolina Chess, Courier Chess, Shatranj, Cylinder Chess...
It would be of some interest to do this, because then it would also be the strongest engine to support multi-PV in Knightmate, Gothic Chess, Berolina Chess, Courier Chess, Shatranj, Cylinder Chess...
-
perejaslav
- Posts: 240
- Joined: Sat Mar 18, 2006 4:01 am
- Location: Cold
Re: Weakest engine with multi-PV
It would be very nice from you to compile such engine but I'm interested only in UCI module.

-
hgm
- Posts: 28426
- Joined: Fri Mar 10, 2006 10:06 am
- Location: Amsterdam
- Full name: H G Muller
Re: Weakest engine with multi-PV
Yes, that is what I was already afraid of. Then I cannot help you, as all my engines are WinBoard.
As for a multi-PV version of Fairy-Max, I guess I'll make that anyway. I already patched it yesterday night for printing a full PV (based on the triangular-array method), which seems to work fine.
As for a multi-PV version of Fairy-Max, I guess I'll make that anyway. I already patched it yesterday night for printing a full PV (based on the triangular-array method), which seems to work fine.
-
Kempelen
- Posts: 620
- Joined: Fri Feb 08, 2008 10:44 am
- Location: Madrid - Spain
Re: Weakest engine with multi-PV
Hi H.G.:hgm wrote:I could make a multi-PV version of Fairy-Max for you, if you wanted. (Would be slightly above 2000 Elo, on the CCRL scale.) But Alas, it is WinBoard, not UCI.
It would be of some interest to do this, because then it would also be the strongest engine to support multi-PV in Knightmate, Gothic Chess, Berolina Chess, Courier Chess, Shatranj, Cylinder Chess...
How exactly multipv is implemented? does it reduce playing strenght?
-
hgm
- Posts: 28426
- Joined: Fri Mar 10, 2006 10:06 am
- Location: Amsterdam
- Full name: H G Muller
Re: Weakest engine with multi-PV
When you request more than one PV, it will reduce playing strength, because you spend extra time on evaluating second-best moves, which goes at the expense of the time you spend on evauating the best move. And this time is totally wasted, as you will not play second-best move anyway.
But having the ability to calculate multiple variations in itself does not put a significant burdon on the engine when you ask for only one PV.
The way I wanted to implement it is do a normal alpha-beta search, but in the root, I do not increase alpha to the score, but to score - MARGIN, where MARGIN can be set to the user. This will automatically recover all variations that have a score within MARGIN of the best. By setting MARGIN=0 you will recover the normal behvior.
You can also put a limit on the number of variations; in that case, if the user asks fr, say, 3 variations, when there happen to be more than 3 within MARGIN of the best, you can increase alpha to the score of the third, when that is larger than bestScore - MARGIN.
But having the ability to calculate multiple variations in itself does not put a significant burdon on the engine when you ask for only one PV.
The way I wanted to implement it is do a normal alpha-beta search, but in the root, I do not increase alpha to the score, but to score - MARGIN, where MARGIN can be set to the user. This will automatically recover all variations that have a score within MARGIN of the best. By setting MARGIN=0 you will recover the normal behvior.
You can also put a limit on the number of variations; in that case, if the user asks fr, say, 3 variations, when there happen to be more than 3 within MARGIN of the best, you can increase alpha to the score of the third, when that is larger than bestScore - MARGIN.
-
jesper_nielsen
Re: Weakest engine with multi-PV
Ok, I will start the bidding!perejaslav wrote:Which is the weakest UCI chess engine with the Multi-PV support?
I look for it, help me, please!
Pupsi has MultiPV support. Anyone lower?!
Pupsi is currently around 2375 Ruel on the UCI Engines Ligue list.
By the way, in Pupsi, you can reduce the playing strength using the Hyatt/Crafty method by setting the option "SkillPercentage" to a number between 0 and 100. MultiPV works with any SkillPercentage setting.
Kind regards,
Jesper
-
perejaslav
- Posts: 240
- Joined: Sat Mar 18, 2006 4:01 am
- Location: Cold
Re: Weakest engine with multi-PV
I've found the weaker one Glass 1.3jesper_nielsen wrote:Ok, I will start the bidding!perejaslav wrote:Which is the weakest UCI chess engine with the Multi-PV support?
I look for it, help me, please!
Pupsi has MultiPV support. Anyone lower?!
Pupsi is currently around 2375 Ruel on the UCI Engines Ligue list.
By the way, in Pupsi, you can reduce the playing strength using the Hyatt/Crafty method by setting the option "SkillPercentage" to a number between 0 and 100. MultiPV works with any SkillPercentage setting.
Kind regards,
Jesper
Let's compare:
Code: Select all
42 Pupsi2 0.08 2376 37 37 258 46% 2405 28%
43 n2 0.1 2360 19 19 964 51% 2352 31%
44 BBChess 1.3b 2350 17 17 1147 50% 2348 31%
45 Delphil 2.3 2350 27 27 458 48% 2361 31%
46 Nejmet 3.07 2343 10 10 3616 51% 2331 29%
47 Philou 3.0.0 2336 21 21 770 50% 2336 32%
48 Dragon 4.6 2328 10 10 3852 50% 2325 29%
49 Counter 1.1 2326 15 15 1401 50% 2321 38%
50 Snitch 1.6.2 2325 13 13 2083 49% 2329 27%
51 Abrok 5.0 2324 10 10 4003 49% 2326 26%
52 Gaia 3.5 2320 11 11 3278 51% 2310 23%
53 Sjeng 12.13 2314 10 10 3950 51% 2306 25%
54 Diablo 0.5.1 2314 11 11 3094 50% 2308 28%
55 Patzer 3.80 2305 12 12 2695 51% 2294 26%
56 Arion 1.7 2300 11 11 2964 51% 2289 29%
57 Muse 0.899b 2299 11 10 3364 50% 2294 27%
58 Queen 4.03 2294 14 14 1802 51% 2287 29%
59 LittleThought 1.04 2293 33 33 336 44% 2344 24%
60 GreKo 6.5 2289 20 20 852 48% 2306 28%
61 Glass 1.3 2287 24 24 634 47% 2305 24% My win so far?
-
hgm
- Posts: 28426
- Joined: Fri Mar 10, 2006 10:06 am
- Location: Amsterdam
- Full name: H G Muller
Re: Weakest engine with multi-PV
I know this is not what the original poster is looking for, but just in case there is any interest:
A version of Fairy-Max that supports multi-PV can be downloaded from http://home.hccnet.nl/h.g.muller/multimax.zip . Through the engine option "MultiVariation Margin" you can set the score difference for which you want the variations printed (in centiPawn, default 0). So when you set it to 30 cP, it will print (at any depth) all variations that have a score within 30 cP from the PV. (And possibly some more, if it does not find the PV first time.)
So you can now have multi-variation in the variants normal, gothic, capablanca, berolina, knightmate, cylinder, courier, shatranj.
A version of Fairy-Max that supports multi-PV can be downloaded from http://home.hccnet.nl/h.g.muller/multimax.zip . Through the engine option "MultiVariation Margin" you can set the score difference for which you want the variations printed (in centiPawn, default 0). So when you set it to 30 cP, it will print (at any depth) all variations that have a score within 30 cP from the PV. (And possibly some more, if it does not find the PV first time.)
So you can now have multi-variation in the variants normal, gothic, capablanca, berolina, knightmate, cylinder, courier, shatranj.
-
tmokonen
- Posts: 1363
- Joined: Sun Mar 12, 2006 6:46 pm
- Location: Kelowna
- Full name: Tony Mokonen
Re: Weakest engine with multi-PV
I think the answer to this question might be Firefly.
Firefly supports MultiPV, and is weaker than Glass. Firefly has a rating of 1983 in the UEL rating list.
Firefly supports MultiPV, and is weaker than Glass. Firefly has a rating of 1983 in the UEL rating list.