A Wind Speed Estimation Method for Quadcopter using Artificial Neural Network

—This paper presents an approach for quadcopter that estimates the wind speed in the outdoor airflow environments based on artificial neural network. Wind speed estimation is an essential for quadcopter for the odor source localization in outdoor airflow environments. We present a novel method of wind speed estimation by using an artificial neural network. To accomplish the mission we use MATLAB software. According to the estimation result obtained from both backpropagation and exact radial base function artificial neural network the wind speed estimation result is promising and both artificial neural networks can be used for the wind speed estimation of the quadcopter.


INTRODUCTION
The most important senses, olfaction is widely used by animals to search for food, find mates, exchange information, and evade predators. Inspired by the sense of smell capabilities of animals, in the untimely 1991s, mobile robots with analogous functions were tried to be built [1][2][3]. It is normal that portable robots created with such olfaction capacities would assume an ever increasing number of jobs in regions, for example, passing judgment on poisonous or destructive gas spillage area, for environmental monitoring, for security system (in airport patrolling, hospital and stadium), searching targets in collapsed buildings or underwater, humanitarian de-mining, checking for illegal imports (e.g., heroin) [4]. Gases might be discharged from many points of view for different reasons: as fumes gases from traffic or industry, as pipe gases from flames, or because of occurrences with synthetic substances. Up to now, the investigation of robots with olfaction limits can be arranged into three classifications, i.e., scent trail following, smell source limitation or concoction tuft following and scent dissemination mapping [5].
According to the methodology of the approaches for odor source searching problem, the odor source localization methods proposed in early works can be roughly classified into two, that is, biologically inspired methods and engineering methods [6]. Additional challenges arise due to the restriction of the current sensing technologies and because odor particles are extremely separated. The movements of odor highly based on the wind speed and direction. Hence, in order to track the odor on the surrounding wind information is an essential component. Wind is one of the important factors that have an influence on quadcopter's approach. In robot active olfaction, the robot normally needs the wind information to tell from which direction the odor is coming and estimation of wind speed is used to improve the localization precision for quadrotor to find odor source. Due to this reason, estimation of wind speed is essential in the field of odor source localization.
Odor plumes will be carried along the wind direction, the odor sniffer robot will have to track along the upwind direction to find the source of the odor, as this will increase the chances of finding the location. In the last decade, the researcher has used wheeled mobile robots to trace the gas plume. In order to obtain wind vector, researchers mounted wind sensors on their wheeled based gas tracking robots. Russell and Kennedy [7] were the first researchers' who propose to add gas sensor/wind sensor on gas tracking mobile robot. In current years, researchers hoped to improve the precision of wind speed, hence; they proposed to prepare/mount wind sensor into the wheeled based gasfollowing robot. The mounted ultrasonic wind sensor [7][8] has an accuracy of 2% at 12 m/s, with a range of 0-60 m/s. Wind speed estimation has been a critical issue and great significance for a quadrotor as there are being used for odor source localization and mostly used for environmental monitoring. Estimation of wind speed for the UAV (Unmanned Aerial Vehicle) is essential to accomplish the mission and improve localization accuracy in an unknown environment.
The remainder of the paper is organized as follows: Section II presents related work; Section III presents the wind speed estimation method using artificial neural network. Section IV Estimation of wind speed with BP-ANN and ERBF-ANN. Section V Conclusions.
II. RELATED WORK Usually, an anemometer is used to measure the wind vector. However, the anemometer is often bulky. For this reason, installing anemometers on quadrotors is not an easy work, would consume valuable payload, and it will cost most of the valuable limited payload.
Another method of wind estimation was put forward by Neumann [9] etal and the authors use the data from the on board of IMU (Inertial Measurement Unit) to estimate wind vector. Aerodynamic representation of the wind vector estimation for quadrotor was analyzed in [10] and [11], and the methods in these papers estimated the wind in difficult ways. Some experiments was done in [12] using a wind tunnel to decide the relationship among resistance of the wind and the quadrotors attitude and this improved the accuracy of the inclination-angle measurement based wind estimation method. Marino et al. [13] discussed the possibility to estimate wind by measuring the energy consumption of each rotor. This method is simple, but relatively accurate wind estimation and method have not been proposed. Since wind speed has an influence on quadrotors attitude, it may be a solution to estimate wind if the relationship between wind and the quadrotors changing attitude can be revealed [14].
In this paper, we present a novel the wind speed estimation method for the quadcopter, which considers the quadcopter speed and inclination angle. The proposed method uses an artificial neural network to determine wind speed of the quadcopter by using data points from Neumann [15]. After the data points for inclination angle and wind speed was determined from Neumann [15], we use backpropagation and exact radial base function artificial neural network to estimate wind speed for the quadcopter by using MATLAB software.

