X hits on this document

PDF document

Enhanced NPC Behaviour using Goal Oriented Action Planning - page 40 / 110





40 / 110

current world state. So the targetIsDead symbol is added. However the value applied to this symbol in the current world state is actually set to be the agent’s actual world state symbol value (step 3). The planner then looks at the effects of the various actions the agent has available to it and sees that ActionAttack has an effect that solves the unsatisfied world state symbol i.e. by bringing the targetIsDead symbol to a true value (step 4). Upon executing the action within the planner, the targetIsDead symbol becomes satisfied (step 5). However the ActionAttack’s world state preconditions are now added to the goal world state of the planner (step 6). This adds a single world state symbol in this case, weaponLoaded, which is set to true. As before, the planner adds whatever symbols are in the goal world state that weren’t previously in the current world state. The new symbol’s value is then set to be the same as the agent’s actual current value for this symbol (step 7), which in this case sets weaponLoaded to be false (if the agent’s actual world state symbol value for weaponLoaded was initially true then the planning process would finish as the goal and current states would be detected to be the same).

The goal and the current world states still aren’t the same so more planning needs to be carried out. The planner looks for an action that has an effect which sets weaponLoaded to true and finds another action, ActionReload (step 8). The ActionReload action has no preconditions and only a single effect, which sets the value of the world state symbol weaponLoaded to true. Applying the action’s effects cause the goal and current states to now be the same (step 10). The ActionReload has no preconditions to add to the goal state so the planner quits out and creates a plan. The plan includes the Reload action followed by the Attack action.

What was left out from this planning snippet was that for the ActionAttack or ActionReload to be even considered, their context preconditions must be satisfied which might check for things like if the agent has a valid target in view, a long range weapon etc.. Also this process takes place entirely in plan space and none of the actions are actually executed until the agent begins to step through its newly created plan.


Document info
Document views405
Page views409
Page last viewedSun Jan 22 10:56:05 UTC 2017