lightvector / KataGo

GTP engine and self-play learning in Go
https://katagotraining.org/
Other
3.57k stars 565 forks source link

multiStoneSuicideLegal config of KataGo #612

Open wukevinboy opened 2 years ago

wukevinboy commented 2 years ago

Hello KataGo Author ,  I am an amateur go player , on the Internet I am 9D go player. There is a suggestion I hope you to modify.  All the human race rules of the go are not allow multiStone Suicide exclude Ying's rule. Sorry, I am not sure how to translate it.

 Ying'Rule Reference : 應氏規則

 Therefore, I think the config of KataGo need to change default rules of multiStoneSuicideLegal = "false".

lightvector commented 2 years ago

Thanks for the suggestion! I don't see a reason yet to make any changes to this. Do you have a good argument?

KataGo's default config uses Tromp-taylor rules (or rather something extremely closely compatible with them): https://github.com/lightvector/KataGo/blob/master/cpp/configs/gtp_example.cfg#L91

These rules allow multiStoneSuicide, i.e. self-capture, and they are the default because it is one of the rulesets for a few computer Go benchmarks and matches in the last few years, for example it is what Leela Zero and AlphaZero used.

You are free to replace the default value in the config with other options yourself. There much bigger differences than just self-capture between different rules in common use (territory versus area scoring!), and many other minor differences (simple ko vs superko, and whether KataGo is being used for a human match versus a computer match - friendlyPassOk) so I don't see why the default matters too much. No matter what default is picked, a large number of users will have to change it anyways.

wukevinboy commented 2 years ago

Sorry, I need to correct the suggestion.

I know that AI usually used tromp-taylor rule to train Neural Network cause go's rule are too complexity. Therefore, China , Korea , Japan both have their rules.

I think if KataGo at training , the best rule is tromp-taylor. as you said like : AlphaGo , AlphaZero , LeelaZero etc...

I have that point , cuz all the human race rules of the go are not allow multiStone Suicide exclude Ying's rule, so I suggest change default rules of multiStoneSuicideLegal = "false" , if human used KataGo learning.

Thank you for your reply.

lightvector commented 2 years ago

You can see in the config: https://github.com/lightvector/KataGo/blob/master/cpp/configs/gtp_example.cfg#L91

It is very simple, it says rules = tromp-taylor. If you change it to rules = chinese or rules = japanese or similar, then it will automatically change all settings to match those rules as closely as possible, including multiStoneSuicideLegal = false.