Information Technology Reference
In-Depth Information
from the positive interactions (two different tasks need the same precondition and at
least one of them does not remove it, or one task generates precondition of another
task) .
Intuitively, the set of independent plans can be executed concurrently by integrat-
ing them into one large plan. Otherwise, if the implicit dependency between individual
plans in Zero-Fragment is detected, then the master agent updates it by adding order-
ing constraints between these plans. Despite the order dependency between plans, some
tasks in these plans can be performed concurrently. Note that tasks cannot take place
concurrently if the pre- or post-conditions of the tasks in the successor plan are incon-
sistent with the postconditions of the tasks in the predecessor plan [9]. Therefore, in
order to determine the concurrent tasks, we will establish a comparison between pre-
and post-conditions of tasks in the successor plan with the postconditions of the tasks
in the predecessor plan. The comparison process will be started by checking pre- and
post-conditions of the first task in the successor plan p γ j with postconditions of differ-
ent tasks in the predecessor plan p γ i . If a pre- or post-condition of the first task in p γ j
is violated, then this task will execute sequentially with plan p γ i and the procedure of
case-1 will be performed. Otherwise, the first task will be executed concurrently with
the plan p γ i and the procedure of case-2 will be performed. The comparison process in
case-2 will go further in the successor plan p γ j in order to repeat the comparison with
the next task. At this point, we neither need case-2 nor steps number 4 and 5 in case-1.
Case-1: (1) Create ordering constraint last task in p γ i , current task in p γ j ,(2)Re-
move ordering constraint last task in p γ i ,goal () task in p γ i , (3) Remove goal() task
from p γ i , (4) Remove ordering constraint initial () task in p γ j , current task in p γ j ,
(5) Remove initial() task from p γ j , (6) Stop comparison process.
Case-2: (1) Remove ordering constraint initial () task in p γ j , current task in p γ j ,(2)
Remove initial() task in p γ j , (3) Create ordering constraint initial () task in p γ i , current
task in p γ j , (4) Continue comparison with the next task in the successor plan p γ j .
On the other hand, in the merging process, we need to detect possible plan steps that
will be merged and to update their constraints. The pair of plan steps in different plans
is merged, if their postconditions are matched and there is no other task that is ordered
after them that could violate these postconditions. More formally,
Definition 6 (Merging Plan Steps merge ( s i ,s j )
). ∀ plan steps s i ∈ P γ i and s j ∈ P γ j ,
merge ( s i ,s j ) iff (( post ( s i )= post ( s j )) ( ¬∃s k ∈ P γ j violate post ( s j ) s.t. ( s j ≺ s k )))
Once a pair of plan steps has been merged, the related constraints of the removed plan
step should be modified. This means that the replaced plan step will inherit all con-
straints of the merged plan steps as well as adding new constraints.
For all merged plan steps s j ∈ P γ j and s i ∈ P γ i : (1) The plan step s j is replaced
by plan step s i ,(2) ∀ s k ,s l ∈ P γ j and ∃s k ,s j , s j ,s l ∈≺ of plan P γ j add new order
constraint s k ,s l to plan P γ j , (3) Remove s k ,s j , s j ,s l from plan P γ j .Theserules
ensure that the whole ordering constraints of the merged plan step are preserved.
On the other hand, the causal link constraints that include the merged plan step in
its components should be updated. For all merged plan steps s j ∈ P γ j
and s i ∈ P γ i :
Search WWH ::




Custom Search