Inte rnatio nal Jo urnal o f Sc ie ntific & Eng inee ring Re se arc h Vo lume 2, Issue 10, Oc tobe r-2011 1

ISSN 2229-5518

Optimized Fuzzy Logic Training of Neural

Networks for Autonomous Robotics Applications

Ammar A. Alzaydi, Kartik Vamaraju, Prasenjit Mukherjee, Jeffrey Gorchynski

Abs tract— Many diff erent neural netw ork and f uzzy logic related solutions have been proposed f or the problem of autonomous vehicle navigation in an unknow n environment. One central problem impacting the success of neural netw ork based solutions is the prob lem of properly training neural netw orks. In this paper, an autonomous vehicle controlled by a f eed-f orw ard neural netw ork is trained in real time using a f uzzy logic based trainer and the standard back-propagation learning algorithm. The experimental results presented demonstrate the f easibility of real time training using a constrained hardw are platf orm. They also show the impact of racetrack complexity on the training process as w ell as the impact of the neural netw ork size on the learning speed and error convergence during the training proc ess. The results are then used to develop an optimization procedure that is used to determine the optimal neural netw ork size f or the given problem domain and experimental platf orm.

Inde x Terms— Autonomous, Autonomous navigation, Autonomous robotics, Fuzzy logic, Navigation, Neural netw ork, Real-time train ing

—————————— ——————————

1 INTRODUCTION

esigning an autonomous vehicle for navigation in an un- known envir onment is a challenging pr oblem that en- compasses many complex tasks such as obstacle avoid-
ance and path planning. The complex dynamics of vehicle
contr ol and the unknown natur e of the envir onment being
navigated limit the feasibility of many theor etical methods for autonomous vehicle navigation. Many intelligent methods have been developed involving fuzzy logic and neur al net- wor ks to solve pr oblems r elated to autonomous navigation. Fuzzy logic based systems, such as [1], [2], utilize a semantic r ule base consisting of IF {antecedent} THEN {consequent} r ules that govern the actions of the vehicle based on fuzzified sensory data. These systems do not necessar ily r equir e a d- vanced modelling of vehicle dynamics yet can pr ovide control that is mor e toler ant to sensory err or. Fuzzy logic based sys- tems suffer fr om the inability to adapt to unfor eseen scenar ios due to the static natur e of their fuzzy rule base. Alternatively, neural networ k based methods overcome this barrier thr ough the use of lear ning algor ithms. Fuzzy-neural networ ks mer ge the advantages of both fuzzy logic and neur al networ ks t o- gether to cr eate a potentially super ior implementation [3], [4]. But while fuzzy-neural networ ks appear to r epr esent an ideal solution to the pr oblem of autonomous navigation in an un- known envir onment, ther e r emain to be significant pra ctical barr iers pr eventing widespr ead adoption.
All methods that involve neural networ ks suffer fr om the
pr oblem of gener ating r elevant, useful tr aining data and im- plementing viable learning algor ithms for r eal-time usage. Many differ ent learning algor ithms have been used to train neural netw or ks [5], [6], [7]. These methods how ever have l i- mited viability in training scenar ios in which the vehicle must learn fast to r espond to unknown obstacles using a limited supply of online training data. Regar dless of the exact tra ining

———— ——— ——— ——— ———

Ammar A. Alzaydi: B.Sc., M.A.Sc., Ph.D. Student, Mechanical and Me- chatronics Engineering. University of Waterloo, Waterloo, On., Canada. E-mail: aalzaydi@engmail.uwaterloo.ca

algor ithm used, ther e is still the pr oblem of constr ucting a via- ble set of training data. It is highly difficult and i mpr actical for an expert to generate the potentially thousands of input- output data vectors necessary to train the neur al networ k, and while methods exist for ensuring useful training data [8], [9], these methods ar e difficult to apply to an arbitrary scenar io.
One solution to the pr oblem of pr oviding viable training
data is to cr eate a fuzzy logic trainer that supplies the neces-
sary data to tr ain the neural networ k that is driving the vehicle [10]. In this scenar io, a vehicle is contr olled by a neur al net- wor k w ith r andomized weights and is placed w ithin a rac e- track. As the vehicle navigates the racetr ack the fuzzy logic trainer gener ates data that is used to train the neur al networ k using the standar d back-propagation learning algorithm. The neural networ k is tr ained in r eal time as it navigates thr ough a racetr ack. Since the ideal output used to train the neural net- wor k is pr ovided entir ely by the fuzzy logic tr ainer , the pat- ter n r ecognition behav iour of the neural networ k r esults in the neural netw or k appr oximating the fuzzy logic trainer per for- mance. The mathematical err or betw een fuzzy logic trainer and the neural netw or k r esults in differ ences in the naviga- tional per formance that lead to competitive, if not superior navigational per formance by the neur al networ k. The level of noise in the training data also tends to r educe the pr obability of the back-propagation algor ithm conver ging to local min i- ma. The pr oblem of gener ating an optimal tr aining data set is ther efor e equivalent to cr eating a viable r acetr ack. The success of training a neural networ k in this scenar io is dir ectly compa- rable to training a neural netw or k in any type of envir onment in which the neur al networ k must learn fast with a limited amount of tr aining data.
In this paper , this training pr ocess is investigated exper i-
mentally by implementing a fuzzy logic tr ainer on a r obot v e- hicle contr olled by an untr ained neur al networ k. A feed- forward neural networ k w ith a single hidden layer i s used to contr ol the steering angle and speed of the vehicle. The goal of this paper is to exper imentally determine the feasibility of r eal-time training of a neural networ k for autonomous naviga-

