• Nie Znaleziono Wyników

SUBOPTIMAL FAULT TOLERANT CONTROL DESIGN WITH THE USE OF DISCRETE OPTIMIZATION

N/A
N/A
Protected

Academic year: 2021

Share "SUBOPTIMAL FAULT TOLERANT CONTROL DESIGN WITH THE USE OF DISCRETE OPTIMIZATION"

Copied!
8
0
0

Pełen tekst

(1)

DOI: 10.2478/v10006-008-0049-0

SUBOPTIMAL FAULT TOLERANT CONTROL DESIGN WITH THE USE OF DISCRETE OPTIMIZATION

Z

DZISŁAW

KOWALCZUK, K

RZYSZTOF

E. OLI ´ NSKI

Department of Decision Systems

Gda´nsk University of Technology, ul. Narutowicza 11/12, 80–952 Gda´nsk, Poland e-mail:

{kova,kolin}@pg.gda.pl

This paper presents a concept of designing fault tolerant control systems with the use of suboptimal methods. We assume that a given (nonlinear) dynamical process is described in a state space. The method consists in searching (at the off-line stage) for a trajectory of operational points of the system state space. The sought trajectory can be constrained by certain conditions, which can express faults or failures already detected. Within this approach, we are able to use the autonomous dynamics of the process in order to minimize a control cost index (a sub-optimality property). The search itself is based on finding a cheapest path in a graph structure, which represents the system’s dynamics described in the state space. Such a cheapest path (if it exists) represents the sought trajectory. Another (on-line) design stage consists in tracking this trajectory by an executive controller.

Keywords: optimal control, fault tolerant systems, nonlinear models, operations research, discrete optimization.

1. Introduction

In this paper, without making a distinction between a fault and a failure (Chowdhury and Chen, 2006), we shall dif- ferentiate between faults that are admissible and inadmis- sible during the system operation. Dealing with admissi- ble faults implies modifying an original process model so as to take into consideration all effects invoked by these faults. The occurrence of any fault from the group of inadmissible faults requires introducing some additional constraints for the sought trajectory of the operational points of the process. The subject of this work can thus be placed within the field of fault tolerant control, FTC (Zhang, 2007). We assume that a given dynamical process is represented by a state-space model, which describes both autonomous and forced dynamics of the process.

Such a model can be either linear or nonlinear with soft and hard nonlinearities (equivalent to the lack of deriva- tives of a function in some points of its domain).

During the first, off-line stage, we try to find a trajec- tory in the state space of the process model, which should satisfy two principal conditions (Kowalczuk, Rudzinska- Kormanska and Olinski, 2007; Kowalczuk and Olinski, 2007). Firstly, the sought trajectory circumvents the areas (called forbidden zones) associated, for instance, with in- admissible faults previously detected and identified. Sec-

ondly, we can utilize the autonomous dynamics of the process in order to minimize an assumed control cost indicator.

An operational workspace, being a subset of the state space, is composed of a set of segments. For each seg- ment, a set of representative values, which reflect the properties of the process dynamics within the area of a given segment, is determined.

The searching procedure applied is based on find- ing a cheapest path in a graph structure (Kowalczuk et al., 2007; Kowalczuk and Olinski, 2007), which rep- resents the dynamics of the process described in the state space.

A discrete optimization algorithm is utilized in searching the state-space graph for the cheapest path con- necting the nodes containing the initial and terminal points of the sought trajectory.

The second, on-line executive stage consists in track- ing the reference trajectory by an executive controller.

2. Formal description

We start the general problem formulation by defining the

autonomous and forced components of the dynamics of

a given process. Let us assume that the function which

(2)

• ˙x

x

= f

x

(x, t) represents the autonomous dynamics,

• ˙x

u

= f

u

( x, u, t) portrays the forced dynamics,

• x

x

, x

u

are their two corresponding state contributors.

Let us now present several definitions (Kowalczuk et al., 2007; Kowalczuk and Olinski, 2007) vital for this work.

Definition 1. Any sequence E(u) of consecutive states of a given dynamical system for a feasible control input u from a set U is said to be a system’s trajectory or a trajectory of operational points of the system state space.

Definition 2. A bounded subset P of the state space in the form of a hypercube in R

n

, which is taken into ac- count while seeking an optimal trajectory, is said to be an operational workspace.