III. ESTIMATION OF WIND SPEED USING
ARTIFICIAL NEURAL NETWORK An artificial neural network is a computing mode designed by a plurality of very simple processing units linked to each other in a manner that is intended to imitate the arrangement of a human brain and its function. In an outdoor environment, wind almost always blows, and varies with time and location. Consequently estimating wind speed is very difficult in the normal way. In our research, we use artificial neural network (ANN) for estimation of wind speed for quadcopter and the method is not difficult. ANN is one of the intelligent identification methods, which have a parallel structure and the parallel process capacity. Artificial neural system has a few points of interest. It needs information to be familiar with the connection among data input and output. The strategy for the neural system has the capacity of learning broad flexibility and nonlinear mapping capacity by figure out how to acquire the reliance relations between sample data. For estimation of wind speed we use of Neumann [15] data point consisting as input and output, through the self-learning ability of a neural network to carry on the analysis among input and output capacity, and this capacity is used in the estimation of wind speed by using MATLAB software. To sum up, the method of wind speed estimation using artificial neural network need input data and output data. Forward propagation output calculation and backpropagation weight correction are performed alternately, until the errors between the networks expected output and the actual output meet the requirements; ultimately determine the network weights and thresholds. The network estimation process is the test sample was input into the trained network, prediction value was output to have an estimation of the wind speed for the quadcopter.

A. Backpropagation artificial neural network (BP-ANN)
One of the greatest popular ANN algorithms is backpropagation. Error BackPropagation, often abbreviated as "BP", is one of several methods of teaching artificial neural networks. The learning procedure of backpropagation neural network consists of two routes: frontward propagation of and back propagation of error. In the case of forward propagation, the input samples are passed from the input layer, processed through the hidden layer by layer, and then passed to the output layer. If the predicted output of the output layer does not the similarity to the expected output, then the back propagation phase of the steering error. The back propagation of the error is to pass the output error back to the input layer by layer through the hidden, and distribute the error to all the units of each layer, to obtain the error signal of each layer unit. This error signal is used as the correction. The basic idea of backpropagation is to adjust the network parameters by calculating the error between the output layer and the expected value so that the training result of wind speed estimation for quadcopter more effective. Fig.1 shown below illustrates the structure of single input, single output of backpropagation.
In backpropagation training, we use single input and single output kind of structure to estimate the wind speed of the qudacopter.

B. Exact radial base function artificial neural network (ERBF-ANN)
The ERBF-ANN can estimated random nonlinear functions, can handle the intractable regularity in the structure, has a decent generalization ability, and has a fast learning convergence speed. ERBF has been effectively applied to nonlinear function estimate, time series analysis. The ERBF organize is a prevalent option in contrast to the notable multilayer perceptron, subsequently it has a less complex structure and a lot quicker training process. In our research, we figure data point /training data, from Neumann [15] to estimate the wind speed estimation using ERBF and we use these data points as input and output data to train ERBF on MATLAB software.

IV. ESTIMATION OF WIND SPEED WITH BP-ANN
AND ERBF In this paper, we determine data points from Neumann [15] in terms inclination angle and wind speed as input and output respectively for the artificial neural network. We determine all data points from Fig.2 with respective payload and without payload. By using the data point from the Neumann [15], we train by using artificial neural networks specifically backpropagation neural network and exact radial base function. the data are used to train the network, and also used to validate the network.

