Sono un po 'bloccato:
Ho implementato un'intelligenza artificiale con GOAP (Goal oriented Action Planning, http://alumni.media.mit.edu/~jorkin/gdc2006_orkin_jeff_fear.pdf ) per un gioco di simulazione. Funziona benissimo.
Ora voglio che gli agenti possano collaborare (ad es. Facendo azioni insieme). Qual è in questo caso il miglior design AI che le GoapActions mantengano libero il distico?
Dovrebbero pianificare insieme? (che cos'è in questo caso lo "stato del mondo"?) O dovrebbero condividere i loro piani? una specie di sistema di messaggi?
Esempio
Agent1: Worldstate Agent 1: isLonely = true
Obiettivo Agent1: isLonely = false
Pianifica Agent1: AskAgent2ToTalk -> TalkToAgent2
Agent2 Worldstate Agent 2: hasWood = false L'
obiettivo hasWood = true
Pianifica Agent2: GetAxe -> ChopWood -> BringWoodToSupply
Come ottengo questa costellazione?
Piano Agent1: TalkToAgent2
Piano Agent2: TalkToAgent1 -> GetAxe -> ChopWood -> BringWoodToSupply
O se stanno parlando e uno degli agenti viene interrotto (ad es. Da un nemico attaccante) l'altro agente deve sapere che la sua Azione TalktoAgent2 è terminata.