Abstract
Global quadratic stability and performance in probability (quadratic stability and gain in probability: abbreviated as GQ-P) is studied for switched systems consisting of linear stochastic subsystems with norm-bounded uncertainties. Under the assumption that there is no single subsystem achieving GQ-P, it is shown that if there exists a convex combination of subsystems achieving GQ-P, then a state-dependent switching law, based on the convex combination of subsystems, is proposed under which the switched system achieves GQ-P. Then, the discussion is extended to the case involving state feedback controller gain. A numerical example and the application to DC–DC boost converters are provided to demonstrate the proposed design condition and the algorithm.
1. Introduction
In the last three decades, there has been extensive interest and quantities of papers in switched systems, which are regarded to be good models representing practical systems; refer to [1,2,3,4,5,6,7] and the references therein. It is well-known that there are three basic problems in the area of switched systems and control, and the third one (most challenging problem) is to design a stabilizing switching law (strategy) for the case where each single subsystem is not stable as desired. When the switched linear systems are composed of unstable LTI deterministic subsystems, there are a few existing results. In [8,9], it is shown that if there exists a stable convex combination of subsystem matrices, then there exists a state-dependent switching rule quadratically stabilizing the switched system. For switched continuous-time and discrete-time linear systems with polytopic uncertainties, quadratic stabilizability via state-dependent switching has been discussed [10]. Ref. [11] investigates quadratic stability/stabilization of a class of switched nonlinear systems by using a nonlinear programming (Karush–Kuhn–Tucker condition) approach. Ref. [12] extends the discussion and results in [8,9] to achieve quadratic stability for switched linear systems with norm-bounded uncertainties, and a state-dependent switching law has been proposed for quadratic stabilization.
Recently, the results in [8,9] were extended in Ref. [13] to quadratic stabilization of switched linear systems where norm-bounded uncertainties exist in the subsystems. In that context, a convex combination of subsystems is defined including the subsystem matrices and the matrices denoting uncertainties, and is represented by a condition of norm. It was shown in [13] that if we manage to obtain such a convex combination of subsystems, which is Hurwitz, and the norm is smaller than the specified value, we can design a state-dependent switching law such that the switched system is quadratically stable, even though each subsystem is not. The convex combination approach was further discussed for switched affine systems in [14], and later extended to quadratic stabilization of switched uncertain stochastic systems (SUSS) by state- and output-dependent switching laws in [15,16].
Encouraged by these existing contribution, we here aim to study the convex combination approach developed in [8,9,13,15,16] for global quadratic performance in probability (quadratic stability and gain in probability: abbreviated as GQ-P) for SUSSs, which consist of a finite number of linear stochastic subsystems where there are norm-bounded uncertainties. As in the above literature, we challenge the third basic problem, i.e., we consider the situation that for a specified positive scalar , there is no subsystem that achieves GQ-P. For our control problem, we define a new convex combination of subsystems that incorporates the norm-bounded uncertainties, gain, and stochastic disturbance attenuation in an integrated manner. This is a major extension to the existing convex combination approach. If we can obtain such a convex combination of subsystems that achieves GQ-P, then we propose a switching law using the Lyapunov matrix obtained by the convex combination system matrices, and prove the SUSS achieves GQ-P under the switching law. When it is difficult to find such an appropriate convex combination, we proceed to consider designing the state feedback controller for each subsystem so that the convex combination approach may be applied for the closed-loop subsystems.
The outline of this manuscript is as follows. Some preliminaries are first recalled in Section 2 for general and linear stochastic control systems, quadratic stability, and quadratic performance in probability; then, the control problem in this paper is formulated. Next, Section 3 introduces the new convex combination of subsystems and proposes a state-dependent switching law for the SUSS under consideration. It is shown that if we can obtain a convex combination of subsystems that achieves GQ-P, then a state-dependent switching law can be designed such that the SUSS achieves GQ-P. A numerical example is provided to show effectiveness of the proposed method. In Section 4, the simultaneous design of state feedback controllers and state-dependent switching laws is studied so that more flexibility is earned for the control system, and the application to a type of DC–DC boost converters is dealt with. Finally, Section 5 concludes the paper.
| Notations | Descriptions |
| n-dimensional Euclidean space | |
| Identity matrix of size | |
| transpose of A | |
| trace of square matrix A | |
| W is symmetric and positive (negative) definite | |
| W is symmetric and non-negative (non-positive) definite | |
| expectation value of a random variable | |
| A is Hurwitz | all eigenvalues of A have negative real parts |
| SUSS | Switched uncertain stochastic systems |
| GQS-P (GAS-P) | globally quadratically (asymptotically) stable in probability |
| GQ-P | global quadratic performance in probability |
2. Preliminary Results and Problem Formulation
We first recall some stability results concerning stochastic control systems. For a more detailed description, refer to, for example, Ref. [17]. At the end of this section, we explain the control problem considered in this paper.
Let us start with the general stochastic system
where is the state, is an r-dimensional normalized Wiener process defined on an appropriate probability space, and is a stochastic differential of . is the vector field, is the diffusion rate matrix function, and both functions are locally Lipschitz satisfying , . Similar to the Lyapunov stability theory [18] for deterministic systems, the following theorem provides the Lyapunov stability condition for the stochastic system (1).
Lemma 1
([19]). If there exist a function , two class functions and , and a class function , satisfying
then, the equilibrium of (1) is globally asymptotically stable in probability (GAS-P).
If the function in Lemma 1 is obtained having the form , where , we say the equilibrium of the system (or simply the system) is globally quadratically stable in probability (GQS-P). Actually, when f and g in (1) are linear with respect to x, i.e., taking the form of
where are constant matrices, we can consider a candidate quadratic Lyapunov function with for it. Translating Lemma 1 with this and , we obtain the following result.
Lemma 2.
If there exists a matrix satisfying the linear matrix inequality (LMI) [20]
then, the equilibrium of (2) is GQS-P.
Now, we deal with the case of involving uncertainties in the stochastic system (2) as
where are constant matrices, denotes the norm-bounded uncertainty and assumes without losing generality. According to Lemma 2, the equilibrium of (4) is GQS-P if there exists a matrix satisfying
for any within the norm bound.
The next well-known lemma is used to analyze the matrix inequality (5).
Lemma 3
([21]). Assume that and are constant matrices. Then,
holds for any satisfying .
Using the above lemma and the Schur complement lemma for the matrix inequality (5), we obtain the following result.
Lemma 4.
Next, we consider the following uncertain stochastic system, which corresponds to the system (4) with disturbance input and controlled output.
Here, is the disturbance input; is the controlled output; and are constant matrices with proper dimension.
Definition 1.
The system (8) is said to achieve global quadratic performance in probability (GQ-P) if it is GQS-P, and moreover, when ,
holds for any time and any disturbance input satisfying .
Lemma 5.
([19]). If there exists a matrix satisfying the LMI
or equivalently,
then, the system (8) achieves GQ-P.
With the above preparation, we now proceed to describe our control problem in detail. Consider the switched uncertain stochastic system (SUSS)
where is the state, is the disturbance input, is the controlled output, and and are the same as in (1). The switching law (signal) determines the index number of the active subsystem at every time instant, where is the index set. Thus, there are subsystems that may be activated, and the dynamics of the i-th subsystem is represented by
where , , , , are constant matrices and denotes the norm-bounded uncertainty as in (4). It is assumed, as in the literature, that there is no jump in state x at the switching instants.
The control problem is formulated as follows: For given , design a state-dependent switching law such that the SUSS (12) achieves GQ-P.
If there is one subsystem in (13) achieving GQ-P, we can choose to activate that subsystem for all time (without any switching) and, certainly, the switched system has the same performance. If there are more than two subsystems in (13) achieving GQ-P, we may discuss the average dwell time approach [22,23,24] and multiple/piecewise Lyapunov functions approach [25,26,27]. Since we are here challenging the third basic problem in switched systems and control, we assume the following throughout this paper.
Assumption 1.
There is NO single subsystem in (13) achieving GQ-P in the sense of Lemma 5. Alternatively, there is NOT any subsystem such that there exists satisfying the LMI
or equivalently,
3. Convex Combination Based State-Dependent Switching Law
In this section, we define our new convex combination of subsystems and then design the state-dependent switching law, based on the convex combination, such that the SUSS (12) achieves GQ-P. A numerical example is then provided to illustrate the approach.
3.1. Design Condition and Switching Law
To describe our design condition, we first define the convex combination system of the subsystems in (13) as
where
, , , are constant matrices satisfying
and () are non-negative scalars satisfying .
Remark 1.
For given ’s, ’s, ’s, ’s in the subsystems and ’s, the matrices , , , and satisfying (18) can be computed efficiently by using Cholesky decomposition method, which was numerically implemented in MATLAB.
Next, in addition to Assumption 1, we make the following assumption throughout this paper, which is actually the design condition of the switching law for the SUSS.
Assumption 2.
There exists a convex combination system (16) achieving GQ-P in the sense of Lemma 5.
Recalling Lemma 5 and the Schur complement lemma, we observe that Assumption 2 is equivalent to the design condition of finding and ’s such that
Thus, how to solve the above matrix inequality is crucial. Due to the terms , , and , (19) is a bilinear matrix inequality (BMI) with respect to P and ’s, and it is commonly known to be difficult to solve a general BMI globally. It is noted that one necessary condition for (19) is
which is equivalent to being Hurwitz. This motivates that if we can manage to find the scalars such that is Hurwitz, we can use those scalars to solve the inequality (19) with respect to . However, it is commonly known that to find the set of stabilizing scalars, is generally difficult. One comparatively efficient strategy to achieve such task (to solve (20) with ’s and ) is the so-called gridding method (or traversal search), which is based on the observation of and . Here, we extend the gridding method in the following algorithm to solve (19) with respect to ’s and . Due to continuity with respect to the scalars , if the matrix inequality (19) is feasible, the algorithm will succeed when the division integer m is large enough.
Algorithm for solving (19)
- Step 1
- Set the division number m of the interval as a moderate integer—for example, —and define .
- Step 2
- (1) choose from in ascending order; (2) fix and choose from in ascending order under the constraint ; (3) fix and choose from in ascending order under the constraint ; … (i) fix and choose from in ascending order under the constraint , and so on, until is chosen.
- Step 3
Here is an example for searching parameters in Step 2. When , we are actually checking the linear matrix inequality (19) in P by fixing the parameters in sequence as
The bigger m is, the more searching parameters there are in Step 2. Again, since the left side of the matrix inequality (19) is continuous in the parameters , we can expect to find a feasible solution for (19) when the division integer m is large enough.
Remark 2.
It is noted that the design condition (19) is reduced to
or equivalently,
which turns out to be a convex combination of (15). This implies that, although we are in the situation that each single subsystem in (13) does not achieve GQ-P, Assumption 2 requires the existence of a convex combination system (16) that should achieve GQ-P, guaranteed by a convex combination of the matrix inequalities in (15).
Now, we use the obtained positive definite matrix P to define the state-dependent switching law as
Theorem 1.
Under Assumptions 1 and 2 and the switching law , the SUSS (12) achieves GQ-P.
Proof.
Since the matrix inequality (21) is satisfied, there always exists a positive scalar such that
and thus, for any ,
Notice that the left side of the above inequality is
Then, under the switching law , since holds for all i, we have
Next, we proceed to prove the GQ-P property. First, using Lemma 3 for (30), we obtain
Combining the above discussion into (29), we have
Taking expectation and integrating both sides of the above inequality from 0 to t, with the fact that , we reach
Since , this leads to (9) obviously when . Thus, the SUSS achieves GQ-P. □
3.2. Numerical Example
Example 1.
When setting , we find that
is Hurwitz, whose eigenvalues are . Furthermore, for given and the same , the matrix inequality (19) is feasible with
which implies that Assumption 2 holds. In the present case, the coefficient matrices in the convex combination system (16) are
We set the initial state to , and the disturbance input as . Then, we use the switching law (23) for the present SUSS, and utilize the well-known Euler–Maruyama scheme for numerical simulation of the stochastic differential equation. With several patterns of white noise, we obtain the state trajectories of the SUSS plotted in Figure 1, which converge to zero quickly as desired. Further, the inequality (9) holds for the sampled patterns of random noise, which implies the desired quadratic stability and performance in probability has been achieved.
Figure 1.
State trajectories of the SUSS under 1 in Example 1.
4. State Feedback Controller Design
We focused our attention on design condition and the switching law in the previous section. When Assumption 2 does not hold and feedback control is available, we shall incorporate state feedback controller design together with the switching law in this section.
4.1. Controller Design
Introducing control inputs into the switched system (12), we have
where is the control input and is the constant input matrix.
In the case of state feedback, the design issue is to propose with a constant feedback gain K, such that Assumption 2 holds for the closed-loop system
Then, the discussion in the previous section is valid if we replace with , where . In other words, we are considering the following convex combination system of the subsystems in (37)
Using the matrix inequality (19) with replaced by , we obtain the design condition
It is noted that in addition to the coupling between ’s and P, the term includes the matrix product in the above matrix inequality. To make (40) more trackable, we use the Schur complement lemma for (40) to reach
Multiplying the first row and column of (41) by , we obtain
where . Therefore, if the matrix inequality (42) is feasible with the variables , M, and ’s, the state feedback gain is computed by , and the matrix will be used in the switching law defined later.
To summarize the above discussion up to now, we obtain the following theorem.
Theorem 2.
Proof.
Remark 4.
The matrix inequality (41) is equivalent to
which is a convex combination of the matrix inequalities for each subsystem to achieve GQ-P through a state feedback. Therefore, the condition of Theorem 2 requires that a convex combination of subsystems should achieve GQ-P by a switching state feedback, although every single subsystem cannot make it. In this sense, this condition can be regarded as the state feedback version of the design condition in the previous section.
4.2. Application to Boost Converters
We consider the DC–DC boost converter model dealt with in [28], which is depicted in Figure 2. For simplicity and easiness to follow, suppose that there is only one transistor–diode switch S; thus, the system is composed of two subsystems. In the case of more than two switches in the circuit, the number of subsystems will be more than three, but the discussion and the results can be applied in the same manner.
Figure 2.
A boost converter with inductor ESR.
Let the inductor current and the capacitance voltage be the state variables, and combine them into the state vector Suppose that is the control input , is the disturbance input of the input voltage, and the capacitance voltage is the controlled output . Moreover, suppose that there are independent stochastic disturbance with the states and .
Then, when the switch S is closed, the state space model is
and when the switch S is open, the state space model is
In the above, and denote the variations of the load resistance and R, which are supposed to be bounded by and , respectively.
Observing the nominal part and the uncertain part in the system matrices of (46) and (47), we see that the above switched system takes the form of (13), where
and with . It is noted that the first-order Taylor expansion is used in the above to separate the uncertainty from the term . Moreover, although we have only assumed the uncertainties in the load resistance and R, we can use the same formulation to deal with bounded uncertainties in L and C.
To perform the numerical simulation, we need to set up the physical parameters in the above state space models. Here, we assume , , , , and the uncertainties are , . Substituting the above parameter values together with , into (48), we obtain the coefficient matrices
Since both and are Hurwitz, the achievable gain is essential. First, we try to solve the design condition (19) with by adjusting the combination parameters and , but there is no feasible solution, which means the desired quadratic stability with gain cannot be achieved through switching if there is NO state feedback.
Next, we set (and thus, ) to solve the design condition (42) with
It turns out that the condition (42) is feasible when , and the solutions are
Then, the feedback gain matrices K is computed by
With the initial value and the disturbance input , the state trajectories of in the switched system are depicted in Figure 3, which present good convergence. Moreover, it is confirmed that the inequality (9) holds for any on average when several trials are performed, which implies that the desired quadratic stability and performance in probability has been achieved.
Figure 3.
State trajectories of the boost converter under .
5. Conclusions
We have dealt with the global quadratic performance analysis problem for a class of switched uncertain linear stochastic systems. Under the assumption that no single subsystem achieves GQ-P but a convex combination of the subsystems can make it, we proposed a state-dependent switching law such that the SUSS achieves the desired GQ-P. We also extended the discussion to the design of switching state feedback controller, together with its application to quadratic stabilization of a boost converter.
It is noted that the convex combination approach proposed in this paper incorporates norm-bounded uncertainties, gain analysis (attenuation of disturbance attenuation), and stochastic noise reduction in an integrated manner; thus, it is a major extension to the existing results in the literature. Our future work will consider the applicability and extension of such a convex combination approach to switched positive systems [29], switched affine systems [30,31], switched dynamical output feedback [32], fault detection observer design [33], and event-triggered control [34] for switched and hybrid systems. Furthermore, it is important to apply the proposed design condition and the algorithm for more practical electronic circuits and other real systems.
Author Contributions
Conceptualization, G.Z.; validation, Y.C. and G.Z.; data curation, Y.C., G.Z., L.X. and B.F.; writing—original draft preparation, G.Z., Y.C. and B.F.; writing—review and editing, G.Z., Y.C. and L.X.; supervision, G.Z. All authors have read and agreed to the published version of the manuscript.
Funding
National Natural Science Foundation of China (61903129, 12061088) and Doctoral Research Startup Fund of Hubei University of Technology (BSQD2020012).
Institutional Review Board Statement
Not applicable.
Informed Consent Statement
Not applicable.
Data Availability Statement
The data presented in this study are available on request from the corresponding author.
Conflicts of Interest
The authors declare no conflict of interest.
References
- DeCarlo, R.; Branicky, M.S.; Pettersson, S.; Lennartson, B. Perspectives and results on the stability and stabilizability of hybrid systems. Proc. IEEE 2000, 88, 1069–1082. [Google Scholar] [CrossRef]
- Liberzon, D. Switching in Systems and Control; Birkhäuser: Boston, MA, USA, 2003. [Google Scholar]
- Sun, Z.; Ge, S.S. Switched Linear Systems: Control and Design; Springer: London, UK, 2005. [Google Scholar]
- Zhai, G.; Hu, B.; Yasuda, K.; Michel, A.N. Disturbance attenuation properties of time-controlled switched systems. J. Frankl. Inst. 2001, 338, 765–779. [Google Scholar] [CrossRef]
- Chatterjee, D.; Liberzon, D. Stability analysis of deterministic and stochastic switched systems via a comparison principle and multiple Lyapunov functions. Siam J. Control. Optim. 2006, 45, 174–206. [Google Scholar] [CrossRef]
- Shorten, R.; Wirth, F.; Mason, O.; Wulff, K.; King, C. Stability criteria for switched and hybrid systems. Siam Rev. 2007, 49, 545–592. [Google Scholar] [CrossRef] [Green Version]
- Alwan, M.S.; Liu, X. Recent results on stochastic hybrid dynamical systems. J. Control. Decision 2016, 3, 68–103. [Google Scholar] [CrossRef]
- Wicks, M.A.; Peleties, P.; DeCarlo, R.A. Switched controller synthesis for the quadratic stabilization of a pair of unstable linear systems. Eur. J. Control. 1998, 4, 140–147. [Google Scholar] [CrossRef]
- Feron, E. Quadratic Stabilizability of Switched System via State and Output Feedback; MIT Technical Report CICS-P-468; Massachusetts Institute of Technology: Cambridge, MA, USA, 1996. [Google Scholar]
- Zhai, G.; Lin, H.; Antsaklis, P.J. Quadratic stabilizability of switched linear systems with polytopic uncertainties. Int. J. Control. 2003, 76, 747–753. [Google Scholar] [CrossRef]
- Zhao, J.; Dimirovski, G.M. Quadratic stability of a class of switched nonlinear systems. IEEE Trans. Autom. Control. 2004, 49, 574–578. [Google Scholar] [CrossRef] [Green Version]
- Ji, Z.; Wang, L.; Xie, G. Quadratic stabilization of switched systems. Int. J. Syst. Sci. 2005, 36, 395–404. [Google Scholar] [CrossRef]
- Chang, Y.; Zhai, G.; Fu, B.; Xiong, L. Quadratic stabilization of switched uncertain linear systems: A convex combination approach. IEEE/CAA J. Autom. Sin. 2019, 6, 1116–1126. [Google Scholar] [CrossRef]
- Huang, C.; Zhai, G.; Li, W. Quadratic performance analysis of switched affine time-varying systems. Int. J. Appl. Math. Comput. Sci. 2018, 28, 429–440. [Google Scholar]
- Chang, Y.; Zhai, G.; Fu, B.; Xiong, L. Stabilization of switched linear uncertain stochastic systems. In Proceedings of the 38th Chinese Control Conference (CCC2019), Guangzhou, China, 27–30 July 2019; pp. 1784–1788. [Google Scholar]
- Chang, Y.; Zhai, G.; Xiong, L.; Fu, B. Output-dependent switching laws for quadratic stabilization of switched linear stochastic systems. In Proceedings of the 32nd Chinese Control and Decision Conference (CCDC2020), Hefei, China, 22–24 August 2020; pp. 1796–1801. [Google Scholar]
- Åström, K.J. Introduction to Stochastic Control Theory; Dover Publications: New York, NY, USA, 2012. [Google Scholar]
- Khalil, H.K. Nonlinear Systems, 3rd ed.; Prentice-Hall: Upper Saddle River, NJ, USA, 2002. [Google Scholar]
- Chen, G.; Chen, G.; Hsu, S. Linear Stochastic Control Systems; CRC Press: Boca Raton, FL, USA, 1995. [Google Scholar]
- Boyd, S.; El Ghaoui, L.; Feron, E.; Balakrishnan, V. Linear Matrix Inequalities in System and Control Theory; SIAM: Philadelphia, PA, USA, 1994. [Google Scholar]
- Petersen, I.R. A stabilization algorithm for a class of uncertain linear systems. Syst. Control. Lett. 1987, 8, 351–357. [Google Scholar] [CrossRef]
- Morse, A.S. Supervisory control of families of linear set-point controllers-Part 1: Exact matching. IEEE Trans. Autom. Control. 1996, 41, 1413–1431. [Google Scholar] [CrossRef]
- Hespanha, J.P.; Morse, A.S. Stability of switched systems with average dwell-time. In Proceedings of the 38th IEEE Conference on Decision & Control, Phoenix, AZ, USA, 7–10 December 1999; pp. 2655–2660. [Google Scholar]
- Zhai, G.; Hu, B.; Yasuda, K.; Michel, A.N. Stability analysis of switched systems with stable and unstable subsystems: An average dwell time approach. Int. J. Syst. Sci. 2001, 32, 1055–1061. [Google Scholar] [CrossRef]
- Branicky, M.S. Multiple Lyapunov functions and other analysis tools for switched and hybrid systems. IEEE Trans. Autom. Control. 1998, 43, 475–482. [Google Scholar] [CrossRef] [Green Version]
- Zhai, G.; Hu, B.; Yasuda, K.; Michel, A.N. Piecewise Lyapunov functions for switched systems with average dwell time. Asian J. Control. 2000, 2, 192–197. [Google Scholar] [CrossRef]
- Xiong, L.; Zhong, S.; Ye, M.; Wu, S. New stability and stabilization for switched neutral control systems. Chaos Solitons Fractals 2009, 42, 1800–1811. [Google Scholar] [CrossRef]
- Yang, Y.; Karimi, H.R.; Xiang, Z. Robust H∞ switching rule design for boost converters with uncertain parameters and disturbances. Abstr. Appl. Anal. 2013, 2013, 7. [Google Scholar] [CrossRef] [Green Version]
- Feng, S.; Wang, J.; Zhao, J. Stability and robust stability of switched positive linear systems with all modes unstable. IEEE/CAA J. Autom. Sin. 2019, 6, 167–176. [Google Scholar] [CrossRef]
- Deaecto, G.S.; Geromel, J.C.; Garcia, F.S.; Pomilio, J.A. Switched affine systems control design with application to DC-DC converters. IET Control. Theory Appl. 2010, 4, 1201–1210. [Google Scholar] [CrossRef]
- Xiao, M.; Zhai, G.; Huang, C. Quadratic stabilisation of switched affine systems. J. Control. Decis. 2020, 7, 1–23. [Google Scholar] [CrossRef]
- Deaecto, G.S.; Geromel, J.C.; Daafouz, J. Dynamic output feedback H∞ control of switched linear systems. Automatica 2011, 47, 1713–1720. [Google Scholar] [CrossRef]
- Su, Q.; Fan, Z.; Li, J. Observer-based fault detection for switched systems with all unstable subsystems. J. Control. Decis. 2021, 8, 116–123. [Google Scholar] [CrossRef]
- Qi, Y.; Zeng, P.; Bao, W. Event-triggered and self-triggered H∞ control of uncertain switched linear systems. IEEE Trans. Syst. Man Cybern. Syst. 2020, 50, 1442–1454. [Google Scholar] [CrossRef]
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2022 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/).