Fig. 2. Inclination angle of UAV [15]
A. Estimation with BP-ANN In this section, wind speed was estimated by using BP-ANN. The training of BP-ANN has three stages: feedforward input pattern, estimate, and backpropagation of the associated error and adjustments of the weights. In backpropagation estimation, we choose a data point with payload and without payload and train on MATLAB software. The data point is used as input and output in training. Because backpropagation networks have excellent nonlinear mapping capabilities, generalization capabilities, and fault tolerance, BP networks has become the most commonly used ANN. We use inclination angle as input data and speed is used as output data on MATLAB training of backpropagation.
As indicated on Fig.3 below, BP-ANN consists of various layers of nodes: an input layer, an intermediate hidden layer, and an output layer. To predict wind speed for the quadcopter in this research, we choose the structure of BP-ANN model shown on Fig.3 that consist of 1-3-1 which means, the input layer has one node, the hidden layer has three nodes, and one output node. The principle of the BP-ANN is to reduce the total output error of the network. Therefore, this is an optimization problem. Advantages of backpropagation artificial neural network are: network implements a mapping function from input to output, automatically extract reasonable solution with correct answers and good selflearning ability.  Fig.4 shown below is the backpropagation output for the wind speed estimation when the heading angle of micro UAV without payload 0 (degree), 45(degree) and with payload 0 (degree), 45 (degree) and 90 (degree) respectively. The estimation result of the wind estimation is obtained when the model of backpropagation has one hidden layer and three neurons. The input for the training of the BP-ANN is an inclination angle as we have seen from the figure and the output is wind speed. As we have seen from the Fig.4, "red cross" is a predicted output and the "blue circle" is an experimental result. The predicted output of the wind speed is approaches to the experimental result of the wind speed estimation of the micro unmanned aerial vehicle and has an error 0.0387 in MSE, where MSE is the mean square error of the errors between the prediction values and the experiment results of all data. We also estimate the wind speed with BP-ANN by other selection of neurons. We choose the structure of BP-ANN model shown on Fig.5 that consist of 1-2-1 which means, the input layer has one node, the hidden layer has two nodes, and one output node. The BP-ANN is to reduce the total output error of the network and that is why we choose different models of the backpropagation with different number of hidden layers. While we are training BP-ANN to estimate the wind speed with different hidden layers the MSE (mean square error) is different.  Fig.6, shown below is the backpropagation output for the wind speed estimation when the heading angle of micro UAV without payload and with a payload. The estimation result of the wind estimation is obtained when the estimation of backpropagation has one hidden layer and two neurons. The input for the training of the BP-ANN is an inclination angle as we have seen from the figure and the output is wind speed. According to the BP-ANN training, the predicted output of the wind speed is approaches to the experimental result of the wind speed estimation of the micro unmanned aerial vehicle. The mean squared error of two neurons is 0.0390 and not better than that of the three neurons.    Fig.8, shown below is the backpropagation output for the wind speed estimation when the heading angle of micro UAV without payload and with a payload. The estimation result of the wind estimation is obtained when the estimation of backpropagation has one hidden layer and five neurons. The input for the training of the BP-ANN is an inclination angle as we have seen from the figure and the output is wind speed. According to the BP-ANN training, the predicted output of the wind speed is approaches to the experimental result of the wind speed estimation of the micro unmanned aerial vehicle. The MSE is 0.0345 and smaller than the prediction with three or two neurons; -but the overfitting occurs in this prediction with five neurons and becomes worse with more neurons. The errors in MSE for each prediction are list in table I. From table I, we can find that the performance of the BP-ANN is best when the number of neurons is 3. B. Estimation with ERBF-ANN Estimation of wind speed with the exact radial base function when the UAV is at radial orientation is without payload and without payload. The input for the training of the exact radial base function is an inclination angle as we have seen from the Fig.9 and the output is wind speed. Fig.9 below it indicates that red color (square) is the predicted output and that of blue color (circle) is the experimental result. The parameter spread is the extension coefficient, which is larger the fitted curve is smoother. However, if spread is too larger, it will cause numerical problems. Accordingly, we choose the spread value 1.0 for the training of the exact radial base function shown below to estimate the wind speed. In this prediction, the error is 0.0273 in MSE, and the overfitting occurs.  Finally, we set the spread value 40 and estimate wind speed with exact radial base function. Accordingly as we have seen from the Fig.11, the fitted curve is smooth in this prediction. The error of this prediction is 0.0394 in MSE. As we increase the spread value, the MSE is also increasing.   Table III shown below is the summary of MSE of BP-ANN for the wind speed estimation with 3 neurons, MSE of the ERBF with spread value 40, and MSE of the Neumann's equation fitted in [15]. From table III, we can find that the performance of the BP-ANN and ERBF are similar, and have a smaller MSE than the fitted formula in [15]. V. CONCLUSIONS In this paper, BP-ANN and ERBF-ANN method are proposed for the wind speed estimation for quadcopter. We compare the wind speed prediction results of backpropagation and exact radial base function. The estimation results of BP-ANN, ERBF is similar, and both ANNs can be used to predict the wind speed of the quadcopter and have better prediction results than the fitted formula in [15].