Abstract
This paper deals with systematic approaches for the analysis of stability properties and controller design for nonlinear dynamical systems. Numerical methods based on sum-of-squares decomposition or algebraic methods based on quantifier elimination are used. Starting from Lyapunov’s direct method, these methods can be used to derive conditions for the automatic verification of Lyapunov functions as well as for the structural determination of control laws. This contribution describes methods for the automatic verification of (control) Lyapunov functions as well as for the constructive determination of control laws.
    MSC:
                93B50; 93C10; 93D05; 93D15; 93D30
            1. Introduction
Stability is one of the most important properties of control systems. When designing a controller, the stability must be maintained in the case of a stable system and an unstable system must be stabilized via feedback.
In the case of nonlinear systems, stability cannot always be decided based on linearization. In addition, a stability statement based on linearization is only locally valid at most. For global and semi-global stability statements, one typically employs Lyapunov’s second method [,]. The difficulty of this approach is finding a suitable Lyapunov candidate function and proving the corresponding definiteness conditions. This proof is typically established through adept estimations, which, nonetheless, requires significant expertise.
In its basic form, Lyapunov’s second method allows statements about the stability of equilibrium points of an autonomous system [,,]. Input-state stability extended this approach to systems with inputs [,,]. While the (classical) Lyapunov function allows statements about stability, a control Lyapunov function makes statements about stabilizability [,].
In applying Lyapunov’s direct method as well as its control generalizations, one is confronted, as mentioned above, with difficulties, namely, the choice of an appropriate candidate function and the proof of appropriate definiteness.
Nevertheless, there are some methods with the help of which it is possible to determine Lyapunov functions under certain circumstances. Such methods are, for example, the Krasovskii method, the variable gradient method, or the choice of physically motivated Lyapunov candidates. For more detailed information and examples, the reader is referred to [,]. A comprehensive introduction to passivity and its use for finding Lyapunov functions can be found in [].
Part of the difficulties associated with Lyapunov’s direct method can be circumvented by using vector Lyapunov functions [,,]. In control engineering applications, cascaded or recursive design approaches, such as backstepping, have become established [,]. Instead of analytical computations, numerical approximation methods [] or neural networks in conjunction with machine learning can sometimes be used to determine control Lyapunov functions [,].
In recent years, two methods have been developed that systematically address the Lyapunov definiteness check. Hence, it could be shown that both sum-of-squares decomposition and quantifier elimination are suitable to find the appropriate Lyapunov functions. These results could then be extended to different problems, such as other stability properties [], passivity [], static output feedback [,,], or determination of the region of attraction [] and invariant sets [,]. However, both methods are only suitable for systems with polynomial descriptions, so a large number of problems cannot be considered in the first step. To circumvent this circumstance, a polynomializing transformation can be introduced to significantly increase the class of systems that can be studied. In this paper, we want to recapitulate the results on stability and input-to-state stability, respectively, and show how control Lyapunov function approaches can be used to generate stable and input-to-state stable closed-loop systems.
For that purpose, the paper is organized as follows: Section 2 outlines the mathematical methods used. Section 3 is devoted to stability analysis. The following Section 4 deals with control Lyapunov functions that can be directly applied to the design of stabilizing state feedback. The procedure for determining a Lyapunov function for the non-polynomial Furuta pendulum and that of a control Lyapunov function using a chemical process as an example is illustrated in Section 5. In Section 6, the results are summarized and discussed. In addition, we provide an outlook for possible follow-up research. Finally, we draw some conclusions in Section 7.
2. Methods
In the case of nonlinear systems, one difficulty is that the analysis and design methods available from control engineering and systems theory are often not constructive, but exist in conjunction with existential statements. The definiteness conditions that arise in Lyapunov methods can often only be ensured by clever estimations, which in turn require a high degree of understanding of the system and can only be applied to the specific problem.
In this section, two different methods are presented, which can be used to check or guarantee definiteness conditions for given approaches, namely quantifier elimination and sum-of-squares decomposition. Both approaches have been successfully used to estimate regions of attraction with Lyapunov methods [,,], but are essentially limited to polynomial systems. Therefore, a rational transformation is first introduced, which provides an extension for the treatment of non-polynomial systems [].
2.1. Polynomialization
In the following subsections, two mathematical methods are presented to test Lyapunov approaches systematically concerning their definiteness. However, both quantifier elimination and sum-of-squares decomposition apply only to polynomials and thus to polynomial system descriptions. This is a relatively severe limitation since a large number of problems are described by non-polynomial terms. For example, trigonometric functions frequently arise in the modeling of mechanical systems. Chemical or process engineering models often exhibit exponential functions (due to the Arrhenius equation). To overcome this limitation, an algorithm for polynomialization of non-polynomial system descriptions is presented below (see Algorithm 1). Thereby systems of the form
        
      
        
      
      
      
      
    
        are considered, where  are elementary functions and nested elementary functions, respectively. By elementary functions in this paper, we mean a fixed set of functions, each of which is the solution of a rational ordinary differential equation. The algorithm terminates since the system (1) consists of finitely many functions  and each of these functions is described by an ordinary differential equation of finite order.
        
| Algorithm 1 Rational recast [,] | 
  | 
The result of the recasting process is a system of the form
        
      
        
      
      
      
      
    
      
        
      
      
      
      
    
        with  and . Here, (2) results from the original description (1), with the non-polynomial terms  substituted by the newly introduced variables (). The subsystem (3) describes the temporal behavior of these variables. In addition to the newly introduced variables, constraints arise which have to be taken into account in the following considerations. Thereby the substitution  results in the constraint
        
      
        
      
      
      
      
    
        directly in the course of the recasting process. In addition, polynomial equations and inequality constraints often arise, whereby
        
      
        
      
      
      
      
    
      
        
      
      
      
      
    
        can be described. On the one hand, these result from the consideration of the possibly limited definition ranges
        
      
        
      
      
      
      
    
        and on the other hand from derived conditions of substitution (see Example 1 and Section 5). Here,  and  are column vectors of functions for which the corresponding equation and inequality conditions hold for each row.
