Recurrent Neural Networks as Pattern Generators -7=∑ - W - CiteSeerX

1 downloads 0 Views 67KB Size Report
Abstract. A fully connected recurrent ANN model is proposed as a generator of stable limit cycles. A hybrid genetic algorithm is used for training the network ...
Recurrent Neural Networks as Pattern Generators V.Petridis and A. Papaikonomou Dept. of Electrical Eng. Faculty of Engineering University of Thessaloniki, Box 438 Thessaloniki 540 06 GREECE Abstract A fully connected recurrent ANN model is proposed as a generator of stable limit cycles. A hybrid genetic algorithm is used for training the network model. The behaviour of the model is presented through a number of simulation experiments and the stability of the generated limit cycles is tested under several conditions.

1.Introduction It is well known that different architectures of recurrent ANN models and several training algorithms have been proposed in the past [1-4]. As we have shown in [6] the most suitable applications for ANNs with recurrent connections seem to be in the area of time-series problems. In this paper we analyse the performance of a recurrent ANN model in generation of limit cycles and storing time signals and trajectories. In section 2 we describe the RANN model and the basic principles of the training algorithm. The stability and capacity of the model are studied through extensive simulation experiments in section 3. Finally, in section 4, we suggest ideas for use of the suggested model in real word applications.

2.Network model and Training algorithm The model of the fully connected recurrent neural network has been presented in detail in [6]. The topology of the RANN is shown in figure 1. If is the number of units for which there exists a desired target valueGN W for every time step, then the quantity

0

0



- W  ∑ [ GN W \N W @ 



N

determines the overall network error at time W where \N W Ls the output ofNWKunit at the same time. Our purpose is to adjust the weight values so that the total network error

7

∑ - W W  -7

  Figure 1.

becomes less than a predefined quantity. 7is the largest period of the0desired output signals. The weight matrix of the network is calculated by a hybrid genetic algorithm which has been recently improved [6]. This algorithm is based on classic Genetic AlgorithmsWHFKQLTXHV(GAs) [7-9]. If 1 is the total number of the trainable weights, then the weight matrix : is encoded to an  1[ bit string, called genotype. A population of such genotypes composes a generation. Genetic evolution takes place by means of three typical genetic operators : a) Roulette Wheel parent selection. b) Crossover. c) Mutation.

1

