Il Goal Oriented Action Planning deriva dall’Automated Planning
Automated Planning
L’automated planning è un tipo di algoritmo di intelligenza artificiale per cui un sistema cerca autonomamente la migliore sequenza di azioni che possa permettere al sistema di raggiungere un obbiettivo imposto dal designer.
La sequenza di azioni realizzata dal sistema è chiamata piano di azione.Questo può essere realizzato tramite la codifica del mondo e dell’ambiente con un’insieme di informazioni che lo riguardano detti fatti.
L’insieme di tutti i fatti in un determinato momento temporale è detto stato.Le azioni vengono modellizzate tramite tre componenti:
Link to original
- Gli oggetti che fanno parte dell’azione
- Le precondizioni che devono essere vere perché l’azione possa avvenire
- Gli effetti sullo stato e come l’azione modifica i fatti conosciuti
In questo tipo di IA le FSM hanno tre classi di stati:
- Movimento all’interno del mondo virtuale (che può includere un’animazione)
- Riproduzione di un’animazione
- Interazione con un oggetto nel mondo virtuale
Ogni IA deve avere assegnato uno o più obbiettivi (ognuno con una propria priorità) che vengono modellizzati come un insieme di azioni necessarie per raggiungerli.
Azioni e Obbiettivi
Ad esempio per aprire una porta presente in cucina, mentre si è nella camera da letto, sarà necessario muoversi in una delle due stanze che la porta collega e poi interagire con la porta per aprirla.
Quale sia il planning migliore in questo caso può essere stabilito conoscendo a priori quale delle due stanze è più vicina all’NPC.
Questo non è sufficiente per avere un’IA abbastanza “intelligente”, in quanto in presenza di più agenti lo stato del mondo può cambiare anche per effetto di un altro agente (o del giocatore stesso). Bisogna quindi effettuare dei check di verifica di compatibilità del piano di azione sia prima della sua formulazione, che quando lo stato del mondo cambia e durante l’esecuzione dell’azione .