Class EmotionalPlanner

  • All Implemented Interfaces:
    java.io.Serializable

    public class EmotionalPlanner
    extends java.lang.Object
    implements java.io.Serializable
    See Also:
    Serialized Form
    • Constructor Summary

      Constructors 
      Constructor Description
      EmotionalPlanner()
      Creates a new EmotionalPlanner
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      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 Detail

      • EmotionalPlanner

        public EmotionalPlanner()
        Creates a new EmotionalPlanner
    • Method Detail

      • 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