IJSER © 2011

http :// www.ijser.org

Inte rnatio nal Jo urnal o f Sc ie ntific & Eng inee ring Re se arc h Vo lume 2, Issue 10, Oc tobe r-2011 2

ISSN 2229-5518

tion, as well as to determine the optimal number of neurons for the hidden layer for the given exper imental design. The pr ocess used to select the optimal number of neur ons is mot i- vated pr imar ily by experimental r esults as opposed to other theor etically based m ethods. This pr ocess is not specific to autonomous navigation and can be applied to other applica- tions as well. In addition, r esults ar e pr esented demonstrating the effect of additional neur ons in the hidden layer with r e- spect to both tr aining efficiency and overall dr iving speed. The successful implementation of r eal time training using this ex- perimental platform should scale easily as the complexity of implemented systems incr ease, and ther efor e the experimental r esults should be dir ectly applicable to r eal time training sc e- narios involving differ ent neur al n etwor k topologies and hardwar e implementations.

2 EXPERIM ENTAL PLATFORM

A r obot vehicle was built to navigate indoor r acetr acks. A single Hokuyo URG-04LX laser r ange-finder (Lidar ) was used to supply sensory data to two Atmega1280 based micr ocon- tr ollers. These micr ocontr oller s communicated to a single steering servo motor and to a Sabr etooth 2x10 motor contr oller to move the vehicle. The fuzzy logic and neural networ k i m- plementations w er e designed for r eal time autonomous nav i- gation even when constr ained by the significant computation- al limitations imposed by the 8-bit micr ocontr ollers.
The fuzzy logic trainer and neural netw or ks w er e impl e-
mented on the two micr ocontr ollers. One micr ocontr oller was
used as an inter face to the sensor , and used the fuzzy logic trainer and neural networ ks to generate contr ol packets for steering angle and speed. The contr ol packets fr om the first microcontr oller w er e sent to the second micr ocontr oller, which acted as an inter face to the steer ing servo motor and the speed motor. The purpose of using two differ ent m icr ocontr ollers was to allow for easy expansion with additional sensors, since ther e would be a gr eater availability of pr ocessing pow er and input/output por ts. The fuzzy logic tr ainer and neural net- wor ks wer e implement ed on the same micr ocontr oller mainly for simplicity in data transmission; ther e was a minimal per- formance differ ence if the neural netw or k was shifted to the
second micr ocontr oller.

3 FUZZY LOGIC TRAINER

The navigational logic for the fuzzy logic tr ainer was loosely based on the potential fields based method of naviga- tion. The potential fields’ method assumed that both the v e- hicle and all nearby obstacles possess an electr ostatic char ge. The negative gr adient of the r esulting electr ostatic field r epr esents the dir ection that the vehicle should travel. Similar- ly, the fuzzy logic trainer derived forces that w er e used to cha- racter ize the environment. A set of four for ces wer e used as the input to the fuzzy logic speed calculation and a single net for ce was then calculated to be used as the input to the fuzzy logic steer ing angle calculation. The only input to the fuzzy logic trainer was the sensory data pr ovided fr om the Lidar , which r esulted in a contr ol str ategy that w as suitable for train- ing a neur al networ k. The kinematics of the vehicle being used was taken into account partially thr ough the design of the fuzzy logic membership functions and fuzzy r ule base. The fuzzy logic navigational per formance could have been im- pr oved thr ough the use of additional sensor s and inputs to the fuzzy logic trainer or with the use of additional filter ing. How ever , this would have r equir ed significant amounts of pr ocessing pow er and incr eased the complexity of the impl e- mentation w ithout necessar ily impr oving the training pr ocess of the neural networ k.
First, the sensory data provided by th e Lidar was
pr ocessed. The Lidar pr ovided a set of 256 data points r epr esenting the distance at which an obstacle was detected over its 180° field of view at about 0.70° angular intervals. This set of data points was then filter ed to r emove data that was consider ed out of r ange. A minimum r ange of about 10 cm was selected to ensur e that excessively low measur ements wer e ignor ed and a maximum range of about 70 cm was s e- lected to ensur e that the vehicle was not r eacting to obstacles that w er e too far away.
The filter ed set of data points was then converted into a set of four forces that r epr esent the pr oximity of an obstacle within each of the 45° quadrants (Left-Extr eme, Left, Right and Right-Extr eme). This was done by taking the sum of the r ecipr ocal of each filter ed data point that falls w ithin the r e- spective quadrant, using the equation:

1

The main per formance issue w ith the exper imental platform was r eaction time. The Lidar used pr ovided data at a max i-

Force where d iis a data point

i i

(1)
mum rate of 10 Hz, but the overall r eaction time of the vehicle taking into account computation time was about 5-7 Hz. In or der for r eal time navigation to be r ealistic, the vehicle must have been able to detect and r espond to obstacles at a fast rate r elative to its speed. The navigation speed used during the subsequent exper iments was ther efor e minimized so as to en- sur e that the vehicle could appr opr iately detect and r espond to obstacles. A quicker r eaction time w ould have allow ed for a faster aver age speed as w ell as a faster speed dur ing the neur- al networ k tr aining pr ocess.
The r esulting four for ce values w er e then multiplied by an
exper imentally chosen constant that r epr esented the r equir ed
sensitivity of the Lidar to its surr oundings . The for ce values
wer e scaled to be within 0 to 255. A value of 0 indicated that ther e w er e no obstacles within range in the r espective qua- drant, wher eas a value of 255 indicated the pr esence of an ob- stacle that had an aver age position that was close to t he ve- hicle. This scaling simplified the design of later components such as the fuzzy logic member ship functions. These four for ces values wer e used as the input to the fuzzy speed calc u- lations, and wer e further pr ocessed to pr oduce a single for ce that was used as the input to the fuzzy steering angle calcula- tion.
The four for ces (LE, L, R, and RE) w er e used as the inputs
to both the neural netw or k and the fuzzy logic speed calcula-

IJSER © 2011

http :// www.ijser.org

Inte rnatio nal Jo urnal o f Sc ie ntific & Eng inee ring Re se arc h Vo lume 2, Issue 10, Oc tobe r-2011 3

ISSN 2229-5518


tion. In or der to per form the fuzzy logic steering angle calcula- tion however , the four input forces wer e used to cr eate a single for ce that r epr esented the dir ection of the most significant ob- stacle. This was done by taking the differ ence of Left -Side (LS) and Right-Side (RS) for ces. The LS for ce was gener ated using the logic:

LS Force

LE L if LE and L

2

(2)

max LE, L

if LE or L

Wher e α was a minimum thr eshold value. The RS for ce was generated using the same logic, but using RE and R for ces instead of LE and L r espectively. The r esult of the differ ence of LS and RS forces was a net for ce that r epr esented the net pr es- ence of obstacles. A str ong positive force indicated that the obstacle was mor e pr evalently on the left, and a str ong nega- tive for ce indicated that the obstacle was mor e pr evalently on the r ight. The magnitude of the net force w as a function of both the pr oximity of the obstacle as w ell as w hether the ob- stacle was clear ly on one side of the vehicle r ather than dir ect- ly in fr ont. This was due to the averaging of data points to pr oduce the under lying for ces and due to the usage of a single differ ential force r ather than multiple individual forces.
The var ious membership functions that w er e used for the sub- sequent fuzzy logic calculations w er e all exponential curves. Exponential curves tended to better match the nonlinear dy- namics of the input forces than the mor e commonly used tr i- angular membership curves. For defuzzification, the centr oid method was used, since this method encompassed the entir e decision space mor e completely than a lternative methods such as the mean of maximum method. The centr oid method how- ever was a significant computational bur den for the exper i- mental platform, and so the pr ecision of the method was m i- nimized so as to maximize speed while minimizing numer ical err or. This was done by using few er points to r epr esent the functions that w er e b eing used in the sums.

3.1 Fuzzy Steering Angle Controller

The fuzzy r ule base for the steer ing angle is descr ibed as:
1) If (for ce) is NEGATIVE, go LEFT
2) If (for ce) is ZERO, go STRAIGHT
3) If (for ce) is POSITIVE, go RIGHT
Wher e NEGATIVE, ZERO and POSTIVE w er e fuzzy va- r iab les in the input space, as shown in Fig. 1, and LEFT, STRAIGHT and RIGHT w er e fuzzy var iables in the output space, as shown in Fig. 2. The number of r equir ed rules was minimized by using a single net for ce as the input r ather than the four for ces generated pr ior. Using the four forces to design the fuzzy r ule base did not r esult in any noticeable per for- mance impr ovements.

