【发布时间】:2017-02-20 04:34:28
【问题描述】:
我正在用 Haskell 编写一个游戏,其中玩家和 AI 轮流采取一些行动。到目前为止,AI 的工作方式是使用游戏的所有信息生成动作,即它们是 GameHistory -> GameState -> Action 形式的函数。
这样,这些函数每次被调用时都会从历史记录中生成一些他们需要的信息。如果 AI 可以有某种“内部状态”并在轮次之间持续存在(即调用相应的函数),那么编写 AI 会容易得多。一个人怎么能实现这样的东西? (顺便说一句,我还应该考虑到不同类型的 AI 的内部状态可能有不同的类型。)
【问题讨论】:
-
我觉得这个问题太宽泛了,我真的不能给你一个比“使用状态单子”更具体的答案。如果您可以edit您的问题提供一些实际代码,那么我们可能会更有帮助。
-
@aclow 有点相关:stackoverflow.com/questions/40698396/…
-
@danidiaz 谢谢,这看起来像我要找的。我会试试看。