1 Introduction

Nowadays, the large amount of uncertainty that is inherent in most of industrial processes is a major concern in the process control systems. For this reason, the importance of the fuzzy logic field has been increased with many works involving hybrid systems between fuzzy logic, PID and complex algorithms, such as bee colony (Kumar and Kumar 2017b), big-bang big-crunch optimization (Yesil 2014), gradient descend methods (Sakalli et al. 2016), cuckoo search (Fatihu Hamza et al. 2017) and granular computing (Castillo et al. 2016b). There is a big amount of work being done to implement fuzzy logic controllers (FLC) that are replacing the PID controllers in both types. On type-1 singleton (Jie et al. 2010; Kumbasar and Hagras 2015; Álvarez et al. 2018; Arghavani et al. 2017; Karasakal et al. 2013; Sakalli et al. 2014a, b; Yesil and Guzay 2014; Savran et al. 2015; Var et al. 2015; Souran et al. 2014; Kumar and Kumar 2017a; Kosari et al. 2017; Reyes et al. 2016; Kumbasar and Hagras 2017; Nayak et al. 2018; Kudinov et al. 2017; Mohanty et al. 2016; Kumar et al. 2018). On type-1 non-singleton (Ramos et al. 2016; Reyes et al. 2018) and type-2 singleton (Kumbasar 2014a, b, 2016; Kumbasar et al. 2013; Sakalli et al. 2014a, b; Kumbasar and Hagras 2015; Olivas et al. 2019; Aliasghary et al. 2012; Mehndiratta et al. 2016; Castro et al. 2008; Sahin and Kumbasar 2018; Kumar and Kumar 2017a, b, c, d; Khosla et al. 2014; El-Bardini and El-Nagar 2014a, b; Beirami and Zerafat 2015; Yesil 2014; Fatihu Hamza et al. 2017; Sanchez et al. 2015a, b; Ontiveros-Robles et al. 2018; Cervantes and Castillo, 2015; Fatihu Hamza et al. 2017; Yesil et al. 2014). However, the usage of the hybrid PID assembled with fuzzy logic systems in order to calculate and update the PID gains is gaining places on industrial control applications, where the PID performance is substantially enhanced with the uncertainty processing of the fuzzy logic systems. These hybrid controllers can be considered as an emerging class of intelligent hybrid controllers, see Table 1. The uncertainties of the measurement processes in the industrial facilities are the motivation to use the type-2 fuzzy models. Their nature is capable to manage and process the uncertainties present in the measurements and provide accurate results. These facts motivate the use of the type-2 fuzzy models to tuning and actualize the parameters of the PID controller.

Table 1 Hybrid PID controllers using T1 and IT2 fuzzy systems

The literature analysis shows that the hybrid model based on non-singleton type-1 fuzzy logic systems (T1 NSFLS) using non-singleton numbers practically was not used to model PID controllers. Only two papers have shown their use and represented 3.6% of the publications found in the literature. In Ramos et al. (2016), type-1 non-singleton fuzzy logic system (T1 NSFLS) is applied on an Atmega 2560 for controlling a stepper motor. The uncertainties presented in the processes are not treated because of the usage of the T1 SFLS models in the 40% of the proposals studied; only the 3.6% use the T1 NSFLS. The uncertainties are “treated” in some manner by the usage of the interval singleton type-2 fuzzy models (IT2 SFLS). In Reyes et al. (2018), we find the hybrid use of T1 NSFLS to update the PID gains in a second-order plant in a faster way when it is compared to a type-1 singleton models.

In the control field, a lot of work is found in the literature. Ontiveros-Robles et al. (2018) study and compare the results of the robustness of the type-2 models against type-1. Castillo et al. (2016a) present a comparison between type-1, type-2 and General type-2 fuzzy models (GT2) to show the efficiency and the performance of different models in a controller. Castillo et al. (2016a, b) add the granularity to the GT2 model to divide the controller in several phases using alpha planes to the implementation. Also, Sanchez et al. (2015a, b) use the advantage of the type-2 fuzzy sets to add the uncertainties and process them in granules that later are optimized by a metaheuristic as Cuckoo search. Zarandi et al. (2019) use the GT2 in design and diagnosis using z-slices and other methods to optimize and model the system in several phases. Sanchez et al. (2015a, b) use GT2 to demonstrate that this model is capable to outperform the type-1 and type-2 fuzzy models over external perturbations with the handle of uncertainties presented. Castro et al. (2008) present a tool to help the modeling of IT2 FLS that simplifies the generation of the rules and the inference process. Cervantes and Castillo (2015) present a multiple IT2 fuzzy controller to adjust the outputs and the global results of a controller.

The usage of fuzzy hybrid PID controllers is extensive, e.g., a control model of an inverted pendulum applies an interval singleton type-2 fuzzy logic system (IT2 SFLS) controller that stabilizes the pendulum position (Khosla et al. 2014). A hybrid PID controller that uses an IT2 SFLS is analyzed on El-Bardini and El-Nagar (2014a) where the fuzzy system directly calculates the gains of the PID. It uses triangular fuzzy sets in the input-output values, and a method is proposed to reduce the computational complexity of the outputs. In El-Bardini and El-Nagar (2014b), it is proposed an interval type-2 fuzzy proportional integral derivative controller for controlling an inverted pendulum with an uncertain model called simplified type-reduction method, where the controller handles uncertainties due to the structure of the IT2 SFLS system. A fuzzy self-tuning PID is proposed in Jie et al. (2010), where the error and change of error are the inputs to a fuzzy logic system to obtain the correction to the gains of PID controller. The BP algorithm is used for dynamic calculating and updating the gains of a PID controller (Reyes et al. 2016), and the performance is compared with that of an IT2 SFLS and with professional PID controllers obtaining the better response of these. In Reyes et al. (2018), the PID gains are updated by a T1 NSFLS and it is compared with a T1 SFLS controller obtaining better responses and lesser computational time. Also, the T1 SFLS and the IT-2 SFLS are used in partial form for tuning and updating the gains in a top control and system stabilization in Kumbasar and Hagras (2017), for tuning and updating the PI gains. In Kumbasar (2014a), the interval type-2 is used to control and stabilize the PD gains.

The literature shows work related to PID controllers and IT2 FLS systems using only singleton numbers. Kumbasar (2014b) uses the IT2 SFLS to design and tuning the parameters of a PID controller. In Kumbasar (2016), it uses the IT2 to online tuning the PID controller using T1 singleton systems and later scale to IT2 SFLS model. Kumbasar et al. (2013) use the IT2 SFLS systems to adjust the fuzzy rule base with the elimination or acceptation criteria of activate or inactive rule. Sakalli et al. (2016) use the IT2 SFLS combined with a gradient descend method and Kalman filters to improve the performance of the fuzzy PID controller. Kumbasar and Hagras (2015) use the IT2 SFLS to generate the universe of disclosure and reduce them into z-slices to obtain a self-tuning technique via IT2 model. Kumbasar (2016) presents a self-tuning mechanism based on type-1 models that extend onto type-2 model to study their structure based on a 3 × 3 rule base in a singleton type-1 and type 2 models. Aliasghary et al. (2012) proposes a methodology to assemble interval singleton type-2 fuzzy model in a partial PID controller using only proportional and integral part of the PID controller. Mehndiratta et al. (2016) validate the construction and use of the footprint of uncertainty on a helicopter to tuning PID controller using type-2 PID fuzzy model. Sakalli et al. (2014a, b) present the development of IT2 PID controller with a four rule base that could be visualized by metaheuristics and later is analyzed around the steady state and demonstrate the analogy between conventional and fuzzy PID controllers. Kumbasar (2014a) studied the robustness and stability of the PD singleton IT2 controller but missing the integral part. Sahin and Kumbasar (2018) use a generic type-2 fuzzy logic controller to avoid the uncertainties present in a computer games. These uncertainties are defined as obstacles in the game board. Kumar and Kumar (2017b) present a singleton IT2 TSK fractional-order PID controller to study and measure the time response and the load of the disturbance via bee colony and genetic algorithms to optimize the parameters. Khosla et al. (2014) use the IT2 to develop and adjust the parameters to maintain the stability position of the inverted pendulum. El-Bardini and El-Nagar (2014a) develop a controller model based on IT2 to show the robustness of the proposal against the classic PID controllers. Beirami and Zerafat (2015) use the IT2 to model the time delay and uncertainties present in a reactor tank via an adaptive adjustment of the parameters of a PID controller. Kumar and Kumar (2017a) implement the PID controller with IT2 fuzzy to avoid the nonlinearities, the uncertainties and external disturbances of the process of a manipulator robot optimized by metaheuristics as bee colony and genetic algorithms. Yesil (2014) uses the IT2 to optimize the load frequency problem (LFP) and to avoid the complexities of the LFP using big-bang big-crunch optimization to scaling the factors and to minimize the deviations via the IT2 model. Fatihu Hamza et al. (2017) use the cuckoo search algorithm to optimize the gains of the PID model due to the uncertainties. Kumar and Kumar (2017c) argument the use of IT2 due the uncertainties, nonlinearity’s, perturbations and random noise of the signals of robotic systems and to deal with these characteristics use the genetic algorithms to optimize and scaling the IT2 PD + I controller; El-Bardini and El-Nagar (2014b) applied the IT2 model in a PID control to an inverted pendulum positioned in a cart; Alberto (2000) uses the IT2 to adapt the control of a robot manipulator; Kumar and Kumar (2017d) use the artificial bee colony algorithm to optimize the antecedents of the fuzzy rules of an IT2 model of a PID controller. Yesil et al. (2014) uses the IT2 model to improve the system performance and to provide a self-tuning mechanism to scale the PID controller in the transient phase. Cervantes and Castillo (2015) use the IT2 model to provide a global result in a multiphase model and a hierarchical architecture to adjust the result of the model in an airplane flight control.

Also was found a little work on general type-2 fuzzy systems: Kumbasar and Hagras (2015) use the IT2 in the training phase to adjust, tuning and updating the gains but only in proportional and integral gains in a type-2 fuzzy singleton model. Castillo et al. (2016a) use the type-2 to compare their results against the GT2 model and show their advantages and enhancements in their performance. Castillo et al. (2016a, b) design a tool to help the researchers in the modeling phase in particular to generate the fuzzy rules. Cervantes and Castillo (2015) use the IT2 to adjust the outputs of a controller via multiple IT2 systems to provide a global result of the mentioned controller. Zarandi et al. (2019) approach the type-2 model to provide an interval capable to diagnosis that is adjusted for optimization and it is done in posterior phase. Sanchez et al. (2015a, b) approach the capabilities of the type-2 models to add the uncertainties present in the data to the model and process them. Ontiveros-Robles et al. (2018) use the IT2 fuzzy to compare the robustness of the model against type-1 fuzzy. Sanchez et al. (2015a, b) approach the interval type-2 to generate granules of value to that later are optimize by metaheuristic models Olivas et al. (2019) propose a type-2 fuzzy model with dynamic adaptation in metaheuristic models, among others).

There are no publications in the literature on using a non-singleton BP method as a learning mechanism for antecedent’s and consequent’s parameter tuning of each one of the three IT2 NSFLS-1 systems, which are used to calculate as interval sets the corresponding adjustments for the three gains of the PID controller, the \( \varvec{ K}_{\varvec{p}} \left( \varvec{k} \right) \), \( \varvec{K}_{\varvec{i}} \left( \varvec{k} \right) \), and \( \varvec{K}_{\varvec{d}} \left( \varvec{k} \right) \), being the first main contribution of this paper. The usage of type-1 non-singleton numbers represents the chance to manage, as the mean of an interval set, the numerical values of each gain of the PID controller and represents an additional contribution.