Fig. 1. Steering Angle Input Me mbership Functions

Fig. 2. Steering Angle Output Me mbership Functions

3.2 Fuzzy Speed Controller

The fuzzy r ule base for the speed contr oller consisted of:
1) If (L E) AN D (L) AND (R E) AN D (R) ar e LOW , go
FAST
2) If (LE) AND (R E) ar e HIGH AND If (L) AND (R)
ar e LOW , go MEDIUM
3) If (LE) AND (L) AND (RE) AND (R) ar e HIGH, go SLOW
Wher e LOW and HIGH w er e fuzzy var iables in the input space, as shown in Fig. 3, and FAST, MEDIUM and SLOW wer e fuzzy variables in the output space, as shown in Fig. 4. The minimum operator was used as the fuzzy AND oper ator. The general logic was to move slow er when mor e obstacles ar e pr esent in order to allow the vehicle the opportunity to r eact

IJSER © 2011

http :// www.ijser.org

Inte rnatio nal Jo urnal o f Sc ie ntific & Eng inee ring Re se arc h Vo lume 2, Issue 10, Oc tobe r-2011 4

ISSN 2229-5518


accordingly; that is to move mor e slowly during a shar per turn or in the pr esence of mor e obstacles. The vehicle operated within a minimum and maximum speed and the fuzzy speed calculation was used to specify a speed within this range. The design of the fuzzy logic tr ainer was such that the vehicle could navigate r acetracks with smooth curves and simple ob- stacles. The fuzzy r ule base was ther efor e designed accor din g- ly.
The kinematics of the vehicle and the curr ent vehicle v e- locity w er e being ignor ed when the speed was calculated. Ig- nor ing these var iables r esulted in a significant simplification that had minimal negative impact on the vehicle per for mance. The maximum allowable speed was also r educed to compen- sate for the slow r eaction time of the vehicle. The minimum allowable speed was incr eased to ensur e that the v ehicle could r eliably over come the friction of the dr iving sur face as well as to ensur e that speed could be maintained w hile tur ning. These speed constr aints caused the over all var iation in speed to be low, allowing simplified or suboptimal speed calculations to have a r elatively minimal impact on the vehicle per for mance. Together , these r estr ictions allowed for effective per formance in the exper imental racetracks even with a minimal set of fuzzy rules.

4 NEURAL N ETOWRK

Artificial neural netw or ks ar e a type of non-linear statis- tical model that ar e used to model patter ns b etween inputs and outputs. Thr ough the use of learning algor ithms, neural networ ks possess the ability to lear n patterns fr om a unique set of input and output data points. Neural networ ks ar e typ i- cally r epr esented as a set of neur ons connected t ogether using with a set of w eights. Each neur on gener ates an output b e- tw een 0 and 1 based on its activation function. Each input to a neur on is multiplied by an associated w eight, and this vector of input-w eight pairs is used by the activation function to gen- erate the neur on output. Learning is achieved thr ough the sys- tematic modification of the w eights of the neur al networ k. A simple two-layer feed-forward neur al networ k is used to con- tr ol the autonomous vehicle in this case, as shown in Fig. 5. This is among the simplest neur al networ k topology that is suitable for autonomous navigation.
A feed-forward neural networ k was implemented to con-
tr ol the vehicle. The networ k r eceived the four force values
(LE, L, R and RE) as its input and produced the steer ing angle and speed values as its output. The neur al networ k consisted of an output layer of two neur ons and a hidden layer of 1-10 neur ons. Only a single hidden layer was used since the pr es- ence of additional hidden layers was not necessary for success- fully modeling the fuzzy logic trainer with an arbitrary level of pr ecision [11-12]. The sigmoid function was used for the act i- vation of each neur on and the sum of the pr oduct of the weights and inputs to each neuron was used to deter mine the activation state of the neur on. The back-pr opagation algorithm was used to tr ain the neural networ k with no additional mod- ifications such as a momentum ter m. The optimal global learn- ing rate for the neural networ ks was determined in simulation to be w ithin the 0.5-1.5 r ange, and so a global learning rate of 1

Fig. 3. Speed Input Membership Functions

Fig. 4. Speed Output Me mbership Functions

Fig. 5. Sa mple Feedf orw ard Neural Netw ork f or Vehicle

IJSER © 2011

http :// www.ijser.org

Inte rnatio nal Jo urnal o f Sc ie ntific & Eng inee ring Re se arc h Vo lume 2, Issue 10, Oc tobe r-2011 5

