1 Introduction

Fractional calculus is an area of mathematics that handles with differentiation and integration of arbitrary (non-integer) orders. It can be traced to the early work of Leibniz and Lhospital in 1695. During the last three decades or so, it has attracted an increasing attention from physicians, chemists, and engineers. In fact, it has been found that many systems in interdisciplinary fields can be correctly modelled by fractional-order differential equations, such as viscoelastic systems [2], dielectric polarization [47], electrode–electrolyte polarization [22], finance systems, electromagnetic waves [19], heat diffusion systems, batteries, neurons, and so on.

Chaotic systems are nonlinear and deterministic rather than probabilistic. They are characterized by several special and important features such as: (1) they have an unusual sensitivity to initial states (therefore they are not predictable in the long run, (2) their behaviour is not periodic (3) they have fractal structures, (4) Such systems are governed by one or more control parameters. The main feature used to identify a chaotic behaviour is the well-known Lyapunov exponent criteria. In fact, a system that has one positive Lyapunov exponent is known as a chaotic system. However, a hyperchaotic system is characterised as a chaotic system but with more than one positive Lyapunov exponents. It is worth noting that higher dimensional chaotic systems with more than one positive Lyapunov exponent can obviously show more complex dynamics. It has been recently shown that many fractional-order systems can exhibit chaotic (or hyperchaotic) behaviours, such as fractional-order Duffing system [17], fractional-order Chua’s system [18], fractional-order Lorenz system [59], fractional-order Chen system [26], fractional-order Rössler system [24], fractional-order Liu system [50], fractional-order Arneodo system [34], to name a few.

Synchronization issue consists in designing a system (slave system) whose behavior mimics another one (master system). The latter drives the slave system via the transmitted signals. In the literature, various types of the chaos synchronization have been revealed, such as complete synchronization (CS) [8, 11, 48], phase synchronization (PS) [39, 44], lag synchronization (LS) [9, 25], generalized synchronization (GS) [58], generalized projective synchronization (GPS) [23, 27, 29], and so on. However, all these synchronization methods focus on integer-order chaotic systems, which is a very special case of the non-integer (i.e. fractional-order) chaotic systems. In addition, it has been assumed in [8, 9, 11, 23, 25, 27, 29, 39, 44, 48, 58] that models of the chaotic systems are almost known. Therefore, it is very interesting to extend these fundamental results to uncertain fractional-order chaotic systems and to incorporate an online function approximator (such as adaptive fuzzy system) to deal with model uncertainties.

During the past years, fuzzy theories have developed very rapidly [5557]. Specially, fuzzy logic systems have been found to be particularly power full tool for synchronizing and controlling uncertain chaotic systems with integer order [6, 12, 21, 32, 42, 43, 51, 52], due to their universal approximation properties [54]. In these fuzzy control schemes, the fuzzy systems are used to online estimate the uncertain functions. The stability analysis of the corresponding closed-loop control system has been carried out via a Lyapunov approach. The robustness issues with respect to the inevitable fuzzy approximation errors and the possible external disturbances have been improved by appropriately adding a robust control term to the main fuzzy adaptive control term. This robust control term can be conceived by a sliding mode control approach [6, 12, 42, 43], an H control approach [21, 51, 52] and a quasi-sliding mode control approach [32]. However, it is should be noted that the above results [6, 12, 21, 32, 42, 43, 51, 52] are limited to uncertain chaotic integer-order systems.

The synchronization of fractional-order chaotic systems remains undoubtedly as a challenging research topic [13, 20, 30, 31, 36, 37, 53]. In [13], Chen et al. have researched the synchronization of a class of fractional-order chaotic neural networks. In [53], a local stability criterion for synchronization of incommensurate fractional-order chaotic systems has been derived. An active pinning control for synchronization and anti-synchronization of uncertain unified chaotic systems with fractional-order has been reported by Pan et al. [36]. In addition, the author of [37] has designed a synchronization system of two identical fractional-order chaotic systems using a linear error feedback control. Hosseinnia et al. [20] have designed a linear sliding surface with its corresponding switching control law for synchronization of two identical uncertain fractional-order chaotic systems. In [31], an adaptive fuzzy sliding mode control for synchronization of uncertain fractional-order chaotic systems with time delay has been proposed. In [30]. An adaptive fuzzy logic controller has been designed for achieving an H synchronizing for a class of uncertain fractional-order chaotic systems. However, the fundamental results of [30, 31] are already questionable, because the stability analysis has not been derived rigorously in mathematics [1, 49].

In this paper, a novel chaos synchronization scheme is proposed for two different uncertain chaotic systems with fractional-order. A fuzzy adaptive controller is designed to achieve a practical projective synchronization. By using some coordinate transformation on the synchronization error, the stability analysis as well as the control design are simplified. A Lyapunov approach is adopted to carry out the design of the adaptation laws and the stability analysis of the corresponding closed-loop system. To show the effectiveness of the proposed synchronization system, three illustrative examples will be presented. Compared to the existing works [13, 20, 30, 31, 36, 37, 53], the principal contributions of this study can be summarized as:

  1. 1.

    By designing a fuzzy adaptive controller, a practical projective synchronization is appropriately achieved for a class of uncertain fractional-order chaotic systems. To the best of authors knowledge, the design of a fuzzy adaptive control for fractional-order systems has not been previously considered in the literature, except some preliminaries works in [30, 31]. However, these works are already questionable, as stated in [1, 49].

  2. 2.

    Unlike the previous works [13, 20, 30, 31, 36, 37, 53], the slave chaotic system is assumed to be subject to unknown dynamic disturbances and the model of this master–slave structure is considered to be completely unknown (i.e. the controller designed is free of the models of both master and slave systems). In fact, the adaptive fuzzy systems incorporated in this synchronization structure permits to estimate online the ouncertain functions.

  3. 3.

    Unlike the closely related works [30, 31], the stability analysis of the closed-loop system is rigorously established in this paper, by using some properties of the Caputo fractional-order derivative [10, 16, 28, 40, 45, 60].

2 Basic definitions and preliminaries for fractional-order systems

As the Caputo fractional operator is more consistent than another ones, then this operator will be employed in this paper. Also, a modification of Adams–Bashforth–Moulton algorithm proposed in [14, 15] will be used for computer numerical simulation of the Caputo fractional-order differential equations.

The Caputo fractional derivative of a function \( x\left( t \right) \) with respect to t is defined as follows [40]:

$$ D_{t}^{\alpha } x\left( t \right) = \frac{1}{\varGamma (m - \alpha )}\int_{0}^{t} {(t - \tau )^{ - \alpha + m - 1} x^{(m)} \left( \tau \right)d\tau } $$
(1)

where \( m = \left[ \alpha \right] + 1 \), \( \left[ \alpha \right] \) is the integer part of \( \alpha \), \( D_{t}^{\alpha } \) is called the \( \alpha - order \) Caputo differential operator, and \( \varGamma \left( . \right) \) is the well-known Eulers gamma function:

$$ \varGamma \left( P \right) = \mathop \int \nolimits_{0}^{\infty } t^{P - 1} e^{ - t} dt \quad {\rm with} \quad \varGamma \left( {P + 1} \right) = P\varGamma \left( P \right) $$
(2)

This function can be seen as an extension of the factorial to real number arguments.

The following three properties of the Caputo fractional-order derivative will be used in the sequent sections [10, 28, 40]:

Property 1

Let \( 0 < q < 1 \), then

$$ Dx\left( t \right) = D_{t}^{1 - q} D_{t}^{q} x\left( t \right),\quad \,{\text{where}}\;D = \frac{d}{dt}. $$
(3)

Property 2

The Caputo fractional derivative operator is a linear operator:

$$ D_{t}^{q} \left( {\nu x\left( t \right) + \mu y\left( t \right)} \right) = \nu D_{t}^{q} x\left( t \right) + \mu D_{t}^{q} y\left( t \right), $$
(4)

where \( \nu \;{\text{and}}\; \mu \) are real constants.

Especially, \( D_{t}^{q} x\left( t \right) = D_{t}^{q} \left( {x\left( t \right) + 0} \right) = D_{t}^{q} x\left( t \right) + D_{t}^{q} 0, \) then, we have \( D_{t}^{q} 0 = 0. \)

Property 3

Consider a Caputo fractional nonlinear system [16, 45, 60]:

$$ D_{t}^{q} x\left( t \right) = f\left( {x\left( t \right)} \right), \quad {\text{with}}\;0 < q < 1 $$
(5)

If one assumes that \( f(x\left( t \right)) \) satisfies the Lipschiz condition with respect to \( x \), i.e.,

$$ ||f(x(t)) - f(x_{1} \left( t \right))|| \le \ell|| x(t) - x_{1} (t)||, $$
(6)

where \( \ell \) is a positive constant. Without loss of generality, one also assumes that \( f(x) \) satisfies \( f\left( x \right) = 0 \) at \( x = 0 \).

It follows that:

$$ ||f(x(t))|| \le \ell ||x(t)||. $$
(7)

Remark 1

  1. 1.

    It should be noted that the definition of Caputo fractional integration is similar to that of Reimann–Liouville (RL) fractional integration.

  2. 2.

    The major advantage of the Caputo definition is that the initial conditions for fractional-order differential equations take on a similar form as for integer-order differential equations.

  3. 3.

    In the literature, the Caputo definition is sometimes referred as a smooth fractional derivative.

3 Problem statement and fuzzy logic systems

3.1 Problem statement

As already mentioned in Sect. 1, our main motivation consists in designing a fuzzy adaptive control system which properly realizes a projective synchronization between two different fractional-order chaotic systems, as shown in Fig. 1, while all the signals in the derived closed-loop system remain bounded.

Fig. 1
figure 1

The proposed synchronization scheme

Consider the following class of uncertain fractional-order chaotic master systems:

$$ D_{t}^{q} X = F_{1} \left( X \right), $$
(8)

where \( D_{t}^{q} = \frac{{d^{q} }}{{dt^{q} }}, 0 < q < 1 \) is the fractional derivative order, with \( X = [x_{1} , \ldots ,x_{n} ]^{T} \in R^{n} \) is the overall state vector of the master system which is assumed to be measureable, and \( F_{1} (X) = [f_{11} (X), \ldots ,f_{1n} (X)]^{T} \in R^{n} \) is a vector of smooth unknown nonlinear functions.

The uncertain fractional-order chaotic slave system can be given as:

$$ D_{t}^{q} Y = F_{2} \left( Y \right) + G u + \varLambda \left( {t,Y} \right), $$
(9)

where \( Y = [y_{1} , \ldots ,y_{n} ]^{T} \in R^{n} \) is its state vector which is also assumed to be available for measurement. \( F_{2} \left( Y \right) = [f_{21} \left( Y \right), \ldots .f_{2n} (Y)]^{T} \in R^{n} \) is a vector of smooth unknown nonlinear functions, \( G = \left[ \begin{array}{lll} g_{11} & \ldots & g_{1n} \\ \vdots & \ddots & \vdots \\ g_{n1} & \ldots & g_{nn} \\ \end{array} \right] \in R^{n \times n} \) is an unknown constant control-gains matrix, \( u = [u_{1} , \ldots ,u_{n} ]^{T} \in R^{n} \) is the control input vector, and \( \varLambda \left( {t,Y} \right) = [\varLambda_{1} \left( {t,Y} \right), \ldots , \varLambda_{n} \left( {t,Y} \right)]^{T} \in R^{n} \) denotes the unknown dynamic disturbance vector.

Assumption 1

Without loss of generality, we assume that the matrix \( G \) is symmetric and positive-definite.

Remark 2

The systems (8) and (9) considered in this paper represent a relatively large class of uncertain fractional-order chaotic systems. Note that many chaotic systems can be described in this considered form, such as: fractional-order Lorenz system, fractional-order unified chaotic system, fractional-order Chen system, so on.

Remark 3

The master-salve structure described by (8) and (9) has been considered in many literatures, e.g. [13, 16, 20, 36, 37, 53, 60]. But, in these works, the model of this structure is assumed to be known or partially known or without dynamic disturbances. Unlike in [13, 16, 20, 36, 37, 53, 60], in this paper, the model of the master–slave system is completely unknown and with uncertain dynamic disturbances. Hence, the results of [13, 16, 20, 36, 37, 53, 60] cannot be applied to the considered master–slave system.

Remark 4

Assumption 1 is considered for sake of simplicity, not restrictive and common in the literature [13, 16, 20, 36, 37, 53, 60]. By using the matrix decomposition as in [3, 4], this assumption can be relaxed.

Our main objective is to design a fuzzy adaptive control law \( u_{i} \) (for all \( i = 1, \ldots ,n) \) achieving an appropriate projective synchronization between the master system (8) and the slave system (9), while assuring the boundedness of all variables involved in the closed-loop system as well as the practical convergence of the associated synchronization errors to an adjustable residual set.

In order to quantify this objective, one defines the synchronization errors as follows:

$$ \begin{aligned} e_{1} &= y_{1} - \lambda_{1} x_{1} ,\\ &\;\,\vdots \hfill \\ e_{n} &= y_{n} - \lambda_{n} x_{n} ,\\ \end{aligned} $$
(10)

where \( \lambda_{i} \) is a non-zero scaling factor that defines a proportional relation between the synchronized systems. Therefore, the complete synchronization and anti-synchronization are the special cases of a projective synchronization when \( \lambda_i \) takes the values \( + 1 \) and \( - 1 \), respectively.

The vector of the synchronization errors can be expressed as follows:

$$ E = [e_{1} , \ldots ,e_{n} ]^{T} = Y - MX. $$
(11)

where \( M = diag(\lambda_{1} ,\lambda_{2} , \ldots ,\lambda_{n} ) \) is the projective synchronization matrix.

In order to facilitate the design of the control system and the stability analysis, now one introduces a new variable \( S = [S_{1} , \ldots ,S_{n} ]^{T} \) as follows:

$$ D_{t}^{1 - q} S = E, $$
(12)

According to Property 1 of the Caputo fractional derivative operator, one can rewrite (12) as:

$$ D_{t}^{q} D_{t}^{1 - q} S = \dot{S} = D_{t}^{q} E = F_{2} \left( Y \right) + G u - MF_{1} \left( X \right) + \varLambda \left( {t,Y} \right). $$
(13)

Posing \( G_{1} = G^{ - 1} \), one has

$$ G_{1} \dot{S} = G_{1} \left[ {F_{2} \left( Y \right) - MF_{1} \left( X \right)} \right] + u + G_{1} \varLambda \left( {t,Y} \right). $$
(14)

The dynamics of \( S \) can be arranged as

$$ G_{1} \dot{S} = \alpha \left( {X,Y,\varLambda } \right) + u, $$
(15)

with

$$ \alpha \left( {X,Y,\varLambda } \right) = [\alpha_{1} \left( {X,Y,\varLambda } \right), \ldots ,\alpha_{n} \left( {X,Y,\varLambda } \right)]^{T} = G_{1} [F_{2} (Y) - MF_{1} (X)] + G_{1} \varLambda \left( {t,Y} \right). $$
(16)

Thereafter, (16) will be exploited in the development of the proposed fuzzy controller and the corresponding stability analysis.

Remark 5

The transformation (12) permits us to obtain a non fractional-order dynamics (15) for the synchronization error S. Thus, the corresponding stability analysis and the controller design will be further simplified.

Remark 6

Since the nonlinear function \( \alpha (X,Y,\varLambda ) \) is unknown, the design of a control system to practically stabilize the dynamics (15) is difficult. Thereafter, to overcome such a problem, one will use later an adaptive fuzzy system to approximate a functional upper-bound of \( \alpha (X,Y,\varLambda ) \).

Remark 7

From (12) and according to Properties 1, 2 and 3 of the Caputo fractional derivative operator [16, 45, 60], one can easily show the existence of a positive real number \( \kappa \), such that \( ||E|| \le \kappa ||S|| \). Hence, \( S = 0 \) implies that \( E = 0, \) and the boundedness of S implies that of \( E \).

3.2 Description of the fuzzy logic system

The configuration of a fuzzy logic system basically consists of a fuzzifier, a fuzzy knowledge-base, an inference engine and a defuzzifier [3, 4, 54]. The fuzzy inference engine, being considered as an important part in this reasoning system, uses a set of fuzzy If–Then rules to perform a mapping from an input \( \underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{x}^{T} = [x_{1} , \ldots ,x_{n} ] \in R^{n} \) to an output \( \hat{f} \in R. \) The ith fuzzy rule is in following form:

$$ R^{(i)} :if\,x_{1}\,is\,A_{1}^{i} \,and\,\ldots\,and\,x_{n }\,is\,A_{n}^{i}\,then\,\hat{f}\,is\,f^{i} , $$
(17)

where \( A_{1}^{i} ,A_{2}^{i} , \ldots .. \) and \( A_{n}^{i} \) are fuzzy sets and \( f^{i } \) is a fuzzy singleton for the output in the ith rule.

If one uses a singleton fuzzifier, product inference, and center-average defuzzifier, the output of this fuzzy logic system can be expressed as

$$ \hat{f}(\underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{x} ) = \frac{{\mathop \sum \nolimits_{i = 1}^{m} f^{i} \left( {\mathop \prod \nolimits_{j = 1}^{n} \mu_{{A_{j}^{i} }} (x_{j} )} \right)}}{{\mathop \sum \nolimits_{i = 1}^{m} \left( {\mathop \prod \nolimits_{j = 1}^{n} \mu_{{A_{j}^{i} }} (x_{j} )} \right)}} = \theta^{T} \psi (\underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{x} ), $$
(18)

where \( \mu_{{A_{j}^{i} }} (x_{j} ) \) is the membership function of the fuzzy set \( A_{j}^{i} , \) m is the number of fuzzy rules, \( \theta^{T} = [f^{1} , \ldots , f^{m} ] \) is the adjustable parameter (consequent parameters) vector, and \( \psi^{T} = [\psi^{1} \psi^{2} \ldots \psi^{m} ] \) with

$$ \psi^{i} (\underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{x} ) = \frac{{(\varPi_{j = 1}^{n} \mu_{{A_{j}^{i} }} (x_{j} ))}}{{\mathop \sum \nolimits_{i = 1}^{m} \left( {\mathop \prod \nolimits_{j = 1}^{n} \mu_{{A_{j}^{i} }} (x_{j} )} \right)}}, $$
(19)

being the fuzzy basis function (FBF).

Throughout the paper, it is assumed that the FBFs are appropriately selected so that [54]:

$$ \mathop \sum \nolimits_{i = 1}^{m} \left( {\mathop \prod \nolimits_{j = 1}^{n} \mu_{{A_{j}^{i} }} (x_{j} )} \right) > 0 $$
(20)

The fuzzy logic system (18) can approximate any nonlinear continuous function \( f(\underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{x} ) \) defined on a compact operating space to an arbitrary accuracy [3, 4, 54]. Of particular importance, one assumes that the FBFs, i.e.\( \psi (\underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{x} ), \) are properly specified in advance by designer. However, the consequent parameters, i.e. \( \theta \), are determined by some adequate estimation algorithms.

4 Design of fuzzy adaptive controller

Hereafter, we need the following mild assumption.

Assumption 2

There exists an unknown continuous positive function vector \( \bar{\alpha }(Y) \) such that:

$$ \left| {\alpha (X,Y,\varLambda ))} \right| \le \bar{\alpha }\left( Y \right), $$
(21)

