usingneuralnetworkstotrainunmannedaerial

1
Using Neural Networks to Train Unmanned Aerial Vehicle (UAV) Controller Data ABSTRACT This work proposes the use of neural networks for modeling of a dynamical complex system. This model will be useful for the development and utilization of the helicopter as an Unmanned Aerial Vehicle (UAV). The treatment of the training commands, with which the present results are achieved, and the feedforward multilayer perceptron training network is examined through out this work. With the current Matlab software and neural network toolbox support, we have been able to accomplish the creation of a specific neural networks architecture; a feedforward multilayer perceptron artificial neural network. Along with the ability to calculate and train flight parameters such as yaw, pitch, and roll. In order to accomplish this goal, we propose to a) Develop a neural network capable of outputting x-y-z positions of an UAV during flight and b) Integrate the output of the trained neural network into the robust UAV controller. BACKGROUND There are many applications for an unmanned aerial vehicle (UAV). Some of which are used for observations, mapping, mobile target acquisition, and air-to-ground warfare missions for military utility. For civil functions, purposes range from, but not limited to, surveillance, inspections and imagery acquisition tasks. The type of vehicle used ranges as well, but the most suitable vehicle for many of the previously mentioned tasks is the helicopter for the reason that is able to offer a good compromise between maneuverability, forward-flight speed and the capacity of hovering. For the development of a robust controller that permits for autonomous flight, mathematical models of the helicopter’s flight dynamics are vital. Flight dynamics have a choice to be modeled with analytical, empirical, or mixed models. By combining the analytical expressions and empirical approximations, the mixed model is created that is able to reach a good compromise between accuracy and speed. Also by using a multilayer perceptron architecture, multiple layers of neurons with nonlinear transfer functions allow the network to learn nonlinear and linear relationships between input and output vectors (1), thus allowing the network to produce output values outside -1 and 1 ranges; comfortable qualified input data for the accurate target on UAV controller. This research aims at creating a successful feedforward network with a multilayer perceptron architecture that will train empirical flight data to be the input for the autonomous flight controller on a UAV. By using the mathematical precision of Matlab, data is stored as matrices to be trained and tested by a network created with the programs command input feature. Pablo Vazquez 1 , Dr. Amar Raheja, Ph. D. 2 , Dr. Subodh Bhandari, Ph.D. 3 , Dr. Fang “Daisy” Tang, Ph.D. 2 , Kevin Ortega 2 , Alexander Gutierrez 2 1 Citrus Community College, 2 Computer Science Department, Cal Poly Pomona 3 Aerospace Engineering Department, Cal Poly Pomona California State Polytechnic University, Pomona OBJECTIVE The goal of the project is to construct a robust nonlinear flight controller using neural networks. With different applications of neural networks, especially for the networks ability to learn based on feedback data, it is possible to implicate an artificial neural networks into the control system of the aerial vehicle. One type of artificial neural network that can accommodate to the necessities of aerial maneuvers is the multilayer perceptron, also known as MLP. This type of artificial neural network was used to explore the capabilities of neural networks delivering specific commands to scheme the path of an unmanned aerial vehicle before, during, and after flight. Real flight data acquired from a human-piloted UAV will be trained for a network and the same network will test new flight data for accuracy results. Scripts with commands for the creation, training, and testing of a network using a feedforward algorithm will be thoroughly crafted. METHODS Acquire flight data from human-piloted UAV -Differentiate and separate flight data into specific parameters matrices; roll, pitch, yaw -Within each flight parameters matrix, distinguish between hovering states and maneuver states; which row and columns from the specific parameter matrix produced a change in movement in respect to the one of the three parameters. These will be the input for the network to create an output that will consequently be used for the input of the UAV controls. Create network -Use Matlab’s editing tool to write a script with a list of commands in order to create a network (newff) with a feedforward algorithm that will train the row and columns of a flight parameter matrix which produced change in movement in respect to the one of three parameters -The activation functions and properties for the new feedforward function (newff) are as follows; 100 hidden layers unbounded range of input data “tansig” nonlinear transfer function followed by a linear “purelin” transfer function allowing to ultimately produce unbounded range of outputs. -Run the network on Matlab’s command window -Train the data with the network -Use the following row and columns within the respective parameter matrix that produced new sets of movements to test the network on. -Continue and repeat until all three parameter matrices have been trained and tested Store results -Store the output of the network to be used for input for the UAV controls Compare results -Plot histograms of mean squared errors for each trained and tested inputs of the network -Plot regression of output targets and actual outputs from network. -Plot expected outputs and network outputs -Compare RESULTS The following results were obtained from a series of training patterns with data collected on real flight sessions using a human-piloted UAV. As justified earlier, a feedforward multi-layer perceptron network is used as the architecture for training flight data to be inputted to a robust UAV control system. Shown below are the results of the “pitch” flight parameters, the UAV’s ability to maneuver up or down by changing the angle it flies toward to in respect to the z-axis. This network has a mean square error (MSE) of about .8948, with which the outputs are used to input on the UAV controller. CONCLUSIONS To conclude, the results confirm the hypothesis that the multilayer perceptron neural network is competent enough to understand flight dynamics of an Unmanned Aerial Vehicle Vision for a future project will be to incorporate the trained data into a flight oriented controller for a UAV and perform simulations to test and improve its precision. Improve training results to reduce the error after each training. Produce the development of a network particularly for understanding and training flight dynamics Fabricate a network architecture for a multilayer perceptron that produced precise results that enables input for a robust control system on a UAV RESULTS The graphs illustrate the success of the training network. Figure 3. represents the Error Plot for the “Pitch” data Network. It plots all the errors in the network to calculate the mean squared error (MSE). The MSE measures the networks performance based on the error, by calculating the networks target minus the networks output. It is shown to have the majority of the errors surrounding the zero error anticipation. An error closer to zero indicates good results from the training network. The skewed results can be a cause from the first unsuccessful attempts of the network to correctly train the flight data, until finally reaching reasonable values close to zero error. Figure 4 depicts the Regression Graph for the “Pitch” data Network. It plots the expected (target) data values vs. the actual (network output) values after training. Most of the data is clustered near the bottom left corner where the line-of-best-of-fit and expected target line meet. This is a good sign. The outliers, however, stray off the line-of- best-fit away from the targeted values. A possible cause for this is the skewed errors that the network first began displaying before it reached an MSE relatively close to 0. Figure 5 shows the “Pitch” data Network Performance Graph after 200 Epochs. It shows that the trained network minimized error (MSE) to increase best performance and results possible. The line converges to the best MSE possible, hence the good quality of results. These figures doesn't indicate any major problems with the training, however there is still room to improve the training network to the point where error is significantly close to 0 and the training output reaches the same expected values ACKNOWLEDGEMENTS This work is supported by the Race to STEM Program at Citrus College in collaboration with the Cal Poly Pomona Summer Research Program. Thanks to Amar Raheja, Ph. D.; Fang “Daisy” Tang, Ph. D.; Sobodh Bhandari, Ph. D.; Kevin Ortega and Alexander Gutierrez at the CPP Science Lab for their collaboration. Thanks to Professor Lucia Riderer and Marianne Smith, Ph.D. at Citrus College for the opportunity to participate. For additional information please contact: Amar Raheja, Ph.D. at California State Polytechnic University, Pomona CA {raheja}@csupomona.edu Fig. 4 Regression Graph for “Pitch” data Network. Expected (target) vs Actual (network output). REFERENCES [1] Demuth, howard, Mark Beale, and First . Neural Network Toolbox User's Guide. 4. Natick: MathWorks, Inc, 2001. 1-1 - 13-36. Print. [2] San Martin Munoz, Rodrigo, Claudio Rossi, and Antonio Barrientos Cruz. "Modeling Identification of Flight Dynamics in Mini-Helicopters using Neural Networks." http://cdn.intechopen.com. Universidad Politécnica de Madrid, n.d. Web. 10 July 2012. <http://http://cdn.intechopen.com/pdfs/5989/InTech- Modelling_and_identification_of_flight_dynamics_in_mini_helicopters_using_neural _networks.pdf>. [3] San Martin, R., A. Barrientos, P. Gutierrez, and J. Del Cerro. "Unmanned Aerial Vehicle (UAV) Modelling Based on Supervised Neural Networks." http://www.disam.upm.es. Universidad Politécnica de Madrid, n.d. Web. 19 July 2012. <http://http://www.disam.upm.es/~barrientos/Publications_files/ICRA%2006%20Unm anned%20aerial%20vehicle%20%28UAV%29%20modelling%20based%20on%20su pervised%20neural%20networks.pdf>. [4] Thaler, Stephen L. "THE BRAIN OF THE TRULY AUTONOMOUS UAV." www.dtic.mil. Imagination Engines, Inc., 2002. Web. 19 July 2012. <http://http://www.dtic.mil/ndia/2002targets/thaler.pdf>. [5] Barrientos, Antonio, Rodrigo San Martin, Pedro Gutierrez, and Jaime Del Cerro. "NEURAL NETWORKS TRAINING ARCHITECTURE FOR UAV MODELING." http://www.wacong.org. Universidad Politécnica de Madrid, n.d. Web. 19 July 2012. <http://http://www.wacong.org/wac2006/allpapers/isora/isora_104.pdf>. [6] Manerowski, Jerzy, and Daiusz Rikaczewski. "Modleing of UAV Flight Dynamics Using Perceptron Neural Netwroks." www.ptmts.org. Air Force Institute of Technology, 2005. Web. 19 July 2012. <http://http://www.ptmts.org.pl/2005-2- manerowski-r.pdf>. [7] Frantz, Natalie R.. (2005). SWARM INTELLIGENCE FOR AUTONOMOUS UAV CONTROL.Available:http://edocs.nps.edu/npspubs/scholarly/theses/2005/Jun/05Jun_F rantz.pdf. Last accessed 19th July 2012 Fig. 1 Basic Feedforward Multilayer Perceptron Neural Network Architecture Fig. 3 Error Plot for “Pitch” data Network. Clusters surrounding Zero Error Fig. 5 “Pitch” data Network Performance Graph. After 200 Epochs, the Network minimized error (MSE). Fig. 2 In-depth Network Architecture showing path of input vectors through the Transfer Functions (tansig and purelin) to produce an unbounded Output

