Model Reference Adaptive Control based on a Self Neural Network Utilizing Micro Artificial Immune Systems

This paper presents an intelligent model reference adaptive control (MRAC) utilizing a self network (SRWNN) to control nonlinear systems. The proposed SRWNN is an improved reported wavelet neural network (WNN). In particular, this improvement was achieved by adopting two modifications to the original WNN structure. These modifications include, firstly, the utilization of a specific initialization phas improve the convergence to the optimal weight values, and secondly, the inclusion of self wavelons of the wavelet layer. Furthermore, an on performance of the SRWNN-based MRAC. As the training method, the recently developed modified micro artificial immune system (MMAIS) was used to optimize the parameters of the SRWNN. The effectiveness of this control approach was demonstrated by controlling several nonlinear dynamica evaluation tests were conducted, including control performance tests, robustness tests, and generalization tests. From these tests, the SRWNN-based MRAC has exhibited its effectiveness and generalization ability. In addition, a comparative study was made with other related controllers, namely the original WNN, the artificial neural network (ANN), and the modified recurrent network (MRN). The results of these com tests indicated the superiority of the SRWNN controller over the other related controllers.


Introduction
Adaptive control techniques have gained widespread popularity among researchers due to their ability in handling different types of complex and nonlinear control problems. Model reference adaptive control (MRAC) is a major type of adaptive control strategies. Owing to its ability to guarantee the global asymptotic stability, the MRAC scheme has been successfully employed to control different linear systems [1][2][3][4][5]. However, it is well-known that most real systems are inherently nonlinear in nature, and hence, impractical to describe such systems by linear mathematical models. This fact limits the Adaptive control techniques have gained widespread popularity among researchers due to their ability in handling different types of complex and nonlinear control problems. Model reference adaptive control (MRAC) is a major type of es. Owing to its ability to guarantee the global asymptotic stability, the MRAC scheme has been successfully employed 5]. However, known that most real systems are inherently nonlinear in nature, and hence, it is impractical to describe such systems by linear mathematical models. This fact limits the effectiveness of utilizing the conventional MRAC scheme to control such nonlinear systems. In order to mitigate this difficulty, many researchers have utilized the nonlinear function approximation capability of artificial neural network (ANN) to form a nonlinear ANN MRAC scheme to control nonlinear systems [6 10]. Despite this widespread utilization of ANN, recently a more powerful neural network structure, namely the wavelet neural network (WNN), has received extensive attention in the literature, especially in handling various control problems [11][12][13][14]. The strength of WNN approximation capability is realized by combining the theory of wavelets and the ANN framework. Hence, WNNs possess both the localization property of wavelet transform together with the learning and generalization abilities of ANNs. In spite of these desirable properties of WNNs, only few efforts have been made to employ WNNs in MRAC schemes. For instance, Wai and Chang [15] employed a WNNbased MRAC scheme to control an induction motor drive. In addition, the authors used the back stepping approach to design another feedback control action to get the required performance. In this method, to optimize the above structure, several learning rates had to be chosen according to the controlled system. Therefore, the above method is characterized by its difficulty in implementation due to the involvement of two complex control methods. As another MRAC system, Yoo et al. [16] used two SRWNNs, one of which acts as an identifier and the other as a controller, in a MRAC structure to control nonlinear systems. Both of these SRWNNs were trained by a gradient descent (GD) method to achieve the desired response. However, in addition to the complexity of this control approach, GD techniques are characterized by their slow convergence rates and the inclination to get stuck at local minima in the search space [3]. In order to avoid these limitations in GD methods, more attention has been given to evolutionary algorithms, due to their ability in finding the global optimal solution of a particular problem. In this regard, genetic algorithms (GAs) are regarded as the most essential types of evolutionary algorithms [17,18]. However, in recent years, a more powerful evolutionary algorithm has received considerable attention among researchers. This relatively new algorithm is the artificial immune system (AIS), which was built based on some concepts from the natural immune system. Compared to the GA, the AIS algorithm has a more efficient mutation operator which results in a better diversity of populations [19,20]. In this regard, utilizing this promising optimization method, Lutfy [21] proposed to use a modified micro artificial immune system (MMAIS) to train a WNN as the main controller in the MRAC scheme. However, in the above work, the WNN controller was treated as a black box approximator without using an initializing phase, which can affect the WNN approximation capability. In this context, it is worth noticing that the wavelet is a rapidly vanishing function which is fully defined by dilation and translation factors [22]. Consequently, suitable initialization of these factors plays an important role in improving the WNN approximation capability. However, despite this importance for the initialization process, several researchers did not consider a specific initialization approach for these parameters [11,13,16,21,23].To this end, aiming at enhancing the performance of the WNN controller, the motivation of the present work was to propose a more efficient version of the WNN structure. This modified WNN structure encompasses two amendments, namely; adopting an initialization phase to enhance the convergence to the optimal weights and including self-feedback connections to the wavelons in the wavelet layer. These modifications have contributed in improving the approximation capability of the proposed controller compared to other related controllers, as will be seen in the simulation results of the present work. Moreover, an on-line MMAISbased adaptive control design is used to further enhance the performance of the SRWNN controller. To the best of the authors' knowledge, this is the first utilization of the MMAIS in an online adaptive control design. The remaining content of this paper is arranged as follows: Section 2 discusses the utilization of the SRWNN controller within the MRAC. The SRWNN structure is elucidated in Section 3. Basic concepts of the AIS and the MMAIS algorithms are given in Section 4. To demonstrate the efficiency of the proposed SRWNN-based MRAC, several performance tests along with two comparative studies are presented in Section 5. Finally, the main conclusions are drawn in Section 6.