Definition 3. A subset Z of P prohibited for operational points is referred to as a forbidden zone. This means that the sought optimal trajectory cannot enter it.

Definition 4. A transition vector Λ is an ordered set of two elements {x

0

, x

k

}:

Λ = {(x

0

, x

k

) : x

0

, x

k

∈ E(u)}, (4) where x

0

is the first element and x

k

is the last element of the sought optimal trajectory.

Definition 5. Let A be a set of all trajectories E ∈ A ⊂ P . Any real function of the class A → R is said to be a cost function J (E(u)) of these trajectories.

Definition 6. Let Ξ ⊂ A be a subset of all possible trajectories which start at a given point x

0

and terminate at x

k

. We say that a trajectory E

is optimal if it satisfies the following conditions:

J (E) ≥ J(E

), ∀E ∈ Ξ, (5) x ∈ P \ Z, ∀x ∈ E

. (6)

Definition 8. Any quantity used in optimization and as- signed to a segment is said to be a representative.

Definition 9. A flow graph portraying the arrangement of segments of a given operational workspace P is said to be a state-space graph. According to the respective defini- tions of flow graphs (Diestel, 2000), we treat this structure as a set W of nodes, which are assigned a set of represen- tatives of the corresponding segment. Edges connecting two nodes representing segments located in their neigh- bourhood form a set D. To each edge d ∈ D, a flow value k ∈ K is assigned. Thus such a graph can be expressed as

G = (W, D, K). (9)

Definition 10. The image of the workspace P in the transformation f

x

is said to be an autonomous dynamics map.

Additionally, we can describe some properties of the system, invoked for instance by (in)admissible faults, by means of functions that describe limit values for the perti- nent forced dynamics:

B = s

b

(x, t) =

f

uMAX

= max

u∈U

f

u

( x, u, t) f

uMIN

= min

u∈U

f

u

(x, u, t)

⎦ . (10)

Our objective is to find an optimal control u

(t) U along with the corresponding state trajectory E

= E(u

(t)) ∈ (P \ Z) which transmits the dynamical sys- tem (1) from its initial state x(t

0

) = x

0

to a specified target state x(T ) = x

k

and, at the same time, minimizes the cost functional

J (E(u)) =



T

0



m

i=1

β

i

|u

i

(t)|

dt, (11)

where β

i

, i = 1, . . . , m are nonnegative weights and T

is a transition time interval resulting from the (optimal)

control procedure applied.

(3)

Fig. 1. Autonomous dynamics map.

3. Algorithm description

It is necessary to define four principal and two optional elements: an operational subset P , a transition vector Λ, a cost function J (E(u)), and a segmentation form. Op- tionally, we can determine a feasible control set U and a forbidden zone Z. The latter can be used to express the constraints portraying inadmissible faults. We start by segmenting the operational workspace P into a set of N

s

segments. Next, for each segment Φ

j

, j = 1, . . . , N

s

, a set of representatives is determined.

Example 1. Consider a piece of the autonomous dy- namics map presented in Fig. 1. Assume that the opera- tional workspace P is represented by a rectangle defined by the vertex pairs {(−2, −2), (2, 2)}. This workspace P is divided into a set of 1600 segments of diameters d = (0.1 × 0.1), which yields 40 segments per one di- mension: v = 1, . . . , 40 , q = 1, . . . , 40. The result of this segmentation procedure is depicted in Fig. 2. 

Next, we form a state-space graph. Each segment of the workspace P is associated with a certain node (a mem- ber of W). An edge connects only those two nodes which represent two segments in their neighbourhood. The flow values are determined according to the cost function and restrictions described below.

An edge w

a

→ w

b

is removed from the state-space graph, or equivalently an ∞ value is assigned to it, if for a pair of points x

1

, x

2

: x

1

∈ Φ

a

, x

2

∈ Φ

b

there is no feasible control u(t), which could move the operational point from x

1

to x

2

in a finite time.

After such a preparation, we can use any graph search algorithm, which is capable of finding the cheapest path between the initial and terminal nodes, which rep- resents the segments containing the initial and terminal points of the sought trajectory, respectively.

Fig. 2. Segmentation of the autonomous dynamics map.

