A NEW HIERARCHICAL CONTROL SCHEME FOR A CLASS OF

CYCLICALLY REPEATED DISCRETE-EVENT SYSTEMS

Danjing Li §, Eckart Mayer §, J

¨

org Raisch §, ‡

§Systems and Control Theory Group, Max-Planck Institute, Dynamics of Complex Technical Systems

Sandtorstrasse 1, D-39106 Magdeburg, Germany

‡Lehrstuhl f

¨

ur Systemtheorie technischer Prozesse, Otto-von-Guericke Universit

¨

at Magdeburg

Postfach 4120, D-39016 Magdeburg, Germany

Keywords:

Cyclic systems, discrete-event systems, max-plus algebra, min-plus algebra, rail trafﬁc.

Abstract:

We extend the hierarchical control method in (Li et al., 2004) to a more generic setting which involves cycli-

cally repeated processes. A hierarchical architecture is presented to facilitate control synthesis. Speciﬁcally, a

conservative max-plus model for cyclically repeated processes is introduced on the upper level which provides

an optimal online plan list. An enhanced min-plus algebra based scheme on the lower level not only handles

unexpected events but, more importantly, addresses cooperation issues between sub-plants and different cy-

cles. A rail trafﬁc example is given to demonstrate the effectiveness of the proposed approach.

1 INTRODUCTION

In (Li et al., 2004), a hierarchical two-level control ar-

chitecture has been introduced for a class of discrete-

event systems (DES) without cyclically repeated fea-

tures (i.e. for systems “running only one cycle”). The

upper level of this architecture produces the time opti-

mal plan based on the event time relation represented

by a max-plus algebra model. The plan describes the

time optimal sequence of events. If an unexpected

event happens at any given time, max-plus algebra

models are simulated online on the upper level to up-

date the optimal plan and the detailed time speciﬁca-

tion for every event. Using this information, the lower

control level acts as an implementation block.

In practice, many DES applications exhibit cycli-

cally repeated features. In this case, cooperation (and

competition) issues between different cycles have to

be addressed, which is beyond the scope of the algo-

rithm in (Li et al., 2004). To cope with this situation,

the control strategy in (Li et al., 2004) is extended.

The resulting hierarchical control scheme is depicted

in Fig.1. It is composed of a two-level structure with

an independent C/D (continuous/discrete) module. In

general, the supervisory block on the upper level will

have the goal of determining the sequence of events

which optimises the given objective function in the

cyclically repeated case. This sequence of events is

referred to as the optimal plan. The C/D module is

an interface block which transforms information from

the (continuous) plant to the timed DES framework

employed on the upper level of the proposed control

architecture.

A case study representing a simple rail trafﬁc sys-

tem is used to demonstrate how control is realised in

the proposed framework. For this example, events

correspond to speciﬁc trains crossing speciﬁc loca-

tions within the track system. A plan speciﬁes a se-

quence of trains and track segments where trains pass

each other. The lower control level generates veloc-

ity reference signals for the trains to implement the

plan determined by the supervisory block. The C/D

block transforms position information into event time

information. For other applications, the terms “train”

and “track (segment)” have of course to be replaced

by different ones. For example, in ﬂexible manufac-

turing systems, “product” and “machine” can be used

instead. In a general context, “train” stands for “user”,

“track (segment)” for “resource”.

This contribution is organised as follows. Section 2

summarises how to generate the set of feasible plans

for a DES without cyclically repeated processes and

extends this method to the more general setting with

cyclically repeated features. This section also ex-

plains how the optimal plan is then chosen in an on-

line procedure. The C/D block is described in Sec-

tion 3. Section 4 explains how the plan generated

at the upper level can be implemented on the lower

level with the help of min-plus algebra. A simple case

study is given in Section 5 to illustrate the effective-

ness of the proposed approach.

30

Li D., Mayer E. and Raisch J. (2005).

A NEW HIERARCHICAL CONTROL SCHEME FOR A CLASS OF CYCLICALLY REPEATED DISCRETE-EVENT SYSTEMS.

In Proceedings of the Second International Conference on Informatics in Control, Automation and Robotics - Signal Processing, Systems Modeling and

