私は、プレイヤーとAIが何らかのアクションを交互に行っているゲームをハスケルに書いています。これまで、AIはゲームに関するすべての情報、すなわちGameHistory -> GameState -> Action
という形式の関数を使用してアクションを生成していました。エージェントに内部状態を持たせること
このように、これらの関数は、呼び出されるたびに履歴から必要な情報を生成します。ターン(すなわち、対応する関数への呼び出し)の間に何らかの「内部状態」が存在する可能性がある場合、AIを書く方がはるかに簡単です。どのようにしてそのようなものを実装できますか? (ちなみに、私はまたのAIの異なる種類の内部状態は、さまざまな種類を持っている可能性があることを考慮に入れる必要があります。)
私はこの質問が広すぎると感じています。「州のモナドを使用する」よりも具体的な回答は得られません。実際のコードを提供するためにあなたの質問を編集できるのであれば、おそらくもっと役に立つかもしれません。 –
@aclow多少の関連性:http://stackoverflow.com/questions/40698396/how-can-i-handle-user-plugins-in-my-types/ – danidiaz
@ダニディアスありがとう、それは私が探しているようです。私はそれを試してみる。 – aclow