• Aucun résultat trouvé

Symmetry preserving asymptotic observers: theory and examples

N/A
N/A
Protected

Academic year: 2022

Partager "Symmetry preserving asymptotic observers: theory and examples"

Copied!
24
0
0

Texte intégral

(1)

Symmetry preserving asymptotic observers:

theory and examples

Pierre Rouchon Coworkers:

Silvère Bonnabel,Philippe Martin,Erwan Salaün

Mines ParisTech Centre Automatique et Systèmes

Mathématiques et Systèmes pierre.rouchon@mines-paristech.fr

2nd Mediterranean Conference on Intelligent Systems and Automation (CISA09)

March 23-25, 2009.

Zarzis, Tunisia

(2)

Outline

Asymptotic observers and motivations

Invariant asymptotic observers

Nonlinear observers on Lie group

(3)

The linear case:

d

dtx =Ax+Bu y,u known signals y =Cx+Du

Linear observer

A stable filter mixing the input and output signalsu(t)andy(t):

d

dtxˆ=Aˆx +Bu(t)−L(Cxˆ+Du(t)−y(t)) Error system fore:= ˆx−x

d

dte= (A−LC)e

The error system is autonomous (separation principle...)

(4)

What about the nonlinear case?1 d

dtx =f(x,u), y =h(x,u) y,uknown signals Estimator, observer, filter, etc:

d

dtxˆ=f(ˆx,u(t))−L(ˆx,y(t))· h(ˆx,u(t))−y(t)

I Luenberger observer, gain scheduling, high gains, ...