The Algorithm 1 generally produces a rational system. However, polynomial descriptions are necessary for the introduced analysis tools. Therefore, let  be the principal denominator of  and . Thus, the functions  and  are also polynomials if  is polynomial. Moreover,  must hold, i.e., the sign of the principal denominator must not change. Thus,  and  as well as  and  always have the same sign. The procedure of that recasting process is now illustrated with an example taken from ([] Example 3.45).
Example 1. 
To illustrate the transformation process, the system
      
        
      
      
      
      
    is stabilized using the control law
      
        
      
      
      
      
    
The feedback results in the closed-loop system
      
        
      
      
      
      
    with an asymptotically stable equilibrium point .
For the polynomialization, the new variables  and  are introduced. With this substitution, we obtain the transformed system
      
        
      
      
      
      
    which has a polynomial vector field. It must be noted that  holds. Moreover, the definition of  gives rise to the condition . This condition is not in any polynomial form and therefore cannot be analyzed by the methods considered here. However, it is possible to convert this condition into the polynomial conditions
      
        
      
      
      
      
    
Summarizing, one obtains with
      
        
      
      
      
      
    a polynomial vector field with polynomial constraints.
2.2. Quantifier Elimination
Many stability criteria can be expressed as
        
      
        
      
      
      
      
    
        with the quantifiers . Here,  is a quantifier-free formula, which is derived from the Boolean combination of atomic formulas of the form
        
      
        
      
      
      
      
    
        with a polynomial  result. An expression of the form (13) is called a prenex formula with the quantified variables  and the free variables .
Formulas of the prenex form (13) are not very helpful for system analysis or design because they are not constructive. Rather, we are interested in the solution set expressed with the free variables Y. To this end, exploiting the fact that the quantifier-free formula  appearing in (13) describes an semialgebraic set, i.e., a subset of the real vector space  with  characterized by finitely many polynomial equations or inequalities. By the Tarski-Seidenberg theorem [,] the projections of such a semialgebraic set onto the subsets  along the coordinate axes are again semialgebraic sets. This projection property does not hold in general for purely algebraic sets described only by a finite number of polynomial equations.
Example 2. 
The equation
      
        
      
      
      
      
    describes an algebraic and thus also semialgebraic subset of , which geometrically represents a hyperbola. The projection of  from  onto x in  yields the inequalities
      
        
      
      
      
      
    and thus describes a semialgebraic but not an algebraic set.
Exploiting the projection property of semialgebraic sets, any prenex Formula (13) can be transformed into an equivalent quantifier-free formula. This transformation is called quantifier elimination (QE) []. In this process, after the projection from  into , the equations or inequalities occurring in  in  are evaluated and the results are projected back into . In doing so, one can check step by step for every single quantified variable  with  whether the respective quantifier-free formula is always satisfied in the case of the all quantifier (∀) or for at least one value in the case of the existential quantifier (∃). In quantifier elimination, all quantified variables are eliminated and an equivalent quantifier-free formula in the free variables is obtained. If all variables are quantified, a decision problem results which can only yield “true” or “false” as a result.
Example 3. 
Adding all of the quantifiers with respect to x to the quantifier-free Formula (15) from Example 2, we obtain the prenex formula
      
        
      
      
      
      
    
The projection (16) of (15) onto the x-axis does not contain the point , so it does not hold for all . Consequently, is the Formula (17) “false”. If, on the other hand, we complement (15) with the existential quantifier
      
        
      
      
      
      
    then the solution set is nonempty because of (16). The back projection from  to  and from  to  yields the quantifier-free formula  equivalent to (18).
The computation of the corresponding quantifier-free equivalent can be performed by different algorithms. Mentioned here are the cylindrical algebraic decomposition (CAD) []), the virtual substitution [] and the approaches based on the classification of real roots (RRC) of polynomials [,]. Numerous software tools are now available to perform quantifier elimination [,,]. For further details, please refer to the review article [].
Example 4. 
The question of the existence of a real root of a general quadratic polynomial can be expressed by the prenex formula
      
        
      
      
      
      
    with the quantified variable x and the free variables . The quantifier elimination yields the quantifier-free formula equivalent to (19)
      
        
      
      
      
      
    
2.3. Sum-of-Squares Decomposition
One way to numerically implement the definiteness tests associated with Lyapunov methods is the Sum-of-Squares Decomposition (SOS). It is checked whether a given polynomial can be decomposed into a sum of squares. From such a representation, definiteness properties can be read off, which are needed for the stability conditions.
Let  be the set of all polynomials in the considered variables. Then,
        
      
        
      
      
      
      
    
        denotes the set of SOS polynomials. From the definition (20) it follows immediately that every polynomial  is positive semidefinite. The converse case does not hold, because the so-called Motzkin polynomial []
        
      
        
      
      
      
      
    
        with  is positive definite, but cannot be represented as a sum of squares []. A more detailed consideration of the differences between positive definite and SOS polynomials can be found in [].
Each SOS polynomial can be expressed in the form
        
      
        
      
      
      
      
    
        with a positive semidefinite matrix Q and a vector  consisting of all monomials up to degree  []. The search for a positive semidefinite matrix Q can be transformed into a semidefinite optimization problem []. Efficient tools exist for solving such semidefinite programs: SeDuMi [], CSDP [], SDPNAL [], SDPNAL+ [], SDPA [], CDCS [], or SDPT3 []. The transformation of a SOS problem into a semidefinite program is possible with the toolbox SOSTOOLS under MATLAB (see Figure 1). For this purpose, the respective conditions formulated with SOS polynomials are defined under MATLAB. These can subsequently be transformed into a semidefinite program using SOSTOOLS. This program can then be solved with one of the previously mentioned tools. The solutions obtained in this way are thereupon transformed into the solution of the original SOS constraints by SOSTOOLS. Through this interaction of the individual tools, an efficient solving of SOS programs is possible.
      
    
    Figure 1.
      Relationship between the SOS program, the semidefinite program (SDP) and the MATLAB Toolbox SOSTOOLS [,].
  
The resulting semidefinite programs can in principle be solved in polynomial time. However, the size of these programs grows rapidly with the dimension of the state space, because the matrix Q of a polynomial in n variables with polynomial degree  has dimension . Therefore, when applying the sum-of-squares decomposition, thoughtful problem formulations are not only useful but also necessary.
3. Stability Analysis
3.1. Lyapunov’s Direct Method
In this section, we present how the previously introduced methods can be used to test nonlinear systems concerning different stability properties. For the following, autonomous time-invariant systems of the form
        
      
        
      
      
      
      
    
        are considered. Here,  is the state of the system (23) and  is a (locally) Lipschitz vector field. This is true for polynomial systems as a result of the mean value theorem of differential calculus. According to the theorem of Picard-Lindelöf, the Lipschitz condition guarantees the (local) existence and uniqueness of the solution of the system of differential Equation (23) [,].