The non-singleton BP training algorithm uses the plant output error measurement, which is processed as non-singleton number, using its mean and its standard deviation values. Each IT2 NSFLS-1 uses the non-singleton error and its non-singleton partial to update its Gaussians non-singleton parameter’s values. This approach is not found in the literature and constitutes the second main contribution of this proposal.

This proposal also presents the math formulation of the non-singleton BP method that uses the non-singleton partial derivatives of the non-singleton error of the output of the second-order plant with respect to each parameter of the IT2 NSFLS-1 fuzzy system.

There is one IT2 NSFLS-1 system to calculate as the mean of an interval value the adjustment \( \Delta \varvec{KP}\left( \varvec{k} \right) \) for the \( \varvec{K}_{\varvec{p}} \left( \varvec{k} \right) \) gain; one IT2 NSFLS-1 system to calculate as the mean of an interval value the adjustment \( \Delta \varvec{KI}\left( \varvec{k} \right) \) for the \( \varvec{K}_{\varvec{i}} \left( \varvec{k} \right) \) gain; and one IT2 NSFLS-1 system to calculate the mean of an interval value the adjustment \( \Delta \varvec{KD}\left( \varvec{k} \right) \) for the \( \varvec{K}_{\varvec{d}} \left( \varvec{k} \right) \) gain.

Each IT2 NSFLS-1 uses two input variables, granulated as non-singleton values: (1) the error \( e\left( k \right) \) and its standard deviation \( \sigma e\left( k \right) \), and (2) the change of error \( \Delta e\left( k \right) \) and its standard deviation \( \sigma \Delta e\left( k \right) \). The error is calculated as the difference between two non-singleton Gaussians numbers, the set point value, and the value measured by the sensor located at the output section of the plant.

During the experimental modeling process, the antecedent’s and consequent’s parameters of the rule base remain fixed on each of the next four different benchmarking assemblies composed by a PID controller and by a specific fuzzy system: (1) a PID controller, which gains adjustments are calculated by a T1 SFLS, which inputs are singleton or crisp values; (2) a PID controller, which gains adjustments are calculated by a T1 NSFLS, which inputs are non-singleton values; (3) a PID controller, which gains adjustments are calculated by an IT2 SFLS, which inputs are singleton or crisp values; and (4) a PID controller, which gains adjustments are calculated by an IT2 NSFLS-1, which inputs are non-singleton values.

The classic PID Ziegler–Nichols’ (PID ZN), which gains remain fixed and its inputs are singletons or crisp values is also used as a benchmarking control system.

Table 1 contains a resume of the references found in the literature and is arranged according to the application of the proposal, and by the fuzzy model used to calculate the adjustment for each PID gains.

This paper is organized as follows. Section 2 describes the problem statement of the systems modeled as second-order process, the PID controller formulations, along with a basic explanation of the T1 and IT2 FLS systems. The proposed method is described in Sect. 3. Section 3.4 shows the simulation, and the results are presented in Sect. 5. Finally the conclusions are presented in Sect. 4.

2 Problem statement

2.1 The second-order model of the plant

A second-order transfer function model was used to represent the plant under control. This model is considered without time delay. Figure 1 shows that

$$ G\left( s \right) = \frac{Y\left( s \right)}{U\left( s \right)} = \frac{K}{{\left( {T_{1} s + 1} \right)\left( {T_{2} s + 1} \right)}} $$
(1)

where \( \varvec{G}\left( \varvec{s} \right) \) represents the transfer function of the plant, \( \varvec{K} \) represents the gain of the process, \( \varvec{T}_{1} \) and \( \varvec{T}_{2} \) are the time constants of the process, and \( \varvec{s} \) is the complex variable. Its equivalent difference equation in discrete period of time (Gaidhane et al. 2019) can be expressed as:

$$ y\left( k \right) = K_{2} u\left( k \right) - a_{1} y\left( {k - 1} \right) - a_{2} y\left( {k - 2} \right) $$
(2)

where

$$ \alpha_{1} = e^{{{\raise0.7ex\hbox{${ - T_{s} }$} \!\mathord{\left/ {\vphantom {{ - T_{s} } {T_{1} }}}\right.\kern-0pt} \!\lower0.7ex\hbox{${T_{1} }$}}}} $$
(3)
$$ \alpha_{2} = e^{{{\raise0.7ex\hbox{${ - T_{s} }$} \!\mathord{\left/ {\vphantom {{ - T_{s} } {T_{2} }}}\right.\kern-0pt} \!\lower0.7ex\hbox{${T_{2} }$}}}} $$
(4)
$$ a_{1} = - \left( {\alpha_{1} + \alpha_{2} } \right) $$
(5)
$$ a_{2} = \alpha_{1} *\alpha_{2} $$
(6)
$$ K_{2} = K*T_{s} \frac{{\alpha_{1} - \alpha_{2} }}{{T_{1} - T_{2} }} $$
(7)

where \( \varvec{T}_{\varvec{s}} = \frac{\varvec{T}}{20} \) is the sampling time or the measurement period, and \( \varvec{T} \) is the minimum value of the time constants of the plant, min \( [\varvec{T}_{1} ,\varvec{T}_{2} ] \), \( \varvec{y}\left( \varvec{k} \right) \) is the output value of the plant at the discrete time \( \varvec{k} \), and \( \varvec{u}\left( \varvec{k} \right) \) is the PID control value, which is the input of the plant.

Fig. 1
figure 1

Block diagram of the classic PID controller

2.2 PID controller

The PID controller has several versions, which are widely used in the industry (Gaidhane et al. 2019). Due to its simplicity and robustness to execute rational decisions, which take into account the present, the past and the desired states of the plant under control, the PID is the industry’s preferred controller (proportional, integral and derivative controllers). The positional version of the PID’s discrete algorithm is used in this proposal:

$$ u\left( k \right) = K_{p} \left[ {e\left( k \right) + \frac{{T_{c} }}{{T_{i} }}\mathop \sum \limits_{i = 0}^{k} e\left( i \right) + \frac{{T_{d} }}{{T_{c} }}\left[ {e\left( k \right) - e\left( {k - 1} \right)} \right]} \right] $$
(8)
$$ u\left( k \right) = K_{p} e\left( k \right) + K_{i} \mathop \sum \limits_{i = 0}^{k} e\left( i \right) + K_{d} \left[ {e\left( k \right) - e\left( {k - 1} \right)} \right] $$
(9)

where \( \varvec{u}\left( \varvec{k} \right)\varvec{ } \) is the control variable, \( \varvec{e}\left( \varvec{k} \right) \) is the error of the output in the discrete time k, \( \varvec{e}\left( {\varvec{k} - 1} \right) \) represents the error in the discrete time \( \varvec{ k} - 1 \), \( \varvec{K}_{\varvec{p}} \) is the proportional gain, \( \varvec{Ti} \) represents the integral time, \( \varvec{T}_{\varvec{d}} \) represents the derivative time, and \( \varvec{T}_{\varvec{c}} \) is the control interval time. According to (Gaidhane et al. 2019) in order to avoid oscillations in the behavior of the PID controllers, the control period should be selected as:

$$ \varvec{T}_{\varvec{c}} \ge 5.0\varvec{*T}_{\varvec{m}} $$
(10)

where \( \varvec{T}_{\varvec{m}} = \varvec{T}_{\varvec{s}} \) is the measurement interval time.

Using

$$ \varvec{e}\left( \varvec{k} \right) = \varvec{y}_{{\varvec{ref}}} - \varvec{y}_{\varvec{m}} \left( \varvec{k} \right) $$
(11)

where \( \varvec{y}_{\varvec{m}} \) is the feedback, the measurement of the output of the plant, and \( \varvec{y}_{{\varvec{ref}}} \) is the set point value, the PID controller (2) can be expressed as:

$$ u\left( k \right) = \left( {K_{p} + K_{i} *k} \right)y_{ref} - \left( {K_{p} + K_{i} + K_{d} } \right)y\left( {k - 1} \right) - \left( {K_{i} + K_{d} } \right)y\left( {k - 2} \right) - \left( {K_{i} } \right)\mathop \sum \limits_{i = 0}^{k - 3} y\left( i \right) , $$
(12)

where

$$ \varvec{K}_{\varvec{i}} = \varvec{K}_{\varvec{p}} \frac{{\varvec{T}_{\varvec{c}} }}{{\varvec{T}_{\varvec{i}} }} $$
(13)
$$ \varvec{K}_{\varvec{d}} = \varvec{K}_{\varvec{p}} \frac{{\varvec{T}_{\varvec{d}} }}{{\varvec{T}_{\varvec{c}} }} $$
(14)

\( \varvec{y}\left( \varvec{k} \right) \), \( \varvec{y}\left( {\varvec{k} - 1} \right) \), and \( \varvec{y}\left( {\varvec{k} - 2} \right) \) are the output of the plant in the discrete time \( \varvec{k} \), \( \varvec{k} - 1 \), and \( \varvec{k} - 2 \).

2.3 T1 FLS systems (Mendel 2001)

A type-1 (T1) fuzzy set, A, is a generalization of a crisp set \( \varvec{ x} \in \varvec{X} \). It is defined on a universe of discourse \( \varvec{ X} \), and it means the space or interval where \( \varvec{X} \) could get a value in a specification and it is characterized by the membership function \( \varvec{ \mu }_{\varvec{A}} \left( \varvec{x} \right) \) that takes on values in the interval \( \left[ {0,1} \right] \). A membership function provides a measure of the degree of membership of an element in X to the fuzzy set, which is really the membership of x in A. Such a set may be represented as:

$$ A = \left\{ {\left( {x,\mu_{A} \left( x \right)} \right)/\forall x \in X} \right\} $$
(15)

T1 membership function \( \mu_{A} \left( x \right) \) is constrained to be between 0 and 1 for all \( x \in X \), and is a 2D Gaussian function. The T1 fuzzy rule base consists of a set of IF–THEN rules that represents the model of the system. The type-1 FLS has p inputs, \( x_{1} \in X \), \( x_{2} \in X \),…, \( x_{p} \in X \), and one output \( y \in Y \), which have a rule base size of M rules of the form:

$$ R^{i} :IF x_{1} \;{\text{is}}\;F_{1}^{i} \;{\text{and}}\;x_{2 } \;{\text{is}}\;F_{2}^{i} \ldots {\text{and}}\;x_{p } \;{\text{is}}\;F_{p}^{i} \;THEN\; y^{i} \;{\text{is}}\;G^{i} $$
(16)

where i = 1,2,…M, \( F_{1}^{i} \) is the antecedent fuzzy set of the \( x_{1} \), \( F_{2}^{i} \) is the antecedent fuzzy set of \( x_{2} \), …, \( F_{p}^{i} \) is the antecedent fuzzy set of \( x_{p} \), \( G^{i} \) is the consequent fuzzy set of the output \( y^{i} \), and \( F_{p}^{i} = \mu_{{A_{p} }}^{i} \left( x \right) \). These rules represent a fuzzy relation between the input space \( X_{1} \times X_{2} \times \ldots \times X_{p} \) and the output space \( Y \), and it is complete, consistent and continuous (Wang 1999). See Fig. 2 for singleton model and Fig. 3 for non-singleton model.