Control, pages 30-36

DOI: 10.5220/0001182800300036

Copyright

c

SciTePress

Plant

Implementation Block

(Min−plus)

lower level

plan list &

current cycles

specification for

C / D

(Max−plus model)

Supervisory Block

unexpected event

upper level

controlled variable

Figure 1: Control structure

2 SUPERVISORY LEVEL

Max-plus algebra e.g. (Baccelli et al., 1992) is a struc-

ture deﬁned on the set IR

∗

= IR ∪ {−∞}, with max

and + as the two binary operations ⊕ and ⊗, respec-

tively. ǫ := −∞ is the additive identity in the max-

plus algebra. e := 0 is the multiplicative identity.

Based on the max-plus algebra model of the sys-

tem, the supervisory level generates the set of all fea-

sible plans (i.e. all feasible sequences of events) as

an ofﬂine task. During runtime, the supervisory level

determines the time optimal plan based on real time

information provided by the C/D module. The differ-

ence between systems with and without cyclicly re-

peated features lies in their different max-plus mod-

els. We ﬁrst summarise the simpler case.

2.1 Max-plus Model for non-cyclic

Systems

Non-cyclic systems can be represented by the implicit

max-plus algebra model (Baccelli et al., 1992):

X

= A

0

⊗ X ⊕ B ⊗ u, (1)

Y = C ⊗ X

. (2)

with

A

∗

0

= I ⊗ A

0

⊗ A

2

0

⊗ · · · ⊗ A

n

0

⊗ A

n+1

0

⊗ · · · , (3)

(1), (2) can be converted to an explicit max-plus

model

X

= A

∗

0

⊗ B ⊗ u, (4)

Y = C ⊗ A

∗

0

⊗ B ⊗ u, (5)

Here, the i-th component of X

, x

i

, represents the ear-

liest possible time for event i to occur. u and Y con-

tain time information of “start” and “ﬁnish” events,

and can be interpreted as system input and output, re-

spectively.

The elements of matrix A

0

represent the minimum

time distances that have to pass between events, e.g.

(A

0

)

21

implies that event 2 may not happen earlier

than (A

0

)

21

time units after event 1 happened. In this

contribution, (A

0

)

ij

∈ IR

+

∪ {−∞, 0}. Matrix A

0

is

the max-plus sum of A

01

and A

02

, i.e.

A

0

= A

01

⊕ A

02

, (6)

where the former represents a property of the system

and is a ﬁxed matrix, while the latter is related to the

shared resources and differs for different plans. More

speciﬁcally, the elements of A

01

represent the time re-

lation between events determined by physical proper-

ties of the system. For example, for rail systems, with

a maximum speed assumption in max-plus algebra,

the entries of A

0

represent the minimum time needed

by trains to pass distances in the network. Thus the

elements of A

01

correspond to lengths of tracks. On

the other hand, for any instance of time, a shared

track segment can only be occupied by one train. The

different occupation orders for trains on shared track

segments generate different plans. Different A

02

ma-

trices correspond to those different plans.

In a directed graph, we call the arcs corresponding

to A

01

elements “travelling arcs” while the arcs cor-

responding to A

02

elements are called “control arcs”.

For a given train track network, the travelling arcs and

therefore the entries of matrix A

01

are ﬁxed. Fig. 2

shows the directed graph (including all possible con-

trol arcs) of a simple network with two single-line

track segments and two trains, where train 1 moves

from right to left and train 2 moves in opposite di-

rection. For single-line segment I, the control arc la-

belled a

1

, with a

1

≥ 0, represents the fact that the

earliest time instant at which train 2 may occupy this

segment is a

1

time units after train 1 has emptied

it. The control arc labelled b

1

states the reverse se-

quence. Accordingly, only one of those two arcs can

exist in any one plan. Instead of erasing a non-existent

arc from a graph, we can also label it with ǫ = −∞.

Hence, by deﬁnition, non-existing arcs have weight

ǫ. Similarly, in segment II, the arcs labelled a

2

and

b

2

represent two possibilities. Detailed information

about how to ﬁnd all feasible A

02

(i.e. all feasible

plans) can be found in (Li et al., 2004). In particu-