To formulate the stability conditions, functions of class  and class  are introduced. A function  with  belongs to the class  if it is strictly increasing and  holds. A function  with  belongs to the class  if in addition  holds for  [,,].
For systems of the form (23), the stability of the equilibrium  can be analyzed using the direct method of Lyapunov [,].
Theorem 1 
(Lyapunov’s direct method). Let  be a equilibrium of (23) with a locally Lipschitz vector field f and . If there exists a continuously differentiable function  and functions , defined on , such that
      
        
      
      
      
      
    
      
        
      
      
      
      
    for all  holds, then the equilibrium is (locally) stable in the sense of Lyapunov. If in addition there exists a function α of class  defined on  such that
      
        
      
      
      
      
    is satisfied, then  is a (locally) asymptotically stable equilibrium. If  also holds, then the equilibrium is globally asymptotically stable.
In Equation (27), the (total) time derivative  of V along the solutions of the system (23) is described by the Lie derivative
        
      
        
      
      
      
      
    
        of the scalar field V in the direction of the vector field []. A function V satisfying the conditions of Theorem 1 is called a Lyapunov function.
Given a polynomial system (23), the procedures described in Section 2.2 and Section 2.3 can be used directly to verify the conditions of Theorem 1. For a system (2)–(6) polynomialized according to Section 2.1, some adjustments are necessary ([] Proposition 4):
Theorem 2 
(Lyapunov conditions for a recasted system). Let a system (2)–(6) with the main denominator  be given. Moreover, let  hold. Given a polynomial function , column vectors of polynomial functions , ; column vectors of SOS polynomials ,  and a scalar polynomial function ,  with suitable dimensions exist such that
      
        
      
      
      
      
    
      
        
      
      
      
      
    
      
        
      
      
      
      
    holds, then  is a stable equilibrium of the original system (1).
The proof of this theorem is given in []. The conditions presented in Theorem 2 suggest only stability and not asymptotic stability. This stems from the fact that the condition (30) requires only positive semidefiniteness. If it is to be tested for asymptotic stability, the negatively definite term , with , can be added to the condition (30). This would guarantee the corresponding negative definiteness of the time derivative.
To apply the theorem, the functions  and  in the form of multivariate polynomials of suitable order are chosen. The numerical determination of the coefficients of these polynomials is then possible using the methods presented in Section 2.3. The quantifier elimination described in Section 2.2 makes it possible to check the conditions from Theorem 1 by extending the resulting prenex formula with the constraints () resulting from the substitution.
3.2. Input-to-State Stability
The Input-to-State Stability (ISS) [,] extends the property of global asymptotic stability to systems of the form
        
      
        
      
      
      
      
    
        with a equilibrium  for , which means . The input  can be taken as both a manipulated variable and a disturbance. Let the input-dependent vector field F be continuous and locally Lipschitz in the first argument. The input-to-state stability is a generalization of the asymptotic stability, where in addition the influence of the input u is taken into account. In this paper, the input-to-state stability is introduced directly via the existence of a corresponding ISS-Lyapunov function [].
Definition 1 
(ISS-Lyapunov function). A continuously differentiable function  is called ISS-Lyapunov function for a system (31) if it satisfies the following conditions.
      
        
      
      
      
      
    
      
        
      
      
      
      
    with
      
        
      
      
      
      
    for all  and  with  and  is satisfied.
For  we obtain the asymptotic stability of the equilibrium at the origin. Alternatively, ISS-Lyapunov functions can also be defined by a so-called “dissipation” characterization ([] Remark 2.4):
Lemma 1 
(Alternative characterization). A continuously differentiable function  is an ISS-Lyapunov function for a system (31) if and only if it satisfies conditions
      
        
      
      
      
      
    
      
        
      
      
      
      
    for all  and  with  fulfilled.
3.3. Input-to-State Stability of the Recasted System
First, we consider the ISS property for polynomial systems. Afterward, these results are extended to non-polynomial systems.
For polynomial input-dependent vector fields F of the form (31), the statements (34) and (35) from Lemma 1 can be translated into the sufficient conditions
        
      
        
      
      
      
      
    
      
        
      
      
      
      
    
      
        
      
      
      
      
    
ISS analysis for such polynomial systems was performed by Ichihara []. Here, an SOS-compatible formulation for the comparison functions must be found, since any ISS condition is based on them. The following theorem [] provides a possible SOS condition for  functions.
Theorem 3. 
A univariate real even polynomial without a constant term
      
        
      
      
      
      
    with at least one coefficient , belongs to the class  if and only if
      
        
      
      
      
      
    holds for all .
It seems unusual that the condition (40) should be satisfied for all s as functions of norms are considered. This requirement follows the SOS procedure. Thus, it is verified that (40) is a sum of squares and thus must also hold for negative s.
To apply these considerations to transformed or polynomialized systems, the resulting peculiarities have to be taken into account. Thus, a function  which is a -function in the transformed coordinates is in general not a -function in the original coordinates x. The first requirement that must be ensured is that a -function passes through the coordinate origin. This can be achieved with
        
      
        
      
      
      
      
     Moreover, the resulting function is not a function in , but in . Thus, the function defined in (41) guarantees monotonicity and radial unboundedness in the transformed, but not in the original coordinates. The terms depending on  must therefore be estimated upward or downward with terms depending on  to overcome this problem. In the condition (36), a lower bound on the function  must be determined. It can be shown that  is an adequate comparison function for conditions (36) and (38) in the original coordinates if  is a comparison function in the transformed variables [,]. For the condition (37), however, an upward estimate is needed, which cannot be generalized but is straightforward to determine in most cases (cf. [] Table 2). Furthermore, if the polynomialization process is applied to systems of the form , the result is analogous to (2) and (3) a system
        
      
        
      
      
      
      
    
      
        
      
      
      
      
    
        as a polynomial description.