Example 2. With reference to Example 1, let us assign a segment average of the i-th coordinate of the system dy- namics as the i-th representative element, i = 1, . . . , n, to the corresponding node of the state-space graph for j = 1, . . . , N

s

, with N

s

= 1600 denoting the number of all segments (or nodes):

F

AVR Φji

= 1 N

N y=1

F

DYNi,y

, (12)

where F

DYNi,y

stands for the y-th sample of the i-th coordinate of the autonomous dynamics map encoded in f

x

, and N denotes the number of samples per segment.

Let us assume that N = 5 × 5 = 25, which yields five samples placed each Δ

k

= (0.1/5) = 0.02 along the respective axis of the state space. Our objective is to find, for the initial state x(0) = x

0

= [1.9 − 1.9]

T

and the terminal state x(T ) = x

k

= [ −1.9 1.9]

T

, an optimal control u

(t) ∈ U, along with its corresponding state trajectory E

= E(u

(t)) ∈ X minimizing the cost functional

J (E( u)) =



T

0



m

i=1

|u

i

(t) |

dt, (13) where T is a transition time related to the duration of the optimal control, and U and X denote feasible vector sequences of control and state signals, respectively. In the examples considered, the integration was performed in discrete time and the flow values were calculated ac- cording to (13).

In this excercise, Dijkstra’s algorithm (for a full de-

scription see (Skiena, 1997)), which is suitable for finding

the cheapest path in graphs, was effectively utilized for

optimization.

(4)

Fig. 3. Segments of an autonomous dynamics map (back- ground), the reference trajectory (-

∗-), the initial point

(o), the final point (+).

As the forbidden zones are used to indicate which nodes should be excluded from the state-space graph, all the nodes that represent the segments which are partially or entirely included in the defined forbidden zone Z are simply removed from the structure of the state-space graph.

Example 3. Let us extend the above design ex- ample by introducing the forbidden zones in the form of the rectangles defined by the following vertex pairs:

{(0.5, −1.5), (1.5, −0.5)} and {(−1, 1), (−0.2, 1.5)}.

The resulting state-space trajectories are depicted in Fig. 4. 

4. Example of a three tank water system

Consider the system presented in Fig. 5, where three liquid tanks of a height of 5 m are connected through valves A, B and C. Each tank is also supplied with a sink valve controlled by the signals u

1

, u

2

, u

3

, respec- tively. The valves (A, B, C) are two-stage ON-OFF ele- ments (u

A

, u

B

, u

C

∈ {0, 1}) characterized by the open- ings (slots) u

A

d

max

, u

B

d

max

, u

C

d

max

∈ {0, 10

−5

} [m

2

], respectively. Moreover, the valves A, B and C have cer- tain dead zones, which means that they can be opened only when the absolute value of the difference between the liquid levels of the adjacent tanks is greater than a given threshold value  [m].

Let us assume the occurrence of two faults: Fault 1, representing a leak in the pipe connecting the valve A with Tank 2, and Fault 2, concerning a leakage located h

dmg

Fig. 4. Segments of an autonomous dynamics map (back- ground), the reference trajectory (-∗-), the initial point (o), the final point (+), the forbidden zones (rectangles) and the control effect (–).

meters above the bottom of Tank 2. The model of this system has the following form:

• state vector x = [h

1

, h

2

, h

3

, u

A

, u

B

, u

C

], with h

1

, h

2

, h

3

∈ [0, 5], u

A

, u

B

, u

C

∈ {0, 1} (the rea- son for treating u

A

, u

B

, u

C

as states is explained in Section 4.2 ),

• input vector u = [u

p

, u

1

, u

2

, u

3

], with u

p

{0, 1}; u

1

, u

2

, u

3

∈ [0, 1],

• differential equations:

dh

1

(t) dt = 1

S (u

p

(t)u

pmax

− q

1

(t) − q

A

(t) + q

C

(t)), dh

2

(t)

dt = 1

S (−q

2

(t) + q

A

(t) − q

B

(t)), dh

3

(t)

dt = 1

S (−q

3

(t) + q

B

(t) − q

C

(t)),

(14)

where

q

1

= u

1

(t)d

max

2gh

1

(t), q

2

= u

2

(t)d

max

2gh

2

(t), q

3

= u

3

(t)d

max

2gh

3

(t),

q

A

(t) =

⎧ ⎪

⎪ ⎪