lar, it was shown there that

∃k ≤ n, A

k

0

(i, i) > ǫ ⇔ A

02

is infeasible. (7)

2.2 Max-plus Model for Cyclicly

Repeated Systems

For system with cyclicly repeated behaviour, several

cycles may exist concurrently. Therefore, control

A NEW HIERARCHICAL CONTROL SCHEME FOR A CLASS OF CYCLICALLY REPEATED DISCRETE-EVENT

SYSTEMS

31

train 2

train 1

a

2

a

1

b

1

b

2

I

II

Figure 2: A network with all possible control arcs

conditions have to be extended such that trains from

different cycles will not occupy the same track seg-

ment simultaneously. Hence, additional control arcs

have to be introduced. Also, additional travelling arcs

are needed to represent the passage of trains into sub-

sequent cycles. An arc that connects events related

to the same cycle is a “zero order arc”, an arc that

connects events related to two sequential cycles is a

“ﬁrst order arc”. In general, there can also be “second

order arcs” and so on. To keep our example reason-

ably simple, we introduce the following conservative

condition:

For each track segment shared by several cycles,

trains in a latter cycle may not occupy it unless all

trains in the previous cycle have left it.

With the above assumption, there is no need to in-

troduce arcs of higher order than 1. For the simple

rail trafﬁc network in Fig. 3, which was shown in (Li

et al., 2004), “ﬁrst order control arcs” ensure the safe

resource sharing between cycles and “ﬁrst order trav-

elling arcs” ensure that each train starts its new jour-

ney (cycle k + 1, k ≥ 1) a speciﬁed number of time

units after its arrival at its destination in cycle k. As a

review of the example, the network involves 3 trains

and 3 tracks. Initially, train 1, 2 and 3 are located at

the end points of the 3 tracks, i.e. A, B and C, respec-

tively. The trains move along the tracks in the direc-

tions shown in Fig. 3. In the middle of both track AO

and track CO, double-line track segments are avail-

able, which make it possible that two trains pass each

other between points N

1

and M

1

or N

2

and M

2

, re-

spectively. In (Li et al., 2004), all trains stopped after

they arrived at their destinations (i.e. after one cycle).

In this contribution, each train will start a new cycle,

e.g. a given number of time units after train 1 arrived

at C, it will start the next route to go to B, which rep-

resents a new cycle. Fig. 4 shows the different kinds

of control and travelling arcs for this network. Note

that although there are optional control arcs of zero

order, all ﬁrst order control arcs are ﬁxed according to

the assumption.

Thus, for systems with cyclicly repeated behaviour,

in addition to the zero order matrix A

0

, we now have

a ﬁrst order matrix A

1

. For cycle k, the implicit max-

M

1

M

2

O

A

B

C

train 1

train 2

train 3

N

1

N

2

Figure 3: A simple rail trafﬁc network

Travelling arc for kth cycle:

zero order

Travelling arc from kth cycle

to (k+1)th cycle: first order

Control arc: first order

Fixed control arc for

kth cycle: zero order

Optional control arc for

kth cycle: zero order

Figure 4: Control arcs and travelling arcs.

plus algebra model is:

X

(k) = A

0

(k)X(k) ⊕ A

1

X(k − 1) ⊕ Bu (8)

Y (k) = C ⊗ X

(k) (9)

As for A

0

, the matrix A

1

is the max-plus sum of

two matrices A

11

and A

12

, i.e.

A

1

= A

11

⊕ A

12

, (10)

where the elements of A

11

correspond to “ﬁrst or-

der travelling arcs” representing the time needed for

a train to start a new cycle after ﬁnishing the previous

cycle. The elements of A

12

correspond to the con-

trol arcs for trains belonging to two sequential cycles

respectively. Unlike A

02

, A

12

cannot represent differ-

ent choices; therefore, A

1

is a constant matrix while

A

0

will depend on the speciﬁc plan to be implemented

in the k-th cycle and is therefore varying with k.

ICINCO 2005 - SIGNAL PROCESSING, SYSTEMS MODELING AND CONTROL

32

Repeated insertion of (8) into itself provides:

X

(k) = A

0

