Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies...

54
Francis Clarke Discontinuous Feedback in Control Theory

Transcript of Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies...

Page 1: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

Francis Clarke

Discontinuous Feedback in

Control Theory

Page 2: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

Outline of the talk1. Introduction:

dynamic programming,

nonsmooth analysis

2. Stability and Lyapunov functions

3. Discontinuous feedbacks

4. Stabilizing feedback design

Note: detailed tutorial paper

Page 3: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

control (open-loop)

u(·)

Control theory of ordinary differential equations:

We consider throughout the system, for

statetrajectory x(·)

x ∈ Rn

(∗)

x(t) = f

x(t), u(t)

u(t) ∈ U

Basic hypotheses:

is compact, is locally Lipschitz infU x

nonlinearU = Rm

Page 4: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

Dynamic Programming

The minimal time function , defined on as follows: is the least time such that some trajectory satisfies .

T (·)T (α)

x(0) = α, x(T ) = 0x(·)

Rn

T

is an example of a value function

T (·)

x(·)

x(0) = α

0 = x(T )

Page 5: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

The Principle of Optimality establishes some monotonicity properties for : T (·)

s + T (x(s)) ≤ t + T (x(t))

⇑B. If is an optimal trajectory joining to , then an optimal trajectory from the point is furnished by the truncation of to the interval . Hence ; also

α

T (x(t)) = T (α) − tT (x(s)) = T (α) − s

x(·) 0

[t, T (α)]

x(t)x(·)

s + T (x(s)) = t + T (x(t))⇑

A. If is any trajectory, and , then

T (x(s)) ≤ (t − s) + T (x(t))

x(·) 0 < s < t

x(s)

x(t)

Page 6: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

Conclusion: is increasing for all ,

constant for optimal

t → t + T (x(t)) x(·)

x(·)

h(x, p) := minu∈U

p, f(x, u)where h is the lower Hamiltonian

Hamilton-Jacobi-Bellman equation1 + h(x, ∇T (x)) = 0

Suppose we solve the H-J-B equation (with ). How does knowing help? T (·)

T (0) = 0

1 + ∇T (x), f(x, u) ≥ 0 ∀ u ∈ U (= for optimal)ux

Page 7: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

For each , let be a point in such that

(a steepest descent feedback). Then, for any , the solution to

is optimal.

1 + ∇T (x), f(x, k(x)) = 0α

x k(x) U