ISSN 2229-5518

was used for all tested neural networ ks. The process flow for the fuzzy logic trainer and neural networ k was:
1. The set of 4 for ce values w er e sent to both the fuzzy logic trainer and to the neural networ k as input. The for ce values w er e normalized to impr ove the efficiency of the neural networ k learning pr ocess.
2. The fuzzy logic trainer calculated the ideal steer ing angle and speed based on the input. This output was used to tr ain the neural networ k.
3. The forwar d pr opagation algor ithm was used to determine the steer ing angle and speed calculated fr om the neur al netw or k.
4. The outputs fr om both the neur al networ k and the fuzzy logic trainer w er e used as inputs to the err or back-pr opagation algorithm. The w eights of the neural networ k w er e modified to minimize the calculated err or :

e e e

for a single input data vector outw eighed the r esulting comp u- tational penalties. While this was not the ideal method of training the neural networ k, this method impr oved the feas i- bility of r eal time tr aining when insufficient tr aining data was available.
The output fr om the fuzzy logic trainer was scaled to be within a range of 0.2 to 0.8. This was done to compensate for the lack of bias terms w ithin the neur al networ k and was ver i- fied in simulation to impr ove the over all training efficiency of the neural networ k. An output of 0.2 corr esponded to a max i- mum turn left at minimum speed and an output of 0.8 corr es- ponded to a maximum turn r ight at maximum speed. The training process for the neur al netw or k was designed to train the neur al netw or k in a manner that would ensur e that the initial neural networ k output w ould be as accur ate as possible.

5 EXPERIM ENTAL R ESULTS AND ANALYSIS

Before experiments were performed using the racetracks, a simulation was performed to determine the number of epochs that the neural network would require to converge to a minimum level of error and to determine the rough error rates experienced during the learning process. An epoch was equiv- alent to one lap around the racetrack. The simulation consisted

steering fuzzy steering neural network

espeed efuzzy speed eneural network

(3)
of a set of 10 neural networks, each with a different number of
neurons in its hidden layer, being trained using a set of 256
unique training vectors. The input training vectors that were
5. Steps 3-4 w er e r epeated twice, r esulting in a total of 3 iterations of the back-pr opagation algor ithm for a given set of input force values. The number of iterations was selected to be the smallest number that would allow for feasible exper imental per for mance. Additional iterations w ould r equir e mor e pr ocessing pow er w ithout necessar ily impr oving the over all training pr ocess dur ing exper iments or simulation.
6. The final corr ected output fr om the neur al networ k was then used to contr ol the vehicle. This was done to ensur e that the training of the neural networ k w ould be r elative to the per formance of the neur al networ k itself rather than be dependent on the fuzzy logic navigation. The contr ol action of the neural networ k effectively generated a feedback loop in which the fuzzy logic tr ainer w ould train the neural networ k based on the surr oundings of vehicle as w ell as the differ ence betw een the neural networ k and fuzzy trainer outputs. The training behaviour could easily be verified dur ing experiment, since the navigational behaviour changed in r eal time.
Sensory data was not pr ovided fast enough to pr oper ly train the neural networ k in r eal time. By r epeating Steps 3-4 multiple times, the output pr oduced fr om the neural networ k was significantly mor e accur ate than if Steps 3-4 had only been r un once. The training speed impr ovements that r esulted fr om using multiple iterations of the back-pr opagation algorithm
used were equally distributed over the entire range of possible inputs (since each of the input forces was bounded from 0 to
255). Mean squared error was measured using the fuzzy logic output and the neural network output over each epoch. Both the training process and the error metric were the same in s i- mulation and in experiments, ensuring that simulation results could effectively be used to generate viable hypotheses for subsequent experiments.
The simulation demonstrated that the neural networks would converge to a minimum error within 10 epochs, as shown in Fig. 6. In addition, the larger neural networks a p- peared to have lower initial error and to converge to a lower error after training. However, while the larger neural n et- works appeared to more accurately model the fuzzy logic trainer, the rate of convergence appeared to be faster with less neurons in the hidden layer of the neural networks. The later experiments were designed using the assumption that a ma x- imum of 10 epochs would be necessary to train each neural network.
Two separate racetracks were then designed to test the
learning capability of various neural networks. A simple rac e- track, as shown in Fig. 7, was developed to prove that the neural network can successfully be trained in real time. The second, more challenging racetrack, as shown in Fig. 8, was developed to demonstrate the repeatability of the experimen- tal results in a different scenario. Each racetrack generated about 200-300 unique training vectors during each epoch, which was directly comparable to the number of training vec- tors used during simulation.

IJSER © 2011

http :// www.ijser.org