where \( \bar{\alpha }\left( Y \right) = [\bar{\alpha }_{1} \left( Y \right), \ldots ,\bar{\alpha }_{n} \left( Y \right)]^{T} \).

Remark 8

Assumption 2 is commonly used in the open control literature, e.g. [3, 4]. It is not restrictive, as the upper bound function \( \bar{\alpha }\left( Y \right) \) is already assumed to be unknown and the state vector of the master system evolves in a compact set (an intrinsic property of the (non-controlled) chaotic systems).

The unknown nonlinear function \( \bar{\alpha }_{i} \left( Y \right) \) can be approximated, on the compact set \( \varOmega_{Y} \), by the fuzzy system (18) as follows:

$$ {\hat{\bar{\alpha}}}_{i} \left( {Y,\theta_{i} } \right) = \theta_{i}^{T} \psi_{i} \left( Y \right),\,\quad with\,\;i = 1,\ldots n, $$
(22)

where \( \psi_{i} (Y) \) is the fuzzy basis function (FBF) vector, which is determined a priori by the designer, and \( \theta_{i} \) is the vector of the adjustable parameters of this fuzzy system.

The optimal value of \( \theta_{i} \) can be defined as follows [54]

$$ \theta_{i}^{*} = \arg \mathop {\hbox{min} }\nolimits_{{\theta_{i} }} \left[ {\mathop {\sup }\nolimits_{{Y\epsilon \varOmega_{Y} }} \left| {\bar{\alpha }_{i} (Y) - \hat{\bar{\alpha }}_{i} (Y,\theta_{i} )} \right|} \right] $$
(23)