Upload: pablo-vazquez

Post on 15-Apr-2017

8 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: UsingNeuralNetworkstoTrainUnmannedAerial

Using Neural Networks to Train Unmanned Aerial Vehicle (UAV) Controller Data

ABSTRACT

This work proposes the use of neural networks for modeling of a dynamical complex system. This model will be useful for the development and utilization of the helicopter as an Unmanned Aerial Vehicle (UAV). The treatment of the training commands, with which the present results are achieved, and the feedforward multilayer perceptron training network is examined through out this work.

With the current Matlab software and neural network toolbox support, we have been able to accomplish the creation of a specific neural networks architecture; a feedforward multilayer perceptron artificial neural network. Along with the ability to calculate and train flight parameters such as yaw, pitch, and roll. In order to accomplish this goal, we propose to a) Develop a neural network capable of outputting x-y-z positions of an UAV during flight and b) Integrate the output of the trained neural network into the robust UAV controller.

BACKGROUNDThere are many applications for an unmanned aerial vehicle

(UAV). Some of which are used for observations, mapping, mobile target acquisition, and air-to-ground warfare missions for military utility. For civil functions, purposes range from, but not limited to, surveillance, inspections and imagery acquisition tasks. The type of vehicle used ranges as well, but the most suitable vehicle for many of the previously mentioned tasks is the helicopter for the reason that is able to offer a good compromise between maneuverability, forward-flight speed and the capacity of hovering.