⎪ ⎪

⎪ ⎪

⎪ ⎨

⎪ ⎪

⎪ ⎪

⎪ ⎪

⎪ ⎪

(1 − η)u

A

(t)d

max

2gh(h

1

(t) − h

2

(t)) for h

1

(t) ≥ h

2

(t) + 

A

,

(1 − η)u

A

(t)d

max

2gh(h

2

(t) − h

1

(t)) for h

2

(t) ≥ h

1

(t) + 

A

,

0 otherwise,

(5)

Fig. 5. Three-tank system with two leakages.

q

B

(t) =

⎧ ⎪

⎪ ⎪

⎪ ⎪

⎪ ⎪

⎪ ⎨

⎪ ⎪

⎪ ⎪

⎪ ⎪

⎪ ⎪

u

B

(t)d

max

2gh(h

2

(t) − h

3

(t)) for h

2

(t) ≥ h

3

(t) + 

B

, u

B

(t)d

max

2gh(h

3

(t) − h

2

(t)) for h

3

(t) ≥ h

2

(t) + 

B

, 0 otherwise,

q

C

(t) =

⎧ ⎪

⎪ ⎪

⎪ ⎪

⎪ ⎪

⎪ ⎪

⎪ ⎪

⎪ ⎪

⎪ ⎩

u

C

(t)d

max

2gh(h

3

(t) − h

1

(t)) for h

3

(t) ≥ h

1

(t) + 

C

, u

C

(t)d

max

2gh(h

1

(t) − h

3

(t)) for h

1

(t) ≥ h

3

(t) + 

C

, 0 otherwise,

• constants:

d

max

= 10

−5

m

2

– the maximal opening of the valve, u

pmax

= 0.2 · 10

−4

m

3

/s – the maximal pump output, S = 0.1 m

2

– the area of the tank bottom,

η ∈ [0, 1] – the weight of Fault 1.

As a result of the decomposition (14) into the au- tonomous and forced dynamics, we have

x ˙

u

=

⎢ ⎢

⎢ ⎢

⎢ ⎣ 1

S (u

p

(t)u

pmax

− q

1

(t)) 1

S ( −q

2

(t)) 1

S ( −q

3

(t))

⎥ ⎥

⎥ ⎥

⎥ ⎦

, (15)

x ˙

x

=

⎢ ⎢

⎢ ⎢

⎢ ⎣ 1

S ( −q

A

(t) + q

C

(t)) 1

S (q

A

(t) − q

B

(t)) 1

S (q

B

(t) − q

C

(t))

⎥ ⎥

⎥ ⎥

⎥ ⎦

. (16)

The limit values for the forced dynamics are defined as follows:

B =

 f

uMAX

f

uMIN



=

⎢ ⎢

⎢ ⎢

⎢ ⎢

⎢ ⎣

u

pmax

0 0

−d

max

2gh

1

−d

max

2gh

2

−d

max

2gh

3

⎥ ⎥

⎥ ⎥

⎥ ⎥

⎥ ⎦ . (17)

4.1. Problem formulation. Consider the problem of finding optimal trajectories while minimizing the cost function

J

k

(x

0

, x

k

) =



xk x0

|u(x)| dx, (18) where x

0

and x

k

are the points defined by the transition vector Λ. Let us assume that 

A

= 

B

= 0.5 m and



C

= 3.5 m.

4.2. Sketch of implementation.

Operational space. The model (14) can be described

by the state vector [h

1

h

2

h

3

u

A

u

B

u

C

]

T

from a six-

dimensional space. Note that (during this off-line stage)

the controlling valve inputs u

A

, u

B

, u

C

are included in the

state in order to plan the open-loop control of the valves A,

(6)

1

× h

2

× h

3

these demands, we use the following elements as the rep- resentatives; for each segment Φ

j

, j = 1, . . . , N

s

, where N

s

= 64000 and i = 1, . . . , 3; y = 1, . . . , 343:

1. The average of the segment dynamics in a particular direction

F

AVR Φji

= 1 N

N y=1

F

DYNi,y

,

where F

DYNi,y

stands for the y-th sample of the i- th coordinate of the autonomous dynamics map en- coded in f

x

, and N denotes the number of samples per segment, N = (7×7×7×1×1×1) = 343 (along h

1

, h

2

, h

3

, u

A

, u

B

, u

C

), taken at a sample step Δ

