Leela in multiPV mode

565 views
Skip to first unread message

AIChessFan

unread,
Jul 12, 2018, 1:18:23 PM7/12/18
to LCZero
Hi, is there any possibility of modifying the Leela engine to make it possible to show multiple lines in infinite analysis mode? (multiPV )
I don't know how difficult it is to implement that functionality but I definitely think it's something worth trying.
Of course the search speed will slow down, but nevertheless it would be still very useful for analysying positions, especially to look for positional opening novelties. And with that engine version probably more players will be interested in collaborating in this project.

kirill57

unread,
Jul 12, 2018, 3:06:40 PM7/12/18
to LCZero
My understanding that with MCTS search speed will NOT slow down at all no matter how many lines you going to show. This could be a main benefit of using lco for chess analysis. 

Dietrich Kappe

unread,
Jul 12, 2018, 5:01:18 PM7/12/18
to LCZero
This has been discussed. There are a number of ways of doing multipv, none of them completely satisfactory. For example, one could do an occasional round robin on the root to make sure every child gets sufficient visits. Keep in mind that in uct mcts, the child with the most visits is the winner, not the one with the highest score.

kirill57

unread,
Jul 12, 2018, 8:07:13 PM7/12/18
to LCZero

They did Multi PV for komodo MCTS and it works very well. I do not see why it will be difficult to do it for lc0.

Dietrich Kappe

unread,
Jul 12, 2018, 8:58:19 PM7/12/18
to LCZero
Would you trust a Pv that has only a handful of visits? It’s not doing it that’s difficult, it’s picking the right one of several approaches. Not sure which one Komodo used.

Kostas Oreopoulos

unread,
Jul 13, 2018, 7:54:57 AM7/13/18
to LCZero
How about excluding moves (a standard UCI option). At least we can exclude the "best" move and see what the engine suggests as second best (third... etc)

Ron Langeveld

unread,
Jul 13, 2018, 10:47:26 AM7/13/18
to LCZero
The option you are looking for is called "searchmoves" and has been available in Lc0 for about a month now.

Message has been deleted

Kostas Oreopoulos

unread,
Jul 13, 2018, 11:25:55 AM7/13/18
to LCZero
I was talking about "exclude <MOVE>" which is somewhat different, but it seems this has been added too.

Ron Langeveld

unread,
Jul 13, 2018, 11:42:40 AM7/13/18
to LCZero


On Friday, 13 July 2018 17:25:55 UTC+2, Kostas Oreopoulos wrote:
I was talking about "exclude <MOVE>" which is somewhat different, but it seems this has been added too.

There is no uci option that excludes a move. You can check this @


By parsing all the legal moves via searchmoves except the ones you want to exclude you will in effect get what you want.
The GUI, like for example Aquarium that has an easy to use exclude function, will take of parsing the correct uci option --searchmoves

Ron Langeveld

unread,
Jul 13, 2018, 11:44:04 AM7/13/18
to LCZero
...take <care> of..

Ron Langeveld

unread,
Jul 13, 2018, 11:51:02 AM7/13/18
to LCZero

AIChessFan

unread,
Jul 13, 2018, 12:01:17 PM7/13/18
to LCZero
Sorry, with search speed I meant the analysys time required to reach x depth. Analysing 3 moves until depth 16 in multi PV mode should take more time than analysing only one move, just like infinite analysis with a conventional engine.

Kostas Oreopoulos

unread,
Jul 13, 2018, 3:49:59 PM7/13/18
to LCZero
Thank you for the link.  I had in mind the Winboard protocol and I was under the impression that there is also such a command for UCI.
The GUI seems it implements it through searchmoves.
Reply all
Reply to author
Forward
0 new messages