首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >选择下一个要排队的建筑- AI游戏编程

选择下一个要排队的建筑- AI游戏编程
EN

Stack Overflow用户
提问于 2014-03-05 21:09:46
回答 1查看 39关注 0票数 0

我正在研究一些人工智能概念,并试图编写一些代码来测试我的知识。

在最近的一个“独立项目”中,我试图开发一个人工智能,以确定符合"Ai规则“的建筑物的最佳”路径“(简单的建筑物表和规则在最后被定义)

可以说,只要将总部升级到最大级别,其他建筑的构建时间就会减少50%。但是,如果我遵循这条路径,队列需要等待很长时间才能有足够的资源用于下一个HQ级别,因此不尊重第一个AI规则。

然后在互联网上我找到了Minimax算法。我不觉得它能给我想要的东西,主要是因为算法说它适用于两个玩家的已知场景。我没有2名球员,这是时间上的对手。而且,玩家可以在资源中得到一个“提升”(比如掠夺),然后不可用的东西就会变得可用,从而改变一切。

考虑到Minimax,我希望对时间和资源(0.1)进行规范化,并对值进行求和,然后遵循具有最小值的路径,并在每次队列接近为空时进行此评估。我知道,这样做的结果不会是全球最优的,但它将是“缓和的”。

然而,即使有了这种“规范化极大极小”,运行这个操作(而且肯定会)也是一个要求很高的操作。有15栋楼,每层30楼,我甚至不想知道运行代码的时间。此外,低深度=糟糕的决策和高深度=糟糕的性能。

最后,我被塞了起来。我不确定它是否会起作用。有人有什么建议吗?还是更好的算法?

  • AI规则:
    1. 队列永远不应该是空的(或者,至少尽可能少)。
    2. 必须在尽可能短的时间内完成。(我的意思是,把所有的东西都放在最大的水平上)

  • 建筑规则:
    1. 所需时间/资源增加10%/水平。
    2. 最高层为10层,最小层为1层,适用于所有建筑。

  • 建筑物工作表Name - Time(sec) - Resource - Bonus HQ - 100 - 100 - Reduce all buildings time (5%/level) Resource - 150 - 80 - 2 resource/sec/level Military - 80 - 80 - none
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-03-06 02:55:07

您可能会尝试使用动态编程,请参阅检查器示例这里,以了解应该帮助您实现解决该问题的算法。成本函数应该可以直接从你的建筑工作表中得到。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22209336

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档