Intelligent Control for USV Based on Improved Elman Neural Network with TSK Fuzzy

In recent years, based on the rising of global personal safety demand and human resource cost considerations, development of unmanned vehicles to replace manpower requirement to perform high-risk operations is increasing. In order to acquire useful resources under the marine environment, a large boat as an unmanned surface vehicle (USV) was implemented. The USV is equipped with automatic navigation features and a complete substitute artificial manipulation. This USV system for exploring the marine environment has more carrying capacity and that measurement system can also be self-designed through a modular approach in accordancewith the needs for various types of environmental conditions.The investigationwork becomesmore flexible. A catamaran hull is adopted as automatic navigation test with CompactRIO embedded system.Through GPS and direction sensor we not only can know the current location of the boat, but also can calculate the distance with a predetermined position and the angle difference immediately. In this paper, the design of automatic navigation is calculated in accordance with improved Elman neural network (ENN) algorithms. Takagi-Sugeno-Kang (TSK) fuzzy and improved ENN control are applied to adjust required power and steering, which allows the hull to move straight forward to a predetermined target position. The route will be free from outside influence and realize automatic navigation purpose.


Introduction
During WWII, there were reported records of unmanned vessels for reducing the damages of vessels as well as injuries and fatality of human.Using small torpedos or larger-sized unmanned ships for collecting information [1], global positioning system (GPS) brings high efficiency through the use of low-cost, unmanned design.There is no need for the concern of pilot's safety in using unmanned vehicles for marine environmental survey.
Vessels for marine environmental survey are usually equipped with USV system.It allows heavier loading capacity.In addition, the design of vessels can be modularized.There is better flexibility for adjustment according to the needs from various types of environments and investigations.
The effective control range of many USV systems varies from 50 meters to 30 kilometers [2,3], mainly restrained by the wireless transceiver modules.In order to increase the effective working range of USV, a design of unmanned vessels would be necessary.To allow USV systems to be autonavigating and to replace manual operation completely, the autonavigation system is the most needed task for every unmanned carrier.
The Elman neural network (ENN) was first proposed for speech processing.Generally, the ENN can be considered as a special kind of feed-forward neural network with additional memory neurons and local feedback.Because of the context neurons and local recurrent connections between the context layer and the hidden layer, it has certain dynamic advantages over static neural network, such as multilayer perceptrons and radial-basis function networks.It also makes ENN very suitable to be applied in the neurocontrol field.However, the typical ENN cannot approximate high-order dynamic systems closely, and its convergence speed is usually slow and not suitable for time-critical applications.Several kinds of modified ENNs were proposed to overcome such issues to improve the dynamic characteristics and convergence speed of the original ENN [4,5].Compared with BP neural network, ENN has many advantages: faster convergence speed, less training iteration, stronger robustness, no local minimum, and so forth.On the other hand, the method of fuzzy inference proposed by Sugeno and Kang [6], which is known as the Takagi-Sugeno-Kang (TSK) model in fuzzy systems literature, has been one of the major topics in theoretical studies and practical applications of fuzzy modeling and control.The basic idea of this method is to decompose the input space into fuzzy regions and to approximate the system in every region by a simple model.The overall fuzzy model is thus considered as a combination of interconnected subsystems with simpler models.

Research Methods
The designed vehicle's overall system architecture includes a high precision programmable controller-cRIO as main core, a global satellite positioning receiver developing module (GPS receiver module), a direction sensor, a steering servomotor, and power motor, which are all shown in Figure 1.

Unmanned Surface Vehicle.
The main body of USV in this paper is a catamaran-type boat which was designed and built by students and teacher of Department of Naval Architecture and Ocean Engineering, National Kaohsiung Marine University.This catamaran is 5.27 meters long, 1.74 meters wide, and 1.17 meters high, and the electric motor to drive the power can carry 5∼6 passengers.Using a catamaran design as an USV has the following main features: (1) sea wave balance performance is better; (2) low-speed navigation and rotation of the catamaran are better; (3) it has a flat usable space and is easier to allocate required instruments to conduct measurement work.
The designed USV provides more flexible space to install various equipment (e.g., water quality monitoring meter, fish finder machine, anemometer, wind direction sensor module, etc.), to establish marine environmental data collection.A large solar panel installed on top of the hull can strengthen sailing range.