I Extended Kalman Filter (M,N“tuning" matrices) A= ∂f

∂x(ˆx,u) L=−PCTN C= ∂h

∂x(ˆx,u) d

dtP =AP+PAT +M−1−PCTNCP

I Tuning? Domain of convergence? Computational cost?

1See, e.g., G. Besançon (Ed.): Nonlinear Observers and Applications;

Springer; Lecture Notes in Control and Information Sciences , Vol. 363, 2007.J.P. Gauthier, I. Kupka: Deterministic Observation Theory and Applications; Cambridge University Press; 2001.

(5)

Redemption by geometry: the nonholonomic car d

dtx =ucosθ d

dty =usinθ d

dtθ=uv h(x,y, θ) = (x,y) u,v =tanϕ/l known A “geometric" observer

d dt

 xˆ yˆ θˆ

=

 ucosθˆ

usinθˆ uv

+

Rθˆ 0 0 0 0 1

·L·Rθˆ·

ˆx−x yˆ−y

whereLis a 3×2 gain matrix andRθˆ:=

cosθˆ sinθˆ

−sinθˆ cosθˆ

(6)

“Alternative" state error

ηx ηy

=Rθˆ·

xˆ−x yˆ−y

Rθˆ:=

cosθˆ sinθˆ

−sinθˆ cosθˆ

Autonomous error system but for the “free" knownu,v

d dt

 ηx ηy

ηθ

=

u(1−cosηθ) + (uv +L31ηx +L32ηyy usinηθ−(uv +L31ηx+L32ηyx

0

+L· ηx

ηy

Easy tuning on the linearized error system witha,b,c>0.

d dt

 δηx δηy

δηθ

=

uvδηy uδηθ−uvδηx

0

+

−|u|a −uv uv −|u|c

0 −ub

 δηx

δηy

(7)

Transformation groups and invariance2

LetGbe a Lie Group with identityeandΣbe an open set of Rσ. A(local) transformation group(φg)g∈G onΣis a (smooth) map

(g, ξ)∈G×Σ7→φg(ξ)∈Σ such that:

I φe(ξ) =ξ for allξ

I φg2◦φg1(ξ) =φg2g1(ξ)for allg1,g2, ξ The mapξ7→J(ξ)isinvariantif

J(φg(ξ)) =J(ξ) for allg, ξ The vector fieldξ7→w(ξ)isinvariantif

w(φg(ξ)) =Dφg(ξ)·w(ξ) for allg, ξ

2See, e.g., P.J. Olver: Equivalence, Invariants and Symmetry; Cambridge University Press; 1995.

(8)

The moving frame method for computing all sorts of invariants3

When dimg ≤dimξ=σ:

we can assumeφg = (φag, φbg)withφaginvertible wrtg

I Normalization:

solveφag(ξ) =cforg ⇒ g=γ(ξ) (ieφaγ(ξ)(ξ) =c)

I the mapξ7→J(ξ) :=φbγ(ξ)(ξ)is invariant

I any other invariant is a function ofJ

I the vector fieldξ7→w(ξ) :=

γ(ξ)(ξ)−1

·Υ,Υconstant vector inRσ, is invariant

I in particularwi(ξ) :=

γ(ξ)(ξ)−1

·ei, i =1, . . . , σ=dimΣ, form an invariant frame

3See P.J. Olver: Classical Invariant Theory; Cambridge University Press;

1999.

(9)

Invariant systems and invariant preobservers4 d

dtx =f(x,u), x ∈ X ⊂Rn,u∈ U ⊂Rm y =h(x,u), y ∈ Y ⊂Rp

Transformation groups(X,U,Y) = ϕg(x), ψg(u), %g(y) The systemdtdx =f(x,u)isinvariantif

f ϕg(x), ψg(u)

=Dϕg(x)·f(x,u) for allg,x,u The outputy =h(x,u)isequivariantif

h ϕg(x), ψg(u)

=%g h(x,u)

for allg,x,u The systemdtdxˆ =F(ˆx,u,y)is apreobserverif

F x,u,h(x,u)

=f(x,u) for allx,u The preobserver dtdxˆ=F(ˆx,u,y)isinvariantif

F ϕg(ˆx), ψg(u), %g(y)

=Dϕg(ˆx)·F(ˆx,u,y) for allg,xˆ,u,y

4Bonnabel, Martin, R: Invariant asymptotic observers. IEEE-TAC, 2008.

(10)

Structure of invariant preobservers Every invariant preobserver reads

d

dtxˆ=f(ˆx,u) +W(ˆx)L

I(ˆx,u),E(ˆx,u,y)

E(ˆx,u,y)

I E(ˆx,u,y)invariant output error

I W(ˆx) = w1(ˆx), ..,wn(ˆx)

invariant frame

I I(ˆx,u)invariant

I L(I,E)freely chosenn×pgain matrix

Explicit construction by the moving frame method (ˆx,u,y)7→E(ˆx,u,y)∈ Y is aninvariant output errorif

I y 7→E(ˆx,u,y)is invertible for allxˆ,u

I E xˆ,u,h(ˆx,u)

=0 for allxˆ,u

I E ϕg(ˆx), ψg(u), %g(y)

=E(ˆx,u,y)for allxˆ,u,y

(11)

So what?

The error system is “nearly" autonomous:

d

dtη= Υ η,I(ˆx,u)

, whereηis an invariant state error When dimG=dimX, autonomous error system but for the

“free" known invariantI!

(ˆx,x)7→η(ˆx,x)∈ X is aninvariant state errorif

I x 7→η(ˆx,x)is invertible for allxˆand vice versa

I η(x,x) =0 for allx

I η ϕg(ˆx), ϕg(x)

=η(ˆx,x)for allxˆ,x

Benefit of the symmetry-preserving approach:

when dimG=dimX, the observer iseasily tuned for (at least) local convergence around every “permanent" trajectory, with a good local behavior (interesting practical property)

(12)

Back to the nonholonomic car withG=SE(2)

Invariance by rotation and translationg = (xg,yg, θg)∈G

xg yg θg

·

x y θ

=

xcosθgysinθg+xg xsinθg+ycosθg+yg

θ+θg

ϕ(xg,ygg)(x,y, θ) =

xg yg θg

·

x y θ

, ψ(xg,ygg)(u,v) = u

v

An invariant observer

d dtxˆ

d dtyˆ

d dtθˆ

=

ucosθˆ

usinθˆ uv

+

Rθˆ

0 0

0 0 1

·L·Rθˆ· xˆx

yˆy

whereLis a 3×2 gain matrix andRθˆ:=

cosθˆ sinθˆ

sinθˆ cosθˆ

(13)

Velocity aided-AHRS : the considered problem5

I 3 gyros giveωm:=ω(body frame)

I 3 acceleros giveam:=a(body frame)

I 3 magnetos gives the Earth magnetic field (body frame)

I An air data system gives thevelocity vector(body frame)

I No biases

"Quaternion" model d

dtq =1 2qω d

dtv =v ×ω

+q−1∗ A ∗q+a

y = yv

yb

=

v q−1∗ B ∗q

“Natural" transformation group ϕ

qg vg

q v

=

qqg q−1g v qg+vg

ψ

qg vg

ω a

=

qg−1ωqg

qg−1aqg...

vg×(qg−1ωqg)

ρ

qg

vg

yv yb

=

q−1g yvqg+vg qg−1ybqg

5See PhD Thesis of Erwan Salaün where such kinds of observers are extensively developed andtested experimentally on micro-controllers.

(14)

A simplified Velocity aided AHRS

I Model withv,aandωmeasured in thebody frame.

Constant gravity and magnetic vectors,AandBin the Earth Frame.

d dtq= 1

2q∗ω d

dtv =v ×ω+q−1∗ A ∗q+a y =

yv yb

=

v q−1∗ B ∗q

and(ω,a)are inputs. We want toestimate(q,v).

I In the body Frame: invariance versus rotationqg and velocity translationvg.

(15)

Natural transformation groupSE(3) Herex =

q v

,g =

qg vg

(G∼SE(3)) and we take:

ϕ

qg vg

q v

= qg

vg

· q

v

=

q∗qg

q−1g ∗v ∗qg+vg

Hereu= a

ω

and we take:

ψ

qg vg

a ω

=

q−1g ∗a∗qg−vg×(q−1g ∗ω∗qg) qg−1∗ω∗qg

Herey = yv

yb

=

v q−1∗ B ∗q

and we take:

%

qg vg

yv yb

=

qg−1∗yv∗qg+vg qg−1∗yb∗qg

(16)

SE(3)invariance of the system

The set of equations characterizing the system d

dtq= 1

2q∗ω, d

dtv =v×ω+q−1∗ A ∗q+a y =

yv yb

=

v q−1∗ B ∗q

is unchanged if, for any qg

vg

, we set

ϕ

qg vg

q v

= Q

V

, ψ

qg vg

a ω

= A

, %

qg vg

yv yb

= Yv

Yb

We have d

dtQ= 1

2Q∗Ω, d

dtV =V ×Ω +Q−1∗ A ∗Q+A Y =

Yv Yb

=

V

Q−1∗ B ∗Q

(17)

The invariant nonlinear observer

d dtqˆ = 1

2ˆq∗ω(t) +( ¯LqvEv + ¯LqbEb)∗ˆq d

dtvˆ = ˆv×ω(t) + ˆq−1∗ A ∗qˆ+a(t) +qˆ−1∗( ¯LvvEv + ¯LvbEb)∗qˆ with the following invariant errors:

Ev = ˆq∗(ˆv −yv(t))∗qˆ−1, Eb=B −ˆq∗yb(t)∗qˆ−1 andL¯qv,L¯vv,L¯qb andL¯vb are constant matrices.

Autonomous errors dynamics: tune the gains to ensure local exponential convergence aroundany system trajectory with uniform Lyapunov exponents.6

6See Bonnabel, Martin, R.: Invariant asymptotic observers;IEEE-TAC, 2008. See also Mahony, Hamel, Pflimlin: Nonlinear Complementary Filters on the Special Orthogonal Group, IEEE-TAC 2008.

(18)

Autonomous errors dynamics

Consider the invariant state-estimation errors ηq= ˆq∗q−1, ηv =q∗(ˆv −v)∗q−1.

Their dynamics satisfy the followingautonomousequation:

d

dtηq=L¯qvqηv ηq−1) + ¯Lqb(B −ηq∗ B ∗η−1q )

ηq d

dtηv =ηq−1

A+ ¯Lvvqηvηq−1) + ¯Lvb(B −ηq∗ B ∗η−1q )

ηq− A

(19)

Convergence of the linearized error system

Indeed forqˆ andˆv close toqandv we have δEv =δηv

and

δEb=−δηq∗ B+B ∗δηq =2B ×δηq

Thelinearized errorequation writes:

d

dtδηq= ¯Lqvδηv+2L¯qb(B ×δηq) d

dtδηv =2A ×δηq+ ¯Lvvδηv +2L¯vb(B ×δηq)

(20)

Let us choose L¯qv =

0 −M12 0 M21 0 0

0 0 0

 L¯vv =−

N11 0 0 0 N22 0

0 0 N33

qb=

0 0 0

0 0 0

−λB2 λB1 0

 L¯vb =

0 0 0 0 0 0 0 0 0

In (Earth-fixed) coordinates,

δηq:=

 0 δη1q δη2q δη3q

, δηv :=

 δηv1 δηv2 δηv3

 and A=

 0 0 A3

,

(21)

The error system breaks in four decoupled subsystems:

I thelongitudinalsubsystem d

dt δηq2

δηv1

=

0 M21

−2A3 −N11

δηq2 δηv1

I thelateralsubsystem d

dt δηq1

δηv2

=

0 −M12 2A3 −N22

δηq1 δηv2

I theverticalsubsystem d

dtδη3v =−N33δηv3

I theheadingsubsystem d

dtδηq3=λB3(B1δηq1− B2δη2q)−λ((B1)2+ (B2)2)δη3q

(22)

Invariant dynamics and observers on a Lie group7 Consider aleft-invariant dynamicson a Lie group G

d

dtg =DLgωs(t) y =h(g)

withhanG-équivariantoutput : for allg1∈Gthere existsρg1

such that for allg2∈G:

h(g1g2) =ρg1(h(g2))

withρg1◦ρg2g1g2. Any invariant observer writes d

dtgˆ =DLˆgωs(t) +DLˆg

n

X

i=1

Liˆg−1(y))Wi