k

= (0.25/7) 0.0357.

2. A maximal value of the i-th map component M

Φj,i

= max

y

(F

DYNi,y

). (19) 3. A minimal value of the i-th map component

W

Φj,i

= min

y

(F

DYNi,y

). (20) 4. An upper limit of the i-th forced dynamics

U

Φ+j,i

= min

y

(f

ujMAXy

). (21) 5. A lower limit of the i-th forced dynamics

U

Φ

j,i

= max

y

(f

ujMINy

). (22) 6. An index vector [v

1

v

2

v

3

q

1

q

2

q

3

]

T

.

The cost of the path between the initial node and the current one, where x

0

, . . . , x

k

represent the geometrical centres of the segments in the operational workspace, is c = J (x

0

, x

1

) + J (x

1

, x

2

) + · · · + J(x

k−1

, x

k

).

Φ

S

. Let us denote I

e

= I

S

− I

O

= [v

e1

v

e2

v

e3

]

T

= [v

S1

v

S2

v

S3

]

T

− [v

O1

v

O2

v

O3

]

T

, where I

O

, I

S

are the indices of Φ

O

and Φ

S

, respectively. For Φ

O

, these calculations were performed in the following form:

FOR i = 1, 2

• Case I

ei

= 1:

IF sign(I

ei

) = sign(F

AVRΦO,i

) THEN:

[k

wO→wS

]

ΦO,i

= 0

(thei-th component of the autonomous dynamics is suitable for the transition between the segments represented by the nodes wO, wS)

ELSE:

(it is necessary to check if the feasible values of the forced dynamics enable moving the operational point beyond the boundary of the segmentΦOin the desired direction)

IF W

ΦO,i

+ U

Φ+O,i

> 0 THEN:

[k

wO→wS

]

ΦO,i

= α(|F

AVRΦO,i

| + ) (

the cost is proportional to the value of the autonomous dynamics and some positive constant

)

ELSE: [k

wO→wS

]

ΦO,i

= ∞.

• Case I

ei

= 0:

IF W

ΦO,i

+ U

Φ+O,i

≥ 0

∧M

ΦO,i

+ U

ΦO,i

≤ 0 THEN:

[k

wO→wS

]

ΦO,i

= α|F

AVR

Φ

O

, i|

ELSE: [k

wO→wS

]

ΦO,i

= ∞.

• Case I

ei

= −1 (

see the three remarks above

):

IF sign(I

ei

) = sign(F

AVRΦO,i

) THEN:

[k

wO→wS

]

ΦO,i

= 0 ELSE:

IF M

ΦO,i

+ U

Φ

O,i

< 0 THEN:

[k

wO→wS

]

ΦO,i

= α( |F

AV RΦO,i

| + )

ELSE: [k

wO→wS

]

ΦO,i

= ∞.

(7)

The analysis for the segment Φ

S

was performed in a similar way.

The coefficient α is a normalized distance between the geometrical centres of the segments Φ

O

and Φ

S

. If the segments Φ

O

and Φ

S

have a common side wall in the level space h

1

× h

2

× h

3

, then α = 1. If the segments Φ

0

and Φ

S

have one common edge in this space, then α =

2. If they have one common node/point, then α =

3/2.

In the case of I

e

= 0, the compensation of the au- tonomous dynamics is sufficient, while in the case when one of the coordinate directions is nonzero (I

ei

= 1 or

−1), an additional control effort is necessary, which is portrayed in the control cost by .

As before, the first off-line stage of this suboptimal procedure consisted in seeking an optimal path within the state-space graph. This task was performed by using Dijk- stra’s algorithm (Skiena, 1997). We assume that the geo- metrical centres of these segments form a list of reference points. Such a reference trajectory can be tracked by an executive proportional or predictive controller (see, e.g., (Kowalczuk and Suchomski, 2005)) in an on-line proce- dure of suboptimal fulfillment of the control task.

As an illustrative example, we consider the above- described system working in the presence of two faults.

Our goal is to fill up Tanks 2 and 3 in a way that the total amount of liquid stored in those two tanks is equal to 0.197 m

3

. We treat Fault 1 as an admissible one and Fault 2 as an inadmissible one. Note that such an ap- proach is nowadays practiced under the concept of recon- figurable control, based on fault detection and diagnosis (Zhang, 2007).