It is worth noticing that the vector \( \theta_{i}^{*} \) is mainly introduced for analysis purposes. Its value is not needed when implementing the control system.

Now, let us define

$$ \bar{\theta }_{i} = \theta_{i} - \theta_{i}^{*} \quad {\text{and}}\quad \,\delta_{i} \left( Y \right) = \bar{\alpha }_{i} \left( Y \right) - \hat{\bar{\alpha }}_{i} \left( {Y,\theta_{i}^{*} } \right) = \bar{\alpha }_{i} (Y) - \theta_{i}^{*T} \psi_{i} (Y) $$
(24)

as the parameter estimation errors and the fuzzy approximation errors, respectively.

As in [3, 4, 5, 7, 33, 54], one assumes that the fuzzy approximation errors are upperly bounded for all \( Y \in \Omega_{Y} \), i.e. \( \left| {\delta_{i} (Y)} \right| \le \bar{\delta }_{i} , \forall Y \in \varOmega_{Y} , \) with \( \bar{\delta }_{i} \) is an unknown constant.

Let us denote

$$ \hat{\bar{\alpha }}\left( {Y,\theta } \right) = \left[ {\hat{\bar{\alpha }}_{1} \left( {Y,\theta_{1} } \right), \ldots , \hat{\bar{\alpha }}_{n} \left( {Y,\theta_{n} } \right)} \right]^{T} = \left[ {\theta_{1}^{T} \psi_{1} \left( Y \right), \ldots , \theta_{n}^{T} \psi_{n} (Y)} \right]^{T} , $$
$$ \delta \left( Y \right) = \left[ {\delta_{1} \left( Y \right), \ldots , \delta_{n} \left( Y \right)} \right]^{T} \quad {\text{and}}\quad \bar{\delta } = \left[ {\bar{\delta }_{1} , \ldots , \bar{\delta }_{n} } \right]^{T} $$