!

avec(W1, ..Wn)basis of the Lie algebraLi(h(e))) =0

7Bonnabel, Martin, R.: Non-linear Symmetry preserving observers on Lie groups. IEEE-TAC, June 2009.

(23)

The invariant state error is

η =g−1gˆ The error equation

d

dtη =DLηωs−DRηωs+DLη

n

X

i=1

Li◦h(η−1)Wi reminds

d

dte= (A(t) +LC)e

I What if the condition on the output ish(g1g2)=ρg2(h(g1))?

I η = ˆgg−1⇒AUTONOMOUS error equation !8

I reminds dtde=LCe

8This autonomous character resulting form left translations on the state and right translations on the output was first noticed in Bonnabel, Martin, R.:

Groupe de Lie et observateur non-linéaire; CIFA 2006 (Conférence

Internationale Francophone d’Automatique), Bordeaux, France, 2006. It has been also noticed in 2008 and independently by Mahony and co-workers:

http://arxiv.org/abs/0810.0748 and http://arxiv.org/abs/0805.0828

(24)

Conclusion

Invariance is just a way to"put physics"in nonlinear estimation and filtering processes.

I Chemical reactorswhere the group is just associated to changes of units and invariance relies on the fact that material and energy balance equations do not depend on chosen units.

I Quantum systemsdescribed by Lindblad-Kossakovski differential equation