Fig. 2
figure 2

Adapted from Mendel (2001)

Pictorial description of singleton input and antecedent operations for T1 SFLS.

Fig. 3
figure 3

Adapted from Mendel (2001)

Pictorial description of non-singleton input and antecedent operations for a T1 NSFLS.

The membership function for each antecedent is a Gaussian function as:

$$ \mu_{Ak}^{i} \left( {x_{q} } \right) = F_{q}^{i} = \exp \left[ { - \frac{1}{2}\left[ {\frac{{x_{q} - m_{q}^{i} }}{{\sigma_{q}^{i} }}} \right]} \right] $$
(17)

where \( m_{q}^{i} \) is mean, \( \sigma_{q}^{i} \) is the standard deviation, q = 1, 2, …, p, p is the number of inputs, and i = 1,2,…M. The means of the antecedent fuzzy sets were uniformly distributed over the entire input space.

The membership function for each consequent is a Gaussian function with the form:

$$ \mu_{G}^{i} \left( {y^{i} } \right) = G^{i} = \exp \left[ { - \frac{1}{2}\left[ {\frac{{y^{i} - m_{y}^{i} }}{{\sigma_{y}^{i} }}} \right]} \right] $$
(18)

where \( m_{y}^{i} \) is the mean, \( \sigma_{y}^{i} \) is the standard deviation of the output \( y^{i} \), and i = 1,2,…M.

If \( \varvec{\mu}^{\varvec{i}} \) is the firing level of the consequent of the ith rule, then the centroid defuzzifier is given as:

$$ y_{c} \left( x \right) = \frac{{\mathop \sum \nolimits_{i = 1}^{M} y_{i} \mu^{i} }}{{\mathop \sum \nolimits_{i = 1}^{M} \mu^{i} }} $$
(19)

where \( y_{i} \) is the mean value of the Gaussian function of the ith consequent, and \( y_{c} \) is the calculated value of the fuzzy system.

2.3.1 T1 SFLS

The singleton T1 FLS are those systems which inputs are modeled as crisp numbers:

$$ x_{q} = x_{q}^{'} $$
(20)

where q = 1,2…p, with p the number of inputs, and the antecedents and consequents are fuzzy sets, are Gaussians of type-1, as (17) and (18).

The singleton fuzzification operation or value transformation mechanism in a type-1 fuzzy set is shown in Fig. 2. The vertical axis represents the membership grade, \( \varvec{\mu}_{{\varvec{A}_{\varvec{q}} }} \left( {\varvec{x^{\prime}}_{\varvec{q}} } \right) \in \left[ {0,\varvec{ }1} \right] \) of the crisp input value \( \varvec{x'}_{\varvec{q}} \). The horizontal axis represents the real values of the universe of disclosure of each crisp input.

2.3.2 T1 NSFLS

The T1 NSFLS systems are those systems, which inputs are modeled as Gaussians functions of type-1, non-singleton values with mean and standard deviation, and these functions can be used to handle the uncertainty of the inputs:

$$ \mu_{{X_{q} }} \left( {x_{q} } \right) = \exp \left[ { - \frac{1}{2}\left[ {\frac{{x_{q} - m_{{X_{q} }} }}{{\sigma_{{X_{q} }} }}} \right]} \right] $$
(21)

where \( \varvec{m}_{{\varvec{X}_{\varvec{q}} }} \) is the mean of each input centered at \( \varvec{x'}_{\varvec{q}} \), \( \varvec{m}_{{\varvec{X}_{\varvec{q}} }} = \varvec{x'}_{\varvec{q}} ,\varvec{ \sigma }_{{\varvec{X}_{\varvec{q}} }} \) is the standard deviation of each input, q = 1,2…p. These systems have antecedents and consequents modeled as fuzzy sets which use Gaussians of type-1, as (17) and (18).

The non-singleton fuzzification operation in a type-1 fuzzy set is shown in Fig. 3. In this type of inputs, their uncertainty values \( \sigma_{{X_{q} }} \) are taking into account together with their mean values \( x_{q} = x_{q}^{'} \).

The T1 NSFLS systems have their inputs modeled as type-1 fuzzy numbers that can handle measurements uncertainties when applied to antecedents and consequents parameters modeled as Gaussians of type-1 fuzzy values. The measured data that come from the sensors of the process are uncertain, but there is no way to account for any uncertainty in the antecedent and consequent membership functions of T1 NSFLS systems. These systems only take into account for the noise through the filtering action of the non-singleton fuzzification operations.

2.4 IT2 FLS systems (Mendel 2001)

Consider the transition from an ordinary set to fuzzy sets. When it is not easy to determine the membership of an element in a set as 0 or 1, fuzzy sets of type-1 are used. Similarly, when the circumstances are so fuzzy that there is trouble to determine the membership grade even as a crisp number in \( \left[ {0, 1} \right] \), fuzzy sets of type-2 are used.

A general type-2 fuzzy set, denoted by \( \tilde{A} \), is characterized by a type-2 membership function \( \mu_{{\tilde{A}}} \left( {x,u} \right) \), where\( x \in X \) and \( u \in J_{x} \subseteq \left[ {0,1} \right] \):

$$ \tilde{A} = \left\{ {\left( {\left( {x,u} \right),\mu_{{\tilde{A}}} \left( {x,u} \right)} \right) |\;\forall x \in X,\;\forall u \in J_{x} \subseteq \left[ {0,1} \right]} \right\} $$
(22)

and \( 0 \le \mu_{{\tilde{A}}} \le 1 \)

The amplitude of a secondary membership function is called a secondary grade. In (2), \( \mu_{{\tilde{A}}} \left( {x,u} \right) \) for \( x \in X \), \( u \in J_{x} \) is the secondary grade.

When \( \mu_{{\tilde{A}}} \left( {x^{\prime } ,u^{\prime } } \right) = 1, \forall u \in J_{x} \subseteq \left[ {0,1} \right] \) in (11), then the secondary membership functions are interval sets, and if this is true for \( \forall x \in X \), then is the case of an interval type-2 membership function. They reflect a uniform uncertainty at the primary memberships of x.

A Mamdani interval type-2 fuzzy logic system having p inputs \( x_{1} \in X_{1} , \ldots , x_{p} \in X_{p} \) and the output space \( y \in Y \) is represented by fuzzy IF–THEN rules that represent input–output relations of a system and can be expressed as:

$$ R^{i} :IF\; x_{1} \;{\text{is}}\;\tilde{F}_{1}^{i} \;{\text{and}}\;x_{2 } \;{\text{is}}\;\tilde{F}_{2}^{i} \ldots \;{\text{and}}\;x_{p } \;{\text{is}}\;\tilde{F}_{p}^{i} \;THEN\;y^{i} \;{\text{is}} \tilde{G}^{I} $$
(23)

where \( y^{i} \) is the consequent output of the ith rule with an interval type-2 fuzzy set value \( \tilde{G}^{i} \) (i = 1,…,M rules), and \( \tilde{F}_{q}^{i} \) (q = 0, 1, …, p, with p inputs) are interval type-2 antecedents fuzzy sets. This rule represents a type-2 relation between the input space \( X_{1} \times X_{2} \times \ldots \times X_{p} \), and the output space Y of the type-2 FLS.

The membership function for each antecedent is a Gaussian function as:

$$ \mu_{{\tilde{A}q}}^{i} \left( {x_{q} } \right) = \tilde{F}_{q}^{i} = \exp \left[ { - \frac{1}{2}\left[ {\frac{{x_{q} - m_{q}^{i} }}{{\sigma_{q}^{i} }}} \right]} \right] $$
(24)

where \( m_{q}^{i} \in \left[ {m_{q1}^{i} ,m_{q2}^{i} } \right] \) is the uncertain mean, q = 1,2,…,p (p the number of inputs) and i = 1,2,.…,M (the number of M rules), and \( \sigma_{q}^{i} \) is the standard deviation. The means of the antecedent fuzzy sets are uniformly distributed over the entire input space. It contains the uncertainty contained in the antecedent fuzzy sets.

The membership function for each consequent is a Gaussian function with the form:

$$ \mu_{{\tilde{G}}}^{i} \left( {y^{i} } \right) = \tilde{G}^{i} = \exp \left[ { - \frac{1}{2}\left[ {\frac{{y^{i} - m_{y}^{i} }}{{\sigma_{y}^{i} }}} \right]} \right] $$
(25)

where \( \varvec{m}_{\varvec{y}}^{\varvec{i}} \in \left[ {\varvec{m}_{{\varvec{y}_{1} }}^{\varvec{i}} ,\varvec{m}_{{\varvec{y}_{2} }}^{\varvec{i}} } \right] \) is the uncertain mean, i = 1,2,…M (The number of M rules), \( \varvec{\sigma}_{\varvec{k}}^{\varvec{i}} \) is the standard deviation. It contains the uncertainty of the consequent fuzzy sets. \( \tilde{\varvec{G}}^{\varvec{i}} \) of the ith can be represented by an interval set \( [\varvec{y}_{\varvec{l}}^{\varvec{i}} ,\varvec{y}_{\varvec{r}}^{\varvec{i}} ] \). If \( \bar{\varvec{f}}^{\varvec{i}} \) and \( \varvec{\underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{f} }^{\varvec{i}} \) are the firing interval of the consequent of the ith rule, see Figs. 4 and 5, then the type reduction and defuzzification can be given as:

$$ y_{l} = \frac{{\mathop \sum \nolimits_{i = 1}^{L} \bar{f}^{i} y_{l}^{i} + \mathop \sum \nolimits_{i = L + 1}^{M} \underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{f}^{i} y_{l}^{i} }}{{\mathop \sum \nolimits_{i = 1}^{L} \bar{f}^{i} + \mathop \sum \nolimits_{i = L + 1}^{M} \underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{f}^{i} }} $$
(26)
$$ y_{r} = \frac{{\mathop \sum \nolimits_{i = 1}^{R} \underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{f}^{i} y_{r}^{i} + \mathop \sum \nolimits_{j = R + 1}^{M} \bar{f}^{i} y_{l}^{j} }}{{\mathop \sum \nolimits_{i = 1}^{R} \underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{f}^{i} + \mathop \sum \nolimits_{i = R + 1}^{M} \bar{f}^{i} }} $$
(27)
$$ y_{c} = f_{ns2 - 1} = \frac{{y_{l} + y_{r} }}{2} $$
(28)

where L and R are calculated values by optimization means, \( \left[ {y_{l} , y_{r} } \right] \) is the interval set calculated value of the type-2 fuzzy system, and \( y_{c} \) is the mean value of the interval set.

Fig. 4
figure 4

Adapted from Mendel (2001)

Pictorial description of singleton input and antecedent operations for an IT2 SFLS.

Fig. 5
figure 5

Adapted from Mendel (2001)

Pictorial description of non-singleton input and antecedent operations for an IT2 NSFLS-1.

IT2 FLS takes into account the rule (antecedent and consequent) uncertainties due to construction and initial training with noisy data.

2.4.1 IT2 SFLS

The singleton IT2 SFLS are those systems which inputs are modeled as crisp numbers:

$$ x_{q} = x_{q}^{'} $$
(29)

where q = 1,2…p, with p as the number of inputs. The antecedents and consequents are modeled as fuzzy sets, which use Gaussians of type-2, as (24) and (25), respectively.

The singleton fuzzification operation in an interval type-2 fuzzy set is shown in Fig. 4. The vertical axis represents the primary membership of \( \varvec{u} = \varvec{J}_{{\varvec{x}_{\varvec{q}} }} \) of \( \varvec{x'}_{\varvec{q}} ,\varvec{ J}_{{\varvec{x}_{\varvec{q}} }} \in \left[ {0,\varvec{ }1} \right] \), of the crisp input value \( \varvec{x'}_{\varvec{q}} \).The horizontal axis represents the real values of the universe of disclosure of crisp each input.

2.4.2 IT2 NSFLS-1

The interval type-1 non-singleton type-2 FLS are those systems, which inputs are modeled as Gaussians functions of type-1, as non-singleton values with mean and standard deviation, and these functions can be used to handle the uncertainty of the inputs:

$$ \mu_{{X_{q} }} \left( {x_{q} } \right) = \exp \left[ { - \frac{1}{2}\left[ {\frac{{x_{q} - m_{{X_{q} }} }}{{\sigma_{{X_{q} }} }}} \right]} \right] $$
(30)

where \( \varvec{m}_{{\varvec{X}_{\varvec{q}} }} \) is the mean of each input centered at \( \varvec{m}_{{\varvec{X}_{\varvec{q}} }} = \varvec{x'}_{\varvec{q}} ,\varvec{ \sigma }_{{\varvec{X}_{\varvec{q}} }} \) is the standard deviation of each input, q = 1,2…p. The antecedents and consequents are fuzzy sets, which use Gaussians of type-2, as (24) and (25).

The non-singleton fuzzification operation in an interval type-2 fuzzy set is shown in Fig. 5. In this type of inputs, the uncertainty values \( \sigma_{{X_{q} }} \) are taken into account together with their mean values \( x_{q} = x_{q}^{'} \).

The IT2 NSFLS-1 systems take into account all the uncertainties that can be presented in a fuzzy logic system: (a) the antecedent and consequent uncertainties due to the heuristic construction of the fuzzy rule base and the estimation of the first values of their parameters using noisy data, and (b) the uncertainties due to the measurements that are used during the control and feedback processes.

3 Proposed method

The parameters of the PID controller are initially calculated using the Ziegler–Nichols tuning rule, based on the parameters of the second-order plant, and on its experimental step-function response. The initial values of the PID gains contain uncertainties due to the uncertainty generated during the identification process of the plant and due to the use of Ziegler–Nichols rule. The fuzzy rule base of the proposed IT2 NSFLS-1 systems is constructed using a heuristic method that incorporates uncertainty in the antecedents and consequents fuzzy sets. The proposed assembly uses three IT2 NSFLS-1 systems to calculate the adjustment for each the three gains of the PID controller, (2), in order to reduce the variations and the transient time on the desired output of the plant until the stopping criteria established by the user is accomplished.

3.1 Proposed dynamic updating of the PID gains using an IT2 NSFLS-1 system

Three IT2 NSFLS-1 systems update the gains of the PID controller (2), through the processing of two type-1 fuzzy inputs: (a) the error \( \varvec{e}\left( \varvec{k} \right) \) that is calculated using the feedback measurement of the output of the plant \( \varvec{y}_{\varvec{m}} \left( \varvec{k} \right) \), and the reference value \( \varvec{y}_{{\varvec{ref}}} \) or set point, (31), and its standard deviation \( \varvec{\sigma e}\left( \varvec{k} \right) \); and (b) the change of error \( \Delta \varvec{e}\left( \varvec{k} \right) \) that is calculated using the errors \( \varvec{e}\left( \varvec{k} \right),\varvec{ e}\left( {\varvec{k} - 1} \right) \) in the discrete times k and k − 1, \( \varvec{k} = 1,2,3, \ldots \), and its standard deviation, \( \varvec{\sigma}\Delta \varvec{e}\left( \varvec{k} \right) \), (32).

$$ \varvec{e}\left( \varvec{k} \right) = \varvec{y}_{{\varvec{ref}}} - \varvec{y}_{\varvec{m}} \left( \varvec{k} \right) = \varvec{N}\left( {\varvec{y}_{{\varvec{ref}}} ,\varvec{ }0} \right) - \varvec{N}\left[ {\varvec{y}_{\varvec{m}} \left( \varvec{k} \right),\varvec{ \sigma }_{{\varvec{y}_{\varvec{m}} }}^{2} \left( \varvec{k} \right)} \right] = \varvec{N}\left[ {\varvec{y}_{{\varvec{ref}}} - \varvec{y}_{\varvec{m}} \left( \varvec{k} \right),\varvec{ \sigma }_{{\varvec{y}_{\varvec{m}} }}^{2} \left( \varvec{k} \right)} \right] $$
(31)
$$ \begin{aligned} \Delta \varvec{e}\left( \varvec{k} \right) & = \varvec{e}\left( \varvec{k} \right) - \varvec{e}\left( {\varvec{k} - 1} \right) = - \varvec{N}\left[ {\varvec{y}_{\varvec{m}} \left( \varvec{k} \right),\varvec{ \sigma }_{{\varvec{y}_{\varvec{m}} }}^{2} \left( \varvec{k} \right)} \right] \\ & \quad + \varvec{N}\left[ {\varvec{y}_{\varvec{m}} \left( {\varvec{k} - 1} \right),\varvec{ \sigma }_{{\varvec{y}_{\varvec{m}} }}^{2} \left( {\varvec{k} - 1} \right)} \right]\varvec{ } \\ & = \varvec{N}\left[ { - \varvec{y}_{\varvec{m}} \left( \varvec{k} \right) + \varvec{y}_{\varvec{m}} \left( {\varvec{k} - 1} \right),\varvec{ \sigma }_{{\varvec{y}_{\varvec{m}} }}^{2} \left( \varvec{k} \right) +\varvec{\sigma}_{{\varvec{y}_{\varvec{m}} }}^{2} \left( {\varvec{k} - 1} \right)} \right] \\ \end{aligned} $$
(32)

The next three rules of thumb are used in Beirami and Zerafat (2015), to construct the fuzzy rule base of each IT2 NSFLS-1 system.

  • If \( \left| {\varvec{e}\left( \varvec{k} \right)} \right| \) is big, then \( \Delta \varvec{KP}\left( \varvec{k} \right) \) is big, then \( \Delta \varvec{KD}\left( \varvec{k} \right) \) is small, and \( \Delta \varvec{KI}\left( \varvec{k} \right) \) is small too.

  • If \( \left| {\varvec{e}\left( \varvec{k} \right)} \right| \) is medium, then \( \Delta \varvec{KP}\left( \varvec{k} \right) \) is small, then \( \Delta \varvec{KD}\left( \varvec{k} \right) \) is medium, and \( \Delta \varvec{KI}\left( \varvec{k} \right) \) is medium.

  • If \( \left| {\varvec{e}\left( \varvec{k} \right)} \right| \) is small, then \( \Delta \varvec{KP}\left( \varvec{k} \right) \) and \( \Delta \varvec{KI}\left( \varvec{k} \right) \) are big.

  • If \( \left| {\Delta \varvec{e}\left( \varvec{k} \right)} \right| \) is small, then \( \Delta \varvec{KD}\left( \varvec{k} \right) \) is big and reverse.

The fuzzy sets of each antecedent of the IT2 NSFLS-1 rule base has two non-singleton values: (a) the uncertain error (interval mean error \( \varvec{e}\left( \varvec{k} \right) = \left[ {\varvec{e}_{\varvec{l}} \left( \varvec{k} \right),\varvec{ e}_{\varvec{r}} \left( \varvec{k} \right)} \right] \) and its standard deviation \( \varvec{\sigma}_{\varvec{e}} \); and (b) the uncertain change of error (interval mean change of error \( \Delta \varvec{e}\left( \varvec{k} \right) = \left[ {\Delta \varvec{e}_{\varvec{l}} \left( \varvec{k} \right),\varvec{ }\Delta \varvec{e}_{\varvec{r}} \left( \varvec{k} \right)} \right] \) and its standard deviation \( \varvec{\sigma}_{{\Delta \varvec{e}}} \).

Negative big left and right ([Nbl, Nbr], [nbl, nbr], NBl, NBr]), negative medium left and right ([Nml, Nmr], [nml, nmr], [NMl, NMr]), negative small left and right ([Nsl, Nsr], [nsl, nsr], [NSl, NSr]), zero left and right ([Zcl, Zcr], [zcl, zcr], [Z0 l, Z0r]), positive small left and right ([Psl, Psr], [psl, psr], [PSl, PSr]), positive medium left and right ([Pml, Pmr], [pml, pmr], [PMl, PMr]), and positive big left and right ([Pbl, Pbr], [pbl, pbr], [PBl, PBr]) are the uncertain linguistic variables used for the IT2 NSFLS-1 fuzzy sets constructions (Tables 2, 3, 4).

Table 2 IT2 NSFLS-1 fuzzy rule base for (a) KPl(k) gain adjustment, (b) KPr(k) gain adjustment
Table 3 IT2 NSFLS-1 fuzzy rule base for (a) KIl(k) gain adjustment, (b) KIr(k) gain adjustment
Table 4 IT2 NSFLS-1 fuzzy rule base for (a) KDl(k) gain adjustment, (b) KDr(k) gain adjustment

In the proposed assembly, three IT2 NSFLS-1 systems are used to calculate the gains, \( \Delta \varvec{KP}\left( \varvec{k} \right) \), \( \Delta \varvec{KI}\left( \varvec{k} \right) \) and \( \Delta \varvec{KD}\left( \varvec{k} \right) \).

The IT2 NSFLS-1 fuzzy rule for \( \Delta \varvec{KP}\left( \varvec{k} \right) \) calculation has the following form:

$$ {\text{IF}}\;\left| {\varvec{e}\left( \varvec{k} \right)} \right|\;{\text{is}}\;\widetilde{{\varvec{Pm}}}\;{\text{and}}\;\Delta \varvec{e}\left( \varvec{k} \right)\;{\text{is}}\;\widetilde{{\varvec{ps}}}\;{\text{THEN}}\;\Delta \varvec{KP}\left( \varvec{k} \right)\;{\text{is}}\;\widetilde{{\varvec{NM}}} $$
(33)

The IT2 NSFLS-1 fuzzy rule for \( \Delta \varvec{KI}\left( \varvec{k} \right) \) calculation has the form:

$$ {\text{IF}}\;\left| {\varvec{e}\left( \varvec{k} \right)} \right|\;{\text{is}}\;\widetilde{{\varvec{Pm}}}\;{\text{and}}\;\Delta \varvec{e}\left( \varvec{k} \right)\;{\text{is}}\;\widetilde{{\varvec{ps}}}\;{\text{THEN}}\;\Delta \varvec{KI}\left( \varvec{k} \right)\;{\text{is}}\;\widetilde{{\varvec{PM}}} $$
(34)

The IT2 NSFLS-1 fuzzy rule for \( \Delta \varvec{KD}\left( \varvec{k} \right) \) calculation has the form:

$$ {\text{IF}}\;\left| {\varvec{e}\left( \varvec{k} \right)} \right|\;{\text{is}}\;\widetilde{{\varvec{Pm}}}\;{\text{and}}\;\Delta \varvec{e}\left( \varvec{k} \right)\;{\text{is}}\;\widetilde{{\varvec{ps}}}\;{\text{THEN}}\;\Delta \varvec{KD}\left( \varvec{k} \right)\;{\text{is}}\;\widetilde{{\varvec{PS}}} $$
(35)

Each input variable contains seven fuzzy sets, resulting in 49 IT2 fuzzy rules, per each fuzzy rule base.

3.2 The PID controller

The first estimation of the starting values of the PID gains is using the ZN closed-loop method that gives an amplitude ratio between subsequent oscillations after a step change of the set point equal to ¼, and this is often a guarantee as a medium range stability (Alberto, 2000). After that the gains are adjusted by trial and error observing the best behavior of the response of the plant. This method surely induces uncertainty to the starting point of the PID gains values and in the control signal estimation.

The PID gains are updated after each control cycle by the next calculations:

$$ \varvec{K}_{\varvec{p}} \left( \varvec{k} \right) = \varvec{K}_{\varvec{p}} \left( {\varvec{k} - 1} \right) + \Delta \varvec{KP}\left( \varvec{k} \right) $$
(36)
$$ \varvec{K}_{\varvec{i}} \left( \varvec{k} \right)\varvec{ } = \varvec{K}_{\varvec{i}} \left( {\varvec{k} - 1} \right) + \Delta \varvec{KI}\left( \varvec{k} \right) $$
(37)
$$ \varvec{K}_{\varvec{d}} \left( \varvec{k} \right) = \varvec{K}_{\varvec{d}} \left( {\varvec{k} - 1} \right) + \Delta \varvec{KD}\left( \varvec{k} \right) $$
(38)

where \( \varvec{K}_{\varvec{p}} \left( \varvec{k} \right) \) is the proportional gain, \( \varvec{K}_{\varvec{i}} \left( \varvec{k} \right) \) is the integral gain, and \( \varvec{K}_{\varvec{d}} \left( \varvec{k} \right) \) is the derivative gain of the PID controller at the discrete time \( \varvec{k} \). \( \Delta \varvec{KP}\left( \varvec{k} \right), \)\( \Delta \varvec{KI}\left( \varvec{k} \right)\varvec{ } \) and \( \Delta \varvec{KD}\left( \varvec{k} \right)\varvec{ } \) adjustments are calculated by each IT2 NSFLS-2 system as interval sets values.

Equations (36), (37) and (38) are computed each control cycle in the discrete time k and are used to update each gain of the PID (2) controller. Figure 6 shows the interaction for every component of the proposed assembly that uses the IT2 NSFLS-1 for dynamic PID gains updating.

Fig. 6
figure 6

Block diagram of proposal using the non-singleton values, and three IT2 NSFLS-1 fuzzy system to adjust the PID’s gains

3.3 The backpropagation algorithm for IT2 NSFLS-1 parameters adjustment

As explained in Mendel (2001), an objective function \( e\left( \theta \right) \) may have a nonlinear form with respect to an adjustable parameter \( \theta \). In iterative descent methods, the next point \( \theta_{\text{next}} \) is determined by step down from the current point \( \theta_{\text{now}} \) in the negative direction of the gradient of the function \( e\left( \theta \right) \):

$$ \theta_{\text{next}} = \theta_{\text{now}} - \alpha g $$
(39)

where \( \alpha \) is the learning rate, and \( g \) is the vector of the first partial derivatives of \( E\left( \theta \right) \)

$$ g\left( \theta \right) = \left[ {\frac{\partial e\left( \theta \right)}{{\partial \theta_{1} }},\frac{\partial \left( \theta \right)}{{\partial \theta_{2} }}, \ldots ,\frac{\partial \left( \theta \right)}{{\partial \theta_{n} }}} \right]^{\text{T}} $$
(40)

Considering that given the control signal model, the second-order plant model, and the IT2 NSFLS-1 fuzzy systems, \( j = k \), is the discrete time, then:

$$ u\left( k \right) = \left( {K_{p} + K_{i} *k} \right)y_{{ref}} - \left( {K_{p} + K_{i} + K_{d} } \right)y\left( {k - 1} \right) - \left( {K_{i} + K_{d} } \right)y\left( {k - 2} \right) - \left( {K_{i} } \right)\mathop \sum \limits_{i = 0}^{j - 3} y\left( i \right) $$
(41)
$$ y\left( k \right) = K_{2} u\left( k \right) - a_{1} y\left( {k - 1} \right) - a_{2} \left( {k - 2} \right) $$
(42)
$$ y_{m} \left( k \right) + \sigma y_{m} \left( k \right) = y\left( k \right) + \sigma y\left( k \right) $$
(43)

and defining the error function as in Eq. (11) the objective function, which is required to minimize its value in order to update the design parameters of the \( f_{ns2 - 1} \left( x \right) \) fuzzy systems, Eq. (8), each one composed by \( M \) fuzzy rules, with the next form: \( m_{q}^{i} \in \left[ {m_{q1}^{i} ,m_{q2}^{i} } \right] \) is the uncertain mean of the antecedents, \( \sigma_{q}^{i} \) is the standard deviation of antecedents, \( \sigma_{{X_{q} }}^{i} \) is the standard deviation of type-1 non-singleton input data. Let be \( p \) = the number of input variables of the IT2 NSFLS-1 system, with \( q = 1,2, \ldots ,p \), and \( i = 1,2, \ldots ,M \), being the number of fuzzy rules, \( j \) and \( k \) being the discrete period of time.

Equation (39) is used to establish the basic equations to update the antecedent parameters using the BP method:

$$ m_{q1}^{i} \left( {k + 1} \right) = \left. {m_{q1}^{i} \left( k \right) - \alpha \frac{\partial e}{{\partial m_{q1}^{i} }}} \right|_{j} $$
(44)
$$ m_{q2}^{i} \left( {k + 1} \right) = \left. {m_{q2}^{i} \left( k \right) - \alpha \frac{\partial e}{{\partial m_{q2}^{i} }}} \right|_{j} $$
(45)
$$ \sigma_{q}^{i} \left( {k + 1} \right) = \left. {\sigma_{q}^{i} \left( k \right) - \alpha \frac{\partial e}{{\partial \sigma_{q}^{i} }}} \right|_{j} $$
(46)

and is also used for update the consequent parameters:

$$ y_{l}^{i} \left( {k + 1} \right) = \left. {y_{l}^{i} \left( k \right) - \alpha \frac{\partial e}{{\partial y_{l}^{i} }}} \right|_{j} $$
(47)
$$ y_{r}^{i} \left( {k + 1} \right) = \left. {y_{r}^{i} \left( k \right) - \alpha \frac{\partial e}{{\partial y_{r}^{i} }}} \right|_{j} $$
(48)

Using the chain rule for partial derivatives

$$ \left. {\frac{\partial e}{{\partial m_{q1}^{i} }}} \right|_{j} = \left[ {\left( {\frac{\partial e}{{\partial y_{m} }}} \right)\left( {\frac{{\partial y_{m} }}{\partial u}} \right)\left( {\frac{\partial u}{{\partial f_{ns2 - 1} }}} \right)\left( {\frac{{\partial f_{ns2 - 1} }}{{\partial m_{q1}^{i} }}} \right)} \right]_{j} $$
(49)
$$ \left. {\frac{\partial e}{{\partial m_{q2}^{i} }}} \right|_{j} = \left[ {\left( {\frac{\partial e}{{\partial y_{m} }}} \right)\left( {\frac{{\partial y_{m} }}{\partial u}} \right)\left( {\frac{\partial u}{{\partial f_{ns2 - 1} }}} \right)\left( {\frac{{\partial f_{ns2 - 1} }}{{\partial m_{q2}^{i} }}} \right)} \right]_{j} $$
(50)
$$ \left. {\frac{\partial e}{{\partial \sigma_{q}^{i} }}} \right|_{j} = \left[ {\left( {\frac{\partial e}{{\partial y_{m} }}} \right)\left( {\frac{{\partial y_{m} }}{\partial u}} \right)\left( {\frac{\partial u}{{\partial f_{ns2 - 1} }}} \right)\left( {\frac{{\partial f_{ns2 - 1} }}{{\partial \sigma_{q}^{i} }}} \right)} \right]_{j} $$
(51)
$$ \left. {\frac{\partial e}{{\partial y_{l}^{i} }}} \right|_{j} = \left[ {\left( {\frac{\partial e}{{\partial y_{m} }}} \right)\left( {\frac{{\partial y_{m} }}{\partial u}} \right)\left( {\frac{\partial u}{{\partial f_{ns2 - 1} }}} \right)\left( {\frac{{\partial f_{ns2 - 1} }}{{\partial y_{l}^{i} }}} \right)} \right]_{j} $$
(52)
$$ \left. {\frac{\partial e}{{\partial y_{r}^{i} }}} \right|_{j} = \left[ {\left( {\frac{\partial e}{{\partial y_{m} }}} \right)\left( {\frac{{\partial y_{m} }}{\partial u}} \right)\left( {\frac{\partial u}{{\partial f_{ns2 - 1} }}} \right)\left( {\frac{{\partial f_{ns2 - 1} }}{{\partial y_{r}^{i} }}} \right)} \right]_{j} $$
(53)

the resulting derivative components are:

$$ \left. {\frac{{\partial f_{ns2 - 1} }}{{\partial m_{q1}^{i} }}} \right|_{j} = \left[ {\left( {\frac{{\partial f_{ns2 - 1} }}{{\partial y_{l} }}} \right)\left( {\frac{{\partial y_{l} }}{{\partial m_{q1}^{i} }}} \right) + \left( {\frac{{\partial f_{ns2 - 1} }}{{\partial y_{r} }}} \right)\left( {\frac{{\partial y_{r} }}{{\partial m_{q1}^{i} }}} \right)} \right]_{j} $$
(54)
$$ \left. {\frac{{\partial y_{l} }}{{\partial \bar{f}^{i} }}} \right|_{j} = \left\{ {\begin{array}{*{20}l} {\frac{{c_{l}^{i} - y_{l} }}{{\mathop \sum \nolimits_{i = 1}^{L} \bar{f}^{i} + \mathop \sum \nolimits_{i = L + 1}^{M} \underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{f}^{i} }} } \hfill & {{\text{if}}\quad i \le L} \hfill \\ 0 \hfill & {{\text{if}}\quad i > L} \hfill \\ \end{array} } \right. $$
(55)
$$ \left. {\frac{{\partial y_{l} }}{{\partial \underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{f}^{i} }}} \right|_{j} = \left\{ {\begin{array}{*{20}l} {\frac{{c_{l}^{i} - y_{l} }}{{\mathop \sum \nolimits_{i = 1}^{L} \bar{f}^{i} + \mathop \sum \nolimits_{i = L + 1}^{M} \underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{f}^{i} }}} \hfill & { {\text{if}}\quad i > L} \hfill \\ 0 \hfill & {{\text{if}}\quad i \le L} \hfill \\ \end{array} } \right. $$
(56)
$$ \left. {\frac{{\partial y_{r} }}{{\partial \bar{f}^{i} }}} \right|_{j} = \left\{ {\begin{array}{*{20}l} {\frac{{c_{r}^{i} - y_{r} }}{{\mathop \sum \nolimits_{i = 1}^{R} \underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{f}^{i} + \mathop \sum \nolimits_{i = R + 1}^{M} \bar{f}^{i} }}} \hfill & {{\text{if}}\quad i > R} \hfill \\ 0 \hfill & {{\text{if}}\quad i \le R} \hfill \\ \end{array} } \right. $$
(57)
$$ \left. {\frac{{\partial y_{r} }}{{\partial \underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{f}^{i} }}} \right|_{j} = \left\{ {\begin{array}{*{20}l} {\frac{{c_{r}^{i} - y_{r} }}{{\mathop \sum \nolimits_{i = 1}^{L} \underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{f}^{i} + \mathop \sum \nolimits_{i = L + 1}^{M} \bar{f}^{i} }}} \hfill & {{\text{if}}\quad i \le R} \hfill \\ 0 \hfill & { {\text{if}}\quad i > R} \hfill \\ \end{array} } \right. $$
(58)
$$ \left. {\frac{{\partial y_{l} }}{{\partial m_{q1}^{i} }}} \right|_{j} = \left[ {\left( {\frac{{\partial y_{l} }}{{\partial \bar{f}^{i} }}} \right)\left( {\frac{{\partial \bar{f}^{i} }}{{\partial m_{q1}^{i} }}} \right) + \left( {\frac{{\partial y_{l} }}{{\partial \underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{f}^{i} }}} \right)\left( {\frac{{\partial \underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{f}^{i} }}{{\partial m_{q1}^{i} }}} \right)} \right]_{j} $$
(59)
$$ \left. {\frac{{\partial y_{r} }}{{\partial m_{q1}^{i} }}} \right|_{j} = \left[ {\left( {\frac{{\partial y_{r} }}{{\partial \bar{f}^{i} }}} \right)\left( {\frac{{\partial \bar{f}^{i} }}{{\partial m_{q1}^{i} }}} \right) + \left( {\frac{{\partial y_{r} }}{{\partial \underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{f}^{i} }}} \right)\left( {\frac{{\partial \underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{f}^{i} }}{{\partial m_{q1}^{i} }}} \right)} \right]_{j} $$
(60)
$$ \left. {\frac{{\partial \bar{f}^{i} }}{{\partial m_{q1}^{i} }}} \right|_{j} = \left\{ {\begin{array}{*{20}l} {\frac{{\left( {x_{q} - m_{q1}^{i} } \right)\bar{f}^{i} \left( {x_{{{\text{up}}_{q} }} } \right)}}{{\left( {\sigma_{{X_{q} }} } \right)^{2} + \left( {\sigma_{q}^{i} } \right)^{2} }} } \hfill & {{\text{if}}\quad x_{q} < m_{q1}^{i} } \hfill \\ 0 \hfill & {{\text{if}}\quad x_{q} \ge m_{q2}^{i} } \hfill \\ \end{array} } \right. $$
(61)
$$ \left. {\frac{{\partial \underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{f}^{i} }}{{\partial m_{q1}^{i} }}} \right|_{j} = \left\{ {\begin{array}{*{20}l} 0 \hfill & { {\text{if}}\quad x_{q} \le \frac{{m_{q1}^{i} + m_{q2}^{i} }}{2} - \frac{{\sigma_{{X_{q} }}^{2} (m_{q2}^{i} - m_{q1}^{i} )}}{{2\left( {\sigma_{q}^{i} } \right)^{2} }}} \hfill \\ {\frac{{\left( {x_{q} - m_{q1}^{i} } \right)\underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{f}^{i} \left( { x_{{{\text{low}}_{q} }} } \right)}}{{\left( {\sigma_{{X_{q} }} } \right)^{2} + \left( {\sigma_{q}^{i} } \right)^{2} }}} \hfill & {{\text{if}}\quad x_{q} > \frac{{m_{q1}^{i} + m_{q2}^{i} }}{2} + \frac{{\sigma_{{X_{q} }}^{2} (m_{q2}^{i} - m_{q1}^{i} )}}{{2\left( {\sigma_{q}^{i} } \right)^{2} }}} \hfill \\ \end{array} } \right. $$
(62)
$$ \left. {\frac{{\partial f_{ns2 - 1} }}{{\partial m_{q2}^{i} }}} \right|_{j} = \left[ {\left( {\frac{{\partial f_{ns2 - 1} }}{{\partial y_{l} }}} \right)\left( {\frac{{\partial y_{l} }}{{\partial m_{q2}^{i} }}} \right) + \left( {\frac{{\partial f_{ns2 - 1} }}{{\partial y_{r} }}} \right)\left( {\frac{{\partial y_{r} }}{{\partial m_{q2}^{i} }}} \right)} \right]_{j} $$
(63)
$$ \left. {\frac{{\partial y_{l} }}{{\partial m_{q2}^{i} }}} \right|_{j} = \left[ {\left( {\frac{{\partial y_{l} }}{{\partial \bar{f}^{i} }}} \right)\left( {\frac{{\partial \bar{f}^{i} }}{{\partial m_{q2}^{i} }}} \right) + \left( {\frac{{\partial y_{l} }}{{\partial \underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{f}^{i} }}} \right)\left( {\frac{{\partial \underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{f}^{i} }}{{\partial m_{q2}^{i} }}} \right)} \right]_{j} $$
(64)
$$ \left. {\frac{{\partial y_{r} }}{{\partial m_{q2}^{i} }}} \right|_{j} = \left[ {\left( {\frac{{\partial y_{r} }}{{\partial \bar{f}^{i} }}} \right)\left( {\frac{{\partial \bar{f}^{i} }}{{\partial m_{q2}^{i} }}} \right) + \left( {\frac{{\partial y_{r} }}{{\partial \underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{f}^{i} }}} \right)\left( {\frac{{\partial \underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{f}^{i} }}{{\partial m_{q2}^{i} }}} \right)} \right]_{j} $$
(65)
$$ \left. {\frac{{\partial \bar{f}^{i} }}{{\partial m_{q2}^{i} }}} \right|_{j} = \left\{ {\begin{array}{*{20}l} {0 } \hfill & {{\text{if}}\quad x_{q} \le m_{q1}^{i} } \hfill \\ {\frac{{\left( {x_{q} - m_{q2}^{i} } \right)\bar{f}^{i} \left( {x_{{{\text{up}}_{q} }} } \right)}}{{\left( {\sigma_{{X_{q} }} } \right)^{2} + \left( {\sigma_{q}^{i} } \right)^{2} }}} \hfill & {{\text{if}}\quad x_{q} > m_{q2}^{i} } \hfill \\ \end{array} } \right. $$
(66)
$$ \left. {\frac{{\partial \underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{f}^{i} }}{{\partial m_{q2}^{i} }}} \right|_{j} = \left\{ {\begin{array}{*{20}l} {\frac{{\left( {x_{q} - m_{q2}^{i} } \right)\underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{f}^{i} \left( {x_{{{\text{low}}_{q} }} } \right)}}{{\left( {\sigma_{{X_{q} }} } \right)^{2} + \left( {\sigma_{q}^{i} } \right)^{2} }}} \hfill & {{\text{if}}\quad x_{q} \le \frac{{m_{q1}^{i} + m_{q2}^{i} }}{2} - \frac{{\sigma_{{X_{q} }}^{2} (m_{q2}^{i} - m_{q1}^{i} )}}{{2\left( {\sigma_{q}^{i} } \right)^{2} }}} \hfill \\ 0 \hfill & { {\text{if}}\quad x_{q} \le \frac{{m_{q1}^{i} + m_{q2}^{i} }}{2} - \frac{{\sigma_{{X_{q} }}^{2} (m_{q2}^{i} - m_{q1}^{i} )}}{{2\left( {\sigma_{q}^{i} } \right)^{2} }}} \hfill \\ \end{array} } \right. $$
(67)
$$ \left. {\frac{{\partial f_{ns2 - 1} }}{{\partial \sigma_{q}^{i} }}} \right|_{j} = \left[ {\left( {\frac{{\partial f_{ns2 - 1} }}{{\partial y_{l} }}} \right)\left( {\frac{{\partial y_{l} }}{{\partial \sigma_{q}^{i} }}} \right) + \left( {\frac{{\partial f_{ns2 - 1} }}{{\partial y_{r} }}} \right)\left( {\frac{{\partial y_{r} }}{{\partial \sigma_{q}^{i} }}} \right)} \right]_{j} $$
(68)
$$ \left. {\frac{{\partial y_{l} }}{{\partial \sigma_{q}^{i} }}} \right|_{j} = \left[ {\left( {\frac{{\partial y_{l} }}{{\partial \bar{f}^{i} }}} \right)\left( {\frac{{\partial \bar{f}^{i} }}{{\partial \sigma_{q}^{i} }}} \right) + \left( {\frac{{\partial y_{l} }}{{\partial \underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{f}^{i} }}} \right)\left( {\frac{{\partial \underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{f}^{i} }}{{\partial \sigma_{q}^{i} }}} \right)} \right]_{j} . $$
(69)
$$ \left. {\frac{{\partial y_{r} }}{{\partial \sigma_{q}^{i} }}} \right|_{j} = \left[ {\left( {\frac{{\partial y_{r} }}{{\partial \bar{f}^{i} }}} \right)\left( {\frac{{\partial \bar{f}^{i} }}{{\partial \sigma_{q}^{i} }}} \right) + \left( {\frac{{\partial y_{r} }}{{\partial \underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{f}^{i} }}} \right)\left( {\frac{{\partial \underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{f}^{i} }}{{\partial \sigma_{q}^{i} }}} \right)} \right]_{j} $$
(70)
$$ \left. {\frac{{\partial \bar{f}^{i} }}{{\partial \sigma_{q}^{i} }}} \right|_{j} = \left\{ {\begin{array}{*{20}l} {\frac{{\left( {x_{q} - m_{q1}^{i} } \right)^{2} \underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{f}^{i} \left( {x_{{{\text{up}}_{q} }} } \right)\sigma_{q}^{i} }}{{(\sigma_{{X_{q} }} + \sigma_{q}^{i} )^{2} }}} \hfill & {{\text{if}}\quad x_{q} < m_{q1}^{i} } \hfill \\ {\frac{{\left( {x_{q} - m_{q2}^{i} } \right)\underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{f}^{i} \left( {x_{{{\text{up}}_{q} }} } \right)\sigma_{q}^{i} }}{{(\sigma_{{X_{q} }} + \sigma_{q}^{i} )^{2} }}} \hfill & {{\text{if}}\quad x_{q} > m_{q2}^{i} } \hfill \\ \end{array} } \right. $$
(71)
$$ \left. {\frac{{\partial \underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{f}^{i} }}{{\partial \sigma_{q}^{i} }}} \right|_{j} = \left\{ {\begin{array}{*{20}l} {\frac{{\left( {x_{k} - m_{q2}^{i} } \right)\underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{f}^{i} \left( {x_{{{\text{low}}_{q} }} } \right)\sigma_{q}^{i} }}{{(\sigma_{{X_{q} }} + \sigma_{q}^{i} )^{2} }}} \hfill & {{\text{if}}\quad x_{q} < \frac{{m_{q1}^{i} + m_{q2}^{i} }}{2}} \hfill \\ {\frac{{\left( {x_{q} - m_{q2}^{i} } \right)\underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{f}^{i} \left( {x_{{{\text{low}}_{q} }} } \right)\sigma_{q}^{i} }}{{(\sigma_{{X_{q} }} + \sigma_{q}^{i} )^{2} }} } \hfill & {{\text{if}}\quad x_{q} > \frac{{m_{q1}^{i} + m_{q2}^{i} }}{2}} \hfill \\ \end{array} } \right. $$
(72)
$$ \left. {\frac{{\partial f_{ns2 - 1} }}{{\partial y_{l}^{i} }}} \right|_{j} = \left[ {\left( {\frac{{\partial f_{ns2 - 1} }}{{\partial y_{l} }}} \right)\left( {\frac{{\partial y_{l} }}{{\partial y_{l}^{i} }}} \right) + \left( {\frac{{\partial f_{ns2 - 1} }}{{\partial y_{r} }}} \right)\left( {\frac{{\partial y_{r} }}{{\partial y_{l}^{i} }}} \right)} \right]_{j} $$
(73)
$$ \left. {\frac{{\partial f_{ns2 - 1} }}{{\partial y_{r}^{i} }}} \right|_{j} = \left[ {\left( {\frac{{\partial f_{ns2 - 1} }}{{\partial y_{l} }}} \right)\left( {\frac{{\partial y_{l} }}{{\partial y_{r}^{i} }}} \right) + \left( {\frac{{\partial f_{ns2 - 1} }}{{\partial y_{r} }}} \right)\left( {\frac{{\partial y_{r} }}{{\partial y_{r}^{i} }}} \right)} \right]_{j} $$
(74)
$$ \left. {\frac{{\partial y_{l} }}{{\partial y_{l}^{i} }}} \right|_{j} = \left\{ {\begin{array}{*{20}c} {\frac{{\bar{f}^{i} }}{{\mathop \sum \nolimits_{i = 1}^{L} \bar{f}^{i} + \mathop \sum \nolimits_{i = L + 1}^{M} \underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{f}^{i} }} } & {{\text{if}}\quad i \le L} \\ {\frac{{\bar{f}^{i} }}{{\mathop \sum \nolimits_{i = 1}^{L} \bar{f}^{i} + \mathop \sum \nolimits_{i = L + 1}^{M} \underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{f}^{i} }} } & {{\text{if}}\quad i > L} \\ \end{array} } \right. $$
(75)
$$ \left. {\frac{{\partial y_{r} }}{{\partial y_{r}^{i} }}} \right|_{j} = \left\{ {\begin{array}{*{20}l} {\frac{{\underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{f}^{i} }}{{\mathop \sum \nolimits_{i = 1}^{R} \underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{f}^{i} + \mathop \sum \nolimits_{i = R + 1}^{M} \bar{f}^{i} }} } \hfill & {{\text{if}}\quad i \le R} \hfill \\ {\frac{{\bar{f}^{i} }}{{\mathop \sum \nolimits_{i = 1}^{R} \underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{f}^{i} + \mathop \sum \nolimits_{i = R + 1}^{M} \bar{f}^{i} }}} \hfill & {{\text{if}}\quad i > R} \hfill \\ \end{array} } \right. $$
(76)
$$ \left. {\frac{\partial e}{{\partial y_{m} }}} \right|_{j} = - 1 $$
(77)
$$ \left. {\frac{{\partial y_{m} }}{\partial u}} \right|_{j} = K_{2} $$
(78)
$$ \left. {\frac{{\partial f_{ns2 - 1} }}{{\partial y_{l} }}} \right|_{j} = \frac{1}{2} $$
(79)
$$ \left. {\frac{{\partial f_{ns2 - 1} }}{{\partial y_{r} }}} \right|_{j} = \frac{1}{2} $$
(80)
$$ \left. {\frac{\partial u}{{\partial K_{p} }}} \right|_{j} = e\left( {k - 1} \right) \;{\text{with}}\;f_{ns2 - 1} = K_{p} $$
(81)
$$ \left. {\frac{\partial u}{{\partial K_{i} }}} \right|_{j} = e\left( {k - 1} \right) \;{\text{with}}\;f_{ns2 - 1} = K_{i} $$
(82)
$$ \left. {\frac{\partial u}{{\partial K_{d} }}} \right|_{j} = e\left( {k - 1} \right) - e\left( {k - 2} \right)\;{\text{with}}\;f_{ns2 - 1} = K_{d} $$
(83)

As an example, for the case of the IT2 NSFLS-1 system that calculates the \( K_{p} \) gain, it is possible to obtain the recursive equation for \( m_{q1}^{i} \) parameter tuning using the BP method in the particular values of \( i > L, x_{q} < m_{q1}^{i} \) if (44) is solved using the corresponding partial derivatives:

$$ \left. {\frac{\partial e}{{\partial m_{q1}^{i} }}} \right|_{j} = \left[ {\left( {\frac{\partial e}{{\partial y_{m} }}} \right)\left( {\frac{{\partial y_{m} }}{\partial u}} \right)\left( {\frac{\partial u}{{\partial K_{p} }}} \right)\left( {\frac{{\partial K_{p} }}{{\partial m_{q1}^{i} }}} \right)} \right]_{j} $$
(84)
$$ m_{q1}^{i} \left( {k + 1} \right) = m_{q1}^{i} \left( k \right) + \alpha *\frac{1}{2}*K_{2} *\left[ {e\left( {k - 1} \right)} \right]\left[ {\frac{{\left[ {y_{r}^{i} - y_{r} } \right]}}{{\mathop \sum \nolimits_{i = 1}^{R} \underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{f}^{i} + \mathop \sum \nolimits_{i = R + 1}^{M} \bar{f}^{i} }}} \right]*\left[ {\frac{{\left( {x_{k} - m_{q1}^{i} } \right)\bar{f}^{i} \left( {x_{{{\text{up}}_{q} }} } \right)}}{{\left( {\sigma_{{X_{q} }} } \right)^{2} + \left( {\sigma_{q}^{i} } \right)^{2} }}} \right] $$
(85)

Also, for the case of the IT2 NSFLS-1 system that calculates the \( K_{i} \) gain of the PID controller, the recursive equation is derived. For the case of the IT2 NSFLS-1 system that calculates the \( K_{d} \) gain, the following partial derivative equation is obtained:

$$ m_{q1}^{i} \left( {k + 1} \right) = m_{q1}^{i} \left( k \right) + \alpha *\frac{1}{2}*K_{2} *\left[ {e\left( {k - 1} \right) - e\left( {k - 2} \right)} \right]\left[ {\frac{{\left[ {y_{r}^{i} - y_{r} } \right]}}{{\mathop \sum \nolimits_{i = 1}^{R} \underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{f}^{i} + \mathop \sum \nolimits_{i = R + 1}^{M} \bar{f}^{i} }}} \right]*\left[ {\frac{{\left( {x_{q} - m_{q1}^{i} } \right)\bar{f}^{i} \left( {x_{{{\text{up}}_{q} }} } \right)}}{{\left( {\sigma_{{X_{q} }} } \right)^{2} + \left( {\sigma_{q}^{i} } \right)^{2} }}} \right] $$
(86)

A similar procedure can be followed to compute (39), (40), (41) and (42).

The calculation of \( x_{{{\text{up}}_{q} }} \) and \( x_{{{\text{low}}_{q} }} \) depends on the location of \( x_{q} \) with respect to the values of \( m_{q1}^{i} \),\( m_{q2}^{i} \),\( \sigma_{q}^{i} \), \( y_{l}^{i} \) and \( y_{r}^{i} \) as clearly explained in Ramos et al. (2016), resulting in five situations or states as shown in Table 5.

Table 5 Situations or states of \( {\mathbf{x}}_{{\mathbf{q}}} \) for calculation of \( {\mathbf{x}}_{{{\mathbf{up}}_{{\mathbf{q}}} }} \) and \( {\mathbf{x}}_{{{\mathbf{low}}_{{\mathbf{q}}} }} \)

The equations for antecedent and consequent parameters tuning in the period of time \( j, \)\( m_{q1}^{i} \),\( m_{q2}^{i} \),\( \sigma_{q}^{i} \), \( y_{l}^{i} \) and \( y_{r}^{i} \) depend on the relative position of \( x_{q} \) with respect to the values of \( m_{q1}^{i} \),\( m_{q2}^{i} \),\( \sigma_{q}^{i} \), \( y_{l}^{i} \) and \( y_{r}^{i} \) as shown in Tables 5, 6, 7, 8 and 9 for the \( K_{p} \) and \( K_{i} \) gains adjustments. The corresponding derivative equations for the adjustment of the \( K_{d} \) gain are straightforward and can be calculated using (83) in the same way as the previous gains.

Table 6 Selection of antecedent parameters of \( {\mathbf{y}}_{{\mathbf{r}}} \) using BP method for tuning \( {\mathbf{K}}_{{\mathbf{p}}} \) and \( {\mathbf{K}}_{{\mathbf{i}}} \) IT2 NSFLS-1 parameters
Table 7 Selection of antecedent parameters of \( {\text{y}}_{\text{l}} \) using BP method for tuning \( {\text{K}}_{\text{p}} \) and \( {\text{K}}_{\text{i}} \) IT2 NSFLS-1 parameters
Table 8 Selection of consequent parameter of \( {\text{y}}_{\text{r}} \) using BP method for tuning the \( {\text{K}}_{\text{p}} \) and \( {\text{K}}_{\text{i}} \) IT2 NSFLS-1 parameters
Table 9 Selection of consequent parameter of \( {\text{y}}_{\text{l}} \) using BP Method for tuning the \( {\text{K}}_{\text{p}} \) and \( {\text{K}}_{\text{i}} \) IT2 NSFLS-1 parameters

3.4 Simulation and analysis

The MATLAB software was used to model and simulate the PID controllers using ZN, the T1 SFLS and NSFLS, the IT2 SFLS, the IT2 NSFLS-1, and the proposed assembly using IT2 NSFLS-1 with BP learning mechanism (PID IT2 NSFLS-1 BP) to calculate the PID gains dynamic adjustments. In this experiment was used the second-order model of a hydraulic actuator that operation range is 4–20 mA. The control signal opens and closes the valve. The reference value was selected as \( y_{{ref}} = 20.0 \) mA that means the valve is 100% opened. The set point can be selected as any value of the operational range 4–20 mA.

The simulation process followed the next steps:

  1. (a)

    The parameters of the plant were identified through the experimental test, obtaining \( K = 2.0 \), \( T_{1} = 5.0 \), \( T_{2} = 10.0 \), \( T_{m} = \frac{T1}{20.0} = \frac{5.0}{20.0} = 0.25 \), \( T_{c} = 1.0 \& T_{c} \le 5.0*T_{m} = 1.25 \), \( K_{2} = 0.0024 \), \( a_{1} = - 1.9265 \), \( a_{2} = 0.9277 \).

    The second-order model for the valve using (1) was the next:

    $$ G\left( s \right) = \frac{2}{{\left( {5s + 1} \right)\left( {10s + 1} \right)}} $$
    (87)
    $$ y\left( k \right) = 0.0024*u\left( k \right) - \left( { - 1.9265} \right)*y\left( {k - 1} \right) - \left( {0.9277} \right)y\left( {k - 2} \right) $$
    (88)
  2. (b)

    The initial values of the gains of the PID controller were obtained through the ZN method using the previous parameters of the second-order plant; \( T_{c} = 1.0, K_{p} = 6.0, T_{i} = 70.0, T_{d} = 6.7 \). In this experiment, the initial values of the PID gains were: \( K_{p} \left( 0 \right) = 1.3 \), \( K_{i} \left( 0 \right) = 0.0153 \), \( K_{d} \left( 0 \right) = 15.6 \)

    $$ u\left( k \right) = \left( {K_{p} + K_{i} *k} \right)y_{{ref}} - \left( {K_{p} + K_{i} + K_{d} } \right)y\left( {k - 1} \right) - \left( {K_{i} - K_{d} } \right)y\left( {k - 2} \right) - \left( {0.0153} \right)\mathop \sum \limits_{i = 0}^{k - 3} y\left( i \right) $$
    (89)
    $$ u\left( k \right) = 1.3153*y_{{ref}} - \left( {16.9153} \right)y\left( {k - 1} \right) - \left( { - 15.5847} \right)y\left( {k - 2} \right) - \left( {K_{i} } \right)\mathop \sum \limits_{i = 0}^{k - 3} y\left( i \right) $$
    (90)
  3. (c)

    c Each consequent was designed to have two fuzzy sets: (1) one fuzzy set for the input \( x_{1} \), the error \( e\left( k \right) \), was modeled using the mean value \( \frac{{\mu_{el} + \mu_{er} }}{2} \) and the standard deviation value \( \sigma_{e} \); and (2) a second fuzzy set for the input \( x_{2} \), the change of error \( \Delta e\left( k \right) \) modeled using the mean values \( \frac{{\mu_{\Delta el} + \mu_{\Delta er} }}{2} \) and the standard deviation \( \sigma_{\Delta e} \) of it. Both of them were modeled as Gaussians of type-1 fuzzy values.

  4. (d)

    The numerical values of each uncertain fuzzy set of the PID controller using the IT2 NSFLS-1 with BP learning mechanism (PID IT2 NSFLS-1 BP) were initialized as shown in Table 10. Each consequent was designed to have two fuzzy sets: (1) one fuzzy set for the input \( x_{1} \), the error \( e\left( k \right) \) that was modeled using two mean values \( \left[ {\mu_{el} , \mu_{er} } \right] \), and the standard deviation value \( \sigma_{e} \); and (2) a second fuzzy set for the input \( x_{2} \), the change of error \( \Delta e\left( k \right) \) modeled using two mean values \( \left[ {\mu_{\Delta el} , \mu_{\Delta er} } \right] \), and the standard deviation \( \sigma_{\Delta e} \) of it. Both of them were modeled as Gaussians type-2 fuzzy values.

    Table 10 Universe of disclosure and initial values of fuzzy sets for \( \Delta {\text{KP}}\left( {\text{k}} \right), \Delta {\text{KI}}\left( {\text{k}} \right),\;{\text{and }}\;\Delta {\text{KD}}\left( {\text{k}} \right) \) estimation. There are three IT2 NSFLS-1 learning mechanism with BP learning mechanism

The values of the non-singleton inputs: (1) the uncertain error \( e\left( k \right) + \sigma e\left( k \right) \), and (2) the uncertain change of error, \( \Delta e\left( k \right) + \sigma \Delta e\left( k \right) \), were modeled as non-singleton Gaussians fuzzy values. The initial parameters values of the three IT2 NSFLS-1 systems are shown in Table 10.

The parameters are updated each control period of time using the BP’s derivative equations as shown in Tables 5, 6, 7, 8 and 9.

3.4.1 Experimental modeling

The results of the experimental modeling process are shown in Fig. 7. The stabilization times at 20 mA, arbitrarily selected as the operating set point, are shown in Table 11. The proposed assembly PID IT2 NSFLS-1 BP controller stabilizes 1.5 times fast that the one controller that uses the PID ZN and these using the T1 SFLS, the T1 NSFLS, and the IT2 NSFLS1 systems. There is not overshooting in any PID controller as shown in caption a) of Fig. 7, which shows the transient period of the six PID controllers: classic ZN, the updated by T1 SFLS, T1 NSFLS, IT2 SFLS by IT2 NSFLS-1 and by the proposed IT2 NSFLS-1 with BP learning mechanism.

Fig. 7
figure 7

Comparison of the performance among the PID controllers: the classic PID ZN controller, the one that uses gains update by T1 and IT2 fuzzy system, and the proposed PID using IT2 NSFLS-1 system with BP algorithm

Table 11 Comparison of transient periods

3.4.2 Experimental modeling with noise

The next experiment was performed with the purpose to know the behavior of the plant under noise disturbance with a signal-to-noise ratio (SNR) of ≅ 15 dB. When the valve was at the stable state zone of the set point, a noise was introduced. In the simulation process of the five PID controllers, the noise was added directly to the control signal as shown in (91), where \( u_{n} \left( k \right) \) is the control signal of normal operation, and \( r\left( k \right) \) is the imposed noise with a SNR of approximately 10% of the normal control signal value. The corresponding output can be calculated using next equations,

$$ u\left( k \right) = u_{n} \left( k \right) + r\left( k \right) $$
(91)
$$ y_{m} \left( k \right) = y_{u} \left( k \right) + y_{rn} \left( k \right) $$
(92)

where \( y_{u} \left( k \right) \), and \( y_{rn} \left( k \right) \) are the model outputs to \( u_{n} \left( k \right) \), and \( r\left( k \right) \) inputs.

In order to obtain a 10% of variation in the steady state, this simulation was performed with a control value \( u\left( k \right) \) with a negative noise value of \( - 2.0 \), \( u\left( k \right) = u_{n} \left( k \right) - 2.0 \), and was established during three cycles of time. After that, the control signal was set to its calculated value,\( u\left( k \right) = u_{n} \left( k \right) \). The behavior of the PID controller is shown in caption (b) of Fig. 7. The caption shows the behavior of the controller systems with negative noise perturbation. The values obtained from this experiment are shown in Table 12.

Table 12 Stabilization for negative disturbance

The response of the PID IT2 NSFLS-1 with BP learning mechanism is smooth and stable in comparison with the other benchmark PID controllers.

In the same manner, a positive noise of \( u\left( k \right) \) with 2 mA of magnitude and 3 cycles of time was applied in all the benchmarking systems during the steady state as can be seen in caption (c) of Fig. 7, which shows the behavior of the PID systems with a positive noise perturbation.

Figure 8a shows the behavior of the proposed hybrid assembly and the benchmark models in the transient phase. There, it can be see that the stabilization takes around of 60 cycles with a smooth curve in contrast to the benchmark fuzzy models that presents overshoot and damping. Also when the model is under positive or negative disturbance the behavior of the model is equal as shown in the insets b, d, f of Fig. 8. The proposal assembly doesn’t show overshoot and damping and it presents the best stability before and after the perturbation.

Fig. 8
figure 8

Comparison of the performance among the NZ, T1 SFLS, T1 NSFLS, IT2 SFLS, IT2 NSFLS-1 hybrid PID controllers at different operating set points: 10, 15, 20 mA

The behavior of the PID ZN and the PID T1 NSFLS systems under the positive disturbance reflects a slow recovery behavior in comparison with the proposed PID IT2 NSFLS-1 with BP learning mechanism performance. The stabilization times are shown in Table 13.

Table 13 Stabilization for positive disturbance

There is a difference between the behaviors of these five systems depending on the negative or a positive value of the noise. The analysis shows that the response for recovery of the proposed PID IT2 NSFLS-1 BP controller is faster than ZN, T1 SFLS and IT2 NSFLS1 benchmarking controllers.

3.4.3 Experimental modeling with different set points

The fuzzy PID controllers were tested with three different operating set points with arbitrarily selected values as 10, 20 and 15 mA. Different set points were tested to observe the behavior of the systems under a perturbation and to observe the transient periods. In the stable period (Fig. 9), there were added a negative (− 2.0 mA) and positive (+ 2.0 mA) disturbances with 3 cycles of application. The results of the simulation are shown in Figs. 8 and 9. The captions (a), (b) and (c) in Fig. 8 show the stabilization times after the sequential change of the values of the operating set point. The captions from (d) to (f) of Fig. 8 show the behavior of the PID controllers under the influence of negative and positive disturbances.

Fig. 9
figure 9

Comparison of the performance among the PID controllers: the classic PID ZN controller, the one that uses gains update by T1 and IT2 FLS system, and the proposed PID using IT2 NSFLS-1 system for gains update

4 Conclusion

At the end of the experimental phase of this work, the results show fast response and an improvement in the stabilization behavior of the output of the plant under the control of the proposed assembly. The performance of the proposal overcomes the performance of the five benchmarking assemblies: the PID ZN, the PID and the T1 SFLS, the PID and the T1 NSFLS, the PID and the IT2 SFLS, the PID and the IT2 NSFLS-1. Table 14 shows a complete comparison among these benchmarking controllers.

Table 14 Comparison of the stabilization on negative–positive disturbances, and overshooting between the PID ZN, the PID T1 NSFLS & the IT2 NSFLS-1

The proposal is a breakthrough in PID modeling. According to the literature, this is the first time that the PID can process the uncertainties and noise of the measurements thanks to the IT2 NSFLS1 systems that has its parameters and its output value in the form of non-singleton numbers, Gaussian numbers with its mean value and its standard deviation value.

The best performance is obtained from the proposed assembly that uses the PID controller and the IT2 NSFLS-1 systems that calculate the specific adjustments for the PID’s gains required to carry out the output of the plant to the desired set point in the shortest period of time and with the required condition of stability for the plant’s response.

The most important characteristic of the proposed IT2 NSFLS1BP system is the capability to processes the uncertainty coming from the input data, the sensor, the modeling of the IT2 system and the initial values of their parameters. Uncertainties filtering provide a characteristic to the system to adapt their performance to the desired set point with small variations that provide stability to the control process, however, in the presence of perturbations, and arise as the better assembly to avoid the loss of stability.

Other PID approximations only work with the mean of the measures, without the standard deviation. This proposal works with central and dispersion statistic indicators of the measurements covering all uncertainties and noise in the measurement.

The results of the experiment show that the stability of the proposed assembly is clearly the best because the output remains almost two periods of time in contrast with other proposals or tests, and also the proposal of IT2 NSFLS1 BP maintains the stability in presence of a perturbations and this stability do not presents oscillations as overshoot and damping. In the assembly constructed using the PID controller and the T1 SFLS the stability remains only 9 cycles in contrast with the period of time of the proposal, which stability time remains by 189 cycles in the worst case. In the better case the stability of the proposed model remains 1.5 times in contrast to the PID and 19 times against to the T1 NSFLS. Also in the transient period it is observed a similar situation.

The proposed assembly of the PID controller using IT2 NSFLS-1 systems with BP shows the best stability and the best performance compared to the five assemblies used as benchmarking systems.

In the simulations results it can be seen patterns in the behavior of the response of the plant that provide the chance to predict the behavior of the model over a disturbance. Also, the variation of the proposal is completely stable with a variation of 10% over the rest of the models that have variations more than 15% over a controlled disturbance.

The stabilization of the proposed assembly is faster that their counterpart’s of the time cycles to recover the stability.

As future work the authors:

  • will apply the model to real industrial problems where the uncertainties are non-stationary in a hot strip mill facility located in Monterrey, N.L. MX., firstly in off line mode and secondly in real-time mode,

  • will work in a proposal of the PID control model using artificial neural networks for the PID gains calculation,

  • will apply the BP model onto a GT2 model to evaluate the performance in a PID controller,

  • will propose other type of models for tuning with metaheuristics assemblies,

  • will apply the proposed assembly in a plant modeled with time delay in its output.