From the previous analysis, one can get the following expressions:

$$ \begin{aligned} \hat{\bar{\alpha }}\left( {Y,\theta } \right) - \bar{\alpha }\left( Y \right) &= \hat{\bar{\alpha }}\left( {Y,\theta } \right) - \hat{\bar{\alpha }}\left( {Y,\theta^{*} } \right) + \hat{\bar{\alpha }}\left( {Y,\theta^{*} } \right) - \bar{\alpha }\left( Y \right),\\&= \hat{\bar{\alpha }}\left( {Y,\theta } \right) - \hat{\bar{\alpha }}\left( {Y,\theta^{*} } \right) - \delta \left( Y \right),\\& ={\tilde{\theta} }^{T} \psi \left( Y \right) - \delta \left( Y \right).\\ \end{aligned} $$
(25)

with \( \tilde{\theta }^{T} \psi \left( Y \right) = [\tilde{\theta }_{1}^{T} \psi_{1} \left( Y \right), \ldots ,\tilde{\theta }_{n}^{T} \psi_{n} (Y)]^{T} \) and \( \tilde{\theta }_{i}^{T} = \theta_{i} - \theta_{i}^{*} \), for \( i = 1, \ldots ,n. \)

For the master–slave system (8) and (9), we can consider the following fuzzy adaptive controller:

$$ u_{i} = - \rho_{i} (t)Tanh\left( {\rho_{i} (t)S_{i} /\varepsilon_{i} } \right)\,\quad {\text{for}}\;i = 1,\ldots ,n $$
(26)

with \( \rho_{i} \left( t \right) = \left( {\theta_{i}^{T} \psi_{i} \left( Y \right) + k_{0i} + k_{1i} \left| {S_{i} } \right|} \right) \), where \( k_{0i} \) is an adaptive parameter will be designed later, and \( k_{1i} \) is a strictly positive design constant. Tanh(.) denotes the hyperbolic tangent function and \( \varepsilon_{i} \) is a strictly positive and small design constant.

Throughout this paper, we will exploit the following nice lemma with regard to function Tanh(.) [41].

Lemma 1

The following inequality holds for any \( \varepsilon_{i} > 0 \) and for any \( z \in R \) [41]:

$$ 0 \le \left| z \right| - z Tanh\left( {\frac{z}{{\varepsilon_{i} }}} \right) \le \bar{\varepsilon }_{i} = \vartheta \varepsilon_{i} $$
(27)

where \( \vartheta \) is a constant that satisfies \( \vartheta = e^{ - (1 + \vartheta )} , \) i.e. \( \vartheta = 0.2785. \)

The system (15) can be rewritten as follows:

$$ S^{T} G_{1} \dot{S} = S^{T} \alpha \left( {X,Y,\varLambda } \right) + S^{T} u \le \left| {S^{T} } \right|\bar{\alpha }\left( Y \right) + S^{T} u $$
(28)

Using the control law (26) and Lemma 1, (28) becomes:

$$ \begin{aligned} S^{T} G_{1} \dot{S} \le \left| {S^{T} } \right|\bar{\alpha }\left( Y \right) - \mathop \sum \nolimits_{i = 1}^{n} \rho_{i} \left( t \right)\left| {S_{i} } \right| + \mathop \sum \nolimits_{i = 1}^{n} \rho_{i} \left( t \right)\left| {S_{i} } \right| - \mathop \sum \nolimits_{i = 1}^{n} \rho_{i} (t)S_{i} Tanh\left( {\rho_{i} (t)S_{i} /\varepsilon_{i} } \right) \hfill \\ \le - \mathop \sum \nolimits_{i = 1}^{n} \left| {S_{i} } \right|\tilde{\theta }_{i}^{T} \psi_{i} \left( Y \right) +\mathop \sum \nolimits_{i = 1}^{n} \left| {S_{i} } \right|\left| {\delta_{i} \left( Y \right)} \right| - \mathop \sum \nolimits_{i = 1}^{n} k_{0i} \left| {S_{i} } \right| - \mathop \sum \nolimits_{i = 1}^{n} k_{1i} S_{i}^{2} + \mathop \sum \nolimits_{i = 1}^{n} \bar{\varepsilon }_{i} \hfill \\ \end{aligned} $$
(29)

The adaptation laws associated to the proposed controller (26) can be designed as

$$ \dot{\theta }_{i} = \gamma_{\theta i} (\left| {S_{i} } \right|\psi_{i} (Y) - \sigma_{\theta i} \theta_{i} ),\theta_{ij} (0) > 0 $$
(30)
$$ \dot{k}_{0i} = \gamma_{ki} (\left| {S_{i} } \right| - \sigma_{ki} k_{0i} ) ,k_{0i} (0) > 0 $$
(31)