d

dtρ= −ı

~ [H, ρ] +2LρLLρLL, y =tr LρL whereρis the density operator (symmetric, semi-positive with tr(ρ) =1),HandLare operators. All these operators are defined up to a change of framesUG=U(n)via:

(ρ,H,L)7→(UρU,UHU,ULU)

I Infinite dimensional systems described byPDE’ssuch as the Saint-Venant equationhttp://arxiv.org/abs/0809.1400.

I For inertial navigation anddata fusionbetween camera, acceleros, gyros and magnetos... Galilean invariance could certainly be exploited in a much more systematic way....

Références

Documents relatifs

This program is free software; you can redistribute it and/or modify it under the same terms as Perl

Returns the version as defined by the $VERSION variable for the package as returned by the name method if no arguments are given.. If given the name of a package it will attempt to

When the all parameter is omitted or false, then the tied hash elements will be the contents of the leftmost defined buffer with the name of the associated

This is a "plug-in" class that allows Perldoc to use Pod::Simple::Checker as a "formatter" class (or if that is not available, then Pod::Checker), to check for

The following options are supported: center, date, fixed, fixedbold, fixeditalic, fixedbolditalic, quotes, release, section. (Those options are explained in Pod::Man.)

If Perldoc is running under MSWin and uses this class as a formatter, the output will be opened with write.exe or whatever program is specified in the environment variable

It supports the following options, which are explained in Pod::Text: alt, indent, loose, quotes, sentence, width.

simple-minded version of Pod::Simple::Text that formats only the "Pod Errors" section (if Pod::Simple even generates one for the given document). This is a subclass