Class EmotionalPlanner

java.lang.Object
FAtiMA.DeliberativeComponent.EmotionalPlanner
All Implemented Interfaces:
Serializable

public class EmotionalPlanner extends Object implements Serializable
See Also:
  • Constructor Summary

    Constructors
    Constructor
    Description
    Creates a new EmotionalPlanner
  • Method Summary

    Modifier and Type
    Method
    Description
    FAtiMA.Core.plans.Plan
    DevelopPlan(FAtiMA.Core.AgentModel am, FAtiMA.Core.goals.ActivePursuitGoal goal)
    Tries to develop a plan offline, very usefull for testing if the planner is working properly
    void
    FindStepFor(FAtiMA.Core.AgentModel am, Intention intention, FAtiMA.Core.plans.Plan p, FAtiMA.Core.plans.OpenPrecondition openPrecond, boolean newStep)
    Tries to find steps that achieves a given precondition and adds each one of those steps as possible plan alternatives
    FAtiMA.Core.plans.Plan
    ThinkAbout(FAtiMA.Core.AgentModel am, DeliberativeComponent dp, Intention intention)
    Implements a cycle of the reasoning/planning process.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • EmotionalPlanner

      public EmotionalPlanner()
      Creates a new EmotionalPlanner
  • Method Details

    • FindStepFor

      public void FindStepFor(FAtiMA.Core.AgentModel am, Intention intention, FAtiMA.Core.plans.Plan p, FAtiMA.Core.plans.OpenPrecondition openPrecond, boolean newStep)
      Tries to find steps that achieves a given precondition and adds each one of those steps as possible plan alternatives
      Parameters:
      intention - - the intention that this plan tries to achieve
      p - - the plan that the method analizes
      openPrecond - - the precondition that we want to satisfy
      newStep - - a boolean variable stating if the method should look for steps that already exist in the plan, or for new steps from the list of possible operators. true - gets a new Step, false - uses the steps that the received plan contains
    • ThinkAbout

      public FAtiMA.Core.plans.Plan ThinkAbout(FAtiMA.Core.AgentModel am, DeliberativeComponent dp, Intention intention)
      Implements a cycle of the reasoning/planning process. Given an Intention, it selects the best current plan to achieve the intention. Next it brings the best plan into focus and generates/updates emotions: Hope and Fear. Afterwards, these emotions together with mood will be used to decide what kind of coping strategy will be applied to fix the plan's flaw
      Parameters:
      intention - - the intention that will be the focus of reasoning
      Returns:
      - if the best plan for the intention is complete and no flaws were detected, this best plan is returned. If not, the method returns null
    • DevelopPlan

      public FAtiMA.Core.plans.Plan DevelopPlan(FAtiMA.Core.AgentModel am, FAtiMA.Core.goals.ActivePursuitGoal goal)
      Tries to develop a plan offline, very usefull for testing if the planner is working properly
      Parameters:
      goal - - The goal to plan for
      Returns:
      - A list of actions that if executed in the specified order will achieve the goal