I'm interested in making Glaurung 2.2 play differently. I see parameters like Cowardice, Space, Mobility and there are MANY other UCI parameters to play with. The question is, what write-ups exist that explain how those parameters affect Glaurung's playing style?
Thanks for any pointers ...
Roy
Glaurung 2.2 UCI parameters - explanations?
Moderator: Ras
-
- Posts: 1808
- Joined: Wed Mar 08, 2006 9:19 pm
- Location: Oslo, Norway
Re: Glaurung 2.2 UCI parameters - explanations?
Hi Roy,royb wrote:I'm interested in making Glaurung 2.2 play differently. I see parameters like Cowardice, Space, Mobility and there are MANY other UCI parameters to play with. The question is, what write-ups exist that explain how those parameters affect Glaurung's playing style?
This is a common request -- I should probably write a detailed explanation of all the parameters some day. For now, here's a very brief summary:
The playing style is mainly determined by the evaluation function. There are several parameters which serve as evaluation weights for various components of the evaluation function. These are "Mobility (Middle Game)", "Mobility (Endgame)", "Pawn Structure (Middle Game)", "Pawn Structure (Endgame)", "Passed Pawns (Middle Game)", "Passed Pawns (Endgame)", "Space", "Aggressiveness" and "Cowardice". Most of these should be easy to understand. For instance, raising "Mobility (Middle Game)" from the default value of 100 to 120 will make increase the magnitude of the mobility scores in the middle game by 20%.
The least clear of the evaluation parameters are probably "Aggressiveness" and "Cowardice". These are the evaluation weights for king safety: "Aggressiveness" is the weight for the opponent's king safety, while "Cowardice" is the weight for Glaurung's king safety.
In addition to the main evaluation weights described above, there are lots of parameters for configuring the internal workings of Glaurung's king safety evaluation: "King Safety Curve", "King Saety Coefficient", "King Safety X Intercept", "King Safety Max Slope", "King Safety Max Value", "Queen Contact Check Bonus", "Queen Check Bonus", "Rook Check Bonus", "Bishop Check Bonus", "Knight Check Bonus", "Discovered Check Bonus" and "Mate Threat Bonus". Glaurung has a much more complicated king safety evaluation than most other chess programs, and it is not possible to explain how all the king safety related parameters work without first explaining the entire king safety evaluation. I'll try to find the time to write a detailed article about this some time later, and put it on my web page.
Tord
-
- Posts: 566
- Joined: Thu Mar 09, 2006 12:53 am
Re: Glaurung 2.2 UCI parameters - explanations?
Thanks Tord. I appreciate the explanation given and will eagerly await your more complete write-up!Tord Romstad wrote:Hi Roy,royb wrote:I'm interested in making Glaurung 2.2 play differently. I see parameters like Cowardice, Space, Mobility and there are MANY other UCI parameters to play with. The question is, what write-ups exist that explain how those parameters affect Glaurung's playing style?
This is a common request -- I should probably write a detailed explanation of all the parameters some day. For now, here's a very brief summary:
The playing style is mainly determined by the evaluation function. There are several parameters which serve as evaluation weights for various components of the evaluation function. These are "Mobility (Middle Game)", "Mobility (Endgame)", "Pawn Structure (Middle Game)", "Pawn Structure (Endgame)", "Passed Pawns (Middle Game)", "Passed Pawns (Endgame)", "Space", "Aggressiveness" and "Cowardice". Most of these should be easy to understand. For instance, raising "Mobility (Middle Game)" from the default value of 100 to 120 will make increase the magnitude of the mobility scores in the middle game by 20%.
The least clear of the evaluation parameters are probably "Aggressiveness" and "Cowardice". These are the evaluation weights for king safety: "Aggressiveness" is the weight for the opponent's king safety, while "Cowardice" is the weight for Glaurung's king safety.
In addition to the main evaluation weights described above, there are lots of parameters for configuring the internal workings of Glaurung's king safety evaluation: "King Safety Curve", "King Saety Coefficient", "King Safety X Intercept", "King Safety Max Slope", "King Safety Max Value", "Queen Contact Check Bonus", "Queen Check Bonus", "Rook Check Bonus", "Bishop Check Bonus", "Knight Check Bonus", "Discovered Check Bonus" and "Mate Threat Bonus". Glaurung has a much more complicated king safety evaluation than most other chess programs, and it is not possible to explain how all the king safety related parameters work without first explaining the entire king safety evaluation. I'll try to find the time to write a detailed article about this some time later, and put it on my web page.
Tord
Roy
Re: Glaurung 2.2 UCI parameters - explanations?
Thank you Tord for your explanation.
I downloaded the Glaurung PC version for the first time a few days ago, and have been playing around with it quite a bit. Looks good, and what also looks good is the Mac interface which i hope to enjoy when buying a Mac in the weekend.
I have one question right now. How much hash can Glaurung handle to its benefit?
Best regards,
Kaj
I downloaded the Glaurung PC version for the first time a few days ago, and have been playing around with it quite a bit. Looks good, and what also looks good is the Mac interface which i hope to enjoy when buying a Mac in the weekend.
I have one question right now. How much hash can Glaurung handle to its benefit?
Best regards,
Kaj
-
- Posts: 566
- Joined: Thu Mar 09, 2006 12:53 am
Re: Glaurung 2.2 UCI parameters - explanations?
Kaj,Kaj Soderberg wrote:Thank you Tord for your explanation.
I downloaded the Glaurung PC version for the first time a few days ago, and have been playing around with it quite a bit. Looks good, and what also looks good is the Mac interface which i hope to enjoy when buying a Mac in the weekend.
I have one question right now. How much hash can Glaurung handle to its benefit?
Best regards,
Kaj
I'm not sure of the answer to your question, but I do note that Glaurung 2.2 is MUCH more efficient about its hash usage than other engines. 256 MB of hash takes several minutes to come close to filling on my dual core system. Other engines may fill that much hash in 60 seconds or even less.
Roy
Re: Glaurung 2.2 UCI parameters - explanations?
Hi Roy,
I too noticed the phenomenon you mention, when using the Shredder interface. Glaurung really does something different with hash.
Maybe Tord will give away that little trade secret as well
My best,
Kaj
I too noticed the phenomenon you mention, when using the Shredder interface. Glaurung really does something different with hash.
Maybe Tord will give away that little trade secret as well