Inte rnatio nal Jo urnal o f Sc ie ntific & Eng inee ring Re se arc h Vo lume 2, Issue 10, Oc tobe r-2011 6

ISSN 2229-5518

475 cm

Fig. 6. Error in Steering Angle During Simu lation

450 cm

Fig. 8. Race Track #2

The experimental results demonstrated that the neural networks could successfully learn to navigate the racetrack when trained using a fuzzy logic trainer, as shown in Fig. 9. All the neural networks appeared to converge to roughly equivalent levels of minimum error and the rates of conver- gence were directly comparable to what was demonstrated during simulation.

Fig. 7. Race Track #1

5.1 Experiment #1

The vehicle was placed in Racetrack #1 and navigated 10 epochs while being controlled by an untrained neural net- work. Neural networks containing 2, 4, 6, 8 and 10 neurons respectively in their hidden layers were tested. The goal of this experiment was to determine if a neural network could su c- cessfully be trained while attempting to navigate a racetrack. It was also intended to determine if the observations made du r- ing simulation were valid experimentally.

Fig. 9. Error in Steering Angle Over 10 Epochs

IJSER © 2011

http :// www.ijser.org

Inte rnatio nal Jo urnal o f Sc ie ntific & Eng inee ring Re se arc h Vo lume 2, Issue 10, Oc tobe r-2011 7

ISSN 2229-5518

All the tested neural networks appeared to be fully trained in about 5 epochs. Using this result, the experiment was then repeated, but after 5 epochs the vehicle was allowed to navigate the racetrack while being controlled exclusively by the now trained neural network. This was done in order to determine the performance of the trained neural network without interaction with the fuzzy logic trainer.

The experimental r esults ver ified that the neural networ k was successfully able to learn to navigate the racetrack after 5 epochs of training. The err or rates of the tested neural net- wor ks after training w er e all r elatively similar r egar dless of the size after the neur al networ ks wer e tr ained, as shown in Fig. 10. When the tr aj ectory of the vehicle while being con- tr olled by a neural netw or k with 6 neur ons in its hidden layer was r ecorded, ther e was not a significant differ ence b etw een the fuzzy logic trainer and neur al networ k traj ector ies, as shown in Fig. 11. The neural networ k a fter training appear ed to have a smoother traj ect ory that was mor e consistently in the centr e of the racetr ack than the less consistent tr aj ector y befor e training. The per formance of the neural networ ks was dir ectly comparable to the per formance using only the fuzzy logic trainer.

Fig. 10. Error in Steering Angle Over 5 Epochs


Fig. 12. Error in Steering Angle During Experiment #2

Fig. 11. Approximate Trajectory of Vehicle During Experiment #2

Fig. 13. Error in Speed During Experiment #2

IJSER © 2011

http :// www.ijser.org

Inte rnatio nal Jo urnal o f Sc ie ntific & Eng inee ring Re se arc h Vo lume 2, Issue 10, Oc tobe r-2011 8

ISSN 2229-5518

TERMINATE

No optimal size

exists No

Did the error change?

Yes

Repeat experiment

Add a neuron

TERMINATE

No optimal size exists

No

Use the neural network

Yes

Is the neural network fast enough?

Is the final

No error too high?

Yes

Yes

Did the error change?

No

No optimal size exists

Is the initial

No error too high?

Yes

Add a neuron

Repeat experiment

TERMINATE

Perform experiment

Select initial feasible neural network size

START

Fig. 14. Neural Netw ork Size Selection Process Flow

5.2 Experiment #2

In or der to select an optimal neur al networ k size, it was necessary to determine the impact of racetrack complexity on the over all lear ning capability of the neur al networ ks. The v e- hicle w as placed in Racetrack #2 and navigated 10 epochs while being contr olled by an untrained neur al networ k. After the neural netw or k had completed the 10 training epochs, an additional epoch was per formed in which the trained neural networ k navigated the r acetr ack without int er action with the fuzzy logic contr oller. By compar ing the observed r esults against the pr evious experimental r esults, mor e gener alized conclusions could then be made neural netw or k sizing.
The experimental r esults demonstr ated that the general training behaviour was not significantly impacted by rac etrack complexity, as shown in Fig. 12 and Fig. 13. As mor e neurons wer e added to the hidden layer , the err or during the initial epoch r educed. The additional neur ons also incr eased the number of epochs r equir ed for the neural networ k to conver ge to its minimum error. How ever, all the tested neural netw or ks had similar per formance after training, and so incr easing the size of the neural netw or k did not appear to have a significant benefit as far as minimizing the err or.
In this case, the steer ing angle err or conver ged w ithin
about 5 epoch cycles wher eas the speed err or conver ged with-
in the initial epoch cycle to a mor e accur ate value. This was due to the design of the fuzzy speed r ules and the experimen- tal racetracks. As a r esult, the back-pr opagation algor ithm m i- nimized the global err or of both the speed and steer ing angle outputs and so caused fluctuations in the speed err or w hile minimizing the steer ing angle err or. Using separate neural networ ks for each output would have r emoved a significant amount of the fluctuations in the err or of the outputs.
The vehicle speed dur ing the tr aining pr ocess was about half of the vehicle speed using only the fuzzy logic tr ainer. After training, the vehicle speed of the vehicle using the neural networ k was roughly equivalent to the vehicle speed using the fuzzy logic trainer. The neural networ k implementation was computationally mor e efficient than the fuzzy logic trainer , r esulting in a slightly gr eater r eaction time with the neural networ k that would have allowed for incr eases in the average vehicle speed.