Global Positioning
System.Global positioning system (GPS) is a combination of satellites and wireless communication technology as shown in Figure 2. GPS is a globalization and all-purpose system which has many important features, like all-weather function, being easy to operate, high economic efficiency of navigation positioning, and timing systems.Its advantages include all-weather function free from any interference, global coverage up to 98%, three-dimensional fixed constant speed precision, time-saving, high efficiency, widely used, versatile, and mobile positioning [10].
In this paper, the GPS receiver used (Figure 3) to receive GPS satellite signals is manufactured by ICP DAS Company, model GT-321R.Using RS-232 serial port, protocol setting as 4800 bps baud rate and 8-N-1 format.The four messages to retrieve mainly including longitude, latitude, speed and time, so NMEA information output format (GPRMC) message was chosen as the designed USV position information in the marine environment and sailing speed.

Direction
Sensor.Direction sensor is called the electronic compass (e-compass), the most suitable range for the Earth's magnetic field detection.DC static magnetic field can be detected; it can detect the magnetic field strength and direction.Earth's magnetic field strength of 0.5 to 0.6 gauss can be simplified as shown in Figure 4 of bipolar magnetic field, which is equivalent along centre of the earth.Electronic compass pointing along the local magnetic field determines the direction, the direction of the local magnetic north usually.Because the magnetic north and true north are not the same, so the magnetic north and true north are not usually together.The local magnetic variation is called magnetic declination (declination angle).It is a simple description of the magnetic north and geographic north difference between the angles, expressed as easterly or westerly direction.
Electronic compass which suffered all kinds of interference can be broadly divided into two categories.
(1) Hard Iron Interference.Fixed-intensity magnetic interferences, such as sensor surrounding the original electronic parts, such as speakers, microphones, batteries, panels, and metal shield, will release a fixed magnetic force to influence the electronic compass of reading.Calibration must be done to zero.
(2) Soft Iron Interference.It will change the intensity and direction or can distort the magnetic field lines of interfering substances, such as battery electricity consumption changes in the user's environment; surrounding the original electronic parts of interference depends on precision quasi-level specifications to determine the need for correction [11].
The UM6 ultraminiature orientation sensor measuring orientation in all three dimensions at 500 Hz using a combination of rate gyros, accelerometers, and magnetic sensors was applied to monitor sailing direction as shown in Figure 5.The direction sensor was mounted on designed USV and was along with the direction of the boat as shown in Figure 6.Hence, the Earth's magnetic field and USV sailing direction will be identical.

Controller Core System.
Thinking of sea environment, we must pay more attentions to choose a more reliable computer as the unmanned vehicle controller, and the selected controller's capability must meet the basic requirements for the processing speed and vibrations from outside interference.And it must withstand higher temperature ranges.Due to the fact that the complexity of autopilot operation is very high, and the wave on sea level is greater, the calculation ability and processing speed of central controller must be considered.
National instruments' CompactRIO (cRIO) is quite applicable to the previous requirements.The selected cRIO is a programmable automation controller (programmable automation controller, PAC), a low-cost, reconfigurable control, and acquisition system for the need for efficient performance and reliability applications is designed.The system is done through a small, rugged, industrial-grade hot-swappable input and output (input/output) module, not only cRIO to have industrial-grade architecture, but also can be placed in the factory or under inclement environment ensure that the system the reliability [12].
In this system, due to the need of external input for receiving control commands, (1) RS-232 serial transmission (GPS receivers, direction sensors, and left turn servomotor), (2) DO digital signal output (status display), (3) AO analog output (power output of the motor for control), selected interface card must comply with the previous specifications.Three module adapter cards in this optional module for national Instruments' CompactRIO are, respectively, NI-9870, NI-9403, and NI-9263.Each module card into NI-9074 chassis has been shown in Figure 7.

Steering Mechanism.
In this paper, a small boat which can afford 5∼6 passengers and has outboard rudder with DC motor as power is adopted as USV main body.In order to achieve unmanned automatic navigation function, a mechanical device must be driven on the steering wheel to take control of sailing direction.Therefore, in this paper Mitsubishi  MR-J2S-10A servomotor is used to drive, as shown in Figure 8.A servomotor with high precision position control and baud rate of 9600 bps via an RS-232 serial port by way of torque and speed control is adopted in this design.

Architecture and Research Method
There are three layers in the system architecture, as shown in Figure 9.The first layer is the user's application interface of the console.It is for perception of voyage information or delivery of mission commands.The second layer is the linking layer for interconnection.This is for data transmission between the two ends, via wireless network stations.The third layer is the system layer-the core of this unmanned autonavigation system.It controls the steering and dynamic of the whole body through precise calculation.
Chi-Chin harbor is the site where testing of autonavigation in this experiment was conducted.The test vessel is a double-hull boat, designed by the department of naval architecture and ocean engineering, and is equipped with a brushless outboard motor as the engine of the vessel.The primary sensing instruments used in the test are GPS and orientation sensor, and cRIO-9074 is used for calculation and justification of the automatic navigation system to control the steering and power-output of the outboard motor.GPS of the autonavigation system is installed on top of the vessel, as  shown in Figure 10.The orientation sensors are installed in front of the cockpit, in line with the orientation of the vessel body.

