Я немного застрял
Я реализовал ИИ с GOAP (планирование действий, ориентированное на цели, http://alumni.media.mit.edu/~jorkin/gdc2006_orkin_jeff_fear.pdf ) для игры-симулятора. Это отлично работает.
Теперь я хочу, чтобы агенты могли сотрудничать (например, делать действия вместе). Каков в этом случае лучший AI-дизайн, который GoapActions хранит свободным куплетом?
Должны ли они планировать вместе? (что в данном случае означает «состояние мира»?) Или они должны поделиться своими планами? какая-то система сообщений?
Пример
Agent1: Worldstate Agent 1: isLonely = true
Цель Agent1: isLonely = false
Plan Agent1: AskAgent2ToTalk -> TalkToAgent2
Agent2 Worldstate Agent 2: hasWood = false
Цель hasWood = true
Plan Agent2: GetAxe -> ChopWood -> BringWoodToSupply
Как мне получить это созвездие?
План агента
1: TalkToAgent2 План агента 2: TalkToAgent1 -> GetAxe -> ChopWood -> BringWoodToSupply
Или, если они разговаривают, и один из агентов прерван (например, атакующим врагом), другой агент должен знать, что его действие TalktoAgent2 завершено.