(k) ⊗ X(k) ⊕ A

1

⊗ X(k − 1) ⊕ B ⊗ u

= A

0

(k) ⊗ [A

0

(k) ⊗ X

(k) ⊕ A

1

⊗ X(k − 1)

⊕ B ⊗ u] ⊕ A

1

⊗ X

(k − 1) ⊕ B ⊗ u

= A

2

0

(k) ⊗ X

(k) ⊕ [A

0

(k) ⊕ I] ⊗ A

1

⊗X

(k − 1) ⊕ [A

0

(k) ⊕ I] ⊗ B ⊗ u

= A

2

0

(k)X

(k) ⊕ [A

0

(k) ⊕ I]A

1

X(k − 1)

⊕ [A

0

(k) ⊕ I]Bu

.

.

.

= A

n

0

(k)X

(k) ⊕ [A

n−1

0

(k) ⊕ · · · ⊕ A

0

(k)

⊕I]A

1

X

(k − 1) ⊕ [A

n−1

0

(k) ⊕ · · ·

⊕ A

0

(k) ⊕ I]Bu (11)

As for physically meaningful systems, A

n

0

(k) will

only contain ǫ elements, the last identity represents

an explicit max-plus algebra model:

X

(k) = A

∗

0

(k) ⊗ A

1

⊗ X(k − 1) ⊕

A

∗

0

(k) ⊗ B ⊗ u (12)

Y (k) = C ⊗ X

(k), (13)

where

A

∗

0

(k) = [A

n−1

0

(k) ⊕ · · · ⊕ A

0

(k) ⊕ I]. (14)

Assume that the system input u contains initial values

of lower bounds for the state vector X(k), i.e. B = I

(B

ii

= e, B

ij

= ǫ for i 6= j), u = X in(k) (see Sec-

tion 3 for further information), (12) and (13) become

X(k) = A(k) ⊗ X(k − 1) ⊕

A

∗

0

(k) ⊗ X

in(k) (15)

Y (k) = C ⊗ X

(k) (16)

where A(k) depends on A

0

(k):

A(k) = A

∗

0

(k)A

1

. (17)

For a given system with cyclicly repeated behav-

iour, (7) can be applied to eliminate infeasible plans

and corresponding max-plus models.

2.3 Optimal Plan List

After all feasible plans have been generated, the

supervisory level may simulate feasible max-plus-

models (15), (16) over the required total number of

cycles to determine the optimal sequence of A(k),

i.e. the optimal plan list. This is initially done in an

ofﬂine fashion, i.e. before the system is started. The

objective function is typically evaluated from the out-

put vector. For example, for rail track systems, the

(ofﬂine) objective function could be

J

offline

=

min

all feasible

plan lists

L

i

Y

i

(N)

(18)

where N is the required total number of cycles and

Y

i

(N) is the arrival time of train i in the N-th cy-

cle. As ⊕ represents max, the physical meaning is

to choose the plan list giving the minimum ﬁnal ar-

rival time, i.e. the minimal arrival time of the last

train in the last cycle. Since it is ofﬂine simulation,

X

in(1) only carries the starting event time. Further-

more, (X

)

i

(0) is set to ǫ = −∞. The resulting opti-

mal plan list is then implemented via the lower control

level.

Max-plus simulation in this step is obviously based

on the assumption that there is no unexpected event

and that each train either waits for a synchronisation

condition to be met or otherwise moves at its maxi-

mum velocity. Thus if any unexpected incident hap-

pens, it may affect the travelling time of trains either

directly by blocking them or indirectly via synchroni-

sation with other trains. If this happens, the runtime

event time will not match the event time calculated

by a-priori model simulation any more. To address

such difﬁculties, an online simulation is integrated to

update the aforementioned optimal plan list.

At time t

k

, for each of the concurrently existing

cycles l (e.g. l = k, k + 1), [X

(l)](t

k

), [Y (l)](t

k

)

will be updated by using (15), (16) with [X

in(l)](t

k

)

provided by the C/D block.

The online objective may be the same as the ofﬂine

objective (18), i.e.

J

online1

= J

offline

. (19)

It may also be different from the ofﬂine objective, for

