1 University of Zagreb, Faculty of EE & C SWAN'06 Department of Control and Computer Engineering...
-
Upload
hope-davidson -
Category
Documents
-
view
215 -
download
0
Transcript of 1 University of Zagreb, Faculty of EE & C SWAN'06 Department of Control and Computer Engineering...
1
University of Zagreb, Faculty of EE & C SWAN'06
Department of Control and Computer Engineering Arlington, USA, Decembe 7-9, 2006
Laboratory for Robotics and Intelligent Control Systems
String Algebra-based Approach to Dynamic Routing in Multi-LGV Automated Warehouse
Systems
Presented by Zdenko Kovačić
Faculty of Electrical Engineering and ComputingUniversity of Zagreb
Unska 3, 10000 Zagreb, CROATIAhttp://flrcg.rasip.fer.hr
2Laboratory for Robotics and Intelligent Control Systems
I. Introduction
II. A multi-LGV plant layout representation
III. The shortest path determination
IV. Implementation examples
Presentation outline
University of Zagreb, Faculty of EE & C SWAN'06
Department of Control and Computer Engineering Arlington, USA, Decembe 7-9, 2006
3Laboratory for Robotics and Intelligent Control Systems
I. Introduction
• laser guided vehicles (LGVs) in flexible manufacturing systems: => increased system throughput, => reduced operational costs, => consistent execution of predetermined tasks, => …
• requirement - the use of effective supervisory control strategies which are able to solve conflict and deadlock problems in the system layout on-line (NP - hard).
• two approaches to routing are prevailing in the literature: - static routing - concerned only with the spatial dimension of the routing problem (determination of paths in the space domain), - dynamic routing - treats routing as a time-space problem dealing with determination of paths feasible both in space and time (in some cases a time-space approach could be seen also as static routing).
University of Zagreb, Faculty of EE & C SWAN'06
Department of Control and Computer Engineering Arlington, USA, Decembe 7-9, 2006
4Laboratory for Robotics and Intelligent Control Systems
The aim of the proposed dynamic routing method:
Determination of the shortest path (in terms of a traveling time) by solving a shortest path problem with time windows (SPPTW) and by using a string matrix composition.
Dynamic routing the number of active vehicles and the corresponding missions change in time determined shortest path should be feasible time windows elongation provides conflict-free and deadlock-free paths for all active vehicles.
University of Zagreb, Faculty of EE & C SWAN'06
Department of Control and Computer Engineering Arlington, USA, Decembe 7-9, 2006
5Laboratory for Robotics and Intelligent Control Systems
A multi-LGV plant layout representation
• layout of a multi-LGV plant can be represented by a graph whose intersections and ends of paths are referred to as graph nodes, while paths themselves are represented by weighted arcs.
,G N A
• a nominal arc weight minimal traverse time of arc aj for vehicle ri,
ˆ jij
ij
lw
v
where lj is the length of arc aj, and vij is the maximal admissible speed for vehicle ri on arc aj.
University of Zagreb, Faculty of EE & C SWAN'06
Department of Control and Computer Engineering Arlington, USA, Decembe 7-9, 2006
directed graph 1 2, ...
nN n n n
1 2, ...
mA a a a
Note: in other cases arc weights could correspond to the lengths of the arcs, to the energy needed to pass the arcs etc.
because time windows are used for shortest path calculation
University of Zagreb, Faculty of EE & C SWAN'06
Department of Control and Computer Engineering Arlington, USA, Decembe 7-9, 2006
6Laboratory for Robotics and Intelligent Control Systems
An example of a real multi-LGV plant layout
7Laboratory for Robotics and Intelligent Control Systems
:a i i
R r r R
• a set of active vehicles (vehicles with assigned missions)
:a i i
M m m M
• a set of active missions
:j j
a a A • a path – set of arcs
• the weight of the path σ is equal to the release time of its destination arc di
out
dt
.
W(σ) =
University of Zagreb, Faculty of EE & C SWAN'06
Department of Control and Computer Engineering Arlington, USA, Decembe 7-9, 2006
• a set of all paths that connect origin arc oi and destination arc di of mission mi is
8Laboratory for Robotics and Intelligent Control Systems
Representation of LGV mission
ˆ, , , ,i
i i i iim t o d t P t r
• a mission
the shortest path between oi and di
mission priority
1 2, ...i i i
i q
University of Zagreb, Faculty of EE & C SWAN'06
Department of Control and Computer Engineering Arlington, USA, Decembe 7-9, 2006
• we have to find whether is feasible ˆi t
both can be changed during mission execution
• the priority of the mission of the vehicle that is far from its destination is higher than the priority of the mission of the vehicle that is already close to its goal.• the mission whose due time is expiring has a higher priority than the mission with a larger time reserve.
9Laboratory for Robotics and Intelligent Control Systems
Definition of mission priority
• a mission priority Pi(t) is calculated according to the relation:
where tdi is a due time of mission mi, and Pi0 is an initial mission priority (the mission with the highest priority has the lowest value of Pi0).
University of Zagreb, Faculty of EE & C SWAN'06
Department of Control and Computer Engineering Arlington, USA, Decembe 7-9, 2006
0min ˆ, ( )ˆ( )
ˆ( )
i
idiii
i
forP t
for
t tP W
W t
W
More about mission priorities
• Each time the request for a new mission arrives or current paths become unviable, initially assigned missions’ priorities are recalculated by the dispatching system the missions with low initial priorities do not wait infinitely in a queue the influence of livelock is thus significantly reduced.
• A care should be taken as more than one mission might have priority -∞. In that case, the mission that requests the vehicle first gets a higher priority.
• When mi is finished without new mission assignments, an idle positioning mission is activated and vehicle ri is driven to the nearest idle positioning arc (a dead-end arc which is treated only as oi or di).
• Being on the idle positioning arc, the vehicle is waiting for a new mission assignment.
• We assume that:• a vehicle can reside only on arcs• only one vehicle at the time is allowed to occupy one arc
10Laboratory for Robotics and Intelligent Control Systems
University of Zagreb, Faculty of EE & C SWAN'06
Department of Control and Computer Engineering Arlington, USA, Decembe 7-9, 2006
11Laboratory for Robotics and Intelligent Control Systems
Definition of a time window
3in
atArc a
3out
at
1in
at
1out
at
7in
at
7out
at
2in
at
2out
at
t
ˆ,out in
ij ij ij ij ijw t t w w
, ,in out
j ij j ij j ijw t t in outw t t
University of Zagreb, Faculty of EE & C SWAN'06
Department of Control and Computer Engineering Arlington, USA, Decembe 7-9, 2006
vehicle r3 first occupied arc aduring time window w3a
then vehicle r1 occupied arc aduring time window w1a
etc.
These are vectors with the 1st component corresponding to the highest priority mission, nth component to the lowest priority mission and n=│Ma│, i.e., the dimension of all three vectors is equal to the number of active missions (variable)
• Assigned to mission mi, vehicle ri occupies particular arc aj during a time window defined as where is a release time of arc aj
from mission mi, and is a time of entry on arc aj by mission mi.
out
ijt
in
ijt
12Laboratory for Robotics and Intelligent Control Systems
More about characteristics of time windows
University of Zagreb, Faculty of EE & C SWAN'06
Department of Control and Computer Engineering Arlington, USA, Decembe 7-9, 2006
• In case of moving on a circular path, a vehicle may visit an arc aj more than once, hence, more than one component of time vector wj would correspond to the same mission, i.e. n≠│Ma│ index iυj corresponds to the υth time window of mission mi on arc aj.
• The components of vector wj, related to active missions which do not use arc aj, are set to zero, while the related components of vectors and are set to ∞.
• From defined time vectors we know which missions visit which arcs, but we cannot tell directly in which order for the purpose of time windows insertion, we must sort components of time vectors in a chronological order.
• In this way, vector x = [xi] can be converted into a sorted vector = [xi], where
x
11i ii ix x x x
13Laboratory for Robotics and Intelligent Control Systems
University of Zagreb, Faculty of EE & C SWAN'06
Department of Control and Computer Engineering Arlington, USA, Decembe 7-9, 2006
• In the example shown below, missions m1 and m2 have the highest and the lowest priority, respectively•Time vectors of a given arc aa are the following
3in
atArc a
3out
at
1in
at
1out
at
7in
at
7out
at
2in
at
2out
at
t
1 7 3 2
1 7 3 2
1 7 3 2
0 0 0T
a a a aTin in in in
a a a aTout out out out
a a a a
w w w w
t t t t
t t t t
a
in
a
out
a
w
t
t• Sorted time vectors for arc aa are written as (it should be noted that, although seven missions are active, only four of them are using arc aa).
3 1 7 2
3 1 7 2
3 1 7 2
0 0 0T
a a a aTin in in in
a a a aTout out out out
a a a a
w w w w
t t t t
t t t t
a
in
a
out
a
w
t
t
14Laboratory for Robotics and Intelligent Control Systems
The shortest path determination
The method solves the Shortest Path Problem with Time Windows (SPPTW).
The method finds the mission candidate paths by string matrix compositionA string matrix S, associated with graph G = (N, A) and its arc adjacency matrix G, is an nxn matrix with string entry sij obtained as follows:For each gij which has entry 1, sij=Ai-Aj, where Ai is a word identifying arc ai and Aj is a word identifying arc aj. If gij = 0, sij= 0, that is, if there is no node between arcs, the entry is an empty string.
University of Zagreb, Faculty of EE & C SWAN'06
Department of Control and Computer Engineering Arlington, USA, Decembe 7-9, 2006
Powers of string matrix S are calculated as follows:
1 , S S S
i.e. an entry of Sρ is found as:1 , , , 1, 2,..., ,ij ik kj
k
s s s i j k n where n is a number of arcs in the corresponding graph.
15Laboratory for Robotics and Intelligent Control Systems
The shortest path determination
Standard multiplication in should be replaced with series string composition, while standard addition should be replaced with parallel string composition.
Then, component comprises all paths from arc i to arc j that include ρ nodes; these paths are accordingly called ρth order paths (the components of string matrix S represent the 1st order paths). A set contains all paths of the corresponding graph.
University of Zagreb, Faculty of EE & C SWAN'06
Department of Control and Computer Engineering Arlington, USA, Decembe 7-9, 2006
When a new mission mm is requested at the moment tm, the supervisor is looking for an idle vehicle rm to assign it to that mission (with initial mission priority). As a goal of dynamic routing is to determine the shortest path for mission mm, only powers of vector (i.e., the row of matrix S that corresponds to the origin arc om) must be calculated by using a string composition
1 , S S S
1 .m m Σ Σ S
16Laboratory for Robotics and Intelligent Control Systems
The shortest path determinationHaving vector , the weight of each path , represented by a string in , has to be determined and then vector is formed in the following way: if there exist ρth order paths that connect om and dm, then
University of Zagreb, Faculty of EE & C SWAN'06
Department of Control and Computer Engineering Arlington, USA, Decembe 7-9, 2006
Furthermore, if W( ) < W( ), then the string that stood for is replaced by the string representing . In the case W( ) ≥ W( ), the path in vector is replaced by the null string, otherwise the path remains the component of the vector. Initially, when mission mm is requested
and W( ) = ∞.
m
Σ i
m
Σ m
Σ
ˆ( ) min ( ) .m m
ii
W W
ˆm ˆm ˆmˆm ˆm ˆm
ˆm m
Σ
ˆm ˆm
Further step in algorithm is testing of the path feasibility
17Laboratory for Robotics and Intelligent Control Systems
Let us choose a candidate path . For each arc aj , its time vectors are initialized as
1. Initialization of time vectors
1 2
1 2
1 2
ˆ... 0 0
...
...
T
j j mjTin in in
j j mjTout out out
j j mj
w w w
t t t
t t t
j
in
j
out
j
w
t
t
Initialization of the origin arc om
University of Zagreb, Faculty of EE & C SWAN'06
Department of Control and Computer Engineering Arlington, USA, Decembe 7-9, 2006
mi Σ
missions with lower priority than a new mission and missions which released the arc before new mission request
unknown intmj = tm
1 2
1 2
...
...m m
m m m
Tin in
o o mTout out
o o m mo
t t t
t t t w
m
m
in
o
out
o
t
t
/m m mmo o mow l v mmov
mol
the average vehicle speed
the remaining length of the arc at the moment of request
18Laboratory for Robotics and Intelligent Control Systems
2. Insertion of time windows
7in
btArc b
7out
bt
2in
bt
2out
bt
t
3in
atArc a
3out
at
1in
at
1out
at
7in
at
7out
at
2in
at
2out
at
t
Arc c
1in
ct
1out
ct
7in
ct
7out
ct
ttm
inmct
outmct
inmbt
outmbt
inmat
outmat
4in
bt
4out
btmb
request for new mission
University of Zagreb, Faculty of EE & C SWAN'06
Department of Control and Computer Engineering Arlington, USA, Decembe 7-9, 2006
Having time windows of all arcs that belong to the candidate path initialized, starting from the second arc on the path, we are looking on each arc for the first available time window that fulfils two requirements:
a) it is wide enough to accommodate vehicle rm for a predetermined period,b) its entry time is set after the release time of the
upstream arc, i → j.
in
mjt out
mit
19Laboratory for Robotics and Intelligent Control Systems
3. Time windows elongation and overlaps
7in
btArc b
7out
bt
2in
bt
2out
bt
t
3in
atArc a
3out
at
1in
at
1out
at
7in
at
7out
at
2in
at
2out
at
t
Arc c
1in
ct
1out
ct
7in
ct
7out
ct
ttm
inmct
outmct
inmbt
outmbt4
inmat
outmat
4in
bt
4out
bt
7in
btArc b
7out
bt
2in
bt
2out
bt
t
3in
atArc a
3out
at
1in
at
1out
at
7in
at
7out
at
2in
at
2out
at
t
Arc c
1in
ct
1out
ct
7in
ct
7out
ct
ttm
inmct
outmct
inmbt
outmbt
inmat
outmat
4in
bt
4out
bt
University of Zagreb, Faculty of EE & C SWAN'06
Department of Control and Computer Engineering Arlington, USA, Decembe 7-9, 2006
resolution of conflict by window elongation
request for new mission
conflict
20Laboratory for Robotics and Intelligent Control Systems
University of Zagreb, Faculty of EE & C SWAN'06
Department of Control and Computer Engineering Arlington, USA, Decembe 7-9, 2006
Installation in Cavi Triveneta - Simulator
21Laboratory for Robotics and Intelligent Control Systems
University of Zagreb, Faculty of EE & C SWAN'06
Department of Control and Computer Engineering Arlington, USA, Decembe 7-9, 2006
Pre-installation testing in Euroimpianti Vicenza
22Laboratory for Robotics and Intelligent Control Systems
University of Zagreb, Faculty of EE & C SWAN'06
Department of Control and Computer Engineering Arlington, USA, Decembe 7-9, 2006
Installation Cavi Triveneta, Italy
23Laboratory for Robotics and Intelligent Control Systems
University of Zagreb, Faculty of EE & C SWAN'06
Department of Control and Computer Engineering Arlington, USA, Decembe 7-9, 2006
Installation Haribo Linz, Austria
24Laboratory for Robotics and Intelligent Control Systems
University of Zagreb, Faculty of EE & C SWAN'06
Department of Control and Computer Engineering Arlington, USA, Decembe 7-9, 2006
Q & A