bdi4jade.reasoning

## Class DefaultPlanSelectionStrategy

- java.lang.Object
- - bdi4jade.reasoning.AbstractReasoningStrategy
  - - bdi4jade.reasoning.DefaultPlanSelectionStrategy

- All Implemented Interfaces:
    PlanSelectionStrategy, ReasoningStrategy

      public class DefaultPlanSelectionStrategy
      extends AbstractReasoningStrategy
      implements PlanSelectionStrategy

  This class is the default implementation of the strategy `PlanSelectionStrategy`. It selects the first plan of the set.
  Author:
    Ingrid Nunes

- - ### Field Summary

    - ### Fields inherited from class bdi4jade.reasoning.AbstractReasoningStrategy

      `capability`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `DefaultPlanSelectionStrategy()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `Plan` | `selectPlan(Goal goal, java.util.Set<Plan> candidatePlans)` Selects the first plan of the set of candidate plans, if any.

    - ### Methods inherited from class bdi4jade.reasoning.AbstractReasoningStrategy

      `setCapability`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

    - ### Methods inherited from interface bdi4jade.reasoning.ReasoningStrategy

      `setCapability`

- - ### Constructor Detail

    - #### DefaultPlanSelectionStrategy

          public DefaultPlanSelectionStrategy()

  - ### Method Detail

    - #### selectPlan

          public Plan selectPlan(Goal goal,
                                 java.util.Set<Plan> candidatePlans)

      Selects the first plan of the set of candidate plans, if any.
      Specified by:
        `selectPlan` in interface `PlanSelectionStrategy`
      Parameters:
        `goal` - the goal that must be achieved.
        `candidatePlans` - the plans that can achieve the goal.
      Returns:
        the selected plan.
      See Also:
        `PlanSelectionStrategy.selectPlan(bdi4jade.goal.Goal, java.util.Set)`