the processing unit M? (sens8) (x) Is the conveyorC3
in its extreme left position? (sens9) (xi) Is the con-
veyor C3 in its extreme right position? (sens10) (xii)
Is there a workpiece of type AB at the processing unit
M? (sens11) (xiii) Is the robotic agent arm in its lower
position? (sens12) (xiv) Is the robotic agent arm in its
upper position? (sens13)
4 SELF MODEL
We represent the Self Model of a robotic agent with a
formal specification which is Petri Net.
To simlify the representation, we take in considera-
tion only the treatment of a workpiece A (i.e. the
transfer of a piece A by the robotic agent, the pro-
cessing with the unit M and finally the transfer to
the output). Let the circles in Figure 2 denoted by
p
1
, p
2
, p
5
and p
7
correspond to four subsystems as
follows: input conveyor (p
1
), robot (p
2
) , processing
unit (p
5
) and output conveyor (p
7
). Let the other cir-
cles correspond to the following operations: transfer
of a workpiece into the processing unit by means of
the robotic agent (p
3
), treating operation (p
4
), transfer
of the treated workpiece on the output conveyor (p
6
).
The circles are called places of Petri nets. The pres-
ence or availability of a workpiece at the cell input is
modeled by a dot in place p
1
. We say that a token
is in p
1
. Analogously, a token in p
2
means that the
robotic agent is free or available to transfer a work-
piece. A vertical bar denoted as t
1
is called a tran-
sition. It symbolizes an event. In this case, it is the
start of the transfer operation. Transition t
2
represents
the end of the transfer and start of the treating opera-
tion. Clearly, realization of this event requires that the
transfer has been performed and the processing unit is
available. t
3
denotes the end of the treating and start
of the workpiece transfer on the output conveyor; t
4
is the end of the output transfer and arrival of a work-
piece on the output conveyor. The token distribution
describes an actual state of the system. It changes
through a so-called transition firing. A transition fir-
ing is possible if all places before this transition have
enough tokens the transition is said to be enabled. Fir-
ing has the following effect: one token is taken from
all places before the transition and one token is placed
into each place located after the transition. The effect
complies with the so-called firing rules just described.
According to Figure 2 both conditions are met for a
workpiece transfer. The next system state: the robotic
agent moves the workpiece from the input conveyor
into the processing unit.
P1
P3 P4 P6
t1 t2
t3 t4
P2
P7
P5
Figure 2: Petri Net of processing workpiece A.
5 PLANNER MODEL
Distributed planning is considered as a very complex
task (David Jung, 1999), (Oscar Sapena, 2008). In
fact, distributed planning ensures how the multi-robot
system should plan to work together, to decompose
the problems into subproblems, to assign these sub-
problems, to exchange the solutions of subproblem,
and to synthesize the whole solution which itself is
a problem that the robotic agents must solve (Sergio
Pajares Ferrando, 2013), (Pascal Forget, 2008), (Ma-
lik Ghallab, 2014).
The conceptual model of a robotic agent is constituted
by three components including (i) the planner, (ii) the
plan-execution agent, and (iii) the world in which the
plans are to be executed (the formal representation is
based on the work (Malik Ghallab, 2004)).
The planner’s input includes descriptions of the state
transition system denoted by Σ, the initial state(s) that
Σ might be in before the plan-execution robotic agent
performs any actions, and the desired objectives (e.g.,
to reach a set of states that satisfies a given goal con-
dition, or to perform a specified task, or a set of states
that the world should be kept in or kept out of, or a
partially ordered set of states that we might want the
world to go through). If the planning is being done
online (i.e., if planning and plan execution are going
on at the same time), the planner’s input will also in-
clude feedback about the current execution status of
the plan or policy. The planner’s output consists of ei-
ther a plan (a linear sequence of actions for the robotic
agent to perform) or a policy (a set of state-action
pairs with at most one action for each state).
Running Example
According to figure 3:
• A set of positions {p
1
, p
2
,...} : A position is used
to localise the workpiece A, B or AB;
• A set of robotic agents {r
1
, r
2
, ...} : Each robotic
agent transfers a workpiece one after one to be
processed;
• A set of workpieces of type A {a
1
,a
2
, ...};
• A set of workpieces of type B {b
1
,b
2
, ...};
• A set of workpieces of type AB {ab
1
,ab
2
, ...};
ENASE2015-10thInternationalConferenceonEvaluationofNovelSoftwareApproachestoSoftwareEngineering
272