x(t) = f(x(t), k(x(t)), x(0) = α

T (x(t)) − T (α) = −t

T (x(T (α))) = 0

⇑ t = T (α)Put

x(T (α)) = 0⇑

x(·)

optimal

We obtain an optimal feedback synthesis

d

dtT (x(t)) = ∇T (x(t)), x(t)

= ∇T (x(t)), f(x(t), k(x(t))) = −1

Here’s why:

Page 8: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

x(0) = α

0

Page 9: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

Serious difficulties in the dynamic programming approach:

• is nondifferentiable; replace in monotonicity ?

T (·)∇T

• Need generalized solutions of H-J-B equation...

The murder of a beautiful theory by a gang of brutal facts

• Even if is smooth, there is no continuous in general: what do we mean by a solution of ?

T (·)

x = fx, k(x)

k(x)

Page 10: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

u = −1

u = +1

continuous but not Lipschitz

We find T (x, y) =

−y +

2y2 − 4x left of S

+y +

2y2 + 4x right of S

switching curve S

2y2 − 4x = 0

2y2 + 4x = 0y

x

(∗)x

y

=

yu

x(t) = u(t) ∈ [−1, 1]

Example

Page 11: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

Resolving these issues has been an ongoing focus of activity for many years; suitable answers now exist, involving:

Next: a quick look at the first two of these

• Nonsmooth analysis

• Generalized solutions of pde’s

• Sample-and-hold analysis of discontinuous

feedbacks

Page 12: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

Generalized gradients and proximal normals:a glimpse

f(x; v) = lim supt↓0,y→x

f(y + tv) − f(y)t

∂Cf(x) =

ζ ∈ X∗ : f(x; v) ≥ ζ, v ∀v

(Clarke 1972)

Let f be Lipschitz (locally): |f(y)-f(x)| ≤ K|y-x|Define generalized

gradient

x

f f(x) = |x|Example

∂Cf(0) = [−1, 1]

then

Page 13: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

• is compact convex nonempty

• Mean value theorem, inverse functions...

• Tangent vectors and normals to closed sets

∂C

−f

(x) = −∂Cf(x)

∂C max1≤i≤n

fi(x) ⊂ . . .

∂C

f + g

(x) ⊂ ∂Cf(x) + ∂Cg(x)

Calculus of generalized gradients∂Cf(x)

∂Cf(x) = co limxi→x

∇f(xi), xi /∈ Ω

Page 14: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

f(·)

α

slope f (α) =

The proximal approach

Page 15: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

We can apply the `local lower-approximation by parabolas’ idea to nonsmooth (lsc) functions

or

Clarke 1972

or

Page 16: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

∂ f(α) = [−2, 1]P

∂ f(α) = ∅P

The set of all `contact slopes’ of lower locally supporting parabolas is the proximal subdifferential

∂ f(α)P

has a very complete (but fuzzy!) calculus...P

∂ f

Pζ ∈ ∂ f(α) ⇐⇒

f(x) ≥ ζ, x − α + f(α) − σ|x − α|2 locally

Page 17: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

Theorem

Remark Large literature on H-J-B equation:

• Clarke 1976 (Lipschitz, generalized gradients)

• Subbotin 1980 (invariance, Lipschitz, minimax)

• Crandall-Lions 1982 (comparison, continuous, viscosity)

• Clarke-Ledyaev 1994 (monotonicity, lsc, proximal)

• Fathi 1998 (KAM solutions)

• Dacorogna, DeVille... (almost everywhere)

Let be a continuous positive definite function such that

Then h(x, ζ) + 1 = 0 ∀ζ ∈ ∂ φ(x), ∀x = 0.

φ(·) = T (·)

φ : Rn → R+

P

Page 18: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

We now study the stability of the system trajectories: , apparently very different

x(t) → 0

Recall For the ordinary differential equation we have: x(t) = g

x(t)

11/03/08 12:08Aleksandr M Lyapunov

Page 1 of 1

Lyapunov for the sufficiency

Massera, Barbashin and Krasovskii, and Kurzweil for the necessity: converse Lyapunov theorems

Theorem Let g be continuous. The differential equation is stable if and only if there is a Lyapunov function for g.

Page 19: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

RECALL:

A Lyapunov function V for g is C1 and satisfies:

Positive definiteness:

V (0) = 0, V (x) > 0 ∀ x = 0

Properness:

The level sets x : V (x) ≤ c are compact forevery c. Equivalently, V is radially unbounded:V (x) → +∞ as |x| → +∞Infinitesimal decrease:

∇V (x), g(x)

< 0 ∀ x = 0.

Page 20: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

For the controlled differential equation

(∗)

x(t) = f

x(t), u(t)

u(t) ∈ U

there are two principal scenarios:

• all trajectories go to 0, from any initial condition

Strong stability

Weak stability?

• from any initial condition, some trajectory goes to 0

Page 21: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

(∗)

x(t) = f

x(t), u(t)

u(t) ∈ U

all trajectories go to 0, from any initial condition

Strong stability:

Theorem [Clarke, Ledyaev, Stern 1998]

The system is strongly stable if and only if there exists a strong Lyapunov function for it: V smooth, positive definite, proper, such that

maxu∈U

∇V (x), f(x, u)

< 0 ∀ x = 0.

Page 22: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

(∗)

x(t) = f

x(t), u(t)

u(t) ∈ UWeak

stability

from any initial condition, some trajectory goes to 0

x(t) = f(x(t), uα(t)), x(0) = α and x(t) → 0

The system is said to be open-loop GloballyAsymptotically Controllable to the origin if:

For every , there exists a control and a state trajectory such that

(plus a technical condition at 0)

αx(t)

uα(t)

GAC

Page 23: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

Theorem ??The system is GAC if and only if there exists a weak Lyapunov function for it: V smooth, positive definite, proper, such that

In view of the above (and linear systems) we surmise:

hx, ∇V (x)

:= min

u∈U

∇V (x), f(x, u)

< 0 ∀ x = 0.

THEOREM [Clarke, Ledyaev, Stern 1998]

Suppose that the system (∗) admits a smooth CLF. Then for every δ > 0, thefollowing set is a neighborhood of 0:

v ∈ co f(x, U) : x ∈ B(0, δ)

.

Definition: Such a function is called a (smooth) CLF

So any system which fails to satisfy this covering condition cannot admit a smooth CLF

Page 24: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

Example: nonholonomic integrator (NHI)

x1(t) = u1(t)

x2(t) = u2(t)

x3(t) = x1(t)u2(t) − x2(t)u1(t)

U = (u1, u2) : u21 + u2

2 ≤ 1

It is easy to verify directly that the system is GAC.

This is a nonlinear system (of real interest) that is close to being a classical linear system: it is linear in u, linear in x (separately), with an ample control set.

Page 25: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

So: no smooth CLF.

RECALL: THEOREM

Suppose that the system (∗) admits a smooth CLF. Then for every δ > 0, thefollowing set is a neighborhood of 0:

v ∈ co f(x, U) : x ∈ B(0, δ)

.

The property GAC is not characterized by the existence of a smooth CLF

U = (u1, u2) : u21 + u2

2 ≤ 1

For NHI :x

1(t) = u1(t)x

2(t) = u2(t)x

3(t) = x1(t)u2(t) − x2(t)u1(t)

00γ

/∈ co fB(0, r), U

= f

B(0, r), U

if γ = 0

Page 26: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

Definition: V is a Dini CLF if it is continuous, proper, positive definite, and satisfies infinitesimal decrease in the Dini sense:

minu∈U

dVx; f(x, u)

< −W (x) ∀ x = 0.

rate function

THEOREM [Sontag 1983]

The system (∗) is GAC if and only if there exists a Dini CLF.

THEOREM

The system (∗) is GAC if and only if there exists a proximal CLF:

maxζ∈∂P V (x)

minu∈U

ζ, f(x, u) < −W (x) ∀ x = 0.

Dini derivate

Page 27: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

Fact: satisfies infinitesimal decrease except on B(0, r)φ

How are CLF’s found?Let (*) be GAC. Fix r>0, and, for a given rate function W, define

where the minimum is taken over all trajectories x such that

The function is an example of a value function, in which is the parameter. Such functions play a central role in pde's, optimization, and differential games.

x(0) = α, x(T ) ∈ B(0, r), T free

φ(α) := min

T

0

Wx(t)

dt,

φ α

is rather close to being a CLF for the system. But in which sense? Certainly not the smooth sense, for value functions are notoriously nonsmooth.

φ

The value function technique

Page 28: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

The “field of trajectories” approach

Exhibit a “reasonable, consistent” scheme for attaining a target S. Let V( ) be the time to the target, starting at , and according to the scheme.

Then V is a Dini (and hence proximal) CLF (relative to the target S).

α

α

How are CLF’s found?

Page 29: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

x

y

0 2. Then go directly to the origin

1. Go directly to the x-axis

From (x,y):

Time: |y|

Time: |x|

=⇒V(x,y) = |x|+|y|

(x, y)

Page 30: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

=⇒ x(t) → 0

More explicitly, find a feedback so that the differential equation

is stable:

u = k(x)

x(t) = gx(t)

:= f

x(t), k(x(t))

x(t) = g

x(t)

x(0) = α

Stabilizing Feedback

Q: Does exist? (The system is then said to be stabilizable.) How to construct such a feedback?

k

closed-loopcontrol

(∗)

x(t) = f

x(t), u(t)

u(t) ∈ U

For continuous, we require continuous.g(x) k(x)

Goal: steer the state to .x(t) 0

Page 31: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

That is, can we synthesize the various open-loop controls into one coherent (continuous) feedback law ?

This question has played a central role for decades.

uα(t)k(x)

Q: Is every (reasonable) GAC system stabilizable by feedback ?

A necessary condition for this is GAC

The classic linear case: x(t) = Ax(t) + Bu(t), U = Rm(∗)

linearsystemstheory

Then: is GAC is stabilizable (by a linear feedback )

(∗) (∗)

k(x) = Kx

Page 32: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

In applications, systems are rarely linear, yet linear

systems theory is applied:

This requires:

• smooth data

• nondegenerate linearization

• small (x,u)

• all (x,u) near (0,0) available

false for some problems

fails for NHI

not the case in pursuit-evasion

locally unrestricted state, control

x(t) = A x(t) + B u(t)⇓

Dxf(0, 0) Duf(0, 0)

linearization

x(t) = fx(t), u(t)

Page 33: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

Theorem (Brockett 1983)

If is stabilizable by a continuous feedback , then, for every , the set contains a neighborhood of .

(∗) kr > 0 f(B(0, r), U)

0

00γ

/∈ f(B(0, r), U) if γ = 0 so: no continuous stabilizer

For NHI (GAC and reasonable!) :

x1(t) = u1(t)

x2(t) = u2(t)

x3(t) = x1(t)u2(t) − x2(t)u1(t)

U = (u1, u2) : u21 + u2

2 ≤ 1

A famous diagnostic tool for the feedback issue:

Note: The problem cannot be “approximated away”

Page 34: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

t0 t1 t2 t3

x0

x1

x

So we reluctantly consider discontinuous feedbacks

A natural solution concept: sample-and-hold

This means that is applied on a piecewise-constant basis between sampling moments:

relative to a given partition of the underlying interval

k(x)

x(t) = f(x(t), k(xi)), for ti ≤ t ≤ ti+1

ti

x(t) = fx(t), k(x(t))

x2

x3

Page 35: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

We say that k stabilizes (in the s&h sense) if:Given B(0,R) and B(0,r), then with sufficiently fine partitions, k drives all points in B(0,R) to B(0,r)

Theorem (Clarke, Ledyaev, Sontag, Subbotin 1997)

Any GAC system is stabilizable, with possibly discontinuous feedback, implemented in the sample-and-hold sense. (The converse is evident)

Filippov solutions don’t work.

The s&h stabilization is “meaningful”...

There is robustness with respect to implementation, as well as small error; such analysis becomes possible

Remarks:

Page 36: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

Theorem (Clarke, Ledyaev, Sontag, Subbotin 1997)

Any GAC system is stabilizable, with possibly discontinuous feedback, implemented in the sample-and-hold sense. (The converse is evident)

The proof uses a nonsmooth Lyapunov function to construct the stabilizing feedback, which corresponds precisely to the third serious difficulty of the dynamic programming approach.

Recall:

Page 37: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

Serious difficulties in the dynamic programming approach:

• is nondifferentiable; replace in monotonicity ?

T (·)∇T

• Need generalized solutions of H-J-B equation...

The murder of a beautiful theory by a gang of brutal facts

• Even if is smooth, there is no continuous in general: what do we mean by a solution of ?

T (·)

x = fx, k(x)

k(x)

Page 38: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

x

y

0

2. Then go directly to the origin

1. Go directly to the x-axis

From (x,y):(x, y)

This defines a feedback, but a meaningless one

Page 39: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

x

y

0

2. Then go directly to the origin

1. Go directly to the x-axis

From (x,y):

(x, y)

This defines a feedback, but a meaningless one

DITHER

Page 40: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

This is an example of the thin set fallacy: a feedback whose effect depends on its values on a set of measure zero

This issue does not arise with continuous feedbacks.So discontinuous feedbacks must be designed with extra care. But they also have some advantages, such as in blending and sliding.

Lesson: In using discontinuous feedback, take account from the beginning of the implementation procedure. Sample-and-hold forces one to do so.

Page 41: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

V0(x) ≤ ∆0

k0

V1(x) ≤ δ1k1

(We require overlap: )V1(x) ≤ δ1 ⊂ V0(x) ≤ ∆0

If continuity is not an issue, then we can switch, in sample-and-hold, from k to k . Or, we can first blend V and V by taking “lower envelopes”...

0 1

0 1

Goal: combine, or “blend”, the two feedbacks

Page 42: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

The case of a smooth CLF

Q: How to construct meaningful stabilizing feedbacks?

infu∈U

∇V (x), f(x, u) < −W (x) x = 0.

∇V (x), f

x, k(x)

< −W (x) ∀ x = 0.

(A “steepest-descent” feedback induced by V)

Natural approach: choose k(x) in U so that

Theorem

k stabilizes the system in the s & h sense

Page 43: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

THEOREM A steepest descent feedback k stabilizes the system in the sample-and-hold sense.

PROOF. For ease of exposition, we shall suppose that V (on Rn) and ∇V (onRn\0) are locally Lipschitz rather than merely continuous (otherwise, theargument is carried out with moduli of continuity). We also restrict attentionto uniform partitions.Let B(0, R) and B(0, r) be the initial values and target set under consider-ation. The properties of V imply the existence of positive numbers e < Esuch that

x : V (x) ≤ e ⊂ B(0, r), x : V (x) ≤ E ⊃ B(0, R).

Fix E > E. There exist positive constants K, L,M such that, for all x, y inthe compact set x : V (x) ≤ E and u ∈ U , we have

|V (x) − V (y)| ≤ L|x − y|, |f(x, u)| ≤ M,

|f(x, u) − f(y, u)| ≤ K|x − y|. (1)

Now pick e and e so that 0 < e < e < e, and set

X := x : e ≤ V (x) ≤ E.

Then there exist constants N and ω > 0 such that

|∇V (x) − ∇V (y)| ≤ N |x − y|, W (x) ≥ ω ∀ x, y ∈ X. (2)

Let B(0, R) and B(0, r) be the initial values and target set under consider-ation. The properties of V imply the existence of positive numbers e < Esuch that

x : V (x) ≤ e ⊂ B(0, r), x : V (x) ≤ E ⊃ B(0, R).

Fix E > E. There exist positive constants K, L,M such that, for all x, y inthe compact set x : V (x) ≤ E and u ∈ U , we have

|V (x) − V (y)| ≤ L|x − y|, |f(x, u)| ≤ M,

|f(x, u) − f(y, u)| ≤ K|x − y|. (1)

Now pick e and e so that 0 < e < e < e, and set

X := x : e ≤ V (x) ≤ E.

Then there exist constants N and ω > 0 such that

|∇V (x) − ∇V (y)| ≤ N |x − y|, W (x) ≥ ω ∀ x, y ∈ X. (2)

Let π be a uniform partition of diameter δ ∈ (0, 1) such that

δLM < mine − e, e − e, E − E,

δ(LK + MN)M < ω/2. (3)

Now let x0 be any point in B(0, R), and proceed to implement the feedback

k via the partition π. On the first time interval [t0, t1] the trajectory x cor-

responding to k is generated by the differential equation

x(t) = fx(t), k(x0)

, x(t0) = x0, t0 ≤ t ≤ t1.

The solution to this differential equation exists on some interval of positive

length, and is unique because f is locally Lipschitz in the state variable. If

the solution fails to exist on the entire interval, it is because blow-up has

occurred. Then there exists a first τ ∈ (t0, t1] for which V (x(τ )) = E.

On the interval [t0, τ ), the Lipschitz constant L of (1) is valid, as well as the

bound M , whence

V (x(t)) ≤ V (x0) + L|x(t) − x0| ≤ E + δLM ∀ t ∈ [t0, τ ).

But then V (x(τ )) ≤ E + δLM < Eby (3), a contradiction. It follows

that blow-up cannot occur, and that the solution of the differential equation

exists on the entire interval [t0, t1] and satisfies V (x(t)) < Ethere.

Case 1 V (x0) ≤ e.

It follows then from δLM < e − e (see (3)) that we have

V (x(t)) < e ∀ t ∈ [t0, t1].

Case 2 e < V (x0).

Now we have x0 ∈ X and∇V (x0), f

x0, k(x0)

< −ω

from the way k(x0) is defined, and since W (x0) > ω.

Let t ∈ (t0, t1]; then, at least while x(t) remains in the set X , we can argueas follows:V (x(t)) − V (x(t0)) = ∇V (x(t∗)), x(t∗) (t − t0)

(by the Mean Value Theorem, for some t∗ ∈ (0, t))

= ∇V (x(t∗)), f(x(t∗), k(t0)) (t − t0)

= ∇V (x(t0)), f(x(t0), k(t0)) (t − t0)

+ ∇V (x(t0)), f(x(t∗), k(t0)) − f(x(t0), k(t0))(t − t0)

+ ∇V (x(t∗)) − ∇V (x(t0)), f(x(t∗), k(t0)) (t − t0)

≤ ∇V (x(t0)), f(x(t0), k(t0)) (t − t0)

+ LK|x(t∗) − x0|(t − t0) + NM |x(t∗) − x0|(t − t0) (by (1) and (2))≤ −ω(t − t0) + LKMδ(t − t0) + M2Nδ(t − t0) (by definition of k)= −ω + δ (LK + MN) M (t − t0)

≤ −(ω/2)(t − t0), by (3).

Thus the value of V has decreased. It follows from this, together with the in-equality δLM < e−e provided by (3), that x(t) remains in X throughout[t0, t1], so that the estimates above apply.To summarize, we have in Case 2 the following decrease property:

Vx(t)

− V

x(t0)

≤ −(ω/2)(t − t0) ∀ t ∈ [t0, t1].

It follows that, in either case, we have V (x(t)) ≤ E for t ∈ [t0, t1], and inparticular V (x1) ≤ E, where x1 := x(t1) is the next node in the imple-mentation scheme.

We now repeat the procedure on the next interval [t1, t2], but using the con-stant control value k(x1). Precisely the same arguments as above applyto this and to all subsequent steps: either we are at a node xi for whichV (xi) ≤ e (Case 1), or else V (x(t)) continues to decrease at a rate of atleast ω/2 (Case 2).Since V is nonnegative, the case of continued decrease cannot persist indefi-

nitely. Let xJ (J ≥ 0) be the first node satisfying V (xJ) ≤ e. If J > 0,

then

e < V (xJ−1) ≤ V (x0) − (ω/2)(tJ−1 − t0)

= V (x0) − (ω/2)(J − 1)δ,

whence

(ω/2)(J − 1)δ < V (x0) − e ≤ E − e,

and so

Jδ < 2(E − e)/ω + δ ≤ 2(E − e)/ω + 1 =: T,

which provides a uniform upper bound T independent of δ for the time Jδrequired to attain the condition V (xJ) ≤ e

. Once this condition is satisfied,

the above analysis shows that for all t ≥ tJ , we have V (x(t) < e, which

implies x(t) ∈ B(0, r).

Since for all t ≥ 0 the trajectory x satisfies V (x(t)) ≤ E, and since x :V (x) ≤ E ⊂ B(0, R), there exists C depending only on R such that

|x(t)| ≤ C ∀ t ≥ 0. This completes the proof that the required stabilization

takes place.QED

Page 44: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

Consider now a Dini CLF: infu∈U

dVx; f(x, u)

< −W (x) x = 0.

dVx; f(x, k(x))

< −W (x) x = 0.

Natural approach: choose k(x) in U so that

But this can give a meaningless, non-stabilizing feedback

Page 45: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

x

y

0

2. Then go directly to the origin

1. Go directly to the x-axis

From (x,y):

DITHER

V(x,y) = |x|+|y|

By construction, the feedback is of steepest descent type for the CLF it induces:

Page 46: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

SO: for a Dini CLF: infu∈U

dVx; f(x, u)

< −W (x) x = 0.

dVx; f(x, k(x))

< −W (x) x = 0.

the natural approach: choose k(x) in U so that

However, the natural steepest descent approach DOES work if V is semiconcave:

can fail.

Theorem k stabilizes the system in the s & h sense

true for smooth and concave VV is locally Lipschitz and (locally)

V (y) − V (z) − ζ, y − z ≤ σ|y − z|1+η

∀ ζ ∈ ∂CV (z)

Page 47: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

4. If φ is concave or C1,η near x, then φ satisfies SC at x.

5. The positive linear combination (and in particular, the sum) of a finitenumber of functions each of which satisfies SC at x also satisfies SC at x.

6. If φ = gh, where h : Rn → Rm is C1,η near x, and where g : Rm → Ris concave, then φ satisfies SC at x.

7. If φ = g h, where h : Rn → R is concave, and where g : R → R isC1,η near h(x), then φ satisfies SC at x.

8. If φ = gh, where h is convex, and where g : Rn → (−∞, 0 ] is C1,η nearx, then φ satisfies SC at x.

9. If φ = gh, where g is C1,η near x, with g(x) > 0, and where h isconcave, then φ satisfies SC at x.

10. If φ = minφi, where φi is a finite family of functions each of whichsatisfies SC at x, then φ satisfies SC at x.

11. If φ satisfies SC at x, then the directional derivative φ(x; v) exists foreach v, and one has

dφ(x; v) = φ(x; v) = minζ∈∂Cφ(x)

ζ, v ∀ v ∈ Rn.

Page 48: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

Two Dini CLF’s for NHI:

V2(x) := max

x21 + x2

2, |x3| −

x21 + x2

2

.

V1(x) := x21 + x2

2 + 2x23 − 2|x3|

x2

1 + x22.

Only one of these is semiconcave.

The collection of facts about operations that preserve that property (positive linear combinations, certain products and compositions, lower envelopes) allows us to see easily that V is semiconcave.1

Page 49: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

The corresponding steepest-descent feedback induced by V is given by

k(x) =

(x1, x2)/ρ if |x3| − ρ ≥ ρ|ρ sgn (x3) − 2x3|−(x1, x2)/ρ if ρ − |x3| ≥ ρ|ρ sgn (x3) − 2x3|

(x2, −x1)/ρ if ρ2x3 − ρ sgn (x3)

> |ρ − |x3||

−(x2, −x1)/ρ if ρρ sgn (x3) − 2x3

> |ρ − |x3||

where ρ :=

x21 + x2

2.

1

When σ = 0 (then x3 = 0), set k(x) = (1, 1)/√

2.

When x3 = 0 (then σ = 0), set k(x) = −(x1, x2)/σ

For x = 0:

When σ = 0 and x3 = 0 , set

(Set k(0) equal to any point in U )

Page 50: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

Four types of regularity for Dini or proximal CLF’s:

Theorem [Rifford 2000] The system is GAC if and only if it admits a semiconcave CLF.

Continuous

⊂Locally Lipschitz

⊂Semiconcave⊂

Smooth (C1)

Page 51: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

What if V is merely locally Lipschitz, not smooth or semiconcave?

So we get feedbacks for “practical semiglobal stabilization”

Fact: given r and R, then, for sufficiently large, the steepest descent feedback generated by

Vλ(x) := minz∈Rn

V (z) +λ/2

x − z2.

stabilizes B(0,R) to B(0,r).

λ

inf-convolution

Page 52: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

x

y

0

Steepest descent for V(x,y) = |x|+|y| (dither)

x

y

Steepest descent for V (x,y) (s & h stabilization)

λ

?

not semiconcave!

Page 53: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

Discontinuous feedbacks appear to be essential in nonlinear control settings

Conclusions

They must be handled with more care than continuous ones, and require more effort, but they offer certain advantages

There is a growing body of theory and techniques on the subject, based on sample-and-hold analysis

Page 54: Discontinuous Feedback in Control Theoryplc/clarke.pdf · 2017-05-09 · Fact: satisfies infinitesimal decrease except onφ B(0,r) How are CLF’s found? Let (*) be GAC.Fix r>0,

Discontinuous feedbacks appear to be essential in nonlinear control settings

Conclusions

They must be handled with more care than continuous ones, and require more effort, but they offer certain advantages

There is a growing body of theory and techniques on the subject, based on sample-and-hold analysis

THEEND