Package jadex.bdiv3.annotation
Annotation Type Goal
-
@Target(TYPE) @Retention(RUNTIME) public @interface GoalLet a class be used to represent goals of a BDI agent. Can be annotated to inner classes of an agent or in aGoalsannotation to refer to external classes. Settings of this annotation give detailed control over the means-end reasoning and goal deliberation processes (seeDeliberation) with regard to the annotated goal. The means-end reasoning is the process of plan selection and execution and is based on the notion of an "applicable plans list" (APL). When the goal needs processing, the agent determines the applicable plans and stores them in the APL. By default the plans are tried sequentially in the given order. Several goal flags likerandomselectionandposttoallallow changing this behavior.
-
-
Optional Element Summary
Optional Elements Modifier and Type Optional Element Description java.lang.Class<?>clazzThe goal class, when used inside aGoalsannotation.DeliberationdeliberationThe deliberation settings.ExcludeModeexcludemodeWhen to exclude a plan from the APL after it has been executed.booleanorsuccessShould a procedural goal succeed when first plan executed successfully or after all plans have been executed (with at least one passed plan).booleanposttoallPost the goal to all plans of the APL in parallel.PublishpublishThe publication settings can be used to export goal as a component service.booleanrandomselectionSelect a plan randomly.booleanrebuildRebuild the APL on each retry;booleanrecurIf true (defaults to false), a new round of means-end reasoning is started after each plan execution.longrecurdelayThe delay (default 0 for no delay) before restarting goal processing if recur is set to true (in milliseconds).booleanretryIf true (default) means-end reasoning is allowed to select another plan after a plan has already been executed.longretrydelayThe delay between two plan executions (in milliseconds).java.lang.Class<?>[]triggergoalsThe goal trigger is used in case the goal should be considered as plan for another goal.booleanuniqueShould the goal be unique (no other goal is allowed that is the same).
-
-
-
Element Detail
-
clazz
java.lang.Class<?> clazz
The goal class, when used inside aGoalsannotation.- Default:
- java.lang.Object.class
-
-
-
excludemode
ExcludeMode excludemode
When to exclude a plan from the APL after it has been executed. Default is to execute it after it has been tried without consideration of its success state.- Default:
- jadex.bdiv3.annotation.ExcludeMode.WhenTried
-
-
-
orsuccess
boolean orsuccess
Should a procedural goal succeed when first plan executed successfully or after all plans have been executed (with at least one passed plan). Plan success flag. Determines when a goal is succeeded depending on plan success. Default a procedural goal has succeeded when the first plan has passed. If not 'or' but 'and' mode is used the goal will only succeed after execution of the last plan from the APL.- Default:
- true
-
-
-
deliberation
Deliberation deliberation
The deliberation settings.- Default:
- @jadex.bdiv3.annotation.Deliberation
-
-
-
publish
Publish publish
The publication settings can be used to export goal as a component service.- Default:
- @jadex.bdiv3.annotation.Publish(type=java.lang.Object.class)
-
-