example, it may state that after unexpected delays, all

trains have to catch up with the timetable correspond-

ing to the original ofﬂine plan list as fast as possible.

In this case,

J

online2

=

min

all feasible

plan lists

K

△

(20)

where K

△

is the index of the earliest cycle in which

all delayed trains can start (or end) their cycle trips

according to the timetable, i.e.

∀i, △

i

(l) = 0. l ≥ K

△

∃i, △

i

(l) > 0. l < K

△

(21)

△

i

(l) = t

start

i

(l) − timetable

i

(l) (22)

where t

start

i

(l) is the actual cycle starting time of

train i in cycle l, timetable

i

(l) is the cycle starting

time (according to the timetable) of train i in cycle l.

In brief, the supervisory level involves both ofﬂine

and online parts. The ofﬂine process is used to ﬁnd

all feasible plans based on the system topology and

an ofﬂine optimal plan list, which can be interpreted

as a timetable. The online part updates the feasible

plan set (see (Li et al., 2004)), the optimal plan list

and provides the time speciﬁcation X

(k) to the lower

level.

A NEW HIERARCHICAL CONTROL SCHEME FOR A CLASS OF CYCLICALLY REPEATED DISCRETE-EVENT

SYSTEMS

33

3 C/D BLOCK

In order to reschedule the plan (using (15)-(16)) in a

real time fashion, the state vector needs to be reini-

tialised according to the current status (at time t

k

) of

the trains for online model simulation. In other words,

the continuous variables will be transformed into a

reinitialised state vector. The reinitialised state vec-

tor X

in(t

k

) for the current cycle is:

x

in

j

(t

k

) =

x

j

if j is a past event

t

k

+ t

rest

if j is a next event,

for unblocked trains

t

rel

+ t

rest

if j is a next event,

for blocked trains

ǫ otherwise

(23)

where x

j

is the actual time at which event j happened.

t

rest

is the minimum time still needed before the next

event j may happen. It introduces continuous variable

information. For a rail track system, if a train has to

go the distance d

j

(t

k

) before it reaches the location

associated with the next event j and if the maximum

train velocity is v

max

,

t

rest

=

d

j

(t

k

)

v

max

. (24)

t

rel

is the estimated release time for the train currently

blocked. If this time cannot be estimated beforehand,

plan rescheduling will be based on the assumption of

immediate release, i.e.

t

rel

= t

k

. (25)

The supervisory level together with the C/D block

serves a model predictive control purpose, and a re-

ceding horizon concept is involved. This relates our

work to (De Schutter et al., 2002; De Schutter and

van den Boom, 2001; Van den Boom and De Schutter,

2004), where model predictive control is combined

with max-plus discrete-event systems.

4 IMPLEMENTATION LEVEL

The output of the supervisory level is the time spec-

iﬁcation X

(k) for the events of the currently exist-

ing cycles ( e.g. j = k , k + 1). X

(k) provides the

earliest possible time for each event due to the max-

imum speed assumption under max-plus. Accord-

ing to EPET (Earliest Possible Event Time) speciﬁca-

tions, trains will always move at maximum speed, or

otherwise stop to wait until the synchronisation con-

ditions are met. This is undesirable from an energy

saving point of view. An overall optimisation ap-

proach, minimising total energy consumption for all

trains, yields a large nonlinear problem, which, at the

moment, seems unrealistic to solve. Instead, a sub-

optimal approach is used here to determine a velocity

signal separately for each train. This is done as fol-

lows:

First, a Latest Necessary Event Time (LNET) for

each train is derived as an upper bound for the event

times. For systems with non-cyclicly repeated fea-

tures, this is done in such a way that the event time of

the ﬁnal event for each train according to EPET will

be met, in addition, it is also ensured that LNET does

not violate the EPET schedule of the other trains. For

systems with cyclicly repeated features, LNET should

not violate the EPET schedule of the sequential cycle.

Min-plus algebra, the dual system of max-plus alge-

bra (Baccelli et al., 1992; Cuninghame-Green, 1979;

Cuninghame-Green, 1991), is adopted to produce the

exact LNET speciﬁcation.

Suppose Q(j) is the event index set for all ﬁnal