For the development of a robust controller that permits for autonomous flight, mathematical models of the helicopter’s flight dynamics are vital. Flight dynamics have a choice to be modeled with analytical, empirical, or mixed models. By combining the analytical expressions and empirical approximations, the mixed model is created that is able to reach a good compromise betweenaccuracy and speed. Also by using a multilayer perceptron architecture, multiple layers of neurons with nonlinear transferfunctions allow the network to learn nonlinear and linear relationships between input and output vectors (1), thus allowing the network to produce output values outside -1 and 1 ranges; comfortable qualified input data for the accurate target on UAV controller.

This research aims at creating a successful feedforward network with a multilayer perceptron architecture that will train empirical flight data to be the input for the autonomous flight controller on a UAV. By using the mathematical precision of Matlab, data is stored as matrices to be trained and tested by a network created with the programs command input feature.

Pablo Vazquez1, Dr. Amar Raheja, Ph. D.2, Dr. Subodh Bhandari, Ph.D.3, Dr. Fang “Daisy” Tang, Ph.D.2, Kevin Ortega2, Alexander Gutierrez21Citrus Community College, 2Computer Science Department, Cal Poly Pomona 3Aerospace Engineering Department, Cal Poly Pomona California State Polytechnic University, Pomona

OBJECTIVE

