我正在为一个简单的棋盘游戏编写一个AI引擎。现在我的简单实现是遍历所有可选的棋盘状态,根据游戏规则和我的简单算法对每个状态进行加权,然后根据该得分选择最佳棋步。由于评分算法是完全无状态的,因此我希望通过创建一些(所有?)棋盘配置的哈希表来节省计算时间,并从那里获得得分而不是实时计算得分。棋盘游戏AI设计:选择STL数据容器
我的问题是:
1.我的方法是否合乎逻辑? (如果没有,你能给我一些提示,以便更好吗?:))
2.什么是最适合我的需求的线程安全的STL容器?我正在考虑使用char数组(板配置)作为关键字,并将得分作为值。
3.你可以给我一些提示让我的AI成为一个杀手锏? :)
编辑:更多信息:
董事会是10x10,有两个玩家,每个有10个兵。规则很像跳棋。
你有多少个电路板配置?我敢打赌,对于任何非tictactoe游戏来说,这个数字是巨大的。 – 2011-03-25 10:38:46
这取决于你的具体游戏。并且:默认情况下,STL容器不是线程安全的。 – knivil 2011-03-25 10:43:42