perf: SO-ISMCTS v2 — 静态牌池实现 1.0s/局 (8x提升)
SOIsmctsBot.cs 重写: - 静态 FullDeck[52]: 52张牌只创建一次, 模拟时只交换ID数组 - 预生成300份对手手牌分布 (byte[] ID数组) - FastSim核心全部用 byte/List<byte>, 零对象分配 - 8个候选→800次模拟=800×4个List.ToList (可忽略) 性能: 7.9s→1.0s/局 (8x) 触发: 298次SOv2决策, 2次LOCK 默认启用: InitBots改用SOIsmctsBot vs IsmctsBot: - SO 更快收敛(单树共享统计) - SO 确定性预生成hand(无随机采样偏差) - 速度相同(1.0s)
This commit is contained in:
@ -61,7 +61,7 @@ namespace PdkFriendServer.Logic
|
||||
{
|
||||
_bots = new IPdkBot[3];
|
||||
for (int i = 0; i < 3; i++)
|
||||
_bots[i] = new IsmctsBot();
|
||||
_bots[i] = new SOIsmctsBot();
|
||||
}
|
||||
|
||||
/// <summary>构建当前玩家的可见视图——只看自己手牌+公开信息</summary>
|
||||
|
||||
Reference in New Issue
Block a user