My best,
Kaj
-
- Posts: 3415
- Joined: Sat Feb 16, 2008 7:38 am
- Full name: Peter Martan
Re: Glaurung 2.2 UCI parameters - explanations?
Also thanks a lot to Tord.
If I may add a very special question of my own as for the parameters futility margins in main and quiescence search, full depht moves, threat depth, selective plies, razoring, minimum split depth and number of threads per split point, oops it seems to be more than one question
.
But I'd be more than happy with only very short explanation of one or the other of these mentioned options.
Thanks again and thanks in advance
If I may add a very special question of my own as for the parameters futility margins in main and quiescence search, full depht moves, threat depth, selective plies, razoring, minimum split depth and number of threads per split point, oops it seems to be more than one question

But I'd be more than happy with only very short explanation of one or the other of these mentioned options.
Thanks again and thanks in advance
Peter.
-
- Posts: 1808
- Joined: Wed Mar 08, 2006 9:19 pm
- Location: Oslo, Norway
Re: Glaurung 2.2 UCI parameters - explanations?
The GUI, unfortunately, is not quite as good as I would like. It sometimes crashes during startup (but just restarting it works, so it isn't a very serious problem), and has fewer features than most other chess GUIs. It satisfies all my very modest needs from a chess program, but apparently not many other users are happy with it. Working on the now almost completed iPhone version of Glaurung has given me a number of ideas for how to improve the GUI, but I am not sure when I will find the time to do it. There are so many projects competing about my limited hobby programming time -- I sometimes feel envious at the many programmers who just have a UCI engine to maintain.Kaj Soderberg wrote:I downloaded the Glaurung PC version for the first time a few days ago, and have been playing around with it quite a bit. Looks good, and what also looks good is the Mac interface which i hope to enjoy when buying a Mac in the weekend.
The answer is the same as for most other programs: It doesn't make a huge difference, but more hash is always better, as long as you have enough memory left.I have one question right now. How much hash can Glaurung handle to its benefit?
Tord
-
- Posts: 1808
- Joined: Wed Mar 08, 2006 9:19 pm
- Location: Oslo, Norway
Re: Glaurung 2.2 UCI parameters - explanations?
I never have any secrets: Secrets just slow down progress.Kaj Soderberg wrote:I too noticed the phenomenon you mention, when using the Shredder interface. Glaurung really does something different with hash.
Maybe Tord will give away that little trade secret as well
I don't think I do something different or unusual or different with regard to transposition tables (I prefer this term rather than "hash tables", because hash tables are a general form of data structure which can be used for many other purposes, and a transposition table in a chess program doesn't necessarily have to be implemented as a hash table). If Glaurung appears to saturate its transposition table more slowly than other programs, it might be because these other programs hash qsearch nodes, or because I have a bug in the function that computes transposition table saturation.
In principle I would prefer not to display the transposition table saturation at all, because most users misinterpret it anyway (it seems that most people think everything is OK until the table is 99% full, and don't realize that a table which is 50% full is more efficient than a table which is 75% full). But because so many users requested the TT saturation number, I added it some time back.
Tord
-
- Posts: 1808
- Joined: Wed Mar 08, 2006 9:19 pm
- Location: Oslo, Norway
Re: Glaurung 2.2 UCI parameters - explanations?
OK, I'll try to write a detailed article explaining all my (too many) UCI parameters and put it on my web page or in my Readme.txt file. Don't hold your breath, though -- I'll have to complete my iPhone program first.peter wrote:Also thanks a lot to Tord.
If I may add a very special question of my own as for the parameters futility margins in main and quiescence search, full depht moves, threat depth, selective plies, razoring, minimum split depth and number of threads per split point, oops it seems to be more than one question.
But I'd be more than happy with only very short explanation of one or the other of these mentioned options.
Thanks again and thanks in advance

Tord