In addition, a new operator, called "phenotype mutation" performs a local direct search in the neighbourhood of the best genotype in an effort to find a better point. This operator is applied only to the best genotype of every generation and increases to a great extent the speed of convergence of the GA, especially in case that the error surface does not have many discontinuities. An extensive description of the hybrid genetic algorithm and the suggested "phenotype mutation" operator is available in [6]. 3.Stability and Capacity In the following we examine the stability behaviour and the capacity abilities of the proposed model through extensive simulation experiments. a) The first experiment has been the generation of a limit cycle, in the form of two sinusoidal functions of different phases. The model chosen has had 6 neurons, two of which have been the output units. The desired outputs are: \ VLQ ŒW7  and \ VLQ ŒW7Œ The input value has been kept constant at 0.2. After approximately 2500 generations the outputs have been capable of following the sinusoidal oscillations with a negligible total error of 1e-3. It is remarkable that the number of required generations was practically independent from the number of used samples (16, 32 or 64 samples in a period for each output signal) and only the real time of training procedure has been effected by the increase of sampling frequency. Further experimentation has shown that the model learns the form of the output signals and not only the values of the discrete samples. This opinion is reinforced by the fact that the RANN model cannot learn even [  random patterns. Concerning stability of the limit cycle, we observed that, small perturbations of the input level (±5%) left the output virtually uneffected. Higher changes to the input value (±25%) were capable to affect the values of output signals but not to cause a serious damage to the form of limit cycle. Moreover, in cases of excessive input level changes, e.g. input level=0.7, the outputs were driven to a certain constant point, but when the input level was restored to the initial value of 0.2, the outputs quickly returned to the originally trained limit cycle, without any deviation. The whole model behaviour is shown in Figure 2.

Lim itCycle Input=0.2

Input= 0.7

y2

 



 



y2



y1

 

Return to Input= 0.2

y1

 







y2



y1

 



















Figure 2. b) To explore the capacity of the proposed model, the same network was assigned the task to generate more than one limit cycle. Different input levels (0.2 and -0.2) had to lead the two output units in different oscillations : 1)[ W  \ W  VLQ ŒW7 \ W  VLQ ŒW7Œ 2)[ W  \ W  VLQ ŒW7 \ W  VLQ ŒW7Œ It required about 3800 generations for the RANN to be trained. After training, the network has been capable of generating two very stable limit cycles depending on the value of input function. In addition, we tried to store in the same network three (the previous two and the following) limit cycles 3)[ W  \ W  \ W  VLQ ŒW7 In this case the number of required generations increased to 4500. Finally we tried to store four limit cycles: the previous three and the one given by  

[ W  \ W  \ W  VLQ ŒW7

In this last case 7900 generation have been required. It is remarkable that in all cases the trained model has exhibited impressive stability properties.

2

On the other hand, we observed that, it is almost impossible for the network to be trained to generate two similar limit cycles from two different input values. For example, consider the following limit cycles: 1)[ W  \ W  VLQ ŒW7 \ W  VLQ ŒW7Œ )[ W  \ W  VLQ ŒW7 \ W  VLQ ŒW7Œ    Although this problem seems to be easy, the best weight configuration that the genetic algorithm found in ten "runs" was capable of producing the limit cycle with a relatively high total error of 8e-3. Extensive simulation experiments, on a 6-neuron model (48 trainable weights), have shown that the same network is capable of generating up to 8 different limit cycles. Each cycle consists of 32 patterns for both outputs. The only limitation for a successful training is that the forms of the required output functions must be different. c) The third task was an emulation of a three-dimensional periodical motion. The RANN implemented, was a 7-neuron model, three of which were chosen to follow the equations :

x≡ \ W  FRV ŒW7 y≡ \ W VLQ ŒW7 z≡ \ W



W7LIW≤7   W7LI7≤W

The input level has been kept constant at 0.2 and 32 samples per period of each output have been used during the training time. After approximately 5600 generations, the network model has been capable of generating the required output functions. Further experimentation on the same network has shown that the form of the three-dimensional curve does not affect either the required training time or the possibility of a successful "run" of the genetic algorithm. The robustness of the training algorithm is effected only in cases that the desired motion includes a number of discontinuities. In cases of curves with more than one discontinuity, the genetic algorithm becomes completely unable to find an acceptable configuration for the weight matrix.

4. Conclusions Simulation has shown that the suggested RANN model exhibits a very robust behaviour. The presented experimental results show very clearly that the proposed model can be successfully used in all problems that demand generation of limit cycles with good stability properties under any conditions. A suitable application area is the control of robot systems. Several trajectories can be generated by a trained network. In a real world application, a number of RANNs can be implemented for storage and reproduction of complicated robot motion patterns. Another section of applications for the suggested network is the modelling of biological reflexes. It has been observed that some organisms always react in a standard way against the same external stimulus. The proposed model gives a reliable method for modelling these reflex responses. References [1] L. B. Almeida, "Backpropagation in Perceptrons with Feedback", Neural Computers (Neuss 1987), pp. 199-208, 1987. [2] F. J. Pineda, "Generalization of Backpropagation to Recurrent Neural Networks", Physical Review Letters, 18, pp. 2229-2232, Nov. 1987. [3] R. J. Williams & D. Zipser, "A Learning Algorithm for Continually Running Fully Recurrent Neural Networks", Neural Computation, vol. 1, pp. 270-280, 1989. [4] B. A. Pearlmutter, "Learning State Space Trajectories in Recurrent Neural Networks", Neural Computation vol. 1, pp. 263-269, 1989. [5] V. Petridis, S. Kazarlis, A. Papaikonomou & A. Filelis, "A hybrid genetic algorithm for training neural networks" In: Proceedings of ICANN '92, pp. 953-956, Sep. 1992, Brighton England. [6] V. Petridis, S. Kazarlis & A. Papaikonomou, "A genetic algorithm for training recurrent neural networks" In: Proceedings of IJCNN '93, Oct. 1993, Nagoya Japan. [7] J. H. Holland, "Outline for a logical theory of adaptive systems", J. ACM, vol. 3, pp. 297-314, July 1962.

3

[8] [9]

D.E. Goldberg, Genenetic Algorithms in Search, Optimization and Machine Learning. Reading, Mass.: Addison-Wesley, 1989. L. Davis (ed.) Handbook of genetic algorithms, Van Nostrand N. York, 1991.

4

Suggest Documents