The SRWNN-based MRAC Structure
The main idea behind the MRAC is to specify the desired behavior of the controlled system by a reference model. This reference model is simply a plant of known dynamical structure whose task is to provide the desired output by applying a given input signal. Then, by applying a suitable optimization method, the main goal of MRAC design is to regulate the controller parameters by minimizing the difference between the outputs of the reference model and the controlled system [24]. Utilizing this basic MRAC design approach, the SRWNN structure is employed in this work as the main controller to constitute a nonlinear MRAC scheme. Figure 1 depicts a block diagram of the proposed SRWNN-based MRAC scheme. In particular, the design of the SRWNN controller in the framework of MRAC is based on the generalized inverse control technique. In other words, the SRWNN is trained to work as an inverse controller, as illustrated in Fig. 1. In order to clarify this design approach, consider the following nonlinear autoregressive moving average (NARMA) model, which is utilized to describe single-input single output (SISO) discrete-time nonlinear systems [9,21,24]: (1) Where ( ) and ( ) are the system output and input, respectively, (. )is a smooth nonlinear function, n and m are the system orders, and k represents the discrete-time instant. Subsequently, In order to deduce the control law, it is assumed that Equation (1) above is invertible resulting in the following equation: Where, ( +1) represents the output of the reference model at time instant (k + 1) and ℎ(. )is the inverse function of f in Equation (1), such that:ℎ(. ) = (.). In order to realize the control law given in Equation (2), a suitable function approximator must be used to approximate the inverse function ℎ(.). In particular, due to its remarkable nonlinear function approximation capability, the SRWNN is employed in this work to achieve this task. As can be seen from Fig. 1, the training of the SRWNN structure is accomplished by minimizing the error signal between the outputs of the actual system and the reference model. More precisely, this error signal is described by the following formula [22]: Where N represents the number of samples. In particular, this error signal is utilized as the performance index to be minimized viaan appropriate optimization method. In the present work, the MMAIS algorithm is employed for this task, as illustrated in Fig. 1.