Design of Control Algorithm Based on Improved ENN with TSK Fuzzy
In order to design the automatic navigation control system without sea wave inferences, a lot of efforts are used to design the fuzzy and neural network control.Hence, fuzzy control process proceeds to the amount of control requirement [13,14].Intelligent control of nonlinear systems capable of handling and uncertainty, especially in the comparison of PID and fuzzy control, using the fastest design of neural network control, even in the output control can improve accuracy [15], so in this fuzzy neural network control theory will be used as an automatic navigation system control.
x i x j (2) x r (3) the input layer, the hidden layer, the context layer, and the output layer with two input nodes, nine hidden nodes, and one output node is shown in Figure 11, where the control law is defined as rudder angle, and the two ENN inputs are  (1)   1 and  (1)  2 with  (1) 1 = () and  (1)  2 = () = () − ( − 1), the change of error.For the th sampling instant, the error can be expressed as angular deviation () =  *  () −   ().The proposed ENN [4,5] takes the feedback into account, and better learning efficiency can be obtained.Moreover, to make the neurons sensitive to the history of input data, self-connections of the context nodes and output feedback node are added.So the proposed ENN has the ability to deal with nonlinear problems and can effectively improve the convergence precision and reduce the learning time.The signal propagation and the basic function in each layer are introduced below.
Layer 4: Output Layer.In the output layer, the node input and output are represented as  (4)   () =  (4)   (net (4)   ()) = net (4)   () , where   is the connecting weight of hidden neurons to output neurons and  (4)   () is the output of the improved ENN and also the control law of the proposed controller.

Online Supervised Learning and Training Process.
Once the improved ENN has been initialized, supervised learning is used to train this system based on gradient descent theory.The derivation is the same as that of the backpropagation (BP) algorithm.It is employed to adjust the parameters of the ENN by using the training patterns.By recursive application of the chain rule, the error term for each layer is first calculated.The adaptation of weights to the corresponding layer is then given.The purpose of supervised learning is to minimize the energy function  expressed as [16] where  *  and   represent the angle output reference and actual angle output of the USV, respectively, and   denotes the tracking error.The learning algorithm is described below.
Layer 4: Update Weight   .The error term to be propagated is given by Then the weight   is adjusted by the amount (7) and updated by where  1 is the learning rate.

Advances in Artificial Intelligence
Layer 3: Update Weight   .By using the chain rule, the update law of   is The connecting weight   is updated according to where  2 is the learning rate.
Layer 2: Update Weight   .By using the chain rule, the update law of   is

Takagi
For  = 1, 2, . . ., , where  is the number of rules,    is the fuzzy set of the th rule for   with the adjustable parameter set    , and   = (  0 ,   1 , . . .,    ) is the parameter set in the consequent part.The predicted output of the fuzzy model is inferred as [16] where ℎ  is the output of the th rule;   = min =,+1,...,    (   ;   ) is the th rule's firing strength, which is obtained as the minimum of the fuzzy membership degrees of all fuzzy variables.There are many choices for the types of membership functions, such as triangular, trapezoidal, or Gaussian.In this paper, a Gaussian membership function is employed for two reasons.Firstly, a fuzzy system with Gaussian membership function has been shown to approximate any nonlinear functions on a compact set.Secondly, a multidimensional Gaussian membership function generated during the learning process can be easily decomposed into the product of 1D Gaussian membership functions.Choosing Gaussian membership function, in (16), the parameters of the premise parts (i.e.,    ) include   and   , which are the center (or mean) and the width (or variance) of the Gaussian membership function of the th rule at th dimension, respectively.Both the premise parts (i.e.,    ) and the consequent parts (i.e.,   ) in a TSK fuzzy model are required to be identified [17,18].
The considered problem is to obtain correct distribution of fuzzy rules and its corresponding polynomial from a set of observations.The input-output pairs are {( 1 ,  1 ), ( 2 ,  2 ), . . ., (  ,   )}, where   = / is normalization of th subcarrier channel number;   = real( H ()) is the real part (or imaginary part) of the corresponding channel transfer function.We assume that those observations are obtained from an unknown function   = (  ).We want to construct a TSK model that can accurately represent  in terms of input-output relationship.In order to simplify the algorithm and loose the compute burden, we fix the number of rules as  = /2 and the parameters of each rule as where   and   are the center and width of the membership function, respectively.The fire strength of each input represents the degree   belonging to the corresponding rule.Since the input is one dimension, the fire strength can be calculated by Since the normalized firing strength is employed, the   in ( 14) can be defined as Furthermore, the parameters of each rule are fixed; the only adjustable parameter of TSK model is   in (13).The parameter is updated by the following rule: where () is input vector [1,   ],  is the learning rate, and ŷ is the current output of fuzzy model calculated using (14).Finally, the procedure of the used TSK learning algorithm is described as follows.
Step 1. Define the fuzzy rule in ( 15) and ( 16); the initial value of   is set to be [1,1].
Step 2. The first snapshot of all-pilot subcarriers is used to train the in   (13) to (19).When the error is small enough, then go to Step 3.
Step 3. Estimate the channel transfer function using (13) to (18).When the input is at pilot symbol channel,   is updated to trace the variation of channel.A block diagram of the TSK fuzzy controller is presented in Figure 12.The power control with a processing flowchart is shown in Figure 13.

