Tag: artificial intelligence

使用四行(connect4)游戏实现和使用MinMax

我正在尝试连续四个(或connect4或连接四个)游戏实现MinMax算法。 我想我已经明白了它,它应该建立一个可能的板到一定深度的树,评估它们并返回它们的分数,然后我们只取这些分数的最大值。 因此, aiChooseCol()通过调用MinMax() aiChooseCol()检查每个可能列的分数,并返回具有最大分数的列。 现在我不确定,这是调用MinMax()的正确方法吗? 检查temp = Math.Max(temp, 1000);是否正确temp = Math.Max(temp, 1000); ? 我仍然没有制作启发式function,但这至少应该识别一个获胜列并选择它,但目前它只是从左边选择第一个免费列…我无法弄清楚我做错了什么。 private int AiChooseCol() { int best = -1000; int col=0; for (int i = 0; i best) { best = t; col = i; } m_Board.RemoveTopCoinFromCol(i); } } return col; } private int MinMax(int Depth, board Board, char PlayerSign) { […]

用于多维解决方案优化/预测的AI算法

我有6个int参数,范围从0到100 数字的总组合为100 ^ 6,每个组合给出的结果大约为100。 从-10000到100000甚至更多。 Input data example: MySimulation (57, 78, 20, 10, 90, 50) = 300 <- Best Result MySimulation (50, 80, 10, 90, 35, 8) = 200 MySimulation (4, 55, 40, 99, 40, 50) = -50 <- Worst Result 结果越高,数字组合越好,我已经有了计算结果,我只需要AI来找到更好的数字组合,从而得到更高的结果。 Output data example: 55, 70, 25, 15, 95, 52 <- Let's say these […]