6 SELECTION OF OP TIM AL N EURAL N ETWORK SIZE

Ther e ar e several cr iter ia that impact the selection of the optimal number of neur ons in the hidden layer of the neural networ k:
1. The hidden layer must be lar ge enough to approximate the fuzzy logic trainer w ith sufficient accur acy. This cr iterion was demonstrated thr ough exper imental r esults to not be a significant factor as a wide r ange of tested hidden layer sizes conver ged to r oughly the same level of err or .
2. The computational burden of the neural networ k must not minimize its practicality dur ing training or autonomous dr iving. All the tested neural networ k sizes met this cr iter ion.
3. The initial err or during the training pr ocess must be low enough to allow the neur al networ k to navigate the unknown r acetr ack. W hile all tested neural networ ks met this criter ion, the pr obability of a

IJSER © 2011

http :// www.ijser.org

Inte rnatio nal Jo urnal o f Sc ie ntific & Eng inee ring Re se arc h Vo lume 2, Issue 10, Oc tobe r-2011 9

ISSN 2229-5518

successful test r un incr eased as the hidden layer size incr eased. The neur al netw or ks w ith less hidden layer neur ons w er e generally unr eliable dur ing the initial test r un.
4. The neural netw or k must r equir e a minimal number of epochs to successfully ‘lear n’ the given racetrack. This r equir ement maximized the pr acticality of the neural networ k, since the tr aining pr ocess was such that it w as impractical to complete the hundr eds of epochs that ar e possible during simulation. The exper imental r esults effectively r equir e the neural networ k size to be minimized for this criterion to be met.
Based on these criter ia, a selection pr ocess was designed to determine a neural netw or k size that is w ithin an optimal range, as shown in Fig. 14 . It was assumed that a neural net- wor k w ould be trained in r eal time over a limited number of epochs in an experimental envir onment. An initial neur al net- wor k size was assumed to exist and be chosen such that it was as small as possible w hile still being lar ge enough to be able to solve the given pr oblem. Adding an additional neur on was assumed to r educe the initial and final err or of the neur al net- wor k, similarly to the tested neural networ ks. If a neural net- wor k existed that simultaneously met all of the cr iter ia, then the pr ocess w ould terminate with an optimal size. If ther e w as no solution that satisfied all the criteria, then the process would ter minate because no optimal solution was found. This indicated that either the learning pr ocess must be modified, that the err or constr aints w er e too stringent, or that the com- putational limitations w er e too sever e. Using the selection pr ocess, a neur al networ k consisting of about 4-6 neur ons in its hidden layer was determined to be optimal. The initial er- r or r at e was too high w ith less than 4 neur ons and the compu- tational penalty did not j ustify gr eater than 6 neur ons. The exact sizes w er e r elative to the difficulty of the r acetracks that wer e being navigated and to the number of obstacles .

7 SUMM ARY

It was clearly demonstr ated that a fuzzy logic trainer could be used to train a neural netw or k in r eal time as the neural networ k contr olled a vehicle nav igating an unknown racetr ack. It was also demonstr ated that even with a minimal fuzzy logic implementation and significant har dware con- straints the neur al networ ks wer e able to learn suitably to na- vigate the tested. The exper imental r esults demonstr ated that usable r eal time autonomous navigation could be impl e- mented without elaborate contr ol str ategies or significant computational pow er.
In addition, it was observed that the number of neur ons in the hidden layer pr imar ily impacted the initial accuracy of the neural networ k and the rate of conver gence to a minimum level of err or. W hile incr easing the size of the neural networ k appear ed to impr ove per formance in simulation, it did not significantly impr ove per for mance during experiments. The
neural networ ks wer e also observed to per form competitively when compar ed against the fuzzy logic trainer even w ith a minimal number of tr aining epochs. W hile the observations wer e not necessary valid for all possible neural networ k or fuzzy logic tr ainer implementations, the emphasis on initial feasibility rather than final err or r eduction was a not ew orthy shift fr om traditional neural networ k size selection pr ocesses’.
Based on these observations a selection pr ocess was de-
veloped to determine the optimal number of neur ons for the given neur al netw or k. The pr ocess of optimizing the size of a neural netw or k was designed to be applied in exper iment dr i- ven applications in w hich other , mor e theor et ical optimization methods would be unsuitable. The optimal number of neurons in the hidden layer for the tested application was determined to be about 4-6 based on this selection pr ocess. W hile the selec- tion process may not pr oduce feasible or optimal r esults in all possible neur al networ k topologies, in similar feed-forward neural networ k applications the selection pr ocess should pr o- duce usable, near-optimal neur al networ k sizes.

