设计AI的蒙特卡罗方法示例

时间:2011-12-12 15:57:26

标签: algorithm artificial-intelligence montecarlo

根据我在不同来源阅读的内容,据说蒙特卡罗方法就像获取随机样本,然后测试不同的解决方案并选择最佳解决方案。我并不完全理解它在实际AI中的实际效果。你能给我一些简单的例子吗?它有效吗?是否可以将其与其他现有算法并行使用,专门用于非确定性游戏AI?

2 个答案:

答案 0 :(得分:1)

蒙特卡罗方法是指为模拟某些场景创建随机数。 它本身与人工智能无关。

您正在寻找的可能是Evolutionary ComputingGenetic AlgorithmsGenetic Programming,其中使用生物进化的原则创建和演变问题的不同解决方案。这大量使用随机数。

例如,请参阅:http://en.wikipedia.org/wiki/Genetic_algorithm

这些技术可以很好地用于并行计算,非常适合非确定性游戏AI。

答案 1 :(得分:0)

当您使用蒙特卡罗(MC)设计AI时,您就像使用每个优化功能一样:

随机生成解决方案并选择最佳解决方案。

示例:

你有一个塔防游戏,并不一定希望你的敌人总是在你的迷宫中采取最好的方式。只需为每个人生成一些路径,然后从N个样本中选择最佳路径。现在你的敌人将选择不同的,不坏的,不是太好的方式通过迷宫。

你也可以使用遗传算法,它是像MC一样的优化算法。

进化计算或遗传编程是完全不同的东西,除非你知道你在做什么,否则我不会用它来制作AI。

在游戏中制作优秀的AI通常不会围绕使用“最佳”解决方案,而是一个有趣的解决方案。如果你使用dijkstra并且你的所有敌人使用相同的路径,那可能是有效的,但可能不是很有趣。