1

我正在为一款 rts 游戏编写机器人。

我正在使用模糊逻辑来评估当前位置(我的和敌人的)并发出命令。

我有几个模糊变量:military_buildingscivilian_buildingarmy_power和。我也有几个模糊的语言值,如, , , , 。enemy_powerdistanceVERY_GOODGOODNORMALBADVERY_BAD

我的下一个任务是让机器人学习,避免所有人都以同样的方式行事。任何建议或想法如何解决这个问题?

使用 GA 来调整参数(但我不知道玩家的评分,所以我不知道 bot 是赢了弱玩家还是输给了强玩家)。

有没有人有类似问题的经验(如果有更简单的方法可以从经验中学习机器人,我可以更改实现并替换模糊逻辑)?

4

3 回答 3

3

看看强化学习。这里有一个快速预览一本书可以帮助你。

根据您的描述,这就是我要使用的:)

于 2012-07-13T14:04:10.603 回答
2

使用 GA 将参数调整为模糊语言变量的想法是一个很好的想法(我希望我能想到它!);模糊逻辑为您提供了一个很好的连续响应曲线,而 GA 将搜索一个大的解决方案空间。我认为这绝对是一个值得追求的策略;你应该写下你的结果。

于 2012-07-13T21:19:39.590 回答
0

如果我是你,我会看看 AIIDE 年度星际争霸大赛,它部分由 AAAI 赞助,因此有一些非常高质量的方法可以解决这个问题。特别是如果您关心资源管理等高级推理等。星际争霸竞赛网站此外,竞争对手的源代码都是可用的开源代码,因此如果您想查看其他一些技术,我推荐它。仅供参考,此类问题的大多数顶级竞争对手在历史上都使用过概率状态机论文的一些变体关于概率 FSM,因此这可能为参数调整提供了一个很好的测试平台。仅供参考,这也是一些顶级 Game AI 中间件软件用于 Game AI 的方法,例如 XAIT。

于 2012-07-29T16:46:15.057 回答