events of trains in cycle j and P

m

(j) is the index set

for all events related to train m in cycle j, then at time

t

k

the LNET speciﬁcations [

X

m

(j)](t

k

) for train m

in cycle j can be calculated as

[

X

m

(j)](t

k

) = (−(A

0

(j)

∗

)

T

) ⊗

′

[XR

m

(j)](t

k

)

⊕

′

(−A

T

(j + 1)) ⊗

′

X

(j + 1) (26)

where

[(XR

m

)

i

(j)](t

k

)=

[x

i

(j)](t

k

), i∈Q(j) or i6∈P

m

(j)

+∞, otherwise.

(27)

Thus, for each train m, its EPET X

(j) and LNET

X

m

(j) are generated. Within this corridor, the ve-

locity signal can be optimised locally for each train.

Under ideal conditions, an energy optimal trajectory

results from minimising

J

m

=

Z

v

2

m

dt. (28)

For the problem of driving a train from one station

to the next, an energy optimal driving style con-

sists of four parts: maximum acceleration, speedhold-

ing, coasting and maximum breaking (Franke et al.,

2002; Howlett et al., 1994, e.g.). On a long journey

the speedholding phase becomes the dominant phase.

Then, assuming the journey must be completed within

a given time, the holding speed (i.e. the energy opti-

mal velocity) is approximately the total distance di-

vided by the total time (Howlett, 2000). In the follow-

ing, we neglect acceleration and braking effects and

suppose the velocity between two sequential events

is the straight-line velocity (i.e. speedholding mode).

Then, (28) becomes:

J

m

=

n

X

i=1

(S

i

− S

i−1

)

2

(t

i

− t

i−1

)

(29)

s.t.

ICINCO 2005 - SIGNAL PROCESSING, SYSTEMS MODELING AND CONTROL

34

t

0

= 0 (30)

t

i

= t

i−1

+

S

i

− S

i−1

v

m

(31)

t

1E

≤ t

1

≤ t

1L

(32)

t

2E

≤ t

2

≤ t

2L

(33)

.

.

.

t

(n−1)E

≤ t

n−1

≤ t

(n−1)L

(34)

t

nE

= t

n

= t

nL

(35)

where S

0

= 0, S

i

(i = 1, 2, · · · , n) is the distance

from the current position of train m to the place where

event i happens. t

nE

and t

nL

are EPET and LNET of

event n, respectively. The numerical solution gives

the energy optimal trajectory.

5 RAIL TRAFFIC CASE STUDY

The effectiveness of the hierarchical control architec-

ture proposed in the previous sections is illustrated by

a small rail trafﬁc example which is depicted in Fig. 3.

There are 3 feasible plans in this case study (see pre-

vious work in (Li et al., 2004)).

In a ﬁrst step, a ﬁxed optimal-time plan list is de-

rived from ofﬂine simulations. The system is ex-

pected to run based on this list. If unexpected events

happen and block some train, the supervisory level

will decide whether and how to change the plan list.

Suppose the total number of cycles is N = 5.

Fig. 5 shows the movements of the trains in a nor-

mal situation. The optimal plan list is [1 2 2 1 2].

In case of a disturbance (here train 3 is blocked on

track M

2

N

2

during the time interval [6, 46]), the su-

pervisory level checks if it is necessary to modify the

plan list using J

online1

. This scenario is presented in

Fig. 6 and Fig. 8, respectively. In Fig. 6, the blocking

time is known beforehand. With this blocking time

information, the supervisory level changes the plan

list immediately to reduce the delay time caused by

the obstacle. The required 5 cycles ﬁnish in about

219 time units. As a comparison, Fig. 7 keeps the

original plan list and the required 5 cycles ﬁnish in

about 228 time units. If the blocking time is unknown

beforehand, the supervisory level also keeps the orig-

inal plan list until the status of the trains (include the

blocked train) evolve to such an extent that another

plan list optimises the online objective J

online1

. In

this example, as shown in Fig. 8, with the new plan

list, [1 2 1 2 2], the required 5 cycles still can ﬁnish in

219 time units.

Under the same blocking situation, with different

online objectives, the supervisory level may change