Taking into consideration the first fault, and assum- ing its weight as η = 0.34, we fix the equations (14).

The leakage from Tank 2, represented by Fault 2, occurs when the level of the liquid is equal to or greater than h

dmg

= 1.125 m. We deal with this problem by defin- ing an additional constraint of the following form:

h

2

< h

dmg

. (23) Taking account of this constraint, we simply introduce the forbidden zone Z in the state space as a set of the states satisfying Z = {x

z

= (h

1

, h

2

, h

3

, u

A

, u

B

, u

C

) : h

2

h

dmg

}. By doing this we are able to exclude all the nodes from the state-space graph that represent the segments which partially or entirely belong to the forbidden zone Z. The initial node was assumed as w

1,1,1,1,1,1

, and the terminal node was set to any nonexcluded node represent- ing a segment, located above by the line h

2

+h

3

= 1.97 m.

The obtained results are illustrated in Fig. 6.

5. Summary

This work presents a useful concept of planning the opti- mal and safe control strategies based on discrete optimiza- tion algorithms.

Fig. 6. On-line control effects for the considered three-tank problem: solid lines – the levels gained by the executive controller, dotted lines – the reference trajectories.

Certainly, there are shortcomings of this method as- sociated with the general nature of graph representations.

Namely, in the case of high-order models we can eas- ily be faced with the problem of complexity resulting from a high number of nodes characterizing the related state-space graph. This, eventually, may lead to time- consuming graph search procedures. Some clues concern- ing the possibilities of improving the graph search process can be found, e.g., in (Bertsekas, 2005; Friedman and Tar- jan, 1987).

Taking into account the fact that the reference trajec- tories are portrayed in the piece-wise linear form based on a given rough segmentation scheme, some problems may occur in cases when the optimal trajectory of the opera- tional point needs a smooth representation.

Similarly, in spite of the optimality in the sense of the graph representation, taking into consideration the origi- nal design problem, we shall be aware of the suboptimal property of this approach resulting from the fact that the initial and terminal points of the trajectory may not be identical with the centres of the initial and terminal seg- ments, respectively. Thus, in general, as the reference tra- jectory can only pass through the centres of the segments, it is clear that the size of segments has great influence on the quality of the ultimate optimal solution found.

References

Bertsekas D. P. (2005). Dynamic Programming and Optimal Control, Athena Scientific, Belmont, MA.

Chowdhury F. N. and Chen W. (2006). Fault monitoring in the

presence of fault-tolerant control, Proceedings of the 6th

IFAC Symposium on SAFEPROCESS: Fault Detection, Su-

pervision and Safety of Technical Processes, Vol. 1, IFAC,

Beijing, China, pp. 1321–1326.

(8)

IFAC Symposium on Large Scale Systems, Gda´nsk, Poland,

pp. 1–4, (on CD-ROM).

Cytaty

Powiązane dokumenty

In this paper the Drazin inverse of matrices will be applied to find the solutions of the state equations of descriptor fractional discrete-time linear systems with regular

Special super edge-magic labelings, α-valuations and harmonious labelings of generalized path-like trees can be generated from the following labelings of the path.. This is true

The dC1Jd/3 of the keel is derived using the towing tank tests results, with addition of an extra input of the trim tab angle8. The dC1/d/3 of the rudder comes

It is shown that the 3-Interchange Graph is a hamiltonian subgraph of the Symmetric Traveling Salesman Polytope.. Upper bounds are derived for the diameters of the 3-Interchange

Integrated vehicle dynamics control us- ing active brake, steering and suspension systems, Interna- tional Journal of Vehicle Design 36(1): 1–12..

Several variations of the tree graph have been studied; see for instance the adjacency tree graph studied by Zhang and Chen in [5] and by Heinrich and Liu in [3], and the leaf

ANNALES SOCIETATIS MATHEMATICAE POLONAE Series I: COMMENTATIONES MATHEMATICAE XXVII (1987) ROCZNIKI POLSKIEGO TOWARZYSTWA MATEMATYCZNEGO.. Séria I: PRACE MATEMATYCZNE

The current in axis 0 can be described with the equation (15) and the motor neutral current is defined in (16):.. In the case of discontinuance of phase A of motor, the flow of