With these considerations, the following theorem can be formulated [,].
Theorem 4 
(ISS of the recasted system). Let the system (42) and (43) and functions , ,  and  be given. If there exist a polynomial function , column vectors of polynomial functions ,  and column vectors of SOS polynomials ,  with suitable dimensions such that
      
        
      
      
      
      
    
      
        
      
      
      
      
    
      
        
      
      
      
      
    for
      
        
      
      
      
      
    as well as the class  functions  and  holds, then the original system (31) is ISS if there exists a corresponding upward estimate for .
An application of this theorem can be found in ([] Example 3).
4. Controller Design
4.1. Control Lyapunov Function
Consider the system (31) with an equilibrium at the origin. In the controller design, the question arises whether this equilibrium can be stabilized with a state feedback
        
      
        
      
      
      
      
    
This problem leads to the concept of the control Lyapunov functions. In this generalization of the Lyapunov function, the focus is not on stability, but on stabilizability ([] Theorem 4.1).
Theorem 5 
A function V satisfying the conditions of Theorem 5 is called a control Lyapunov function (CLF). For an input affine system
        
      
        
      
      
      
      
    
        with vector fields , the function V along the system dynamics has the time derivative
        
      
        
      
      
      
      
    
Thus, the condition (49) can be expressed in the form
        
      
        
      
      
      
      
    
The condition (51) can also be specified via the expression
        
      
        
      
      
      
      
    
        if no access to the system dynamics is possible via the control input because of , the system must be stable in its dynamics (), see, e.g., [,]. Once a control Lyapunov function has been found for a given system (50), then the system can be stabilized via a state feedback (48) of the form
        
      
        
      
      
      
      
    
        with  and . To justify this, consider the time derivative of V along the solution of the closed-loop system
        
      
        
      
      
      
      
    
        which is negative definite. Thus, the closed-loop equilibrium  is globally asymptotically stable. The state feedback (53) is called Sontag’s formula [,]. Similar formulas are also obtained via other approaches, such as inverse or modified optimal control [,,] if the control Lyapunov function is known.
The question now arises whether a CLF V exists and respectively how such a function can be found. For this purpose, one sets up an approach  for a positive definite function with a parameter vector q, e.g., as a quadratic form
        
      
        
      
      
      
      
    
        where the vector q contains the free entries of the positive definite matrix P. The positive definiteness of the functions V is then ensured [] via Courant-Fischer’s theorem (minimum-maximum principle). As more general approaches, functions with even powers can be used [].
For a positive definite initial function  and a system of the form (31), the condition (49) can be expressed by the prenex formula
        
      
        
      
      
      
      
    
        and thus address it by quantifier elimination. Here, the statement (54) formulates a decision problem that verifies the suitability of the approach  as a CLF.
If after quantifier elimination it is evident that the conditions (54) or  (55) are satisfied, then the entries of the parameter vector q can be chosen as free variables and the admissible parameter values can be determined step by step. This is performed by successively removing the corresponding existential quantifiers at the individual elements of the vector q and performing quantifier elimination. As a result, in each case conditions arise to the now free variables. If a parameter configuration is chosen that satisfies these conditions, a CLF is created. Building on the CLF thus determined, a stabilizing feedback can then be designed using the law (53).
In principle, the concept of the control Lyapunov function can also be applied with SOS methods. For this purpose SOS-conditions for the construction of a CLF can be formulated [,] based on the positive position theorem ([] Theorem 4.2.2). However, this approach only allows for the verification of a concrete candidate V. If a CLF is to be constructed in this way, and thus the coefficients of V are to be treated as decision variables, bilinear constraints arise which significantly complicate the computation [,,].
4.2. ISS Control Lyapunov Function
The concept of the control Lyapunov function can also be applied to the ISS with respect to a disturbance. For this purpose, consider a system which, in addition to the control input u, is also influenced by a disturbance w. In the case with affinity to the input, the system can be described as follows
        
      
        
      
      
      
      
    
        by the vector fields . Definition 1 can be generalized as follows [,,]:
Definition 2 
(ISS Control Lyapunov Function). A continuously differentiable, positive definite and radially unbounded function  is called ISS control Lyapunov function (in short:ISS-CLF) if a function γ of class  exists such that for all  and all 
      
        
      
      
      
      
    holds.
Analogous to the condition (52) and (57) can be represented via
        
      
        
      
      
      
      
    
        as an equivalent formulation ([] Section II).
Once a corresponding ISS-CLF has been found, it is possible to use feedback (53) with  and , an ISS closed-loop can be generated with respect to the disturbance w.
To determine adequate feedback employing quantifier elimination, one uses a positive definite approach function  and a suitable approach for the comparison function  with a parameter vector q or c. The suitability of the approach functions used can then be determined by applying quantifier elimination to the prenex formula
        
      
        
      
      
      
      
    
        respectively,
        
      
        
      
      
      
      
    
        can be determined. There may be other constraints to consider to the parameters, for example, to ensure positive definiteness of V or monotonicity of . For example,  must hold for  to be positive definite.
5. Examples
5.1. Furuta Pendulum
In this example, the Furuta pendulum [,] is considered. The basic structure of this pendulum is shown in Figure 2. In this example we focus on the stability analysis of this system, for this we assumed that the arm of length  rotates with a constant angular velocity . Under these assumptions, we obtain the state-space model
        
      
        
      
      
      
      
    
        where the angle  and the angular velocity  of the pendulum are the state variables. For , the points  are the equilibria of the system.
      
    
    Figure 2.
      Furuta pendulum.
  
In the following, the equilibrium  is to be tested for stability. For this, the system must be polynomialized both for the sum-of-squares decomposition and for quantifier elimination. For this purpose, the new variables  are introduced, which points to the polynomial state space model
        
      
        
      
      
      
      
    
        with the algebraic constraint
        
      
        
      
      
      
      
    
To prove the stability of the system with Theorem 2, candidate functions for  and  have to be chosen. For  and  a polynomial consisting of all monomials up to order 2 is applied. As a first step, , consisting of the squared variables and an absolute term , is chosen as the approach for the function . To satisfy the condition (28),  must hold, which is considered as an equality constraint in the SOS program. To ensure positive definiteness of , the function  with  is also chosen. If one applies Theorem 2 using SOSTOOLS with these initial functions, the problem cannot be solved. On the other hand, if one introduces an additional term  into the approach , one obtains a solvable SOS program. In this case, the equation  must also be taken into account. Since in the original x-coordinates, the relation  results and thus for (28) the condition  must hold. This leads with the parameters ,  and  to the solution  and thus to the Lyapunov function
        
      
        
      
      
      
      
    
        in original coordinates. The numerical values were rounded to two decimal places. It is noticeable that this function no longer contains the term  since the associated coefficient is almost zero. For the time derivative, we obtain
        
      
        
      
      
      
      
    
        which is consistent with the physical notion. Thus, the system is stable but not asymptotically stable.