Test of the Unmanned Automatic System
For obtaining the basic dynamic data of the boat, it is necessary to test the boat in driving along a straight line and in turning directions.Before the design of an unmanned autonavigation, it is required to figure out the dynamic power for controlling the speed of the boat as well as the steering characteristics and adequate turning speeds.After collection of required data, design and programming of improved ENN with TSK fuzzy control can then be preceded.The cRIO-9074 and computer are installed on the boat to record boat's relevant data.The speed data of the boat is obtained via GPS, and computer is used to control the power output.

Straight Movement.
Data about the dynamic of linear acceleration is collected during the test.As illustrated in Figure 14, it is revealed that the boat's main speed range is mainly 1.8∼2.5 NM/h.Due to the design of double-hulled frame and a weight of 1.3 tons, the maximum speed is no more than 3 NM/h.Moreover, even at low startup speed, initiated with 30% maneuver power, it took a bit longer time to achieve working speed.
From Table 1, it is clear that by controlling the power in the range of 50∼85%, vessel per hour sailing is around 1.8∼ 2.4 NM/h, which is more stable in movement.

Turning Radius.
When testing turning movement, the main method is to test speeds in segmentation to obtain the radius for turning the boat for 360 ∘ .From our result, it is obvious that at 40% of power output, the turning of the boat is almost spinning on the spot.It reveals the better stability with the design of the double-hulled frame.Nonetheless, the  power output should be greater than 40% relatively effective performance if there is the need for moving forward while turning.

Experimental Results
The automatic navigation design is shown in the diagram of Figure 12; the module of improved ENN control is needed for modification of orientation if the boat is deviating from its navigated direction.In addition, for the control of power output, data about angular deviation, current speed, and previous power are required for maintaining the boat at working speed through TSK fuzzy control.The USV automatic navigation test begins with inputs of destined navigating points, as illustrated in Figure 15, and then the information is transmitted to the cRIO-9074 system   on the boat.When the server presses the "automatic navigation" button, the boat begins a voyage along the destined navigating points.Data transmitted back from cRIO-9074 includes power outputs, speeds, and tracks of the boat for realization of the navigation conditions.It is obviously illustrated in Figure 16 that USV follows the destined route successfully in navigation.
Figure 17 shows the navigation data of this test trip.It reveals clearly that the boat successfully followed the design of TSK fuzzy control, to maintain the speed of moving straight forward at around 2.2 NM/h and speeds of turning at around 1.8∼2 NM/h.When turning, it is demonstrated in Figure 18 that the boat declination has followed the target declination.It is also clearly illustrated that when the boat was ordered to turn at 90 seconds, it did adjust the orientation effectively to keep on the navigated direction.The performance of proposed control method is summarized in Table 2.

Conclusion
This study uses a platform developed by the department of naval architecture for the autonavigation system, using GPS, orientation sensors, and cRIO-9074, as well as combining LabView and intelligent control algorithm, to reduce the cost of sensors and time of system development effectively.For the autonavigation system, there are two sets of intelligent control algorithm, designed for power output and steering of this electric double-hulled boat, to control the boat stably to travel along the navigation route.
As the wave heights in Chi-Chin harbor vary dramatically, the test results show that the double-hulled boat has pretty good stability and keeps steering control.The task of autonavigation could be easily and nicely performed.

Figure 6 :
Figure 6: Installation diagram of direction sensor.

Figure 9 :
Figure 9: Architecture of the unmanned automatic system.

Figure 10 :
Figure 10: Illustration of layout of equipment.

Figure 11 :
Figure 11: Architecture of the improved ENN.
deviation, current speed, and previous power output" signal Reach final point TSK fuzzy of power output

Figure 15 :
Figure 15: Command panel of PC sever.

Figure 17 :Figure 18 :
Figure 17: Navigation data of power and speed.

Table 1 :
Test of linear acceleration.

Table 2 :
Performance of proposed control method.