The goal of the project is to construct a robust nonlinear flight controller using neural networks. With different applications of neural networks, especially for the networks ability to learn based on feedback data, it is possible to implicate an artificial neural networks into the control system of the aerial vehicle. One type of artificial neural network that can accommodate to the necessities of aerial maneuvers is the multilayer perceptron, also known as MLP.

This type of artificial neural network was used to explore the capabilities of neural networks delivering specific commands to scheme the path of an unmanned aerial vehicle before, during, and after flight. Real flight data acquired from a human-piloted UAV will be trained for a network and the same network will test new flight data for accuracy results. Scripts with commands for the creation, training, and testing of a network using a feedforward algorithm will be thoroughly crafted.

METHODS

Acquire flight data from human-piloted UAV-Differentiate and separate flight data into specific parameters matrices; roll,

pitch, yaw-Within each flight parameters matrix, distinguish between hovering states and

maneuver states; which row and columns from the specific parameter matrix produced a change in movement in respect to the one of the three parameters. These will be the input for the network to create an output that will consequently be used for the input of the UAV controls.

Create network-Use Matlab’s editing tool to write a script with a list of commands in order to

create a network (newff) with a feedforward algorithm that will train the row and columns of a flight parameter matrix which produced change in movement in respect to the one of three parameters

-The activation functions and properties for the new feedforward function (newff) are as follows;

� 100 hidden layers � unbounded range of input data � “tansig” nonlinear transfer function followed by a linear “purelin” transfer

function allowing to ultimately produce unbounded range of outputs.-Run the network on Matlab’s command window-Train the data with the network-Use the following row and columns within the respective parameter matrix that

produced new sets of movements to test the network on. -Continue and repeat until all three parameter matrices have been trained and

testedStore results

-Store the output of the network to be used for input for the UAV controlsCompare results

-Plot histograms of mean squared errors for each trained and tested inputs of the network

-Plot regression of output targets and actual outputs from network.-Plot expected outputs and network outputs-Compare

RESULTS

The following results were obtained from a series of training patterns with data collected on real flight sessions using a human-piloted UAV. As justified earlier, a feedforward multi-layer perceptron network is used as the architecture for training flight data to be inputted to a robust UAV control system. Shown below are the results of the “pitch” flight parameters, the UAV’s ability to maneuver up or down by changing the angle it flies toward to in respect to the z-axis. This network has a mean square error (MSE) of about .8948, with which the outputs are used to input on the UAV controller.

CONCLUSIONS

To conclude, the results confirm the hypothesis that the multilayer perceptron neural network is competent enough to understand flight dynamics of an Unmanned Aerial Vehicle

Vision for a future project will be to incorporate the trained data into a flight oriented controller for a UAV and perform simulations to test and improve its precision.

Improve training results to reduce the error after each training.Produce the development of a network particularly for understanding and training

flight dynamicsFabricate a network architecture for a multilayer perceptron that produced precise

results that enables input for a robust control system on a UAV

RESULTS

The graphs illustrate the success of the training network. Figure 3. represents the Error Plot for the “Pitch” data Network. It plots all the errors in the network to calculate the mean squared error (MSE). The MSE measures the networks performance based on the error, by calculating the networks target minus the networks output. It is shown to have the majority of the errors surrounding the zero error anticipation. An error closer to zero indicates good results from the training network. The skewed results can be a cause from the first unsuccessful attempts of the network to correctly train the flight data, until finally reaching reasonable values close to zero error. Figure 4 depicts the Regression Graph for the “Pitch” data Network. It plots the expected (target) data values vs. the actual (network output) values after training. Most of the data is clustered near the bottom left corner where the line-of-best-of-fit and expected target line meet. This is a good sign. The outliers, however, stray off the line-of-best-fit away from the targeted values. A possible cause for this is the skewed errors that the network first began displaying before it reached an MSE relatively close to 0. Figure 5 shows the “Pitch” data Network Performance Graph after 200 Epochs. It shows that the trained network minimized error (MSE) to increase best performance and results possible. The line converges to the best MSE possible, hence the good quality of results. These figures doesn't indicate any major problems with the training, however there is still room to improve the training network to the point where error is significantly close to 0 and the training output reaches the same expected values

