TianyiQ / Doudizhu-MCTS

AI for the Chinese card game Doudizhu
6 stars 3 forks source link

您好!请问main.cpp中的超参数是怎么计算得来的呢? #3

Closed peterwangx closed 2 years ago

peterwangx commented 2 years ago

typedef double ProbType; // used only in the inference part namespace PARA{ // 核心参数 constexpr bool useHeuris=1,useInference=0; constexpr float c=13.274828; constexpr float SoverD_B=6.646546,SoverD_E=1.417460; // B E^{ratio_of_cards_played} constexpr float iniWeight_B=0.015963,iniWeight_E=0.404209; // B S * E^{ratio_of_cards_played} constexpr float structWeight=8.933963,playedWeight=0.421146; // weights in utility func constexpr ProbType utilityToProb_E=2607.789307; // E^{winProb/base} constexpr float inferenceTL=0.150000; constexpr bool default0=0; constexpr float myCrd_D=16.047952,myStt_D=8.880167; constexpr float levelWeight_E=1.145248; // card of level i has weight E^i };

请问这些参数是怎么得来的呢?

TianyiQ commented 2 years ago

使用了一个演化算法进行调参,得到了这些超参数。 tuning 目录下的代码是这个调参算法的小规模版本,可供参考。