to different plan list. If, for example, the required

number of cycles is 7, and train 3 is blocked during

the time interval [6, 26], and the online cost function

0 50 100 150 200 250

0

5

10

15

20

25

30

Train 1

Train 2

Train 3

Figure 5: Simulation result under normal situation, plan list:

[1 2 2 1 2]

0 50 100 150 200 250

0

5

10

15

20

25

30

Train 1

Train 2

Train 3

Figure 6: Blocking time is known beforehand, new plan list:

[3 2 1 2 2]

0 50 100 150 200 250

0

5

10

15

20

25

30

Train 1

Train 2

Train 3

Figure 7: Blocking time is known beforehand, stick to orig-

inal plan list: [1 2 2 1 2]

A NEW HIERARCHICAL CONTROL SCHEME FOR A CLASS OF CYCLICALLY REPEATED DISCRETE-EVENT

SYSTEMS

35

0 50 100 150 200 250

0

5

10

15

20

25

30

Train 1

Train 2

Train 3

Figure 8: Blocking time is unknown beforehand, new plan

list: [1 2 1 2 2]

J

online2

is used, the supervisory level changes the

plan list from [1 2 2 1 2 2 2] to [1 2 1 2 2 2 2], and

the ofﬂine timetable is recovered after the 6th cycle.

With J

online1

, the plan list is changed to [1 2 1 2 2 1

2], which minimises the required time. However, for

this policy, the timetable is not recovered.

6 CONCLUSION

This contribution proposes a hierarchical control ar-

chitecture for a class of discrete-event systems with

cyclicly repeated features and illustrates it through a

small rail trafﬁc example. Based on a max-plus alge-

bra model, an upper level supervisory block ensures

the optimal sequence of train movements and the op-

timal sequence of cycle plans even under disruptive

conditions. A lower level implementation block pro-

vides reference velocity signals for each train. By

exploiting the remaining degrees of freedom, it re-

duces overall energy consumption. The implementa-

tion policy is generated by use of the dual min-plus

algebra model. Simulation results for the rail traf-

ﬁc example show the effectiveness of the approach.

We expect the method to be also useful in other DES

applications which exhibit cyclicly repeated features,

such as ﬂexible manufacturing systems and chemical

batch processing plants.

REFERENCES

Baccelli, F., G.Cohen, G.J.Olsder, and J.P.Quadrat (1992).

Synchronization and Linearity. John Wiley and Sons,

New-York.

Cuninghame-Green, R. (1979). Minimax algebra. Springer-

Verlag, Berlin. Vol. 166 of Lecture Notes in Eco-

nomics and Mathematical Systems.

Cuninghame-Green, R. (1991). Minimax algebra and appli-

cations. Fuzzy Sets and Systems, 41:251–267.

De Schutter, B. and van den Boom, T. (2001). Model pre-

dictive control for max-min-plus-scaling systems. In

Proceedings of the 2001 American Control Confer-

ence, pages 319–324, Arlington, Virginia.

De Schutter, B., van den Boom, T., and Hegyi, A. (2002). A

model predictive control approach for recovery from

delays in railway systems. Transportation Research

Record, no.1793:15–20.

Franke, R., Meyer, M., and Terwiesch, P. (2002). Optimal

control of the driving of trains. At - Automatisierung-

stechnik, 50(12):606–613.

Howlett, P. (2000). The optimal control of a train. Annals

of Operations Research, 98:65–87.

Howlett, P., Milroy, I., and Pudney, P. (1994). Energy-

efﬁcient train control. Control Eng. Practice,

2(2):193–200.

Li, D., Mayer, E., and Raisch, J. (2004). A novel hier-

archical control architecture for a class of discrete-

event systems. In 7

th

IFAC Workshop on DISCRETE

EVENT SYSTEMS. Reims, France, pages 415–420.

Van den Boom, T. and De Schutter, B. (2004). Modelling

and control of discrete event systems using switching

max-plus-linear systems. In 7

th

IFAC Workshop on

DISCRETE EVENT SYSTEMS. Reims, France, pages

115–120.

ICINCO 2005 - SIGNAL PROCESSING, SYSTEMS MODELING AND CONTROL

36