The SRWNN Structure
As mentioned before, the proposed SRWNN structure, which is shown in Fig. 2, is an improved version of the previously reported WNN structure [21]. As depicted in Fig. 2, the SRWNN is a multiinput single-output network which has an input layer, a mother wavelet (wavelon) layer, and an output layer. These layers work together to generate the final output of the SRWNN structure. In the following, the functions of these layers are discussed in detail [16,21]: Layer 1: The function of this layer, which is called the input layer, is to convey the input variables as they are to the next layer. As explained in Section 2, the utilization of the SRWNN as the controller in the MRAC requires the selection of the input variables to be of the form: [ ( +1), ( ),…, ( − + 1), ( − 1 ) ,…, ( − +1)] … (4) Therefore, the number of nodes in this layer depends on the orders of the controlled system. Layer 2: This layer is referred to as the mother wavelet or the wavelon layer. Each node (wavelon) in this layer possesses a mother wavelet and a self-feedback connection with an adjustable parameter. As the mother wavelet, the Mexican hat function is employed in this work, and this function has the following form: To compute the wavelon outputs, the wavelet y of each node is obtained from its mother wavelet function according to the following expression: where d j and t j demarcate dilation and translation factors of the SRWNN, respectively, Ni is the number of input nodes, x i denotes the i th input variable, v ji is the link connection from node i in the input layer to wavelon j in the mother wavelet layer, ) 1 (k j y represents the memory term, whose task is to store the previous state of the j th wavelon, and j q is the link value of the selffeedback connection belonging to the j th wavelon. Specifically, this weight value is responsible for deciding the rate of information storage. Finally, the j th wavelon's output is calculated by making use of the Mexican hat function as expressed in the following: It is worth to highlight that as an advantage of the SRWNN over the WNN, the self-feedback connections in the wavelon layer have the ability to reserve the previous network information. In other words, the current network state contributes in producing the network output for the next sample of time. This feature enhances the overall approximation ability of the SRWNN compared to the conventional WNN, as will be demonstrated in the simulation results of this work. Layer 3: This layer, known as the output layer, has only one node. The task of this node is to generate the SRWNN output, using the following equation: where, as can be observed from Fig. 2, Nw and Ni denote the number of nodes in the wavelon layer and the input layer, respectively, c j is the weight connecting wavelon j and the output node, a i is the weight connecting node i in the input layer and the output node, and b represents a bias connection to the output node. Since the SRWNN structure described above is utilized as a controller in this work, the SRWNN output in Equation (8), y, represents the control action applied to the controlled system at a given sample of time.

Initialization of the SRWNN Parameters
In conventional ANN, the network parameters are randomly initialized to small values and the whole network functions as a black box approximator. This initialization process may lead to getting stuck at local minima and decrease the network convergence rate [25]. However, unlike ANNs, the WNN structure consists of dilation and translation factors which affect the shape of the wavelet. More precisely, a wavelet is a waveform defined by suitable dilation and translation parameters which determine the waveform effectiveness during only a limited duration. Therefore, a random initialization for dilation and translation parameters may generate ineffective wavelons which negatively affect the network convergence rate. For example, a very small value for the dilation factor may result in a wavelet with too local property that makes it inappropriate for the training data under consideration. On the other hand, if the translation factor is not initialized properly, the wavelet may materialize outside the domain of the training samples. Nevertheless, despite this influence for dilation and translation factors, several researchers did not consider a specific initialization process for these parameters [11,13,16,21,23].
In this work, in order to handle this issue, dilation and translation factors are initialized according to the available information from the dataset according to the following procedure [22,25]. Let the variables a and b be the minimum and the maximum values that the input variables can take, respectively. Then, the translation and the dilation factors are initialized as follows: where t j and d j are translation and dilation factors of wavelon j in the wavelet layer and j = 1, 2, …, Nw. As stated before, this initialization process takes into account the input domain defined by the training samples, and hence, it ensures the coverage of the whole input domain by the initial wavelets. On the other hand, initial value selection for the remaining SRWNN parameters is less crucial; therefore, they are initialized to small random values. As can be noticed, the above initialization procedure is very simple, yet it has considerably improved the approximation capability of the SRWNN.

Training of the SRWNN
In the framework of MRAC, training of the SRWNN controller dictates finding the optimal values for the SRWNN parameters by minimizing the error between the outputs of the reference model and the controlled system. As discussed in Section 3, the SRWNN consists of different adjustable parameters, which can be summarized by the following set Where the adjustable parameters in the above equation were defined in Section 3. These parameters are optimized by the MMAIS algorithm in this work, as discussed in the following section.

Artificial Immune System
The underlying principle behind artificial immune system (AIS) is based on the information processing capability of the biological immune system which is a parallel, highly evolved, and distributed adaptive system. As a result, the AIS algorithm possesses powerful exploration and exploitation operators. In particular, compared to other evolutionary techniques, the AIS algorithm has more efficient mutation operators, and moreover, it can achieve better diversity of populations which leads to faster convergence rates [19,20]. In order to understand the basic operators of the AIS algorithm and relate them to their biological counterparts, the main functions of the biological immune system are discussed below.

Biological Immune System
The biological immune system is a powerful defense network whose responsibility is to detect the incursion of foreign antigens and destroy them to protect the human body from these diseasecausing substances. For this purpose, the biological immune system employs an enormous variety of antibodies, which are produced by the B cells, to counteract the effect of these harmful antigens [26]. More specifically, each antibody type has the ability to identify a specific antigen type using a correlation measure between the antibody and the antigen. This correlation measure is called the affinity value [27]. Based on this affinity value, once an external antigen is recognized, the B cells with high affinity to that antigen will explosively generate antibodies (cloned cells) to fight the antigen in a process known as the cloning operator. Moreover, these cloned cells undergo certain somatic hypermutation to make sure that the cloned cells will differ from their parent cell to adapt the immune system against other possible variations of the stimulating antigen [20]. To globally enhance the population of cells, the cells that are seldom stimulated by the attacking antigen are removed and replaced by other recruited cells. Then, after eliminating the antigen, mature B cells are repressed gradually to certain regular level except some cells which become memory cells. These memory B cells facilitate the immune system response when the same or similar antigen attacks again, since all the information on the attacking antigen are already stored in the memory cells [26,28,29].

Micro-AIS
Utilizing certain concepts from the biological immune system described above, several variations of the AIS algorithm have been effectively employed to solve various optimization problems [27,30,31]. However, the cloning operator in the traditional AIS algorithm has a drawback represented by the increase in the population size which entails a long execution time and substantial memory exploitation. To alleviate this problem, the authors in [32] suggested another version of the AIS algorithm, which was called the Micro-AIS algorithm, based on utilizing a reduced population size. The assumption behind the Micro-AIS was that decreasing the antibody number in a population results in a decrease in the number of cost function evaluations, which consequently increases the convergence speed and reduces the memory usage. However, in the original Micro-AIS algorithm, the mutation operator did not offer the necessary variable variations for solving a particular problem. Thus, to enhance the searching capability of the original method, a MMAIS algorithm was presented in [21] by improving the mutation operator of the original method. Due to its effectiveness in several applications [21,33,34], the MMAIS algorithm is exploited in this work to optimize the parameters of the proposed SRWNN controller based on the MRAC strategy, as will be elucidated in the following section.

Procedure of Applying the MMAIS Algorithm to Train the SRWNN Controller
The following procedure illustrates the application of the MMAIS algorithm to train the SRWNN controller in the framework of MRAC strategy.
Step 1: Initialize the maximum number of iterations and the probability of mutation, P m .
Step 2: Produce a starting (initial) population. This population consists of five antibodies which are randomly generated within preselected ranges. Each of these antibodies represents a single SRWNN controller which is defined by the adjustable parameters given in Equation (11). These five antibodies enter a nominal convergence loop, with 10 iterations, as described below.
Step 3 : Set the counter of the nominal convergence loop to 1, and do the following: Step 3-1: For each antibody in the current population, compute the objective function using the performance index defined in Equation (3). Next, for each antibody, find the affinity value according to the following equation: Where ε is a small constant which is used to evade the division by zero.
Step 3-2: Sort descending the antibodies based on their affinity values. As a result, the antibody with the largest affinity value, which is called BestAb , becomes the first one.
Step 3-3: Generate a specific number of clones from the current five antibodies utilizing the following expression: Where the number of clones to be produced, n isis the number of antibodies in the current population, and I is the antibody index. Thus, by using Equation (13), a five-antibody population produces a 15-clone population. In particular, BestAb produces five clones; the second antibody produces four clones; and so on until the fifth antibody is encountered which produces one clone.
Step 3-4: Perform the maturation of clones using the mutation operator. First, determine the mutation probability of each group of clones generated from a given antibody. This probability is computed according to the antibody affinity value and then it is uniformly reduced with iterations. Therefore, the clones related to BestAb are mutated less than other groups of clones. More specifically, the mutation probability is determined according to the following equation: Wherei is the antibody index and n is the number of antibodies in the old population. Moreover, to reduce the mutation probability within the nominal convergence loop, the following expression is utilized: , ℎ ℎ Where iteration in the above equation is the current nominal convergence loop iteration. Next, perform the mutation operator using the following expression: ( where x ' and x are the mutated decision variable and the decision variable to be mutated, respectively, rand is a random number generated within the range [0, 1], iteration is the current nominal convergence loop iteration, and group_N c represents the number of clones for each antibody group. Regarding the five BestAB clones, the variable range in Equation (16) represents a random number generated between lower and upper bounds of the decision variables. For the remaining clones, other than the first five clones, range is the equivalent decision variable from BestAb and the mutation operator is performed using Equation (16).
Step 3-5: For each clone in the new population, calculate the objective function and the affinity value using Equations (3) and (12), respectively.
Step 3-6: Sort the 15 clones of the new population based on their affinity values in a descending order.
Step 3-7: From the sorted 15 clones, constitute a new population of five clones. In particular, as an elitism strategy, the first two clones are copied into the new population. The other three clones are chosen randomly from the population of the 15 clones.
Step 3-8: If the counter of the nominal convergence loop has reached to its maximum limit, go to Step 4. If not, set counter = conter + 1 and go back to Step 3-1.
Step 4: After completing the nominal convergence loop, a new population of five antibodies is constituted by selecting the best two antibodies along with three other randomly generated ones. This new population enters the nominal convergence loop, specifically, Step 3 above. The whole algorithm, including Steps 3 and 4, continues until the stopping criterion is satisfied. Particularly, the stopping criterion in the present work is defined by reaching the maximum iteration number.
As an off-line design approach, the objective of the above training procedure is to optimize the SRWNN parameters defined in Equation (11). However, to realize adaptive control, the best controller found by the off-line design approach is further tuned by the MMAIS algorithm using the on-line training procedure described below.

On-line Training Procedure
In the on-line design stage, the MMAIS algorithm starts with an initial population of five antibodies which include the best controller found from the off-line design stage along with other related controllers. As the on-line adapted parameters, only the weights between the wavelon and the output layers are allowed to be adjusted by the optimization algorithm. At each time step, the MMAIS algorithm selects the best controller, from a set of several candidate controllers, to control the plant. The general idea of the proposed on-line design approach was adopted from [35]. The following procedure illustrates the on-line training steps used in this work.
af inity = 1 │J│ … (18) Step 1: As the starting population in the online design stage, constitute an initial population of five antibodies in which the first two antibodies represent the exact copies of the off-line designed controller. The remaining three antibodies are initialized by randomly generating the weights between the wavelon and the output layers. In this way, the best controller obtained from the off-line design stage is effectively utilized to provide useful information for the adaptive design stage.
Step 2: Set the simulation time, k, to zero.
Step 3: Collect the current reference input, r(k), the current system output, y(k), and the current reference model output, ym(k).
Step 4: Calculate the next reference model output, ym(k+1), using the desired reference model equation.
Step 5: For each antibody in the current population, which consists of five antibodies, calculate the objective function using the following performance index: = ( +1)− ( +1) … (17) Where y(k+1) is the system output at sample (k+1). After that, the affinity value of each antibody is found according to the following equation: Step 6: The antibody with the largest affinity value is chosen as the controller for the current sampling time. However, due to the random operators in the MMAIS algorithm, the selected controller might not be the best solution for the current sampling time. To alleviate this difficulty, the error produced by the on-line designed controller is compared with that of the off-line designed one at a given sampling time. Based on this error, which is defined by Equation (17), if the on-line designed controller achieves less error value, it is used to control the plant at the next sampling time. Otherwise, the off-line designed controller is selected as the controller for the next sampling time. From several simulation tests, this strategy has resulted in the best on-line controller performance as will be seen from the simulation results of the next section.
Step 7: Produce the next population of the MMAIS algorithm using the procedure described in Section 4.3, in particular Steps 3-1 to 3-8. However, instead of Equations (3) and (12), Equations (17) and (18) are used to evaluate the performance of each antibody. After completing the nominal convergence loop, a new population of five antibodies is generated.
Step 8: If the simulation time, k, has reached to its maximum value, the algorithm is terminated. Otherwise, set k = k +1 and go back to Step 3.

Simulation Results
This section is dedicated to assess the performance of the proposed SRWNN-based MRAC in terms of control accuracy, robustness ability, and generalization to various input signals. In addition, a comparative study with other controllers within the framework of MRAC is conducted in this section. Utilizing the MMAIS algorithm, the initial learning and the on-line design procedure discussed in Sections 4.3 and 4.4, respectively, were employed to control all the considered plants. As the main parameters in the MMAIS algorithm, the mutation probability and the maximum number of iterations were set to 0.3 and 500, respectively. Moreover, for all the controlled plants, only six wavelons (with selffeedback connections) were used to constitute the wavelon layer in the SRWNN structure. These settings for the optimization algorithm and the SRWNN structure were adequate to attain the required control performance. As mentioned before, the main contribution of this work is represented by the performance improvement achieved by the SRWNN compared to the original WNN structure, as will be seen in Section 5.5. Furthermore, unlike the training method of the original WNN controller, an on-line training procedure is adopted in this work to further enhance the control performance and to realize an effective adaptive control strategy.

Control Performance Tests
To show the applicability of the proposed SRWNN-based MRAC to control various dynamical systems, three different nonlinear systems were adopted. These systems include a nonlinear non-minimum phase system, a water bath temperature control system, and a nonlinear minimum phase system. Plant 1:This plant represents a nonlinear nonminimum phase system which is described by the following discrete-time equation [9]: As the reference model for the above system, the following equation is used: ( +1)=0.6 ( ) + ( ) … (20) The SRWNN-based MRAC, shown in Fig. 1, is required to track the following reference signal:  Fig. 3 (b) shows the on-line adaptation made to the six weights connecting the wavelon and the output layers in the SRWNN structure. a b Fig. 3. Plant 1 (a)

outputs of the reference model and the controlled plant (b) on-line adaptation of the six weights in the SRWNN structure.
From Fig. 3 (a), it is obvious that the proposed control approach has achieved an accurate control performance by following the desired reference model output. On the other hand, Fig. 3 (b) demonstrates the on-line adaptation ability of the MMAIS algorithm in finding the optimal value for the six weights at each sampling time. Furthermore, it is worth mentioning that the initial learning for the SRWNN controller has resulted in a value of 0.1 for the performance index of Equation (3) after 500 iterations, while the on-line training procedure has further reduced the above value to 0.015, which indicates the effectiveness of the on-line training procedure.

Plant 2:
As the second nonlinear controlled plant, the water bath temperature control system is considered. This system is governed by the following discrete-time equation [36,37]: and T =30 s . These values have been adopted from a real water bath system [37]. The desired reference signal, which represents the desired water temperature in C o , is given by the following signal:

… (23)
The desired system output is specified by the following first-order reference model equation [38]: y (k+1)=0.6y (k) +0.4r(k) … (24) The actual system output, the reference model output, and the resulting control signal are exhibited in Fig. 4 (a), while the on-line adaptation achieved on the six network weights is depicted in Fig. 4 (b). a b Fig. 4. Plant 2 (a) outputs of the reference model and the controlled plant (b) on-line.
As it is evident from Fig. 4 (a), the actual system output has accurately followed the reference model output. Figure 4 (b) clearly shows the on-line adaptation ability of the MMAIS algorithm at each sampling time. The initial learning for the controller after 500 iterations has achieved a performance index of 53.965, while the on-line training has further reduced this value to 21.393, signifying the efficiency of the on-line algorithm. Bearing in mind the control signal limitation within a specific rang [0,5], it can be concluded that the proposed controller has achieved the desired performance even with the existence of such constraints.
Plant 3:This is a nonlinear plant expressed by the following difference equation [24]: The desired system behavior is given by the following reference model equation: While the reference signal is as follows: Time samples From Fig. 5 (a), it can be seen that the SRWNN-based MRAC has done well in tracking the desired reference model output. The ability of the optimization method in adapting the network weights can be observed in Fig. 5 (b). As with Plants 1 and 2, the on-line training algorithm has achieved a smaller performance index value of 0.027, compared to the initial learning value of 0.057.

Robustness Tests
These tests aim at investigating the robustness ability of the proposed SRWNN-based MRAC by conducting a disturbance rejection test on each plant considered in the previous section. For  Plants 1 and 3 was applied at the 50th sample. It is interesting to notice that all of these disturbances were applied during only the controller testing phase of each plant. This means that the SRWNN controller was not trained to handle these disturbances. Nonetheless, the SRWNN controller managed to cope with the unexpected effects of these disturbances by maintaining the desired output response for all the plants. Figures 6 (a) It is noteworthy that the large disturbance amplitude, specifically the 50% of system outputs for Plants 1 and 3, indicates that the SRWNN controller possesses the ability to counteract large disturbances even when such disturbances are not encountered during the controller training phase.

Parameter Variation Test
This test is conducted to evaluate the controller ability in handling inherent changes in the system parameters. To perform this test, certain variations are made on a parameter in the water bath temperature control system at different time samples. More specifically, an increase of 10% in the original value of b(T s ) in Equation (22) was considered at sample numbers 30, 50, and 70. As was done in the previous section for disturbance rejection tests, the parameter variations were made only during the controller testing phase, which means that the controller was not trained to face these dynamic changes in the system. Figure  7 illustrates the outputs of both the system and the y m , y As can be clearly seen from Fig. 7, the SRWNN controller has done well in tracking the desired reference model output even with the existence of an unexpected time-variant parameter in the system model. The control signal in Fig. 7 indicates the adaptation made on the controller behavior to deal with such nonlinear time-variant system.

Generalization Tests
The objective of these tests is to demonstrate the ability of the SRWNN controller in handling reference signals different from those used in the controller training stage. This controller feature is known as the generalization ability. The tests were conducted on Plants 1 and 3 by using the same training signals of Equations (21) and (27) for Plants 1 and 3, respectively. While, for the testing stage, the following signals were used: Equations (28) and (29) represent the testing signals for Plants 1 and 3, respectively. The results of these tests are shown in Fig. 8, where it is clear that the SRWNN controller has appropriately generalized its learning to handle input signals which were not encountered throughout the controller training phase for Plant 1, Fig. 8 (a), and for Plant 3, Fig. 8

A Comparative Study with other Related Controllers
In this section, the performance of the proposed SRWNN controller is compared against those of other related controllers in terms of control accuracy and processing time. Specifically, the controllers under consideration include the original WNN controller, the ANN controller, and the modified recurrent network (MRN) controller. These controllers are used within the same MRAC structure shown in Fig. 1. For a fair comparison, the same MMAIS algorithm was employed to train each of the above controllers using the off-line procedure described in Section 4.3. The structure of the original WNN controller [21] is similar to that of the SRWNN discussed in Section 3, with the exception of the wavelons' self-feedback connections and the initialization phase in the SRWNN structure. On the other hand, the ANN structure consists of an input layer, a hidden layer Reference model Controlled plant Time samples a with hyperbolic tangent as the neurons' activation functions, and an output layer. Finally, the structure of the MRN, which was proposed in [39], has an input layer, a hidden layer, a context layer, and an output layer. The context layer has the same number of nodes as the hidden layer. Each node in the context layer receives two inputs, the first of which represents a selffeedback connection with an adjustable weight, b , while the second input is the previous output of the corresponding hidden node multiplied by an adjustable weight, x . As the hidden nodes' activation functions, the hyperbolic tangent functions were used. In fact, the MRN is an improved version of the modified Elman network [40]. It is worth to highlight that only 6 neurons were used in each hidden layer of the networks mentioned above. Plants 1 and 3 used before are considered in this comparative study, along with the following time-delay nonlinear plant [21]: The MMAIS is classified as a stochastic algorithm, since it employs several random operators. As a result, the performance of a final optimized controller might vary for different simulation runs. Hence, to achieve a reliable comparative study, 10 runs were conducted for each plant and the average result was taken.

A Comparative Study on the Optimization Methods
As stated earlier, it has been shown that the AIS algorithm is superior to the GA with regard to maintaining good population diversity due to the efficient mutation operator employed by the AIS algorithm [19,20]. In this context, it is essential to compare the performances of both the MMAIS and the GA in training the proposed controller, and this section is dedicated for this purpose. As the controlled systems, the same plants considered in the previous section are used in this comparative study. Similar to the comparison procedure followed in Section 5.5, 10 runs were conducted for each plant and the average result was considered in order to attain a reliable comparative study. Table 2 exhibits the comparison results. Obviously, Table 2 signifies the advantage of the MMAIS algorithm over the GA. In particular, the MMAIS algorithm has accomplished the least values for the performance indices and took the shortest processing times for all the plants compared to the GA.

Conclusions
In this paper, a SRWNN-based MRAC scheme is proposed to control nonlinear dynamical systems. As an improved version of a previously reported WNN structure, a SRWNN structure is put forward by adopting a specific initialization phase and utilizing self-feedback weights in the wavelon layer. In addition, an on-line training procedure is followed to further enhance the control accuracy of the SRWNN controller. To train the above controller, the newly developed MMAIS algorithm is employed to optimize the SRWNN parameters. Several nonlinear dynamical systems are used to show the effectiveness of the proposed control approach via an extensive evaluation tests, including control performance tests, robustness tests, parameter variation test, and generalization tests. All these tests have indicated the effectiveness of the SRWNN-based MRAC. Furthermore, a comparative study with other related controllers has shown the superiority of the proposed controller. Finally, as compared to the GA, the MMAIS algorithm has achieved better results with regard to control accuracy and processing time.