ACKNOWLEDGEMENTSThis work is supported by the Race to STEM Program at Citrus College in collaboration with the Cal Poly Pomona Summer Research Program. Thanks to Amar Raheja, Ph. D.; Fang “Daisy” Tang, Ph. D.; SobodhBhandari, Ph. D.; Kevin Ortega and Alexander Gutierrez at the CPP Science Lab for their collaboration.Thanks to Professor Lucia Riderer and Marianne Smith, Ph.D. at Citrus College for the opportunity to participate.For additional information please contact: Amar Raheja, Ph.D. at California State Polytechnic University, Pomona CA{ raheja}@csupomona.edu

Fig. 4 Regression Graph for “Pitch” data Network. Expected (target) vs Actual (network output).

REFERENCES[1] Demuth, howard, Mark Beale, and First . Neural Network Toolbox User's Guide. 4.

Natick: MathWorks, Inc, 2001. 1-1 - 13-36. Print. [2] San Martin Munoz, Rodrigo, Claudio Rossi, and Antonio Barrientos Cruz. "Modeling

Identification of Flight Dynamics in Mini-Helicopters using Neural Networks." http://cdn.intechopen.com. Universidad Politécnica de Madrid, n.d. Web. 10 July 2012. <http://http://cdn.intechopen.com/pdfs/5989/InTech-Modelling_and_identification_of_flight_dynamics_in_mini_helicopters_using_neural_networks.pdf>.

[3] San Martin, R., A. Barrientos, P. Gutierrez, and J. Del Cerro. "Unmanned Aerial Vehicle (UAV) Modelling Based on Supervised Neural Networks." http://www.disam.upm.es. Universidad Politécnica de Madrid, n.d. Web. 19 July 2012. <http://http://www.disam.upm.es/~barrientos/Publications_files/ICRA%2006%20Unmanned%20aerial%20vehicle%20%28UAV%29%20modelling%20based%20on%20supervised%20neural%20networks.pdf>.

[4] Thaler, Stephen L. "THE BRAIN OF THE TRULY AUTONOMOUS UAV." www.dtic.mil. Imagination Engines, Inc., 2002. Web. 19 July 2012. <http://http://www.dtic.mil/ndia/2002targets/thaler.pdf>.

[5] Barrientos, Antonio, Rodrigo San Martin, Pedro Gutierrez, and Jaime Del Cerro. "NEURAL NETWORKS TRAINING ARCHITECTURE FOR UAV MODELING." http://www.wacong.org. Universidad Politécnica de Madrid, n.d. Web. 19 July 2012. <http://http://www.wacong.org/wac2006/allpapers/isora/isora_104.pdf>.

[6] Manerowski, Jerzy, and Daiusz Rikaczewski. "Modleing of UAV Flight Dynamics Using Perceptron Neural Netwroks." www.ptmts.org. Air Force Institute of Technology, 2005. Web. 19 July 2012. <http://http://www.ptmts.org.pl/2005-2-manerowski-r.pdf>.

[7] Frantz, Natalie R.. (2005). SWARM INTELLIGENCE FOR AUTONOMOUS UAV CONTROL.Available:http://edocs.nps.edu/npspubs/scholarly/theses/2005/Jun/05Jun_Frantz.pdf. Last accessed 19th July 2012

Fig. 1 Basic Feedforward Multilayer Perceptron Neural Network Architecture

Fig. 3 Error Plot for “Pitch” data Network. Clusters s urrounding Zero Error

Fig. 5 “Pitch” data Network Performance Graph. After 200 Epochs, the Network minimized error (MSE).

Fig. 2 In-depth Network Architecture showing path of input vectors through the Transfer Functions (tansig and purelin) to produce an unbounded Output