Content uploaded by Zlatogor Minchev
Author content
All content in this area was uploaded by Zlatogor Minchev
Content may be subject to copyright.
34
Sixth Int. Workshop on GNs, Sofia, 17 Dec. 2005, 34-42
GENERALIZED NETS MODELLING AND CONTROL OF MODULAR
MOBILE ROBOTIC SYSTEM
Zlatogor Minchev
Centre for Biomedical Engineering -“Prof. Ivan Daskalov”- Bulgarian Academy of
Sciences, “Acad.G.Bonchev” Str, Bl.105, Sofia, Bulgaria,
e-mail: zminchev@clbme.bas.bg
Abstract: Modular Robotic Systems (MRSs) are entities, composed of units, that can
be reconfigured independently for group (swarm), solving different tasks. These robots have
many potential applications in hazardous and unknown environments like exploration of
other planets in the universe. Such systems have to be able to deal with dynamic changes in
the environment that potentially lead to failures and goal changes. Groups of robots will need
to plan, execute, and then re-plan in real-time, while simultaneously being robust enough to
avoid robot damage and complete mission failure.
Generalized Nets (GNs), on the other hand, are ascertained at the present paper
because they have proved to be very useful and convenient tool for description, modelling
and training of different elements from the Artificial Intelligence area, including robotics.
The paper will discuss some possibilities and results for Generalized Nets
representation, modelling and control of mobile modular robotic systems.
Key words: generalized nets, modular robots, modelling, simulation, control
1.Introduction
Modular Robotic Systems (MRSs) are a collection of autonomous controlled units
capable to connect, disconnect, and climb over adjacent units or to move independently [5],
[6], [24]. These systems have a lot of possible applications in hazardous and unknown
environments in other planet investigation in the universe [23], [25].
They could also be utilized in the following applications: obstacle avoidance in highly
constrained and hostile environments (under the sea, at the scene of natural calamities),
growing structures (consisting of different units for building bridges, buttresses and other
civil structures), in the military area (systems for reconnaissance and neutralization) [5], [22].
The present paper will be based on the idea of considering different units from MRSs
as elements (agents) that are part of an abstract multi-agent system, desribed in Genaralized
Nets terms.
The theory of Multi-Agent Systems (MAS) is an extension of Artificial Intelligence
(AI) theory but concerns distributed AI in multiple reasoners [8].
Although there is no global ascendancy in MASs and the agents are communicating
with intrinsic mechanisms like negotiations or collaborations for common goal
achievements, the present paper is also based on some hierarchical notations [8] for
modelling and control - rather similar to the idea of prominence [18].
For more than a decade of years these robots have been formally divided in three main
groups:
• lattice type systems;
• chain (string) type systems;
• mobile type systems.
35
The lattice type robots change their shape by moving into positions on a virtual grid or
lattice. Like chain robots, all the modules remain attached to the robot. The lattice element
possesses a spatial symmetry in accordance to its structure and it could be of 2D or 3D-type,
[10], [15], [20], [21], [24].
The chain type robotic systems create themselves by attaching and detaching chains of
modules to and from themselves, with each chain always attached to the rest of the modules
at one or more points. Nothing ever moves off on its own. Some practical implementation of
these robots could be found in [6], [7], [16], [17].
The mobile type of modular robots, change their shape by detaching and moving
modules from their main body and linking up at a new location in order to form new
configurations or to share a common goal achievement without any links, but by utilizing
information exchange techniques [4], [9], [13], [14], [23].
Generalized Nets (GNs) [1] - an extension of Petri nets [19], from the other hand, are
a convenient tool for modelling, simulation, optimization and control of different parallel
processes from the artificial intelligence area [2], [11], [12], [14].
The present paper will describe a GN model for modelling and control of the third
type of MRSs-mobile MRS. The model is based on the IFS algorithm, described in [13].
2. A common GN model of a single module from an abstract MRS
A common GN model of a single module from an abstract MRS will be described in
this section. The model is not considering any definite type of MRS but describes only the
most general features necessary to a single module, which is a part of MRS and
communicates with it.
Symbols and signatures could be found in [1].
Fig.1. A GN model of a single module from an abstract MRS
This GN model of a single abstract module contains two transitions - Z1 and Z2. The
first one represents module’s (agent 's) intelligent part and the second one - his effectors.
Transition Z1 has the following structure:
Z1 = 〈{l1, l2, l3, l6, l7}, {l3, l4, l5, l6}, r1, ∨( l1, l2, l3, l6, l7)〉,
where:
Z1
l3
l4
l1
Z2
l8
l7
l5
l2
l6
36
and: W1,3 = “present module is switched on”, W2,6 = “other MRS modules are switched on”,
W3,6 = “information for the external environment current state is already processed”, W6,4 =
“present module has taken an action decision”, W7,5 = “other MRS modules require
information for the present module”.
Transition Z2 has the following structure:
Z
2 = 〈{l4, l8}, {l7, l8}, r2, ∨( l4, l8)〉,
and: W4,7 = “module’s effectors have reached the new desired state”, W4,8 = “module’s
effectors are switched on”.
2.1. Model work
The GN model work will be described in 6 steps that considers one loop of its work.
This loop could be repeated from the beginning if the number of time steps should be
extended k times, i.e. t* = k.6, where t* has the sense of [1]
For further description of GN model work it is assumed that tokens ψ, ξ, λ are already
in places: l3, l6 and l8 (transitions Z1 and Z2) with the following initial characteristics: X0
ψ =
“external environment previous state”, X0
ξ = “other MRS modules previous state” and X0
λ =
“module's effectors previous state”.
Step I: Tokens α and β enter places l1 and l2 of transition Z1 with the following initial
characteristics:
X0
α = “raw external environment current state information”;
X 0
β = “raw MRS modules current state information”.
Step II: Token α enters place l3 (transition Z1), and unites with token ψ. Token β,
enters place l6 (transition Z1) and unites with token ξ. This is conceivable if predicates: W1,3 =
“present module is switched on” and W2,6 = “other MRS modules are switched on” are true.
The new characteristics of tokens ψ and ξ are:
X1
ψ = “processed external environment current state information”;
X1
ξ = “processed MRS modules current state information”.
r2 = l4
l8
l
7
l
8
W4,7 W4,8
false true
where:
l1
l2
l3
l6
l7
l3 l4 l5 l6
W1,3 false false false
false false false W2,6
true false false W3,6
false W6,4 false true
false false W7,5 false
r1 =
37
Step III: Token ψ is divided into two new tokens - ψ and γ. The first token (ψ) stays at
place l3 (transition Z1) during the GN work like a memory for the external environment states,
and the second one (γ) enters place l6 (transition Z1). This is conceivable if predicate: W3,6 =
“information for the external environment current state is already processed” is true.
The initial characteristic of token γ is:
X0
γ = “processed external environment current state information”.
Step IV: Token γ unites with token ξ and token ξ is divided into two new tokens - ξ
and δ. Token ξ stays at place l6 (transition Z1) during the GN work like a memory for other
MRS modules states, and token δ enters place l4 (transitions’ couple Z1 - Z2). This is
conceivable if predicate: W6,4 = “present module has taken an action decision” is true.
Token δ obtains the following initial characteristic:
X0
δ= “module's effectors new desired state”.
Step V: Token δ is divided into two new tokens δ and χ. Token δ enters place l7 and
token χ enters place l8 and unites with the token λ. This is conceivable if predicates: W4,7 =
“module’s effectors have reached the new desired state” and W4,8 = “module’s effectors are
switched on” are true.
Tokens δ and λ obtain the following new characteristics:
X1
δ= “module's effectors current state”.
X1
λ = “module's effectors current state”.
Step VI: Token δ enters place l5 (transition Z1). This is conceivable if predicate W7,5 =
“other MRS modules require information for the present module” is true.
Token δ obtains the following new characteristic:
X2
δ= “module’s current state”.
The revealed GN model of a single agent could be implemented in another GN model
for control of a group (swarm) of Mobile MRS (MMRS) by utilizing some of the hierarchical
operators defined over GNs. In the present paper the H6 operator has been chosen because it
is a new one [3] for GNs and is very flexible, compared to the other operators defined over
GNs (see next section).
3. Short description of H6 operator
Over GNs there have been defined six groups of operators [1] - global, local
hierarchical, reducing, extending and dynamic. They do not exist either for ordinary Petri
nets, nor for some of their extensions, but could be transformed for them (where it is
possible).
Hierarchical operators are forming one of these groups. They are divided into two
main groups - shrinking (H2, H4 and H5) and extending (H1, H3, H5, H6) operators.
In accordance with the object of influence they are divided into three main groups:
acting upon or giving as a result a place (H1 and H2), a transition (H3, H4 and H5) or even a
subnet (H5 and H6).
38
Operators H1 and H3 transform a place (H1) or a transition (H3) of a given GN to a new
GN (that becomes a subnet of the first one). On the contrary, operators H2 and H4 replace a
subnet of a given GN with a new place (H2) or a new transition (H4). Finally, operator H5
replace one subnet with another and operator H6 replace a token from one GN with a brand
new subnet (see below).
Tokens in generalized nets are among their most important components because they
are responsible for the information exchange in the net. Token (in GN) is an object, which
enters GN with an initial characteristic and during his motion (in the GN) obtains new
characteristics, while keeping all it’s previous.
So, we could use GN-tokens as an interpretation of different complex objects,
including whole GNs.
As it was mentioned above, the sixth hierarchical operator H6 transforms a certain GN
token that is in some place of the GN to a brand new GN for a given time moment and
period.
This gives a possibility to construct a GN, which contains other GNs as subnets that
will be accomplished in different situations (time moments) if needed.
After [3], the H6 operator has the following graphical definition:
Fig.2. A graphical interpretation of H6 operator
where: transitions’ couple: Z1 - Z2 and place l are an abstract initial example; m is the number
of tokens: α1,…, αm that will be transformed into: A1,…, Am GNs; l’1,…, l’m and l”1,…, l”m
are the output and input places of two abstract transitions: Ż’ and Ż” [3].
It is important to notice that the application of H6 operator is also possible for one
place of a given transition. So, you could extend any token that is a member of a GN without
any necessity for adding auxiliary components that represent the relations between nets. By
utilizing H
6 operator, the basic GN will be changed only in the point, where the token of
interest is placed.
4. A GN model for control of a Mobile Modular Robotic System - MMRS
As it was mentioned in section 1, the model that will be revealed here is based on the
Intuitionistic Fuzzy Sets (IFS) algorithm for control of MRS, described in [13] and in some
sense is an extension of the GN model described in section 2 (see below).
The model consists of three basic transitions. Transition Z1 describes an action
selector that determines the action of the MMRS in accordance with its state. The possible
l
Z1 Z2
E
H6
l’1
Ż’ Ż”
l”1
A1
l’m l”m
Am
l’m+1
H6 (E)
39
states of the whole system are generalized to S, where: S = {IFS square construction, IFS
square investigation, IFS positions optimization}. These states are defined in accordance with
[13]. Similar to S, possible actions for each of the modules, could be generalized to A, where:
A = {initialize module, move to coordinates (x,y), stop at coordinates (x,y)}.
Transition Z2 describes a low level action translator with memory that transforms a
certain action into an equivalent machine code. Finally, transition Z3 describes a generalized
MMRS with a feedback to the action’s translator Z2 memory (place l5) for control of the
action execution. Additionally, it should be noted that each of the tokens that are in places
l5,1, …., l5,m could be extended to the GN model of a single module from section 2.
The GN model for control of a MMRS is depicted in Fig. 3:
Fig.3. A GN model for control of MMRS
Transition Z1 has the following structure:
Z1= 〈{l1}, {l2, l3, l4}, r1〉,
and: W1,2 = “current state s = pr1 S”, W1,3 = “current state s = pr2 S”, W1,4 = “current state s =
pr3 S”, S = {IFS square construction, IFS square investigation, IFS positions optimization}
[13].
Transition Z2 has the following structure:
Z2 = 〈{ l2, l3, l4, l6, l7,1,…, l7,m}, { l5,1,…, l5,m, l6}, r2〉,
Z1
l2
l3
l1
Z3
l7,1
l4
Z2
l5,1
l5,m
l6
l7,m
where:
r1 =
l2 l3 l4
l1 W1,2 W1,3 W1,4
where:
r2 = l5,1 … l5,m l6
l2
l3
l4
l6
l7,1
…
l
7
,
m
false … false W2,6
false … false W3,6
false … false W4,6
W6,5,1 … W6,5,m true
false … false W7,1,6
… … … …
false … false W7,m,6
40
and: W2,6 = “token α is in place l2”, W3,6 = “token α is in place l3”, W4,6 = “token α is in place
l4”, W6,5,i = “token γi is in place l6”, W7,i,6 = “token γi is in place l7,i”, i = 1, 2, …, m, m ∈ N.
Transition Z3 has the following structure:
Z3= 〈{l5,1, …, l5,m}, { l7,1, …, l7,m}, r3, ∧(l5,1, …, l5,m)〉,
and: W5,i,7,i = “token γi is in place l5,i”, i = 1, 2, …, m, m ∈ N.
4.1. Model work
The model work will be described in 6 steps that considers one loop of its work. This
loop could be repeated from the beginning if the number of time steps should be extended k
times, i.e. t* = k.6, where t* has the sense of [1].
For further description of GN model work it is assumed that token β is already in
place l6 of transition Z2 with the following initial characteristic: X0
β
= “ a ”, a = pr1A, A =
{initialize module, move to coordinates (x,y), stop at coordinates (x,y)}. It should also be
noted that in this GN model it is accepted that the execution of a certain action a (a ∈ A) is
possible for one step.
Step I: Token α enters place l1 of transition Z1 with the following characteristic:
X0
α
= “information for the MMRS”.
Step II: Token α enters some of the places: l2, l3 or l4 (of transitions Z1 - Z2 couple).
This is conceivable if some of predicates: W1,2 = “current state s = pr1 S”, W1,3 = “current state
s = pr2 S”, W1,4 = “current state s = pr3 S”, S = {IFS square construction, IFS square
investigation, IFS positions optimization}, [13], is true.
The new characteristic of token α is:
X1
α
= “s”, s ∈ S.
Step III: Token α enters place l6 of transition Z2 where it unites with token β. This is
conceivable if some of predicates: W2,6 = “token α is in place l2”, W3,6 = “token α is in place
l3”, W4,6 = “token α is in place l4”, W6,5,i = “token γi is in place l6”, W7,i,6 = “token γi is in place
l7,i”, (i = 1, 2, …, m, m ∈ N), is true.
where:
r3 =
l7,1 … l7,m
l5,1
…
l5,m
W5,1,7,1 … W5,1,7,m
… … …
W5,m,7,1 … W5,m,7,m
41
The new characteristic of token β is:
X1
β
= “s and execution of a is not finished”, s ∈ S, where S has the sense from the
previous step and a = prjA, A = {initialize module, move to coordinates (x,y), stop at
coordinates (x, y)}, j = 2, 3.
Step IV: Token β is divided into m new tokens - γi that enter places l5,i (transitions Z2 -
Z3). This is conceivable if some of predicates: W5,i,7,i = “token γi is in place l5,i” ”, (i = 1, 2, …,
m, m ∈ N), is true.
Tokens γi obtain the following initial characteristics:
X0
γi = “execute action a with respect to s”, i = 1, 2, …, m, m ∈ N, a ∈ A and s ∈ S.
Step V: Tokens γi enter places l7,i (transitions Z2 - Z3). This is conceivable if some of
predicates: W5,i,7,i = “token γi is in place l5,i”, (i = 1, 2, …, m, m ∈ N), is true.
Tokens γi obtain the following new characteristic:
X1
γi = “machine equivalent of a”, a ∈ A.
Step VI: Tokens γi enter place l6 of transition Z2 where they unite with token β. This is
conceivable if some of predicates: W7,i,6 = “token γi is in place l7,i”, (i = 1, 2, …, m, m ∈ N), is
true.
Token β obtains the following new characteristic:
X2
β
= “s and execution of a is finished”, s ∈ S, where S has the sense from the
previous step.
5.Conclusion
The revealed GN models give a possibility for detail and common description
modules that are part of MMRS and could be reckoned as agents. Above all, it is also
possible to extend the model from section 4 by the model from section 2 due to the
application of the hierarchical operator - H6. This allows creation of simple GNs models
predisposed to later enlargement of their abilities with the help of preliminary defined
algorithms, described in GN terms.
So, GNs could be considered as a simple and flexible likelihood for modelling,
optimization and control of real Modular Robotic Systems.
References
[1] Atanassov, K. Generalized nets, World Scientific, Singapore, 1991.
[2] Atanassov, K. and Aladjov, H. Generalized Nets in Artificial Intelligence, vol.2, “Prof.
Marin Drinov”, Academic Publishing House, 2000.
[3] Atanassov, K. On a new Hierarchical Operator over the Generalized Nets, In Proc. of
the Third International Workshop on Generalized Nets and Intuitionistic Fuzzy Sets,
Warszawa, Sept. 7-8, 2003 (in press).
[4] Bräunl, T. EyeBot: A Family of Autonomous Mobile Robots, In Proc. of ICONIP’99,
Perth, November, 1999, 645 - 649.
42
[5] Chirikijan, G. Kinematics of Metamorphic Robotic Systems, In Proc. of IEEE Int. Conf.
Rob. Autom., San Diego, May 1994, 449 - 455.
[6] Duff, D., Yim, M., Roufas, K. Evolution of PolyBot: A modular reconfigurable robot.
In Proc. of COE/Super-Mechano-Systems Workshop, 2001.
[7] Kamimura, A., Murata, S., Yoshida, E., Kurokawa, H., Tomita, K. and Kokaji, S. Self-
Reconfigurable Modular Robot - Experiments on Reconfiguration and Locomotion,
In IEEE/RSJ International Conference on Intelligent Robots and Systems, 2001,
606-612.
[8] Kraus S., Wilkenfeld J., Zolotkin G. Multiagent Negotiation Under Time Constraints,
Journal of Artificial Intelligence, vol. 75, no.2, 1995, 297 - 345.
[9] Kurazume, R. and Hirose, S. Developing of Cleaning Robotic System with Cooperative
Positioning System, Journal of Autonomous Robots, vol.9, no.3, 2000, 237 - 246.
[10] Minchev, Z. An Intuitionistic Fuzzy Sets Application in Multi-agent Systems of
Metamorphic Robotic Systems, In Proc. of First International IEEE Symposium
‘Intelligent Systems’, September 10 - 12, Varna, 2002, 74 - 78.
[11] Minchev, Z. A Metamorphic Robot described in Generalized Nets Terms, In Proc. of
Third International Workshop on Generalized Nets, Sofia, October, 2002, 37 - 41.
[12] Minchev, Z. Mobile Modular Robotic System Described in Generalized Nets’ Terms, In
Proc. of BioPS’03, November 11 - 13, 2003, III.41 - III.45.
[13] Minchev, Z., Manolov, O., Noykov, S., Witkowski, U. and Rükert, U. Fuzzy Logic
Based Intelligent Motion Control of Robot Swarm Simulated by Khepera Robots, In
Proc. of 2004 Second Int. IEEE Conference ‘Intelligent Systems’, Varna, Bulgaria,
June 22-24, vol.I, 2004, 305 - 310.
[14] Minchev, Z. Generalized Nets Model for Control of Mobile Robot, In Proc. of
BioPS’04, December 6 - 8, 2004, III.42 - III.45.
[15] Murata, S., Kurokawa, H., Kokaj, S. Self-Assembling Machine, In Proc. of IEEE Int.
Conf. Rob. Autom., San Diego, May 1994, 441 - 448.
[16] Murata, S., Yoshida, E., Tomita, K., Kurokawa, H., Kamimura, A. and Kokaji, S.
Hardware Design of Modular Robotic System, In Proc. of IEEE RSJ on Itelligent
Robots and Systems, Cd-Rom, F-AIII-5, 2000, 2210 - 2218.
[17] Nilsson, M. Snake Robot Free Climbing, IEEE Control Systems Magazine, February,
vol.18, no.1, 1998, 21-26.
[18] Parunak, H. From Chaos to Commerce: Practical Issues and Research Opportunities in
the Nonlinear Dynamics of Decentralized Manufacturing Systems, In Proc. of Second
Int. Workshop on Intelligent Manufacturing Systems, K. U. Leuven, Belgium, 15 - 25,
1999.
[19] Petri, C.-A. Kommunication mit Automaten, Ph.D.diss., Univ. of Bonn, 1962.
[20] Rus, D. and Vona, M. Crystalline Robots: Self-reconfiguration with Unit-compressible
Modules, Journal of Autonomous Robots, vol.10, no.1 2001, 107 - 131.
[21] Yim, M., Lamping, J., Mao, E., Chase, J. Rhombic Dodecahedron Shape for Self-
Assembling Robots, Xerox PARC, SPL TechReport P97 - 10777, 1997.
[22] http://www.air-attack.com/page.php?pid=8
[23] http://www.csail.mit.edu/research/abstracts/abstracts03/robotics/16williams.pdf
[24] http://www.cs.dartmouth.edu/~robotlab/robotlab/papers/rfitch/ICRA2002_published.pd
f
[25] http://marsrovers.nasa.gov/mission/spacecraft_surface_rover.html