A Tutorial on Incremental Stability Analysis using Contraction Theory

This paper introduces a methodology for differential nonlinear stability analysis using contraction theory (Lohmiller and Slotine, 1998). The methodology includes four distinct steps: the descriptions of two systems to be compared (the plant and the observer in the case of observer convergence analysis, the plant and the controller in the case of tracking controller analysis), the definition of an abstract system common to the two systems and denoted as the “virtual system”, and the convergence study of the virtual system using its virtual dynamics representation. The approach is illustrated on several simple examples.


Introduction
Stability analysis has long been recognized as a keystone in the control systems community, and many techniques have been proposed to check this important property.Among them, Lyapunov theory has become a central tool of the control community, and Lyapunov functions have proven fundamental in stability analysis and control design of nonlinear and time-varying systems described in the state-space (see for example Khalil (1996), Krstić et al. (1995), or Slotine and Li (1991).
One of the main features of Lyapunov-based stability analysis is the consideration of systems having an equilibrium at the origin of the state-space.In more general cases, such as e.g.trajectory tracking control, the standard methodology consists in making use of an appropriate change of coordinates to put the sys-tem under study in the suitable form.
Contraction theory is a more recent tool for analyzing the convergence behavior of nonlinear systems in state-space form; see Lohmiller and Slotine (1998), Slotine and Wang (2003) and Jouffroy (2003b) for the explicit incorporation of inputs in the framework of contraction.One of the main features of contraction is that, contrary to traditional Lyapunov-based analysis, it does not require the explicit knowledge of a specific attractor.The stability analysis is performed through extensive use of virtual displacements, with the system dynamics being described in a differential framework.Methodology, i .e. how to apply or use the results of a theory, is now well-established for Lyapunov functions.While it might be tempting to apply directly these techniques to the world of contraction, a more fruitful approach may be to take into account the specificities of contraction theory to see how it applies on several concrete examples.The purpose of this paper is to contribute in this important issue, as well as suggest means to compare contraction with Lyapunov stability analysis.The present tutorial paper is based on Jouffroy and Slotine (2004) and Jouffroy (2005).
After this introduction, and in addition to a brief recall of the main results of contraction theory, we shortly discuss in Section 1 a few simple technicalities related to the main criterion of contraction whose Lyapunov counterpart would be the celebrated Lyapunov equation.Contraction being also an incremental form of stability, i .e. stability of the system trajectories with respect to one another (see Angeli (2002), Fromion et al. (1999) and references therein for other forms of incremental stability, and Lohmiller (1999), Lohmiller and Slotine (2000b), Lohmiller and Slotine (2000a), Egeland et al. (2001), Aghannan and Rouchon (2003), Jouffroy and Lottin (2002) and Jouffroy and Opderbecke (2007) for other applications of contraction), Section 2 discusses the importance of the term "incremental" on the methodological point-of-view introducing a simple example whose stable behavior can be easily concluded with a simple Lyapunov function.In Section 3, we use the remarks of the previous section to deal more specifically with the methodological aspects induced by the nature of contraction theory.As expected, these are quite different from those of a traditional stability analysis using the original Lyapunov theory and ideally, would allow to expect contraction to perform as well as in the Lyapunov case.The approach is illustrated with different simple examples throughout the paper and Section 4 deals specifically with several application examples, namely a robot controller, a ship controller and the Extended Kalman Filter.Concluding remarks end the paper.

Contraction analysis
In the following, consider systems described by a nonlinear deterministic differential equation in the form where x is the n-dimensional vector corresponding the state of the system, t is the time, and f is a nonlinear vector field.In addition, we make the further assumption that the system is smooth and that any solution x(x 0 , t) initialized in x 0 of equation (1) exists and is unique.One of the main features of contraction theory is to use the concept of virtual displacements of the state x which, roughly speaking, consists of a slight modification of the state to see the change it produces on the velocity vector ẋ.The standard notation of a virtual displacement, introduced by Lagrange (Lanczos, 1970, p. 38), is δx.
From there, the so-called virtual dynamics are introduced by computing the first variation of equation ( 1 (where Θ(x, t) is a nonsingular transformation matrix) is performed on expression (2), the virtual dynamics can be expressed in δz-coordinates as where the generalized Jacobian F is given by We are now ready to state the main definition of Lohmiller and Slotine (1998): Definition 1 Given the system equations ẋ = f (x, t), a region of the state space is called a contraction region with respect to a uniformly positive definite metric M (x, t) = Θ Θ, if there exists a strictly positive constant β M such that or equivalently is verified in that region.
From this definition, Theorem 2 in Lohmiller and Slotine (1998) is stated as: Theorem 1 Given the system equations ẋ = f (x, t), any trajectory, which starts in a ball of constant radius with respect to the metric M (x, t), centered at a given trajectory and contained at all times in a contraction region with respect to M (x, t), remains in that ball and converges exponentially to that trajectory.
Intuitively, the above result means that if the temporal evolution of a virtual displacement tends to zero as time goes to infinity, this being true for all states x and at all time, the whole flow will "shrink" to a point, hence the term "contraction".Example 1 To illustrate the above idea, consider the following simulation of a simple three-dimensional nonlinear system described by the following equation where (x, y, z) is the state.Let u be a time-dependent control input u = (2 sin t, 2 cos t, 5t − 2) .This system was simulated for many different initial conditions in a ball of radius R = x 2 0 + y 2 0 + z 2 0 = 10 and centered about the origin.Figure 1 represents the evolution of this ball in time.Since system (8) fulfils the conditions of the above criterion, the volume contracts in time to a point, as predicted by the theory.
It can actually be shown that the condition of definition 1 and theorem 1 is not only sufficient but necessary, as stated in the following converse theorem: Theorem 2 If the system which equations are ẋ = f (x, t) is exponentially convergent, i .e. its virtual displacements verify the following inequality δx δx ≤ kδx 0 δx 0 e −βt (where δx 0 = δx(0) and k and β are strictly positive constants) then it is also contracting with respect to a uniformly positive definite and initially upper bounded metric M (x, t).
On the methodological aspect, first note that the assumptions that are used on the metric M imply that it can become unbounded as time goes to infinity.Let us see what simple implication it may have for using criteria (6) and (7).Indeed, by looking at the uniform negative definiteness condition of equation ( 7), one could think of checking where β is a strictly positive constant.This would obviously imply However, in order to be able to conclude exponential convergence, one would like to have with β M a strictly positive constant.Then, note that the assumptions on M in Lohmiller and Slotine (1998, Section 3.5) can be expressed as where σ min is a strictly positive constant which stands for the uniform positive definiteness of M , and σ max (t) is a strictly positive time-dependent function stating that M is bounded for bounded t, but may be unbounded as t → +∞.From eq. ( 10) and eq.( 12), we thus get which in turn implies that Using eq. ( 12) once again, we finally transform eq. ( 14) into Hence, because of the form (15), we might not get an exponential convergence if we read eq. ( 9) for eq.( 7).
As a consequence, this latter condition must be read as which straightforwardly implies which indicates exponential convergence of the trajectories of ẋ = f (x, t).Note that by using the local transform (3), one can change eq. ( 17) into hence the equivalence between the negativity condition on eq. ( 6) and ( 7).
Comparing with the usual Lyapunov quadratic functions that are used to prove stability of linear (timevarying) systems ẋ = A(t)x, remark that these latter imply the well-known Lyapunov equation where it is often assumed that both P (t) and Q(t) are uniformly positive and upper bounded matrices, i.e. and While equation ( 20) together with the bounds above are very important for computational purposes (Gajić and Qureshi, 1995), it does not have the"proportionality" form of ( 16) induced by the term β M , leading to the equivalence with ( 19) which makes it easy to find the transform Θ under which the system is contracting.
On the other hand, such a proportional inequality as eq.( 16) might sometimes be difficult to verify without assuming any upper boundedness of the metric M , as it will be seen through an example later in this paper.
Finally, since where β max (x, t) is the largest eigenvalue of the symmetric part of F , note that criterion (6) can be relaxed to conclude exponential convergence by requiring e.g. that the moving-window time-average of F be upper bounded, i.e. that for some finite T > 0, t+T t λ max (x, τ )dτ be uniformly negative definite in time, as studied in Jouffroy (2003a).

Partial contraction
In this section we briefly recall the basic principles of an extension of contraction analysis, the so-called partial contraction analysis.The reader is referred to Slotine (2003) for details.
Theorem 3 Consider a nonlinear system which can be put under the form and assume that the auxiliary system is contracting with respect to y.If a particular solution of the auxiliary y-system verifies a smooth specific property, then all trajectories of the original x-system verify this property exponentially.The original system is said to be partially contracting.
Proof.The virtual, observer-like y-system has two particular solutions, namely y(t) = x(t) for all t ≥ 0 and the solution with the specific property.This implies that x(t) verifies the specific property exponentially.
Note that contraction may be trivially regarded as a particular case of partial contraction.Also, consider for instance an original system in the form where function c is contracting in a constant metric.The auxiliary contracting system may then be constructed as ẏ = c(y, t) and the specific property of interest may consist e.g. of a relationship between state variables.

Incremental and non-incremental exponential stability
In Jouffroy (2002) and Jouffroy and Slotine (2004) it was remarked that some particular examples could be quite difficult to analyze at first glance using contraction analysis, whereas their stable behavior was easily proven with Lyapunov functions, as illustrated in the following example.
Example 2 Consider the system: This system is very easily proven to be GES (Globally Exponentially Stable) using the Lyapunov function V = 1 2 (x s , y s ) (x s , y s ).Note the skew-symmetric structure that one often encounters e.g. using backstepping techniques.The stability analysis is easy mainly because the cross-terms neutralize each other in the expression of the time derivative of V .Indeed, V = − (x s , y s ) (x s , y s ) < 0, (x s , y s ) = (0, 0).Now using contraction, the virtual dynamics are expressed as Clearly, the skew-symmetric structure is destroyed in the derivation process leading to the expression of the Jacobian ( 29).Hence the difficulty to conclude to contracting behavior whereas it was straightforward to prove GES using a simple Lyapunov function.
Why such a difference?First note that one of the main differences between Lyapunov and contraction is that the latter enables to conclude exponential convergence of any couple of trajectories, while the former simply lead to GES with respect to the origin, which is a weaker form of stability than incremental stability.Indeed, take another form of incremental stability than contraction, i.e. an incremental Lyapunov function (the concept was introduced in Angeli ( 2002)) where (x s1 , y s1 ) and (x s2 , y s2 ) are two particles of the state space (x s , y s ).By computing the time derivative of eq. ( 30), the reader will notice that verifying the incremental stability of system ( 28) is actually quite difficult.This is because incremental stability is a stronger notion than stability with respect to the origin.Also, and in more down-to-earth considerations, if we simulate the above system for two different initial conditions, and trace the norm of the difference between the two corresponding particles, we might get a curve as the one of Figure 2. The overshoot of this curve shows that if the system is contracting, its Jacobian will be uniformly definite negative under a particular metric M (x s , t) = I because an identity metric would correspond to a curve bounded by an exponential whose starting point is the norm of the initial value of the difference vector (x s1 − x s2 , y s1 − y s2 ).
Hence contraction should therefore be compared to an incremental form of stability.Also, contraction implying an exponential form of convergence, the form of incremental stability under study should be exponential.As a consequence, let us give the following incremental version of GES: Definition 2 The system ẋ = f (x, t) is said to be incrementally Globally Exponentially Stable (Incrementally GES) if there exist two strictly positive constants k and λ such that the following inequality is verified (where • is the Euclidian norm) for all x 10 and x 20 in n , all t ≥ 0.
Once incremental GES is defined, the question is how to relate contraction with the former.The following lemma answers this question.
Lemma 1 Assume that the system is globally contracting with the contraction rate λ and with respect to the uniformly positive definite and bounded metric M (x, t), i.e.
where σ min and σ max are two strictly positive constants.
Proof.The first part of the proof is based on Opial (1960) (see also Jouffroy (2005)).Consider a straight line segment s(α) between x 10 and x 20 defined by whose length is x 10 − x 20 .Consider then the curve "generated" by s(α), defined by x(s(α), t), α ∈ [0, 1].The length L(t) of this curve is given by it can be seen that v verifies Then, introducing the local transform Θ(x,t) corresponding the metric M (x, t) under which the system is contracting we get Assuming global contraction with rate λ means that F is uniformly negative definite, and that which in turn leads to due to the bounds on M (x, t).Finally, we have for all α ∈ [0, 1].After integration on α, we finally have which concludes the proof of the lemma.The other way is even simpler, as can be seen in the following lemma.
Lemma 2 Assume that the system is incrementally GES.Then system (45) is also globally contracting.
Proof.Since eq. ( 31) is valid for all x 1 = x(x 10 , t) and x 2 = x(x 20 , t), then it is also valid for x 1 = x + δx and x 2 = x.Therefore eq. ( 31) implies Then, using the converse theorem of the last section, the above inequality implies that ( 45) is globally contracting.
The above lemmas give therefore an equivalence between contraction and incremental exponential stability.This can be summarized with the following theorem: is incrementally GES if and only if it is globally contracting.
Proof.Immediate from Lemma 1 and Lemma 2.
3 Contraction as a flow-oriented approach to stability analysis 3.1 Virtual system / actual systems In order to be able to compare Lyapunov theory with contraction in terms of applications, one would have to take into account their differences by requiring the verification of the same stability property.Hence the following question arises: how to prove that system (28) is GES using contraction?
To answer this question, which is the starting point of the methodology proposed in this paper, let us first consider the following elementary generalization.
Example 3 Consider the system where the equilibrium point x s = 0 is GES.
To link the above result with contraction theory and incremental stability, let us first go back to the proof of Lemma 1, which implies the definition of a path between two particles x 1 (t) and x 2 (t), the state x s (t) of eq. ( 48) would represent one end of the path (i.e. for example x 1 (t) = x s (t)), while the origin of the statespace would be the other end of the path (x 2 (t) = 0).In terms of systems and differential equations, it means that these two signals are particular solutions of a single system.However, to one particular solution can correspond several different systems, meaning there is generally some freedom in choosing the system generating these two solutions.Such a perspective was first noticed by Polish mathematician Z. Opial that used a very similar criterion to the one of contraction theory, to then apply it to compare different systems (see the historical review Jouffroy (2005)).This is also the viewpoint that is adopted in Section 1.2 to describe partial contraction analysis (Slotine and Wang, 2003), where the choice of the so-called auxiliary system gives this freedom.
Additionally, note that the definition of a differential equation is quite abstract and general if no particular initial value is specified.Specifically, consider a virtual system ẋ = f (x, t) which can be seen as an auxiliary system in the framework of partial contraction.Then, a particular solution can be specified for example as in explicit form, or, in implicit form which in the following will be called an actual system.
Note that this clear separation of the abstract level of the virtual system from the more concrete level of actual systems is also close in spirit to object-oriented programming, where classes and objects defined in an abstract way have to be instantiated to be fully materialized.
In the example above, a possible way of defining the virtual system corresponding to eq. ( 48) would be the following equation which is possible since, if we choose x = x s as a particular solution, we find actual system (48).On the other hand, note that the origin of the state-space is also a particular solution of ( 53).This fits well with a methodology for using contraction theory since, if system (53) (and more generally system ( 50)) is contracting, then, as stated by Theorem 1, any couple of trajectories, and particularly the ones of interest, will converge to each other.
Coming back to virtual system (53) and calculating its virtual dynamics it is easy to conclude to contracting behavior of (53) and hence of exponential convergence of its two particular solutions x = x s and x = 0.This allows us to conclude that system (48) is GES.Note that if we would have worked directly on eq. ( 48) using contraction, we would have searched for an incremental form of GES, which is difficult to check, as we saw in Example 2.

From observers to controllers
It is worth noting that contraction was first developed in the context of observers; see Lohmiller and Slotine (1996b) for the main principle and Lohmiller and Slotine (1996a) for application examples, for which the virtual system corresponded exactly to the observer equation, as shown by the following example.
Example 4 Define the following observer where k > 1 and u is the control input.The observer estimates the state of the system Using the virtual system/actual systems description is quite straightforward, since eq.( 55) and eq.( 56) are particular systems of the virtual system which is contracting.
However, virtual system (57) corresponds exactly to the observer (55) itself.Indeed, it was noted in Lohmiller and Slotine (1998) that for observer convergence analysis, one simply had to verify that the system to be estimated is a particular solution of the observer to ensure that x will converge exponentially to the actual state x s of the system.By duality, it was also stated that one would have an exponentially convergent tracking controller provided that the system to be controlled is a particular solution of the contracting controller.This last statement is true for many controllers, in particular for linear static state feedback controllers.But it can be vastly extended using the virtual system/actual systems description, as seen e.g. in Example 3. Let us discuss this point further through the continuation of Example 3 using a control input.
Example 5 Consider the system ẋs = −D(x s )x s + u (58) where x s R n , D(x s ) + D (x s ) ≥ αI > 0 and u is the control.Define the controller where the n-dimensional square matrix K is positive semi-definite.This controller makes x s and x d converge exponentially to one another since the virtual sys- whose particular solutions x = x s and x = x d are respectively syst.(58) and syst.( 59), is contracting.
The reader has certainly noticed that the result is quite obvious since the chosen virtual system is actually linear.However, note that such controllers as eq.( 59) are often used with Lyapunov-based techniques (see for example Skjetne et al. (2004)), precisely because they make easier the analysis of the time derivative of the Lyapunov function V (x), where x = x s − x d .This interpretation of partial contraction is of course useful for larger classes of systems than eq.( 58).Consider for instance a nonlinear system of the form ẋs = f (x s , x s , x d , u, t) (61) and assume that the controller equation is such that where x d (t) is the desired state.Consider now the virtual system If the virtual system is contracting, then x tends to x d exponentially, since both are particular solutions of the x-system.Note that in the analysis of the controller that was carried out above, controller ( 62) is represented in an implicit form, contrary to the usual u = c(x s , x d , ẋd , t) form.In our opinion, it clarifies the reading and the comparison of system and controller, as well as brings a unified view of both observers and controllers convergence analysis by adopting an observer perspective.This last point can also be related to the concept of dual observers due to Brasch that are alluded to in Luenberger (1971, Section 6) where if an observer could be seen as a system S 2 tracking another system S 1 , the corresponding controller would be S 1 that the systemto-be-controlled S 2 would have to follow.Finally, note that this point-of-view also allows to go back and forth between observer and controller design, as shown by Example 5 in which we can design a "tricky" but simple observer for system (58) by replacing x d with x in (59) if x s is measured (see also Jouffroy and Lottin (2002) for an application to observer design for Dynamic Positioning of marine vessels).
Hence, we can summarize the above discussion by introducing a methodology for controller stability analysis using contraction theory which could be sketched as follows.
• write the "target" system equation ( ẋs = f (x s , t)), • write the controller equation in implicit form, • define the virtual system whose particular solutions or actual systems are the target system and the controller, • analyze the virtual dynamics of the virtual system to conclude to contracting behavior.
One might wonder about several types of controllers when related to the above methodology, like for example PID controllers.In this case, the dimension of the controller equation can be different from the system under consideration, and one has just to make sure that the chosen virtual system contains both system and controller.Switching again to the observer world, this last remark can be used to reformulate, in a very simple way, the interesting concept of dynamic observers as introduced by Park et al. (2002).
The problem of analyzing systems synchronization can also be studied as in the following example, taken from Slotine and Wang (2003).
Example 6 Consider two systems ẋ1 = f (x 1 , t) and ẋ2 = f (x 2 , t) coupled in the following manner: where k(x i , t) represent the coupling forces.Assuming that the virtual system is contracting leads to conclude that x 1 and x 2 converge exponentially to each other.

Incorporating input signals
Another question that might arise when using the above methodology is how to express in an explicit manner the impact of different inputs on the behavior of a system.Hence, we will now have to consider systems described by the following differential equation where x ∈ R n and u(t) ∈ R p .From there, the first variation of eq. ( 66) can now be expressed as and gives the virtual dynamics in the δz-coordinates where F is the generalized Jacobian ( 6) except for the dependence on the control input.
From expression (69), it can be seen that provided that F is uniformly negative definite for all input, then the impact of different inputs on the convergent behavior will be bounded if ∂f ∂u and Θ are uniformly bounded.
Thus, as in the ISS framework of Sontag (1989), expression (69) leads to convergence of a ball around a trajectory.As described in Sontag (2000) in the context of ISS and in Jouffroy (2003b) in the context of contraction, such a point-of-view helps to consider many different important issues such as robustness, but also detectability, combination properties such as cascades and small-gain theorem in a simple way.
In terms of the above-described methodology, the notation used in this paper indicates that eq. ( 66) is the virtual system whose particular solutions need to be specified to study incremental stability properties of particular examples.However, since we are dealing with inputs in addition to the state, we will consider the couple (x = x 1 , u = u 1 ) and (x = x 2 , u = u 2 ) as the particular solutions describing two systems generated by eq. ( 66).
Such a point-of-view happens in particular in the context of output-feedback where the unavailable state x s of a plant which should be the input to the feedback controller is replaced by its estimate x obtained by an observer.
The following example shows how to reframe the well-known separation principle in the context of contraction for the linear case and a simple nonlinear one.
Example 7 Consider the linear time-invariant system ẋs =Ax s + Bu s (70) where u s ∈ R p and y s ∈ R q , and A, B and C are matrices of appropriate dimensions.Equations ( 70)-( 71) are assumed to be both controllable and observable.
A linear full-state observer for the plant ( 70)-( 71) takes the form where the matrix L is the observer gain.A statefeedback controller for ( 70)-( 71) could take the form Remark first that either (72) or ( 73) can be used together with (70) to define the following virtual system where F can be LC or BK, depending on what action is chosen, i .e. observation or control.Say now that instead of controller (73), we want to use the outputfeedback controller whose input is the estimate x given by observer (72).Then, the difference in terms of behavior with controller (73) can be seen by writing the following virtual system where the particular solutions (x c = x d , x o = x s ) and (x c = x h , x o = x) are respectively eq. ( 73) and eq.( 75), and where x o is in turn the state of the virtual system obtained from the actual systems defined by plant (70) and observer (72).Finally, putting together the virtual dynamics of virtual systems ( 76) and ( 77), we have (78) which is contracting provided that each element of the cascade (observer and controller parts) is contracting and that BK is bounded.
Example 8 Take now, as in Lohmiller and Slotine (2000b), the following nonlinear closed-loop system with its corresponding observer ż = f (ẑ, t) + G(z s , t)u(ẑ, t) + e(z s , t) − e(ẑ, t) (80) and define the virtual observer system Like the linear system, define also the virtual controller which, together with eq. ( 81) give the virtual dynamics which is again contracting provided ∂(f −e) ∂zo and ∂(f +Gu) ∂zc are uniformly negative definite and G ∂u ∂zo is uniformly bounded.

Robot manipulator control design
Consider the nonlinear robot model Asada and Slotine (1986): where q s ∈ R n is a vector of joint angles, H(q s ) = H (q s )>0 is the inertia matrix, the matrix C(q s , v s ) defines Coriolis and centripetal terms, g(q s ) is a vector of gravitational torques, and τ ∈ R n is a vector of control torques.Using a control design technique such as vectorial backstepping gives, for system (84)-( 85), the following nonlinear controller (see Fossen (2002)) τ = H(q s ) vr + C(q s , v s )v r + g(q s ) − K d s − K q (q s − q d ), (86) where q d is a smooth desired trajectory, v d = qd , and K d and K q are strictly positive constant matrices.Variable s is defined as s = (v s −v d )+Λ(q s −q d ), with Λ is a constant Hurwitz matrix, while v r = q d −Λ(q s −q d ).Controller (86) can easily be rewritten as By comparing this controller with robot model ( 85), one can now write the virtual system equation and compute its virtual dynamics which, in matrix form, gives Introducing now the local transform gives the generalized Jacobian dynamics (92) Then, we use yet another change of local coordinates induced by the metric to check the quadratic criterion of contraction on eq. ( 92), i.e.
leading to contracting behavior of system (88).
From the above computations, one can notice that we have introduced two different changes of coordinates into two different forms, namely a local transform Θ and a metric M .Interestingly, one can see that Θ is induced by the virtual control law process of the backstepping procedure, or of the sliding variable s, while the metric M is the counterpart of the quadratic Lyapunov function that is typically used for such a problem.
Alternatively, consider the energy-based controller Slotine and Li ( 1991) with K a constant s.p.d.matrix.The virtual x-system has v s and v r as particular solutions, and furthermore is contracting, since the skew-symmetry of the matrix Ḣ − 2C implies d dt δv Hδv = −2δv (C+K)δv+δv Ḣδv = −2δv Kδv (97) Thus v s tends to v r exponentially.Making then the usual choice v r = v d − Λ(q s − q d ), where Λ a constant Hurwitz matrix, implies in turn that q s tends to q d exponentially.

Ship maneuvering control design
In Fossen (2002), a MIMO nonlinear backstepping technique for ship maneuvering is presented.Consider a marine vessel moving in the horizontal plane described by the following model class: where η s = (x s , y s , ψ s ) is the vector of earthfixed coordinates and yaw angle of the ship, ν s = (u s , v s , r s = ψs ) represent the body-fixed coordinates (surge, sway, yaw).H is the inertia matrix including hydrodynamics and added mass, C is the coriolis and centripetal matrix, D the linear and nonlinear dissipative terms, and g the vector of gravitational and buoyancy forces and moments.τ is the vector of control forces and moments.The rotation matrix in yaw is written as The different quantities are defined in Fossen (2002).
Assume that the reference trajectory given by η (3) d , ηd , ηd , and η d is smooth and bounded.Using vectorial backstepping and similarly to section 4.1, the nonlinear ship controller from Fossen ( 2002) can be described as where Λ is a constant Hurwitz matrix, K d and K p are strictly positive constant matrix of the feedback part of the nonlinear PD-controller.
From there, and as in the previous subsection, one can define the following virtual system η = R(ψ s )ν whose virtual dynamics can be put into matrix form (102), which can be shown to be contracting after the use of the local transform

Extended Kalman Filtering
Despite extensive use of the celebrated Extended Kalman Filter (EKF) for many practical applications, its proof of convergence as an observer has been addressed only recently, using mainly the framework of the second method of Lyapunov in the deterministic case; see for example Reif et al. (1998), for the continuous-time case and Boutayeb and Darouach (1997) for the discrete-time case, as well as references therein.We present, under specific assumptions, a simple proof of exponential convergence of the EKF based on contraction theory.Consider a plant represented by the following nonlinear equations ẋs =f (x s , t) (104) where x s ∈ R n is the state of the system to be estimated, y s ∈ R m is the measured output, and where f and h are smooth vector fields.The EKF observer structure is where the gain matrix is computed using the Riccati matrix differential equation where 109) The covariance matrices Q = Q > 0 and R = R > 0 for simplicity are assumed to be constant.
We make the highly non-trivial but standard following assumption (Reif et al., 1998).
Assumption 1 The P matrix of the Riccati equation ( 108) is uniformly positive definite and upper bounded, i .e. there exist two strictly positive constants p min and p max such that Taking into account the definitions as well as the assumptions for the EKF described above in ( 104)-( 110), we are ready to state the following result.
Theorem 5 Under Assumption 1, the estimate x of the EKF converges exponentially to the actual state x s of the system ẋs = f (x s , t).Proof.The proof starts by using the methodology described in the previous section.Indeed, examining (104) and ( 106), we can define the following virtual system: ẋ = f (x, t) + K(x, t) [y s − h(x, t)] (111) which particular solution x = x s gives the state equation of the plant (104), while the other particular solution x = x gives observer equation ( 106).It remains to prove that syst.( 111) is contracting.K and y s are external functions of time, so that its virtual dynamics can be written Under Assumption 1 and using the lower bound q min on Q, this in turn implies d dt (δx P −1 δx) ≤ − q min p max δx P −1 δx (117) which shows that virtual system (111) is contracting.
Hence the estimate x converges exponentially to the actual state x s .
Note the similarity of the proof with that of the continuous Kalman filter for linear systems.This is due to the differential framework in which contraction theory is defined, as well as the appropriate definition of the virtual system for the stability analysis using contraction which would have been much more difficult working directly on actual system (106).Additionally, following the discussion at the end of Section 1.1, note that the EKF proof requires an upper bounded metric M = P −1 to allow conclusion of exponential convergence.

Concluding remarks
By taking advantage of the way contraction theory is defined, we have presented a methodology for incremental stability analysis which depart quite far from the one that is usually applied in the context of Lyapunov theory.One of its main features is to consider two different levels of system description, namely the virtual system, which can be seen as an abstract definition of a differential equation since no initial value or particular solution is specified, and the actual systems or particular solutions that are the result of an instanciation of the above virtual system.
The other important feature, which is another fundamental aspect of contraction theory, is the extensive use of virtual displacements that help to eliminate in a rigorous and efficient way the terms that are not directly responsible for the convergent behavior of the system.This variational approach was seen to be quite effective at simplifying computations in a variety of cases.
Using this methodology, it seems that it could be appealing for both linear and nonlinear designs.Indeed, it makes appear in an explicit way different kinds of linearities hidden behind an observer or a controller design, whether these linearities come from a pure linear system, a state-affine representation, or a Lipschitz condition.

Figure 1 :
Figure 1: Contracting volume of a nonlinear system