where \( \gamma_{\theta i} , \sigma_{\theta i} ,\sigma_{ki} \) and \( \gamma_{ki} \) are strictly positive design constants.

On the basis of the previous discussions, the following theorem can be obtained.

Theorem 1

For the master–slave system (8) and (9), if Assumptions 1 and 2 are valid, the control law (26) together with adaptation laws (30) and (31) can ensure the following properties:

  • All the signals in the closed-loop system are bounded.

  • Signals S and E exponentially converge to a residual set that can be made small by properly adjusting the design parameters.

Proof of Theorem 1

Define the following Lyapunov function candidate:

$$ V = \frac{1}{2}S^{T} G_{1} S + \sum\nolimits_{i = 1}^{n} {\frac{1}{{2\gamma_{\theta i} }}\tilde{\theta }_{i}^{T} \tilde{\theta }_{i} } + \sum\nolimits_{i = 1}^{n} {\frac{1}{{2\gamma_{ki} }}\tilde{k}_{0i}^{2} } . $$
(32)

with \( \tilde{k}_{0i} = k_{0i} - k_{0i}^{*} \), where \( k_{0i}^{*} = \bar{\delta }_{i} \).

The time derivative of \( V \) results

$$ \dot{V} = S^{T} G_{1} \dot{S} + \sum\nolimits_{i = 1}^{n} {\frac{1}{{\gamma_{\theta i} }}\tilde{\theta }_{i}^{T} \dot{\theta }_{i} } + \sum\nolimits_{i = 1}^{n} {\frac{1}{{\gamma_{ki} }}\tilde{k}_{0i} \dot{k}_{0i} } $$
(33)

Substituting Eqs. (29)-(31) into (33) yields

$$ \dot{V} \le - \mathop \sum \nolimits_{i = 1}^{n} k_{1i} S_{i}^{2} + \mathop \sum \nolimits_{i = 1}^{n} \bar{\varepsilon }_{i} - \mathop \sum \nolimits_{i = 1}^{n} \sigma_{\theta i} \tilde{\theta }_{i}^{T} \theta_{i} - \mathop \sum \nolimits_{i = 1}^{n} \sigma_{ki} k_{0i} \tilde{k}_{0i} . $$
(34)

On the other hand, it can be established that

$$ \begin{aligned} - \sigma_{{\theta_{i} }}\tilde{\theta }_{i}^{T} \theta_{i} \le - \frac{{\sigma_{\theta i} }}{2}||\tilde{\theta }_{i}^{2}|| + \frac{{\sigma_{\theta i} }}{2}||\theta_{i}^{*2}|| \hfill \\ - \sigma_{ki} k_{0i} \tilde{k}_{0i} \le - \frac{{\sigma_{ki} }}{2}\tilde{k}_{0i}^{2} + \frac{{\sigma_{ki} }}{2}k_{0i}^{*2} \hfill \\ \end{aligned}$$
(35)

Thus, by using (35), (34) results

$$ \dot{V} \le - \sum \nolimits_{i = 1}^{n} k_{1i} S_{i}^{2} - \sum \nolimits_{i = 1}^{n} \frac{{\sigma_{\theta i} }}{2}{||\tilde{\theta} }_{i}||^{2} - \sum \nolimits_{i = 1}^{n} \frac{{\sigma_{ki} }}{2}{\tilde{k}}_{0i}^{2} + \sum \nolimits_{i = 1}^{n} \frac{{\sigma_{ki} }}{2}k_{0i}^{*2} + \sum \nolimits_{i = 1}^{n} \frac{{\sigma_{\theta i} }}{2}||\theta_{i}^*||^{2} +\sum \nolimits_{i = 1}^{n} {\bar{\varepsilon}}_{i} $$
(36)

Consequently, (36) can be written as follows

$$ \dot{V} \le - \eta V + \mu $$
(37)

with \( \mu = \mathop \sum \nolimits_{i = 1}^{n} \frac{{\sigma_{ki} }}{2}k_{0i}^{*2} + \mathop \sum \nolimits_{i = 1}^{n} \frac{{\sigma_{\theta i} }}{2}||\theta_{i}^*||^{2} + \mathop \sum \nolimits_{i = 1}^{n} \bar{\varepsilon }_{i} \) and \( \eta = \hbox{min} \left\{ {\frac{{k_{1i} }}{{\sigma_{g\hbox{max} } }}, \sigma_{\theta i} \gamma_{\theta i} , \sigma_{ki} \gamma_{ki} } \right\} \), where \( \sigma_{g\hbox{max} } \) is the largest eigenvalue of the matrix \( G_{1} \).

Multiplying (37) by \( e^{\eta t} \), we can obtain

$$ \frac{d}{dt}\left( {e^{\eta t} V} \right) \le \mu e^{\eta t} $$
(38)

Integration (38) over \( \left[ {0,t} \right] \), it follows that

$$ 0 \le V\left( t \right) \le \frac{\mu }{\eta } + \left( {V\left( 0 \right) - \frac{\mu }{\eta }} \right)e^{ - \eta t} $$
(39)

Consequently, all signals in the closed-loop system are bounded and the error signal S and all parameter estimation errors exponentially converge to an adjustable residual set. Since \( \mu \) can be chosen arbitrary and \( \eta \) only depends on the design parameters (which can be chosen sufficiently large), the ultimate bounds of the error \( S_{i} \) can be made arbitrary small.

According to Remark 7 and Properties 1–3, the synchronization errors \( e_{i} \) are also stable and exponentially converge to an adjustable residual set.

Remark 9

It is worth noting that the synchronization of the fractional-order chaotic systems with known or partially known dynamics have been comprehensively studied in many literatures [13, 16, 20, 30, 31, 36, 37, 53, 60]. But, to the best of authors knowledge, there are no theoretical or applied works in the literature on the synchronization of fractional-order chaotic systems with completely unknown models and unknown dynamic disturbances, except the works of [30, 31] which are already questionable (as stated [1, 49] ). Hence, the results of [13, 16, 20, 30, 31, 36, 37, 53, 60] cannot be directly applied to the considered master–slave system.

Remark 10

From Eqs. (39), (37), and the definition of \( \mu \) and \( \eta \), it can be seen that the term \( \eta \) depends on the positive design parameters \( k_{1i} , \sigma_{\theta i} , \gamma_{\theta i} , \sigma_{ki}\;and\;\gamma_{ki } \) and the term \( \mu \) depends on the control parameters \( \sigma_{\theta i} , \sigma_{ki} \) and \( \varepsilon_{i} \). Note that if one increase \( k_{1i} , _{{}} \gamma_{\theta i}\;and\;\gamma_{ki } \) and decreases \( \sigma_{\theta i} , \sigma_{ki} \) and \( \varepsilon_{i} \), the value of \( \sqrt {\mu /\eta } \) will be reduced. Then the ultimate bounds of \( \left| {S_{i} } \right| \) and \( \left| {e_{i} } \right| \) can be made arbitrary small by properly selecting these design constants. In simulation experiments, the parameters \( k_{1i} , _{{}} \gamma_{\theta i}\;and\;\gamma_{ki } \) are generally chosen to be large enough and \( \sigma_{\theta i} , \sigma_{ki} \) and \( \varepsilon_{i} \) small enough (as we will see in our simulation examples).

