24
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 Computing University of Zagreb Unska 3, 10000 Zagreb, CROATIA http://flrcg.rasip.fer.hr

University of Zagreb, Faculty of EE & C SWAN '06

  • Upload
    clay

  • View
    32

  • Download
    0

Embed Size (px)

DESCRIPTION

University of Zagreb, Faculty of EE & C SWAN '06 Department of Control and Computer Engineering Arlington, USA, Decembe 7-9, 200 6. - PowerPoint PPT Presentation

Citation preview

Page 1: University of Zagreb, Faculty of EE & C                                         SWAN '06

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

Page 2: University of Zagreb, Faculty of EE & C                                         SWAN '06

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

Page 3: University of Zagreb, Faculty of EE & C                                         SWAN '06

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

Page 4: University of Zagreb, Faculty of EE & C                                         SWAN '06

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

Page 5: University of Zagreb, Faculty of EE & C                                         SWAN '06

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

Page 6: University of Zagreb, Faculty of EE & C                                         SWAN '06

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

Page 7: University of Zagreb, Faculty of EE & C                                         SWAN '06

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

Page 8: University of Zagreb, Faculty of EE & C                                         SWAN '06

• 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

Page 9: University of Zagreb, Faculty of EE & C                                         SWAN '06

• 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

Page 10: University of Zagreb, Faculty of EE & C                                         SWAN '06

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

Page 11: University of Zagreb, Faculty of EE & C                                         SWAN '06

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

Page 12: University of Zagreb, Faculty of EE & C                                         SWAN '06

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

Page 13: University of Zagreb, Faculty of EE & C                                         SWAN '06

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

Page 14: University of Zagreb, Faculty of EE & C                                         SWAN '06

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.

Page 15: University of Zagreb, Faculty of EE & C                                         SWAN '06

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

Page 16: University of Zagreb, Faculty of EE & C                                         SWAN '06

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

Page 17: University of Zagreb, Faculty of EE & C                                         SWAN '06

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

Page 18: University of Zagreb, Faculty of EE & C                                         SWAN '06

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

Page 19: University of Zagreb, Faculty of EE & C                                         SWAN '06

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

Page 20: University of Zagreb, Faculty of EE & C                                         SWAN '06

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

Page 21: University of Zagreb, Faculty of EE & C                                         SWAN '06

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

Page 22: University of Zagreb, Faculty of EE & C                                         SWAN '06

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

Page 23: University of Zagreb, Faculty of EE & C                                         SWAN '06

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

Page 24: University of Zagreb, Faculty of EE & C                                         SWAN '06

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