With an additional friction term , the asymptotic stability can be obtained by continuous energy extraction. This results in the state space model
        
      
        
      
      
      
      
    
Using the same procedure as in the frictionless case and , the Lyapunov function
        
      
        
      
      
      
      
    
        is calculated, which is related to the time derivative . Using the invariance principle of LaSalle [,,] one can conclude asymptotic stability.
As an alternative to determining a Lyapunov function with SOS programming, QE can also be used. In this specific case, this can be performed using the prenex formula
        
      
        
      
      
      
      
    
      
        
      
      
      
      
    
The application of the QE process confirms the validity of the decision problem formulated in this manner, as anticipated by the SOS analysis. Consequently, the Lyapunov approach  is deemed suitable. During the SOS considerations, it was observed that the term  does not appear in the resulting Lyapunov function. Therefore, this term is not further considered, and we focus on the investigation of the approach . In order to establish a concrete Lyapunov function, the successive existential quantifiers can be eliminated for each . Since  must hold, ,  and  can be chosen as examples. With these assumptions, the result for the prenex formula
        
      
        
      
      
      
      
    
        is also “true” so that the assumptions made are valid. If, in addition, the existential quantifiers at  and  are removed, these become free variables, and the quantifier-free formula
        
      
        
      
      
      
      
    
        is obtained for the frictionless system which, with  and , leads to the Lyapunov function
        
      
        
      
      
      
      
    
        with time derivative . If instead ,  and  are applied, (64) results in the equivalent quantifier-free formula
        
      
        
      
      
      
      
    
        from which, with  and , we obtain the Lyapunov function
        
      
        
      
      
      
      
    
This function also has the time derivative  according to the physical notion.
With the two Lyapunov functions thus computed, the time derivative  and , respectively, are obtained for the system with friction.
This example illustrates the systematic differences in the application of the two methods presented. In the SOS method, the functions , , and  result in additional degrees of freedom, which have to be selected via candidate functions. From the assumptions made for the individual functions, an optimization problem is formulated, which is solved by a corresponding numerical algorithm. This is accompanied by a limited accuracy of the solution. This requires a subsequent critical interpretation of the results. With QE, on the other hand, the constraints can be considered directly and the additional functions , , and  are omitted. Additionally, the generated results are mathematically exact. However, the algorithms used to solve QE problems are extremely computationally expensive, so they can only be reasonably applied to a limited number of problems.
5.2. Van de Vusse-Reaction
The van de Vusse reaction ,  with reactants  in an isothermal stirred tank reactor can be described by the differential equations [,]
        
      
        
      
      
      
      
     Here,  and  denote the concentrations of reactants A and B in the reactor,  denotes the concentration of reactant A supplied,  denotes the feed rate,  denotes the reactor volume, and  denote the reaction rates. The model normalized around the operating point studied in ([] Section 5.2)
        
      
        
      
      
      
      
    
        is in the form (50). The state variables  and  describe deviations from target concentrations. The system is affected by the input u (inflow rate).
To evaluate (55), we obtain the quantifier-free expression
        
      
        
      
      
      
      
    
Here, the positive definiteness of (66) is achieved via the condition . The remaining terms correspond to the expression (55). To check whether the approach (66) is suitable as CLF for the system (65), all variables () must be quantified. Once all variables are quantified, the QE process leads only to the statements “true” or “false” and a decision problem results. In the case considered here, this problem can be solved by the prenex formula
        
      
        
      
      
      
      
    
        which can be transformed by QE to the statement “true”. Thus, the proof for the suitability of the approach (66) as CLF is given.
To determine a CLF, an admissible value for q must be computed. This is performed by removing the existential quantifier  from Formula (68) before the QE process. The removal of the existential quantifier leads to the prenex formula:
      
        
      
      
      
      
    
The Formula (69) can be transformed by a QE process into an equivalent quantifier-free expression in the now free variable q:
      
        
      
      
      
      
    
The cubic polynomial appearing in this expression has the real roots , , and . Thus, for , the condition (70) is satisfied. Hence, in this admissible parameter interval (66) is a control Lyapunov function. The equilibrium  of the system (65) can therefore be stabilized, for example, with feedback (53). Figure 3 shows the phase plane of the controlled system, where the parameter  was used for the control Lyapunov function.
      
    
    Figure 3.
      Phase plane of the controlled system (65).
  