Remark 11

Now, we will show that our proposed scheme can be easily extended to projective-synchronize two chaotic systems with different dimensions. For that, let us consider the following chaotic systems:

The master system:

$$ \left\{ {\begin{array}{*{20}c} { D_{t}^{q} x_{1} = f_{11} (X)} \\ { D_{t}^{q} x_{2} = f_{12} (X)} \\ \end{array} } \right. $$
(40)

with \( X = [x_{1} ,x_{2} ]^{T} \).

The slave system:

$$ \left\{ {\begin{array}{l} {D_{t}^{q} y_{1} = f_{21} \left( Y \right) + u_{1} + \varLambda_{1} (t,Y) } \\ {D_{t}^{q} y_{2} = f_{22} \left( Y \right) + u_{2} + \varLambda_{2} (t,Y), } \\ {D_{t}^{q} y_{3} = f_{23} \left( Y \right) + + u_{3} + \varLambda_{3} (t,Y), } \\ \end{array} } \right. $$
(41)

where with \( Y = [y_{1} ,y_{2} ,y_{3} ]^{T} \).

So that we can demonstrate the synchronization error convergence, one should add a fictive state \( (x_{3} ) \) which will be used to synchronize the state \( y_{3} \). The state \( x_{3} \) can be chosen as a linear combination of \( x_{1} \) and \( x_{2} \) (i.e.\( x_{3} = \vartheta_{1} x_{1} + \vartheta_{2} x_{2} \)).

The augmented system (40) becomes:

$$ \left\{ {\begin{array}{l} { D_{t}^{q} x_{1} = f_{11} (X) } \\ { D_{t}^{q} x_{2} = f_{12} (X) } \\ { D_{t}^{q} x_{3} = \vartheta_{1} f_{11} \left( X \right) + \vartheta_{2} f_{12} (X) } \\ \end{array} } \right. $$
(42)

Now, from (42) and (41), it is clear that one can use our fuzzy adaptive controller to synchronize these two fractional-order chaotic systems with different dimensions, i.e. (40) and (41). In Sect. 5, an illustrative example will be given.

5 Simulation results

In this section, some numerical simulation studies are carried out to show the effectiveness of the proposed synchronization scheme.

Example 1

In this example, we will verify the effectiveness of the proposed scheme for the synchronization of two different fractional-order chaotic systems. Consider the fractional-order Lotka–Volterra system [38] as the master system and the fractional-order Newton–Leipnik system [46] as the slave system. The equations of these systems are given below:

The master system (fractional-order chaotic Lotka–Volterra system [38, 46]):

$$ \left\{ {\begin{array}{l} {D_{t}^{q} x_{1} = x_{1} - x_{1} x_{2} + 2x_{1}^{2} - 2.9851x_{3} x_{1}^{2} , } \\ {D_{t}^{q} x_{2} = - x_{2} + x_{1} x_{2} , } \\ {D_{t}^{q} x_{3} = - 3x_{3} + 2.9851x_{3} x_{1}^{2} , } \\ \end{array} } \right. $$
(43)

The slave system (the fractional-order Newton–Leipnik system [46]):

$$ \left\{ {\begin{array}{l} {D_{t}^{q} y_{1} = - 0.4y_{1} + y_{2} + 10y_{2} y_{3} + u_{1} + \varLambda_{1} , } \\ {D_{t}^{q} y_{2} = - y_{1} - 0.4y_{2} + 5y_{1} y_{3} + u_{2} + \varLambda_{2} , } \\ {D_{t}^{q} y_{3} = 0.175y_{3} - 5y_{1} y_{2} + u_{3} + \varLambda_{3} , } \\ \end{array} } \right. $$
(44)

The fractional-order \( q \) is set to \( 0.95 \). This value ensures the existence of chaos for both systems [38, 46].

The external dynamic disturbances are selected as follows:\( \varLambda_{1} \left( t \right) = \varLambda_{2} \left( t \right) = \varLambda_{3} \left( t \right) = - 0.2\cos \left( {2t} \right) + 0.1\sin \left( {3t} \right) \). The initial conditions of the master and slave systems are chosen as: \( X\left( 0 \right) = [x_{1} \left( 0 \right),x_{2} \left( 0 \right),x_{3} \left( 0 \right)]^{T} = [1, 1.4, 1]^{T} \) and \( Y\left( 0 \right) = [y_{1} \left( 0 \right),y_{2} \left( 0 \right),y_{3} \left( 0 \right)]^{T} = [0.349, 0, - 0.160]^{T} \).

The adaptive fuzzy systems,\( \theta_{i}^{T} \psi_{i} (Y) \), with i = 1, 2, 3, have the vector \( Y = [y_{1} ,y_{2} ,y_{3} ]^{T} \) as input. For each input variable of these fuzzy systems, as in [7], we define three (one triangular and two trapezoidal) membership functions uniformly distributed on the intervals [-5, 5]. The design parameters are chosen as follows: \( k_{11} = k_{12} = k_{13} = 1, \gamma_{\theta 1} = \gamma_{\theta 2} = \gamma_{\theta 3} = 500, \) \( \sigma_{\theta 1} = \sigma_{\theta 2} = \sigma_{\theta 3} = 0.0001, \) \( \gamma_{k1} = \gamma_{k2} = \gamma_{k3} = 4, \) \( \sigma_{k1} = \sigma_{k2} = \sigma_{k3} = 0.001. \) The initial conditions of the adaptive laws are selected as follows: \( \theta_{1j} \left( 0 \right) = \theta_{2j} \left( 0 \right) = \theta_{3j} \left( 0 \right) = 0 \), and \( k_{0i} \left( 0 \right) = 0.01. \)

Three simulation cases are considered here:

(a) Case 1 (Complete synchronization, i.e. when \( \lambda_{1} = \lambda_{2} = \lambda_{3} = 1 \)): The obtained simulation results of a complete synchronization are depicted in Figs. 2 and 3. The time responses of the master (43) and the slave system (44) are illustrated in Fig. 2a–c. From this figure, it should be highlighted that a complete synchronization between both systems is practically realized. Figure 2d exhibits the control signals. Figure 3a–c show the synchronization phase plots of \( x_{i} - y_{i} \) (for i = 1–3), Fig. 3d illustrates the time evolution of the synchronization errors. Hence, from these results, we conclude that the proposed adaptive fuzzy controller is robust and can quickly achieve a complete synchronization between the systems (43) and (44), even in the presence of the external dynamic disturbances and uncertain dynamics (i.e. the models of the both systems are unknown).

Fig. 2
figure 2

Complete synchronization (for example 1): a \( x_{1} \) (dotted line) and \( y_{1} \) (solid line). b \( x_{2} \) (dotted line) and \( y_{2} \) (solid line). c \( x_{3} \) (dotted line) and \( y_{3} \) (solid line). d Control signals: \( u_{1} \) (solid line), \( u_{2} \) (dotted line) and \( u_{3} \) (dashed line)

Fig. 3
figure 3

Complete synchronization (for Example 1): ac the synchronization phase plots of \( x_{i} - y_{i} \). d The synchronization error curves: \( e_{1} \) (solid line), \( e_{2} \) (dotted line) and \( e_{3} \) (dashed line)

(b) Case 2 (Anti-phase synchronization, i.e. when \( \lambda_{1} = \lambda_{2} = \lambda_{3} = - 1 \)): Figures 4 and 5 illustrate the simulation results of an anti-phase synchronization. It is clear from these figures that in spite of the presence of the external dynamic disturbances and uncertain dynamics, the anti-phase synchronization is adequately achieved by applying the proposed controller.

Fig. 4
figure 4

Anti-phase synchronization (for Example 1): a \( x_{1} \) (dotted line) and \( y_{1} \) (solid line). b \( x_{2} \) (dotted line) and \( y_{2} \) (solid line). c \( x_{3} \) (dotted line) and \( y_{3} \) (solid line). d Control signals: \( u_{1} \) (solid line), \( u_{2} \) (dotted line) and \( {\text{u}}_{3} \) (dashed line)

Fig. 5
figure 5

Anti-phase synchronization (for Example 1): ac the anti-phase synchronization phase plots of \( x_{i} - y_{i} \). d The anti-phase synchronization error curves: \( e_{1} \) (solid line), \( e_{2} \) (dotted line) and \( e_{3} \) (dashed line)

(b) Case 3 (Projective synchronization, i.e. when \( \lambda_{1} = 0.5, \lambda_{2} = 1.25, \lambda_{3} = - 0.75 \)): From Figs. 6 and 7, it is clear that a projective synchronization between the master system and the controlled slave system is effectively and practically realized.

Fig. 6
figure 6

Projective synchronization (for Example 1): a \( x_{1} \) (dotted line) and \( y_{1} \) (solid line). b \( x_{2} \) (dotted line) and \( y_{2} \) (solid line). c \( x_{3} \) (dotted line) and \( y_{3} \) (solid line). d Control signals: \( u_{1} \) (solid line), \( u_{2} \) (dotted line) and \( u_{3} \) (dashed line)

Fig. 7
figure 7

Projective synchronization (for Example 1): ac the projective synchronization phase plots of \( x_{i} - y_{i} \). d The projective synchronization error curves: \( e_{1} \) (solid line), \( e_{2} \) (dotted line) and \( e_{3} \) (dashed line)

Example 2

To test the performances of the proposed practical projective synchronization scheme, we consider two homogeneous fractional-order chaotic Chua’s systems with a piecewise-linear nonlinearity [35]:

The master system:

$$ \left\{ {\begin{array}{l} { D_{t}^{q} x_{1} = \sigma [x_{2} - x_{1} - h(x_{1} )], } \\ {D_{t}^{q} x_{2} = x_{1} - x_{2} + x_{3} , } \\ {D_{t}^{q} x_{3} = - \beta x_{2} , } \\ \end{array} } \right. $$
(45)

The slave system:

$$ \left\{ {\begin{array}{l} {D_{t}^{q} y_{1} = \sigma [y_{2} - y_{1} - h(y_{1} )] + u_{1} + \varLambda_{1} \left( t \right), } \\ {D_{t}^{q} y_{2} = y_{1} - y_{2} + y_{3} + u_{2} + \varLambda_{2} (t), } \\ {D_{t}^{q} y_{3} = - \beta y_{2} + u_{3} + \varLambda_{3} (t), } \\ \end{array} } \right. $$
(46)

where \( h\left( {y_{1} } \right) = by_{1} + 0.5\left( {a - b} \right)\left[ {\left| {y_{1} + 1} \right| - \left| {y_{1} - 1} \right|} \right], \sigma = 13, \beta = 14.87, a = - 1.27 \) and \( b = - 0.68 \).

The fractional-order \( q \) is set to \( 0.9 \). This value ensures the existence of chaos for this fractional-order chaotic Chua’s systems [35].

The external dynamic disturbances are selected as follows: \( \varLambda_{1} \left( t \right) = \varLambda_{2} \left( t \right) = \varLambda_{3} \left( t \right) = 0.25\sin \left( {4t} \right) - 0.15 \sin \left( {5t} \right) \).

The initial conditions of the master and slave systems are chosen as: \( X\left( 0 \right) = [x_{1} \left( 0 \right),x_{2} \left( 0 \right),x_{3} \left( 0 \right)]^{T} = [0.6,0.1, - 0.6]^{T} \) and \( Y\left( 0 \right) = [y_{1} \left( 0 \right),y_{2} \left( 0 \right),y_{3} \left( 0 \right)]^{T} = [0.2, - 0.1,0.1]^{T} \).

The adaptive fuzzy systems,\( \theta_{i}^{T} \psi_{i} (Y) \), with i = 1, 2, 3, have the vector \( Y = [y_{1} ,y_{2} ,y_{3} ]^{T} \) as input. For each input variable of these fuzzy systems, as in [7], we define three (one triangular and two trapezoidal) membership functions uniformly distributed on the intervals [−4, 4].

The design parameters are chosen as follows: \( k_{11} = k_{12} = k_{13} = 1, \gamma_{\theta 1} = \gamma_{\theta 2} = \gamma_{\theta 3} = 800, \) \( \sigma_{\theta 1} = \sigma_{\theta 2} = \sigma_{\theta 3} = 0.001, \) \( \gamma_{k1} = \gamma_{k2} = \gamma_{k3} = 5, \) \( \sigma_{k1} = \sigma_{k2} = \sigma_{k3} = 0.005. \) The initial conditions of the adaptive laws are selected as follows: \( \theta_{1j} \left( 0 \right) = \theta_{2j} \left( 0 \right) = \theta_{3j} \left( 0 \right) = 0 \), and \( k_{0i} \left( 0 \right) = 0.001. \)

As in the previous example, three simulation cases are considered here:

(a) Case 1 (Complete synchronization, i.e. when \( \lambda_{1} = \lambda_{2} = \lambda_{3} = 1 \)): The simulation results of a complete synchronization between the master system (45) and the slave system (46) are depicted in Figs. 8 and 9. The time responses of both systems are illustrated in Fig. 8a–c. It is clear from this figure that a complete synchronization is practically and quickly achieved. From Fig. 8d, it is clear that the control signals are smooth, admissible and bounded. Figures 9a–c show the signal \( x_{i} \) versus \( y_{i} \) (respectively for i = 1, 2, 3), Fig. 9d gives the time evolution of the corresponding synchronization errors. Therefore, we can conclude from these obtained results that the proposed adaptive fuzzy controller is robust and can adequately achieve a complete synchronization between the systems (45) and (46), even in the presence of the external dynamic disturbances and uncertain dynamics.

Fig. 8
figure 8

Complete synchronization (for Example 2): a \( x_{1} \) (dotted line) and \( y_{1} \) (solid line). b \( x_{2} \) (dotted line) and \( y_{2} \) (solid line). c \( x_{3} \) (dotted line) and \( y_{3} \) (solid line). d Control signals: \( u_{1} \) (solid line), \( u_{2} \) (dotted line) and \( u_{3} \) (dashed line)

Fig. 9
figure 9

Complete synchronization (for Example 2): ac The synchronization phase plots of \( x_{i} - y_{i} \). d: The synchronization error curves: \( e_{1} \) (solid line), \( e_{2} \) (dotted line) and \( e_{3} \) (dashed line)

(b) Case 2 (Anti-phase synchronization, i.e. when \( \lambda_{1} = \lambda_{2} = \lambda_{3} = - 1 \)): Figures 10 and 11 illustrate the simulation results of this case. From these results, we can see that an anti-phase synchronization between both systems is practically achieved and the control signals are bounded and admissible.

Fig. 10
figure 10

Anti-phase synchronization (for Example 2): a \( x_{1} \) (dotted line) and \( y_{1} \) (solid line). b \( x_{2} \) (dotted line) and \( y_{2} \) (solid line). c \( x_{3} \) (dotted line) and \( y_{3} \) (solid line). d Control signals: \( u_{1} \) (solid line), \( u_{2} \) (dotted line) and \( u_{3} \) (dashed line)

Fig. 11
figure 11

Anti-phase synchronization (for Example 2): ac: the anti-phase synchronization phase plots of \( x_{i} - y_{i} \). d The anti-phase synchronization error curves: \( e_{1} \) (solid line), \( e_{2} \) (dotted line) and \( e_{3} \) (dashed line)

(c) Case 3 (Projective synchronization, i.e. when \( \lambda_{1} = - 2, \lambda_{2} = - 3, \lambda_{3} = 0.50 \)): From Figs. 12 and 13, it is obvious that a projective synchronization between the master system and the slave system is effectively realized.

Fig. 12
figure 12

Projective synchronization (for Example 2): a \( x_{1} \) (dotted line) and \( y_{1} \) (solid line). b \( x_{2} \) (dotted line) and \( y_{2} \) (solid line). c \( x_{3} \) (dotted line) and \( y_{3} \) (solid line). d Control signals: \( u_{1} \) (solid line), \( u_{2} \) (dotted line) and \( u_{3} \) (dashed line)

Fig. 13
figure 13

Projective synchronization (for Example 2): ac the projective synchronization phase plots of \( x_{i} - y_{i} \). d The projective synchronization error curves: \( e_{1} \) (solid line), \( e_{2} \) (dotted line) and \( e_{3} \) (dashed line)

Example 3

To test the performances of the proposed synchronization scheme on fractional-order chaotic systems with different scaling factors and different dimensions (the number of state variables for both systems is different), we consider the following chaotic systems:

The master system (fractional-order Duffing-Holmes) [31]:

$$ \left\{ {\begin{array}{l} { D_{t}^{q} x_{1} = 2.2x_{2} } \\ {D_{t}^{q} x_{2} = - 0.4x_{1}^{3} - 0.4x_{1} - 0.1x_{2} + 22\cos (1.29t)} \\ \end{array} } \right. $$
(47)

The slave system (fractional-order Arneodo’s system) [34]:

$$ \left\{ {\begin{array}{l} {D_{t}^{q} y_{1} = y_{2} + u_{1} } \\ {D_{t}^{q} y_{2} = y_{3} + u_{2} } \\ {D_{t}^{q} y_{3} = 5.5y_{1} + 3.5y_{2} - 0.4y_{3} - y_{1}^{3} + u_{3} } \\ \end{array} } \right. $$
(48)

The fractional-order \( q \) is set to \( 0.98 \). This value ensures the existence of chaos for both fractional-order chaotic systems [31], [34].

The initial conditions of the master and slave systems are chosen as: \( X\left( 0 \right) = [x_{1} \left( 0 \right),x_{2} \left( 0 \right)]^{T} = [0, 0]^{T} \) and \( Y\left( 0 \right) = [y_{1} \left( 0 \right),y_{2} \left( 0 \right),y_{3} \left( 0 \right)]^{T} = [0.2,0.2,0.1]^{T} \).

Here, our objective is to realize a practical projective synchronization between both systems (47) and (48). The synchronization errors are selected as: \( e_{1} = y_{1} + 0.1x_{1} \), \( e_{2} = y_{2} - 0.2x_{2} , e_{3} = y_{3} - 0.3(x_{1} + x_{2} ) \).

The adaptive fuzzy systems,\( \theta_{i}^{T} \psi_{i} (Y) \), with i = 1, 2, 3, have the vector \( Y = [y_{1} ,y_{2} ,y_{3} ]^{T} \) as input. For each input variable of these fuzzy systems, as in [7], we define three (one triangular and two trapezoidal) membership functions uniformly distributed on the intervals [−5, 5].

The design parameters are chosen as follows: \( k_{11} = k_{12} = k_{13} = 1, \gamma_{\theta 1} = \gamma_{\theta 2} = \gamma_{\theta 3} = 500, \) \( \sigma_{\theta 1} = \sigma_{\theta 2} = \sigma_{\theta 3} = 0.0001, \) \( \gamma_{k1} = \gamma_{k2} = \gamma_{k3} = 4, \) \( \sigma_{k1} = \sigma_{k2} = \sigma_{k3} = 0.001. \) The initial conditions of the adaptive laws are selected as follows: \( \theta_{1j} \left( 0 \right) = \theta_{2j} \left( 0 \right) = \theta_{3j} \left( 0 \right) = 0 \), and \( k_{0i} \left( 0 \right) = 0.01. \)

Simulation results obtained for this case are given in Figs. 14 and 15. From these figures, we can see obviously that the projective synchronization between the master and slave system is successfully achieved.

Fig. 14
figure 14

Projective synchronization (for Example 3): a \( x_{1} \) (dotted line) and \( y_{1} \) (solid line). b \( x_{2} \) (dotted line) and \( y_{2} \) (solid line). c \( x_{1} + x_{2} \) (dotted line) and \( y_{3} \) (solid line). d Control signals: \( u_{1} \) (solid line), \( u_{2} \) (dotted line) and \( u_{3} \) (dashed line)

Fig. 15
figure 15

Projective synchronization (for Example 3): ac 2-D phase portraits. d The projective synchronization error curves: \( e_{1} \) (solid line), \( e_{2} \) (dotted line) and \( e_{3} \) (dashed line)

6 Conclusion

In this paper, based on a continuous fuzzy adaptive control, we have investigated a practical projective synchronization scheme of two distinct fractional-order chaotic systems subject to both uncertain dynamics and external disturbances. Of fundamental interest, a Lyapunov based analysis has been carried out to conclude about the practical stability as well as the exponential convergence of the synchronization errors to an adjustable residual set. Finally, three illustrative simulation examples have been given to show the interest of the proposed projective synchronization system.