public class TransitionSystem
extends java.lang.Object
Modifier and Type | Class and Description |
---|---|
(package private) class |
TransitionSystem.FailWithDeadline |
static class |
TransitionSystem.State |
Modifier and Type | Field and Description |
---|---|
private Agent |
ag |
private AgArch |
agArch |
private static Atom |
aNOCODE |
private Circumstance |
C |
private TransitionSystem |
conf |
private TransitionSystem |
confP |
private java.util.List<GoalListener> |
goalListeners |
private java.lang.String |
kqmlReceivedFunctor |
private java.util.Map<GoalListener,CircumstanceListener> |
listenersMap |
private java.util.logging.Logger |
logger |
private int |
nrcslbr |
private Settings |
setts |
private boolean |
sleepingEvt |
private TransitionSystem.State |
stepAct |
private TransitionSystem.State |
stepDeliberate |
private TransitionSystem.State |
stepSense |
private java.util.Queue<java.lang.Runnable> |
taskForBeginOfCycle |
Constructor and Description |
---|
TransitionSystem(Agent a,
Circumstance c,
Settings s,
AgArch ar) |
Modifier and Type | Method and Description |
---|---|
void |
act() |
void |
addGoalListener(GoalListener gl)
adds an object that will be notified about events on goals (creation, suspension, ...)
|
java.util.List<Option> |
applicablePlans(java.util.List<Option> rp) |
private void |
applyAddIM() |
private void |
applyApplPl() |
void |
applyClrInt(Intention i) |
private void |
applyExecInt() |
private void |
applyFindOp()
This step is new in Jason 1.1 and replaces the steps RelPl->ApplPl->SelAppl when the user
does not customise selectOption.
|
private void |
applyProcAct() |
private void |
applyProcMsg() |
private void |
applyRelApplPlRule2(java.lang.String m)
generates goal deletion event
|
private void |
applyRelPl() |
private void |
applySelAppl() |
private void |
applySelEv() |
private void |
applySelInt() |
private void |
applySemanticRuleAct() |
private void |
applySemanticRuleDeliberate() |
private void |
applySemanticRuleSense() |
boolean |
canSleep() |
boolean |
canSleepAct() |
boolean |
canSleepDeliberate() |
boolean |
canSleepSense() |
protected void |
checkHardDeadline(Event evt) |
void |
deliberate() |
Event |
findEventForFailure(Intention i,
Trigger tevent) |
boolean |
generateGoalDeletion(Intention i,
java.util.List<Term> failAnnots)
generate a failure event for an intention
|
private boolean |
generateGoalDeletionFromEvent(java.util.List<Term> failAnnots) |
Agent |
getAg() |
Circumstance |
getC() |
java.util.List<GoalListener> |
getGoalListeners() |
java.util.logging.Logger |
getLogger() |
Settings |
getSettings() |
AgArch |
getUserAgArch() |
boolean |
hasGoalListener() |
private void |
joinRenamedVarsIntoIntentionUnifier(IntendedMeans im,
Unifier values) |
private Literal |
prepareBodyForEvent(Literal body,
Unifier u,
IntendedMeans imRenamedVars) |
void |
reasoningCycle() |
java.util.List<Option> |
relevantPlans(Trigger teP) |
boolean |
removeGoalListener(GoalListener gl) |
private void |
resumeSyncAskIntention(java.lang.String msgId,
Term answerVar,
Term answerValue) |
void |
runAtBeginOfNextCycle(java.lang.Runnable r)
Schedule a task to be executed in the begin of the next reasoning cycle.
|
void |
sense() |
void |
setAgArch(AgArch arch) |
private static void |
setDefaultFailureAnnots(Event failEvent,
Term body,
java.util.List<Term> failAnnots)
add default error annotations (error, error_msg, code, code_src, code_line) in the failure event
|
void |
setLogger(AgArch arch) |
void |
setLogger(java.util.logging.Logger l) |
java.lang.String |
toString() |
void |
updateEvents(Event e) |
void |
updateEvents(java.util.List<Literal>[] result,
Intention focus) |
private void |
updateIntention(Intention i)
remove the top action and requeue the current intention
|
private java.util.logging.Logger logger
private Agent ag
private AgArch agArch
private Circumstance C
private Settings setts
private TransitionSystem.State stepSense
private TransitionSystem.State stepDeliberate
private TransitionSystem.State stepAct
private int nrcslbr
private boolean sleepingEvt
private java.util.List<GoalListener> goalListeners
private TransitionSystem confP
private TransitionSystem conf
private java.util.Queue<java.lang.Runnable> taskForBeginOfCycle
private java.util.Map<GoalListener,CircumstanceListener> listenersMap
private final java.lang.String kqmlReceivedFunctor
private static final Atom aNOCODE
public TransitionSystem(Agent a, Circumstance c, Settings s, AgArch ar)
public void setLogger(AgArch arch)
public void setLogger(java.util.logging.Logger l)
public void addGoalListener(GoalListener gl)
public boolean hasGoalListener()
public java.util.List<GoalListener> getGoalListeners()
public boolean removeGoalListener(GoalListener gl)
private void applySemanticRuleSense() throws JasonException
JasonException
private void applySemanticRuleDeliberate() throws JasonException
JasonException
private void applySemanticRuleAct() throws JasonException
JasonException
private void applyProcMsg() throws JasonException
JasonException
private void resumeSyncAskIntention(java.lang.String msgId, Term answerVar, Term answerValue) throws JasonException
JasonException
private void applySelEv() throws JasonException
JasonException
private void applyRelPl() throws JasonException
JasonException
private void applyApplPl() throws JasonException
JasonException
private void applyRelApplPlRule2(java.lang.String m) throws JasonException
JasonException
private void applySelAppl() throws JasonException
JasonException
private void applyFindOp() throws JasonException
JasonException
private void applyAddIM() throws JasonException
JasonException
private void applyProcAct() throws JasonException
JasonException
private void applySelInt() throws JasonException
JasonException
private void applyExecInt() throws JasonException
JasonException
private Literal prepareBodyForEvent(Literal body, Unifier u, IntendedMeans imRenamedVars)
public void applyClrInt(Intention i) throws JasonException
JasonException
private void joinRenamedVarsIntoIntentionUnifier(IntendedMeans im, Unifier values)
public java.util.List<Option> relevantPlans(Trigger teP) throws JasonException
JasonException
public java.util.List<Option> applicablePlans(java.util.List<Option> rp) throws JasonException
JasonException
public void updateEvents(Event e)
private void updateIntention(Intention i)
public boolean generateGoalDeletion(Intention i, java.util.List<Term> failAnnots) throws JasonException
JasonException
private boolean generateGoalDeletionFromEvent(java.util.List<Term> failAnnots) throws JasonException
JasonException
private static void setDefaultFailureAnnots(Event failEvent, Term body, java.util.List<Term> failAnnots)
protected void checkHardDeadline(Event evt)
public boolean canSleep()
public boolean canSleepSense()
public boolean canSleepDeliberate()
public boolean canSleepAct()
public void runAtBeginOfNextCycle(java.lang.Runnable r)
public void reasoningCycle()
public void sense()
public void deliberate()
public void act()
public Agent getAg()
public Circumstance getC()
public Settings getSettings()
public void setAgArch(AgArch arch)
public AgArch getUserAgArch()
public java.util.logging.Logger getLogger()
public java.lang.String toString()
toString
in class java.lang.Object