6. Discussion
This paper addresses the systematic and constructive Lyapunov approaches to stability analysis and control design for both polynomial and non-polynomial dynamical systems. The fundamental methodologies, namely sum-of-squares decomposition and quantifier elimination, are briefly introduced and their application to the corresponding control engineering problems is demonstrated. The paper explains how the limitation to polynomial systems can be overcome through a polynomializing transformation, leading to distinct approaches for the two methods. In the case of sum-of-squares decomposition, the constraints arising from the transformation are considered by employing a multiplier approach within the optimization problem. This introduces additional degrees of freedom. So that although SOS programs can in principle be solved in polynomial time, the degrees of freedom result in extremely large optimization problems. Thus, the application of the methodology is mostly limited to systems of dimensions 6 to 8.
On the other hand, quantifier elimination directly incorporates the arising constraints through Boolean linkage. However, the algorithmic implementations of quantifier elimination are computationally intensive, so the computational effort sometimes grows double exponentially with the number of variables. It has been shown that by the development of new algorithms and software tools in the last years, a wide spectrum of problems can be treated anyway. In particular, very good results could be obtained by combining different tools. Nevertheless, the inherent number of variables and the system dimensions present insurmountable hurdles. According to our assessment, the application of quantifier elimination is limited to systems of dimensions 2 to 6. On the other hand, quantifier elimination allows the treatment of more general system, e.g., with non-smooth nonlinearities such as the absolute value or the sign function.
The practical application of the presented approaches is exemplified through the Furuta pendulum and the van de Vusse reaction. Furthermore, it has been previously demonstrated that SOS methods can also be employed to investigate incremental stability properties [,]. The acquired knowledge will be expanded to encompass other stability properties in future research, such as output-state stability [], input-output-state stability [], and integral input-state stability []. Additionally, the focus extends to design approaches, including forthcoming work on backstepping and sliding-mode methods. The above limitations concerning the dimensions of the systems can potentially be relaxed by combining our approaches with successive design techniques such as backstepping [].
7. Conclusions
Lyapunov’s second method, which was published more than 100 years ago, represented a pioneering approach to the analysis of nonlinear systems. Starting with the stability analysis of an equilibrium point, this approach was expanded in a variety of ways to control engineering problems and questions.
The main disadvantage of the Lyapunov-like theorems is that they are not constructive. The practical use of Lyapunov methods usually requires a considerable understanding of the system under consideration. Numerous approaches have been developed in recent decades to alleviate this difficulty. In this article, two more approaches to allow the practical use of Lyapunov methods have been discussed.
Author Contributions
Conceptualization, R.V. and K.R.; methodology, R.V. and K.R.; software, R.V. and K.R.; validation, K.R.; writing—original draft preparation, R.V.; writing—review and editing, K.R.; supervision, K.R. All authors have read and agreed to the published version of the manuscript.
Funding
This research received no external funding.
Institutional Review Board Statement
Not applicable.
Informed Consent Statement
Not applicable.
Data Availability Statement
Not applicable.
Conflicts of Interest
The authors declare no conflict of interest.
References
- Kalman, R.E.; Bertram, J.E. Control system analysis and design via the “Second Method” of Lyapunov: I Continuous-time systems. J. Basic Engeineering 1960, 82, 371–393. [Google Scholar] [CrossRef]
 - Hahn, W. Stability of Motion; Springer: Berlin/Heidelberg, Germany, 1967. [Google Scholar]
 - Slotine, J.J.E.; Li, W. Applied Nonlinear Control; Prentice-Hall: Englewood Cliffs, NJ, USA, 1991. [Google Scholar]
 - Khalil, H.K. Nonlinear Systems, 3rd ed.; Prentice Hall: Upper Saddle River, NJ, USA, 2002. [Google Scholar]
 - Adamy, J. Nichtlineare Systeme und Regelungen, 3rd ed.; Springer: Berlin/Heidelberg, Germany, 2018. [Google Scholar]
 - Sontag, E.; Teel, A. Changing supply functions in input/state stable systems. IEEE Trans. Autom. Control 1995, 40, 1476–1478. [Google Scholar] [CrossRef]
 - Sontag, E.D.; Wang, Y. On Characterization of the Input-to-State Stability Property. Syst. Control Lett. 1995, 24, 351–359. [Google Scholar] [CrossRef]
 - Sontag, E.D.; Wang, Y. New characterizations of input-to-state stability. IEEE Trans. Autom. Control 1996, 41, 1283–1294. [Google Scholar] [CrossRef]
 - Sontag, E.D. A ‘universal’ construction of Artstein’s theorem on nonlinear stabilization. Syst. Control Lett. 1989, 13, 117–123. [Google Scholar] [CrossRef]
 - Artstein, Z. Stabilization with relaxed controls. Nonlinear Anal. 1983, 7, 1163–1173. [Google Scholar] [CrossRef]
 - Sepulchre, R.; Janković, M.; Kokotović, P. Constructive Nonlinear Control; Springer: London, UK, 1997. [Google Scholar]
 - Bellman, R. Vector Lyapunov functions. J. Soc. Ind. Appl. Math. Ser. A Control 1962, 1, 32–34. [Google Scholar] [CrossRef]
 - Nersesov, S.G.; Haddad, W.M. On the stability and control of nonlinear dynamical systems via vector Lyapunov functions. IEEE Trans. Autom. Control 2006, 51, 203–215. [Google Scholar] [CrossRef]
 - Lakshmikantham, V.; Matrosov, V.M.; Sivasundaram, S. Vector Lyapunov Functions and Stability Analysis of Nonlinear Systems; Springer: Dortrecht, The Netherlands, 1991; Volume 63 of Mathematics and Its Applications. [Google Scholar]
 - Rudolph, J. Rekursiver Entwurf stabiler Regelkreise durch sukzessive Berücksichtigung von Integratoren und quasi-statische Rückführungen. Automatisierungstechnik 2005, 53, 389–399. [Google Scholar] [CrossRef]
 - Yegorov, I.; Dower, P.M.; Grüne, L. Synthesis of control Lyapunov functions and stabilizing feedback strategies using exit-time optimal control Part II: Numerical approach. Optim. Control Appl. Methods 2021, 42, 1410–1440. [Google Scholar] [CrossRef]
 - Grüne, L.; Sperl, M. Examples for separable control Lyapunov functions and their neural network approximation. IFAC-PapersOnLine 2023, 56, 19–24. [Google Scholar] [CrossRef]
 - Taylor, A.J.; Dorobantu, V.D.; Le, H.M.; Yue, Y.; Ames, A.D. Episodic learning with control Lyapunov functions for uncertain robotic systems. In Proceedings of the International Conference on Intelligent Robots and Systems (IROS), Macau, China, 3–8 November 2019; pp. 6878–6884. [Google Scholar]
 - Voßwinkel, R.; Röbenack, K. Determining input-to-state and incremental input-to-state stability of nonpolynomial systems. Int. J. Robust Nonlinear Control. 2020, 30, 4676–4689. [Google Scholar] [CrossRef]
 - Voßwinkel, R.; Mihailescu-Stoica, D.; Schrödel, F.; Röbenack, K. Determining Passivity via Quantifier Elimination. In Proceedings of the 27th Mediterranean Conference on Control and Automation (MED), Akko, Israel, 1–4 July 2019; pp. 13–18. [Google Scholar] [CrossRef]
 - Röbenack, K.; Voßwinkel, R.; Franke, M. On the Eigenvalue Placement by Static Output Feedback Via Quantifier Elimination. In Proceedings of the Mediterranean Conference on Control and Automation (MED’18), Zadar, Croatia, 19–22 June 2018; pp. 133–138. [Google Scholar] [CrossRef]
 - Röbenack, K.; Voßwinkel, R. Static Output Feedback Control by Interval Eigenvalue Placement using Quantifier Elimination. SWIM 2018, 2018, 11. [Google Scholar]
 - Röbenack, K.; Voßwinkel, R.; Franke, M.; Franke, M. Stabilization by Static Output Feedback: A Quantifier Elimination Approach. In Proceedings of the International Conference on System Theory, Control and Computing (ICSTCC 2018), Sinaia, Romania, 10–12 October 2018; pp. 715–721. [Google Scholar] [CrossRef]
 - Chesi, G. Domain of Attraction-Analysis and Control via SOS Programming; Springer: Berlin/Heidelberg, Germany, 2011. [Google Scholar]
 - Röbenack, K.; Voßwinkel, R.; Richter, H. Calculating Positive Invariant Sets: A Quantifier Elimination Approach. J. Comput. Nonlinear Dyn. 2019, 14, 074502. [Google Scholar] [CrossRef]
 - Röbenack, K.; Voßwinkel, R.; Richter, H. Automatic Generation of Bounds for Polynomial Systems with Application to the Lorenz System. Chaos Solitons Fractals 2018, 113C, 25–30. [Google Scholar] [CrossRef]
 - She, Z.; Xia, B.; Xiao, R.; Zheng, Z. A semi-algebraic approach for asymptotic stability analysis. Nonlinear Anal. Hybrid Syst. 2009, 3, 588–596. [Google Scholar] [CrossRef]
 - Tibken, B. Estimation of the domain of attraction for polynomial systems via LMIs. In Proceedings of the Proc. of the 39th IEEE Conference on Decision and Control (CDC), Sydney, NSW, Australia, 12–15 December 2000; Volume 4, pp. 3860–3864. [Google Scholar] [CrossRef]
 - Savageau, M.A.; Voit, E.O. Recasting nonlinear differential equations as S-systems: A canonical nonlinear form. Math. Biosci. 1987, 87, 83–115. [Google Scholar] [CrossRef]
 - Papachristodoulou, A.; Prajna, S. Analysis of Non-polynomial Systems Using the Sum of Squares Decomposition. In Positive Polynomials in Control; Springer: Berlin/Heidelberg, Germany, 2005; pp. 23–43. [Google Scholar]
 - Tarski, A. A decision method for elementary algebra and geometry. In Quantifier Elimination and Cylindrical Algebraic Decomposition; Caviness, B.F., Johnson, J.R., Eds.; Springer: Vienna, Austria, 1998; pp. 24–84. [Google Scholar]
 - Seidenberg, A. A New Decision Method for Elementary Algebra. Ann. Math. 1954, 60, 365–374. [Google Scholar] [CrossRef]
 - Caviness, B.F.; Johnson, J.R. (Eds.) Quantifier Elimination and Cylindical Algebraic Decomposition; Springer: Vienna, Austria, 1998. [Google Scholar]
 - Collins, G.E. Quantifier elimination for real closed fields by cylindrical algebraic decomposition—Preliminary report. ACM SIGSAM Bull. 1974, 8, 80–90. [Google Scholar] [CrossRef]
 - Weispfenning, V. Quantifier Elimination for Real Algebra—The Cubic Case. In Proceedings of the Proc. of the Int. Symp. on Symbolic and Algebraic Computation (ISSAC), Oxford, UK, 20–22 July 1994; pp. 258–263. [Google Scholar] [CrossRef]
 - Gonzalez-Vega, L.; Lombardi, H.; Recio, T.; Roy, M.F. Sturm-Habicht Sequence. In Proceedings of the Proc. of the ACM-SIGSAM 1989 International Symposium on Symbolic and Algebraic Computation, Portland, OR, USA, 17–19 July 1989; pp. 136–146. [Google Scholar] [CrossRef]
 - Iwane, H.; Yanami, H.; Anai, H.; Yokoyama, K. An effective implementation of symbolic-numeric cylindrical algebraic decomposition for quantifier elimination. Theor. Comput. Sci. 2013, 479, 43–69. [Google Scholar] [CrossRef]
 - Dolzmann, A.; Sturm, T. Redlog: Computer algebra meets computer logic. ACM SIGSAM Bull. 1997, 31, 2–9. [Google Scholar] [CrossRef]
 - Chen, C.; Maza, M.M. Quantifier elimination by cylindrical algebraic decomposition based on regular chains. J. Symb. Comput. 2016, 75, 74–93. [Google Scholar] [CrossRef]
 - Anai, H.; Yanami, H. SyNRAC: A Maple-Package for Solving Real Algebraic Constraints. In Computational Science — ICCS 2003: International Conference, Melbourne, Australia and St. Petersburg, Russia, 2–4 June 2003; Part I; Lecture Notes in Computer Science; Sloot, P.M.A., Abramson, D., Bogdanov, A.V., Dongarra, J.J., Zomaya, A.Y., Gorbachev, Y.E., Eds.; Springer: Berlin/Heidelberg, Germany, 2003; Volume 2657, pp. 828–837. [Google Scholar]
 - Röbenack, K.; Voßwinkel, R. Solution of control engineering problems by means of quantifier elimination (in German). Automatisierungstechnik 2019, 67, 714–726. [Google Scholar] [CrossRef]
 - Motzkin, T.S. The arithmetic-geometric inequality. In Proceedings of the Inequalities (Proc. Sympos. Wright-Patterson Air Force Base); Academic Press: New York, NY, USA, 1967; pp. 205–224. [Google Scholar]
 - Reznick, B. Some concrete aspects of Hilbert’s 17th problem. Contemp. Math. 2000, 253, 251–272. [Google Scholar]
 - Chesi, G. On the Gap Between Positive Polynomials and SOS of Polynomials. IEEE Trans. Autom. Control 2007, 52, 1066–1072. [Google Scholar] [CrossRef]
 - Parrilo, P.A. Structured Semidefinite Programs and Semialgebraic Geometry Methods in Robustness and Optimization. Ph.D. Thesis, California Institute of Technology, Pasadena, CA, USA, 2000. [Google Scholar]
 - Sturm, J.F. Using SeDuMi 1.02, A Matlab toolbox for optimization over symmetric cones. Optim. Methods Softw. 1999, 11, 625–653. [Google Scholar] [CrossRef]
 - Borchers, B. CSDP, A C library for semidefinite programming. Optim. Methods Softw. 1999, 11, 613–623. [Google Scholar] [CrossRef]
 - Zhao, X.; Sun, D.; Toh, K. A Newton-CG Augmented Lagrangian Method for Semidefinite Programming. SIAM J. Optim. 2010, 20, 1737–1765. [Google Scholar] [CrossRef]
 - Yang, L.; Sun, D.; Toh, K.C. SDPNAL +: A majorized semismooth Newton-CG augmented Lagrangian method for semidefinite programming with nonnegative constraints. Math. Program. Comput. 2015, 7, 331–366. [Google Scholar] [CrossRef]
 - Yamashita, M.; Fujisawa, K.; Kojima, M. Implementation and evaluation of SDPA 6.0 (Semidefinite Programming Algorithm 6.0). Optim. Methods Softw. 2003, 18, 491–505. [Google Scholar] [CrossRef]
 - Zheng, Y.; Fantuzzi, G.; Papachristodoulou, A.; Goulart, P.; Wynn, A. CDCS: Cone Decomposition Conic Solver, Version 1.1. Available online: https://github.com/oxfordcontrol/CDCS (accessed on 11 July 2018).
 - Toh, K.C.; Todd, M.J.; Tütüncü, H.R. On the Implementation and Usage of SDPT3—A Matlab Software Package for Semidefinite-Quadratic-Linear Programming, Version 4.0. In Handbook on Semidefinite, Conic and Polynomial Optimization; Springer: New York, NY, USA, 2012; pp. 715–754. [Google Scholar]
 - Prajna, S.; Papachristodoulou, A.; Parrilo, P.A. Introducing SOSTOOLS: A general purpose sum of squares programming solver. In Proceedings of the Proceedings of the 41st IEEE Conference on Decision and Control, Las Vegas, NV, USA, 10–13 December 2002; pp. 741–746. [Google Scholar]
 - Voßwinkel, R. Systematische Analyse und Entwurf von Regelungseinrichtungen auf Basis von Lyapunov’s Direkter Methode; Springer Vieweg: Wiesbaden/Heidelberg, Germany, 2019. [Google Scholar]
 - Arnold, V.I. Ordinary Differential Equations; Springer: Berlin/Heidelberg, Germany, 1992. [Google Scholar]
 - Isidori, A. Nonlinear Control Systems II; Springer: London, UK, 1999. [Google Scholar]
 - Ichihara, H. Sum of Squares Based Input-to-State Stability Analysis of Polynomial Nonlinear Systems. SICE J. Control. Meas. Syst. Integr. 2012, 5, 218–225. [Google Scholar] [CrossRef]
 - Sontag, E.D. Mathematical Control Theory, 2nd ed.; Texts in Applied Mathematics; Springer: New York, NY, USA, 1998; Volume 6 of Text in Applied Mathematics. [Google Scholar]
 - Freeman, R.A.; Primbs, J.A. Control Lyapunov functions: New ideas from an old source. In Proceedings of the IEEE Conference on Decision and Control (CDC), Kobe, Japan, 13 December 1996; pp. 3926–3931. [Google Scholar]
 - Freeman, R.A.; Kokotovic, P.V. Inverse optimality in robust stabilization. SIAM J. Control Optim. 1996, 34, 1365–1391. [Google Scholar] [CrossRef]
 - Sackmann, M. Modifizierte Optimale Regelung—Stabilitätsorientierter nichtlinearer Reglerentwurf. Automatisierungstechnik 2005, 53, 367–377. [Google Scholar] [CrossRef]
 - Tan, W. Nonlinear Control Analysis and Synthesis using Sum-of-Squares Programming. Ph.D. Thesis, University of California, Berkeley, CA, USA, 2006. [Google Scholar]
 - Tan, W.; Packard, A. Searching for Control Lyapunov Functions using Sums of Squares Programming. In Proceedings of the 42nd Annual Allerton Conference on Communications, Control and Computing, Monticello, IL, USA, 29 September–1 October 2004; pp. 210–219. [Google Scholar]
 - Bochnak, J.; Coste, M.; Roy, M.F. Real Algebraic Geometry; Springer: Berlin/Heidelberg, Germany; New York, NY, USA, 1998. [Google Scholar]
 - Jarvis-Wloszek, Z.; Feeley, R.; Tan, W.; Sun, K.; Packard, A. Some controls applications of sum of squares programming. In Proceedings of the 42nd IEEE International Conference on Decision and Control, Maui, HI, USA, 9–12 December 2003; pp. 4676–4681. [Google Scholar]
 - Krstić, M.; Li, Z.H. Inverse optimal design of input-to-state stabilizing nonlinear controllers. IEEE Trans. Autom. Control 1998, 43, 336–350. [Google Scholar] [CrossRef]
 - Liberzon, D.; Sontag, E.D.; Wang, Y. Universal construction of feedback laws achieving ISS and integral-ISS disturbance attenuation. Syst. Control Lett. 2002, 46, 111–127. [Google Scholar] [CrossRef]
 - Lasalle, J.P. Some Extensions of Liapunov’s Second Method. IRE Trans. Circuit Theory 1960, 7, 520–527. [Google Scholar] [CrossRef]
 - Gerbet, D.; Röbenack, K. Application of LaSalle’s Invariance Principle on Polynomial Differential Equations using Quantifier Elimination. IEEE Trans. Autom. Control 2021, 67, 3590–3597. [Google Scholar] [CrossRef]
 - van de Vusse, J.G. Plug-flow type reactor versus tank reactor. Chem. Eng. Sci. 1964, 19, 994–997. [Google Scholar] [CrossRef]
 - Doyle III, F.J.; Ogunnaike, B.A.; Pearson, R.K. Nonlinear Model-based Control Using Second-order Volterra Models. Automatica 1995, 31, 697–714. [Google Scholar] [CrossRef]
 - Sontag, E.D.; Wang, Y. Output-to-state stability and detectability of nonlinear systems. Syst. Control Lett. 1997, 29, 279–290. [Google Scholar] [CrossRef]
 - Krichman, M.; Sontag, E.D.; Wang, Y. Lyapunov characterisations of input-output-to-state stability. In Proceedings of the 38th IEEE Conf. on Decision and Control (CDC), Phoenix, AZ, USA, 7–10 December 1999; Volume 3, pp. 2070–2075. [Google Scholar] [CrossRef]
 - Angeli, D.; Sontag, E.D.; Wang, Y. A characterization of integral input-to-state stability. IEEE Trans. Autom. Control 2000, 45, 1082–1097. [Google Scholar] [CrossRef]
 
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.  | 
© 2023 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).