ACKNOWLEDGM ENTS

The authors would like to acknowledge the financial su p- port and encouragement of Yousef Awad Al-Ahmadi, Dir ector, Ideas Development Co. Ltd. Furthermor e, the authors would like to acknowledge the contr ibutions of Arun Das, Byung Yoon Kim and Sanjay Singh in har dware design, mechanical design, and design of the experimental setup for the aut o- nomous vehicle.

REFERENCES

[1] Shigeki Ishikawa. "A Method of Indoor Mobile Robot Na- vigation by Using Fuzzy Contr ol." IEEE Inter national Wor kshop on Robots and System s, pp 1013-1018, No- vember 1991.
[2] Patr ick Reignier. "Fuzzy logic techniques for mobile r obot
obstacle avoidance." Elsevier - Robotics and Autonomous
Systems, vol. 12, pp 143-153, 1994.
[3] L.H. Tsoukalas, E. N. Houstis, G. V. Jones. "Neur ofuzzy
Motion Planners for Intelligent Robots." Jour nal of Intel-
ligent and Robotic Systems vol. 19, pp 339-356, 1997.
[4] Jean Bosco Mbede, Pierr e Ele, Chantal-Mar guer ite Mveh-
Abia, Youssoufi Tour e, Volker Gr aefe, Shugen Ma. "Intel-
ligent mobile manipulator naviga tion using adaptive neur o-fuzzy systems." Elesevier - Information Sciences, vol. 171, pp 447-474, 2005.
[5] Shunming Li, Jianghui Xin, Weiyan Shang, Shen Huan, Wenqing Xiu. "The algor ithm of obstacle avoidance based on impr oved fuzzy neural netw or ks fusion for ex- plor ation vehicle." W SEAS Tr ansactions on Systems and Contr ol, vol. 3, iss. 4, pp 140-150, March 2009.
[6] Ter ence D. Sanger. "Optimal Unsuper vised Learning in a
Single-Layer Linear Feedforward Neural Networ k." Neur al Networ ks, vol. 2, pp 459-473, 1989.
[7] Hieu Tr ung Huynh, Yonggwan Won. "Online training for
single hidden-layer feedforward neural networ ks using RLS-ELM." IEEE Inter national Symposium on Computa- tional Intelligence in Robotics and Automation, pp 469-

IJSER © 2011

http :// www.ijser.org

Inte rnatio nal Jo urnal o f Sc ie ntific & Eng inee ring Re se arc h Vo lume 2, Issue 10, Oc tobe r-2011 10

ISSN 2229-5518

473, December 15-18 2009.
[8] Shumeet Baluja. "Evolution of an Artificial Neural Net-
wor k Based Autonomous Land Vehicle Contr oller." IEEE Transactions on Systems, Man, and Cyber netics - Part B: Cybernetics, vol. 26, iss. 3, pp 450 -463, June 1996.
[9] Dean A. Pomer leau. "Efficient Training of Artificial Neur- al Networ ks for Autonomous Navigation." Neural Com- putation, vol.3, iss. 1, pp 88-97, Spring 1991.
[10] Kazuyuki Hara, Kenj i Nakayama. "Selection of Min imum Training Data for Generalization and On-line Training by Multilayer Neural Networ ks." IEEE International Confe- r ence on Neural Networ ks, vol. 1, pp 436-441, June 3-6
1996.
[11] Ber nd Fr eisleben, Thomas Kunkelmann. "Combining
Fuzzy Logic and Neural Networ ks to Contr ol an Aut o- nomous Vehicle." Second IEEE International Confer ence on Fuzzy Systems, vol. 1, pp 321-326, 1993.
[12] G. Cyb enko. ‚Appr oximation by Super positions of a Si g- moidal Function.‛ Mathematics of Contr ol, Signals and Systems, vol. 2, pp 303-314, 1989.

IJSER © 2011

http :// www.ijser.org