http://dspace.nitrkl.ac.in/dspace
http://dspace.nitrkl.ac.in/dspace
Navigation Techniques for Control of Multiple Mobile Robots
A Thesis
Submitted to the Department of Mechanical Engineering
of National Institute of Technology, Rourkela
in partial fulfillment of the requirements for the degree of
DOCTOR OF PHILOSOPHY IN ENGINEERING
By
Saroj Kumar Pradhan
Department of Mechanical Engineering
National Institute of Technology
Rourkela‐769008 (India)
May 2007
Navigation Techniques for Control of Multiple Mobile Robots
A Thesis
Submitted to the Department of Mechanical Engineering
of National Institute of Technology, Rourkela
in partial fulfillment of the requirements for the degree of
DOCTOR OF PHILOSOPHY IN ENGINEERING
By
Saroj Kumar Pradhan
Under the Guidance of
Dr. D. R. Parhi Dr. A. K. Panda
(Supervisor) (Co‐supervisor)
Department of Mechanical Engineering
National Institute of Technology
Rourkela‐769008 (India)
May 2007
This Thesis is Dedicated
to my Late Mother Smt. Basanti Pradhan
and Late Brother Sri Manoj Kumar Pradhan
i
Declaration
I hereby declare that the work which is being presented in the thesis
entitled “Navigation Techniques for Control of Multiple Mobile Robots” in
partial fulfillment of the requirements for the award of the degree of DOCTOR
OF PHILOSOPHY submitted to the Department of Mechanical Engineering of
National Institute of Technology, Rourkela, is an authentic record of my own
work under the supervision of Dr. D. R. Parhi, Department of Mechanical
Engineering and Dr. A. K. Panda, Department of Electrical Engineering. I have
not submitted the matter embodied in this thesis for the award of any other
degree or diploma of the university or any other institute.
Date: 28th May, 2007 Saroj Kumar Pradhan
ii
Certificate
This is to certify that the thesis entitled “Navigation Techniques for
Control of Multiple Mobile Robots” being submitted by Shri Saroj Kumar
Pradhan is a bona fide research carried out by him at Mechanical Engineering
Department, National Institute of Technology, Rourkela, under our guidance and
supervision. The work incorporated in this thesis has not been, to the best of our
knowledge, submitted to any other University or any Institute for the award of
any degree or diploma.
D. R. Parhi A. K. Panda (Supervisor) (Co‐Supervisor)
Date: 28th May, 2007
iii
Acknowledgements It has been a pleasure for me to work on this dissertation. I hope the reader will find it not only interesting and useful, but also comfortable to read. The research reported here has been carried out in the Mechanical Engineering Department of National Institute of Technology, Rourkela at the Robotics Laboratory. I am greatly indebted to many persons for helping me to complete this dissertation. First and foremost, I wish to express my sense of gratitude and indebtedness to my supervisors, Dr. D.R. Parhi and Dr. A.K. Panda for their inspiring guidance, encouragement, and untiring efforts throughout the course of this work. Their timely help, constructive criticism, and painstaking efforts made it possible to present the work contained in this thesis.
I express my heartfelt thanks to the reviewers for giving their valuable comments on the published papers in different international journals, which helps to carry the research works in a right direction. I also thank to the international and national conference organisers for intensely reviewing the published papers.
I am grateful to Prof. S.K. Sarangi, Director, and Head of the Department, Mechanical Engineering, for their active interest and support. I am also thankful to the staff members of Mechanical Engineering Department, National Institute of Technology, Rourkela for providing all kind of possible help throughout the research work. I am also thankful to the head and staff members at my workplace for their valuable supports during the research. I express my deep sense of gratitude and reverence to my beloved father Sri Narendra Pradhan, mother Late Smt. Basanti Pradhan, sisters and my brother Late Sri Manoj Kumar Pradhan for their blessings, forbearance and endeavors to keep my moral high throughout the period of my work. I am grateful to my wife Saswati Soumya Pradhan, for her support and patience during this work, and to my daughter Manishikha, for constantly reminding me with less patience but no less love, that there is life outside the office. Thanks are due to Dr. Rabindra Kumar Behera, faculty Mechanical Engineering Department, for his constant advice and encouragement through out the research work. It is a great pleasure for me to acknowledge and express my appreciation to all my well wishers for their understanding, relentless supports, and encouragement during my research work. Last but not the least; I wish to express my sincere thanks to all those who directly or indirectly helped me at various stages of this work.
Saroj Kumar Pradhan
iv
Synopsis
The investigation reported in this thesis attempt to develop efficient techniques
for the control of multiple mobile robots in an unknown environment. Mobile
robots are key components in industrial automation, service provision, and
unmanned space exploration. This thesis addresses eight different techniques for
the navigation of multiple mobile robots. These are fuzzy logic, neural network,
neuro‐fuzzy, rule‐base, rule‐based‐neuro‐fuzzy, potential field, potential‐field‐
neuro‐fuzzy, and simulated‐annealing‐ potential‐field‐ neuro‐fuzzy techniques.
The main components of this thesis comprises of eight chapters. Following
the literature survey in Chapter‐2, Chapter‐3 describes how to calculate the
heading angle for the mobile robots in terms of left wheel velocity and right
wheel velocity of the robot.
In Chapter‐4 a fuzzy logic technique has been analysed. The fuzzy logic
technique uses different membership functions for navigation of the multiple
mobile robots, which can perform obstacles avoidance and target seeking.
Chapter‐5 consists of two subsections. In first subsection the neural
network technique has been developed and analysed for controlling the multiple
mobile robots. Then this technique is hybridised with fuzzy logic to improve the
v
fuzzy logic controller of Chapter‐4 with the addition of a neural network as a
pre‐processor for the fuzzy controller.
Chapter‐6 analyses a rule‐based‐neuro‐fuzzy technique for controlling the
mobile robots. A rule‐base technique is first developed and then it is combined
with the neuro‐fuzzy technique of Chapter‐5 to increase its efficiency.
Chapter‐7 deals with an efficient potential field method for navigation of
multiple mobile robots. Then a hybrid potential‐field‐neuro‐fuzzy technique for
controlling the mobile robots is described.
Finally, Chapter‐8 analyses the optimisation of potential field with the
help of simulated annealing for escaping local minima. The developed potential‐
field‐simulated‐annealing‐neuro‐fuzzy technique is described in simulation as
well as for real mobile robots.
vi
Table of Contents
1 Introduction ..................................................................................................... 1
1.1 Background....................................................................................................... 1 1.2 Aims and Objectives of this Research ........................................................... 3 1.3 Outline of the Thesis........................................................................................ 4 2 Literature Review............................................................................................ 6
2.1 Introduction ...................................................................................................... 6 2.2 Mobile Robot Navigation................................................................................ 6 2.3 Kinematic Analysis of Mobile Robots......................................................... 10 2.3.1 Introduction ................................................................................................ 10 2.3.2 Kinematic Analysis for Mobile Robot Navigation ................................ 10
2.4 Fuzzy Logic Technique ................................................................................. 11 2.4.1 Introduction ................................................................................................ 11 2.4.2 Fuzzy Logic Technique for Mobile Robot Navigation ......................... 11
2.5 Neural Network Technique.......................................................................... 20 2.5.1 Introduction ................................................................................................ 20 2.5.2 Neural Network Technique for Mobile Robot Navigation.................. 24 2.5.3 Neuro‐Fuzzy Technique for Mobile Robot Navigation ....................... 28
2.6 Rule Based Technique ................................................................................... 34 2.6.1 Introduction ................................................................................................ 34 2.6.2 Rule based Technique for Mobile Robot Navigation............................ 35
2.7 Potential Field Navigation Technique ........................................................ 37 2.7.1 Introduction ................................................................................................ 37 2.7.2 Potential Field Technique for Mobile Robot Navigation ..................... 37
2.8 Simulated Annealing Technique ................................................................. 42 2.8.1 Introduction ................................................................................................ 42 2.8.2 Simulated Annealing Technique ............................................................. 42
2.9 Sensors for Mobile Robots ............................................................................ 43 2.9.1 Ultrasonic Sensors for Robot Navigation ............................................... 44 2.9.2 Infrared Sensors for Robot Navigation................................................... 46 2.9.3 Other Sensors Used in Navigation .......................................................... 47
2.10 Summary ......................................................................................................... 48
vii
3 Kinematic Analysis of Mobile Robots...................................................... 49
3.1 Introduction .................................................................................................... 49 3.2 Configuration of Mobile Robot .................................................................... 49 3.3 Kinematic Model ............................................................................................ 51 4 Fuzzy Logic Technique ................................................................................ 55
4.1 Introduction .................................................................................................... 55 4.2 Control Architecture...................................................................................... 56 4.2.1 Analysis of Obstacle Avoidance and Target Seeking Behaviour........ 56 4.2.2 Fuzzy Mechanism for Mobile Robot Navigation .................................. 61 4.2.3 Obstacle Avoidance ................................................................................... 62 4.2.4 Control Steering Action for Target .......................................................... 63 4.2.5 Petri Net Modelling to avoid Collision among the Robots.................. 70
4.3 Demonstrations .............................................................................................. 72 4.3.1 Obstacle Avoidance and Target Seeking by Multiple Mobile Robots 72 4.3.2 Collision Free Movements in a Cluttered Environment ...................... 74 4.3.3 Obstacle Avoidance by a Large Number of Robots.............................. 75 4.3.4 Escape from Dead Ends ............................................................................ 75
4.4 Comparison between the Different Types of Fuzzy Controller.............. 78 4.4.1 Simulation Results ..................................................................................... 78 4.4.2 Experimental Results................................................................................. 82
4.5 Summary ......................................................................................................... 86 5 Neural Network Technique ........................................................................ 87
5.1 Introduction .................................................................................................... 87 5.1.1 Multilayer Neural Network Based Navigation Technique.................. 88
5.2 Neuro‐Fuzzy Technique ............................................................................... 93 5.2.1 Obstacle Avoidance ................................................................................... 95 5.2.2 Target Finding ............................................................................................ 95
5.3 Demonstrations .............................................................................................. 96 5.3.1 Neural Network Technique...................................................................... 96
5.3.1.1 Obstacle Avoidance and Target Seeking .................................... 96
5.3.1.2 Escape from Dead Ends ................................................................ 98
5.3.1.3 Navigation of ‘Nine Hundred Ninety Robots’ .......................... 98
viii
5.3.1.4 Inter Robot Collision Avoidance ................................................. 98 5.3.2 Neuro‐Fuzzy Technique ......................................................................... 102
5.3.2.1 Collision Free Movements in a Cluttered Environment ........ 102
5.3.2.2 Escape from Dead Ends .............................................................. 102
5.3.2.3 Obstacle Avoidance by a Large Number of Robots................ 102 5.4 Comparisons................................................................................................. 106 5.4.1 Comparison between the Different Types of Fuzzy Controllers and Neuro‐Fuzzy Controller...................................................................................... 106 5.4.2 Comparison of the Developed Neuro‐Fuzzy Technique with Marichal and Janglova Techniques .................................................................................... 111
5.5 Summary ....................................................................................................... 119 6 Rule Based Technique ............................................................................... 120
6.1 Introduction .................................................................................................. 120 6.2 Rule Based Technique for Mobile Robots................................................. 122 6.2.1 Analysis of Rule‐Based Technique ........................................................ 126
6.3 Rule‐Based ‐ Neuro‐Fuzzy technique ....................................................... 131 6.4 Demonstrations ............................................................................................ 133 6.4.1 Rule‐Based Technique ............................................................................. 133
6.4.1.1 Obstacle Avoidance and Target Seeking by Multiple Mobile Robots…………. ............................................................................................... 133
6.4.1.2 Obstacle Avoidance by a Large Number of Robots................ 133
6.4.1.3 Escape from Dead Ends .............................................................. 136
6.4.1.4 Collision Free Movements in a Cluttered Environment ........ 136 6.4.2 Rule‐Based‐Neuro‐Fuzzy Technique .................................................... 139
6.4.2.1 Escape from Dead Ends .............................................................. 139
6.4.2.2 Navigation by Nine Hundred Ninety Mobile Robots ............ 139
6.4.2.3 Inter Robot Collision Avoidance ............................................... 139
6.4.2.4 Experimental Validation with the Simulation Results for Two Mobile Robots................................................................................................... 143
6.5 Comparison between Different Controllers............................................. 145 6.5.1 Experiments with Single Real Mobile Robot ....................................... 148
6.6 Summary ....................................................................................................... 151
ix
7 Potential Field Navigation Technique.................................................... 152
7.1 Introduction .................................................................................................. 152 7.2 Analysis of Potential Field Navigation technique................................... 153 7.2.1 Attractive Potential Function ................................................................. 153 7.2.2 Repulsive Potential Function ................................................................. 154 7.2.3 New Repulsive Potential Function........................................................ 158 7.2.4 Robot Navigation ..................................................................................... 161 7.2.5 Hybrid Potential Field Navigation technique...................................... 166
7.3 Demonstrations ............................................................................................ 168 7.3.1 Potential Field Navigation Technique .................................................. 168
7.3.1.1 Obstacle Avoidance and Target Seeking by Multiple Mobile Robots ……………………………………………………………………..168
7.3.2 Potential‐Field‐Neuro‐Fuzzy Technique .............................................. 169
7.3.2.1 Escape from Dead Ends .............................................................. 169
7.3.2.2 Navigation of Several Mobile Robots ....................................... 171
7.3.2.3 Inter Robot Collision Avoidance ............................................... 171
7.3.2.4 Experimental Validation for Two Mobile Robots with the Simulation Results ........................................................................................... 174
7.4 Comparison between Different Controllers............................................. 176 7.4.1 Simulation Results ................................................................................... 176
7.4.1.1 Experiments with single Mobile Robot..................................... 180
7.4.1.2 Experiments with Two Real Mobile Robots............................. 182 7.5 Summary ....................................................................................................... 184 8 Simulated Annealing ................................................................................. 185
8.1 Introduction .................................................................................................. 185 8.2 Simulated Annealing................................................................................... 186 8.2.1 Simulated Annealing Technique ........................................................... 187 8.2.2 Hybrid Technique .................................................................................... 193
8.3 Demonstrations ............................................................................................ 195 8.3.1 Inter Robot Collision Avoidance ........................................................... 195 8.3.2 Experimental Validation for Two Mobile Robots with the Simulation Results.................................................................................................................... 196 8.3.3 Escape from Dead Ends .......................................................................... 198
x
8.3.4 Navigation of Several Mobile Robots ................................................... 200 8.4 Comparison between Different Controllers............................................. 202 8.4.1 Simulation Results ................................................................................... 202 8.4.2 Experiments with Single Real Mobile Robot ....................................... 206 8.4.3 Experiments with Multiple Mobile Robots .......................................... 208
8.5 Summary ....................................................................................................... 215 9 Conclusions and Further Work ................................................................ 216
9.1 Contributions................................................................................................ 216 9.2 Conclusions................................................................................................... 217 9.3 Further Work ................................................................................................ 217 Appendix – A ......................................................................................................... 219
Software used for Robot navigation...................................................................... 219 A.1 Navigation Software.................................................................................... 219
A.1.1 Obstacle Menu:................................................................................. 219
A.1.2 Number of Robot Menu: ................................................................. 219
A.1.3 Run Menu:......................................................................................... 219
A.1.4 Techniques Menu:............................................................................ 219
A.1.5 Target Menu:..................................................................................... 221
A.1.6 Manual Command (Parameter Menu):......................................... 221 Appendix – B.......................................................................................................... 223
Petri Net Model ........................................................................................................ 223 B.1 Basic Definitions of Petri Net Model:........................................................ 223 Appendix ‐ C.......................................................................................................... 230
Description of Experimental Mobile Robots........................................................ 230 C.1 Khepera II Robot .......................................................................................... 230 C.2 Boe‐Bot Robot ............................................................................................... 231 C.3 Hemisson Robot ........................................................................................... 232 C.4 Koala Robot................................................................................................... 233 Appendix – D......................................................................................................... 234
Data Mining Tools See5 .......................................................................................... 234 D.1 See5 Required Following files: ................................................................... 234
D.1.1 Application Files .............................................................................. 234
xi
D.1.2 Names File......................................................................................... 234
D.1.3 Data File............................................................................................. 235
D.1.3.1 Locate Data.................................................................................. 236
D.1.3.2 Construct Classifier.................................................................... 236
D.1.3.3 Stop............................................................................................... 236
D.1.3.4 Review Output ........................................................................... 236
D.1.3.5 Use Classifier .............................................................................. 236
D.1.3.6 Cross‐Reference.......................................................................... 236
D.1.4 Constructing Classifiers .................................................................. 236
D.1.5 Rulesets.............................................................................................. 237 Appendix – E.......................................................................................................... 240
Data for Rule‐based Controller .............................................................................. 240 References............................................................................................................... 250
Published Papers................................................................................................... 279
Papers Published in International Journals:................................................. 279
Papers Published in International / National Conferences:....................... 280
xii
List of Tables
Table 4.1. Parameters of fuzzy membership functions............................................. 58 Table 4.2. Obstacle avoidance for three‐membership function. .............................. 64 Table 4.3. Obstacle avoidance for five‐membership function. ................................ 65 Table 4.4. Target seeking for three‐membership function. ...................................... 65 Table 4.5. Target seeking for five‐membership function.......................................... 65 Table 4.6. Path lengths using different fuzzy controllers........................................ 81 Table 4.7. Time taken to reach the target using different fuzzy controllers. ........ 81 Table 4.8. Time taken by robots in simulation and experiment to reach target
(Fuzzy logic technique). ........................................................................................ 85 Table 5.1. Rules for obstacle avoidance. ..................................................................... 95 Table 5.2. Rules for target finding................................................................................ 96 Table 5.3. Path lengths using different controllers................................................. 109 Table 5.4. Time taken to reach the target using different controllers. ................. 110 Table 5.5. Performance evaluation of different technique for navigation of one
mobile robot. ......................................................................................................... 110 Table 6.1. Path lengths using different rule base techniques................................. 147 Table 6.2. Time taken to reach the target using different techniques................... 148 Table 6.3. Time taken by robots in simulation and experiment to reach the target
(Rule‐based technique)........................................................................................ 150 Table 7.1. Path lengths using different techniques.................................................. 179 Table 7.2. Time taken to reach the target using different techniques................... 179 Table 7.3. Time taken by robots in simulation and experiment to reach target
(Potential field navigation technique)............................................................... 182 Table 8.1. Path lengths using different techniques.................................................. 205 Table 8.2. Time taken to reach the target using different techniques................... 205 Table 8.3. Time taken by robots in simulation and experiment to reach target
(Simulated annealing). ........................................................................................ 206 Table d.1. Summary table of the extensions used by See5. .................................... 239
xiii
List of Figures
Figure 2.1. Flow diagram of the horizontal decomposition method for the navigation of a mobile robot. ................................................................................. 8
Figure 2.2. Flow diagram of the vertical decomposition method for the navigation of a mobile robot. ................................................................................. 9
Figure 2.3. Model of a neuron. ..................................................................................... 20 Figure 2.4. Three common activation functions. ....................................................... 23 Figure 3.1. A three wheeled mobile robot. ................................................................. 50 Figure 3.2. Wheeled mobile robot with left and right angular velocities. ............. 50 Figure 3.3. Wheeled mobile robot with no slip condition........................................ 51 Figure 3.4. A Robot. ....................................................................................................... 51 Figure 3.5. Kinematic parameters of the wheeled mobile robots............................ 52 Figure 3.6. Calculation of angular velocity. ............................................................... 54 Figure 4.1. Fuzzy Controllers for Mobile Robot Navigation. .................................. 59 Figure 4.2. Fuzzy membership functions. .................................................................. 60 Figure 4.3. Left, Front and Right Obstacles Distances. ............................................. 66 Figure 4.4. Resultant Left and Right Wheel Velocity. ............................................... 70 Figure 4.5. Petri Net Model for avoiding inter‐robot collision. ............................... 71 Figure 4.6. Obstacle avoidance and target seeking by forty‐five mobile robots
using five‐membership function (Initial position). ........................................... 72 Figure 4.7. Obstacle avoidance and target seeking by forty‐five mobile robots
using five membership function (Intermediate state). ..................................... 73 Figure 4.8. Obstacle avoidance and target seeking by forty‐five mobile robots
using five membership function (Final state). ................................................... 73 Figure 4.9. Collision free movement using five‐membership FLC (Initial
scenario)................................................................................................................... 74 Figure 4.10. Collision free movement using five membership FLC (Final state). 75 Figure 4.11. Navigation of large number of robots before starting the mission
using five‐membership FLC (1000 robots). ........................................................ 76 Figure 4.12. Navigation of large number of robots after some time from the
starting of the mission using five membership FLC (1000 robots). ................ 76 Figure 4.13. Environment for escaping from the dead ends before starting of the
mission using five‐membership FLC. ................................................................. 77
xiv
Figure 4.14. Recorded paths of fifteen robots in case of escaping from U‐shaped objects and getting the targets using five‐membership FLC. .......................... 77
Figure 4.15. Workspace for one mobile robot with one target (initial scenario)... 79 Figure 4.16. Navigation path for one mobile robot using three‐membership fuzzy
controller. ................................................................................................................ 79 Figure 4.17. Navigation path for one mobile robot using five membership
triangular fuzzy controller.................................................................................... 80 Figure 4.18. Navigation path for one mobile robot using Gaussian membership
fuzzy controller. ..................................................................................................... 80 Figure 4.19. Initial scenario for real robot (Khepera II) for the similar simulated
environment as shown in Figure 4.15. ................................................................ 82 Figure 4.20. Intermediate scenario ‐ one for real robot (Khepera II) using
Gaussian membership fuzzy controller. ............................................................. 82 Figure 4.21. Intermediate scenario ‐ two for real robot (Khepera II) using
Gaussian membership fuzzy controller. ............................................................. 83 Figure 4.22. Intermediate scenario ‐ three for real robot (Khepera II) using
Gaussian membership fuzzy controller. ............................................................. 83 Figure 4.23. Final scenario when Khepera II robot reaches the target. .................. 83 Figure 4.24. Initial scenario for two real robots (Khepera II and Boe ‐ Bot) for the
similar simulated environment as shown in Figure 4.9. .................................. 84 Figure 4.25. Intermediate scenario ‐ one for real robot experiment (Khepera II and
Boe ‐ Bot) using Gaussian membership fuzzy controller. ................................ 84 Figure 4.26. Intermediate scenario ‐ two for real robot experiment (Khepera II
and Boe ‐ Bot) using Gaussian membership fuzzy controller. ........................ 84 Figure 4.27. Intermediate scenario ‐ three for real robot experiment (Khepera II
and Boe ‐ Bot) using Gaussian membership fuzzy controller. ........................ 85 Figure 4.28. Final scenario when Khepera II and Boe ‐ Bot robots reach the target.
................................................................................................................................... 85 Figure 5.1. Four layer neural network for navigation of mobile robots................. 89 Figure 5.2. Training Patterns for navigation of mobile robots. ............................... 90 Figure 5.3. Neuro‐Fuzzy Controller for navigation of mobile robots. ................... 94 Figure 5.4. Obstacle avoidance and target seeking behaviour by ten mobile robots
using neural network technique (Initial State). ................................................. 97 Figure 5.5. Obstacle avoidance and target seeking behaviour by ten mobile robots
using neural network technique (Final State). ................................................... 97
xv
Figure 5.6. Escape from dead ends by four mobile robots using neural network technique (Initial State). ........................................................................................ 99
Figure 5.7. Escape from dead ends by four mobile robots using neural network technique (Final State). .......................................................................................... 99
Figure 5.8. Navigation of nine hundred ninety mobile robots using neural network technique (Initial State)........................................................................ 100
Figure 5.9. Navigation of one thousand mobile robots using neural network technique (Intermediate State). .......................................................................... 100
Figure 5.10. Collision avoidance between four mobile robots using neural network technique (Initial State)........................................................................ 101
Figure 5.11. Collision avoidance between four mobile robots using neural network technique (Final State). ........................................................................ 101
Figure 5.12. Collision avoidance by two mobile robots using neuro‐fuzzy technique (Initial State). ...................................................................................... 103
Figure 5.13. Collision avoidance by two mobile robots using neuro‐fuzzy technique (Final State). ........................................................................................ 103
Figure 5.14. Environment for escaping from the dead ends before starting of the mission using neuro‐fuzzy technique. .............................................................. 104
Figure 5.15. Recorded paths of fifteen robots in case of escaping from dead ends and getting the targets using neuro‐fuzzy technique. .................................... 104
Figure 5.16. Navigation of large number of robots before starting the mission neuro‐fuzzy technique (1000 robots)................................................................. 105
Figure 5.17. Navigation of large number of robots after some time from the starting of the mission using neuro‐fuzzy technique (1000 robots). ............ 105
Figure 5.18. Environment for one robot and one target. ........................................ 107 Figure 5.19. Navigation path for one mobile robot using neural network
technique. .............................................................................................................. 107 Figure 5.20. Navigation path for one mobile robot using five‐membership fuzzy
logic technique with Gaussian membership function. ................................... 108 Figure 5.21. Navigation path for one mobile robot using neuro‐fuzzy technique.
................................................................................................................................. 108 Figure 5.22. Navigation of one mobile robot to reach target with prior knowledge
of target.................................................................................................................. 109 Figure 5.23. Initial scenario for navigation of one mobile robot. .......................... 111 Figure 5.24. Navigation path for one mobile robot to reach target using
developed neuro‐fuzzy technique. .................................................................... 112
xvi
Figure 5.25. Navigation path for one mobile robot to reach target for the similar environment as shown in Figure 5.23 (Janglova D., [99]). ............................. 112
Figure 5.26. Initial scenario for real robot as shown in Figure 5.23. ..................... 113 Figure 5.27. Intermediate scenario‐ one for real robot (Khepera II). .................... 113 Figure 5.28. Intermediate scenario‐two for real robot (Khepera II)...................... 113 Figure 5.29. Final scenario of real robot (Khepera II) at the target. ...................... 113 Figure 5.30. Initial scenario for navigation of two mobile robots. ........................ 114 Figure 5.31. Navigation path of two mobile robots after reaching the target using
developed neuro‐fuzzy technique. .................................................................... 114 Figure 5.32. Navigation path of two robots to reach the target for the similar
environment as Figure 28. (Marichal G. N. et al., [113])................................. 115 Figure 5.33. Initial scenario for two real robots (Khepera II and Boe‐Bot) for
similar simulated environment as shown Figure 5.32.................................... 115 Figure 5.34. Intermediate scenario‐ one for two real robots (Khepera II and Boe‐
Bot). ........................................................................................................................ 116 Figure 5.35. Intermediate scenario‐ two for two real robots (Khepera II and Boe‐
Bot). ........................................................................................................................ 116 Figure 5.36. Intermediate scenario ‐ three for two real robots (Khepera II and Boe‐
Bot). ........................................................................................................................ 116 Figure 5.37. Final scenario of two real robots ‘Khepera II and Boe‐Bot’ at the
target. ..................................................................................................................... 117 Figure 5.38. Initial scenario for four mobile robots. ................................................ 117 Figure 5.39. Navigation path for four mobile robots to reach target using
developed neuro‐fuzzy technique. .................................................................... 118 Figure 5.40. Navigation path of four robots to reach the target for the similar
environment as Figure 5.40 (Marichal G. N. et al. [113])................................ 118 Figure 6.1. Scenario before applying rule 1. ............................................................. 126 Figure 6.2. Final scenario when rule 1 is activated. ................................................ 127 Figure 6.3. Final scenario when rule 2 is activated. ................................................ 127 Figure 6.4. Final scenario when rule 8 is activated. ................................................ 128 Figure 6.5. Scenario before applying all the rules simultaneously. ...................... 128 Figure 6.6. Final scenario when are the rules are applied simultaneously.......... 129 Figure 6.7. Rule‐based‐neuro‐fuzzy technique for navigation of mobile robots.132 Figure 6.8. Collision free movement using rule‐based technique......................... 134 Figure 6.9. Collision free movement using rule‐based technique......................... 134
xvii
Figure 6.10. Navigation of one thousand robots using rule‐based technique before starting of simulation. ............................................................................. 135
Figure 6.11. Navigation of one thousand robots after some time from the starting of the mission using rule‐based technique. ...................................................... 135
Figure 6.12. Environment for escaping from the dead ends before starting of the mission using rule‐based technique. ................................................................. 137
Figure 6.13. Environment for escaping from the dead ends after the robots reaches their targets using rule‐based technique. ........................................... 137
Figure 6.14. Two robots in a highly cluttered environment for finding the targets using rule‐based technique (Initial scenario). .................................................. 138
Figure 6.15. Recorded paths of two robots after reaching their target................. 138 Figure 6.16. Escape from dead ends by ten mobile robots using rule‐based‐neuro‐
fuzzy technique (Initial State). ........................................................................... 140 Figure 6.17. Escape from dead ends by fifteen mobile robots using rule‐based‐
neuro‐ fuzzy technique (Final State). ................................................................ 140 Figure 6.18. Navigation scenario of nine hundred ninety mobile robots using
rule‐based‐neuro‐ fuzzy technique (Initial State)............................................ 141 Figure 6.19. Navigation of nine hundred ninety mobile robots using rule‐based‐
neuro‐ fuzzy technique (Intermediate State). .................................................. 141 Figure 6.20. Collision avoidance by two mobile robots using rule‐based‐neuro‐
fuzzy technique (Initial State). ........................................................................... 142 Figure 6.21. Collision avoidance between two mobile robots using rule‐based‐
neuro‐ fuzzy technique (Final State). ................................................................ 142 Figure 6.22. Experimental result for two mobile robots using rule‐based‐neuro‐
fuzzy technique (Initial stage). ........................................................................... 143 Figure 6.23. Experimental result for two mobile robots using rule‐based‐neuro‐
fuzzy technique (Intermediate stage ‐ one). ..................................................... 143 Figure 6.24. Experimental result for two mobile robots using rule‐based‐neuro‐
fuzzy technique (Intermediate stage ‐ two)...................................................... 144 Figure 6.25. Experimental result for two mobile robots using rule‐based‐neuro‐
fuzzy technique (Intermediate stage ‐ three). .................................................. 144 Figure 6.26. Experimental result for two mobile robots using rule‐based‐neuro‐
fuzzy technique (Final stage).............................................................................. 144 Figure 6.27. Environment for one robot and one target. ........................................ 146 Figure 6.28. Navigation path for one mobile robot to reach target using rule‐
based controller. ................................................................................................... 146
xviii
Figure 6.29. Navigation path for one mobile robot to reach target using rule‐based‐neuro‐fuzzy controller. ............................................................................ 147
Figure 6.30. Experimental result of one robot using rule‐based‐neuro‐fuzzy technique (Initial stage). ...................................................................................... 148
Figure 6.31. Experimental result of one robot using rule‐based‐neuro‐fuzzy technique (Intermediate stage ‐ I). ..................................................................... 149
Figure 6.32. Experimental result of one robot using rule‐based‐neuro‐fuzzy technique (Intermediate stage ‐ II)..................................................................... 149
Figure 6.33. Experimental result of one robot using rule‐based‐neuro‐fuzzy technique (Intermediate stage ‐ III). .................................................................. 149
Figure 6.34. Experimental result of one robot using rule‐based‐neuro‐fuzzy technique (Intermediate stage ‐ IV). .................................................................. 150
Figure 6.35. Experimental result of one robot using rule‐based‐neuro‐fuzzy technique (Final stage)......................................................................................... 150
Figure 7.1. Location of target, robot and obstacles.................................................. 155 Figure 7.2. Total potential function. .......................................................................... 158 Figure 7.3. Front‐rear axis and Left‐right axis of the robot. ................................... 161 Figure 7.4. Contour plot for total potential field when the target is located at the
(0, 0) along with three obstacles. ........................................................................ 162 Figure 7.5. Surface plot for total potential field when the target is located at the
(0,0) along with three obstacles. ......................................................................... 162 Figure 7.6. Orthographic projection for total potential field when the target is
located at the (0.5, 0.5) along with three obstacles. ......................................... 163 Figure 7.7. Axon metric representation for total potential field when the target is
located at the (0.5, 0.5) along with three obstacles. ......................................... 163 Figure 7.8. Contour plot for total potential field when the target is located at the
(0, 0) along with four obstacles. ......................................................................... 164 Figure 7.9. Surface plot for total potential field when the target is located at the
(0,0) along with four obstacles. .......................................................................... 164 Figure 7.10. Orthographic projection for total potential field when the target is
located at the (0.5, ‐ 0.5) along with four obstacles. ........................................ 165 Figure 7.11. Axon metric representation for total potential field when the target is
located at the (0.5, ‐0.5) along with four obstacles. ......................................... 165 Figure 7.12. Potential‐field‐neuro‐fuzzy controller for navigation of mobile
robots. .................................................................................................................... 167
xix
Figure 7.13. Environment before starting of simulation when forty‐five robots involve to reach a target using potential field navigation technique. .......... 168
Figure 7.14. Environment after all the forty‐five robots reach the target using potential field navigation technique. ................................................................ 169
Figure 7.15. Escape from dead ends by ten mobile potential‐field‐neuro‐fuzzy technique (Initial State). ...................................................................................... 170
Figure 7.16. Escape from dead ends by fifteen mobile robots using potential‐field‐neuro‐fuzzy technique (Final State). ................................................................. 170
Figure 7.17. Navigation scenario of nine hundred ninety‐six mobile robots using potential‐field‐neuro‐fuzzy technique (Initial State). ..................................... 172
Figure 7.18. Navigation of one thousand mobile robots using potential‐field‐neuro‐fuzzy technique (Intermediate State). ................................................... 172
Figure 7.19. Collision avoidance by two mobile robots using potential‐field‐neuro‐fuzzy technique (Initial State)................................................................. 173
Figure 7.20. Collision avoidance by two mobile robots using potential‐field‐neuro‐fuzzy technique (Final State). ................................................................. 173
Figure 7.21. Experimental result for two mobile robots using potential‐field‐neuro‐fuzzy technique (Initial stage). ............................................................... 174
Figure 7.22. Experimental result for two mobile robots using potential‐field‐neuro‐fuzzy technique (Intermediate stage ‐ I). .............................................. 174
Figure 7.23. Experimental result for two mobile robots using potential‐field‐neuro‐fuzzy technique (Intermediate stage ‐ II). ............................................. 175
Figure 7.24. Experimental result for two mobile robots using potential‐field‐neuro‐fuzzy technique (Intermediate stage ‐ III)............................................. 175
Figure 7.25. Experimental result for two mobile robots using potential‐field‐neuro‐fuzzy technique (Final stage).................................................................. 175
Figure 7.26. Environment for one robot and one target. ........................................ 177 Figure 7.27. Navigation path for one mobile robot to reach target using neuro‐
fuzzy technique. ................................................................................................... 177 Figure 7.28 Navigation path for one mobile robot to reach target using potential
field navigation technique. ................................................................................. 178 Figure 7.29. Navigation path for one mobile robot to reach target using potential‐
field‐neuro‐fuzzy technique. .............................................................................. 178 Figure 7.30. Experimental result for single mobile robot (Khepera II) using
potential‐field‐neuro‐fuzzy technique (Initial stage)...................................... 180
xx
Figure 7.31. Experimental result for single mobile robot (Khepera II) using potential‐field‐neuro‐fuzzy technique (Intermediate stage ‐ I)..................... 180
Figure 7.32. Experimental result for single mobile robot (Khepera II) using potential‐field‐neuro‐fuzzy technique (Intermediate stage ‐ II). .................. 181
Figure 7.33. Experimental result for single mobile robot (Khepera II) using potential‐field‐neuro‐fuzzy technique (Intermediate stage ‐ III). ................. 181
Figure 7.34. Experimental result for single mobile robot (Khepera II) using potential‐field‐neuro‐fuzzy technique (Final stage). ...................................... 181
Figure 7.35. Target seeking by three mobile robots by using potential‐field‐neuro‐fuzzy technique (Initial scenario). ..................................................................... 182
Figure 7.36. Target seeking by three mobile robots by using potential‐field‐neuro‐fuzzy technique (Intermediate scenario ‐ I)...................................................... 183
Figure 7.37. Target seeking by three mobile robots by using potential‐field‐neuro‐fuzzy technique (Intermediate scenario ‐ II). ................................................... 183
Figure 7.38. All the three mobile robots reach the target by using potential‐field‐neuro‐fuzzy technique. ....................................................................................... 183
Figure 8.1. The structure of the simulated annealing algorithm........................... 188 Figure 8.2. The Potential Function............................................................................. 189 Figure 8.3. Path‐planning algorithm. ........................................................................ 191 Figure 8.4. Initialisation algorithm. ........................................................................... 192 Figure 8.5. Potential‐field‐simulated‐annealing‐neuro‐fuzzy controller for
navigation of mobile robots................................................................................ 194 Figure 8.6. Inter robot collision avoidance using potential‐field‐simulated‐
annealing‐neuro‐fuzzy technique (Initial scenario). ....................................... 195 Figure 8.7. Inter robot collision avoidance using potential‐field‐simulated‐
annealing‐neuro‐fuzzy technique (Final scenario).......................................... 196 Figure 8.8. Experimental result for two mobile robots (Khepera II and Boe‐bot)
using potential‐field‐ simulated‐annealing‐neuro‐fuzzy technique (Initial stage). ..................................................................................................................... 197
Figure 8.9. Experimental result for two mobile robots using potential‐field‐ simulated‐annealing‐neuro‐fuzzy technique (Intermediate stage ‐ I). ........ 197
Figure 8.10. Experimental result for two mobile robots using potential‐field‐ simulated‐annealing‐neuro‐fuzzy technique (Intermediate stage ‐ II). ....... 197
Figure 8.11. Experimental result for two mobile robots using potential‐field‐ simulated‐annealing‐neuro‐fuzzy technique (Intermediate stage ‐ III)....... 198
xxi
Figure 8.12. Experimental result for two mobile robots (Khepera II and Boe‐bot) using potential‐field‐ simulated‐annealing‐neuro‐fuzzy technique (Final stage). ..................................................................................................................... 198
Figure 8.13. Escape from of dead ends by using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique (Initial scenario). ....................................... 199
Figure 8.14. Escape from dead ends by using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique (Final scenario).......................................... 199
Figure 8.15. Scenario for navigation of one thousand mobile robots before simulation by using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique. .............................................................................................................. 200
Figure 8.16. Scenario for navigation of one thousand mobile robots by using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique after sometime when simulation started. .................................................................................... 201
Figure 8.17. Environment for one robot and one target. ........................................ 203 Figure 8.18. Navigation path for one mobile robot to reach target using rule‐
based‐neuro‐fuzzy technique. ............................................................................ 203 Figure 8.19. Navigation path for one mobile robot to reach target using potential‐
field‐neuro‐fuzzy technique. .............................................................................. 204 Figure 8.20. Navigation path for one mobile robot to reach target using potential‐
field‐simulated‐annealing‐neuro‐fuzzy technique. ........................................ 204 Figure 8.21. Experimental result for one mobile robot (Khepera II) using
potential‐field‐ simulated‐annealing‐neuro‐fuzzy technique (Initial stage).................................................................................................................................. 206
Figure 8.22. Experimental result for one mobile robot using potential‐field‐ simulated‐annealing‐neuro‐fuzzy technique (Intermediate stage – I). ........ 207
Figure 8.23. Experimental result for one mobile robot using potential‐field‐ simulated‐annealing‐neuro‐fuzzy technique (Intermediate stage – II). ...... 207
Figure 8.24. Experimental result for one mobile robot (Khepera II) using potential‐field‐ simulated‐annealing‐neuro‐fuzzy technique (Final stage). 207
Figure 8.25. Collision avoidance by three mobile robots using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique (Initial State). .......................... 208
Figure 8.26. Collision avoidance by three mobile robots using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique (Intermediate State ‐ I). ......... 208
Figure 8.27. Collision avoidance by three mobile robots using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique (Intermediate State ‐ II)......... 209
xxii
Figure 8.28. Collision avoidance by three mobile robots using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique (Intermediate State ‐ III). ...... 209
Figure 8.29. Collision avoidance by three robots using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique after all the robots reaches the target. ... 209
Figure 8.30. Target seeking by three mobile robots using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique (Initial scenario). .................... 210
Figure 8.31. Target seeking by three mobile robots using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique (Intermediate scenario ‐ I). ... 210
Figure 8.32. Target seeking by three mobile robots using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique (Intermediate scenario ‐ II)... 210
Figure 8.33. Target seeking by three mobile robots using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique (Intermediate scenario ‐ III). 211
Figure 8.34. All the three mobile robots reach the target by using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique................................................... 211
Figure 8.35. Target seeking by three mobile robots with two targets in the environment using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique (Initial scenario). ................................................................................ 212
Figure 8.36. Target seeking by three mobile robots with two targets in the environment using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique (Intermediate scenario ‐ I). ............................................................... 212
Figure 8.37. Target seeking by three mobile robots with two targets in the environment using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique (Intermediate scenario ‐ II). .............................................................. 213
Figure 8.38. Target seeking by three mobile robots with two targets in the environment using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique (Final scenario). .................................................................................. 213
Figure 8.39. Navigation of four mobile robots in a cluttered environment using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique (Initial Scenario).................................................................................................................................. 214
Figure 8.40. Navigation of four mobile robots using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique (Intermediate Scenario ‐ I)....................... 214
Figure 8.41. Navigation of four mobile robots using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique (Intermediate Scenario ‐ II). .................... 214
Figure a.1. Obstacles. ................................................................................................... 220 Figure a.2. Fifteen mobile robots. .............................................................................. 220
xxiii
Figure a.3. View of the software (ROBOPATH) front‐end user for navigation of multiple mobile robots. ....................................................................................... 221
Figure b.1. A simple Petri Net model........................................................................ 225 Figure b.2. A simple firing example using Petri Net model. ................................. 227 Figure c.1. Khepera II robot. ...................................................................................... 230 Figure c.2. Boe‐Bot robot. ............................................................................................ 231 Figure c.3. Hemisson Robot. ....................................................................................... 232 Figure c.4. Koala Robot ............................................................................................... 233 Figure d.1. The main window of See5....................................................................... 238 Figure d.2. The Main dialog box. ............................................................................... 238
xxiv
List of Symbols
∨ = Aggregate (Union)
Λ = Minimum (Intersection)
∀ = For all
α i = A positive scaling factor
desireθ = Desire output from the neural network
actualθ = Actual output from the neural network
µ = Fuzzy membership function
0 =ρ Positive constant denoting influences of the obstacle on the robot
( )ρiobs q , q = The minimum distance from the robot ‘q’ to the obstacle
ω = Angular velocity of the wheeled mobile robot
lω = Angular velocity of the left driving wheel
rω = Angular velocity of the right driving wheel
Al = Point of contact of the left driving wheel
Ar = Point of contact of the right driving wheel
B = Wheel base of the mobile robot
C = Centroid of the mobile robot
d = Distance between C and M
[ ]11d = Left obstacle distance from the robot
[ ]12d = Front obstacle distance from the robot
[ ]13d = Right obstacle distance from the robot
xxv
E = Objective function
( )attF x = The attractive potential force
FD = frontdist = Front obstacle distance
FLC = Fuzzy Logic Controller
( )rep iF obs = The repulsive potential force
HA = Target angle = Heading angle
i = 1 to n, n is number of obstacles
LD = leftdist = Left obstacle distance
LV = leftvelo = Left wheel velocity of a robot
M = Mid‐point of the rear wheel base
Med = Medium
Negative = Left Turn
OA = Obstacle Avoidance
P = Instantaneous center
Positive = Right Turn
q = [x, y] = The robots position in the workspace
r = Radius of the two rear drive wheel
RD = rightdist = Right obstacle distance
RV = rightvelo = Right wheel velocity of a robot
T = Control parameter
TS = Target Seeking
[ ]11t = Target Angle (Angle of the robot w.r.t. target)
xxvi
( )attU q = The attractive potential function for robot with respect to target
( )rep iU obs = The repulsive potential function for robot with respect to obstacle
TotalU = Total potential influences on the robot
V = Translation velocity of a mobile robot
vel = velocity
Vl = Left real wheel driving velocity
Vr = Right real wheel driving velocity
VF = Very Fast
VN = Very Near
VS = Very Slow
WMR = Wheeled mobile robot
1
1 Introduction This chapter gives an overview of the research work reported in this thesis. First,
the background of the research and the chosen problem domain are outlined.
Then, the objectives of this research work are described. Finally, an outline of the
thesis contents is provided.
1.1 Background
The most significant challenges confronting autonomous robotics lie in the area
of automatic motion planning. Navigation of mobile robots in dynamic
environments needs to cope up with large amounts of uncertainties that are
inherited from natural environments. Thus navigation of mobile robots deals
with large spectrum of different technologies and applications. It draws on some
primitive techniques, as well as some of the most advanced technique.
Investigations in the field of navigation of mobile robot gained an
extensive interest among the researchers since last two decades. This is chiefly
due to the necessity to replace human intervention in dangerous environments
(e.g. nuclear, space, military mission, harmful material handling, interplanetary
explorations etc.) or to develop a helpful automated device for some classical
tasks (e.g. cleaning, supervision, carriage, etc.). In today’s flexible manufacturing
system environment, the autonomous mobile robot plays a very important role.
It is used to transport the parts from one workstation to others, load unload
parts, remove any undesired objects from floors, and so on. Without autonomous
mobile robot, the work stations, the CNC machines, machining centers will only
be scattered and isolated machine tools and they will never become the part of an
automated manufacturing system. It is the mobile robot that connects the
scattered machine tools into an integrated and coordinated unit, which can
2
continuously, automatically and at a low cost, manufacture a variety of parts. So
mobile robot navigation encompasses a number of skills, from high‐level
capabilities such as exploring the surrounding environment, building a global
map of the environment and planning a path towards a specific goal, to the
execution of elementary low level action like avoiding collisions with obstacles.
Numerous methods have been proposed, however, they don’t guarantee a
solution for the mission because of deadlock problem occurrences. The reason is
that the robot does not have a high‐level map reading ability.
The goal of autonomous mobile robotics is to build physical systems that
can navigate purposefully and without human intervention in cluttered
unknown environments. The development of techniques for autonomous robot
navigation is one of the major focusing areas in the current investigation. This
trend is motivated by the current gap between the available technology and the
new application demands, e.g., the current industrial robots have low flexibility
in autonomy. These robots perform pre‐programmed sequences of operation in
highly constrained environment and are not able to operate in new
environments.
Autonomous navigation systems are usually classified in the following
categories according to the characteristics of the environment in which they have
to move: i) structured or known environment, ii) semi structured or partially
known environment and iii) unstructured or unknown environments.
Another classical way is to send the robot to discover its world and define
some landmarks that can be used for navigation. In similar conditions, the robot
relies heavily on its sensors, map making and updating. However, natural
workspaces present a large amount of uncertainties and mapping techniques.
These are time and memory consuming. Hence the need of an intelligent
3
approach such as soft computing techniques can cope with all uncertainties
present in the environment. Soft computing techniques involve computations
related to neural network, fuzzy logic technique, genetic algorithm, simulated
annealing and others. Researchers and practitioners are finding these methods
increasingly useful in various problem domains, not only they are new but also
they have inherent capabilities of handling imprecision and uncertainty with a
reasonable amount of computational complexity. Details of their work are cited
in the literature survey.
One of the earliest mobile robots being Shakey, a vision‐guided
autonomous mobile machine designed at Stanford Institute in 1966 [1]. Research
works have concentrated on the control of individual mobile robots. Within the
last decade, there has been an interest among the scientists and researchers to co‐
ordinate multiple mobile robots. This interest has stemmed both from practical
considerations such as multiple robots are able to handle tasks that individual
machine cannot do, for instance carrying large, bulky and heavy loads and desire
to create artificial systems that mimic nature in particular by exhibiting some of
the primary behaviours observed in human societies.
1.2 Aims and Objectives of this Research
The overall aim of this research is to explore the application of artificial
intelligence techniques to navigate multiple mobile robots. In this thesis, fuzzy
logic, neural network, rule‐based, potential field navigation and simulated
annealing techniques have been used to solve mobile robots navigation
problems. In particular, the research aims to determine whether hybrid
techniques are appropriate for implementing as navigational algorithms for
multiple mobile robots. This type of investigation is justified in this thesis.
4
The main objectives of the present work for navigation of the multiple mobile
robots are:
To compute the heading angle for the mobile robots in terms of left wheel
velocity and right wheel velocity of the robot.
To develop fuzzy logic techniques using different membership functions.
To build up a neural network technique.
To create a hybrid neuro–fuzzy technique.
To develop rule‐base technique.
To build a hybrid system of rule‐based‐neuro‐fuzzy technique.
To develop an efficient potential field method.
To formulate a hybrid potential‐field‐neuro‐fuzzy technique.
To develop potential‐field‐simulated‐annealing‐neuro‐fuzzy technique
for avoidance of local minima during navigation.
Simulation and experimental verifications of the above outlined
techniques are to be carried out.
1.3 Outline of the Thesis
The thesis is divided into eight chapters.
Following the introduction, Chapter‐2 is devoted to a survey of the
literature on mobile robot navigation.
Chapter‐3 discusses kinematic analysis of mobile robots.
5
Chapter‐4 deals with the analysis of a proposed fuzzy logic technique
with three types of membership functions to navigate mobile robots in a
static as well as dynamic environment.
The first part of Chapter‐5 describes a neural network technique and the
second part deals with neuro‐fuzzy technique for navigation of multiple
mobile robots.
Chapter‐6 presents rule‐based techniques, starting with simple rule‐based
navigation technique and concluding with an advanced rule‐based‐neuro‐
fuzzy technique.
Chapter‐7 is divided into two sections. First section deals with navigation
of mobile robots using potential field method. Second section discusses a
hybrid technique i.e., potential‐field‐neuro‐fuzzy technique.
Chapter‐8 confers about the optimisation of potential field method with
use of simulated annealing. Finally the hybrid potential‐field‐simulated‐
annealing‐neuro‐fuzzy technique is used for navigation of mobile robots.
In Chapter‐9 conclusions of the research are summarized and scopes for
further work are suggested.
6
2 Literature Review
This chapter reviews the literature in the area of mobile robot navigation,
focusing on intelligent techniques for navigation control.
2.1 Introduction
A motion planner is an essential component of a robot that interacts with the
environment. Without the motion planner, a human operator has to constantly
specify the motion for the robot. A considerable amount of research has been
done on the development of efficient motion‐planning algorithms. The motion‐
planning problem has been solved in a theoretical sense for the general problem.
Recently the coordinations between mobile robots for obstacle avoidance and
target seeking are carried out by the researchers using various methods. Soft
computing techniques such as fuzzy logic, neural network and genetic algorithm
are considered for expressing the subjective uncertainties in human mind. The
ultimate goal of mobile robotics research is to endow the robots with high
intellectual ability, of which navigation in an unknown environment is achieved
by using on‐line sensory information. A significant amount of research efforts
have been devoted to this area in the past decades few of which are reviewed
below:
2.2 Mobile Robot Navigation
Navigation of a robot is the control of motion from a start point to an end point
in a workspace following a path that is either a curve or a series of jointed
segments. Many researchers in the area of mobile robots navigation have
developed two key approaches. One is functional or horizontal decomposition
7
[2] (Figure 2.1) and the other is behavioural or vertical decomposition [3] (Figure
2.2). The former approach is sequential and involves modelling and planning.
The latter approach is parallel and requires exploration and map building. Both
approaches use many distinct sensory inputs and computational processes.
Decisions such as left turn, right turn, run or stop are made on the basis of those
inputs [4].
Levitt et al. [5] defined the aim of navigation control as providing answers
to the following three questions: (a) Where am I? (b) Where are other places
relative to me? (c) How do I get to other places from here? Question (a) is the
problem of identifying the current location. Questions (b) and (c) relate to avoid
obstacles and move towards the target. To address both issues a mobile robot
must have a way to perceive its environment. Some authors have proposed that
use of single sensor (e.g., sonar, laser, vision and infrared) [6, 7, 8, 9, 10, 11, 12]
where as others have recommended heterogeneous systems using different types
of sensors [13, 14, 15].
Using the environment information perceived at each instant as well as
data from previous instants, a strategy should be pursued to enable the robot to
reach its target position without colliding with obstacles. Researchers have used
many techniques for obstacle avoidance [16, 17, 18, 19]. These techniques,
together with the different sensors employed [20, 21] are reviewed below.
8
Figure 2.1. Flow diagram of the horizontal decomposition method for the navigation of a mobile robot.
SENSING
PERCEPTION
MOTOR CONTROL
MODELLING
PLANNING
EXECUTION
ENVIRONMENT
ACTION
9
Figure 2.2. Flow diagram of the vertical decomposition method for the navigation of a mobile robot.
SENSING ACTION
ENVIRONMENT
BUILDING MAP
EXPLORE
WANDER
AVOID
10
2.3 Kinematic Analysis of Mobile Robots
2.3.1 Introduction
A wheeled mobile robot (WMR) is a wheeled vehicle, which is capable of
autonomous motion. An increasing interest in mobile manipulators observed
recently in the literature has two sources: first, excellent performance
characteristics of mobile manipulators and second, challenging motion planning
and control problems [22, 23, 24, 25, 26, 27].
2.3.2 Kinematic Analysis for Mobile Robot Navigation
Alexander et al. [28] have developed the relationship between the rigid body
motion of a robot and the steering and drive rates of wheels. They have used the
forward and inverse kinematics to a WMR with simple wheels that is
maneuvering over a horizontal plane. Their method guarantees that rolling
without skidding or sliding can occur in robot motion. Muir et al. [29] have also
developed the motion of wheeled mobile robots on flat terrain. Tsuchiya et al.
[30] have discussed motion control of a two‐wheeled mobile robot. They have
designed a controller using kinematic model in which the wheels of the robot do
not skid at all. Mester [31] has dealt with the modelling and control strategies of
the motion of wheeled mobile robots. The model of the vehicle has two driving
wheels and its angular velocities are independently controlled. He has analysed
the vehicle kinematics model and the control strategies using a feed forward
compensator.
Hwang et al. [32] have surveyed the work on gross‐motion planning,
including motion planners for point robots, rigid robots, and manipulators in
stationary, time‐varying, constrained, and movable‐object environments. They
have explained general issues in motion planning. Chakraborty et al. [33] have
11
studied the problem of kinematic slip for mobile robots moving on uneven
terrain. The simulation results of their developed technique show that the three‐
wheeled mobile robot with torus shaped wheels and passive joints can negotiate
uneven terrain without slipping.
2.4 Fuzzy Logic Technique
2.4.1 Introduction
Fuzzy control concepts are useful in both global and local path planning tasks for
autonomous mobile objects. Humans have a remarkable capability to perform a
wide variety of physical and mental task without any explicit measurements or
computations. Examples of everyday tasks are, driving in city traffic, parking a
car, and cleaning of house. In performing such familiar tasks, humans use
perceptions of time, distance, speed, shape, and other attributes of physical and
mental objects. Perceptions are described by propositions drawn from a natural
language, in which the boundaries of perceived classes are fuzzy. It is highly
desirable to capture the expertise of a human mind and to utilise the
knowledge to develop autonomous navigation strategies for mobile robots. Fuzzy
logic provides a mean towards accomplishing this goal. Fuzzy logic provides a
formal methodology for representing and implementing the human expert’s
heuristic knowledge and perception‐base actions. Using the fuzzy logic
framework, the attributes of human reasoning and decision‐making can be
formulated by a set of simple and intuitive IF (antecedent)–THEN (consequent)
rules, coupled with easily understandable and natural linguistic representations.
2.4.2 Fuzzy Logic Technique for Mobile Robot Navigation
The automatic motion‐planning problem in robotics and computer aided
manufacturing has been studied extensively. Although planning a sequence of
12
motions to bring together parts in a specific configuration has become essential
for several applications, the traditional solutions for path planning have failed
for complicated environments as they result computationally infeasible and
restricted to their performance, Latombe [34] and Fraichard [35]. Motivated by
Zadeh [36] and explored by Mamdani et al. [37] and Kickert et al. [38], many
researchers have used fuzzy logic techniques successfully in numerous control
systems such as control of mobile robot navigation. Examples of work relating to
fuzzy logic for the navigation of mobile robot are described below:
Lacroix et al. [39] have presented a complete autonomous system which is
capable to perform autonomous navigation in a natural, unstructured and totally
unknown environment. The system is endowed with several complex
capabilities: environment modelling, localization, trajectory planning and
exploring strategies. They have executed the navigation behaviour based on
terrain quality. The terrain is classified in four distinct categories: flat, uneven,
obstacle, and unknown. Goldberg et al. [40] and Sing et al. [41] have computed
an analytical traversability measure for the terrain, based on stereo range data.
Roll, pitch, and roughness of terrain cells are estimated from the viewable terrain
image. Roll and pitch are calculated by using a least squares method to fit a plane
to the range data, and roughness is computed as the residual of the fit. These
measures are normalized in the range of [0, 1] and a goodness value is
determined, based on the minimum value of the three parameters. A path finder
then evaluates the traversability along predetermined candidate paths by taking
a weighted combination of the goodness and certainty values. Langer et al. [42]
have focused on the development of a navigation system that generates
recommendations for vehicle steering, based on the distribution of untraversable
terrain regions. A new design for behaviour‐based navigation of field mobile
13
robots on challenging terrain using a fuzzy logic approach and a novel measure
of terrain traversability have been developed by Seraji et al. [43].
Li et al. [44] have designed and implemented an autonomous car‐like
mobile robot (CLMR) control system, where the set up consists of the host
computer, communication module, CLMR, and vision system. They have used
fuzzy garage‐parking control (FGPC) and fuzzy parallel‐parking control (FPPC)
to control the steering angle of the CLMR. Li et al. [45] have used the concepts of
car maneuvers, fuzzy logic control (FLC), and sensor‐based behaviours to
implement the human‐like driving skills by an autonomous car‐like mobile
robot. They have used four kinds of FLCs: i) fuzzy wall‐following control, ii)
fuzzy corner control, iii) fuzzy garage‐parking control, and iv) fuzzy parallel‐
parking control, which are synthesized to accomplish the autonomous fuzzy
behaviour control (AFBC). They have presented computer simulation results to
illustrate the effectiveness of their proposed control schemes and demonstrated
the feasibility in practical car maneuvers. Baturone et al. [46] have described the
design and implementation of a fuzzy control system for car‐like autonomous
vehicle. They have addressed problem for diagonal parking in a constrained
motion. Ohkita M. et al. [47] have controlled an autonomous mobile robot for the
flush parking. They have used fuzzy rules those are derived from the modelling
driving actions of a car. Zhao et al. [48] have developed and experimentally
demonstrated a robust automatic parallel parking algorithm for parking in
compact spaces. They have designed novel fuzzy logic controllers for each step
of the maneuvering process. The controllers are first demonstrated by simulation
using the kinematic model of a skid steering autonomous ground vehicle (AGV).
The drive control of an autonomous mobile robot is a new approach to
recognize and adapt to the surrounding environment. Maeda et al. [49] have
14
developed fuzzy control based on forecast learning. They have shown their
results in simulation as well as experiment mode to drive the control of the robot.
An approach for building multi‐input and single‐output fuzzy models has been
proposed by Joo et al. [50]. They have applied their technique to construct a
fuzzy model for the navigation control of a mobile robot. Montaner et al. [51]
have designed a fuzzy controller for autonomous mobile robot navigation to
reduce the travel time from an initial to final position. Their technique was used
on an experimental mobile robot, which uses a set of seven ultrasonic sensors to
perceive the environment. Simulation and experimental results show that their
method can be used satisfactorily on a mobile robot moving on unknown static
terrains. An evolutionary learning of robot behaviours has been designed by
Iwakoshi et al. [52] for Fuzzy Classifier System (FCS). They have presented eight
different conditions in simulation to validate their technique. Li et al. [53] have
designed a real‐time fuzzy target tracking control scheme for autonomous
mobile robot by using infrared sensors. They have used infrared transmitters on
the target and reflective sensors on the tracker mobile robot for target tracking
control. They have shown their results in simulation mode. Xu et al. [54] have
presented real‐time fuzzy reactive control for automatic navigation of an
intelligent mobile robot in an unknown and changing environment. The reactive
rule base governing the robot behaviour is synthesized corresponding to the
various situations defined by the instant robot motion, environment and target
information. Simulation results have been presented by the authors to validate
their approach. Their techniques have not been investigated for target seeking
and multiple mobile robot navigation.
A navigation method was designed by Toda et al. [55], which employs
sonar‐based mapping of crop rows and fuzzy logic technique to control steering
15
for a wheeled mobile robot in an agricultural environment. The problem of
motion and control law design for a mobile robot have been developed by
Rigatos et al. [56] for a partially unknown environment with stationary obstacles
and moving objects. The authors have established the stability of their proposed
method. Das et al. [57] have assumed a control structure that makes possible the
integration of a kinematic controller and an adaptive fuzzy controller for
trajectory tracking for nonholonomic mobile robots. The system uncertainty,
which includes mobile robot parameter variation and unknown nonlinearities, is
estimated by a fuzzy logic system (FLS). The real‐time control of mobile robots is
achieved through the online tuning of FLS parameters. Computer simulations as
well as experimental results are presented which confirm the effectiveness of the
proposed tracking control law. Lee et al. [58] have proposed a fuzzy algorithm to
navigate a mobile robot from a given initial to a desired final configuration in an
unknown environment filled with obstacles. The mobile robot is equipped with
an electronic compass and two optical encoders for dead‐reckoning, and two
ultrasonic modules for self‐localization and environment recognition. From the
readings of sensors at every sampling instant, the proposed fuzzy algorithm will
determine the priorities of thirteen possible heading directions. Then the robot is
driven to an intermediate configuration along the heading direction that has the
highest priority. The navigation procedure will be iterated until a collision‐free
path between the initial and the final configurations is found. To show the
feasibility of the proposed method, in addition to computer simulation,
experimental results are also demonstrated by the authors. An extensive fuzzy
behaviour‐based architecture for the control of mobile robots in a multiagent
environment has been formulated by Vadakkepat et al. [59]. The architecture is
implemented on a team of three soccer robots performing different roles
interchangeably.
16
Yang et al. [60] have studied the goal‐unreachable problems found in
fuzzy logic‐based algorithms for mobile robot navigation systems. Two
algorithms based on sensory information are developed to address problems
with Goal‐Unreachable with Large Obstacles (GUWLO) and Goal‐Unreachable
with Nearby Obstacles (GUWNO). The GUWLO problem occurs when the
absolute value of the target angle is large and the directions to the left (or right)
are completely blocked. The GUWNO problem arises because of the repulsive
influence from obstacles close to the goal position. They have presented
experimental results to demonstrate the effectiveness of the resulting fuzzy
navigation system and its improved performance over conventional fuzzy logic
navigation algorithms. Kodagoda et al. [61] have proposed a control structure for
uncoupled longitudinal and lateral control of an autonomous guided vehicle.
Longitudinal control is achieved via two uncoupled fuzzy controllers, viz., a
fuzzy drive controller and a fuzzy braking controller switched appropriately by a
supervisory controller. Fukuda et al. [62] have proposed an integrated structure
for intelligent robotic systems based on a fuzzy controller. They have focused
mainly on the perception capability based on the sensory network. Castellano et
al. [63, 64] have presented two methods for automatically extracting the set of
fuzzy rules for a reactive fuzzy controller from examples supplied by a human
operator executing the same task. They have applied their technique to build a
reactive wall‐follower for navigation of a TRC Labmate mobile robot. Benreguieg
et al. [65] have used navigator having two fuzzy controllers, one is angular
another is linear speed. Their navigation function consists of obstacle avoidance
and reacts with the shortest response time. They have demonstrated their
techniques on two distinct autonomous mobile robots. Goodridge et al. [66] have
presented modular fuzzy control architecture and an inference engine, which are
used to control in complex systems. They have successfully used a multilayered
17
fuzzy behaviour fusion based reactive control system on an autonomous mobile
robot, MARGE. Miyata et al. [67] have utilised fuzzy control theory for
controlling an autonomous mobile robot for a parallel parking. They have
reduced the dead angle of their mobile robot DREAM‐1 for parallel parking. Yen
et al. [68] have used fuzzy logic to extend Payton and Rosenblatt’s behavioural
architecture for mobile robot control. By using fuzzy rules in Payton and
Rosenblatt’s behaviours the mobile robot controller became simple, extensible
and understandable and can cope up with unknown obstacles in a dynamic
environment. A sensor‐based navigation method utilising the fuzzy logic and
reinforcement learning has been presented by Beom et al. [69] for complex
environments. They have shown effectiveness of their method with a force field
method. Their proposed method enables the mobile robot to navigate through
complex environment where a local minimum is present. Beaufrere et al. [70]
have solved the problem of navigation for a single mobile robot in a totally
unknown environment using fuzzy logic. They have shown their results in
simulation as well as in experimental validation on a single mobile robot.
Fu et al. [71] have described about autonomous mobile robot navigating in
an unknown environment. The difficulty is avoiding unexpected objects on its
way to the goal. They have presented a new parallel double‐layered fuzzy
control system for an autonomous mobile to avoid static or dynamic objects in
uncertain environments. They have shown simulation and experimental results
on the actual robot so that the proposed method can be efficiently applied to
robot navigation in complex and unknown environment. A fuzzy temporal
control system for the guidance of a robot in landmark detection and simulated
dynamic environments has been described by Carinena et al. [72] and Mucientes
et al. [73]. By using their technique the moving object approaching the robot is
18
not subjected to any type of restriction in its movements, and able to vary its
velocity and direction at any moment. A fuzzy logic‐based real‐time navigation
controller is described by Liu et al. [74]. Their controller combines the path
planning and trajectory following as an integrated and coordinated unit so that it
executes tasks such as docking and obstacle avoidance on‐line. Pratihar et al. [75]
have developed a collision‐free path for multiple robots using genetic‐fuzzy
systems.
Aguirre et al. [76] have briefly presented the architecture that is focused on the
design, coordination and fusion of the elementary behaviours. The design was
based on regulatory control using fuzzy logic control and the coordination was
defined by fuzzy rules. Tanaka et al. [77] have presented backing control of
computer‐simulated mobile robots with multiple trailers by fuzzy modelling and
control. They have dealt with two types of robots: one robot having five trailers
and the other with ten trailers. They have used Takagi‐Sugeno fuzzy model for
control of robots. Demirli et al. [78] have introduced a new fuzzy logic‐based
approach for dynamic localization of mobile robots. They have used sonar data
collected from a ring of sonar sensors mounted around the robot. The angular
uncertainty and radial imprecision of sonar data are modelled by possibility
distributions. Combining information from adjacent sensors reduces the
uncertainty in sonar readings. The reduced models of uncertainties are used to
construct a local fuzzy composite map of the environment. The local fuzzy
composite map is fitted to the given global map of the environment to identify
robot’s location. Their proposed algorithm is implemented on a mobile robot and
the results are reported. Mucientes et al. [79] have designed an automated fuzzy
controller using genetic algorithms for the implementation of the wall‐following
behaviour in a mobile robot. The algorithm is based on the Iterative Rule
19
Learning (IRL) approach. Their technique has no restrictions placed neither in
the number of linguistic labels nor in the values that define the membership
functions. Khatib et al. [80] have used a data‐driven fuzzy approach for solving
the motion‐planning problem of a mobile robot in the presence of moving
obstacles. The approach consists of devising a general method for the derivation
of input–output data to construct a fuzzy logic controller (FLC) off‐line. The FLC
is constructed based on the use of previously developed data, which can be used
on‐line by the robot to navigate among moving obstacles. They have compared
their results with those obtained by fuzzy‐genetic and another hybrid and data‐
driven design. Abdessemed et al. [81] have presented the theoretical
development of a complete navigation problem of an autonomous mobile robot.
The situation for which the vehicle tries to reach the endpoint is treated using a
fuzzy logic controller. They have solved the problem of extracting the optimised
IF–THEN rule by using an evolutionary algorithm. They have developed a new
approach based on fuzzy concepts to avoid any collision with the surrounding
environment when the latter becomes relatively complex. Simulation results
show that the designed fuzzy controller achieves effectively any movement
control of the vehicle from its current position to its target and without any
collision. Godjevec [82] has outlined some linguistic rules for navigation of a
mobile robot. He used fuzzy logic technique to implement the rules. He has
shown numerical examples for the navigation of a single mobile robot in a
simple environment condition.
20
2.5 Neural Network Technique
2.5.1 Introduction
A neural network is a parallel‐distributed processor comprising several simple
computational units known as neurons [84].
Figure 2.3 shows the model of a neuron. A neuron model can be identified by
three basic elements.
Figure 2.3. Model of a neuron.
A set of synapses or connecting links, each of which is characterised by a
weight or strength of its own. Specifically, a signal xj at the input of
synapse ‘j’ connected to neuron ‘k’ is multiplied by synaptic weight wkj.
An adder for summing the input signals after they have been weighted by
the respective synapses of the neuron.
An activation function is used for transforming the result of the adder and
limiting the amplitude of the output of a neuron. Generally, the
Wk
Wk1
Wk2
∑ ( )ϕ ⋅
X1
kyku
X2
Xp
Output
Activation function
Summing junction
Input Signals
21
normalized amplitude range of the output of a neuron is given as the
closed unit interval [0, 1] or alternatively [‐1, 1].
In mathematical terms, the following pair of equations can describe the operation
of a neuron ‘k’:
p
k kj jj = 1
u = w x∑ (2.1)
( )k ky = uϕ (2.2)
Where 1 2 px , x ,........, x are the input signals, p is the number of input signals,
k1 k2 kpw , w ,.............., w are the synaptic weights of neuron ‘k’, ( )ϕ ⋅ is the activation
function and ky is the output signal of the neuron.
The activation function, denoted by ( )ϕ ⋅ , defines the output of a neuron in terms
of the activity level at its input. Three types of activation functions, which are
commonly used, are shown in Figure 2.4.
A neural network resembles the brain in two respects:
i) Knowledge is acquired by the network through a learning process.
ii) Inter‐neuron connection strengths known as synaptic weights are used
to store the knowledge.
The procedure used to perform learning is called a learning algorithm, the
function of which is to modify the synaptic weights of the network in an orderly
fashion so as to attain a desired design objective.
The use of neural networks offers the following useful properties:
In a neural network, modification of the synaptic weights and therefore
learning can be carried out with training examples. In most cases, a
22
training set is repeatedly presented to the neural network and the synaptic
weights of the network are modified so as to minimise the difference
between the desired response and the actual response (in the case of
supervised learning), or until the output of the network has stabilised (in
the case of unsupervised learning).
A neural network trained to operate in a specific environment can deal
with minor changes in the operating environmental conditions. Thus,
neural networks are said to have the ability to generalise.
A neural network has the potential to be inherently fault tolerant in the
sense that its performance tends to degrade slowly under adverse
operating conditions [85].
23
Figure 2.4. Three common activation functions.
( )ϕ v =
≥1 if v 0
0 if v < 0
a) Threshold function
(0,0) v
(0,1) ( )ϕ v
( )ϕ v
(-0.5,0) (0,0) (0.5,0) v
( )ϕ v
(0,1)
( )ϕ v =
≥
+
≤
11 if v 2
1 ‐1v 0.5 if > v > 2 2
‐10 if v 2
b) Ramping function
(0,1)
(0,0.5)
(0,0) v
( )( )
ϕ 1v = 1 + exp ‐v
c) Sigmoid function
24
2.5.2 Neural Network Technique for Mobile Robot Navigation
Many researchers have used neural networks for the navigation of mobile robots.
Literatures related to their work are given in this section.
Tani et al. [86, 87, 88, 89] have discussed a novel scheme for sensory‐based
navigation of a mobile robot using neural network. They have formulated the
problem of goal‐directed navigation as an embedding problem of dynamical
systems. Millan [90], Castellano et al. [91], and Dubrawski et al. [92] have used
neural network for navigation of mobile system.
Gu et al. [93] have presented a new path‐tracking scheme for a car‐like
mobile robot based on neural predictive control. A multi‐layer back‐propagation
neural network is employed to model non‐linear kinematics of the robot. The
neural predictive control for path tracking is a model‐based predictive control
based on neural network modelling, which can generate its output in terms of
the robot kinematics and a desired path. The multi‐layer back‐propagation
neural network is constructed by a wavelet orthogonal decomposition to form a
wavelet neural network that can overcome the problem caused by the local
minima when training the neural network. They have provided simulation
results for the modelling and control to justify their proposed scheme.
Yang et al. [94, 95, 96] have proposed an efficient neural network method for
real‐time motion planning of a mobile robot and a multi‐joint robot manipulator
with safety consideration in a non‐stationary environment. The optimal robot
motion they have planned through the dynamic neural activity landscape of the
biologically inspired neural network without any prior knowledge of the
dynamic environment and without any learning procedures. The effectiveness
and the efficiency have been demonstrated through simulation and comparison
studies. A step towards a completely automated approach to mobile robot
25
navigation was made by Ster [97]. He has extended the approach to learning a
topological description of the environment with recurrent neural networks. In his
extended approach, both the reactive behaviour and the criterion for the decision
points are considered. Results of experiments conducted with a simulated mobile
robot equipped with proximity sensors and a color video camera shows the
applicability of their proposed approach. Weber et al. [98] have demonstrated
that purely neural network based vision and control algorithms can successfully
be applied to a real robotic docking problem. They have presented a solution
based solely on neural networks: object recognition and localisation is trained,
motivated by insights from the lower visual system. After training their robot
can approach the table at the correct position and in a perpendicular angle.
Janglova [99] has dealt with a path planning and control of an autonomous robot,
which move, safely in partially structured environment. They have described
their approach for solving the motion‐planning problem in mobile robot control
using neural network‐based technique. Their method of the constructing a
collision‐free path for moving robot among obstacles is based on two neural
networks. The first neural network is used to determine the “free” space using
ultrasound range finder data. The second neural network “finds” a safe direction
for the next robot section of the path in the workspace while avoiding the nearest
obstacles. He presented simulation examples of generated path with his
proposed technique. Lebedev et al. [100] have proposed a new type of neural
network—the Dynamic Wave Expansion Neural Network (DWENN)—, which is
capable of calculating dynamic distance potentials, useful for route generation in
time‐varying environments. For the DWENN model, no priori knowledge of the
environment is needed, as well as no learning process is required to perform
path generation. Since the network is only locally connected, the computational
complexity grows linearly in the number of neurons in the network field. Their
26
model is parameter‐free, computationally efficient, and its complexity does not
explicitly depend on the dimensionality of the configuration space. Saga et al.
[101] have proposed a self‐supervised learning method. The simulation results
proved that their self‐supervised learning and the prediction networks are
effective. Gaudiano et al. [102] have introduced a neural network mobile robot
controller (NETMORC). Their controller is based on previously developed neural
network models of biological sensory‐motor control, autonomously learns the
forward and inverse odometry of a differential drive robot through an
unsupervised learning‐by‐doing cycle. The controller is able to adapt in response
to long term changes in the robot’s plant, such as a change in the radius of the
wheels. Fierro et al. [103] have presented control structure that makes possible
the integration of a kinematic controller and a neural network (NN) computed‐
torque controller for nonholonomic mobile robots. A combined kinematic/torque
control law is developed using backstepping and stability is guaranteed by
Lyapunov theory. This control algorithm is applied to the three basic
nonholonomic navigation problems: tracking a reference trajectory, path
following, and stabilization about a desired posture. Gutierrez‐Osuna et al. [104]
have presented a probabilistic model of ultrasonic range sensors using
backpropagation neural networks trained on experimental data. The sensor
model provides the probability of detecting mapped obstacles in the
environment, given their position and orientation relative to the transducer. The
detection probability is used to compute the location of an autonomous vehicle
from those obstacles that are more likely to be detected. Their neural network
model is more accurate than other existing approaches, since it captures the
typical multilobal detection pattern of ultrasonic transducers. Their model can
help a robot choose the most reliable geometric beacons for localization. They
performed two experiments, which proved the multilobal detection pattern of
27
the transducer. By modelling the different lobes, their model is more accurate
than Gaussian distributions. Barshan et al. [105] have investigated the processing
of sonar signals using neural networks for robust differentiation of commonly
encountered features in indoor robot environments. Their neural network
differentiates more targets with higher accuracy, improving on previously
reported methods. They have used unsupervised learning algorithms to make
the classification process more robust to changes in environmental conditions.
Giaquinto et al. [106] have presented a cellular neural network (CNN) for real‐
time stereo vision, useful as a passive optical range finder for autonomous robots
and vehicles. They have reported experimental results with the CNN
demonstrating the performance on robot application. Kositsky et al. [107] have
used neural tissue to execute predetermined functions and developed a research
tool, which includes the brainstem of a lamprey and a two‐wheeled robot
interconnected in a closed loop. Quoy et al. [108] have used dynamical neural
networks based on the neural field formalism for the control of a mobile robot.
With their formulation the robot able to navigates in an open environment and
also plan a path for reaching a particular goal. The neural net based feed forward
controller has been proposed by Koh et al. [109] and applied to the trajectory
tracking control of a mobile robot. Their neural network was a multi‐layered
structure consisting of four input nodes and two output nodes. They have shown
their effectiveness of their proposed control scheme through simulation. Kar et
al. [110] have described a simple neuron‐based adaptive controller for trajectory
tracking of nonholonomic mobile robots without velocity measurements. The
controller is based on structural knowledge dynamics of the robot and the
odometric calculation of robot position only. They have taken the wheel actuator
dynamics into account. An approximation network approximates nonlinear
function involving robot dynamic parameters so that no knowledge of those
28
parameters is required. The real‐time control of mobile robot is achieved through
the on‐line learning of the approximation network. They have described both the
simulation and experimental results in detail. Pal et al. [111] have used feed
forward neural net to navigate a mobile robot. They have validated their
technique in simulation as well as in experimental mode. A motion controller
based on an inverse neural network controller and tracking controller using
backstepping technique was proposed by Zhang et al. [112]. They have shown
experimental results on a low‐quality mobile robot to validate the neural
network technique.
2.5.3 Neuro-Fuzzy Technique for Mobile Robot Navigation
Fuzzy logic system promises an efficient way for obstacle avoidance. They are
able to treat uncertain and imprecise information; they make use of knowledge in
the form of linguistic rules. Their drawbacks are caused mainly by the difficulty
of defining accurate membership functions and lack of a systematic procedure
for the transformation of expert knowledge into the rule base. However, it is
difficult to maintain the correctness, consistency, and completeness of a fuzzy
rule base being constructed and tuned by a human expert. Reinforcement
learning method is capable of learning the fuzzy rules automatically. However, it
incurs heavy learning phase and may result in an insufficiently learned rule base
due to the curse of dimensionality. Neural networks have the ability to learn.
Therefore supervised learning method is used to determine the membership
functions for the input and output variables simultaneously.
Marichal et al. [113] and Acosta et al. [114] have proposed a neuro‐fuzzy
strategy to drive a mobile robot. Their approach is capable of extracting
automatically the fuzzy rules and the membership functions in order to guide a
mobile robot. The necessary information to obtain the fuzzy rules is provided by
29
a set of trajectories. These trajectories are obtained from a human guidance, such
that the mobile robot avoids the different obstacles. Their proposed neuro‐fuzzy
strategy consists of a three layer neural network along with a competitive
learning algorithm. They have implemented their technique in simulation and
obtained satisfactory results. Ma et al. [115] have presented a new fuzzy neural
network (FNN) according to the characteristic of the self‐reaction of a mobile
robot in an unknown environment. Their technique can be used efficiently to
control a mobile robot based on different sensing information. Simulation results
on the three DOF mobile robots demonstrated the advantages and the validity of
their proposed method. Lee [116] has used a neural network for behaviour
decision controller. The input of the neural network is decided by the existence
of other robots and the distance from other robots. The output determines the
directions in which the robot moves. The connection weight values of this neural
network are encoded as genes, and the fitness individuals are determined using
a genetic algorithm. The fitness values imply how much group behaviours fit
adequately to the goal and can express group behaviours. They have validated
the system through simulation.
Er et al. [117,118] have used Generalized Dynamic Fuzzy Neural Networks
(GDFNN) based controller successfully implemented on the Khepera II mobile
robot. By virtue of the GDFNN learning algorithm, not only the parameters of
the controller can be adjusted, but also the structure of the controller can be self‐
adaptive. The experiment shows that the developed controller has a
parsimonious structure and the performance of the system is superior to the
conventional fuzzy logic approach. Hui et al. [119] have developed a Neuro‐
fuzzy technique to determine time‐optimal, collision‐free path of a car like
mobile robot navigating in a dynamic environment. A fuzzy logic controller
(FLC) is used to control the robot and the performance of the FLC is improved by
30
using three different Neuro‐Fuzzy (NN‐FLC) approaches. The performances of
these Neuro‐Fuzzy approaches are compared among themselves and with those
of three other approaches, such as default behaviour, manually‐ constructed FLC
and potential field method, through computer simulations. Watanabe et al. [120,
121] have described a fuzzy‐Gaussian neural network (FGNN) controller by
applying a Gaussian function as an activation function. They use a specialized
learning architecture so that membership function can be tuned without using
expert’s manipulated data. The effectiveness of their proposed method is
illustrated by performing the simulation of a circular or square trajectory
tracking control.
Ng et al. [122] have applied neural integrated fuzzy controller (NiF‐T) to
control the robot motion, steering angle, heading direction, and speed. They have
used five rules to train the wall following NiF‐T, while nine rules are used for the
hall centering. They have used their architecture to control a difficult nonlinear
dynamic problem. Araujo et al. [123] have applied the parti‐game learning
approach to navigate a mobile robot in unknown environments. Their approach
based on the application of the fuzzy ART neural architecture for sensor‐based
on‐line map building. They have shown their results of experiments
demonstrated the application of the described methods to a real mobile robot.
Moon et al. [124] have presented a novel block‐based neural network (BBNN)
model and its application to pattern classification and mobile robot control
problems. A genetic algorithm simultaneously optimises the structure and
weights of BBNN. Their optimised BBNN is able to solve practical problems as
pattern classification and mobile robot control. Ye et al. [125] have presented a
neural fuzzy system with mixed learning algorithm where supervised learning
method is used to determine the input and output membership functions
31
simultaneously and reinforcement learning algorithm is employed to fine tune
the output membership functions, therefore, a sufficient and efficient learning is
achieved. From their performance algorithm, the following points are depicted: i)
it is able to achieve a path reasonably close to the shortest path, ii) it has smooth
motion, and iii) it is very robust to sensor noise. Pulasinghe et al. [126] have
proposed a fuzzy‐neural network methodology for controlling machines using
spoken language commands with the intention of i) interpreting natural
language words with fuzzy implications and ii) screening out‐of‐vocabulary
words, which gives the ability to converse freely without restrictions. Cavalcanti
et al. [127] have applied genetic algorithms, neural networks, and nanorobotics
concepts to the problem of control design for nanoassembly automation and its
application in medicine. They have elaborated and simulated a virtual
environment focused on control automation for nanorobotics teams that perform
a large range of tasks and positional assembly manipulation in a complex three‐
dimensional workspace. Ro et al. [128] have proposed a neural‐fuzzy hybrid
control approach for controlling a mobile robot that can avoid an unexpected
obstacle in a navigational space. They have used neural controller for global
moving information in the heuristically determined navigational space. On the
other hand, fuzzy controller is used by them to adjust the moving information
given from the neural controller. Daxwanger et al. [129] have presented an
approach for acquisition and transfer of an experienced driverʹs skills to an
automatic parking controller. Their controller processes the visual input
information from a video sensor and generates the corresponding steering
commands. They have used fuzzy hybrid control architecture in which the
controller is configured as a combination of an artificial neural network and a
fuzzy network. They have experimentally validated their control architectures
with a mobile robot. Dubrawski et al. [130] have used Fuzzy‐ART self‐organizing
32
neural classifier to adaptive categorization of the perceptual space of a mobile
robot. They have developed a learning system for reactive locomotion control in
an unknown, cluttered environment. Experimental results show that their
technique is efficient.
Li et al. [131] has presented neuro‐fuzzy systems for intelligent robot
navigation and control under uncertainty. He has used neural network to
process range information for understanding distribution of obstacles in local
regions; while fuzzy sets and fuzzy rules are used to formulate reactive
behaviours quantitatively and to coordinate conflicts and competitions among
multiple behaviours efficiently. The simulation results show that, using his
system, navigation performance in complex and unknown environments can be
improved. Godjevac et al. [132] have discussed an adaptive fuzzy system which
has been used successfully in a control system for robot obstacle avoidance and
wall following. Then they have considered a radial basis function neural network
and shown that a modified form of this network is identical with the fuzzy
controller. This is similar to a neuro‐fuzzy controller. They have presented
numerical examples to demonstrate the validity of their approach to control of a
mobile robot. Tunstel et al. [133] have used three hybrid fuzzy control schemes
for robotics applications. The first scheme concentrates on a control architecture,
which incorporates fuzzy logic theory into the framework of behaviour control
for mobile robot navigation. The second scheme incorporates Genetic Algorithms
in a learning scheme to adapt to various environmental conditions. The third
scheme concentrates on a methodology that uses a Neural Network (NN) to
adapt a fuzzy logic controller (FLC) in manipulator trajectory following tasks.
Their proposed hybrid scheme has a learning mechanism by which it can adapt
to changing operating conditions. Bourdon et al. [134] have presented solutions
33
by using Artificial Intelligent Techniques (Fuzzy Logic, Neural Networks) to
solve complex mobile robotics problems. They have validated their approaches
on real robots. Rusu et al. [135] have used a neuro‐fuzzy controller for controlling
a robot. They have demonstrated an experimental neuro‐fuzzy controller for
sensor‐based mobile robot navigation in indoor environments. The autonomous
mobile robot uses infrared and contact sensors for detecting targets and avoiding
collisions. Mbede et al. [136] have used intelligent motion control strategy that
makes possible the integration of fuzzy obstacle avoidance, multisensor‐based
motions, and robust recurrent neural network control. The simulation results,
validate under real conditions, clearly demonstrate that their proposed strategy
was an effective approach. Pratihar et al. [137] have demonstrated a genetic‐
fuzzy approach for solving the motion‐planning problem of a mobile robot in
presence of moving obstacles. In the genetic‐fuzzy approach, obstacle free paths
are found locally by using the fuzzy logic technique, where optimal scaling factor
for condition and action variables are found using genetic algorithms. Hegazy et
al. [138] have presented a new neuro‐fuzzy controller which controls the
navigation system of a mobile robot to move safely in an unknown environment
in presence of obstacles. Nefti et al. [139] have dealt with the application of a
neuro‐fuzzy inference system to navigate mobile robot in an unknown or
partially known environment. They have considered three elementary robot
tasks: following a wall, avoiding an obstacle and running towards the goal. Each
module acts as a Sugeno–Takagi fuzzy controller where the inputs are the
different sensor information and the output corresponds to the orientation of the
robot. They have shown their results in experimental mode to navigate a mobile
robot in unknown or partially unknown environment. Tsoukalas et al. [140]
have presented a neuro‐fuzzy methodology for motion planning of semi‐
autonomous mobile robots. Fuzzy descriptions are used for the robot to acquire a
34
repertoire of behaviours from an instructor, which it may subsequently refine
and recall using neural adaptive techniques. Their methodology has been
successfully tested with a simulated robot performing a variety of navigation
tasks travel from some start to target point without colliding with obstacles
present in its path. Althoefer et al. [141] have reported navigation system for
robotic manipulators. Their control system combines a repelling influence related
to the distance between manipulator and nearby obstacles with the attracting
influence produced by the angular difference between actual and final
manipulator configuration to generate actuating motor commands. They have
used fuzzy logic for the implementation of these behaviours which leads to a
transparent system that can be tuned by hand or by a learning algorithm. The
proposed learning algorithm, based on reinforcement learning neural network
techniques, can adapt the navigator to the idiosyncratic requirements of
particular manipulators, as well as the environments they operated in. Their
method is suitable for navigation of a single mobile robot.
2.6 Rule Based Technique
2.6.1 Introduction
If‐then rules are one of the most common forms of knowledge representation
used in expert systems. Systems employing such rules as the major
representation paradigm are called rule‐based systems. One of the first popular
computational uses of rule‐based systems was the work by Newell et al. [142]. In
their work the rules were used to model human problem solving behaviour.
However the mathematical model of production systems was used earlier by
Post [143] in the domain of symbolic logic. Work on rule‐based systems has been
motivated by two different objectives. One of these is psychological modelling.
35
The aim of this modelling is to create programs that embody a theory of human
performance of simple tasks and reproduce human behaviour. There are number
of theories, which use rules as their basis and try to explain human behaviour.
The most common are SOAR Rosenbloom [144] and ACT Anderson [145]. The
other objective aims at creating expert systems, which exhibit competent problem
solving behaviour in some domain. Therefore the navigation of mobile robots
can be solved by rule‐based technology. Researchers use rule base because of
their i) homogeneity ii) simplicity iii) independence and iv) modularity.
In a non‐deterministic environment, autonomous control of mobile robot
is a complex problem involving planning, perception, navigation and motion
control. An adequate theory of optimal analytical control of such systems does
not exist presently. Efforts have been made by the researchers by using rule‐
based controller to solve the mobile robot motion control problems. In this
control scheme, the relationships between the states of the robot, environment
and control actions are transformed into the form of rules of control, that
prescribe the action required to change the world description from a present
state to a desired state.
2.6.2 Rule based Technique for Mobile Robot Navigation
Many researchers have used rule‐based technique for different problems.
Literatures related to their work are discussed in this section.
Takagi et al. [146] have proposed rule base method to make a mobile robot
to do a meaningful job i.e., pushing a box from one place to another place. By
observation they have introduced a hierarchical structure in rules. The rules they
have introduced are to maintain the angle between the robot and the box. Other
rules are considered only when the angle is sufficiently small. The total number
of rules they have used in their experiment is 120. They have constructed an
36
experimental robot to use their rule base technique for doing meaningful job.
Gaeta et al. [147] have used rule‐based method for determining age groups. It has
been suggested by them that, there is an age‐related decline in the efficacy of
integrating multiple sources into a single auditory stream.
Tunstel et al. [148] have discussed operational safety and health
monitoring of critical matters of autonomous field mobile robots (e.g. planetary
rovers operating on challenging terrain). de Souza et al. [149] have proposed a
reusable architecture for rule‐based systems described through design patterns.
The aim of these patterns is to constitute a design catalog that can be used by
designers to understand and create new rule‐based systems, thus promoting
reuse in these systems. Dietrich et al. [150] have discussed a general architecture
for rule‐based agents and described the method to realise the navigation control
with the help of semantic web languages. McIntosh et al. [151] have described a
simple ‘proof of concept’ rule‐based system. They have developed a technique to
contribute methodologically the management‐oriented modelling of vegetated
landscapes. They have not specifically used rule‐based technique for navigation
of mobile robot.
Altaira is a rule‐based visual language used by Pfeiffer et al. [152, 153, 154]
is intended for the control of small mobile (e.g. LEGO) robots. A method of
adapting an environmental conditions using rule base is introduced by Fei et al.
[155]. Their method, based on curve fitting, has been explained using the
example of a rule‐based mobile robot control. Gilmore et al. [156] have presented
a rule‐based algorithm to automatically predict the dynamic behaviour of feeders
and manipulator pushing operations. Bonner et al. [157, 158, 159] have used a
hierarchy of rules, based on the concept of a free space cell, to find heuristically
37
satisfying collision‐free paths in a structured environment for a robot. They have
shown their results for single robot.
2.7 Potential Field Navigation Technique
2.7.1 Introduction
The potential field technique is widely used for autonomous mobile robot path
planning due to its elegant mathematical analysis and simplicity. Potential Field
Method (PFM) is rapidly gaining popularity in navigation and obstacle
avoidance applications for mobile robots because of its elegance. A robot moving
in accordance with Newton’s laws in a potential field will never hit the obstacle.
The potential field approach uses a scalar function called the potential function.
It has a minimum value, when the robot is at the goal configuration and has a
high value on obstacles. Anywhere else, the function slopes down towards the
goal configuration, so that the robot can reach the target by following the
negative gradient of the potential field. The high value of the potential field
prevents the robot going near the obstacles.
2.7.2 Potential Field Technique for Mobile Robot Navigation
Potential field methods, introduced by Khatib [162], are widely used for
real time collision free path planning. In this technique the robot gets stuck at
local minima before attaining the goal configuration. Borenstein et al. [163] and
Koren et al. [164] have developed a real‐time obstacle avoidance approach for
mobile robots. The navigation algorithm takes into account of dynamic
behaviour of a mobile robot and solves the local minimum trap problem. The
repulsive force is much larger than the attractive force being considered by them.
In other words, the target position is not a global minimum of the total potential
field. Therefore the robot cannot reach its goal due to the obstacle nearby.
38
Garibotto et al. [165] have proposed a potential field approach for local path
planning of a mobile robot in telerobotics context, i.e. with the presence of a
human operator in the control loop at a supervisory level.
Kim et al. [166] have developed a new function in artificial potential field
by using harmonic functions that eliminate local minima for obstacle avoidance
problem of a mobile robot in a known environment. Rimon et al. [167] and
Koditschek [168] have presented a new methodology for exact robot motion
planning and control unifying kinematic path planning problem and the lower
level feedback controller design. They validate their results in simulation mode.
Guldner et al. [169,170] have discussed a suitable control for tracking the
gradient of an artificial potential field. However such functions are usually
plagued by local minima. Al‐Sultan et al. [171] have introduced a new potential
function for path planning that has the remarkable feature of no local minima.
Yun et al. [172] have analysed a wall following action using potential field
based on motion planning method. The new algorithm switches to a wall
following control mode when the robot falls into local minima. They
implemented the new algorithm on a Nomad 200 mobile robot. They have
demonstrated simulation and experimental results to validate the usefulness of
their method. Chuang et al. [173] have presented analytical tractable potential
field model of free space. They have used Newtonian potential function for
collision avoidance between object and obstacle. Sekhawat et al. [174] and Canny
et al. [175] have developed a technique based on holonomic potential field taking
into account the nonholonomic constraints of the system. Liu et al. [176] have
presented a navigation algorithm, which integrates virtual obstacle concept with
a potential‐field‐based method to maneuver cylindrical mobile robots in
unknown environments. Their study focuses on the real‐time feature of the
39
navigation algorithm for fast moving mobile robots. They mainly consider the
potential‐field method in conjunction with virtual obstacle concept as the basis of
their navigation algorithm. They have presented their results in simulation and
experiment modes.
Wang et al. [177] have presented a new artificial potential field method for
path planning of non‐spherical single‐body robot. The optimal path problem is
calculated as per the heat flow with minimal thermal resistance. Ren et al. [178]
have investigated the inherent oscillation problem of potential field methods
(PFMs) in the presence of obstacles and in narrow passages. These situations can
cause slow progress and system instability in implementation. To overcome
these two problems, they have proposed a modification of Newton’s method.
The use of the modified Newton’s method greatly improves system performance
when compared to the standard gradient descent approach. They have validated
their technique by comparing the performance with the gradient descent method
in obstacle‐avoidance tasks. Xi‐yong et al. [179] have presented a robot
navigation algorithm with global path generation capability. Their algorithm
prevents the robot from running into local minima. Simulation results show that
the algorithm proposed by the author is very effective in complex obstacle
environments. Chengqing et al. [180] have presented a navigation algorithm,
which integrates virtual obstacle concept with a potential‐field‐based method to
maneuver cylindrical mobile robots in unknown or unstructured environments.
Simulation and experiments of their algorithm shows good performance and
ability to overcome the local minimum problem associated with potential field
methods. Reid [181] has described an algorithm for the optical computation of
potential field maps suitable for mobile robot navigation.
40
Im et al. [184] have proposed a local navigation algorithm for mobile robots
that combines rule‐based and neural network approaches. First, the Extended
Virtual Force Field (EVFF), an extension of the conventional Virtual Force Field
(VFF), implements a rule base under the potential field concept. Second, the
neural network performs fusion of the three primitive behaviours generated by
EVFF. Finally, evolutionary programming is used to optimise the weights of the
neural network with an arbitrary form of objective function. Furthermore, a
multi network version of the fusion neural network has been proposed that lends
itself to not only an efficient architecture but also a greatly enhanced
generalization capability. The global path environment has been classified into a
number of basic local path environments to which each module has been
optimised with higher resolution and better generalization. These techniques
have been verified through computer simulation under a collection of complex
and varying environments. Tsourveloudis et al. [185] have used an electrostatic
potential field (EPF) path planner, which combined with a two‐layered fuzzy
logic inference engine and implemented for real‐time mobile robot navigation in
a 2‐D dynamic environment. The first layer of their fuzzy logic inference engine
performs sensor fusion from sensor readings into a fuzzy variable, collision,
providing information about possible collisions in four directions, front, back,
left, and right. The second layer guarantees collision avoidance with dynamic
obstacles while following the trajectory generated by the electrostatic potential
field. They have tested their proposed approach experimentally using the
Nomad 200 mobile robot. The potential fields approach have been used by Cosio
et al. [186] which allow for avoidance of large or closely spaced obstacles,
through the use of auxiliary attraction points with adjustable force strength and
distance to the goal. A genetic algorithm has been used for optimisation of the
force intensity parameters of the repulsion and attraction cells, as well as the
41
position parameter of the auxiliary attraction points. Their scheme reported
constitutes an effective strategy for autonomous robot navigation. McFetridge et
al. [187] have presented a methodology for robot navigation and obstacle
avoidance. Their approach is based on the artificial potential field (APF) method,
which is used for obstacle avoidance with fuzzy logic technique. They have
presented simulation results demonstrating the ability of their developed
algorithm to perform successfully in simple environments.
Vadakkepat et al. [188] have proposed Evolutionary Artificial Potential
Field (EAPF) for real‐time robot path planning. The artificial potential field
method is combined with genetic algorithms, to derive optimal potential field
functions. Their proposed Evolutionary Artificial Potential Field approach is
capable of navigating robot situated among moving obstacles. Fitness functions
like, goal‐factor, obstacle‐factor, smoothness‐factor and minimum‐path length‐
factor are developed for the Multi‐Objective Evolutionary Algorithm (MOEA)
selection criteria. Simulation results showed that their proposed methodology is
efficient and robust for robot path planning with non‐stationary goals and
obstacles. Ratering et al. [189] have proposed hybrid potential field method to
navigate a robot in which the environment is known. They have tested their
techniques in real as well as simulated mode. Zhuang et al. [190] have applied
temporal difference (TD) learning with fuzzy state in robot navigation in multi‐
obstacle environment. The APF obtained is globally optimal and avoids the local
minimum areas, which always appear in traditional APF methods. Fuzzy state is
introduced to improve the learning efficiency. They have shown the effectiveness
of their method by computer simulation.
42
2.8 Simulated Annealing Technique
2.8.1 Introduction
Simulated annealing technique has attracted significant researchers as this
is suitable for optimisation problems of large scale, especially ones where a
desired global minimum is hidden among many local minima. This annealing
process is a random‐search technique, which exploits an analogy between the
way in which a metal cools and freezes into a minimum energy crystalline
structure. Simulated annealing forms the basis of an optimisation technique for
combinatorial and other problems. It has been proved that by carefully
controlling the rate of cooling of the temperature, simulated annealing can find
the global optimum.
2.8.2 Simulated Annealing Technique
The avoidance of local minimum has been an active research topic in
potential field path planning. One of the powerful techniques for escaping local
minima is simulated annealing. Kirkpatrick et al. [191] first proposed the
optimisation by simulated annealing for sub atomic behaviours in statistical
mechanics. Carriker et al. [192] have used simulated annealing to solve the
mobile manipulator path‐planning problem. They have compared their results
with the results obtained by conventional nonlinear programming technique.
Janabi‐Sharifi et al. [193, 194] have first used simulated annealing technique to
escape from local minimum of a potential field function. Park et al. [195, 196, 197]
have presented the mobile robot path planning technique that integrates the
artificial potential field approach with simulated annealing. Lee et al. [198, 199]
have presented potential‐field based path planning for point or higher
dimensional objects, which avoids effectively any local extreme problems. They
used a fast‐simulated annealing approach for local minima problems, which arise
43
from the potential field. Betke et al. [200] have used fast simulated annealing for
automatic object recognition. Their algorithm is applied to the problem of
navigation of robot and works well in noisy images with high information
content. Hong et al. [201] have proposed a simulated‐annealing method for the
generation of robotic assembly. They have presented the effectiveness of their
proposed method on electric relay case study.
Martinez‐Alfaro et al. [202] have described the development and
implementation of an automatic controller for path planning and navigation of
an autonomous mobile robot using simulated annealing and fuzzy logic. The
simulated annealing algorithm used by them is to obtain a collision‐free optimal
trajectory among fixed polygonal obstacles. The trajectory tracking is performed
with a fuzzy logic algorithm. They have shown their results in simulation and
experimental modes on a Nomadic 200 mobile robot. Lucidarme et al. [203] have
presented a method based on simulated annealing to learn reactive behaviours.
Their work was related to multi‐agent systems. They have shown their technique
for completing complex cooperative tasks with simple reactive mobile robots.
Barral et al. [204] have presented an evolutionary simulated annealing algorithm
for optimising mechanical assembly, electronic component insertion, and spot
welding. Kwok et al. [205] have describes the use of Genetic Algorithm and
Simulated Annealing for optimising the parameters of PID controllers for 6‐DOF
robot arm. They have carried out simulation on a PUMA 560.
2.9 Sensors for Mobile Robots
Different types of sensors have been used for mobile robot navigation. They can
be classified into three categories: (i) Ultrasonic Sensors, (ii) Infrared Sensors, and
(iii) Other types of Sensors.
44
2.9.1 Ultrasonic Sensors for Robot Navigation
Ultrasonic sensors’ signals can be induced through the piezoelectric effect or
through electro static forces. Most sensors used in robotics are electrostatic since
this mechanism is more efficient for coupling into air. Polaroid manufactures the
most common type of robotic ultrasonic transducers. It can be used to measure
distances from about 0.25 m to 10 m through direct time‐of‐flight measurement.
A firing pulse triggers an ultrasonic burst from the sensor and starts a counter.
The counter is stopped when the sensor, now acting as a receiver, detects a signal
above a pre‐set threshold. The counter reading thus gives the time of flight.
The research of Skewis et al. [206, 207, 208] have involved ultrasonic
sensor‐based motion planning for a single robot. They have used information
from assumed sensor media as input to the motion‐planning algorithm.
A method for estimating the position and heading angle of a mobile robot
moving on a flat surface has been proposed by Boem et al. [209]. Their
localisation method utilises two passive beacons and a single rotating ultrasonic
sensor. The passive beacons consist of two cylinders with different diameters and
reflect the ultrasonic pulses from the sonar sensor mounted on the mobile robot.
Their algorithm is suitable for processing sonar scan data obtained by an
ultrasonic sensor with a wide beam spread. The proposed system has been
implemented for a single robot in a very simple environment. Kleeman et al.
[210] have established that two transmitters and two receivers are necessary and
sufficient for a mobile robot to distinguish between planes, corners and edges.
They have used a sonar sensor array with a minimum number of transmitters
and receivers for their mobile robot. With their method, it is very difficult to
navigate a single mobile robot in an unknown environment.
45
Ko et al. [211] have described a method to extract acoustic landmarks for
the indoor navigation of a single mobile robot using an array of ultrasonic
sensors. They have modelled the environment with specular vertical walls. Due
to the constancy of the relative positions between the ultrasonic sensors, the echo
pulses from a reflection point (RP) determine the position of the RP. The
direction to a RP is estimated from the orientation of the ultrasonic sensor at
which the maximum echo level has been obtained. The mean time‐of‐flight of the
echo pulses provides the distance to the RP.
Mallita et al. [212] have discussed an ultrasonic imaging system for a
mobile robot. Their transmitters cover a wide area and from the time‐of‐flight
and the angle of incidence of echo pulses, their algorithm is able to detect
obstacles ahead of the mobile robot. They have not implemented their method
for multiple mobile robots. Hong et al. [213] have discussed the sensing of room
boundaries for a mobile robot using an ultrasonic sensor array. They have
implemented their algorithm with an extended Kalman Filter. Again, their
technique was meant for a single mobile robot in a simple environment.
Budenske et al. [214] have discussed the navigation of a robot with the help of
sensory data. They have shown that their approach can be applied to guide a
robot to and through an unknown and narrow doorway. Sonic range data is used
to find the doorways, walls, and obstacles. They have implemented their method
for a single mobile robot for obstacle avoidance only. Takamura et al. [215, 216,
217] have proposed a method to acquire a statistical map representation for
direct use in a navigation task. Their robot is equipped with a ring of ultrasonic
sensors, whose data are employed to give a graphical representation of the
environment. They have demonstrated their method by computer simulation.
46
Their method is not meant for multiple mobile robots or for achieving a goal
seeking behaviour.
2.9.2 Infrared Sensors for Robot Navigation
Ultrasonic sensors are safe, easily available and have low cost, but sometimes the
data are difficult to interpret. Infrared sensors are also safe and inexpensive in
addition to being easier to use. They are suitable for moderate ranges, where
transmitters of up to tens of mill watts can be employed. Infrared sensors are
appropriate for applications not demanding high measurement accuracies.
Everett and Flynn [218] have described a programmable near‐infra‐red
amplitude detection sensor for navigation in an unstructured environment. The
sensor consists of four light emitting diodes (LEDs). Between one and four light
emitting diodes could be fired, depending on the range expected, and the
number of diodes fired before a signal is detected gives a very crude estimate of
range which has proved inadequate for robot navigation.
Yu et al. [219] have discussed the navigation of a mobile robot using an
infrared sensor to avoid collision with obstacles. They have shown simulation
results for a single mobile robot avoiding simple obstacles. Their method is not
efficient enough to be applied to a multiple robot scenario. Kube et al. [220] have
also used infrared sensors for obstacle avoidance. During navigation, their
robotʹs infrared sensors can detect obstacles within a range of 1.5 m. They have
done all their analysis taking single mobile robots into consideration.
Lumelsky et al. [221, 222] have presented an approach for decentralised
motion planning for a mobile robot operating with unknown stationary
obstacles. Their robot has no knowledge about the environment or the paths and
objectives of other robots. The robot plans its path towards its target
47
dynamically, based on the current position and sensory feedback, which is
provided by an infrared sensor. They have not reported on the scenario where
several mobile robots are navigating in an environment. Vandorpe et al. [223,
224] have designed an autonomous mobile robot using an infrared sensor for
avoiding obstacles. Their infrared imaging sensor gives a complete panoramic
image of the environment but has not been applied to the navigation of multiple
mobile robots.
2.9.3 Other Sensors Used in Navigation
Borenstein et al. [225] have discussed the navigation of a single mobile robot
with various sensory techniques. They have shown that the magnetic compass is
a very good sensor for determining the location and heading angle (x, y, and θ)
for a mobile robot. They have outlined different magnetic sensors, including
i) Mechanical Magnetic Compass, ii) Fluxgate Compass, iii) Hall‐Effect Compass.
iv) Magneto‐Resistive Compass, and v) Magneto‐Elastic Compass. According to
them, the Fluxgate Compass is the best for use in mobile robot navigation.
However, the sensor is not appropriate for obstacle distance measurement. Yagi
et al. [226, 227, 228] have designed an omni‐directional image sensor COPIS for a
mobile robot. Their robot is able to navigate by detecting the azimuth of each
object in the omni‐directional image. By matching the azimuth with the
environmental map, the robot can estimate its own location and motion.
However, it would be difficult to handle multiple mobile robots in an unknown
environment as well as measuring obstacle distances with this method. Gonzalez
et al. [229] have presented an algorithm for efficiently estimating the position of a
mobile robot based on a radially‐scanning laser range finder. The algorithm
employs a connected set of short line segments to approximate the shape of any
environment, which can be easily constructed by the range finder itself. Their
48
method is suitable for a single mobile robot navigating in an unknown
environment.
2.10 Summary
This chapter has reviewed robot navigation techniques, focusing on those
utilising fuzzy logic, neural network, rule‐based, potential field and simulated
annealing. It has been found that most of the techniques have been implemented
only in simulation and that none of the techniques encountered are appropriate
or intended for controlling the navigation of multiple mobile robots.
49
3 Kinematic Analysis of Mobile Robots In this chapter, the kinematic analysis of a wheeled mobile robot is carried out in
which robots ride on a system of wheels and axles. With the help of the velocities
of right and left wheel, the steering angle is calculated to avoid obstacles near or
around the robot.
3.1 Introduction
A three wheeled mobile robot is modelled in this work as a planar rigid body
with two driving wheels, arranged parallel to each other and ‘B’ distances apart,
which are driven separately by two independent motors, and one castor is
provided for stability of the robot. The front wheel is a castor wheel. The
relations between the rigid body motion of the robot, the angular velocity and
driving controls of the wheels are developed. The developed relations guarantee
that the motion of robot is stable.
3.2 Configuration of Mobile Robot
The mobile robot system in this study consists of two subsystems. They are
driving subsystem and sensing subsystem.
Two driving configurations are used in today’s mobile robot, steer drive
and differential drive. The former uses two driving wheels to make the vehicle
move forward and backward, and another separate steering mechanism to
control its heading angle. Since the driving action is independent of the steering
action, the motion control of the vehicle is somewhat easy. However due to
physical constraints, this configuration cannot make turning in a very small
radius, which need more floor space for vehicle turning.
50
The differential drive on the other hand has two independent drive wheels
arranged parallel to each other. Their speed can be controlled separately. Thus
the mechanism is able to not only drive the vehicle forward and backward, but
also steer its heading angle by differentiating their speed. Even though this
configuration requires a somewhat more complex control strategy than the steer
drive configuration, its capability of making a small radius turning, even making
a turning on the spot makes it the first choice in most investigations. In this
research a differential drive configuration is used as shown in Figure 3.1.
Figure 3.1. A three wheeled mobile robot.
Figure 3.2. Wheeled mobile robot with left and right angular velocities.
lω
ω
V
rω
51
Figure 3.3. Wheeled mobile robot with no slip condition.
3.3 Kinematic Model
Assumption considered for analysing path constrained of a wheeled mobile
robot
• There are no flexible parts in the wheeled mobile robot.
• There is no transitional slip between the wheels and the surface.
• There is enough rotational friction between the wheels and the surface; so,
the wheels can rotate without disturbance.
• The two driving wheels are identical.
Figure 3.4. A Robot.
Fron
t – re
ar axis
Left‐right axis
Robot
Right Wheel of robot Left Wheel of robot
Front Wheel of robot
Vr = r ωr
2r
rω
Ar
52
The relationship between the left driving wheel, right driving wheel velocities
and the translation and angular velocities of the wheeled mobile robot is as
follows:
2V V V rl += (3.1)
( )= rlV ‐ Vω
B (3.2)
The kinematics of the differential drive mobile base is derived under the
assumption that there is no slip at any time between the drive wheels and the
ground. The relationship between the rω and Vr ( lω and Vl) is found with
reference to the situation shown in Figure 3.3 under no slip condition i.e., there is
no movement between point Ar and the ground. Therefore, point a can be
thought of as fixed, reference point. With respect to this reference point, the
wheel axle should move forward with linear velocity Vr = r rω .
Figure 3.5. Kinematic parameters of the wheeled mobile robots.
lω rω
Vl
Vr
Front
Rear
B H
d r
Y
X
Vc
P
C
M ϕ
53
From Figure 3.4., the velocity of the centroid C of the wheeled mobile robot may
be written using the motion of the rigid body as follows:
×cV = ω PC (3.3)
Let ˆˆ ˆi, j and k as unit vectors of the coordinate frame fixed at C along X, Y, and Z
axis respectively (Z – axis is out of the thesis as shown in Figure 3.4.)
Equation (3.2) can be expressed as:
( ) i irlω ‐ ω r ˆω = kB
(3.4)
The vector PC can be obtained from the instantaneous center to the centroid of
wheeled mobile robot as follows:
⎛ ⎞⎜ ⎟⎝ ⎠
iB ˆ ˆPC = + H i + d j2
(3.5)
Where i ir r
r rl l
V ωH = B = BV ‐ V ω ‐ ω
Substituting equations (3.4) and (3.5) into equation (3.3), the cross product of
equation (3.3) is written as:
( ) ( )i i ir rl lc
ω ‐ ω r d ω + ω r ˆ ˆV = i + jB 2
(3.6)
Let Vx be the component of Vc along i and Vy be the component of Vc along j in
equation (3.6), and using equation (3.4), Vx and Vy can be written as:
( ) i ir lx
ω ‐ ω r dV =
B (3.7)
( ) irly
ω + ω r V =
2 (3.8)
( ) irlω ‐ ω r ω =
B (3.9)
54
Figure 3.6. Calculation of angular velocity.
For rolling without skidding or sliding the angular velocity of both the wheel
should be same.
rlω = ω
rlV V = H H + B
l
r l
B VH = V ‐ V
(3.10)
( )r lrlrl
V ‐ VV Vω = ω = ω = = = H H+B B
(3.11)
The angular velocity can be calculated by using equation 3.11 by multiplying the
time factor.
P Vl
Vl
Vr
Vr
H B
H
B
55
4 Fuzzy Logic Technique
4.1 Introduction
Navigation of multiple mobile robots in presence of static and moving
obstacles using different types of Fuzzy Logic Controller (FLC) is discussed in
this chapter. This task could be carried out specifying a set of fuzzy rules taking
into account the different situations found by the mobile robots. The approach is
to extract a set of fuzzy rule set from a set of trajectories provided by human. For
this purposes the input to all the FLC are left obstacle distance, right obstacle
distance, front obstacle distance and target angle considered. The outputs from
the FLC are both left and right wheel velocities. The fuzzy rules help the robots
to avoid obstacles and find the targets.
Part of contents of this chapter has been published in
• “Neuro‐Fuzzy Technique for Navigation of Multiple Mobile Robots”,
Fuzzy Optimization and Decision Making, (2006), Vol. – 5, pages 255 – 288.
• “Fuzzy Control Technique for of Multiple Mobile Robots’ Navigation”,
AMS‐03, Jadavpur University, Kolkata, 28‐29 March, 2003, Pages: 415‐420.
• “Fuzzy Controllers for Navigation of Multiple Mobile Robots”, NCME‐03,
TITE, Patiala, November, 2003, Pages: 498‐504.
56
4.2 Control Architecture
4.2.1 Analysis of Obstacle Avoidance and Target Seeking Behaviour
The robots used here are rear wheel drive having two rear wheels, namely left
and right rear wheel. The mobile robot considered in this work is a point robot
for simulation mode. Its dimension is 1 X 1 pixel2. Each robot has an array of
sensors for measuring the distances around it and locating the target i.e., front
obstacle distance (FD), left obstacle distance (LD), right obstacle distance (RD)
and detecting the bearing of target (HA). The distance between the robots and
obstacles act as repulsive forces for avoiding the obstacles, and the bearing of the
target acts as an attractive force between robots and target.
In this research three types of membership functions are considered. First
one is of three‐membership function having two trapezoidal members and one
triangular member. Linguistic variables such as “far”, “medium” and “near” are
taken for three‐membership function. Five membership function is considered
with all are of triangular member. Here linguistic variables like “very near”,
“near”, “medium”, “far” and “very far” are considered. Finally Gaussian
membership function is considered with “very near”, “near”, “medium”, “far”
and “very far” as linguistic variables for navigation of multiple mobile robots.
Some of the fuzzy control rules are activated according to the information
acquired by the robots using their sensors. The outputs of the activated rules are
weighted by fuzzy reasoning and then the velocities of the front driving wheels
of the robots are calculated. . Left wheel velocity and right wheel velocity are
denoted as leftvelo (LV) and rightvelo (RV) respectively. Similarly leftdist,
rightdist, and frontdist are defined for the distances left obstacle distance (LD),
right obstacle distance (RD) and front obstacle distance (FD) respectively.
57
Linguistic variables such as “pos” (positive) “zero” and “neg” (negative)
are defined for the bearing of heading angle (HA) with respect to target. The
term “notargetconsider” is used if there is no target in the environment.
Linguistic variables like “fast”; “medium” and “slow” are defined for left wheel
velocity and right wheel velocity for three‐membership function. Terms like
“very slow”, “slow”, “medium”, “fast”, and “very fast” are considered for left
wheel velocity and right wheel velocity for five‐membership functions. Similarly
linguistic variables such as “more pos” (more positive),“pos” (positive) “zero”,
“neg” (negative) and “more neg” (more negative) are defined for the bearing of
heading angle (HA) with respect to target. The parameters defining the functions
are listed in table 4.1. The membership functions described above are shown in
Figure 4.1.
58
(a) Parameters for Left, Right and Front Obstacle
Variables Very Near
(Meter) Near
(Meter) Medium (Meter)
Far (Meter)
Very Far (Meter)
0.0 1.0 2.0 3.0 4.0
1.0 2.0 3.0 4.0 5.0
Left Obstacles Distances Right Obstacles Distances and Front Obstacles Distances
2.0 3.0 4.0 5.0 6.0
(b) Parameters for Heading Angle
Variables More
Negative (Degree)
Negative (Degree)
Zero (Degree)
Positive (Degree)
More Positive (Degree)
‐180 ‐120 ‐20 0 20
‐120 ‐20 0 20 120
Heading Angle
‐20 0 20 120 180
(c) Parameters for Left and Right Velocity
Variables Very Slow
(Meter/sec) Slow
(Meter/sec) Medium
(Meter/sec) Fast
(Meter/sec) Very Fast (Meter/sec)
0.0 0.5 1.0 1.5 2.0
0.5 1.0 1.5 2.0 2.5
Left Wheel Velocity and Right Wheel Velocity
1.0 1.5 2.0 2.5 3.0
Table 4.1. Parameters of fuzzy membership functions.
59
Figure 4.1. Fuzzy Controllers for Mobile Robot Navigation.
Three‐Membership Fuzzy Controller for Mobile Robot Navigation
Heading Angle
Fuzzy Controller Right Wheel Velocity
Left Wheel Velocity
F. O. D.
R. O. D.
Heading AngleL. O. D.
Fuzzy Controller R. O. D. L. O. D.
Heading Angle
Right Wheel Velocity Left Wheel Velocity
F. O. D.
F. O. D. R. O. D. L. O. D.
Fuzzy Controller Right Wheel Velocity Left Wheel Velocity Heading Angle
Five‐Membership Fuzzy Controller for Mobile Robot Navigation
F. O. D. = Front Obstacle Distance, L. O. D. = Left Obstacle Distance and
R. O. D. = Right Obstacle Distance
Gaussian Fuzzy Controller for Mobile Robot Navigation
60
Figure 4.2. Fuzzy membership functions.
0.0 1.0 2.0 3.0 4.0 5.0 6.0
Left Obstacle Distance
Very Near Near
Medium Far
Very Far
0.0 1.0 2.0 3.0 4.0 5.0 6.0
Front Obstacle Distance
Very Near Near
Medium Far
Very Far
0.0 1.0 2.0 3.0 4.0 5.0 6.0
Right Obstacle Distance
NearMedium Very
Far Very Near
0.0 0.5 1.0 1.5 2.0 2.5 3.0
Left Wheel Velocity
Fast Very Slow Slow
Medium Very Fast
0.0 0.5 1.0 1.5 2.0 2.5 3.0
Right Wheel Velocity
Very Slow Slow
Medium Very Fast Fast
‐180 ‐120 -20 0.0 20 120 180
Target Angle
More Negative
Negative Zero
Positive
More Positive
Far
61
4.2.2 Fuzzy Mechanism for Mobile Robot Navigation
Based on the subsets the fuzzy control rules are defined as follows:
If (LD is LDi Λ FD is FDj Λ RD is RDk Λ HA is HAl) (4.1)
Then LV is LVijkl and RV is RVijkl
Where i = 1 to 3, j = 1 to 3, k = 1 to 3 and l = 1 to 3 because LD, FD, RD and HA
have three membership functions each.
And for five membership function i = 1 to 5, j = 1 to 5, k = 1 to 5 and l = 1 to 5
From equation (4.1) two rules can be written:
If (LD is LDi and FD is FDj and RD is RDk and HA is HAl)
Then LV= LVijkl
And
If (LD is LDi and FD is FDj and RD is RDk and HA is HAl)
Then RV = RVijkl
A factor Wijkl is defined for the rules as follows:
Wijkl = ( ) ( ) ( )µ µ µ µΛ Λ Λi j k lLD i FD j RD HAk ldis dis dis (ang ) (4.3)
Where disi, disj, and disk are the measured distances, and angl is the value of the
heading angle.
The membership values of the left wheel and right wheel velocities velLV and
velRV are given by:
( ) ( )µ µ′ = Λ ∀ ∈ijklijkl LV LVijkl velLV vel W vel LV
( ) ( )RV ijkl RV RV velijkl ijklvel W vel RVµ µ′ = Λ ∀ ∈
(4.4)
(4.2)
62
The overall conclusion by combining the outputs of all the fuzzy rules can be
written as follows:
( ) ( ) ( ) ( )µ µ µ µ′ ′ ′= ∨ ∨ ∨ ∨ 1111 3333ijklLV LV LV LVLV LV LVvel vel ... vel ... vel
( ) ( ) ( ) ( )µ µ µ µ′ ′ ′= ∨ ∨ ∨ ∨1111 3333 ijklRV RV RV RVRV RV RVvel vel ... vel ... vel
Equation (4.5) is for three membership functions. For five‐membership function
the fuzzy rules are written as:
( ) ( ) ( ) ( )µ µ µ µ′ ′ ′= ∨ ∨ ∨ ∨ 1111 5555 ijklLV LV LV LVLV LV LVvel vel ... vel ... vel
( ) ( ) ( ) ( )µ µ µ µ′ ′ ′= ∨ ∨ ∨ ∨ 1111 5555 ijklRV RV RV RVRV RV RVvel vel ... vel ... vel
The crisp values of Left Wheel Velocity and Right Wheel Velocity are computed
using center of gravity method is:
( ) ( )( ) ( )
⋅µ ⋅= =
µ ⋅∫∫
LV
LV
vel vel d velLeft Wheel Velocity LV
vel d vel
( ) ( )( ) ( )
⋅µ ⋅= =
µ ⋅∫∫
RV
RV
vel vel d velRight Wheel Velocity RV
vel d vel
4.2.3 Obstacle Avoidance
The attractive force between the robot and the target causes the robot seeking
towards the target when the robot is very close to the target. Similarly when the
robot is very close to an obstacle, because of repulsive force developed between
the robot and the obstacle, the robot must change its speed and heading angle to
avoid the obstacle. Some of the fuzzy rules used for obstacle avoidance by robots
(4.5)
(4.6)
(4.7)
63
are listed in Table 4.2 to Table 4.5. All the rules in those tables have been
obtained heuristically using common sense.
Some rules mentioned in Table 4.2 cater for extreme conditions when the
obstacles have to be avoided as quickly as possible. This is for three‐membership
function. Rule 06 mentioned in the Table 4.2 describes if the left obstacle distance
is “near”, right obstacle distance is “far”, front obstacle distance is “medium”
and no unobstructed target is around the robot, then the robot should turn to
right side as soon as possible to avoid collision with the left obstacle. For the
above condition the left wheel velocity should increase fast and right wheel
velocity should decrease slowly.
Similarly some rules mentioned in Table 4.3 are used for extreme
conditions when the obstacles have to be avoided as soon as possible. These rules
are for five‐membership function.
For example in rule 12, the left obstacle distance is “ very far”, right
obstacle distance is “near”, front obstacle distance is “ very near” and no target is
located around the robot, then the robot should turn to left side to avoid collision
with the obstacle in front and towards right of it. For the above condition the
right wheel velocity should increase very fast and left wheel velocity should
decrease very slowly.
4.2.4 Control Steering Action for Target
The objective of the robots is to reach the target efficiently. If any one of the robot
senses a target, it will decide whether it can reach the target or there is any
obstacle that will obstruct the path. If there is no obstacle on the path leading to
the target, the robot will find its desired path and proceed towards it. Fuzzy rules
21 to 26 are for three‐membership function (Table 4.4) for target finding. Table
64
4.4 describes rules for five‐membership function to locate the target. Here also
the fuzzy rules are obtained heuristically.
Rule number 22 states that if the left obstacle distance is “near”, front
obstacle distance is “medium” and right obstacle distance is “far” and the robot
detects a target located on the right side (positive), then the robot should turn
right as soon as possible. To do this, the left wheel velocity of the robot should
increase fast and the right wheel velocity should decrease slowly.
The velocities are found from the fuzzy rules described in the table given below.
Fuzzy Rule No.
Action left dist
front dist
right dist
heading angle left velo
right velo
01 OA Near Near Near NoTargetConsidered Slow Slow 02 OA Near Near Med NoTargetConsidered Med Slow 03 OA Near Near Far NoTargetConsidered Fast Slow 04 OA Near Med Near NoTargetConsidered Slow Slow 05 OA Near Med Med NoTargetConsidered Fast Med 06 OA Near Med Far NoTargetConsidered Fast Slow 07 OA Near Far Near NoTargetConsidered Slow Slow 08 OA Near Far Med NoTargetConsidered Fast Med 09 OA Near Far Far NoTargetConsidered Fast Slow 10 OA Med Near Near NoTargetConsidered Med Fast
Table 4.2. Obstacle avoidance for three‐membership function.
65
Fuzzy Rule No.
Action left dist
frontdist
right dist
heading angle left velo
right velo
11 OA VN VN VN NoTargetConsidered VS VS 12 OA VF VN Near NoTargetConsidered VS VF 13 OA VN VN Med NoTargetConsidered Fast VS 14 OA VN VN Far NoTargetConsidered Fast Slow 15 OA VN VN VF NoTargetConsidered VF VS 16 OA VN Near VN NoTargetConsidered Slow Slow 17 OA VN Near Near NoTargetConsidered Slow VS 18 OA VN Near Med NoTargetConsidered Fast Slow 19 OA VN Near Far NoTargetConsidered Fast Slow 20 OA VN Near Very
Far NoTargetConsidered VF VS
Table 4.3. Obstacle avoidance for five‐membership function. Fuzzy Rule No.
Action left dist
front dist
rightdist heading angle
leftvelo right velo
21 TS Near Far Med Positive Fast Slow 22 TS Near Med Far Positive Fast Slow 23 TS Near Med Near Negative Slow Fast 24 TS Far Near Med Negative Slow Fast 25 TS Far Med Near Positive Fast Slow 26 TS Far Far Far Negative Slow Fast
Table 4.4. Target seeking for three‐membership function.
Fuzzy Rule No.
Action left dist
front dist
rightdist heading angle
leftvelo right velo
27 TS VN Far Near Positive Slow VS 28 TS VN Med VF Positive VF VS 29 TS Near Far Far Positive Fast Slow 30 TS Med Far Near Negative Slow Med 31 TS Far Med Near Negative Med Fast 32 TS Far Very
Far Near Negative Med VF
Table 4.5. Target seeking for five‐membership function.
66
Note: OA = Obstacle Avoidance, Med = Medium, frontdist = Front Obstacle
Distance, rightdist = Right Obstacle Distance, leftdist = Left Obstacle Distance,
leftvelo = Left Wheel Velocity, rightvelo = Right Wheel Velocity, TS = Target
Seeking, Positive = Right Turn, Negative = Left Turn, VF = Very Fast, VN = Very
Near and VS = Very Slow.
Figure 4.3. Left, Front and Right Obstacles Distances.
In Figure 4.3 the robot detect left, front and right obstacle distances are 1.2, 2.4
and 4.6 respectively. There is no target present in the environment. Therefore,
heading angle is taken as zero for all the rules. With the above‐mentioned
obstacles, there will be 2 X 2 X 2 = 8 fuzzy rules (Figure 4.3) activated to control
the left wheel velocity and right wheel velocity of the robot. For this environment
the fuzzy rules, which are applicable, are given below. The resultant right wheel
and left wheel velocity are shown in Figure 4.4.
2.0 3.0 4.0 5.0 6.0
Very Near
Medium
Far
Very Far
Left Obstacle Distance
1 0.9
.15
0.0 1.0 2.0 3.0 4.0 5.0
Very Near
Medium
Far
Very Far
Front Obstacle Distance
0.6 0.4
0.0 1.0 2.0 3.0 4.0 5.0 6.0
Very Near
Near
Medium
Far
Very Far
Right Obstacle Distance
1 0.8
0.2
Near Near
67
First Combination Left Obstacle : Very Near, Front Obstacle: Near and Right Obstacle: very Far
Then according to fuzzy rule
Left wheel velocity: Very Fast and
Right wheel Velocity: Very Slow
Second Combination Left Obstacle : Very Near, Front Obstacle: Near and Right Obstacle: Far
Then according to fuzzy rule
Left wheel velocity: Fast and
Right wheel Velocity: Slow
Third Combination Left Obstacle : Very Near, Front Obstacle: Medium and Right Obstacle: Very Far
Then according to fuzzy rule
Left wheel velocity: Very Fast and
Right wheel Velocity: Very Slow
Fourth Combination Left Obstacle : Very Near, Front Obstacle: Medium and Right Obstacle: Far
Then according to fuzzy rule
Left wheel velocity: Fast and
Right wheel Velocity: Medium
Fifth Combination Left Obstacle : Near, Front Obstacle: Near and Right Obstacle: Very Far
Then according to fuzzy rule
Left wheel velocity: Medium and
Right wheel Velocity: Very Slow
Sixth Combination Left Obstacle : Near, Front Obstacle: Near and Right Obstacle: Far
Then according to fuzzy rule
Left wheel velocity: Slow and
Right wheel Velocity: Very Slow
Seventh Combination
Left Obstacle : Near, Front Obstacle: Medium and Left wheel velocity: Very fast
Then according to fuzzy rule
Right Obstacle: Very Far and
Right wheel Velocity: Very Slow
Eighth Combination Left Obstacle : Near, Front Obstacle: Medium and Right Obstacle: Far
Then according to fuzzy rule
Left wheel velocity: Fast and
Right wheel Velocity: slow
68
“Fourth combination of fuzzy rule is activated”
“Third combination of fuzzy rule is activated”
0.0 0.5 1.0 1.5 2.0 2.5 3.0
Very Slow
Slow
Medium
Fast
Very Fast
Left Wheel Velocity0.0 0.5 1.0 1.5 2.0 2.5 3.0
Very Slow Slow
Medium
Fast
Very Fast
Right Wheel Velocity
0.4 0.4
1 1
0.0 0.5 1.0 1.5 2.0 2.5 3.0
Very Slow
Slow
Medium
Fast
Very Fast
Left Wheel Velocity
0.2
0.0 0.5 1.0 1.5 2.0 2.5 3.0
Very Slow
Slow
Medium
Fast
Very Fast
Right Wheel Velocity
0.2
1 1
0.0 0.5 1.0 1.5 2.0 2.5 3.0
Very Slow
Slow
Medium Fast
Very Fast
Left Wheel Velocity
0.6
1
0.0 0.5 1.0 1.5 2.0 3.0
Medium
Fast
Very Fast
Right Wheel Velocity
0.6 1
“Second combination of fuzzy rule is activated”
0.0 0.5 1.0 1.5 2.0 2.5 3.0
Very Slow
Slow
Medium
Fast
Very Fast
Left Wheel Velocity
0.2
0.0 0.5 1.0 1.5 2.0 2.5 3.0
Very Slow
Slow
Medium
Fast Very Fast
Right Wheel Velocity
0.2
1 1
2.5
“First combination of fuzzy rule is activated”
Slow Very Slow
69
0.0 0.5 1.0 1.5 2.0 2.5 3.0
Very Slow Slow
Medium
Fast Very Fast
Left Wheel Velocity0.0 0.5 1.0 1.5 2.0 2.5 3.0
Very Slow
Slow
Medium Fast
Very Fast
Right Wheel Velocity
.15.15
1 1
“Seventh combination of fuzzy rule is activated”
“Eighth combination of fuzzy rule is activated”
0.0 0.5 1.0 1.5 2.0 2.5 3.0
Very Slow
Slow
Medium
Fast Very Fast
Left Wheel Velocity0.0 0.5 1.0 1.5 2.0 2.5 3.0
Very Slow
Slow
Medium
Fast Very
Right Wheel Velocity
.15.15
1
“Sixth combination of fuzzy rule is activated”
0.0 0.5 1.0 1.5 2.0 2.5 3.0
Very Slow
Slow
Medium
Fast Very Fast
Left Wheel Velocity
.15
1
0.0 0.5 1.0 1.5 2.0 2.5 3.0
Very Slow
Slow
Medium
Fast Very Fast
Right Wheel Velocity
.15
1
“Fifth combination of fuzzy rule is activated”
0.0 0.5 1.0 1.5 2.0 2.5 3.0
Very Slow
Slow
Medium
Fast Very Fast
Left Wheel Velocity
.15
0.0 0.5 1.0 1.5 2.0 2.5 3.0
Very Slow
Slow
Medium
Fast Very Fast
Right Wheel Velocity
.15
1 1
70
Figure 4.4. Resultant Left and Right Wheel Velocity.
4.2.5 Petri Net Modelling to avoid Collision among the Robots
C. A. Petri [83] first developed a Petri Net model which is used in this thesis to
avoid inter robot collision. Figure 4.5 shows the Petri Net model built into each
robot to enable it to avoid collision with other robots. The model comprises six
tasks. The details of the Prtri Net technique are given in appendix –B.
It is assumed that, initially, the robots are in a highly cluttered
environment, without any prior knowledge of one another or of the targets and
obstacles. This means the robot is in state “Task 1” (“Wait for the start signal”). In
Figure 4.5, the token is in place “Task 1”.
Once the robots have received a command to start searching for the
targets, they will try to locate targets while avoiding obstacles and one another.
The robot is thus in state “task 2” (“Moving, avoiding obstacles and searching for
targets”).
During navigation, if the path of a robot is obstructed by another robot, a
conflict situation is raised. (State “Task 3”, “Detecting Conflict”). Conflicting
robots will negotiate with each other to decide which one has priority. The lower
priority robot will be treated as a static obstacle and the higher priority robot as a
proper mobile robot (state “Task 4”, “Negotiating”). As soon as the conflict
0.0 0.5 1.0 1.5 2.0 2.5 3.0
Very Slow
Slow
Medium
Fast
Very Fast
Resultant Right Wheel Velocity
0.6
0.2
1
0.0 0.5 1.0 1.5 2.0 2.5 3.0
Very Slow
Slow
Medium
Fast Very Fast
Resultant Left Wheel Velocity
.15 0.2
1
0.6
71
situation is resolved, the robots will look for other conflicts and if there is no
other conflict they will execute their movements (state “Task 5”, “Checking for
conflict and executing movements”).
Figure 4.5. Petri Net Model for avoiding inter‐robot collision.
Task 2
Task 3
Task 5
Task 1 Wait for the start signal Task 2 Moving, avoiding obstacles
and searching for targets Task 3 Detecting Conflict Task 4 Negotiating Task 5 Checking for conflict and executing movements Task 6 Waiting
Place
Token Transition Arc
Task 6
Task 1
Task 4
72
4.3 Demonstrations
The proposed fuzzy logic technique has been implemented in simulations
as well as in real mode with different environments. Simulations are conducted
using the Window‐based simulation software package ‘ROBPATH’ (Appendix ‐
A) developed by the author for robot navigation. The environment generated
artificially containing static obstacles as well as static targets.
4.3.1 Obstacle Avoidance and Target Seeking by Multiple Mobile Robots
This exercise involves forty‐five mobile robots initially assembled into
three groups that are placed within an enclosure using five memberships
Gaussian FLC. All the three targets are located in U shaped partitions as shown
in Figure 4.6. Figure 4.7 shows an intermediate situation where Figure 4.8 depicts
the final position, when all the robots have reached targets.
Figure 4.6. Obstacle avoidance and target seeking by forty‐five mobile robots using five‐membership function (Initial position).
Target
Fifteen Robots
Fifteen Robots
Fifteen Robots
Obstacles
Obstacles
Obstacles
73
Figure 4.7. Obstacle avoidance and target seeking by forty‐five mobile robots using five membership function (Intermediate state).
Figure 4.8. Obstacle avoidance and target seeking by forty‐five mobile robots using five membership function (Final state).
74
4.3.2 Collision Free Movements in a Cluttered Environment
This exercise demonstrates that, the robots do not collide with each other
even in a highly cluttered environment. Figure 4.9 depicts the beginning of the
exercise where as Figure 4.10 shows the trajectories of the robots for the fuzzy
logic technique using five‐membership Gaussian function. It can be seen that the
robots are able to resolve conflict and avoid one another and reach the target
successfully. ‘a‐b‐c‐d‐e‐f‐g‐h’ is the path followed by robot‐1 to reach the target
and ‘p‐q‐r‐s‐t‐u’ is the path for robot‐2. After getting the start command the
robots start searching for target from point ‘a’ and ‘p’. It is clear from the Figure
4.10 that when the robots reach close to each other i.e., at point ‘b’ and ‘q’ they
change their direction to avoid collision between them.
Figure 4.9. Collision free movement using five‐membership FLC (Initial scenario).
Target
Obstacles
Obstacle
Obstacles
Obstacles
Target
Robot 1 Robot 2
75
Figure 4.10. Collision free movement using five membership FLC (Final state).
4.3.3 Obstacle Avoidance by a Large Number of Robots
Obstacle avoidance by one thousand mobile robots using Gausssian five‐
membership function is shown in Figures 4.11 and 4.12. Figure 4.11 depicts the
starting of the exercise. Figure 4.12 shows the situation after few times the
exercise has begun. It can be noted that the robots stay well away from the
obstacles as well as from each other.
4.3.4 Escape from Dead Ends
Figures 4.13 and 4.14 show the ability of the robots to escape from the dead ends
using Gausssian five membership FLC. Fifteen robots are involved in this
exercise. Figure 4.13 depicts the situation at the beginning of the exercise. The U‐
shaped and rectangular obstacles are causing dead ends for the robots. All the
robots were enclosed within a U‐shaped obstacle. Figure 4.14 shows all the
robots efficiently negotiate the dead ends and reach their target successfully.
a b
c
d e
f
h g
p q
rs
t u
76
Figure 4.11. Navigation of large number of robots before starting the mission using five‐membership FLC (1000 robots).
Figure 4.12. Navigation of large number of robots after some time from the starting of the mission using five membership FLC (1000 robots).
200 Robots
Obstacles
Obstacle
200 Robots
200 Robots
200 Robot
200 Robots
Obstacles
77
Figure 4.13. Environment for escaping from the dead ends before starting of the mission using five‐membership FLC.
Figure 4.14. Recorded paths of fifteen robots in case of escaping from U‐shaped objects and getting the targets using five‐membership FLC.
U‐Shape Obstacles
Target
U‐Shape Obstacles
15 Robots
Rectangular Obstacle
78
4.4 Comparison between the Different Types of Fuzzy Controller
4.4.1 Simulation Results
An exercise has been carried out to compare the performances of three different
types of fuzzy controllers. In all the exercises one robot is located inside four
rectangular shape obstacles and one target is present in the environment. Figure
4.15 depicts the initial state of the environment for all the controllers. Figures 4.16
‐ 4.18 represent the path traced by the robot using three‐membership function,
five‐membership function, and Gaussian membership function respectively.
Total path lengths using three‐membership, five‐membership and Gaussian
membership fuzzy controllers are measured (in pixels) for four, eight, ten,
sixteen, twenty‐four, forty, fifty and seventy robots. The final results are given in
Table 4.6. Similarly time taken to reach the target using three‐membership, five‐
membership and Gaussian membership fuzzy controllers are measured for the
same number of robots using statistical method. The results are given in Table
4.7. The path lengths and the search times are taken statistically from one
thousand simulation results. The path lengths and search times are giving an
objective measure of the performance of the different controllers. From the path
length and search time it is observed that the fuzzy controller using Gaussian
membership function finds the target in minimum time.
79
Figure 4.15. Workspace for one mobile robot with one target (initial scenario).
Figure 4.16. Navigation path for one mobile robot using three‐membership fuzzy controller.
One Robot
Target
U‐shape obstacles
U‐shape obstacles
80
Figure 4.17. Navigation path for one mobile robot using five membership triangular fuzzy controller.
Figure 4.18. Navigation path for one mobile robot using Gaussian membership fuzzy controller.
81
Number of robots
Total path length in pixels using three membership fuzzy
controller
Total path length in pixels using five
membership fuzzy controller
Total path length in pixels using Gaussian
membership fuzzy controller
4 564 466 393 8 1082 902 770 10 1357 1094 934 16 2741 2199 1924 24 3982 3361 2801 40 5508 4539 3874 50 7109 5963 5022 70 14312 12245 10178
Table 4.6. Path lengths using different fuzzy controllers. Number of robots
Total time taken in seconds using three membership fuzzy
controller
Total time taken in seconds using five membership fuzzy
controller
Total time taken in seconds using Gaussian
membership fuzzy controller
4 15.91 13.44 11.32 8 32.24 26.40 22.53 10 36.11 31.29 25.68 16 51.83 42.44 36.22 24 87.75 72.49 61.05 40 119.06 100.08 83.19 50 197.14 168.02 143.38 70 326.02 269.32 226.80
Table 4.7. Time taken to reach the target using different fuzzy controllers.
82
4.4.2 Experimental Results
Figures 4.19 ‐ 4.23 show experimental results obtained for one mobile robot
for the similar simulated environment as shown in Figure 4.15. Similarly for two
mobile robots the experiment is carried out (Figures 4.24 ‐ 4.28) in a similar
simulated environment as shown in Figure 4.9. A brief description of the mobile
robots used is given in Appendix ‐ C. The experimentally obtained paths closely
follow the path traced by the robots during simulation. Table 4.8 shows a
comparison between the average units of time taken by the robots in simulation
and in the experimental mode for obstacle avoidance and target seeking.
Figure 4.19. Initial scenario for real robot (Khepera II) for the similar simulated environment as shown in Figure 4.15.
Figure 4.20. Intermediate scenario ‐ one for real robot (Khepera II) using Gaussian membership fuzzy controller.
83
Figure 4.21. Intermediate scenario ‐ two for real robot (Khepera II) using Gaussian membership fuzzy controller.
Figure 4.22. Intermediate scenario ‐ three for real robot (Khepera II) using Gaussian membership fuzzy controller.
Figure 4.23. Final scenario when Khepera II robot reaches the target.
Recorded path of robot
84
Figure 4.24. Initial scenario for two real robots (Khepera II and Boe ‐ Bot) for the similar simulated environment as shown in Figure 4.9.
Figure 4.25. Intermediate scenario ‐ one for real robot experiment (Khepera II and Boe ‐ Bot) using Gaussian membership fuzzy controller.
Figure 4.26. Intermediate scenario ‐ two for real robot experiment (Khepera II and Boe ‐ Bot) using Gaussian membership fuzzy controller.
85
Figure 4.27. Intermediate scenario ‐ three for real robot experiment (Khepera II and Boe ‐ Bot) using Gaussian membership fuzzy controller.
Figure 4.28. Final scenario when Khepera II and Boe ‐ Bot robots reach the target.
Total time taken during simulation in seconds
Total time taken during experiment in seconds
Number of robots
Fuzzy logic technique using five
membership triangular function
Fuzzy logic technique using five
membership Gaussian function
Fuzzy logic technique using five
membership triangular function
Fuzzy logic technique using five
membership Gaussian function
1 12.01 10.56 13.29 11.41 2 12.34 11.12 13.31 12.16 4 13.44 11.32 14.56 12.41
Table 4.8. Time taken by robots in simulation and experiment to reach target (Fuzzy logic technique).
Recorded path of robot
86
4.5 Summary
This chapter has described techniques for controlling the navigation of multiple
mobile robots using different fuzzy logic controller in a highly cluttered
environment. All techniques employ fuzzy rules and take into account the
distances of the obstacles around the robots and the bearing of the target in order
to compute the velocities of the driving wheels. With the use of Petri net model
the robots are capable of negotiate with each other. It has been seen that, by
using all the three types of fuzzy logic controller the robots are able to avoid any
obstacles (static and moving obstacles), escape from dead ends, and find targets
in a highly cluttered environments. Using fuzzy logic controller (Gaussian
membership) as many as one thousand mobile robots can navigate successfully
neither colliding with each other nor colliding with obstacles present in the
environment. Comparisons of the performances among different techniques have
been carried out statistically. From the present analysis it is concluded that the
fuzzy logic controller utilising Gaussian membership is best among the three
techniques for navigation of multiple mobile robots.
87
5 Neural Network Technique
5.1 Introduction
This chapter describes the navigation of multiple mobile robots using a neural
network and a neuro‐fuzzy technique. The neural network considered here is a
multi‐layered perceptron trained with backpropagation. This technique is used
for obstacle avoidance and target seeking. The Petri‐net model presented in the
previous chapter is again used here for averting inter robot collision. Then a
neuro‐fuzzy technique is developed, in which neural network is acting as a
preprocessor for a fuzzy controller. Simulation and experimental results are
demonstrated to validate the developed techniques.
Part of contents of this chapter has been published in
• “Neuro‐Fuzzy Technique for Navigation of Multiple Mobile Robots”,
Fuzzy Optimization and Decision Making, (2006), Vol. – 5, pages 255 – 288.
• “Neuro‐Fuzzy Technique for Navigation of Multiple Mobile Robots”,
VETOMAC 3 / ACSIM 2004, 6‐9 December 2004, Pages 749‐756.
88
5.1.1 Multilayer Neural Network Based Navigation Technique
The neural network used in this work is a back propagation multilayer
perceptron having four layers [84]. The numbers of layers selected here are found
empirically to facilitate training of neural network. The input layer has four
neurons. Out of these four neurons three are meant to receive the distances of the
obstacles in front and to the left and right of the robot, where as fourth neuron is
for the target bearing. If no target is detected in the environment, the input to the
fourth neuron is “zero”. The first hidden layer has twelve neurons and the
second hidden layer has four neurons. The numbers of neurons in the hidden
layers are found empirically. The output layer has a single neuron meant to
produce the steering angle to control the direction of movement of the robot.
Figure 5.1 depicts the neural network highlighting the details of the neurons with
its input and output signals. The neural network is trained with one thousand
patterns representing typical environmental scenarios.
The neural network is trained with patterns representing typical scenarios,
some of which are depicted in Figure 5.2. For example a situation described in
Figure 5.2(c), where an obstacle is present in front of the robot and another
obstacle is present on the left hand side. No other obstacles are present to the
right of the robot. In this environment no target is present. The neural network is
trained and will give a command to the robot to steer towards its right side to
avoid collision with the front and left side obstacles.
89
Figure 5.1. Four layer neural network for navigation of mobile robots.
Input Layer
First Hidden Layer
Second Hidden Layer
Output Layer
Steering Angle
Left Obstacle Distance
Right Obstacle Distance
Front Obstacle Distance
Target Angle
90
Figure 5.2. Training Patterns for navigation of mobile robots.
(a)
Robot
(b) (c)
Robot
(d)
Robot
(f)(e)
Robot
(g)
Robot
(h)
Robot Robot Robot Robot
Robot
Target
Robot
Target
Robot
TargetTarget
(i) (j) (k) (l)
(m) (n)
Robot
Target
(o) (p)
Robot Robot
Robot
Target
91
During training and normal operation, input patterns fed to the neural network
comprise the following components.
[ ] =11d Left obstacle distance from the robot (5.1a)
[ ] =12d Front obstacle distance from the robot (5.1b)
[ ] =13d Right obstacle distance from the robot (5.1c)
[ ] =11t Target bearing (5.1d)
These input values are fed to the input layer as a result it will be distributed to
the hidden neurons in turn the neural network generate outputs given by:
[ ] [ ]( )lay layj jy = f V (5.2)
Where
[ ] [ ] [ ]∑lay lay lay‐1j ji i
iV = W . y (5.3)
And [lay] = 2, 3 (Hidden layers)
j = label for jth neuron in hidden layer ‘lay’
i = label of ith neuron in hidden layer ‘lay‐1’
[ ] =layjiW weight of the connection from neuron i in layer ʹlay‐1ʹ to neuron j in layer ʹlayʹ
and f(.) = an activated function chosen as the sigmoid function.
( ) =+
x ‐x
x ‐xe ‐ ef x e e
(5.4)
During training, the network output θactual may differ from the desired output
θdesired as specified in the training pattern presented to the network. A measure of
the performance of the network is the instantaneous sum squared difference
between θdesired and θactual for the presented training patterns:
92
( )∑ 2rr desired actual
all thetraining patterns
1E = θ ‐ θ2
(5.5)
As mentioned previously, the error calculated in back propagation method is
employed to train the network (Haykin [84]). This method requires the
computations of local error gradients in order to determine appropriate weight
corrections to reduce rrE . For the output layer, the error gradient [ ]4δ is:
[ ] [ ]( ) ( )′4 41 desired actualδ = f V θ ‐ θ (5.6)
The local gradient for neurons in the hidden layer [lay] is given by:
[ ] [ ]( ) [ ] [ ]⎛ ⎞′ ⎜ ⎟⎝ ⎠∑lay lay lay + 1 lay + 1
j j k kjk
θ = f V δ W (5.7)
The synaptic weights are updated according to the following expressions:
( ) ( ) ( )ji ji jiW t + 1 = W t + ΔW t + 1 (5.8)
And
( ) ( ) [ ]lay lay‐1ji ji j iΔW t + 1 = αΔW t + η δ y (5.9)
Where
α = momentum coefficient (chosen empirically as 0.25 in this work)
η = learning rate (chosen empirically as 0.3 in this work)
t = iteration number, each iteration consisting of the presentation of a training
pattern and correction of the weights.
The final output from the neural network is:
[ ]( )41actualθ = f V (5.10)
Where ∑4 4 31 ili
iV = W y (5.11)
93
5.2 Neuro-Fuzzy Technique
The neuro‐fuzzy technique developed here consists of a pre‐processor using
backpropagation neural network followed by a fuzzy logic controller. Figure 5.3
depicts the neuro‐fuzzy controller highlighting the details of the neurons with its
inputs and output signal with fuzzy controller. The neural network used here
also a backpropagation multilayer perceptron having four layers. The input layer
has four neurons. The output layer has a single neuron meant to produce the
steering angle. The output of the neural network i.e., the steering angle is fed to
the fuzzy controller along with the information concerning the distances of the
obstacles in front and to the left and right of the robot. The output of the fuzzy
controller is to compute the velocities of the driving wheels. From the velocities
of the driving wheel the steering angle is calculated to avoid obstacles and reach
the target. From the previous chapter it was concluded that Gaussian
membership function is the best among other membership function. Therefore
Gaussian membership function is used in the fuzzy controller.
The developed navigation techniques for several mobile robots are
investigated in a totally unknown environment. Each robot has an array of
sensors for measuring the distances of obstacles around it and an image sensor
for detecting the bearing of the target. The developed neuro‐fuzzy technique has
been demonstrated in simulation mode, which depicts that the robots are able to
avoid obstacles and reach the targets efficiently. Amongst the techniques
developed neuro‐fuzzy technique is found to be most efficient for mobile robots
navigation. Experimental verifications have been done with the simulation
results to prove the authenticity of the developed neuro‐fuzzy technique.
94
Figure 5.3. Neuro‐Fuzzy Controller for navigation of mobile robots.
Input Layer
First Hidden Layer
Second Hidden Layer
Output Layer
Initial Steering Angle
L.O.D.
R.O.D.
F.O.D.
Target Angle
Fuzzy Controller L.O.D.
R.O.D.
F.O.D.L.W.V.
R.W.V.
L.O.D. = Left obstacle distance, R.O.D. = Right obstacle distance,
F.O.D. = Front obstacle distance,
L.W.V. = Left wheel velocity and R.W.V. = Right wheel velocity
95
5.2.1 Obstacle Avoidance
Some of the fuzzy control rules avoiding collision with obstacles are listed
Table 5.1. Rule 1‐10 deals with pure obstacle avoidance when the robot should
turn away from an obstacle as soon as possible.
Fuzzy Rule No.
Action left dist
frontdist rightdist heading angle
leftvelo right velo
01 OA Near Near Near Zero Slow Slow 02 OA Near Near Med More
negative Slow Med
03 OA Near Near Far Zero Fast Slow 04 OA Near Med Near Negative Slow Slow 05 OA Near Med Med Positive Fast Med 06 OA Near Med Far More
positive Med Slow
07 OA Near Far Near Zero Slow Slow 08 OA Near Far Med Negative Fast Med 09 OA Near Far Far Positive Fast Slow 10 OA Med Near Near Negative Med Fast
Table 5.1. Rules for obstacle avoidance.
5.2.2 Target Finding
If a mobile robot detect target, it will directly move towards the target
unless there is an obstacle obstructing in its path. In that case, the robot will
avoid collide the obstacle by changing its path and proceed towards target. The
target finding rules are listed in Table 5.2.
96
Fuzzy Rule No.
Action left
dist
front
dist
right
dist
heading angle left
velo
right velo
27 TS VN Far Near Positive Slow VS 28 TS VN Med. VF More Positive VF VS 29 TS Near Far Far Positive Fast Slow 30 TS Med Far Near More Negative Slow Med 31 TS Far Med Near Negative Med Fast 32 TS Far Very Far Near Negative Med VF
Table 5.2. Rules for target finding.
Note: OA = Obstacle Avoidance, Med = Medium, frontdist = Front Obstacle
Distance, rightdist = Right Obstacle Distance, leftdist = Left Obstacle Distance,
leftvelo = Left Wheel Velocity, rightvelo = Right Wheel Velocity, TS = Target
Seeking, VF = Very Fast, VN = Very Near and VS = Very Slow.
5.3 Demonstrations The proposed neural network and neuro‐fuzzy technique have been
implemented in simulation with different environments in this section.
Experimental validations of the developed techniques are also presented to
compare with the simulation results.
5.3.1 Neural Network Technique
5.3.1.1 Obstacle Avoidance and Target Seeking
This exercise shows that the mobile robots can navigate without colliding to
the obstacles and can find targets in a cluttered environment using neural
network technique. Ten robots are involved together with several obstacles
including two targets enclosed in U‐shaped enclosures. Figure 5.4 shows the
initial state of the beginning of the exercise. Figure 5.5 represents the final
position where the robots are able to locate the targets with successfully avoiding
the collision against the obstacles.
97
Figure 5.4. Obstacle avoidance and target seeking behaviour by ten mobile robots using neural network technique (Initial State).
Figure 5.5. Obstacle avoidance and target seeking behaviour by ten mobile robots using neural network technique (Final State).
Ten Robots
Obstacles Obstacles
Obstacles
Target
Target
98
5.3.1.2 Escape from Dead Ends
Figures 5.6 and 5.7 show the ability of the robots, which are trapped within the
dead ends, able to escape from those dead ends and find the target. Figure 5.6
shows the situation at the beginning of the exercise. Four robots are involved in
the exercise. Three of the obstacles are rectangular shape and one obstacle is U‐
shape representing a dead end. From Figure 5.7, it can be seen that all the robots
have escaped from the dead end and find the target successfully. Here neural
technique is used for navigation of robots.
5.3.1.3 Navigation of ‘Nine Hundred Ninety Robots’
Obstacle avoidance by ‘nine hundred ninety’ robots using neural network
technique are shown in Figures 5.8 and 5.9. Figure 5.8 depicts the state at the
beginning of the exercise where as Figure 5.9 shows the situation some time after
the exercise has begun. It can be seen that the robots are stay well away from the
other robots and from the obstacles.
5.3.1.4 Inter Robot Collision Avoidance
This exercise relates to a problem designed to demonstrate that, the robots do
not collide with each other even in a highly cluttered ambience. Figure 5.10
depicts the beginning of the exercise where as Figure 5.11 shows the trajectories
of the robots for the neural network technique. It can be noted that the robots are
able to resolve conflict and avoid one another and reach the target successfully.
99
Figure 5.6. Escape from dead ends by four mobile robots using neural network technique (Initial State).
Figure 5.7. Escape from dead ends by four mobile robots using neural network technique (Final State).
Four Robots
Obstacles
Obstacles
Target
100
Figure 5.8. Navigation of nine hundred ninety mobile robots using neural network technique (Initial State).
Figure 5.9. Navigation of one thousand mobile robots using neural network technique (Intermediate State).
Obstacles
Obstacle
Obstacles
165 Robots
165 Robots
165 Robots
165 Robots
165 Robots
165 Robots
101
Figure 5.10. Collision avoidance between four mobile robots using neural network technique (Initial State).
Figure 5.11. Collision avoidance between four mobile robots using neural network technique (Final State).
Obstacles
Target
Target
Four robots
102
5.3.2 Neuro-Fuzzy Technique
5.3.2.1 Collision Free Movements in a Cluttered Environment
Figures 5.12 and 5.13 relate to a problem designed to demonstrate the
robots to reach their targets in a highly cluttered environment without colliding
with obstacles using neuro‐fuzzy technique. Figure 5.12 depicts the beginning
and Figure 5.13 shows the end of the exercises where both the robots reach their
target efficiently without colliding with each other. Robot 1 has travelled in the
path ‘a‐b‐c‐d‐e‐f‐g’ and robot 2 has traced path ‘p‐q‐r‐s‐t‐u’. This exercise
demonstrates that, the robots do not collide with each other even in a highly
cluttered environment. After getting the start command the robots begin
searching for target from point ‘a’ and ‘p’.
5.3.2.2 Escape from Dead Ends
Figures 5.14 and 5.15 show the ability of the robots to escape from the
dead ends using neuro‐fuzzy technique. Fifteen robots are involved in this
exercise. Figure 5.14 depicts the situation at the beginning of the exercise. The U‐
shaped and rectangular obstacles are causing dead ends for the robots. The
robots are enclosed within U and rectangular shape obstacles. Figure 5.15 shows
all the robots efficiently negotiate the dead ends and reach their target
successfully.
5.3.2.3 Obstacle Avoidance by a Large Number of Robots
Obstacle avoidance by one thousand mobile robots using neuro‐fuzzy
technique is shown in Figures 5.16 and 5.17. Figure 5.16 depicts the starting of
the exercise. Figure 5.17 shows the situation after few times the exercise has
begun. It can be noted that the robots stay well away from the obstacles as well
as from each other.
103
Figure 5.12. Collision avoidance by two mobile robots using neuro‐fuzzy technique (Initial State).
Figure 5.13. Collision avoidance by two mobile robots using neuro‐fuzzy technique (Final State).
Robot‐2
Obstacles
Target Target
Obstacles
Obstacles
Robot‐1
a p
a
p
b
q
c
g
d
e f
r
s
t
u
104
Figure 5.14. Environment for escaping from the dead ends before starting of the mission using neuro‐fuzzy technique.
Figure 5.15. Recorded paths of fifteen robots in case of escaping from dead ends and getting the targets using neuro‐fuzzy technique.
U‐Shape Obstacles
Target
Fifteen Robots
Rectangular Obstacle
U‐Shape Obstacles
Rectangular Obstacle
105
Figure 5.16. Navigation of large number of robots before starting the mission neuro‐fuzzy technique (1000 robots).
Figure 5.17. Navigation of large number of robots after some time from the starting of the mission using neuro‐fuzzy technique (1000 robots).
200 Robots
Obstacles U‐ shape obstacles
Obstacle
200 Robots
200 Robots 200 Robots
200 Robots
Obstacle
Obstacle
Obstacles
106
5.4 Comparisons
5.4.1 Comparison between the Different Types of Fuzzy Controllers and Neuro-Fuzzy Controller
An exercise has been carried out to compare the performances of the fuzzy logic
with five membership Gaussian function, neural network and neuro‐fuzzy
techniques. In all the exercises one robot is located inside four rectangular shape
obstacles and one target is present in the environment. Figure 5.18 depicts the
initial condition of the environment for all the techniques. Figures 5.19 ‐ 5.21
represent the path traced by the robot using fuzzy logic with five membership
Gaussian function, neural network and neuro‐fuzzy techniques respectively.
Figure 5.22 shows navigation of one mobile robot to reach the target with prior
knowledge of target. The total path lengths using fuzzy logic, neural network
and neuro‐fuzzy technique are measured (in pixels) for four, eight, ten, sixteen,
twenty‐four, forty, fifty and seventy robots. The final results are given in Table
5.3. Similarly time taken to reach the target using fuzzy logic, neural network
and neuro‐fuzzy technique are measured for the same number of robots using
statistical method. The results are given in Table 5.4. The path lengths and the
search times are taken statistically from one thousand simulation results. The
path lengths and search times are giving an objective measure of the
performance for different techniques. A comparison of the performances of
different techniques has been carried out and represented in Table 5.5. In an ideal
condition the robot knows the environment. It is observed that the neuro‐fuzzy
technique performs the best among all the techniques considered.
107
Figure 5.18. Environment for one robot and one target.
Figure 5.19. Navigation path for one mobile robot using neural network technique.
TargetRectangular obstacles
One Robot
Rectangular obstacles
108
Figure 5.20. Navigation path for one mobile robot using five‐membership fuzzy logic technique with Gaussian membership function.
Figure 5.21. Navigation path for one mobile robot using neuro‐fuzzy technique.
109
Figure 5.22. Navigation of one mobile robot to reach target with prior knowledge of target. Number of robots
Total path length in pixels using Gaussian
membership fuzzy logic technique
Total path length in pixels using neural network technique
Total path length in pixels using Neuro‐fuzzy technique
4 393 472 360 8 770 927 715 10 934 1091 842 16 1924 2239 1735 24 2801 3240 2517 40 3874 4604 3594 50 5022 6027 4592 70 10178 11821 9098
Table 5.3. Path lengths using different controllers.
A
B
C
110
Number of robots
Total time taken in seconds using Gaussian
membership fuzzy technique
Total time taken in seconds using neural network
technique
Total time taken in seconds using Neuro‐fuzzy technique
4 11.32 13.58 10.35 8 22.53 27.10 20.90 10 25.68 31.55 23.48 16 36.22 43.98 33.12 24 61.05 71.68 54.88 40 83.19 105.14 73.95 50 143.38 166.95 125.71 70 226.80 268.40 207.36
Table 5.4. Time taken to reach the target using different controllers.
Sl. No.
Different Techniques Path length in pixels
Time taken to reach the target in sec
Performance evaluation
01 Ideal condition 55.5 0.45 ‐‐‐‐ 02 Neural network
technique 269.5 2.42 20%
03 Gaussian membership fuzzy Technique
165.5 1.5 33%
04 Neuro‐fuzzy technique 162.5 1.45 34%
Table 5.5. Performance evaluation of different technique for navigation of one mobile robot.
111
5.4.2 Comparison of the Developed Neuro-Fuzzy Technique with Marichal and Janglova Techniques
Comparisons of the developed neuro‐fuzzy technique have been carried out in
simulation and experimental modes with Janglova [99] technique (Figures 5.23 –
5.29) for single mobile robot. In the similar environments the developed neuro‐
fuzzy technique is found to be more efficient compared to Janglova technique in
reference to the navigational path. Similarly a comparison has been done with
the developed neuro‐fuzzy technique in simulation and experimental modes
with Marichal et al. [113] for multiple mobile robots (Figures 5.30 – 5.40). For
similar environment robots embedded with the developed neuro‐fuzzy
technique performs more efficiently in terms of path length. The developed
neuro‐fuzzy technique can handle efficiently the navigation of one thousand
mobile robots at a time.
Figure 5.23. Initial scenario for navigation of one mobile robot.
Target
Rectangular obstacles
Rectangular obstacles
Circular obstacles
Rectangular obstacles
Robot
112
Figure 5.24. Navigation path for one mobile robot to reach target using developed neuro‐fuzzy technique.
Figure 5.25. Navigation path for one mobile robot to reach target for the similar environment as shown in Figure 5.23 (Janglova D., [99]).
113
Figure 5.26. Initial scenario for real robot as shown in Figure 5.23.
Figure 5.27. Intermediate scenario‐ one for real robot (Khepera II).
Figure 5.28. Intermediate scenario‐two for real robot (Khepera II).
Figure 5.29. Final scenario of real robot (Khepera II) at the target.
Khepera IITarget
Navigation path of Robot
114
Figure 5.30. Initial scenario for navigation of two mobile robots.
Figure 5.31. Navigation path of two mobile robots after reaching the target using developed neuro‐fuzzy technique.
Starting point of robot 1
Starting point of robot 2
Target
ObstaclesObstacles
Obstacles
Navigation path for robot 1
Navigation path for robot 2
115
Figure 5.32. Navigation path of two robots to reach the target for the similar environment as Figure 28. (Marichal G. N. et al., [113]).
Figure 5.33. Initial scenario for two real robots (Khepera II and Boe‐Bot) for similar simulated environment as shown Figure 5.32.
Boe‐Bot robot Khepera II
Target
116
Figure 5.34. Intermediate scenario‐ one for two real robots (Khepera II and Boe‐Bot).
Figure 5.35. Intermediate scenario‐ two for two real robots (Khepera II and Boe‐Bot).
Figure 5.36. Intermediate scenario ‐ three for two real robots (Khepera II and Boe‐Bot).
117
Figure 5.37. Final scenario of two real robots ‘Khepera II and Boe‐Bot’ at the target.
Figure 5.38. Initial scenario for four mobile robots.
Navigation path for Boe‐Bot
Navigation path for Khepera ‐ II
(Starting point of robot 1)
(Starting point of robot 2)
(Starting point of robot 3)
(Starting point of robot 4)
Obstacle
Target
Obstacles
Obstacles
-100 ‐50 0 50 100 150
-80
-60
-40
-20
0
20
40
6
80
100
118
Figure 5.39. Navigation path for four mobile robots to reach target using developed neuro‐fuzzy technique.
Figure 5.40. Navigation path of four robots to reach the target for the similar environment as Figure 5.40 (Marichal G. N. et al. [113]).
Navigation path of robot 4
Navigation path of robot 2
Navigation path of robot 3
-100 ‐50 0 50 100 150 -80
-60
-40
-20
0
20
40
60
80
100
Navigation path of robot 1
119
5.5 Summary
This chapter has described techniques for navigation of multiple mobile robots
using neural network technique and neuro‐fuzzy technique in a highly cluttered
environment. With these techniques mobile robots can avoid obstacles around
them. With the use of Petri net model they are capable of negotiating each other.
They can find targets successfully in a cluttered environment. One thousand
mobile robots can navigate successfully by using neuro‐fuzzy technique.
Comparisons of performances among different developed techniques have been
carried out. Also comparisons of the developed neuro‐fuzzy technique with
those developed by Marichal et al. and Janglova have been carried out in
simulation and experimental modes. From the analysis it is concluded that the
developed neuro‐fuzzy technique is most efficient among all the techniques
described in the present investigation.
120
6 Rule Based Technique
6.1 Introduction
This chapter focuses on rule‐based techniques. In a rule base system, the
knowledge of the environment is stated declaratively in the form of rules. Rules
are one of the major types of knowledge representation formalisms used in
expert systems. The main components of a typical rule‐based system are: the
working memory, the rule base and the inference engine. The working memory
contains information about the particular instant of the problem being solved.
The rule base is a set of rules, which represent the problem solving knowledge
about the domain. A rule contains a set of conditions (antecedents) and a set of
conclusions (consequents). The inference engine uses the rule base and the
working memory to derive new information.
The rule‐based controller is basically a look‐up table technique for
representing complex nonlinear systems. Each rule in a rule‐base is a motion
control command for a specific combination of present and desired states. A
correct rule should be able to transform the robot from the present to the desired
states in a sense of a predetermined performance criterion. All rule‐based
systems need a control strategy to decide conflicts between two or more
applicable rules. No matter how these rules are derived, they totally depend on
the environment in which the robot is operated. In order to ensure the best
performance and safety of the robot, the rule‐base needs to be modified to
overcome environmental variations. In most cases, environmental conditions
affect the entire rule‐base. Rather than modifying each rule individually, we
investigate the possibility of modifying all the rules at once using Clematine rule‐
base software [160].
121
Navigation of multiple mobile robots in presence of static and moving
obstacles using rule‐based technique is presented in this work. First, the
extraction of a set of navigation rules is extracted from the data base through
‘See 5’ algorithm. The rules are used on their own to control the navigation of
multiple mobile robots. Also the rules are combined together, which gives rise to
a rule‐based technique for control of mobile robots. The rules used can be used
on their own to control the navigation of multiple robots or they can be
combined with another tool to produce a hybrid navigation control technique.
Both possibilities are described in this chapter.
Part of contents of this chapter has been published in
• “Navigation of Multiple Mobile Robots Using Rule‐based‐Neuro‐Fuzzy
Technique”, International Journal of Computational Intelligence, (2006), Vol. –
3(2), pages 142 – 152.
• “Path planning using rule‐based approach for navigation of multiple
mobile Robots”, N.I.T., Rourkela, ISTAM – 2004, Page No.: 56.
• “Rule base Technique for Navigation of Multiple Mobile Robots”, NCME‐
03, TITE, Patiala, November, 2003, Pages: 432‐438.
122
6.2 Rule Based Technique for Mobile Robots
The rules used for navigation of multiple mobile robots are generated by
induction from examples. Approximately one thousand examples are fed to See5.
See5 is a rule induction program, within the Clementine data mining software
package [160]. See5 employs a sophisticated divide‐and‐conquer technique
originating from ID3 family of algorithms [161].
The examples present the situations encountered by a robot while moving
in a multi‐robot, highly cluttered environment, and the actions that each robot
has to take to avoid colliding with other robots as well as with fixed obstacles.
Each example is consisting of four input elements specifying the distances of the
obstacles to left, to right, and in front of the robot and the target angle and an
output element giving the change in the steering angle of the robot being
required in response to the input data. Some of the rules are mentioned below:
Left obstacle distance, Front obstacle distance, Right obstacle distance, Target
angle & Change in steering angle
Sl. No. Left obstacle distance
Front obstacle distance
Right obstacle distance
Target angle
Change in steering angle
1 60 60 10 12 ‐7
2 60 50 32 12 ‐9
3 60 26 54 12 ‐5
4 60 23 18 14 ‐8
5 60 24 42 14 ‐7
6 60 23 52 14 ‐5
7 60 25 28 16 ‐7
8 60 56 46 16 ‐9
9 34 60 10 20 7
10 60 60 38 29 9
123
11 23 60 40 16 ‐9
12 60 60 18 22 10
13 35 60 40 22 11
14 60 60 26 24 12
15 34 60 10 26 13
16 45 11 60 ‐15 10
17 60 59 60 23 8
18 60 49 60 18 ‐8
19 26 47 60 18 ‐8
20 60 53 60 ‐8 8
21 26 49 60 12 9
22 60 51 60 9 15
23 34 11 60 19 10
24 53 60 38 10 ‐6
25 49 60 60 ‐10 7
26 30 60 60 ‐10 7
27 52 60 39 12 ‐8
Rule 6 described that if the robot is finding an obstacle at a distance 60 to
the left, 52 to the right, 23 to the front and the robot is moving at target angle of
14, then change in steering angle required to reach the target as well as to avoid
the obstacles is ‐5. In this rule, the distances are in cm each and target angle and
the change in steering angle are in degrees.
In this exercise one thousand seven hundred (Appendix ‐ E) situations are
fed to See5. From these situations, See5 yields 54 rules. Out of 54 rules ten rules
are listed below:
124
Rule 1
Rule 2
Rule 3
Rule 4
Rule 5
If (left obstacle distance > 20 cm) and (front obstacle distance <= 12 cm) and (right obstacle distance <= 30 cm) and (target angle > 10˚) and (target angle <= 12˚)
Then Change in steering angle = ‐7˚
If (left obstacle distance > 12 cm) and (front obstacle distance <= 20 cm) and (right obstacle distance <= 30 cm) and (target angle > 14˚) and (target angle <= 16˚)
Change in steering angle = ‐7˚
If (left obstacle distance > 18 cm) and (front obstacle distance <= 12 cm) and (right obstacle distance > 30 cm) and (right obstacle distance <= 48 cm) and (target angle > 12˚) and (target angle <= 14˚)
Then Change in steering angle = ‐7˚
If (left obstacle distance > 18 cm) and (front obstacle distance <= 12 cm) and (right obstacle distance > 30 cm) and (right obstacle distance <= 48 cm) and (target angle > 14˚) and (target angle <= 16˚)
Change in steering angle = ‐9˚
If (left obstacle distance <= 28 cm) and (front obstacle distance <= 30 cm) and (right obstacle distance > 30 cm) and (right obstacle distance <= 48 cm) and (target angle > 10˚) and (target angle <= 12˚)
Then Change in steering angle = ‐9˚
125
Rule 6
Rule 7
Rule 8
Rule 9
Rule 10
If (left obstacle distance > 18 cm) and (front obstacle distance <= 32 cm) and (right obstacle distance > 48 cm) and (target angle > 10˚) and (target angle <= 16˚)
Then Change in steering angle = ‐5˚
If (left obstacle distance > 25 cm) and (front obstacle distance <= 32 cm) and (right obstacle distance <= 31) and (target angle > 29˚) and (target angle <= 30˚)
Then Change in steering angle = ‐8˚
If (left obstacle distance > 15 cm) and (front obstacle distance <= 30 cm) and (right obstacle distance <= 30) and (target angle > 12˚) and (target angle <= 14˚)
Then Change in steering angle = ‐8˚
If (left obstacle distance > 20 cm) and (front obstacle distance <= 24 cm) and (right obstacle distance <= 29) and (target angle > ‐30˚) and (target angle <= ‐19˚)
Then Change in steering angle = ‐8˚
If (left obstacle distance > 20 cm) and (front obstacle distance <= 22 cm) and (right obstacle distance <= 30) and (target angle > 16˚) and (target angle <= 20˚)
Then Change in steering angle = 7˚
126
6.2.1 Analysis of Rule-Based Technique
In this analysis various rules are extracted and subsequently experimented
separately and collectively. The rules are extracted from the data base through
the rule‐based technique ‘See 5’ (Appendix ‐ D). The rules extracted by ‘See 5’ are
experimented individually and the results are shown in Figures 6.1 ‐ 6.4. During
robots’ exercise, it is observed that the robots either collide with the obstacles or
collide with the walls of the enclosure.
Figure 6.1. Scenario before applying rule 1.
8 Robots
Obstacles
Obstacles
Obstacles
Obstacles
127
Figure 6.2. Final scenario when rule 1 is activated.
Figure 6.3. Final scenario when rule 2 is activated.
Obstacles Obstacles
Obstacles
Recorded paths of robots
Collide with obstacle
Collide with obstacle
Collide with obstacles
Collides with obstacle
Collide with walls
Recorded paths of robots
Collide with obstacles
Collides with obstacles
Collides with obstacles Collide with walls
Collides with obstacle
128
Figure 6.4. Final scenario when rule 8 is activated.
Figure 6.5. Scenario before applying all the rules simultaneously.
Obstacles
Obstacles
Recorded paths of robots
Collides with wall
Collides with obstacles
Collides with the wall
Obstacles
Obstacles
Obstacles
15 Robots
Obstacles
129
Figure 6.6. Final scenario when are the rules are applied simultaneously.
The set of all the 54 induced rules perform better. From the simulation
results it is noticed that some robots are not able to avoid obstacles. The scenarios
are shown in Figures 6.5 and 6.6.
In addition to the above rules, some rules are incorporated to fine tune the
rule‐based system. The new rules are required, as the induced rules do not cover
all situations encountered by the robots.
The additional rules are listed below:
Rule 55
If (left obstacle distance <= 20 cm) and (front obstacle distance > 20 cm) and (right obstacle distance > 25 cm) and (right obstacle distance<=30 cm) and (target angle > 23˚) and (target angle <= 40˚)
Then Change in steering angle = 8˚
Recorded path of robots
Collides with obstacles
Collides with the obstacles
Collides with obstacles
Collide with the wall
130
Rule 56
Rule 57
Rule 58
Rule 59
If (left obstacle distance > 15 cm) and (front obstacle distance <= 10 cm) and (right obstacle distance <= 30cm) and (right obstacle distance >23 cm) and (front obstacle distance > 20 cm) and (right obstacle distance > 20 cm) and (left obstacle distance>20 cm) and (target angle > 18˚) and (target angle <= 24˚)
Then Change in steering angle = 10˚
If (left obstacle distance <= 5 cm) and (front obstacle distance > 20 cm) and (right obstacle distance <= 30cm) and (right obstacle distance >20 cm) and (front obstacle distance > 20 cm) and (right obstacle distance > 20 cm) and (left obstacle distance>20 cm) and (target angle > 10˚) and (target angle <= 18˚)
Then Change in steering angle = 4˚
If (left obstacle distance <= 29 cm) and (front obstacle distance <= 20 cm) and (right obstacle distance <= 30cm) and (right obstacle distance > 18 cm) and (front obstacle distance > 20 cm) and (right obstacle distance > 20 cm) and (left obstacle distance>20 cm) and (target angle > 23˚) and (target angle <= 34˚)
Then Change in steering angle = 14˚
If (front obstacle distance <= 20 cm) and (right obstacle distance <= 40cm) and (right obstacle distance > 30 cm) and (front obstacle distance > 20 cm) and (right obstacle distance > 20 cm) and (left obstacle distance> 20 cm) and (target angle > 10˚) and (target angle <= 23˚)
Then Change in steering angle = 6˚
131
Rule 60
Rule 61
After including the above 7 rules the robots are able to navigate and reach their
target efficiently in a highly cluttered environment.
6.3 Rule-Based - Neuro-Fuzzy technique
The set of rulers forms the core of a pure rule‐based controller. This set of rules
combined with other tools to yield a hybrid controller. Here rule‐based technique
has been integrated with neuro‐fuzzy technique to improve the navigation of
robots in highly cluttered environment.
The resulting architecture is shown in Figure 6.7. The role of the rule‐
based controller is to estimate the initial steering angle for the neuro‐fuzzy
controller. Then the initial steering angle is fed to neural controller along with the
distances of obstacles to the left, right and in front of the robot. The neural
network used here is a back propagation multilayer perceptron having four
layers, which is discussed in Chapter‐5. The output of the neural network i.e., the
second estimate steering angle is fed to the fuzzy controller along with the
information concerning the distances of the obstacles in front and to the left and
If (front obstacle distance < 20 cm) or (right obstacle distance < 20 cm) or (left obstacle distance < 20 cm)
Then Change in steering angle = 7˚
If (front obstacle distance < 14 cm) or (right obstacle distance < 14 cm) or (left obstacle distance < 14 cm)
Then Change in steering angle = 13˚
132
right of the robot. The output of the fuzzy controller is to compute the velocities
of the driving wheels. From the velocities of the driving wheel the steering angle
is calculated to avoid obstacles and reach the target. The fuzzy controller used
here is a taken from Chapter‐4.
Figure 6.7. Rule‐based‐neuro‐fuzzy technique for navigation of mobile robots.
Input layer
First hidden layer
Second hidden layer
Output layer
L.O.D.
R.O.D.
F.O.D.
First Estimated Steering Angle
Fuzzy ControllerL.O.D.
R.O.D.
F.O.D.L.W.V.
R.W.V.
Rule Base
Con
troller
L.O.D. R.O.D
F.O.D.
T.A.
L.O.D. = Left Obstacle Distance
R.O.D. = Right Obstacle Distance
F.O.D. = Front Obstacle Distance
L.W.V. = Left Wheel Velocity
R.W.V. = Right Wheel Velocity
T.A. = Target Angle
Second Estimated Steering Angle
Neural Controller
133
6.4 Demonstrations
The developed rule‐based technique and rule‐based‐neuro‐fuzzy technique have
been implemented in simulation mode with different environments.
Experimental validations are carried out to compare with the simulation results.
6.4.1 Rule-Based Technique
6.4.1.1 Obstacle Avoidance and Target Seeking by Multiple Mobile Robots
This exercise involves fifteen mobile robots initially assembled into one
group. Two targets are present in the scenario. The targets are located in U
shaped partition shown in Figure 6.8. Figure 6.9 depicts the final position, when
all the robots have reached the targets.
6.4.1.2 Obstacle Avoidance by a Large Number of Robots
Obstacle avoidance by one thousand mobile robots using rule‐based
technique is shown in Figures 6.10 and 6.11. Figure 6.10 depicts the starting of
the exercise. Figure 6.11 presents the state after few seconds the exercise has
started. It can be noted that the robots stay well away from the obstacles as well
as from each other.
134
Figure 6.8. Collision free movement using rule‐based technique.
Figure 6.9. Collision free movement using rule‐based technique.
Obstacles
Obstacles
Obstacles
15 Robots
Target
Target
Recorded paths of Robots
135
Figure 6.10. Navigation of one thousand robots using rule‐based technique before starting of simulation.
Figure 6.11. Navigation of one thousand robots after some time from the starting of the mission using rule‐based technique.
Obstacles
200 Robots
200 Robots
200 Robots
200 Robots
200 Robots
Obstacle
Obstacle
Obstacle
Obstacles
1000 Robots
136
6.4.1.3 Escape from Dead Ends
Figures 6.12 and 6.13 show the ability of the robots to escape from the
dead ends using rule‐based technique. Fifteen robots are involved in this
exercise. Figure 6.12 depicts the situation at the beginning of the exercise. The U‐
shaped and rectangular obstacles are causing dead ends for the robots. Figure
6.13 shows all the robots efficiently negotiate the dead ends and reach their target
successfully.
6.4.1.4 Collision Free Movements in a Cluttered Environment
Figures 6.14 and 6.15 relate to a problem designed to demonstrate that the
robots reach their targets in a highly cluttered environment without colliding
with obstacles. Figure 6.13 depicts the beginning and Figure 6.14 shows the end
of the exercise where all the robots reach their targets efficiently without
colliding with each other. In this exercise only two robots have been employed
for proper visualisation. Robot 1 has travelled through path a‐b‐c‐d‐e‐f‐g‐h‐I‐j‐k‐
l‐m‐n and Robot 2 traced path u‐v‐w‐x‐y‐z.
137
Figure 6.12. Environment for escaping from the dead ends before starting of the mission using rule‐based technique.
Figure 6.13. Environment for escaping from the dead ends after the robots reaches their targets using rule‐based technique.
Obstacles
15 Robots
Target
Obstacles
Recorded paths of robots
138
Figure 6.14. Two robots in a highly cluttered environment for finding the targets using rule‐based technique (Initial scenario).
Figure 6.15. Recorded paths of two robots after reaching their target.
ac
b
d
i
h
g
fe
n
m
l
k
j
uv
w
x
y
z
Obstacles
TargetRobot 1Target
Obstacles
Robot 2
139
6.4.2 Rule-Based-Neuro-Fuzzy Technique
6.4.2.1 Escape from Dead Ends
Figures 6.16 and 6.17 show the ability of the robots to escape from dead
ends and find the target. Figure 6.16 shows the situation at the beginning of the
exercise. Ten robots are involved in the exercise. Two of the obstacles are U‐
shaped and two obstacles are rectangular shape representing a dead end. From
Figure 6.17, it can be seen that all the robots which are trapped inside have
escaped and able to negotiate with dead ends and find the target successfully.
6.4.2.2 Navigation by Nine Hundred Ninety Mobile Robots
Obstacle avoidance by ‘nine hundred ninety’ robots using rule‐based‐
neuro‐fuzzy technique is shown in Figures 6.18 and 6.19. Figure 6.18 depicts the
state at the beginning of the exercise where as Figure 6.19 shows the situation
some time after the exercise has begun. It can be seen that the robots are stay well
away from the other robots and from the obstacles.
6.4.2.3 Inter Robot Collision Avoidance
This exercise relates to a problem designed to demonstrate that, the robots
do not collide with each other even in a highly cluttered ambience. Figure 6.20
depicts the beginning of the exercise where as Figure 6.21 shows the trajectories
of the robots for the rule‐based‐neuro‐fuzzy controller. It can be noted that the
robots are able to resolve conflict and avoid one another and reach the target
successfully.
140
Figure 6.16. Escape from dead ends by ten mobile robots using rule‐based‐neuro‐ fuzzy technique (Initial State).
Figure 6.17. Escape from dead ends by fifteen mobile robots using rule‐based‐neuro‐ fuzzy technique (Final State).
Obstacles
Target
10 Robots
Obstacles
Obstacles
141
Figure 6.18. Navigation scenario of nine hundred ninety mobile robots using rule‐based‐neuro‐ fuzzy technique (Initial State).
Figure 6.19. Navigation of nine hundred ninety mobile robots using rule‐based‐neuro‐ fuzzy technique (Intermediate State).
165 Robots
Obstacle
Obstacles
Obstacles
165 Robots
165 Robots
165 Robots
165 Robots
165 Robots
142
Figure 6.20. Collision avoidance by two mobile robots using rule‐based‐neuro‐ fuzzy technique (Initial State).
Figure 6.21. Collision avoidance between two mobile robots using rule‐based‐neuro‐ fuzzy technique (Final State).
Obstacles Robot 2
TargetRobot 1Target
Obstacles
Obstacles Obstacles
Recorded path of robot 1Recorded
path of robot 2
143
6.4.2.4 Experimental Validation with the Simulation Results for Two Mobile Robots
Experimental validation of the developed rule‐based‐neuro‐fuzzy technique has
been compared with the simulated result as shown in Figure 6.20. It has been
observed that real robots follow closely simulated path (Figure 6.21). The
experimental results are shown in Figures 6.22 ‐ 6.25.
Figure 6.22. Experimental result for two mobile robots using rule‐based‐neuro‐fuzzy technique (Initial stage).
Figure 6.23. Experimental result for two mobile robots using rule‐based‐neuro‐fuzzy technique (Intermediate stage ‐ one).
144
Figure 6.24. Experimental result for two mobile robots using rule‐based‐neuro‐fuzzy technique (Intermediate stage ‐ two).
Figure 6.25. Experimental result for two mobile robots using rule‐based‐neuro‐fuzzy technique (Intermediate stage ‐ three).
Figure 6.26. Experimental result for two mobile robots using rule‐based‐neuro‐fuzzy technique (Final stage).
145
6.5 Comparison between Different Controllers
This exercise is similar to the exercise demonstrated in Section‐5.4. A comparison
is conducted to determine the most appropriate technique for multiple mobile
robots control out of rule‐based and rule‐based‐neuro‐fuzzy techniques. An
exercise has been devised to compare the performances of the rule‐based and the
rule‐based‐neuro‐fuzzy techniques. In all the exercises one robot is located inside
four obstacles and one target hidden from the robot view is present. Figure 6.27
represents the initial condition of the environment for all the techniques. Figures
6.28 and 6.29 depict the path traced by the robot using rule‐based and rule‐
based‐neuro‐fuzzy techniques respectively. Total path lengths using rule‐based
and rule‐based‐neuro‐fuzzy techniques are measured in pixels for four, eight,
ten, sixteen, twenty‐four, forty, fifty, and seventy robots. The path lengths are
taken statistically from one thousand simulation results. The final results are
given in Table 6.1. Similarly time taken to reach the target using rule‐based and
rule‐based‐neuro‐fuzzy techniques is measured for the same number of robots
using statistical method. The results are given in Table 6.2. From the path lengths
and search times it is concluded that the rule‐based‐neuro‐fuzzy controller
performs the best.
146
Figure 6.27. Environment for one robot and one target.
Figure 6.28. Navigation path for one mobile robot to reach target using rule‐based controller.
Recorded path of robot
One Robot
Rectangular Obstacles
U‐Shaped Obstacles
Target
147
Figure 6.29. Navigation path for one mobile robot to reach target using rule‐based‐neuro‐fuzzy controller.
Number of robots
Total path length in pixels using rule‐based technique
Total path length in pixels using rule‐based‐neuro‐fuzzy
technique 4 375 295 8 1297 614 10 1418 679 16 2083 1465 24 3115 2107 40 4866 3692 50 5912 3994 70 12992 7497
Table 6.1. Path lengths using different rule base techniques.
Recorded path of robot
148
Number of robots
Total time taken in seconds using rule‐based technique
Total time taken in seconds using rule‐based‐neuro‐fuzzy
technique 4 12.36 8.48 8 28.12 18.04 10 29.97 19.50 16 34.65 28.52 24 56.24 45.57 40 79.07 64.31 50 135.44 108.46 70 266.92 182.16
Table 6.2. Time taken to reach the target using different techniques.
6.5.1 Experiments with Single Real Mobile Robot
Figures 6.30 ‐ 6.35 show the experimental results for rule‐based‐neuro‐fuzzy
controllers of a single mobile robot similar to the simulated environment
(Figure 6.27). The experimental paths drawn follow closely the path traced by the
robot during simulation. It is observed that the robots are able to avoid obstacles
and reach the target. A comparison (Table 6.3) has been made between the
simulation and experimental results for average times taken by the robots during
obstacles avoidance and target seeking.
Figure 6.30. Experimental result of one robot using rule‐based‐neuro‐fuzzy technique (Initial stage).
149
Figure 6.31. Experimental result of one robot using rule‐based‐neuro‐fuzzy technique (Intermediate stage ‐ I).
Figure 6.32. Experimental result of one robot using rule‐based‐neuro‐fuzzy technique (Intermediate stage ‐ II).
Figure 6.33. Experimental result of one robot using rule‐based‐neuro‐fuzzy technique (Intermediate stage ‐ III).
150
Figure 6.34. Experimental result of one robot using rule‐based‐neuro‐fuzzy technique (Intermediate stage ‐ IV).
Figure 6.35. Experimental result of one robot using rule‐based‐neuro‐fuzzy technique (Final stage).
Total time taken during simulation in seconds
Total time taken during experiment in seconds
Number of robots
Rule‐based technique
Rule‐based‐neuro‐fuzzy technique
Rule‐based technique
Rule‐based‐neuro‐fuzzy technique
1 11.01 8.21 12.21 8.56 2 11.56 8.36 13.16 10.02 4 12.36 8.48 13.51 10.26
Table 6.3. Time taken by robots in simulation and experiment to reach the target (Rule‐based technique).
151
6.6 Summary
This chapter has described rule‐based and rule‐based‐neuro‐fuzzy techniques for
control of multiple mobile robots. The rule base technique has a set of rules
obtained through rule induction and enhanced with manually derived heuristics.
The enhanced set of rules is a component of the hybrid rule‐based‐neuro‐fuzzy
technique. The demonstrations reported in this chapter have highlighted the
superior performance of the rule‐based‐neuro‐fuzzy technique over other
techniques discussed.
152
7 Potential Field Navigation Technique
7.1 Introduction
This chapter presents a potential field navigation technique for robot navigation.
The developed potential field function takes care of both obstacles and targets.
The final aims of the robot are to reach some pre‐defined targets. The new
potential function can configure a free space, which is free from any local minima
irrespective of number of repulsive nodes (obstacles) in the configured space.
There is a unique global minimum for an attractive node (target) whose region of
attraction extends over the whole free space. Navigation of multiple mobile
robots in presence of static and moving obstacles using potential field navigation
technique is presented in this chapter. The attractive potential function is defined
as a function of relative position of the target with respect to robot. The repulsive
potential function is also defined as the relative position of robots in respect of
the obstacles. The derived repulsive function is so considered that the total
potential has a global minimum at the target position.
Part of contents of this chapter has been published in
• “Potential field method to navigate several mobile robots”, Applied
Intelligence, (2006), Vol. 25 pages 321 – 333.
• “Potential Field Method for Navigation of Multiple Mobile Robots”, NIT,
Hamirpur, RDFTME‐2006, Pages 446 – 454.
• “Potential‐Field‐Neuro‐Fuzzy Technique for Navigation of Several Mobile
Robots”, N.I.T., Rourkela, ETCE‐2005, Pages 73 – 84.
153
7.2 Analysis of Potential Field Navigation technique
In this section, a through analysis of navigation of multiple mobile robots using
potential field navigation technique is described.
The motion‐planning problem for multiple mobile robots in a dynamic
environment is to control the robots motion from an initial position to final
targets, while avoiding obstacles.
Two assumptions are made to simplify the analysis:
Assumption 1: The robots are of mass point.
Assumption 2: The robots moves in a two dimensional workspace. It’s
position in the workspace is denoted by q = [x, y] is known.
7.2.1 Attractive Potential Function
The attractive potential function used [162] is,
( ) ( )δρ= matt Target
1U q q , q 2
(7.1)
Where δ is a positive scaling factor
( ) || q - q || q , q TargetTarget =ρ is the distance between the robot q and the target Targetq
and m = 2.
The attractive potential force is given by the negative gradient of the attractive
potential field.
( ) ( ) ( )δ= ∇ =att att TargetF q ‐ U q q ‐ q (7.2)
Where the operator ∂ ∂ ∂∇
∂ ∂ ∂ˆˆ ˆ = + +
x y zi j k
154
7.2.2 Repulsive Potential Function
The repulsive potential function used [162] is,
( ) ( ) ( )
( )
α ρ ρρρ
ρ ρ
⎧ ⎛ ⎞⎪ ⎜ ⎟ ≤⎪ ⎜ ⎟= ⎨ ⎝ ⎠⎪⎪⎩
i
i
i
2
i 0obs0obsrep i
0obs
1 1 1 ‐ if q , q 2 q , qU obs
0 if q , q >
(7.3)
( ) ( )= ∇rep i rep iF obs ‐ U obs
Where i = 1 to n, n is number of obstacles, ‘α i ’is the positive scaling factor,
0 =ρ Positive constant denoting influences of the obstacle on the robot and
( )ρiobs q , q is the minimum distance from the robot ‘q’ to the obstacle.
In the environment shown in Figure 7.1 three obstacles are surrounded the target
and robot.
The repulsive potential forces due to obstacle 1, 2 and 3 are:
For obstacle 1, ( )rep 1F obs =
( ) ( ) ( )
( ) ( ) ( )
( ) ( )
α ρρρ ρ
α ρρρ ρ
α ρρρ ρ
⎛ ⎞ ∂⎜ ⎟⎜ ⎟ ∂⎝ ⎠⎛ ⎞ ∂⎜ ⎟⎜ ⎟ ∂⎜ ⎟⎝ ⎠⎛ ⎞ ∂⎜ ⎟⎜ ⎟ ∂⎝ ⎠
1x
1x 1x
1y
1y 1y
1
1z 1z
2 x obs20x xobs obs
2 y obs20y yobs obs
2 z obs20z zobs obs
1 1 1 ˆ ‐ q , q x q , q q , q
1 1 1 ˆ+ ‐ q , q y q , q q , q
1 1 1+ ‐ q , qz q , q q , q
i
j
( ) ( )
( )
ρ ρ
ρ ρ
⎧⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪ ≤⎪⎪⎪⎩
z 1
1
0obs
0obs
ˆ if q , q
0 if q , q >
k
(7.4)
155
Figure 7.1. Location of target, robot and obstacles.
For obstacle 2, ( )rep 2F obs =
( ) ( ) ( )
( ) ( ) ( )
( ) ( )
α ρρρ ρ
α ρρρ ρ
α ρρρ ρ
⎛ ⎞ ∂⎜ ⎟⎜ ⎟ ∂⎝ ⎠⎛ ⎞ ∂⎜ ⎟⎜ ⎟ ∂⎜ ⎟⎝ ⎠⎛ ⎞ ∂⎜ ⎟⎜ ⎟ ∂⎝ ⎠
2x
2x 2x
2y
2y 2y
2
2z 2z
2 x obs20x xobs obs
2 y obs20y yobs obs
2 z obs20z zobs obs
1 1 1 ˆ ‐ q , q x q , q q , q
1 1 1 ˆ+ ‐ q , q y q , q q , q
1 1 1+ ‐ q , qz q , q q , q
i
j
( ) ( )
( )
ρ ρ
ρ ρ
⎧⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪ ≤⎪⎪⎪⎩
z 2
2
0obs
0obs
ˆ if q , q
0 if q , q >
k
(7.5)
y
x
(0,1)
(0, 0.5)
(1,0) Obstacle 1 (0.5,0)(0.0)
(0, ‐0.5)
(0, -1)
Target(‐0.5,0)RobotObstacle 2
(‐1,0)
Obstacle 3(‐0.5, 0.5)
156
For obstacle 3, ( )rep 3F obs =
( ) ( ) ( )
( ) ( ) ( )
( ) ( )
α ρρρ ρ
α ρρρ ρ
α ρρρ ρ
⎛ ⎞ ∂⎜ ⎟⎜ ⎟ ∂⎝ ⎠⎛ ⎞ ∂⎜ ⎟⎜ ⎟ ∂⎜ ⎟⎝ ⎠⎛ ⎞ ∂⎜ ⎟⎜ ⎟ ∂⎝ ⎠
3x
3x 3x
3y
3y 3y
3x 3x
3 x obs20x xobs obs
3 y obs20y yobs obs
3 x ob20x xobs obs
1 1 1 ˆ ‐ q , q x q , q q , q
1 1 1 ˆ+ ‐ q , q y q , q q , q
1 1 1+ ‐ q , qz q , q q , q
i
j
( ) ( )
( )
ρ ρ
ρ ρ
⎧⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪ ≤⎪⎪⎪⎩
3x 3
3
0s obs
0obs
ˆ if q , q
0 if q , q >
k
(7.6)
Total potential influences on the robot { TotalU } =
Attractive potential due to target { attU } +
Repulsive potential due to ‘n’ number of obstacles ( )⎧ ⎫⎨ ⎬⎩ ⎭∑n
rep ii=1U obs
( )= + ∑n
att rep iTotali=1
U U U obs (7.7)
Similarly the total force applied on the robot is the sum of attractive
potential force and repulsive potential forces.
( )= + ∑n
att rep iTotali=1
F F F obs (7.8)
When the above‐induced forces are applied on a robot where three
obstacles are present in the environment along with target, it was observed that
the robot would trap in local minimum.
In the example described in Figure 7.1 the robot position q = [x, 0], target
position targetq = [0, 0], obstacle1 1obsq = [0.5, 0] on the right‐hand side of the
157
target, obstacle2 2obsq =[‐1,0] on the left‐hand side of the target and obstacle3
3obsq
= [‐0.5, 0.5] present in the environment. Here target and robot are within the
influence of obstacles.
Total potential function
( )= + ∑n
att rep iTotali=1
U U U obs
= x 21 2δ +
( )α
ρρ=
⎛ ⎞⎜ ⎟⎜ ⎟⎝ ⎠
∑i
23
ii 1 0obs
1 1 1 ‐ 2 q , q
(7.9A)
( )= + ∑n
att rep iTotali=1
F F F obs
( ) ( ) ( ) ( ) ( )
( ) ( ) ( ) ( ) ( )
( )
α ρρρ ρ
α ρρρ ρ
αρ
⎧ ⎫⎛ ⎞ ∂⎪ ⎪⎜ ⎟ + +⎨ ⎬⎜ ⎟ ∂⎪ ⎪⎝ ⎠⎩ ⎭⎧ ⎫
⎛ ⎞⎪ ⎪∂⎜ ⎟= + +⎨ ⎬⎜ ⎟ ∂⎪ ⎪⎝ ⎠⎩ ⎭
+
1x
1x 1x
2x
2x 2x
1 x obs20x xobs obs
2 x obs20x xobs obs
3
1 1 1 ˆˆ ˆ ‐ q , q 0 0 x q , q q , q
1 1 1 ˆˆ ˆ+ ‐ q , q 0 0 y q , q q , q
1ˆ+ 0 q
i j k
i j k
i( ) ( ) ( ) ( )ρ
ρ ρ
⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎧ ⎫⎛ ⎞⎛ ⎞⎢ ⎥∂⎪ ⎪⎜ ⎟⎜ ⎟ +⎨ ⎬⎢ ⎥⎜ ⎟⎜ ⎟ ∂⎜ ⎟⎜ ⎟⎪ ⎪⎢ ⎥⎝ ⎠⎢ ⎥⎝ ⎠⎩ ⎭⎣ ⎦
1y
3y 1y
y obs20y yobs obs
1 1 ˆˆ‐ q , q 0 z , q q , q
j k
(7.9B)
158
Figure 7.2. Total potential function.
Figure 7.2 shows the variation of total potential field with respect to robot
position along x‐axis when 1 2 3 1α α α δ= = = = and 2 0 =ρ .
It can be seen from the graph (Figure 7.2) that the robot will be trapped at
the minimum (i.e., at x = ‐0.2). Therefore it is clear that the target is not the
minimum of the total potential function. The total force at x = ‐0.2 is zero. Thus
the robot can not reach the target, though there is no obstacle on its way. To
overcome this problem, new repulsive potential functions are developed which
considered the relative distance between the robot and the target into account.
7.2.3 New Repulsive Potential Function
From the above discussion it is concluded that, the global minimum of the total
potential field is not at the target position. This problem occurs as the robot
approaches the target, the repulsive potential force increases due to presence of
obstacle near the target. It is observed that if the repulsive potential force
0
10
20
30
40
50
60
70
-3 -2 -1 0 1 2 3xTo
tal p
otentia
l UTo
tal
159
approaches zero, the robot move towards the target. The new developed
repulsive potential function that take the relative distance between the robot and
the target is given in equation 7.10.
( ) ( ) ( ) ( )
( )
α ρ ρ ρρρ
ρ ρ
⎧ ⎛ ⎞⎪ ⎜ ⎟ ≤⎪ ⎜ ⎟= ⎨ ⎝ ⎠⎪⎪⎩
2
ntarget 0obs
0obsrep
0obs
1 1 1 ‐ q , q if q , q 2 q , q U obs
0 if q , q >
i
i
i
ii
(7.10)
To attain the global minimum at the target for the environment where
three obstacles, one robot and one target present using equation 7.10, the
repulsive potential functions are given in equations 7.11 to 7.13.
( ) ( ) ( ) ( )
( )
α ρ ρ ρρρ
ρ ρ
⎧ ⎛ ⎞⎪ ⎜ ⎟ ≤⎪ ⎜ ⎟= ⎨ ⎝ ⎠⎪⎪⎩
1
1
1
2
n1 target 0obs
0obsrep 1
0obs
1 1 1 ‐ q , q if q , q 2 q , q U obs
0 if q , q >
(7.11)
( ) ( ) ( ) ( )
( )
α ρ ρ ρρρ
ρ ρ
⎧ ⎛ ⎞⎪ ⎜ ⎟ ≤⎪ ⎜ ⎟= ⎨ ⎝ ⎠⎪⎪⎩
2
2
2
2
n2 target 0obs
0obsrep 2
0obs
1 1 1 ‐ q , q if q , q 2 q , q U obs
0 if q , q >
(7.12)
( ) ( ) ( ) ( )
( )
α ρ ρ ρρρ
ρ ρ
⎧ ⎛ ⎞⎪ ⎜ ⎟ ≤⎪ ⎜ ⎟= ⎨ ⎝ ⎠⎪⎪⎩
3
3
3
2
n3 target 0obs
0obsrep 3
0obs
1 1 1 ‐ q , q if q , q 2 q , q U obs
0 if q , q >
(7.13)
160
Where ( ) ( ) ( )ρ ρ ρ1 2 3obs obs obs q , q , q , q , q , q are the minimum distances
between robot q and obstacles 1, 2 and 3.
( ) q , q Targetρ is the distance between the robot and the target.
These equations along with factor ( )Targetn q , q ρ drag the robot towards the
nearest target, thus ensuring the robot to be at the global minimum.
The total potential { TotalU } can be obtained using equation 7.7.
For n = 2 and δ α α α= = =1 2 3 = 1, Figures 7.4 to 7.11 shows there is only one
minimum exist which is at the target.
161
7.2.4 Robot Navigation
With the help of sensors the robot will detect obstacles around it in the
environment. Accordingly the robot will calculate the repulsive navigation forces
(Figure 7.3).
Figure 7.3. Front‐rear axis and Left‐right axis of the robot.
∑ Front‐rearF = Resultant repulsive navigation force along the direction of
front‐rear axis of the robot due to the obstacles which influence the robot.
∑ Left‐rightF = Resultant repulsive navigation force along the direction of left‐
right axis of the robot due to the obstacles which influence the robot.
θ = Current heading angle at which the robot moving in the environment.
Change in steering angle (Phir [ir]) required for obstacle avoidance is
[ ]⎡ ⎤
= ⎢ ⎥⎢ ⎥⎣ ⎦
‐1 Front‐rear
Left‐right
FPhir ir Tan F
(7.14)
New heading angle newθ = θ + Phir [ir] (7.15)
Fron
t – re
ar axis
Left‐right axis
Robot
Right Wheel of robotLeft Wheel of robot
Front Wheel of robot
162
Figure 7.4. Contour plot for total potential field when the target is located at the (0, 0) along with three obstacles.
Figure 7.5. Surface plot for total potential field when the target is located at the (0,0) along with three obstacles.
-2.50 -2.00 -1.50 -1.00 -0.50 0.00 0.50 1.00 1.50 2.00 2.50-2.50
-2.00
-1.50
-1.00
-0.50
0.00
0.50
1.00
1.50
2.00
2.50
Obstacle‐1
Obstacle‐2
Obstacle‐3
Target
Contours of potential field
High value of potential due to Obstacle‐1
High value of potential due to Obstacle-3
High value of potential due to Obstacle‐2
Target
163
Figure 7.6. Orthographic projection for total potential field when the target is located at the (0.5, 0.5) along with three obstacles.
Figure 7.7. Axon metric representation for total potential field when the target is located at the (0.5, 0.5) along with three obstacles.
-2.50 -2.00 -1.50 -1.00 -0.50 0.00 0.50 1.00 1.50 2.00 2.50-2.50
-2.00
-1.50
-1.00
-0.50
0.00
0.50
1.00
1.50
2.00
2.50
Obstacle‐1
Target Obstacle‐2
Obstacle‐3
Contours of potential field
High value of potential due to Obstacle‐2
Target
High value of potential due to Obstacle‐3
High value of potential due to Obstacle‐1
164
Figure 7.8. Contour plot for total potential field when the target is located at the (0, 0) along with four obstacles.
Figure 7.9. Surface plot for total potential field when the target is located at the (0,0) along with four obstacles.
-2.50 -2.00 -1.50 -1.00 -0.50 0.00 0.50 1.00 1.50 2.00 2.50-2.50
-2.00
-1.50
-1.00
-0.50
0.00
0.50
1.00
1.50
2.00
2.50 Obstacle‐1
Contours of potential field
Obstacle‐3
Obstacle‐2
Obstacle‐4
Target
High value of potential due to Obstacle‐2
Target
High value of potential due to Obstacle‐4
High value of potential due to Obstacle‐1
High value of Potential due to Obstacle‐3
165
Figure 7.10. Orthographic projection for total potential field when the target is located at the (0.5, ‐ 0.5) along with four obstacles.
Figure 7.11. Axon metric representation for total potential field when the target is located at the (0.5, ‐0.5) along with four obstacles.
-2.50 -2.00 -1.50 -1.00 -0.50 0.00 0.50 1.00 1.50 2.00 2.50-2.50
-2.00
-1.50
-1.00
-0.50
0.00
0.50
1.00
1.50
2.00
2.50
Obstacle‐3
Contours of potential field
Target
Obstacle‐1
Obstacle‐4
Obstacle‐2
High value of potential due to Obstacle‐2
Target
High value of potential due to Obstacle‐3
High value of potential due to Obstacle‐1
High value of potential due to Obstacle‐4
166
7.2.5 Hybrid Potential Field Navigation technique
The potential field navigation technique combined with other tools to yield a
hybrid controller. In this thesis potential field navigation technique is integrated
with neuro‐fuzzy technique to produce a hybrid one for better navigational
performance in highly cluttered environment. The resulting architecture is
shown in Figure 7.12. The output of the potential field navigation technique is
the initial steering angle. The neural network used here is taken from Chapter‐5
which is a back propagation multi‐layer perceptron having four layers. The input
layer has four neurons. Out of the four neurons three are meant to receive the
distances of the obstacles in front and to the left and right, where as fourth
neuron is for the initial steering angle. The output layer has a single neuron
meant to produce the second estimate of steering angle. The output of the neural
network i.e., the second estimate steering angle is fed to the fuzzy controller
which is discussed in Chapter‐4 along with the information concerning the
distances of the obstacles in front and to the left and right of the robot. The
output of the fuzzy controller is the velocities of the driving wheels. From the
velocities of the driving wheel the steering angle is calculated to avoid obstacles
and reach the target.
167
Figure 7.12. Potential‐field‐neuro‐fuzzy controller for navigation of mobile robots.
Input layer
First hidden layer
Second hidden layer
Output layer
L.O.D.
R.O.D.
F.O.D.
First Estimated Steering Angle
Fuzzy ControllerL.O.D.
R.O.D.
F.O.D.L.W.V.
R.W.V.
Potential F
ield
Con
troller L.O.D.
R.O.D
F.O.D.
T.A.
L.O.D. = Left Obstacle Distance
R.O.D. = Right Obstacle Distance
F.O.D. = Front Obstacle Distance
L.W.V. = Left Wheel Velocity
R.W.V. = Right Wheel Velocity
T.A. = Target Angle
Second Estimated Steering Angle
Neural Controller
168
7.3 Demonstrations
The potential field navigation and potential‐field‐neuro‐fuzzy techniques have
been implemented in different simulated environments. The environments have
been generated artificially containing static obstacles and targets.
7.3.1 Potential Field Navigation Technique
7.3.1.1 Obstacle Avoidance and Target Seeking by Multiple Mobile Robots
This exercise involves forty‐five mobile robots initially assembled into three
groups. One target is present in the scenario. The three groups of robots and the
target are located in U shaped partitions shown in Figure 7.13. Figure 7.14
depicts the final position, when all the robots have reached target by using
potential field navigation technique.
Figure 7.13. Environment before starting of simulation when forty‐five robots involve to reach a target using potential field navigation technique.
Target
Fifteen robots
Obstacles
Fifteen robots
Fifteen robots
Obstacles
Obstacles
Obstacles
169
Figure 7.14. Environment after all the forty‐five robots reach the target using potential field navigation technique.
7.3.2 Potential-Field-Neuro-Fuzzy Technique
7.3.2.1 Escape from Dead Ends
Figure 7.15 and 7.16 shows the ability of the robots, which are trapped within the
dead ends, able to escape from those dead ends and finds the target. Figure 7.15
shows the situation at the beginning of the exercise. Ten robots are involved in
the exercise. Two of the four obstacles are U‐shaped and rest two is rectangular
shaped representing a dead end. From Figure 7.16, it can be seen that all the
robots that have reside inside have escaped and able to negotiate with dead ends
and find the target successfully by using potential‐field‐neuro‐fuzzy technique.
170
Figure 7.15. Escape from dead ends by ten mobile potential‐field‐neuro‐fuzzy technique (Initial State).
Figure 7.16. Escape from dead ends by fifteen mobile robots using potential‐field‐neuro‐fuzzy technique (Final State).
Ten Robots
Obstacles
Target
Obstacles
Obstacles
Obstacles
171
7.3.2.2 Navigation of Several Mobile Robots
Obstacle avoidance by nine hundred ninety‐six mobile robots using potential‐
field‐neuro‐fuzzy technique is shown in Figures 7.17 and 7.18. Figure 7.17 depicts
the starting of the exercise. Figure 7.18 shows the situation after few times the
exercise has begun. It can be noted that the robots stay well away from the
obstacles as well as from each other.
7.3.2.3 Inter Robot Collision Avoidance
This exercise relates to a problem designed to demonstrate that, the robots
do not collide with each other even in a highly cluttered ambience. Figure 7.19
depicts the beginning of the exercise where as Figure 7.20 shows the trajectories
of the robots for the potential‐field‐neuro‐fuzzy controller. It can be noted that
the robots are able to resolve conflict and avoid one another and reach the target
successfully. In this exercise only two robots have been employed for proper
visualisation. Robot 1 follows path p‐q‐r‐s‐t‐u‐v‐w‐x‐y‐z and robot 2 follows path
a‐b‐c‐d‐e‐f‐g. After getting the start command the robots start searching for target
from point ‘a’ and ‘p’. It is clear from the Figure 7.20 that when the robots
reaches close to each other i.e., at point ‘b and q’ and ‘d and s’ they change their
direction to avoid collision between them.
172
Figure 7.17. Navigation scenario of nine hundred ninety‐six mobile robots using potential‐field‐neuro‐fuzzy technique (Initial State).
Figure 7.18. Navigation of one thousand mobile robots using potential‐field‐neuro‐fuzzy technique (Intermediate State).
166 robots
Obstacle
Obstacle
Obstacles
166 robots
166 robots
166 robots
166 robots
166 robots
173
Figure 7.19. Collision avoidance by two mobile robots using potential‐field‐neuro‐fuzzy technique (Initial State).
Figure 7.20. Collision avoidance by two mobile robots using potential‐field‐neuro‐fuzzy technique (Final State).
Robot 1 Robot 2
Obstacles
Obstacles
Obstacles
Target Target
Obstacles
a
e
d
f
g
c
p q
r
u
b
y
z
x
w
v t
s
174
7.3.2.4 Experimental Validation for Two Mobile Robots with the Simulation Results
A comparison has been made between the experimental (Figures 7.21 ‐ 7.25) and
simulation results (Figure 7.19) for potential‐field‐neuro‐fuzzy technique. From
the experiment it is observed that the two real mobile robots follow closely the
paths of simulation as shown in Figure 7.20.
Figure 7.21. Experimental result for two mobile robots using potential‐field‐neuro‐fuzzy technique (Initial stage). Figure 7.22. Experimental result for two mobile robots using potential‐field‐neuro‐fuzzy technique (Intermediate stage ‐ I).
175
Figure 7.23. Experimental result for two mobile robots using potential‐field‐neuro‐fuzzy technique (Intermediate stage ‐ II).
Figure 7.24. Experimental result for two mobile robots using potential‐field‐neuro‐fuzzy technique (Intermediate stage ‐ III).
Figure 7.25. Experimental result for two mobile robots using potential‐field‐neuro‐fuzzy technique (Final stage).
176
7.4 Comparison between Different Controllers
7.4.1 Simulation Results
This exercise is similar to the exercise demonstrated in Section‐6.5 of Chapter‐6.
This section compares the performance between different techniques. An exercise
has been devised to compare the performances of the neuro‐fuzzy, potential field
navigation and the potential‐field‐neuro‐fuzzy techniques. In all the exercises
one robot is located inside four obstacles and one target is located hidden from
the robot’s view. Figure 7.26 represents the initial condition of the environment
for all the controllers. Figures 7.27 ‐ 7.29 depicts the path traced by the robot
using neuro‐fuzzy, potential field navigation and potential‐field‐neuro‐fuzzy
techniques respectively. Total path lengths using the neuro‐fuzzy, potential field
navigation and potential‐field‐neuro‐fuzzy techniques are measured in pixels for
different groups comprising various numbers of robots to reach the target. The
path lengths and the search times are taken statistically from one thousand
simulation results. The final results are given in Table 7.1. Similarly time taken to
reach the target using the neuro‐fuzzy, potential field navigation and potential‐
field‐neuro‐fuzzy techniques are measured for the same number of robots using
statistical method. The results are given in Table 7.2. The path lengths and search
times provides an objective measure of the performance for different techniques.
It can be noted that the potential‐field‐neuro‐fuzzy technique performs the best
among the previous discussed techniques.
177
Figure 7.26. Environment for one robot and one target.
Figure 7.27. Navigation path for one mobile robot to reach target using neuro‐fuzzy technique.
One Robot
Obstacles
Obstacles
Target
Recorded path of robot
178
Figure 7.28 Navigation path for one mobile robot to reach target using potential field navigation technique.
Figure 7.29. Navigation path for one mobile robot to reach target using potential‐field‐neuro‐fuzzy technique.
Recorded path of robot
Recorded path of robot
179
Number
of robots
Total path length in pixels using neuro‐fuzzy technique
Total path length in pixels using potential
field navigation technique
Total path length in pixels using
potential‐field‐neuro‐fuzzy technique
4 360 410 256 8 715 811 511 10 842 985 599 16 1735 1998 1245 24 2517 2905 1826 40 3594 4079 2584 50 4592 5409 3368 70 9098 10570 6747
Table 7.1. Path lengths using different techniques. Number
of robots
Total time taken in seconds using neuro‐
fuzzy technique
Total time taken in seconds using potential field
navigation technique
Total time taken in seconds using potential‐field‐neuro‐fuzzy technique
4 10.35 11.71 7.43 8 20.90 21.15 15.33 10 23.48 27.39 17.22 16 33.12 37.08 23.76 24 54.88 64.03 40.25 40 73.95 122.75 54.23 50 125.71 153.65 92.19 70 207.36 234.40 148.76
Table 7.2. Time taken to reach the target using different techniques.
180
7.4.1.1 Experiments with single Mobile Robot
Figures 7.30 to 7.34 show the experimental results obtained for potential‐field‐
neuro‐fuzzy technique for a single mobile robot similar to the simulated
environment as shown in Figure 7.26. The experimental path follows closely that
traced by the robots during simulation (figure 7. 29). It is seen that the robot is
successfully able to avoid obstacles and reach the targets. Table 7.3 shows the
average times taken by the mobile robots in simulation and experimental modes
for obstacle avoidance and target seeking.
Figure 7.30. Experimental result for single mobile robot (Khepera II) using potential‐field‐neuro‐fuzzy technique (Initial stage).
Figure 7.31. Experimental result for single mobile robot (Khepera II) using potential‐field‐neuro‐fuzzy technique (Intermediate stage ‐ I).
181
Figure 7.32. Experimental result for single mobile robot (Khepera II) using potential‐field‐neuro‐fuzzy technique (Intermediate stage ‐ II).
Figure 7.33. Experimental result for single mobile robot (Khepera II) using potential‐field‐neuro‐fuzzy technique (Intermediate stage ‐ III).
Figure 7.34. Experimental result for single mobile robot (Khepera II) using potential‐field‐neuro‐fuzzy technique (Final stage).
182
Total time taken during simulation in seconds
Total time taken during experiment in seconds
Number of robots
Potential field navigation technique
Potential field neuro‐fuzzy technique
Potential field navigation technique
Potential field neuro‐fuzzy technique
1 10.86 7.01 11.75 8.10 2 11.07 7.21 12.51 8.16 4 11.71 7.43 12.93 8.96
Table 7.3. Time taken by robots in simulation and experiment to reach target (Potential field navigation technique).
7.4.1.2 Experiments with Two Real Mobile Robots
Figures 7.35 to 7.38 demonstrate the activities of the three robots, which are
located in a cluttered environment. They reach the target safely without colliding
with each other and with the obstacles.
Figure 7.35. Target seeking by three mobile robots by using potential‐field‐neuro‐fuzzy technique (Initial scenario).
183
Figure 7.36. Target seeking by three mobile robots by using potential‐field‐neuro‐fuzzy technique (Intermediate scenario ‐ I).
Figure 7.37. Target seeking by three mobile robots by using potential‐field‐neuro‐fuzzy technique (Intermediate scenario ‐ II).
Figure 7.38. All the three mobile robots reach the target by using potential‐field‐neuro‐fuzzy technique.
184
7.5 Summary
This chapter has described the techniques for controlling the navigation of
multiple mobile robots using potential field navigation and potential‐field‐neuro‐
fuzzy techniques in a highly cluttered environment. New repulsive navigation
functions have been developed, by considering the shortest distance between the
target and the robot. The developed navigation functions ensure that the target is
the global minimum of the total navigation field. This technique employs
navigation force, which is calculated by taking into account the distances of the
obstacles around the robot and the bearing of the target. The direction of the
resultant navigation force gives the required steering angle of the robot. With the
use of Petri net model the robots are capable of negotiate with each other. It has
been seen that, by using potential‐field‐neuro‐fuzzy technique the robots are able
to avoid any obstacles (static and moving obstacles), escape from dead ends, and
find targets in a highly cluttered environments. Using these techniques nine
hundred ninety six mobile robots can navigate successfully without colliding
with each other and colliding with obstacles present in the environments. It is
observed from the simulation and experimental results, that the potential‐field‐
neuro‐fuzzy technique is the best compared to the neuro‐fuzzy and potential
field techniques for navigation of multiple mobile robots.
185
8 Simulated Annealing
8.1 Introduction
This chapter describes potential field navigation technique optimised by
simulated annealing technique. In the previous chapter a new potential field
function is developed so as to take care of unknown obstacles and targets during
navigation. The final aims of the robots are to reach the targets. Local minimum
obtained due to potential field can also be avoided by simulated annealing
technique. After utilising simulated annealing technique for optimising potential
field navigation technique, it is observed that, there is a unique global minimum
for an attractive node i.e., target. Afterwards potential field navigation technique
being optimised by simulated annealing technique is hybridised with neuro‐
fuzzy technique to improve the navigation of robots in a highly cluttered
environment.
Part of contents of this chapter has been published in
• “Navigation Technique to control Several Mobile Robots”, International
Journal of Knowledge‐Based and Intelligent Engineering Systems, (2006), Vol. –
10 (5), Pages 387 ‐ 401.
186
8.2 Simulated Annealing
Simulated annealing is an analogy with thermodynamics, specifically with the
way that liquids freeze and crystallize, or metals cool and anneal. At high
temperatures, the molecules of a liquid move freely with respect to one another.
If the liquid is cooled slowly, thermal mobility is lost. The atoms are often able to
line themselves up and form a pure crystal that is completely ordered over a
distance up to billions of times the size of an individual atom in all directions.
This crystal is the state of minimum energy for this system. The amazing fact is
that, for slowly cooled systems, nature is able to find this minimum energy state.
In fact, if a liquid metal is cooled quickly or quenched, it does not reach this state
but rather ends up in a polycrystalline or amorphous state having somewhat
higher energy. So the essence of the process is slow cooling, allowing ample time
for redistribution of the atoms as they lose mobility and ensure a low energy
state.
Simulated annealing is developed to deal with highly nonlinear problems.
Simulated annealing approaches the global maximisation problem (e.g., a
bouncing ball that can bounce over mountains from valley to valley). The
bouncing ball begins at a high ʺtemperatureʺ which enables the ball to make very
high bounces, and make it to bounce over any mountain to access any valley. As
the temperature declines the ball cannot bounce so high and it can also settle to
become trapped in relatively small ranges of valleys. A generating distribution
generates possible valleys or states to be explored. An acceptance distribution is
also defined, which depends on the difference between the function value of the
present generated valley to be explored and the last saved lowest valley. The
acceptance distribution decides probabilistically whether to stay in a new lower
187
valley or to bounce out of it. All the generating and acceptance distributions
depend on the temperature.
8.2.1 Simulated Annealing Technique
Simulated annealing’s major advantage over other methods is the ability to avoid
becoming trapped in local minima.
The requirements for optimisation by simulated annealing are:
A description of robotic environment.
A generator of random changes in the environment; these changes are the
“options” presented to the system
An objective function “E” (analog of energy) whose minimization is the
target for the robot.
A control parameter “T” (analog of temperature) and an annealing
schedule which tells how it is lowered from high to low values, e.g., after
how many random changes in environment is each downward step in T
taken, and how large is that step.
The algorithm employs a random search, which not only accepts changes that
decrease the objective function “E” (assuming a minimisation problem), but also
some changes that increase it. The latter are accepted with a probability
δ⎛ ⎞⎜ ⎟⎝ ⎠
p = exp ET
(8.1)
Where δE is the increase in “E” and “T” is a control parameter, which by
analogy with the original application is known as the system ʹʹtemperatureʺ
irrespective of the objective function involved. The implementation of the basic
SA algorithm is straightforward. Figure 8.1 shows the flow chart:
188
Figure 8.1. The structure of the simulated annealing algorithm.
Input and Assess Initial Solution
Estimate Initial Temperature
Assess New Solution
Generate New Solution
Accept New Solution? No
Update Stores
Yes
Update Stores
Adjust Temperature
Stop
Terminate Search?
Yes
No
189
From the surface and contour plot (Figures 7.4 ‐ 7.11) plotted for different
environment in Chapter‐7. It is observed that the new potential functions have
only global minimum at the target for n=2.
Figure 8.2. The Potential Function.
From Figure 8.2 the new potential function does not guarantee the global
minimum at the target, local minimum still exists. For n = 0, it was observed that
a local minimum exist at x = 0.5. Similarly for n = 0.5, n = 0.8 and n = 1 the local
minimum found at 0.36, 0.01 and 0.01 of x‐ordinates respectively. This indicates
that if the robot moves from the left of that local minimum toward the target, it
will trapped at the local minimum though there is no obstacles in between the
robot and the target. To overcome the local minimum problem, simulated
annealing technique discussed above is used. The simulated annealing algorithm
along with potential field method is described below in form of flow chart
(Figure 8.3). This algorithm (Figure 8.3) is used to find the global minimum
solution in a potential field only when the robot is trapped by local minimum.
0
0.2
0.4
0.6
0.8
1.0
1.21.4
‐1.5 ‐1.0 ‐0.5 0 0.5 x
Total P
otentia
l UTo
tal
n = 0
n = 0.5 n = 0.8
n = 1
Target Obstacle
190
Using the simulated annealing technique a new position P′ for the robot is
chosen randomly from a set of neighbouring positions of the current position P
(Figure 8.3).
The new solution is accepted unconditionally if the new position has
lower potential energy i.e., U (P) ≥ U (P′ ) or else with the condition T -
e∆
< 0.3,
where ∆ = U (P′ ) ‐ U (P). If P′ is not accepted, the algorithm proceeds to the next
step by decreasing the temperature at a rate γ. This procedure is repeated until it
escapes from the local minimum. After the robot escapes from the minimum, it
follows the negative gradient. This procedure is repeated until the target is
reached.
An algorithm has been developed (Figure 8.4) for finding out the initial
temperature T (0). Where Ninit, is the number of performed cycles in the
initialization loop, N is the loop index. N+ is the number of steps increasing the
total potential function U (x). ∆(+) is the increase in the potential field function. T =
∞, is the constant temperature in the optimisation and s = s0 is the constant
variance used in the randomization.
191
Figure 8.3. Path‐planning algorithm.
S ta rt
S e t initia l pos ition
of robota nd ta rge t
Ca lcula tion of tota l
pote ntia l function
Ca lcula tion of
S te e ring a ngle
Go to the ne w pos ition
S top
Arrived at thegoal position
Trapped at local
minima
Set P=x and T=T(0)
P ick Ra ndom Ne ighbourhood, P '
Ca lcula tion of AP F a t P ' = U(P ')
S e t
ITRY = ITRY+1
Is ITRY>Max Try
?
Re duce Te m p
Go toNew Position
YesYes
NoNo
ITRY = 1
Ne w S olution
IsEngeryLower
?
Is itBest
Solution?
S trore a s Be s t S olution
Ra n<
Yes
No
NoYes
No
Yes
from Loca lEscape
T=T(f)Minim a or
Yes
No
Yes Is ⎟
⎠
⎞⎜⎝
⎛ ∆
T -
e
No
x
192
Figure 8.4. Initialisation algorithm.
∞ o
Randomise P and analyse T = s = s
∆Is > 0 ?
N = N + 1
Calculate T (O)
( ) ( )∆ ∆ ∆+ +
+ +
N = N + 1
= +
( )∆ ++N = N = 0, = 0
No
Yes
initIs N < N ?
No
Yes
193
8.2.2 Hybrid Technique
The potential field method optimised by simulated annealing technique gives
rise to an efficient navigation technique. This technique is then hybridised with
neuro‐fuzzy controller to improve the navigation of robots in highly cluttered
environment.
The resulting architecture is shown in Figure 8.5. The role of the potential‐
field‐simulated‐annealing controller is to estimate the initial steering angle for
the neuro‐fuzzy controller. Then the initial steering angle is fed to neural
controller along with the distances of obstacles to the left, to the right and in front
of the robot. The neural network used here is a back propagation multilayer
perceptron having four layers taken from Chapter‐5. The output of the neural
network i.e., the second estimated steering angle is fed to the fuzzy controller
along with the distances of the obstacles in front and to the left and right of the
robot. Gaussian Membership functions are used in the fuzzy controller, which is
discussed in Chapter‐4. The output of the fuzzy controller is to compute the
velocities of the driving wheels. From the velocities of the driving wheel the
steering angle is calculated to avoid obstacles and reach the target.
194
Figure 8.5. Potential‐field‐simulated‐annealing‐neuro‐fuzzy controller for navigation of mobile robots.
Input layer
First hidden layer
Second hidden layer
Output layer
L.O.D.
R.O.D.
F.O.D.
First Estimated Steering Angle
Fuzzy ControllerL.O.D.
R.O.D.
F.O.D.L.W.V.
R.W.V.
Potential‐F
ield‐Sim
ulated‐
Ann
ealin
g Con
troller
L.O.D.
R.O.D
F.O.D.
T.A.
L.O.D. = Left Obstacle DistanceR.O.D. = Right Obstacle Distance
F.O.D. = Front Obstacle Distance L.W.V. = Left Wheel Velocity R.W.V. = Right Wheel VelocityT.A. = Target Angle
Second Estimated Steering Angle
Neural Controller
195
8.3 Demonstrations
8.3.1 Inter Robot Collision Avoidance
This exercise relates to a problem designed to demonstrate that, the robots do not
collide with each other even in a highly cluttered ambience. In this exercise only
two robots have been employed for proper visualisation. Figure 8.6 depicts the
beginning of the exercise where as Figure 8.7 shows the trajectories of the robots
for the potential‐field‐simulated‐annealing‐neuro‐fuzzy technique. It can be
noted that the robots are able to resolve conflict and avoid one another and reach
the target successfully. It is clear from the Figure 8.7 that when the robots are
close to each other they change their direction to avoid collision between them.
The path traced by the robot ‘a’ is a‐b‐c‐d‐e and robot ‘p’ follows the path p‐q‐r‐s‐
t‐u‐v‐w.
Figure 8.6. Inter robot collision avoidance using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique (Initial scenario).
Robot a Robot p
Obstacles
Target Target
ObstaclesObstacles
Obstacles
196
Figure 8.7. Inter robot collision avoidance using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique (Final scenario).
8.3.2 Experimental Validation for Two Mobile Robots with the Simulation Results
Experimental validation of the developed potential‐field‐simulated‐annealing‐
neuro‐fuzzy technique has been done with the simulated path (Figure 8.6) with
two mobile robots. From the experiment it is observed that the two real mobile
robots follow closely the path of simulation as shown in Figure 8.7. The
experimental results are shown in Figures 8.8 ‐ 8.12.
ap
c
r
e w
v s
t
d
bq
u
197
Figure 8.8. Experimental result for two mobile robots (Khepera II and Boe‐bot) using potential‐field‐ simulated‐annealing‐neuro‐fuzzy technique (Initial stage).
Figure 8.9. Experimental result for two mobile robots using potential‐field‐ simulated‐annealing‐neuro‐fuzzy technique (Intermediate stage ‐ I).
Figure 8.10. Experimental result for two mobile robots using potential‐field‐ simulated‐annealing‐neuro‐fuzzy technique (Intermediate stage ‐ II).
198
Figure 8.11. Experimental result for two mobile robots using potential‐field‐ simulated‐annealing‐neuro‐fuzzy technique (Intermediate stage ‐ III).
Figure 8.12. Experimental result for two mobile robots (Khepera II and Boe‐bot) using potential‐field‐ simulated‐annealing‐neuro‐fuzzy technique (Final stage).
8.3.3 Escape from Dead Ends
Figure 8.13 shows the beginning of the exercise where eight robots are trapped
within the dead ends. Two of the four obstacles are U‐shaped and rests two are
rectangular shaped representing the dead ends. It can be seen that all the eight
robots, (Figure 8.13) have escaped from the dead ends and find the target
successfully (Figure 8.14) by using potential‐field‐simulated‐annealing‐neuro‐
fuzzy technique.
199
Figure 8.13. Escape from of dead ends by using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique (Initial scenario).
Figure 8.14. Escape from dead ends by using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique (Final scenario).
Eight Robots
Obstacles
Target
Obstacles
Obstacles
Obstacles
200
8.3.4 Navigation of Several Mobile Robots
Obstacle avoidance by one thousand mobile robots using potential‐field‐
simulated‐annealing‐neuro‐fuzzy technique is shown in Figure 8.15 and 8.16.
Figure 8.15 depicts the starting of the exercise. Figure 8.16 shows the situation
after few times the exercise has begun. It can be noted that the robots stay well
away from the obstacles and from each other.
Figure 8.15. Scenario for navigation of one thousand mobile robots before simulation by using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique.
Obstacles
Obstacles
Obstacles
200 Robots
200 Robots
200 Robots
200 Robots
200 Robots
201
Figure 8.16. Scenario for navigation of one thousand mobile robots by using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique after sometime when simulation started.
202
8.4 Comparison between Different Controllers
8.4.1 Simulation Results
An exercise has been devised to compare the performances of the rule‐based‐
neuro‐fuzzy, potential‐field‐neuro‐fuzzy and potential‐field‐simulated‐
annealing‐neuro‐fuzzy techniques. In the exercise one robot is located inside two
rectangular obstacles and two U‐shaped obstacles. A target is present in the
environment. Figure 8.17 represents the initial condition of the environment for
all the techniques. Figures 8.18 to 8.20 depict the path traced by the robot using
rule‐based‐neuro‐fuzzy, potential‐field‐neuro‐fuzzy and potential‐field‐
simulated‐annealing‐neuro‐fuzzy techniques respectively. Total path lengths
using rule‐based‐neuro‐fuzzy, potential‐field‐neuro‐fuzzy and potential‐field‐
simulated‐annealing‐neuro‐fuzzy techniques are measured in pixels for four,
eight, ten, sixteen, twenty‐four, forty, fifty and seventy mobile robots. The path
lengths are taken statistically from one thousand simulation results. The final
results are presented in Table 8.1. Similarly time taken to reach the target using
rule‐based‐neuro‐fuzzy, potential‐field‐neuro‐fuzzy and potential‐field‐
simulated‐annealing‐neuro‐fuzzy techniques is measured for the same number
of robots using statistical method. The results are depicted in Table 8.2. The path
lengths and search times are giving an objective measure of the performance for
different techniques. It can be noted that the potential‐field‐simulated‐annealing‐
neuro‐fuzzy technique performs the best among the above‐discussed techniques.
203
Figure 8.17. Environment for one robot and one target.
Figure 8.18. Navigation path for one mobile robot to reach target using rule‐based‐neuro‐fuzzy technique.
Recorded path of robot
One Robot
Obstacles
Obstacles
Target
204
Figure 8.19. Navigation path for one mobile robot to reach target using potential‐field‐neuro‐fuzzy technique.
Figure 8.20. Navigation path for one mobile robot to reach target using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique.
Recorded path of robot
Recorded path of robot
205
Number of robots
Total path length in pixels using rule‐based‐neuro‐fuzzy
technique
Total path length in pixels using
potential‐field‐neuro‐fuzzy technique
Total path length in pixels using
potential‐field‐simulated‐
annealing‐neuro‐fuzzy technique
4 295 256 216 8 614 511 429 10 679 599 486 16 1465 1245 1098 24 2107 1826 1439 40 3692 2584 2399 50 3994 3368 2862 70 7497 6747 5136
Table 8.1. Path lengths using different techniques.
Number of robots
Total time taken in seconds using rule‐based‐neuro‐fuzzy
technique
Total time taken in seconds using potential‐field‐neuro‐fuzzy technique
Total time taken in seconds using potential‐field‐simulated‐
annealing‐neuro‐fuzzy technique
4 8.48 7.43 6.21 8 18.04 15.33 12.92 10 19.50 17.22 13.32 16 28.52 23.76 19.01 24 45.57 40.25 32.65 40 64.31 54.23 46.08 50 108.46 92.19 92.55 70 182.16 148.76 122.04
Table 8.2. Time taken to reach the target using different techniques.
206
8.4.2 Experiments with Single Real Mobile Robot
Figures 8.21 ‐ 8.25 show the experimental results obtained for potential‐field‐
simulated‐annealing‐neuro‐fuzzy technique for a single robot similar to the
simulated environment as shown in Figure 8.17. The experimental path follows
closely that traced by the robot during simulation. Table 8.3 shows the average
times taken by the robots in simulation and experiment performed for obstacles
avoidance and target seeking.
Total time taken during simulation in seconds
Total time taken during experiment in seconds
Number of robots
Potential field neuro‐
fuzzy technique
Potential‐field‐simulated‐
annealing‐neuro‐fuzzy technique
Potential field neuro‐
fuzzy technique
Potential‐field‐simulated‐
annealing‐neuro‐fuzzy technique
1 5.90 5.35 7.75 7.05 2 7.03 6.01 8.63 8.12 4 7.43 6.21 9.09 8.72
Table 8.3. Time taken by robots in simulation and experiment to reach target (Simulated annealing).
Figure 8.21. Experimental result for one mobile robot (Khepera II) using potential‐field‐ simulated‐annealing‐neuro‐fuzzy technique (Initial stage).
207
Figure 8.22. Experimental result for one mobile robot using potential‐field‐ simulated‐annealing‐neuro‐fuzzy technique (Intermediate stage – I).
Figure 8.23. Experimental result for one mobile robot using potential‐field‐ simulated‐annealing‐neuro‐fuzzy technique (Intermediate stage – II).
Figure 8.24. Experimental result for one mobile robot (Khepera II) using potential‐field‐ simulated‐annealing‐neuro‐fuzzy technique (Final stage).
208
8.4.3 Experiments with Multiple Mobile Robots
Figures 8.25 ‐ 8.29 show that, three robots which are placed in a line are able to
avoid the obstacles and reach the target without colliding with each other.
Figures 8.30 ‐ 8.34 and Figures 8.35 ‐ 8.38 demonstrate that all the three robots,
which are located in a cluttered environment, reach the target without colliding
with each other or colliding with the target. Navigation of four mobile robots are
shown in Figures 8.39 ‐ 8.41. It has been observed that the robots are successfully
avoid obstacles.
Figure 8.25. Collision avoidance by three mobile robots using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique (Initial State).
Figure 8.26. Collision avoidance by three mobile robots using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique (Intermediate State ‐ I).
209
Figure 8.27. Collision avoidance by three mobile robots using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique (Intermediate State ‐ II).
Figure 8.28. Collision avoidance by three mobile robots using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique (Intermediate State ‐ III).
Figure 8.29. Collision avoidance by three robots using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique after all the robots reaches the target.
210
Figure 8.30. Target seeking by three mobile robots using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique (Initial scenario).
Figure 8.31. Target seeking by three mobile robots using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique (Intermediate scenario ‐ I).
Figure 8.32. Target seeking by three mobile robots using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique (Intermediate scenario ‐ II).
211
Figure 8.33. Target seeking by three mobile robots using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique (Intermediate scenario ‐ III).
Figure 8.34. All the three mobile robots reach the target by using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique.
212
Figure 8.35. Target seeking by three mobile robots with two targets in the environment using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique (Initial scenario).
Figure 8.36. Target seeking by three mobile robots with two targets in the environment using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique (Intermediate scenario ‐ I).
213
Figure 8.37. Target seeking by three mobile robots with two targets in the environment using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique (Intermediate scenario ‐ II).
Figure 8.38. Target seeking by three mobile robots with two targets in the environment using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique (Final scenario).
214
Figure 8.39. Navigation of four mobile robots in a cluttered environment using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique (Initial Scenario).
Figure 8.40. Navigation of four mobile robots using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique (Intermediate Scenario ‐ I).
Figure 8.41. Navigation of four mobile robots using potential‐field‐simulated‐annealing‐neuro‐fuzzy technique (Intermediate Scenario ‐ II).
215
8.5 Summary
This chapter has described potential‐field‐simulated‐annealing‐neuro‐fuzzy
technique for navigation of multiple mobile robots. It is observed that, by using
potential‐field‐simulated‐annealing‐neuro‐fuzzy technique the robots are able to
avoid any obstacles (static and moving obstacles), escape from dead ends, and
find targets. Using this technique one thousand mobile robots can also navigate
successfully without collision with other robots and obstacles present in the
environment. It is also concluded from experimental and simulation results that
the potential‐field‐simulated‐annealing‐neuro‐fuzzy technique is the best
technique for navigation of mobile robots among the above‐discussed
techniques.
216
9 Conclusions and Further Work The main objectives of this thesis work have been to investigate effective
techniques for controlling the navigation of multiple mobile robots in a cluttered
environment. This chapter summarises the main contributions, conclusions of the
present investigations and scope for further works.
9.1 Contributions
From the kinematic analysis of mobile robot; right wheel and left wheel
velocities of the mobile robot are calculated. From the wheel velocities,
steering angle for the robot is calculated.
Fuzzy logic technique has been developed using three types of
membership functions. The fuzzy rules considered for all the three
membership functions are deployed for multiple mobile robots. The fuzzy
logic controller utilising Gaussian membership function is found best
among the three types of membership functions for navigation of multiple
mobile robots in an unknown environment.
A neural network technique has been devised for mobile robot navigation.
This has been modified to produce a hybrid neuro‐fuzzy technique for
enhancing the navigational performance of robots.
A rule‐based controller and a hybrid rule‐based‐neuro‐fuzzy technique
also have been realised. The latter yielded the best results of all the
techniques discussed in Chapter‐4 and Chapter‐5.
A mathematically based potential field navigation technique has been
developed for multiple mobile robot navigation. Hybrid controller based
on potential field neuro‐fuzzy technique has been implemented to
enhance performance of robot navigation in various unknown scenario.
217
Simulated annealing has been used for escaping from local minima. A
hybrid potential‐field‐simulated‐annealing‐neuro‐fuzzy technique has
also been developed. This hybrid technique yielded the best results of all
the techniques investigated in this research.
9.2 Conclusions
From the simulation and experimental results, it is concluded that the
developed simple fuzzy controller with Gaussian membership is able to
control the navigation of multiple mobile robots in an unknown cluttered
workspace.
The neuro‐fuzzy technique has increased the performance compared to
both the neural and fuzzy logic techniques. Similarly the rule‐based‐
neuro‐fuzzy technique performs better than the simple rule‐based
technique.
The best performing techniques are based on potential‐field‐simulated‐
annealing‐neuro‐fuzzy technique, which gives robust navigation results in
an unknown environment. This technique provides better result than
other hybrid techniques developed, namely the neuro‐fuzzy and rule‐
based‐neuro‐fuzzy technique.
9.3 Further Work
The following are suggested for further investigations:
In the current research work, the techniques developed for multiple
mobile robot navigation enable the robots to avoid collision among each
other and with static obstacles. However, further development of the
techniques may be required for the avoidance of moving obstacles other
218
than the robots. These obstacles (e.g. animals, moving equipments etc.)
may or may not have sensors mounted on them that are able to
communicate with robots.
Co‐ordination between the robots for co‐operative task with static as well
as moving obstacles.
Further work needs to be undertaken in the area of optimising the number
of robots reaching and handling a particular object.
The navigational techniques developed in this research work are capable
of detecting and reaching the static targets. Further modifications in these
navigational techniques may be carried out so that the robots can not only
detect dynamic targets but also reach them using an optimum path.
Further work with respect to the use of visual sensing may be undertaken
to improve the environment perception of mobile robots. This may help to
facilitate co‐operation between the robots in an intelligent manner. It may
also be used in the context of robot control through the WWW by
presenting on‐line pictures of the robot’s work area. Digital cameras with
suitable computer interface may be employed for this purpose.
New potential function may be developed to control more number of
mobile robots.
219
Appendix – A
Software used for Robot navigation
A.1 Navigation Software
The ‘ROBPATH’ used for navigation demonstrations reported in this research
work is developed by the author. The software runs on a PC operating under
WINDOWS NT/95/98/2000/XP/Vista. The menus incorporated in the software are
described below.
A.1.1 Obstacle Menu:
The Obstacle Menu allows the user to draw different types of obstacles in the
robots’ environment. The obstacles that can be constructed are shown in
Figure a.1.
A.1.2 Number of Robot Menu:
Using this menu, a user can draw any number of robots (in between 1 to 1000) as
required to be placed in the environment. For example fifteen robots are shown
in Figure a.2.
A.1.3 Run Menu:
With this menu, the user can choose to run the software in simulation mode or
control the navigation of real mobile robots. The menu is given in Figure a.3.
A.1.4 Techniques Menu:
This menu enables the user to select the techniques to control the navigation of
the robots. The menu is shown in Figure a.3.
220
Figure a.1. Obstacles.
Figure a.2. Fifteen mobile robots.
(a) Boundary of the environment
(b) Wall (Line)
(d) Triangular sharp edge object (e) Rectangular object
(f) Parallelogram type object (g) Hexagonal type object
(h) U‐shaped objects
(c) Circular object
221
Figure a.3. View of the software (ROBOPATH) front‐end user for navigation of multiple mobile robots.
A.1.5 Target Menu:
This menu is for placing targets in the environment. Any number of targets can
be Chosen for the robot environment Figure a.3.
A.1.6 Manual Command (Parameter Menu):
This menu contains four commands (Figure a.3)
a) Start_Again: This command is for re‐starting a process with exiting
software.
b) Refresh_Screen: This command is for cleaning the screen. It has the same
action as clicking the right button on the mouse.
Fuzzy Neural Neurofuzzy Rulebased Rulebasedneurofuzzy Navigation field method Hybrid PEF method Others
222
c) Robot_Behaviour: This command activates a dialog box that enables the
user to select a particular robot and control its movements manually. The dialog
box can be seen in Figure a.3.
d) Drag_Obs: Using this sub‐menu the user can drag any obstacle to any
place in the environment at any time to re‐arrange the cluttered environment.
e) Obs_Delete: By the help of this menu the user can delete any obstacle at
any time from the environment.
223
Appendix – B
Petri Net Model
The theory of Petri Nets was developed from the work of Carl Adam Petri in
Germany in 1962. He developed a new model for information flow in a
communication system [230]. Petri Net model is used as a visual communication
aid to model the system behaviour. It is based on strong mathematical
foundation. Petri Net is a graphical paradigm for the formal description of the
logical interactions among parts or of the flow of activities in complex systems.
Petri Net is particularly suited to model:
–Concurrency and Conflict;
–Sequencing, conditional branching and looping;
–Synchronization;
–Sharing of limited resources and
–Mutual exclusion.
B.1 Basic Definitions of Petri Net Model:
A Petri net is a bipartite directed graph consisting of two kinds of nodes: places
and transitions [231] (Figure b.1).
–Places typically represent conditions within the system being modeled
–Transitions represent events occurring in the system that may cause change in
the condition of the system
–Arcs connect places to transitions and transitions to places but never an arc
from a place to a place or from a transition to a transition. In addition to the basic
elements of Petri Nets i.e., places, transitions and direct arcs, tokens are included
224
to model the systems. In Petri net theory, places represent status such as
operation process, conditions or availability of resources e.g., a robot is ready to
move in an environment. Transitions are used to model events i.e., the start and
termination of operations. Places contain tokens (denoted by circles) and the
distribution of tokens in the place of Petri Net is called its marking. The
execution of a Petri net is controlled by the position and movement of these
tokens.
In a Petri Net model, Petri Net structure (Z) can be defined as a five – tuple [207]
Z = (P,T,I,O,m)
Where
• P = {p1,p2,……………………..pm} is a finite set of places, m≥ 0.
• T = {t1,t2,……………………..tn} is a finite set of transitions, n≥ 0.
• { }⊆I P X T is the input function that defines the set of directed arcs from
places to transitions.
• { }⊆O T X P is the output function that defines the set of directed arcs
from transition to places.
• →m : P N is a marking whose component represents the number of
tokens in the corresponding place.
225
Figure b.1. A simple Petri Net model.
Input arcs are directed arcs drawn from places to transitions, representing the
conditions that need to be satisfied for the event to be activated
Output arcs are directed arcs drawn from transitions to places, representing the
conditions resulting from the occurrence of the event
Input places of a transition are the set of places that are connected to the
transition through input arcs
Place
Token
Transition
Arc
Before firing
After firing
226
Output places of a transition are the set of places to which output arcs exist from
the transition
Tokens are dots (or integers) associated with places; A place containing tokens
indicates that the corresponding condition holds
Marking of a Petri net is a vector listing the number of tokens in each place of the
net ( )1 2 3 pn n n ...........n , P = of places .
When input places of a transition have the required number of tokens, the
transition is enabled
An enabled transition may fire (event happens) taking a specified number of
tokens from each input place and depositing a specified number of tokens in
each of its output place.
227
Firing example 2 2 22H + O = 2H O
Figure b.2. A simple firing example using Petri Net model.
H2
O2
H2O
T
2
2
Before firing
H2
O2
H2O
T
2
2
After firing
228
Role of a place
• A type of communication medium, like a telephone line, a middleman, or
a communication network;
• A buffer: for example, a depot, a queue or a post bin;
• A geographical location, like a place in a warehouse, office or hospital;
• A possible state or state condition: for example, the floor where an
elevator is, or the condition that a specialist is available.
Role of a transition
• An event: for example, starting an operation, the death of a patient, a
change seasons or the switching of a traffic light from red to green;
• A transformation of an object, like adapting a product, updating a
database, or updating a document;
• A transport of an object: for example, transporting goods, or sending a
file.
229
Role of a token
• A physical object, for example a product, a part, a drug, a person;
• An information object, for example a message, a signal, a report;
• A collection of objects, for example a truck with products, a warehouse
with parts, or an address file;
• An indicator of a state, for example the indicator of the state in which a
process is, or the state of an object;
• An indicator of a condition: the presence of a token indicates whether a
certain condition is fulfilled.
230
Appendix - C
Description of Experimental Mobile Robots
C.1 Khepera II Robot
Figure c.1. Khepera II robot.
proximity sensors, an interface with image sensor and an on‐board power
supply. Each IR sensor is composed of an emitter and an independent receiver.
The infrared sensors allow absolute ambient light and estimation, by reflection,
of the relative position of an object to the robot to be measured. In fact, these
estimations give information about the distances between the robot and the
obstacles.
In this thesis, Khepera II, Boe‐Bot,
Hemisson, and Koala robots are used
for experimental verification. The
Khepera II (Figure c.1) is cylindrical
in shape, measuring 5.5 cm in
diameter and 3 cm in height. Its small
size allows experiments to be
performed in a small work area. The
basic configuration of the Khepera II
is composed of the CPU and the
sensory motor boards. It includes two
DC motors coupled with incremental
sensors, eight analog infrared (IR)
231
C.2 Boe-Bot Robot
The Boe‐Bot robot (Figure c.2) is built on a high quality brushed aluminum
chassis that provides a sturdy platform for the servomotors and printed circuit
board. This robot is rectangular in shape, measuring 14 cm in length 12.5 cm in
width and 15.5 cm in height. The rear wheel is a drilled polyethylene ball held in
place with a cotter pin. Ultrasonic sensors are mounted for obstacles detections.
Image sensors mounted on both the robots are used for target detection.
Figure c.2. Boe‐Bot robot.
232
C.3 Hemisson Robot
The Hemisson robot is equipped with several sensors and a programmable 8bit
MCU. Its size is 12 cm in diameter and weighs 200 gm. It has two DC motors to
drive independently both wheels. The Processor is PIC16F877 (20MHz CPU
clock, 8 bit, 8K words program memory). Sensors mounted on the robot are 8
ambient light sensors (infrared), 6 obstacle detection sensors (infrared) and 2 line
detection sensors. The power supply is from a standard 9V battery. The robot has
serial port for communication with computer (DB9 connector), one TV remote
receiver, one Buzzer, four LEDs, four Programmable Switches. The robot is able
to avoid obstacles, detect ambient light intensity and follow a line on the floor.
Other equipments include programmable LED, buzzer and switches.
Figure c.3. Hemisson Robot.
233
C.4 Koala Robot The Koala robot is a robotic platform for real‐world experiments and is more
powerful, and capable of carrying larger accessories than khepera. It rides on 6
wheels having Length: 32 cm, Width: 32 cm, Height: 20 cm and sports stylish
bodywork for attractive demonstrations. Its weight is 4 kg with battery 3.6 kg
with DC‐DC converter. The processor installed in the koala robot is Motorola
68331 @ 22MHz, RAM is 1Mbyte and ROM is 1Mbyte. Two DC brushed servo
motors with integrated incremental encoders (roughly 19 pulses per mm of robot
motion) is installed in the robot. The sensors mounted on the robot are 16 Infra‐
red proximity and ambient light sensors, four optional triangulation longer‐
range IR sensors and 6 optional ultrasonic sonar sensors. The maximum payload
the robot can take is 3 kg. It has been designed for easy to use, easy to transport,
and able to deal with a standard office environment as well as a rough indoor
terrain. It is also fully software compatible with Khepera.
Figure c.4. Koala Robot
234
Appendix – D
Data Mining Tools See5
Data mining is about extracting patterns from a warehoused data. See5 is data
mining software. Some important features of See5 (Figure d.1 and d.2) are
described below:
• See5 has been designed to analyse substantial databases containing
thousands to hundreds of thousands of records and tens to hundreds of
numeric or nominal fields.
• To maximize interpretability, See5 classifiers are expressed as decision
trees or sets of if‐then rules, forms that are generally easier to understand
than neural networks.
• See5 is easy to use and does not presume advanced knowledge of
Statistics or Machine Learning.
D.1 See5 Required Following files:
D.1.1 Application Files
Every See5 application has a short name called a filestem. All files read or written
by See5 for an application have names of the form filestem.extension where
filestem identifies the application and extension describes the contents of the file.
Here is a summary table (Table d.1) of the extensions used by See5
D.1.2 Names File
The first essential file is the names file (e.g. rule9.names) that describes the
attributes and classes.
235
This file concerns credit card applications. All attribute names and values have
been changed to meaningless symbols to protect confidentiality of the data.
steering angle. | classes
left distance : continuous.
front distance : continuous.
right distance : continuous.
target angle : continuous.
change in steering angle: ‐2,‐6,‐7,‐9,2,4,6,8,10,16.
D.1.3 Data File
The second essential file, the applicationʹs data file (e.g. rule9.data) provides
information on the training cases from which See5 will extract patterns.
For example, the first five cases from file rule9.data are:
13,30,8,10‐6
13,30,10,11,‐6
13,30,13,11,‐6
13,30,15,12,‐7
13,30,18,12,‐7
Here is the main window of See5 after the rule9 application has been selected
(Fig. 19.).
The main window of See5 has six buttons on its toolbar. From left to right, they
are
236
D.1.3.1 Locate Data
Invokes a browser to find the files for your application, or to change the current
application;
D.1.3.2 Construct Classifier
Selects the type of classifier to be constructed and sets other options;
D.1.3.3 Stop
Interrupts the classifier‐generating process;
D.1.3.4 Review Output
Re‐displays the output from the last classifier construction (if any);
D.1.3.5 Use Classifier
Interactively applies the current classifier to one or more cases; and
D.1.3.6 Cross-Reference
Shows how cases in training or test data relate to (parts of) a classifier and vice
versa.
These functions can also be initiated from the File menu.
The Edit menu facilities changes to the names and costs files after an
applicationʹs files have been located.
D.1.4 Constructing Classifiers
Once the names, data, and optional files have been set up, everything is ready to
use See5. The first step is to locate the date using the Locate Data button on the
toolbar (or the corresponding selection from the File menu). Rule9 data has been
located in this manner. There are several options that affect the type of classifier
that See5 produces and the way that it is constructed. The Construct Classifier
237
button on the toolbar (or selection from the File menu) displays a dialog box
shown in Fig. 20 that sets out these classifier construction options.
D.1.5 Rulesets
See5 has ability to generate classifiers called rulesets that consist of unordered
collections of if‐then rules. Some of the rules given below:
Rule 1:
left obstacle distance > 18
front obstacle distance <= 12
right obstacle distance > 30
right obstacle distance <= 48
target angle > 12
target angle <= 14
‐> class ‐7 [0.962]
Rule 2:
left obstacle distance > 18
front obstacle distance <= 12
right obstacle distance > 30
right distance <= 48
target angle > 14
target angle <= 16
‐> class ‐9 [0.955]
238
Figure d.1. The main window of See5.
Figure d.2. The Main dialog box.
239
names description of the applicationʹs attributes
[required]
data cases used to generate a classifier [required]
test unseen cases used to test a classifier [optional]
cases cases to be classified subsequently [optional]
costs differential misclassification costs [optional]
tree decision tree classifier produced by See5
[output]
rules ruleset classifier produced by See5 [output]
out report produced when a classifier is generated
[output]
set settings used for the last classifier [output]
Table d.1. Summary table of the extensions used by See5.
240
Appendix – E
Data for Rule-based Controller
The data set used in the algorithm to generate the rules using See 5 software:
Each data set comprises of left obstacle distance, front obstacle distance, right
obstacle distance, target angle and change in steering angle.
60,60,10,12,‐7 60,60,12,12,‐7 60,60,14,12,‐7 60,60,16,12,‐7 60,60,18,12,‐7 60,60,20,12,‐7 60,60,22,12,‐7 60,60,24,12,‐7 60,60,26,12,‐7 60,60,28,12,‐7 60,60,30,12,‐7 60,60,32,12,‐9 60,60,34,12,‐9 60,60,36,14,‐7 60,60,38,14,‐7 60,60,40,14,‐7 60,60,42,14,‐7 60,60,44,14,‐7 60,60,46,14,‐7 60,60,48,14,‐7 60,60,50,14,‐5 60,60,52,14,‐5 60,60,54,14,‐5 60,60,56,14,‐5 60,60,58,14,‐5 60,60,60,14,‐5 60,60,10,16,‐7
60,60,36,12,‐9 60,60,38,12,‐9 60,60,40,12,‐9 60,60,42,12,‐9 60,60,44,12,‐9 60,60,46,12,‐9 60,60,48,12,‐9 60,60,50,12,‐5 60,60,52,12,‐5 60,60,54,12,‐5 60,60,56,12,‐5 60,60,58,12,‐5 60,60,60,12,‐5 60,60,22,16,‐7 60,60,24,16,‐7 60,60,26,16,‐7 60,60,28,16,‐7 60,60,30,16,‐7 60,60,32,16,‐9 60,60,34,16,‐9 60,60,36,16,‐9 60,60,38,16,‐9 60,60,40,16,‐9 60,60,42,16,‐9 60,60,44,16,‐9 60,60,46,16,‐9 60,60,48,16,‐9
60,60,10,14,‐8 60,60,12,14,‐8 60,60,14,14,‐8 60,60,16,14,‐8 60,60,18,14,‐8 60,60,20,14,‐8 60,60,22,14,‐8 60,60,24,14,‐8 60,60,26,14,‐8 60,60,28,14,‐8 60,60,30,14,‐8 60,60,32,14,‐7 60,60,34,14,‐7 60,60,60,16,‐5 60,60,10,20,7 60,60,12,20,7 60,60,14,20,7 60,60,16,20,7 60,60,18,20,7 60,60,20,20,7 60,60,22,20,7 60,60,24,20,7 60,60,26,20,7 60,60,28,20,7 60,60,30,20,7 60,60,32,20,9 60,60,34,20,9
241
60,60,12,16,‐7 60,60,14,16,‐7 60,60,16,16,‐7 60,60,18,16,‐7 60,60,20,16,‐7 60,60,46,20,9 60,60,48,20,9 60,60,50,20,9 60,60,52,20,9 60,60,54,20,9 60,60,56,20,9 60,60,58,20,9 60,60,60,20,9 60,60,10,22,10 60,60,12,22,10 60,60,14,22,10 60,60,16,22,10 60,60,18,22,10 60,60,20,22,10 60,60,22,22,10 60,60,24,22,10 60,60,26,22,10 60,60,28,22,10 60,60,30,22,10 60,60,56,24,12 60,60,58,24,12 60,60,60,24,12 60,60,10,26,13 60,60,12,26,13 60,60,14,26,13 60,60,16,26,13 60,60,18,26,13 60,60,20,26,13 60,60,22,26,13 60,60,24,26,13 60,60,26,26,13
60,60,50,16,‐5 60,60,52,16,‐5 60,60,54,16,‐5 60,60,56,16,‐5 60,60,58,16,‐5 60,60,32,22,11 60,60,34,22,11 60,60,36,22,11 60,60,38,22,11 60,60,40,22,11 60,60,42,22,11 60,60,44,22,11 60,60,46,22,11 60,60,48,22,11 60,60,50,22,11 60,60,52,22,11 60,60,54,22,11 60,60,56,22,11 60,60,58,22,11 60,60,60,22,11 60,60,10,24,12 60,60,12,24,12 60,60,14,24,12 60,60,16,24,12 60,60,42,26,13 60,60,44,26,13 60,60,46,26,13 60,60,48,26,13 60,60,50,26,13 60,60,52,26,13 60,60,54,26,13 60,60,56,26,13 60,60,58,26,13 60,60,60,26,13 60,60,10,10,5 60,60,12,10,5
60,60,36,20,9 60,60,38,29,9 60,60,40,16,‐9 60,60,42,20,9 60,60,44,20,9 60,60,18,24,12 60,60,20,24,12 60,60,22,24,12 60,60,24,24,12 60,60,26,24,12 60,60,28,24,12 60,60,30,24,12 60,60,32,24,12 60,60,34,24,12 60,60,36,24,12 60,60,38,24,12 60,60,40,24,12 60,60,42,24,12 60,60,44,24,12 60,60,46,24,12 60,60,48,24,12 60,60,50,24,12 60,60,52,24,12 60,60,54,24,12 60,60,28,10,5 60,60,30,10,5 60,60,32,10,5 60,60,34,10,5 60,60,36,10,5 60,60,38,10,5 60,60,40,10,5 60,60,42,10,5 60,60,44,10,5 60,60,46,10,5 60,60,48,10,5 60,60,50,10,5
242
60,60,28,26,13 60,60,30,26,13 60,60,32,26,13 60,60,34,26,13 60,60,36,26,13 60,60,38,26,13 60,60,40,26,13 60,60,14,‐10,5 60,60,16,‐10,5 60,60,18,‐10,5 60,60,20,‐10,5 60,60,22,‐10,5 60,60,24,‐10,5 60,60,26,‐10,5 60,60,28,‐10,5 60,60,30,‐10,5 60,60,32,‐10,5 60,60,34,‐10,5 60,60,36,‐10,5 60,60,38,‐10,5 60,60,40,‐10,5 60,60,42,‐10,5 60,60,44,‐10,5 60,60,46,‐10,5 60,60,48,‐10,5 60,60,50,‐10,5 60,43,60,‐19,‐10 60,41,60,‐19,‐10 60,39,60,‐19,‐10 60,35,60,‐19,‐10 60,33,60,‐19,‐10 60,31,60,‐19,‐10 60,29,60,‐19,‐8 60,27,60,‐19,‐8 60,25,60,‐19,‐8 60,23,60,‐19,‐8
60,60,14,10,5 60,60,16,10,5 60,60,18,10,5 60,60,20,10,5 60,60,22,10,5 60,60,24,10,5 60,60,26,10,5 60,60,52,‐10,5 60,60,54,‐10,5 60,60,56,‐10,5 60,60,58,‐10,5 60,60,60,‐10,5 60,59,60,19,10 60,57,60,19,10 60,55,60,19,10 60,53,60,19,10 60,51,60,19,10 60,49,60,19,10 60,47,60,19,10 60,45,60,19,10 60,43,60,19,10 60,41,60,19,10 60,39,60,19,10 60,37,60,19,10 60,35,60,19,10 60,33,60,19,10 60,53,60,9,18 60,51,60,9,15 60,49,60,9,15 60,47,60,9,15 60,45,60,9,15 60,43,60,9,15 60,41,60,9,15 60,39,60,9,15 60,37,60,9,15 60,35,60,9,15
60,60,52,10,5 60,60,54,10,5 60,60,56,10,5 60,60,58,10,5 60,60,60,10,5 60,60,10,‐10,5 60,60,12,‐10,5 60,31,60,19,10 60,29,60,19,10 60,27,60,19,10 60,25,60,19,10 60,23,60,19,10 60,21,60,19,10 60,19,60,19,10 60,17,60,19,10 60,15,60,19,10 60,13,60,19,10 60,11,60,19,10 60,59,60,‐19,‐10 60,57,60,‐19,‐10 60,55,60,‐19,‐10 60,53,60,‐19,‐10 60,51,60,‐19,‐10 60,49,60,‐19,‐10 60,47,60,‐19,‐10 60,45,60,‐19,‐10 60,15,60,9,15 60,13,60,9,15 60,11,60,9,15 60,59,60,30,‐8 60,57,60,30,‐8 60,55,60,30,‐8 60,53,60,30,‐8 60,51,60,30,‐8 60,49,60,30,‐8 60,47,60,30,‐8
243
60,21,60,‐19,‐8 60,19,60,‐19,‐8 60,17,60,‐19,‐8 60,15,60,‐19,‐8 60,13,60,‐19,‐8 60,11,60,‐19,‐8 60,59,60,9,18 60,57,60,9,18 60,55,60,9,18 60,27,60,30,‐8 60,25,60,30,‐8 60,23,60,30,‐8 60,21,60,30,‐8 60,19,60,30,‐8 60,17,60,30,‐8 60,15,60,30,‐8 60,13,60,30,‐8 60,11,60,30,‐8 60,59,60,‐30,8 60,57,60,‐30,8 60,55,60,‐30,8 60,53,60,‐30,8 60,51,60,‐30,8 60,49,60,‐30,8 60,47,60,‐30,8 60,45,60,‐30,8 60,43,60,‐30,8 60,41,60,‐30,8 60,13,60,40,‐20 60,11,60,40,‐20 60,59,60,‐40,22 60,57,60,‐40,22 60,55,60,‐40,22 60,53,60,‐40,22 60,51,60,‐40,22 60,49,60,‐40,22
60,33,60,9,15 60,31,60,9,15 60,29,60,9,15 60,27,60,9,15 60,25,60,9,15 60,23,60,9,15 60,21,60,9,15 60,19,60,9,15 60,17,60,9,15 60,39,60,‐30,8 60,37,60,‐30,8 60,35,60,‐30,8 60,33,60,‐30,8 60,31,60,‐30,8 60,29,60,‐30,8 60,27,60,‐30,8 60,25,60,‐30,8 60,23,60,‐30,8 60,21,60,‐30,8 60,19,60,‐30,8 60,17,60,‐30,8 60,15,60,‐30,8 60,13,60,‐30,8 60,11,60,‐30,8 60,59,60,40,‐20 60,57,60,40,‐20 60,55,60,40,‐20 60,53,60,40,‐20 60,25,60,‐40,22 60,23,60,‐40,22 60,21,60,‐40,22 60,19,60,‐40,22 60,17,60,‐40,22 60,15,60,‐40,22 60,13,60,‐40,22 60,11,60,‐40,22
60,45,60,30,‐8 60,43,60,30,‐8 60,41,60,30,‐8 60,39,60,30,‐8 60,37,60,30,‐8 60,35,60,30,‐8 60,33,60,30,‐8 60,31,60,30,‐8 60,29,60,30,‐8 60,51,60,40,‐20 60,49,60,40,‐20 60,47,60,40,‐20 60,45,60,40,‐20 60,43,60,40,‐20 60,41,60,40,‐20 60,39,60,40,‐20 60,37,60,40,‐20 60,35,60,40,‐20 60,33,60,40,‐20 60,31,60,40,‐20 60,29,60,40,‐20 60,27,60,40,‐20 60,25,60,40,‐20 60,23,60,40,‐20 60,21,60,40,‐20 60,19,60,40,‐20 60,17,60,40,‐20 60,15,60,40,‐20 60,37,60,15,7 60,35,60,15,7 60,33,60,15,7 60,31,60,15,7 60,29,60,15,7 60,27,60,15,7 60,25,60,15,7 60,23,60,15,7
244
60,47,60,‐40,22 60,45,60,‐40,22 60,43,60,‐40,22 60,41,60,‐40,22 60,39,60,‐40,22 60,37,60,‐40,22 60,35,60,‐40,22 60,33,60,‐40,22 60,31,60,‐40,22 60,29,60,‐40,22 60,27,60,‐40,22 60,49,60,‐15,10 60,47,60,‐15,10 60,45,60,‐15,10 60,43,60,‐15,10 60,41,60,‐15,10 60,39,60,‐15,10 60,37,60,‐15,10 60,35,60,‐15,10 60,33,60,‐15,10 60,31,60,‐15,10 60,29,60,‐15,10 60,27,60,‐15,10 60,25,60,‐15,10 60,23,60,‐15,10 60,21,60,‐15,10 60,19,60,‐15,10 60,17,60,‐15,10 60,15,60,‐15,10 60,13,60,‐15,10 60,35,60,18,‐8 60,33,60,18,‐8 60,31,60,18,‐8 60,29,60,18,‐8 60,27,60,18,‐8 60,25,60,18,‐8
60,59,60,15,7 60,57,60,15,7 60,55,60,15,7 60,53,60,15,7 60,51,60,15,7 60,49,60,15,7 60,47,60,15,7 60,45,60,15,7 60,43,60,15,7 60,41,60,15,7 60,39,60,15,7 60,11,60,‐15,10 60,59,60,23,8 60,57,60,23,8 60,55,60,23,8 60,53,60,23,8 60,51,60,23,8 60,49,60,23,8 60,47,60,23,8 60,45,60,23,8 60,43,60,23,8 60,41,60,23,8 60,39,60,23,8 60,37,60,23,8 60,35,60,23,8 60,33,60,23,8 60,31,60,23,8 60,29,60,23,8 60,27,60,23,8 60,25,60,23,8 60,47,60,‐8,8 60,45,60,‐8,8 60,43,60,‐8,8 60,41,60,‐8,8 60,39,60,‐8,8 60,37,60,‐8,8
60,21,60,15,7 60,19,60,15,7 60,17,60,15,7 60,15,60,15,7 60,13,60,15,7 60,11,60,‐15,10 60,59,60,‐15,10 60,57,60,‐15,10 60,55,60,‐15,10 60,53,60,‐15,10 60,51,60,‐15,10 60,23,60,23,8 60,21,60,23,8 60,19,60,23,8 60,17,60,23,8 60,15,60,23,8 60,13,60,23,8 60,11,60,23,8 60,59,60,18,‐8 60,57,60,18,‐8 60,55,60,18,‐8 60,53,60,18,‐8 60,51,60,18,‐8 60,49,60,18,‐8 60,47,60,18,‐8 60,45,60,18,‐8 60,43,60,18,‐8 60,41,60,18,‐8 60,39,60,18,‐8 60,37,60,18,‐8 60,59,60,8,‐8 60,57,60,8,‐8 60,55,60,8,‐8 60,53,60,8,‐8 60,51,60,8,‐8 60,49,60,8,‐8
245
60,23,60,18,‐8 60,21,60,18,‐8 60,19,60,18,‐8 60,17,60,18,‐8 60,15,60,18,‐8 60,13,60,18,‐8 60,11,60,‐8,8 60,59,60,‐8,8 60,57,60,‐8,8 60,55,60,‐8,8 60,53,60,‐8,8 60,51,60,‐8,8 60,49,60,‐8,8 60,21,60,8,‐8 60,19,60,8,‐8 60,17,60,8,‐8 60,15,60,8,‐8 60,13,60,8,‐8 60,11,60,8,‐8 60,59,60,12,9 60,57,60,12,9 60,55,60,12,9 60,53,60,12,9 60,51,60,12,9 60,49,60,12,9 60,47,60,12,9 60,45,60,12,9 60,43,60,12,9 60,41,60,12,9 60,39,60,12,9 60,37,60,12,9 60,35,60,12,9 33,60,60,10,‐6 32,60,60,10,‐6 31,60,60,10,‐6 30,60,60,10,‐6
60,35,60,‐8,8 60,33,60,‐8,8 60,31,60,‐8,8 60,29,60,‐8,8 60,27,60,‐8,8 60,25,60,‐8,8 60,23,60,‐8,8 60,21,60,‐8,8 60,19,60,‐8,8 60,17,60,‐8,8 60,15,60,‐8,8 60,13,60,‐8,8 60,11,60,‐8,8 60,33,60,12,9 60,31,60,12,9 60,29,60,12,9 60,27,60,12,9 60,25,60,12,9 60,23,60,12,9 60,21,60,12,9 60,19,60,12,9 60,17,60,12,9 60,15,60,12,9 60,13,60,12,9 60,11,60,12,9 59,60,60,10,‐6 58,60,60,10,‐6 57,60,60,10,‐6 56,60,60,10,‐6 55,60,60,10,‐6 54,60,60,10,‐6 53,60,60,10,‐6 14,60,60,10,‐6 13,60,60,10,‐6 12,60,60,10,‐6 11,60,60,10,‐6
60,47,60,8,‐8 60,45,60,8,‐8 60,43,60,8,‐8 60,41,60,8,‐8 60,39,60,8,‐8 60,37,60,8,‐8 60,35,60,8,‐8 60,33,60,8,‐8 60,31,60,8,‐8 60,29,60,8,‐8 60,27,60,8,‐8 60,25,60,8,‐8 60,23,60,8,‐8 52,60,60,10,‐6 51,60,60,10,‐6 50,60,60,10,‐6 49,60,60,10,‐6 48,60,60,10,‐6 47,60,60,10,‐6 46,60,60,10,‐6 45,60,60,10,‐6 44,60,60,10,‐6 43,60,60,10,‐6 42,60,60,10,‐6 41,60,60,10,‐6 40,60,60,10,‐6 39,60,60,10,‐6 38,60,60,10,‐6 37,60,60,10,‐6 36,60,60,10,‐6 35,60,60,10,‐6 34,60,60,10,‐6 45,60,60,‐10,7 44,60,60,‐10,7 43,60,60,‐10,7 42,60,60,‐10,7
246
29,60,60,10,‐6 28,60,60,10,‐6 27,60,60,10,‐6 26,60,60,10,‐6 25,60,60,10,‐6 24,60,60,10,‐6 23,60,60,10,‐6 22,60,60,10,‐6 21,60,60,10,‐6 20,60,60,10,‐6 19,60,60,10,‐6 18,60,60,10,‐6 17,60,60,10,‐6 16,60,60,10,‐6 15,60,60,10,‐6 26,60,60,‐10,7 25,60,60,‐10,7 24,60,60,‐10,7 23,60,60,‐10,7 22,60,60,‐10,7 21,60,60,‐10,7 20,60,60,‐10,7 19,60,60,‐10,7 18,60,60,‐10,7 17,60,60,‐10,7 16,60,60,‐10,7 15,60,60,‐10,7 14,60,60,‐10,7 13,60,60,‐10,7 12,60,60,‐10,7 11,60,60,‐10,7 10,60,60,‐10,7 59,60,60,12,‐8 58,60,60,12,‐8 19,60,60,12,‐8 18,60,60,12,‐8
10,60,60,10,‐6 59,60,60,‐10,7 58,60,60,‐10,7 57,60,60,‐10,7 56,60,60,‐10,7 55,60,60,‐10,7 54,60,60,‐10,7 53,60,60,‐10,7 52,60,60,‐10,7 51,60,60,‐10,7 50,60,60,‐10,7 49,60,60,‐10,7 48,60,60,‐10,7 47,60,60,‐10,7 46,60,60,‐10,7 57,60,60,12,‐8 56,60,60,12,‐8 55,60,60,12,‐8 54,60,60,12,‐8 53,60,60,12,‐8 52,60,60,12,‐8 51,60,60,12,‐8 50,60,60,12,‐8 49,60,60,12,‐8 48,60,60,12,‐8 47,60,60,12,‐8 46,60,60,12,‐8 45,60,60,12,‐8 44,60,60,12,‐8 43,60,60,12,‐8 42,60,60,12,‐8 41,60,60,12,‐8 40,60,60,12,‐8 39,60,60,12,‐8 50,60,60,‐12,8 49,60,60,‐12,8
41,60,60,‐10,7 40,60,60,‐10,7 39,60,60,‐10,7 38,60,60,‐10,7 37,60,60,‐10,7 36,60,60,‐10,7 35,60,60,‐10,7 34,60,60,‐10,7 33,60,60,‐10,7 32,60,60,‐10,7 31,60,60,‐10,7 30,60,60,‐10,7 29,60,60,‐10,7 28,60,60,‐10,7 27,60,60,‐10,7 38,60,60,12,‐8 37,60,60,12,‐8 36,60,60,12,‐8 35,60,60,12,‐8 34,60,60,12,‐8 33,60,60,12,‐8 32,60,60,12,‐8 31,60,60,12,‐8 30,60,60,12,‐8 29,60,60,12,‐8 28,60,60,12,‐8 27,60,60,12,‐8 26,60,60,12,‐8 25,60,60,12,‐8 24,60,60,12,‐8 23,60,60,12,‐8 22,60,60,12,‐8 21,60,60,12,‐8 20,60,60,12,‐8 31,60,60,‐12,8 30,60,60,‐12,8
247
17,60,60,12,‐8 16,60,60,12,‐8 15,60,60,12,‐8 14,60,60,12,‐8 13,60,60,12,‐8 12,60,60,12,‐8 11,60,60,12,‐8 10,60,60,12,‐8 59,60,60,‐12,8 58,60,60,‐12,8 57,60,60,‐12,8 56,60,60,‐12,8 55,60,60,‐12,8 54,60,60,‐12,8 53,60,60,‐12,8 52,60,60,‐12,8 51,60,60,‐12,8 12,60,60,‐12,8 11,60,60,‐12,8 10,60,60,‐12,8 59,60,60,14,‐6 58,60,60,14,‐6 57,60,60,14,‐6 56,60,60,14,‐6 55,60,60,14,‐6 54,60,60,14,‐6 53,60,60,14,‐6 52,60,60,14,‐6 51,60,60,14,‐6 50,60,60,14,‐6 49,60,60,14,‐6 48,60,60,14,‐6 47,60,60,14,‐6 46,60,60,14,‐6 45,60,60,14,‐6 44,60,60,14,‐6
48,60,60,‐12,8 47,60,60,‐12,8 46,60,60,‐12,8 45,60,60,‐12,8 44,60,60,‐12,8 43,60,60,‐12,8 42,60,60,‐12,8 41,60,60,‐12,8 40,60,60,‐12,8 39,60,60,‐12,8 38,60,60,‐12,8 37,60,60,‐12,8 36,60,60,‐12,8 35,60,60,‐12,8 34,60,60,‐12,8 33,60,60,‐12,8 32,60,60,‐12,8 43,60,60,14,‐6 42,60,60,14,‐6 41,60,60,14,‐6 40,60,60,14,‐6 39,60,60,14,‐6 38,60,60,14,‐6 37,60,60,14,‐6 36,60,60,14,‐6 35,60,60,14,‐6 34,60,60,14,‐6 33,60,60,14,‐6 32,60,60,14,‐6 31,60,60,14,‐6 30,60,60,14,‐6 29,60,60,14,‐6 28,60,60,14,‐6 27,60,60,14,‐6 26,60,60,14,‐6 25,60,60,14,‐6
29,60,60,‐12,8 28,60,60,‐12,8 27,60,60,‐12,8 26,60,60,‐12,8 25,60,60,‐12,8 24,60,60,‐12,8 23,60,60,‐12,8 22,60,60,‐12,8 21,60,60,‐12,8 20,60,60,‐12,8 19,60,60,‐12,8 18,60,60,‐12,8 17,60,60,‐12,8 16,60,60,‐12,8 15,60,60,‐12,8 14,60,60,‐12,8 13,60,60,‐12,8 24,60,60,14,‐6 23,60,60,14,‐6 22,60,60,14,‐6 21,60,60,14,‐6 20,60,60,14,‐6 19,60,60,14,‐6 18,60,60,14,‐6 17,60,60,14,‐6 16,60,60,14,‐6 15,60,60,14,‐6 14,60,60,14,‐6 13,60,60,14,‐6 12,60,60,14,‐6 11,60,60,14,‐6 10,60,60,‐14,10 59,60,60,‐14,10 58,60,60,‐14,10 57,60,60,‐14,10 56,60,60,‐14,10
248
55,60,60,‐14,10 54,60,60,‐14,10 53,60,60,‐14,10 52,60,60,‐14,10 51,60,60,‐14,10 50,60,60,‐14,10 49,60,60,‐14,10 48,60,60,‐14,10 47,60,60,‐14,10 46,60,60,‐14,10 45,60,60,‐14,10 44,60,60,‐14,10 43,60,60,‐14,10 42,60,60,‐14,10 41,60,60,‐14,10 40,60,60,‐14,10 39,60,60,‐14,10 38,60,60,‐14,10 37,60,60,‐14,10 48,60,60,16,‐10 47,60,60,16,‐10 46,60,60,16,‐10 45,60,60,16,‐10 44,60,60,16,‐10 43,60,60,16,‐10 42,60,60,16,‐10 41,60,60,16,‐10 40,60,60,16,‐10 39,60,60,16,‐10 38,60,60,16,‐10 37,60,60,16,‐10 36,60,60,16,‐10 35,60,60,16,‐10 34,60,60,16,‐10 33,60,60,16,‐10 32,60,60,16,‐10
36,60,60,‐14,10 35,60,60,‐14,10 34,60,60,‐14,10 33,60,60,‐14,10 32,60,60,‐14,10 31,60,60,‐14,10 30,60,60,‐14,10 29,60,60,‐14,10 28,60,60,‐14,10 27,60,60,‐14,10 26,60,60,‐14,10 25,60,60,‐14,10 24,60,60,‐14,10 23,60,60,‐14,10 22,60,60,‐14,10 21,60,60,‐14,10 20,60,60,‐14,10 19,60,60,‐14,10 18,60,60,‐14,10 29,60,60,16,‐10 28,60,60,16,‐10 27,60,60,16,‐10 26,60,60,16,‐10 25,60,60,16,‐10 24,60,60,16,‐10 23,60,60,16,‐10 22,60,60,16,‐10 21,60,60,16,‐10 20,60,60,16,‐10 19,60,60,16,‐10 18,60,60,16,‐10 17,60,60,16,‐10 16,60,60,16,‐10 15,60,60,16,‐10 14,60,60,16,‐10 13,60,60,16,‐10
17,60,60,‐14,10 16,60,60,‐14,10 15,60,60,‐14,10 14,60,60,‐14,10 13,60,60,‐14,10 12,60,60,‐14,10 11,60,60,‐14,10 10,60,60,‐14,10 59,60,60,16,‐10 58,60,60,16,‐10 57,60,60,16,‐10 56,60,60,16,‐10 55,60,60,16,‐10 54,60,60,16,‐10 53,60,60,16,‐10 52,60,60,16,‐10 51,60,60,16,‐10 50,60,60,16,‐10 49,60,60,16,‐10 10,60,60,16,‐10 59,60,60,18,8 58,60,60,18,8 57,60,60,18,8 56,60,60,18,8 55,60,60,18,8 54,60,60,18,8 53,60,60,18,8 52,60,60,18,8 51,60,60,18,8 50,60,60,18,8 49,60,60,18,8 48,60,60,18,8 47,60,60,18,8 46,60,60,18,8 45,60,60,18,8 44,60,60,18,8
249
31,60,60,16,‐10 30,60,60,16,‐10 41,60,60,18,8 40,60,60,18,8 39,60,60,18,8 38,60,60,18,8 37,60,60,18,8 36,60,60,18,8 35,60,60,18,8 34,60,60,18,8 33,60,60,18,8 32,60,60,18,8 31,60,60,18,8 30,60,60,18,8 29,60,60,18,8 28,60,60,18,8 27,60,60,18,8 26,60,60,18,8 25,60,60,18,8
12,60,60,16,‐10 11,60,60,16,‐10 24,60,60,18,8 23,60,60,18,8 22,60,60,18,8 21,60,60,18,8 20,60,60,18,8 19,60,60,18,8 18,60,60,18,8 17,60,60,18,8 16,60,60,18,8 15,60,60,18,8 14,60,60,18,8 13,60,60,18,8 12,60,60,18,8 11,60,60,18,8 10,60,60,18,8 59,60,60,‐18,8 58,60,60,‐18,8
43,60,60,18,8 42,60,60,18,8 57,60,60,‐18,8 56,60,60,‐18,8 55,60,60,‐18,8 54,60,60,‐18,8 53,60,60,‐18,8 52,60,60,‐18,8 51,60,60,‐18,8 50,60,60,‐18,8 49,60,60,‐18,8 48,60,60,‐18,8 47,60,60,‐18,8 46,60,60,‐18,8 45,60,60,‐18,8 44,60,60,‐18,8 43,60,60,‐18,8 42,60,60,‐18,8
250
References
[1] Nilsson N. J., “Shakey the Robot”, SRI International, Technical Note 323, CA,
1984.
[2] Cameron S., and Probert P., “Advanced Guided Vehicles Aspects of the
Oxford AGV Project”, World Scientific, London, 1994.
[3] Brooks R. A., “A Robust Layred Control System for a Mobile Robot”, IEEE
Transction on Robotics and Automation, 1986, Number 2 (1), pp. 14 – 23.
[4] Trullier O., Wiener S. I., and Berthoz A., “Biologically based artificial
navigation systems: review and prospects”, Progress in Neurobiology, 1997,
Number 51(5), pp. 483 – 544.
[5] Levitt T. S., and Lawton D. T., “Qualitative navigation for mobile robots”,
Artificial Intelligence, 1990, Vol. 44, pp. 305 – 360.
[6] Feng L., Borenstein J., and Everett H. R., “Where am I? Sensors and
methods for autonomous mobile robot positioning”, Technical Report,
University of Michigan, MI, 1994.
[7] Crowley J.L., and Coutaj J., “Navigation et modelisation pour un robot
mobile”, Technique et Science Informatiques, 1986, Number 5(5), pp. 391 –
402.
[8] Borenstein J., and Koren Y., “Noise reflection for ultrasonic sensors in
mobile robot application”, IEEE Conference on Robotics and Automation,
Nice, France, 1992, pp. 1727 – 1732.
[9] Borenstein J., and Koren Y., “Error eliminating rapid ultrasonic firing
ultrasonic firing for mobile robot obstacle avoidance”, IEEE Transactions
on Robotics and Automation, 1995, Vol. 11(1), pp. 132 – 138.
251
[10] Borenstein J., “Internal correction of dead‐reckoning errors with a dual‐
drive compliant linkage mobile robot”, Journal of Robotic Systems, 1995,
Vol. 12(4), pp. 257 – 273.
[11] Racz J., and Dubrawski A., “Artificial neural‐network for mobile robot
topological localisation”, Robotics and Autonomous Systems, 1995, Vol. 16(1),
pp. 73 – 80.
[12] Cerulli R., Festa P., Raiconi G., and Visciano G., “The action technique for
the sensor based navigation planning of an autonomous mobile robot”,
Journal of intelligent and Robotic Systems, 1998, Vol. 21(44), pp. 373 – 395.
[13] Buchberger M., Jorg K., and Puttkamer E. V., “Laserradar and sonar based
world modeling and motion control for fast obstacle avoidance of the
autonomous mobile robot MOBOT‐IV”, IEEE Conference on Robotics and
Automation, Atlanta, Georgia, 1993, pp. 534 – 540.
[14] Tsoukalas L. H., Houstics E. N., and Jones G. V., “Neurofuzzy motion
planners for intelligent robots”, Journal of intelligent and Robotic Systems,
1997, Vol. 19(3), pp. 339 – 356.
[15] Lozana‐Perez T., and Wesley M. A., “An algorithm for planning collision
free paths among polyhedral obstacles”, ACM22, 1979, Number 10, pp.
560 – 570.
[16] Khatib O., “Real‐time obstacle avoidance for manipulators and mobile
robots”, ” IEEE Conference on Robotics and Automation, 1985, pp. 500 – 505.
[17] Guldner J., Utkin V. I., and Hushimoto H., “Robot obstacle avoidance in n‐
dimensional space using planar harmonic artificial potential fields”,
ASME Transactions, Journal of Dynamic Systems Measurement and Control,
1997, Vol. 19(2), pp. 160 – 166.
252
[18] Shkel A. M., and Lumelsky V. J., “The joggers problem: Control of
dynamics in real‐time motion planning”, Automatica, 1997, Vol. 33(7), pp.
1219 – 1233.
[19] Luo R. C., and Kay M. G., “Multisensor integration and fusion in
intelligent system”, IEEE Transactions on Systems, Man and Cybernetics,
1989, Vol. 19(5), pp. 901 – 931.
[20] Lin I. S., Wallner F., and Dillmann R., “Interactive control and
environment modelling for a mobile robot based on multi sensor
perceptions”, Robotics and Autonomous Systems, 1996, Vol. 18(3), pp. 301 –
310.
[21] Fox D., Burgard W., and Thrun S., “The dynamic window approach to
collision avoidance”, IEEE Robotics and Automation Magazine, 1997, Vol.
4(1), pp. 23 – 33.
[22] Yamamoto Y., and Yun X., “Coordinating Locomotion and Manipulation
of a Mobile Manipulator”, IEEE Transactions on Robotics and Automation,
1994, Vol. 39, pp. 1326–1332.
[23] Seraji H., “A Unified Approach to Motion Control of Mobile
Manipulators”, The International Journal of Robotics Research, 1998, Vol.
17(2), pp. 107‐118.
[24] Huang Q., Tanie K., and Sugano S., “Coordinated Motion Planning for a
Mobile Manipulator Considering Stability and Manipulation”, The
International Journal of Robotic Research, 2000, Vol. 19 (8), pp. 732 – 742.
[25] Tchon K., and Muszynski R., “Instantaneous Kinematics and Dexterity of
Mobile Manipulators”, 2000, IEEE International Conference on Robotics and
Automation, pp. 2493–2498.
253
[26] K. Tchon, J. Jakubiak, and R. Muszynski, “Kinematics of Mobile
Manipulators: A Control Theoretic Perspective”, Archives of Control
Science, 2001, Vol. 11, pp. 195–221.
[27] K. Tchon, J. Jakubiak, and R. Muszynski, “Doubly Nonholonomic Mobile
Manipulators”, 2000, IEEE International Conference on Robotics and
Automation, Vol. 5, pp. 4590 – 4595.
[28] Alexander J.C., and Maddocks J.H. “On the Kinematics of Wheeled
Mobile Robots”, The International Journal of Robotics Research, 1989, Vol.
8(5), pp. 15‐27.
[29] Muir P.F., and Neuman C.P., “Kinematic Modeling of Wheeled Mobile
Robots”, Journal of Robotic Systems, 1987, Vol. 4(2), pp. 281 – 340.
[30] Tsuchiya K., Urakubo T., and Tsujita K., “A Motion Control of a Two‐
Wheeled Mobile Robot”, IEEE International Conference on Systems, Man, and
Cybernetics, 1999, Vol. 5, pp. 690 – 696.
[31] Mester G., “Motion Control of Wheeled Mobile Robots”, 4th Serbian‐
Hungarian Joint Symposium on Intelligent Systems, 2006, pp. 119 – 130.
[32] Hwang Y. K., and Ahuja N., “Gross Motion Planning ‐ A Survey”, ACM
Computing Surveys, 1992, Vol. 24(3), pp. 219 ‐ 291.
[33] Chakraborty N., and Ghosal A., “Kinematics of Wheeled Mobile Robots
on Uneven Terrain”, Mechanism and Machine Theory, 2004, Vol. 39, pp. 1273
– 1287.
[34] Latombe J.C., “Robot Motion Planning, Boston”, MA, USA: Kluwer
Academic Publishers, 1991.
254
[35] Fraichard T., and Garnier P., “A fuzzy Motion Controller for a Car‐like
Vehicle”, IEEE‐RSJ International Conference on Intelligent Robots and Systems,
1996, Vol. 3, pp. 1171–1178.
[36] Zadeh L. A., “Fuzzy Sets”, Journal of Information and Control, 1965, Vol. 8,
pp. 338 – 353.
[37] Mamdani E. H., and Assilian S., “An Experiment in Linguistic Synthesis
with a Fuzzy Logic Controller”, International Journal of Man Machine
Studies, 1975, Vol. 7(1), pp. 1‐13.
[38] Kickert W.J.M., and Mamdani E. H., “Analysis of a Fuzzy Logic
Controller”, Fuzzy Set and Systems, 1978, Vol. 12, pp. 29‐44.
[39] Lacroix S., Chatila R., Fleury S. Herrb M. and Simeon T., “Autonomous
Navigation in Outdoor Environment: Adaptive Approach and
Experiment”, IEEE International Conference on Robotics and Automation,
1994, Vol. 1, pp. 426‐432.
[40] Goldberg S. B., Maimone M. W., and Matthies L. H., “Stereo Vision and
Rover Navigation Software for Planetary Exploration”, IEEE Aerospace
Conference, 2002, Vol. 5, pp. 2025‐2036.
[41] Singh S., Simmons R., Smith T., Stentz A., Verma V., Yahja A., and
Schwehr K., “Recent Progress in Local and Global Traversability for
Planetary Rovers”, IEEE International Conference on Robotics and
Automation, 2000, Vol. 2, pp. 1194 ‐1200.
[42] Langer D., Rosenblatt J. K., and Hebert M., “A behavior‐based system for
off‐road navigation”, IEEE Transactions on Robotics and Automation, 1994,
Vol. 10, pp. 776‐783.
255
[43] Seraji H., and Howard A., “Behavior‐based robot navigation on
challenging terrain: A fuzzy logic approach”, IEEE transactions on robotics
and automation, 2002, Vol. 18(3), pp. 308‐321.
[44] Li S. Tzuu‐Hseng and Chang S. J., “Autonomous fuzzy parking control of
a car‐like mobile robot”, IEEE Transactions on Systems, Man, and
Cybernetics, 2003, Vol. 33(4), pp. 451 ‐ 465.
[45] Li S. Tzuu‐Hseng, Chang S. J. and Chen Yi‐Xiang, “Implementation of
human‐like driving skills by autonomous fuzzy behavior control on an
FPGA‐based car‐like mobile robot”, IEEE Transactions on Industrial
Electronics, 2003, Vol. 50(5), pp. 867 ‐ 880.
[46] Baturone H., Francisco J., Moreno‐Velo, Santiago Sanchez‐Solano, and
Ollero A., “Automatic design of fuzzy controllers for car‐like autonomous
robots”, IEEE Transactions on Fuzzy Systems, 2004, Vol. 12(4), pp. 447 ‐ 464.
[47] Ohkita M., Miyata H., and Miura M., “Travelling experiment of an
autonomous mobile robot for a flush parking”, IEEE International
conference on fuzzy systems, 1993, pp. 327 – 332.
[48] Zhao Y., and Collins Jr. E. G., “Robust automatic parallel parking in tight
spaces via fuzzy logic”, Robotics and Autonomous Systems, 2005, Vol. 51,
pp. 111–127.
[49] Maeda M., Shimakawa M., and Murakami S., “Predictive fuzzy control of
an autonomous mobile robot with forecast learning function”, Fuzzy Sets
and Systems, 1995, Vol. 72(1), pp. 51‐60.
[50] Joo Y. H., Hwang H. S., Kim K. B., and Woo K. B., “Fuzzy system
modeling by fuzzy partition and GA hybrid schemes”, Fuzzy Sets and
Systems, 1997, Vol. 86(3), pp. 279‐288.
256
[51] Montaner M. B., and Ramirez‐Serrano A., “Fuzzy knowledge‐based
controller design for autonomous robot navigation”, Expert Systems with
Applications, 1998, Vol. 14 (1‐2), pp. 179‐186.
[52] Iwakoshi Y., Furuhashi T., and Uchikaw Y., “A Fuzzy classifier system for
evolutionary learning of robot behaviors”, Applied Mathematics and
Computation, 1998, Vol. 91(1), pp. 73‐81.
[53] Li S. Tzuu‐Hseng, Chang S. J., and Tong W., “Fuzzy target tracking
control of autonomous mobile robots by using infrared sensors”, IEEE
Transactions on Fuzzy Systems, Vol. 12, No. 4, 2004, pp. 491 ‐ 501.
[54] Xu W. L., Tso S. K., and Fung Y. H., “Fuzzy reactive control of a mobile
robot incorporating a real/virtual target switching strategy”, Robotics and
Autonomous Systems, 1998, Vol. 23, pp. 171‐186.
[55] Toda M., Kitani O., Okamoto T., and Torii T., “Navigation method for a
mobile robot via sonar‐based crop row mapping and fuzzy logic control”,
Journal of Agricultural Engineering Research, 1999, Vol. 72 (4), pp. 299 ‐ 309.
[56] Rigatos G. G., Tzafestas C. S., and Tzafestas S.G., “Mobile robot motion
control in partially unknown environments using a sliding‐mode fuzzy‐
logic controller”, Robotics and Autonomous Systems, 2000, Vol. 33, pp. 1 – 11.
[57] Das T., and Kar I. N., “Design and implementation of an adaptive fuzzy
logic‐based controller for wheeled mobile robots”, IEEE Transactions on
Control Systems Technology, May 2006, Vol. 14 (3), pp. 501‐510.
[58] Lee T‐L., and Wu C‐J., “Fuzzy motion planning of mobile robots in
unknown environments”, Journal of Intelligent and Robotic Systems, 2003,
Vol. 37(2), pp. 177 – 191.
257
[59] Vadakkepat P., Miin O. C., Peng X., and Lee T. H., “Fuzzy behavior‐based
control of mobile robots”, IEEE Transactions on Fuzzy Systems, 2004, Vol. 12
(4), pp. 559‐564.
[60] Yang X., Moallem M., and Patel R.V., “A sensor‐based navigation
algorithm for a mobile robot using fuzzy logic”, International Journal of
Robotics and Automation, 2006, Vol. 21(2), pp. 129‐140.
[61] Kodagoda K. R. S., Wijesoma W. S., and Teoh E. K., “Fuzzy speed and
streering control of an AGV”, IEEE Transactions on Control Systems
Technology, 2002, Vol. 10(1), pp. 112 – 120.
[62] Fukuda T., and Kubota N., “An intelligent robotic system based on a
fuzzy approach”, Proceedings of the IEEE, 1999, Vol. 87, pp. 1448 ‐ 1470.
[63] Castellano G., Attolico S., and Distante A., “Automation generation of
fuzzy rules for reactive robot controllers”, Robotics and Autonomous
Systems, 1997, Vol. 22, pp. 133 – 149.
[64] Castellano G., Attolico G., Stella. E., and Distante A., “Reactive navigation
by fuzzy control”, Fifth IEEE International Conference on Fuzzy Systems,
1996, Vol. 3, pp. 2143‐2149.
[65] Benreguieg M., Hoppenot P., Maaref H., Colle E., and Barret C, “Fuzzy
navigation strategy: application to two distinct autonomous mobile
robots”, Robotica, 1997, Vol. 15, pp. 609‐615.
[66] Goodridge S. G., and Kay G. M., “Multilayred fuzzy behavior fusion for
real‐time reactive control of systems with multiple sensors”, IEEE
Transactions on Industrial Electronics, 1996, Vol. 43(3), pp. 387 – 394.
258
[67] Miyata H., Ohki M., Yokouchi Y., and Ohkita M., “Control of the
autonomous mobile robot DREAM ‐1 For a parallel parking”, Mathematics
and Computers in Simulation, 1996, Vol. 41, pp. 129 –138.
[68] Yen J., and Pfluger N., “A fuzzy logic based extension to payton and
rosenblatt’s command fusion method for mobile robot navigation”, IEEE
Transactions on Systems, Man, and Cybernetics, 1995, Vol. 25(6), pp. 971‐978.
[69] Beom R. H., and Cho S. H., “A sensor‐based navigation for a mobile robot
using fuzzy logic and reinforcement learning”, IEEE Transactions on
Systems, Man, and Cybernetics, 1995, Vol. 25(3), pp. 464 ‐ 477.
[70] Beaufrere B., and Zeghloul S., “A mobile robot navigation method using a
fuzzy logic approach”, Robotica, 1995, Vol. 13, pp. 437 – 448.
[71] Fu Y., Li H., Xu H., Wang S., and Ma Y., “Parallel Double‐layered Fuzzy
Control System of Autonomous Robot in Unknown Environment”,
Systems and Control in Aerospace and Astronautics, ISSCA 1st International
Symposium, 19‐21 January 2006, pp. 514 ‐ 519.
[72] Carinena P., Reguriro C. V., Otero A., Bugarin A. J., and Barro S.,
“Landmark detection in mobile robotics using fuzzy temporal rules”, IEEE
Transactions on Fuzzy Systems, 2004, Vol. 12(4), pp. 423 ‐ 433.
[73] Mucientes M., Lglesias R., Regueiro C. V., Carifiena P., and Barro S.,
“Fuzzy temporal rules for mobile robot guidance in dynamic
environment”, IEEE Transactions on Fuzzy Systems, 2001, Vol. 31(3), pp. 391
‐ 398.
[74] Liu K., and Lewis F. L., “Fuzzy logic based navigation and maneuvering
for a mobile robot system”, IEEE Mediterranean Symposium New Directions
in Control and Automation, 1994, pp. 555‐562.
259
[75] Pratihar D. K., and Bibel W., “Near‐optimal, collision‐free path generation
for multiple robots working in the same workspace using a genetic‐fuzzy
systems”, Machine Intelligence and Robotic Control, 2003, Vol. 5(2), pp. 45—
58.
[76] Aguirre E., and Gonzalez A., “Fuzzy behaviors for mobile robot
navigation: design, coordination and fusion”, International Journal of
Approximate Reasoning, 2000, Vol. 25, pp. 255‐289.
[77] Tanaka K., Kosaki T., and Wang H. O., “Backing control problem of a
mobile robot with multiple trailers: fuzzy modeling and LMI‐based
design”, IEEE Transactions on Systems, Man, and Cybernetics, 1998, Vol.
28(3), pp. 329 ‐ 337.
[78] Demirli K., and Molhim M., “Fuzzy dynamic localization for mobile
robots”, Fuzzy Sets and Systems, 2004, Vol. 144, pp. 251–283.
[79] Mucientes M., Moreno D. L., Bugarin A., and Barro S., “Design of a fuzzy
controller in mobile robotics using genetic algorithms”, Applied Soft
Computing, 2007, Vol. 7 (2), pp. 540 – 546.
[80] Khatib‐Al M., and Saade J. J., “An efficient data‐driven fuzzy approach to
the motion planning problem of a mobile robot”, Fuzzy Sets and Systems,
2003, Vol. 134, pp. 65–82.
[81] Abdessemed F., Benmahammed K., and Monacelli E., “A fuzzy‐based
reactive controller for a non‐holonomic mobile robot”, Robotics and
Autonomous Systems, 2004, Vol. 47, pp. 31–46.
[82] Godjevac J., “Fuzzy systems and neural networks”, Intelligent Automation
and Soft Computing, 1998, Vol. 4(1), pp. 27 – 37.
260
[83] Peterson J.L., “Petri Net theory and the Modelling of Systems”, 1981,
(Prentice‐Hall, Englewood Cliff.N.J.)
[84] Haykin S., “Neural Networks A Comprehensive Foundation” 1999,
Second edition, International Edition, Prentice Hall International, Inc.,
Printed in the United States of America.
[85] Bolt G. R., “Fault Tolerance in Artificial Neural Networks”, D. Phil Thesis,
York University, Ontario, 1992.
[86] Tani J., and Fukumura N., “Learning Goal‐Directed Sensory‐Based
Navigation of a Mobile Robot”, Neural Networks, 1994, Vol. 7(3), pp. 553‐
563.
[87] Tani J., and Fukumura N., “Embedding Task‐Based Behavior into Internal
Sensory‐Based Attraction Dynamics in Navigation of a Mobile Robot”,
IEEE International Conference of Intelligent Robots and Systems, 1994, pp. 886
‐ 893.
[88] Tani J., and Fukumura N., “Embedding a Grammatical Description in
Deterministic Chaos, An Experiment in Recent Neural Learning”,
Biological Cybernetics, 1995, Vol. 72, pp. 365 ‐ 370.
[89] Tani J., and Fukumura N., “Self‐organizing Internal Representation in
Learning of Navigation: A Physical Experiment by the Mobile Robot
YAMABICO”, Neural Network, 1997, Vol. 10(1), pp. 153 ‐ 159.
[90] Millan J. R., “Incremental Acquisition of Local Networks for the Control of
Autonomous Robots”, Seventh international Conference on Artificial Neural
Networks, 1997, pp. 739 – 744.
261
[91] Castellano G., Attolico G., and Distance A., “Incremental Learning of
Neural Reactive Controller”, Sixth International Conference on Intelligent
Systems, Boston, 1997, pp. 11 – 13.
[92] Dubrawski A., and Crowley J. L., “Self‐supervised Neural System for
Reactive Navigation”, International Conference on Robotics and Automation,
1994, pp. 2076‐2082.
[93] Gu D., and Hu H., “Neural Predictive Control for a Car‐Like Mobile
Robot”, Robotics and Autonomous Systems, 2002, Vol. 39, pp. 73–86.
[94] Yang S. X., and Meng M., “An Efficient Neural Network Method for Real‐
Time Motion Planning with Safety Consideration”, Robotics and
Autonomous System, 2000, Vol. 32, pp. 115–128.
[95] Yang S. X., and Meng M., “Neural Network Approaches to Dynamic
Collision‐Free Trajectory Generation”, IEEE Transactions on Systems, Man,
and Cybernetics—Part B: Cybernetics, 2001, Vol. 31(3), pp. 302 – 318.
[96] Yang S. X., and Meng M. Q.‐H., “Real‐time Collision‐free Motion Planning
of a Mobile Robot Using a Neural Dynamics‐Based Approach”, IEEE
Transactions on Neural Networks, 2003, Vol. 14(6), pp. 1541 – 1552.
[97] Ster B., “An Integrated Learning Approach to Environment Modelling in
Mobile Robot Navigation”, Neurocomputing, 2004, Vol. 57, pp. 215 – 238.
[98] Weber C., Wermter S., and Zochios A., “Robot Docking with Neural
Vision and Reinforcement”, Knowledge‐Based Systems, 2004, Vol. 17, pp.
165–172.
[99] Janglova D., “Neural Networks in Mobile Robot Motion”, International
Journal of Advanced Robotic Systems, 2004, Vol. 1(1), pp. 15‐22.
262
[100] Lebedev D. V., Steil J. J., Ritter H. J., “The Dynamic Wave Expansion
Neural Network Model for Robot Motion Planning in Time‐varying
Environments”, Neural Networks, 2005, Vol. 18, pp. 267 – 285.
[101] Saga K., Sugasaka T., Sekiguchi M., and Nagata S., “Mobile Robot Control
by Neural Networks using Self‐Supervised Learning”, IEEE Transactions
on Industrial Electronics, 1992, Vol. 39(6), pp. 537 ‐ 542.
[102] Gaudiano P., Zalama E., and Coronado J. L., “An Unsupervised Neural
Network for Low‐Level Control of a Wheeled Mobile Robot: Noise
Resistance, Stability, and Hardware Implementation”, IEEE Transactions
on Systems, Man, and Cybernetics‐Part B: Cybernetics, 1996, Vol. 26(3), pp.
485 – 396.
[103] Fierro R., and Lewis F. L., “Control of a Nonholonomic Mobile Robot
using Neural Networks”, IEEE Transactions on Neural Networks, Vol. 9(4),
1998, pp. 589 ‐ 600.
[104] Gutierrez‐Osuna R., Janet J. A., and Luo R. C., “Modeling of Ultrasonic
Range Sensors for Localization of Autonomous Mobile Robots”, IEEE
transactions on industrial electronics, Vol. 45(4), 1998, pp. 654 – 662.
[105] Barshan B., Ayrulu B., and Utete S. W., “Neural Network‐Based Target
Differentiation using Sonar for Robotics Applications”, IEEE Transactions
on Robotics and Automation, Vol. 16(4), 2000, pp. 435 ‐ 442.
[106] Giaquinto N., Savino M., and Taraglio S., “A CNN‐based Passive Optical
Range Finder for Real‐Time Robotic Applications”, IEEE Transactions on
Instrumentation and Measurement, 2002, Vol. 51(2), pp. 314 ‐ 319.
[107] Kositsky M., Karniel A., Alford S., Fleming K. M., and Mussa‐Ivaldi F. A.,
“Dynamical Dimension of a Hybrid Neurorobotic System”, IEEE
263
Transactions on Neural Systems and Rehabilitation Engineering, 2003, Vol.
11(2), pp. 155 – 159.
[108] Quoy M., Moga S., and Gaussier P., “Dynamical Neural Networks for
Planning and Low‐Level Robot Control”, IEEE Transactions on Systems,
Man, and Cybernetics—Part A: Systems and Humans, 2003, Vol. 33(4), pp. 523
– 532.
[109] Kho K. C., and Cho H. S., “A Neural Net – Based Feed Forward Control
Scheme for Mobile Robots”, IEEE/RSJ International Workshop on Intelligent
Robots and Systems, 1991, pp. 813 – 817.
[110] Kar I. N., Das T., and Chaudhury S., “Simple neuron‐based adaptive
controller for a nonholonomic mobile robot including actuator dynamics”,
Neurocomputing, 2006, Vol. 69 (16 – 18), pp. 2140‐2152.
[111] Pal P. K., Kar A., “Sonar‐based Mobile Robot Navigation Through
Supervised Learning on a Neural Net”, Autonomous Robots, 1996, Vol. 3,
pp. 355 – 374.
[112] Zhang Q., Shippen J., and Jones B., “Robust Backstepping and Neural
Network Control of a Low‐Quality Nonholonomic Mobile Robot”,
International Journal of Machine Tools and manufacturing, Vol. 39, 1999, pp.
1117 – 1134.
[113] Marichal G.N., Acosta L., Moreno L., M‐endez J.A., Rodrigo J. J., and Sigut
M., “Obstacle Avoidance for a Mobile Robot: A Neuro‐Fuzzy Approach”,
Fuzzy Sets and Systems, Vol. 124(2), 2001, pp. 171 – 179.
[114] Acosta, L., Marichal, G. N., Moreno, L., Mendez, J. A., and Rodrigo, J. J.,
“Obstacle Avoidance using the Human Operator Experience for a Mobile
Robot”, Journal of Intelligent and Robotic Systems, 2000, 27(4), pp. 305 – 319.
264
[115] Ma X., Li X., and Qiao H., “Fuzzy Neural Network‐Based Real‐Time Self–
Reaction of Mobile Robot in Unknown Environments”, Mechatronics, 2001,
Vol. 11, pp. 1039 – 1052.
[116] Lee M., “Evolution of Behaviors in Autonomous Robot using Artificial
Neural Network and Genetic Algorithm”, Information Sciences, 2003, Vol.
155, pp. 43–60.
[117] Er, M. J., Tan T. P., and Loh S. Y., “Control of a Mobile Robot using
Generalized Dynamic Fuzzy Neural Networks”, Microprocessors and
Microsystems , 2004, Vol. 28(9), pp. 491‐498.
[118] Er M. J, Deng C., “Obstacle Avoidance of a Mobile Robot Using Hybrid
Learning Approach”, IEEE Transactions on Industrial Electronics, 2005, Vol.
52(3), pp. 898 – 905.
[119] Hui N. B., Mahendar V., and Pratihar D. K., “Time‐optimal, collision‐free
navigation of a car‐like mobile robot using neuro‐fuzzy approaches”,
Fuzzy Sets and Systems, 2006, Vol. 157 (16), pp. 2171 ‐ 2204.
[120] Watanabe K., Tang J., Nakamura M., Koga S., and Fukuda T., “A Fuzzy‐
gaussian Neural Network and its Application to Mobile Robot Control”,
IEEE Transactions on Control Systems Technology, 1996, Vol. 4(2), pp. 193‐
199.
[121] Watanabe K., Tang J., Nakamura M., Koga S., and Fukuda T., “Mobile
Robot Control using Fuzzy‐Gaussian Neural Networks”, IEEE/RSJ
International Conference on Intelligent Robots and Systems, 1993, pp. 919 –
925.
265
[122] Ng K. C., and Trivedi M. M., “A Neuro‐Fuzzy Controller for Mobile Robot
Navigation and Multirobot Convoying”, IEEE Transactions on Systems,
Man, and Cybernetics—PartB: Cybernetics, 1998, Vol. 28(6), pp. 829‐840.
[123] Araujo R., and Almeida A. T., “Learning Sensor‐Based Navigation of a
Real Mobile Robot in Unknown Worlds”, IEEE Transactions on Systems,
Man, and Cybernetics—Part B: Cybernetics, 1999, Vol. 29(2), pp. 164 – 178.
[124] Moon Sang‐Woo and Kong Seong‐Gon, “Block‐Based Neural Networks”,
IEEE Transactions On Neural Networks, 2001, Vol. 12(2), pp. 307 – 317.
[125] Ye C., Yung N. H. C., and Wang D., “A Fuzzy Controller with Supervised
Learning Assisted Reinforcement Learning Algorithm for Obstacle
Avoidance”, IEEE Transactions on Systems, Man, and Cybernetics—Part B:
Cybernetics, 2003, Vol. 33(1), pp. 17 – 27.
[126] Pulasinghe K., Watanabe K., Izumi K., and Kiguchi K., “Modular Fuzzy‐
Neuro Controller Driven by Spoken Language Commands”, IEEE
Transactions on Systems, Man, and Cybernetics—Part B: Cybernetics, 2004,
Vol. 34(1), pp. 293 – 302.
[127] Cavalcanti A., and Jr R. A. F., “Nanorobotics Control Design: A Collective
Behavior Approach for Medicine”, IEEE Transactions on Nanobioscience,
2005, Vol. 4(2), pp. 133 – 140.
[128] Ro P. I., and Lee B. R., “Neural‐Fuzzy Hybrid System for Mobile Robot
Path‐Planning in a Partially Known Environment”, American Control
Conference, 1995, pp. 673 – 677.
[129] Daxwanger W. A., Schmidt G. K., “Skill‐Based Visual Parking Control
using Neural and Fuzzy Networks”, IEEE International Conference on
Systems, Man and Cybernetics, 1995, Vol. 2, pp. 1659‐1664.
266
[130] Dubrawski A., Reignier P., “Learning to Categorize Perceptual Space of a
Mobile Robot using Fuzzy‐ART Neural Network”, IEEE/RSJ/GI
International Conference on Intelligent Robots and Systems, 1994, pp. 1272‐
1277.
[131] Li W., “Neuro‐Fuzzy Systems for Intelligent Robot Navigation and
Control Under Uncertainty”, International Joint Conference of the Fourth
IEEE International Conference on Fuzzy Systems and The Second International
Fuzzy Engineering Symposium, 1995, Vol. 4, pp. 1747‐1754.
[132] Godjevac J., and Steele N., “Adaptive Neuro‐Fuzzy Controller for
Navigation of Mobile Robot”, International Symposium Workshop Neuro‐
Fuzzy Systems, 1996, pp. 111‐119.
[133] Tunstel E., Akbarzadeh‐T M.‐R., Kumbla K., and Jamshidi M., “Hybrid
Fuzzy‐Control Schemes for Robotic Systems”, IEEE International
Symposium on Intelligent Control, 1995, pp. 171‐176.
[134] Bourdon G., and Henaff P., “Fuzzy and Neural Control for Mobile
Robotics Experimentations”, International Conference on Knowledge‐Based
Intelligent Electronic Systems, 1997, pp. 659 – 666.
[135] Rusu P., Petriu E. M., Whalen T. E., Cornell A., and Spoelder H. J. W.,
“Behavior‐Based Neuro‐Fuzzy Controller for Mobile Robot Navigation”,
IEEE Transactions on Instrumentation and Measurement, 2003, Vol. 52(4), pp.
1335 – 1340.
[136] Mbede J. B., Ele P., Mveh‐Abia Chantal‐Marguerite, Toure Y., Graefe V.,
and Ma S., “Intelligent Mobile Manipulator Navigation using Adaptive
Neuro‐Fuzzy Systems”, Information Sciences, 2005, Vol. 171, pp. 447–474.
267
[137] Pratihar D. K., Deb K., and Ghosh A., “A Genetic‐Fuzzy Approach for
Mobile Robot Navigation among Moving Obstacles”, International Journal
of Approximate Reasoning, 1999, Vol. 20, pp. 145 – 172.
[138] Hegazy O. F., Fahmy A. A., and Refaie O. M. E., “An Intelligent Robot
Navigation System Based on Neuro‐Fuzzy Control”, Lecture Notes in
Computer Science, 2004, Vol. 3157, pp. 1017 – 1018.
[139] Nefti S., Oussalah M. , Djouani K., and Pontnau J., “Intelligent Adaptive
Mobile Robot Navigation”, Journal of Intelligent and Robotic Systems, 2001,
Vol. 30(4), pp.311 – 329.
[140] Tsoukalas L. H., Houstis E. N., and Jones G. V., “Neurofuzzy Motion
Planners for Intelligent Robots”, Journal of Intelligent and Robotic Systems,
1997, Vol. 19, (3), pp. 339 – 356.
[141] Althoefer K., Krekelberg B. Husmeier D., and Seneviratne L.,
“Reinforcement Learning in a Rule‐Based Navigator for Robotic
Manipulators”, Neurocomputing, 2001, Vol. 37, pp. 51 – 70.
[142] Newell A., and Simon H. A., “Human Problem Solving”, 1972, Prentice
Hall.
[143] Post E., “Formal Reductions of the General Combinatorial Problem”,
American Journal of Mathematics, 1943, Vol. 65, pp. 197 – 268.
[144] Rosenbloom P.S., Laird J.E., Newell A., and Mc‐Carl R., “A Preliminary
Analysis of the Soar Architecture as a Basis for General Intelligence”,
Artificial Intelligence, 1991, Vol. 47(1‐3), pp. 289 – 525.
[145] Anderson J.R., “The Limitations of Rule Based Expert Systems”, Knowledge
Based Systems in Industry, 1987, Ellis Horwood, pp. 17 – 22.
268
[146] Takagi S., and Okawa Y., “Rule‐based Control of a Mobile Robot for the
Push‐a‐Box Operation”, IEEE/RSJ International Workshop on Intelligent
Robots and Systems, 1991, pp. 1338 – 1343.
[147] Gaeta H., Friedman D., Ritter W., and Hunt G., “Age‐Related Changes in
Neural Trace Generation of Rule‐Based Auditory Features”, Neurobiology
of Aging, 2002, Vol. 23(3), pp. 443‐455.
[148] Tunstel E., Howard A., and Seraji H., “Rule–based Reasoning and Neural
Network Perception for Safe Off–Road Robot Mobility”, Expert Systems,
2002, Vol. 19(4), pp. 191‐200.
[149] de Souza M. A. F., and Ferreira M. A. G. V., “Designing Reusable Rule‐
based Architectures with Design Patterns”, Expert Systems with
Applications, 2002, Vol. 23(4), pp. 395‐403.
[150] Dietrich J., Kozlenkov A., Schroeder M., and Wagner G., ”Rule‐based
Agents for the Semantic Web”, Electronic Commerce Research and
Applications, 2003, Vol. 2(4), pp. 323‐338.
[151] McIntosh B. S., Muetzelfeldt R. I., Legg C. J., Mazzoleni S., and Csontos P.,
“Reasoning with Direction and Rate of Change in Vegetation State
Transition Modeling”, Environmental Modelling & Software, 2003, Vol.
18(10), pp. 915‐927.
[152] Pfeiffer. J. J. Jr., “A Rule‐based Visual Language for Small Mobile Robots”,
IEEE Symposium on Visual Languages, 1997, pp. 164‐165.
[153] Pfeiffer. J. J. Jr., “Case Study: Developing a Rule‐Based Language for
Mobile Robots”, IEEE Symposium Visual Languages, 1998, pp. 204 – 209.
269
[154] Pfeiffer. J. J. Jr., “Altaira: A Rule‐based Visual Language for Small Mobile
Robots”, Journal of Visual Languages and Computing, 1998, Vol. 9 (2), pp. 127
– 150.
[155] Fei J., and Isik C., “Adapting to Environmental Variations in a Rule‐based
Mobile Robot Controller”, IEEE International Conference on Systems, Man
and Cybernetics, 1989, Vol. 1, pp. 332‐333.
[156] Gilmore B.J., and Streit D.A., “A Rule‐based Algorithm to Predict the
Dynamic Behavior of Mechanical Part Orienting Operations”, IEEE
International Conference Robotics and Automation, 1988, Vol. 2, pp. 1254 –
1259.
[157] Bonner S., and Kelley R.B., “A Representation Scheme for Rapid 3D
Collision Detection”, IEEE International Symposium Intelligent Control, 1988,
pp. 320 – 325.
[158] Bonner S., and Kelley R.B., “Planning 3‐D Collision‐Free Paths”, IEEE
International Symposium Intelligent Control, 1989, pp. 550 – 555.
[159] Bonner S., and Kelley R. B., “A Novel Representation for Planning 3‐D
Collision‐Free Paths”, IEEE Transactions on Systems, Man, and Cybernetics,
1990, Vol. 20(6), pp. 1337 – 1351.
[160] Clementine Software, Version‐5, http://www.spss.com/Clementine/, 2000.
[161] Pham D.T., and Dimov S. S., “An Algorithm for Incremental Inductive
Learning”, Institute of Mechanical Engineers, 1997, Volume 211, Part‐B, pp.
239‐249.
[162] Khatib O., “Real‐Time Obstacle Avoidance for Manipulators and Mobile
Robots”, The International Journal of Robotics Research, 1986, Vol. 5(1), pp. 90
‐ 98.
270
[163] Borenstein J., and Koren Y., “Real‐Time Obstacle Avoidance for Fast
Mobile Robots”, IEEE Transactions on systems, man and cybernetics, 1989,
Vol. 19(5), pp. 1179 ‐ 1187.
[164] Koren, Y., and Borenstein, J., “Potential Field Methods and their Inherent
Limitations for Mobile Robot Navigation”, International Conference on
Robotics and Automation, 1991, Vol. 2, pp. 1398 – 1404.
[165] Garibotto G., and Masciangelo S., “Path Planning using the Potential Field
Approach for Navigation”, Advanced Robotics, Robots in Unstructured
Environments, 1991, Vol. 2, pp. 1679‐1682.
[166] Kim J. O. and Khosla P. K., “Real‐Time Obstacle Avoidance using
Harmonic Potential Functions”, IEEE Transaction on Robotics and
Automation, 1992, Vol. 8(3), pp. 338 ‐ 349.
[167] Rimon E., and Koditschek D. K., “Exact Robot Navigation using Artificial
Potential Functions”, IEEE Transactions on Robotics and Automation, 1992,
Vol. 8(5), pp. 501‐518.
[168] Koditschek D. E., “Exact Robot Navigation by Means of Potential
Functions: Some Topological Considerations”, IEEE International
Conference Robotics and Automation, 1987, Vol. 4, pp. 1 – 6.
[169] Guldner J., Utkin V. I., Hashimoto H., and Harashima F., “Tracking
Gradients of Artificial Potential Fields with Non‐Holonomic Mobile
Robots”, American Control Conferences, 1995, pp. 2803 ‐2804.
[170] Guldner, J., and Utkin V.I., “Sliding Mode Control for Gradient Tracking
and Robot Navigation using Artificial Potential Fields”, IEEE Transactions
on Robotics and Automation, 1995, Vol. 11(2), pp. 247 – 254.
271
[171] Al‐Sultan K.S., and Aliyu M.D.S., “A New Potential Field‐based
Algorithm for Path Planning”, Journal of Intelligent and Robotic
Systems, 1996, Vol. 17(3), pp. 265 ‐ 282.
[172] Yun X., and Tan K‐C., “A Wall‐Following Method for Escaping Local
Minima in Potential Field Based Motion Planning”, International
Conference on Advanced Robotics, 1997, pp. 421 ‐ 426.
[173] Chuang J‐H., and Ahuja N., “An Analytically Tractable Potential Field
Model of Free Space and Its Application in Obstacle Avoidance”, IEEE
Transactions on Systems, Man, and Cybernetics—Part B: Cybernetics, 1998,
Vol. 28(5), pp. 729 ‐ 736.
[174] Sekhawat S., and Chyba M., “Nonholonomic Deformation of a Potential
Field for Motion Planning”, IEEE International Conference on Robotics and
Automation, 1999, pp. 817 ‐ 822.
[175] Canny J.F., and Lin M.C., “An Opportunistic Global Path Planner”, IEEE
International Conference on Robotics and Automation, 1990, Vol. 3, pp. 1554 –
1559.
[176] Liu C., Ang Jr. M.H., Krishnan H., and Lim S.Y., “Virtual Obstacle
Concept for Local‐minimum‐recovery in Potential‐field Based
Navigation”, IEEE International Conference on Robotics & Automation, 2000,
pp. 983 ‐ 988.
[177] Wang Y., and Chirikjian G. S., “A New Potential Field Method for Robot
Path Planning”, IEEE International Conference on Robotics and Automation,
2000, pp. 977‐982.
272
[178] Ren J., Mcisaac K.A., and Patel R.V., “Modified Newtonʹs Method Applied
to Potential Field‐Based Navigation for Mobile Robots”, IEEE Transactions
on Robotics, 2006, Vol. 22 (2), pp. 384 ‐ 391.
[179] Xi‐yong Z. and Jing Z., “Virtual Local Target Method for Avoiding Local
Minimum in Potential Field Based Robot Navigation”, Journal of Zhejiang
University SCIENCE, 2003, Vol.‐4(3), pp. 264 ‐ 269.
[180] Chengqing L., Ang Jr M. H., Krishnan H., and Yong L. S., “Virtual
Obstacle Concept for Local‐minimum‐recovery in Potential‐field Based
Navigation”, IEEE on International Conference on Robotics & Automation,
2000, pp. 983 – 988.
[181] Reid M.B., “Path Planning Using Optically Computed Potential Fields”,
IEEE International Conference on Robotics and Automation, 1993, Vol. 2, pp.
295‐300.
[184] Im Kwang‐Young, Oh Se‐Young, and Han Seong‐Joo, “Evolving a
Modular Neural Network‐Based Behavioral Fusion Using Extended VFF
and Environment Classification for Mobile Robot Navigation”, IEEE
Transactions on Evolutionary Computation, 2002, Vol. 6(4), pp. 413 – 419.
[185] Tsourveloudis N. C., Valavanis K. P., and Hebert T., “Autonomous
Vehicle Navigation Utilizing Electrostatic Potential Fields and Fuzzy
Logic”, IEEE Transactions on Robotics and Automation, 2001, Vol. 17(4), pp.
490 – 497.
[186] Cosio F. A., and Castaineda M. A. P., “Autonomous Robot Navigation
using Adaptive Potential Fields”, Mathematical and Computer Modelling,
2004, Vol. 40, pp. 1141 ‐ 1156.
273
[187] McFetridge L., and Ibrahim M. Y., “New Technique of Mobile Robot
Navigation using a Hybrid Adaptive Fuzzy potential Field Approach”,
Computers & Industrial Engineering, 1998, Vol. 35(3), pp. 471 ‐ 474.
[188] Vadakkepat P., Tan K. C., and Ming‐Liang W., “Evolutionary Artificial
Potential Fields and their Application in Real Time Robot Path Planning”,
Congress on Evolutionary Computation, 2000, Vol. 1, pp. 256 – 263.
[189] Ratering S., and Gini M., “Robot Navigation in a Known Environment
with Unknown Moving Obstacles”, Autonomous robot, 1995, Vol. 1(2), pp.
149‐ 165.
[190] Zhuang X., Meng Q., Yin B., and Wang H., “Robot Path Planning by
Artificial Potential Field Optimization Based on Reinforcement Learning
with Fuzzy Slate”, 4th World Congress on Intelligent Control and Automation,
pp. 1166‐1170.
[191] Kirkpatrick S., Gelatt C. D. Jr., and Vecchi M. P., “Optimization by
Simulated Annealing”, Science, 1983, Vol. 220, (4598), pp. 671 ‐ 681.
[192] Carriker W.F., Khosla P., and Krogh B., “The Use of Simulated Annealing
to Solve the Mobile Manipulator Path Planning Problem”, IEEE
International Conference on Robotics and Automation, 1990, Vol. 1, pp. 204 ‐
209.
[193] Janabi‐Sharifi F., and Vinke D., “Integration of the Artificial Potential Field
Approach with Simulated Annealing for Robot Path Planning”, IEEE
International Conference on Intelligent Control, 1993, pp. 536‐541.
[194] Janabi‐Sharifi F. and Vinke D., 1993, “Robot Path Planning by Integrating
the Artificial Potential Field Approach with Simulated Annealing”,
274
International Conference on Systems, Man and Cybernetics, Systems
Engineering in the Service of Humans, 1993, Vol. 2, pp. 282 ‐ 287.
[195] Park M.G., Jeon J. H., and Lee M. C., “Obstacle Avoidance for Mobile
Robots using Artificial Potential Field Approach with Simulated
Annealing”, IEEE International Symposium on Industrial Electronics, 2001,
pp. 1530‐1535.
[196] Park M.G., and Lee M.C., “Experimental Evaluation of Robot Path
Planning by Artificial Potential Field Approach with Simulated
Annealing”, 41st SICE Annual Conference, Vol. 4, 2002, pp. 2190‐ 2195.
[197] Park S.T., Yang S.Y., and Jung J.H., “Real‐time Lane Recognition by
Simulated Annealing Algorithm”, 4th Korea‐Russia International Symposium
on Science and Technology, 2000, Vol. 3, pp. 95 – 98.
[198] Lee S., and Kardaras G., “Elastic String Based Global Path using Neural
Networks”, IEEE International Symposium on Computational Intelligence in
Robotics and Automation,1997, pp. 108‐114.
[199] Lee S., and Kardaras G., “Collision‐Free Path Planning with Neural
Networks”, IEEE International Conference on Robotics and Automation, 1997,
pp. 3565 – 3567.
[200] Betke M., and Makries N. C., “Fast Object Recognition in Noisy Images
Using Simulated Annealing”, International Conference on Computer Vision,
1995, pp. 523 – 530.
[201] Hong D. S., and Cho H. S., “Generation of Robotic Assembly Sequences
using a Simulated Annealing”, IEEE/RSJ International Conference on
Intelligent Robots and systems, 1999, pp. 1247 – 1252.
275
[202] Martinez‐Alfaro H., and Gomez‐Garcia Simon, “Mobile Robot Path
Planning and Tracking using Simulated Annealing and Fuzzy Logic
Control”, Expert Systems with Applications, Vol. 15, 1998, pp. 421–429.
[203] Lucidarme P., and Liegeois A., “Learning Reactive Neuro controllers using
Simulated annealing for Mobile Robots”, IEEE/RSJ International Conference
on Intelligent Robots and Systems, 2003, pp. 674 – 679.
[204] Barral D., Perrin Jean‐Perrin, Dombre E., and Liegeois A., “An
Evolutionary Simulated Annealing Algorithm for Optimizing Robotic
Task Point Ordering”, IEEE International Symposium on Assembly and Task
Planning, 1999, pp. 157 – 162.
[205] Kwok D. P., and Sheng F., “Genetic Algorithm and Simulated Annealing
for Optimal Robot Arm PID Control”, The IEEE Conference on Evolutionary
Computation, pp. 707 – 713.
[206] Skewis T., and Lumelsky V., “Simulation of Sensor‐Based Robot and
Human Motion Planning”, International Journal of Robotics and Automation,
1993, Vol. 8(4), pp. 153 ‐ 168.
[207] Evans J., Krishnamurthy B., Barrows B., Skewis T., and Lumelsky V.,
“Handling Real‐World Motion Planning, A Hospital Transport Robot”,
IEEE Transactions on Control Systems, 1992, Vol. 12, pp. 15 ‐ 20.
[208] Skewis T., and Lumelsky V., “Experiments with a Mobile Robot Operating
in a Cluttered Unknown Environment”, Journal of Robotics Systems, 1994,
Vol. 11(4), pp. 281 ‐ 300.
[209] Boem H. R., and Cho H. S., “Mobile Robot Localisation using a Single
Rotating Sonar and 2 Passive Cylindrical Beacons”, Robotica, 1995, Vol.
13(3), pp. 243 ‐ 252.
276
[210] Kleeman L., and Kuc R. “Mobile Robot for Target Localization and
Classification”, International Journal of Robotics Research, 1995, Vol 14(4), pp.
295‐318.
[211] Ko J. H., Kim W. J., and Chung M. I., “A Method for Acoustic Landmark
Extraction for Mobile Robot Navigation”, IEEE Transactions on Robotics and
Automation, 1996, Vol. 12(3), pp. 478 ‐ 485.
[212] Mallita P., Sirtola J., and Souranta R., “Two‐dimensional Object Detection
in Air Using Ultrasonic Transducer Array and Non‐Linear Digital L‐
Filter”, Sensors and Actuators A‐Physical, 1996, Vol. 55 (2‐3), pp. 107 ‐ 113.
[213] Hong M. L., and Kleeman L., “Ultrasonic Classification and Location of
3D Room Features using Maximum Likelihood Estimation”, Robotica,
1997, Vol. 15(6), pp. 645 ‐ 652.
[214] Budenske J., and Gini M., “Sensor explication: Knowledge‐based Robotic
Plan Execution Through Logical Objects”, IEEE Transactions on Systems,
Man and Cybernetics Part B‐Cybernetics, 1997, Vol. 27(4), pp. 611 ‐ 625.
[215] Takamura S., Nakamura T., and Asada M., “Behavior‐Based Map
Representation for a Sonar‐Based Mobile Robot by Statistical Methods”,
Advanced Robotics, 1997, Vol. 11(5), pp. 445 ‐ 462.
[216] Nakamura T., Takamura S., and Asada M., “Behavior‐based Map
Representation for f Sonar Based Mobile Robot by Statistical Methods”,
RSJ/IEEE International Conference on Intelligent Robots and Systems, 1996, pp.
276 ‐ 283.
[217] Nakamura T., Morimoto M., and Asada M., “Direct Coupling of
Multisensor Information and Actions for Mobile Robot Behavior
277
Acquisition”, IEEE/SICE/RSJ International Conference on Multisensor Fusion
and Integration for Intelligent Systems, 1996, pp. 139 ‐ 144.
[218] Everett H., and Flynn A,. “A Programmable Near‐infrared Proximity
Detector for Mobile Robot Navigation”, SPIE Conference on Advances in
Intelligent Robotics Systems, 1986, Vol. 727, pp. 221 ‐ 230.
[219] Yu H. H., and Malik R., “AlMY‐An Autonomous Mobile Robot
Navigation in Unknown Environment with Infrared Detector System”,
Journal of Intelligent and Robotic Systems, 1995, Vol. 14(2), pp. 181‐197.
[220] Kube C. R., and Zhang H. “Task Modelling in Collective Robotics”,
Autonomous Robots, 1997, Vol. 4, pp. 53 ‐ 72.
[221] Lumelsky V. J., and Harinarayanan K. R., “Decentralised Motion Planning
for Multiple Mobile Robots: The Cocktail Party Model”, Autonomous
Robots, 1997, Vol. 4, pp. 121 ‐ 135.
[222] Cheung E., and Lumelsky V. J., “Proximity Sensing in Robot Manipulator
Motion Planning: System and Implementation Issues”, IEEE Transactions
on Robotics and Automation, 1989, Vol. 5(6), pp. 740 ‐ 751.
[223] Vandorpe J., and Van Brusell H., “A Reflexive Navigation Algorithm for
an Autonomous Mobile Robot”, International Conference on Multisensor
Fusion and Integration for Intelligent System, Las Vegas, NV, 1994, pp. 251 ‐
258.
[224] Vandorpe J., Brusell V. H., and Xu H., “LIAS: A Reflexive Navigation
Architecture for an Intelligent Robot System”, IEEE Transactions, Industrial
Electronics, 1996, Vol. 43(3), pp. 432 ‐ 440.
278
[225] Borenstein J., Everett H. R., Feng L., and Wehe, D., “Mobile Robot
Positioning: Sensors and Techniques”, Journal of Robotic Systems, 1997, Vol.
14(4), pp. 231 ‐ 249.
[226] Yagi Y., Nishizawa Y., and Yachida M., “Map‐based Navigation for a
Mobile Robot With Omnidirectional Image Sensor COPIS”, IEEE
Transactions on Robotics and Automation, 1995, Vol. 11(5), pp. 634 ‐ 648.
[227] Yagi Y., Nishizawa Y., and Yachida M., “Estimation of Free Space for
Mobile Robot Using Omnidirectional Image Sensor COPIS”, IEEE/JES
International Conference, Industrial Electronics, Control and Instrumentation,
Kobe, 1991, Vol. 2, pp. 1329 ‐ 1334.
[228] Yagi Y., Nishizawa Y., and Yachida M., “Obstacle Avoidance for Mobile
Robot Integrating Omnidirectional Image Sensor COPIS and Ultrasonic
Sensor”, 2nd International Conference on Automation Robotics and Computer
Vision, 1992, Vol. 3, pp. 11.7.1 ‐ 11.7.5.
[229] Gonzalez J., Stenz A. and Ollero A. “A mobile robot iconic position
estimator using a radial laser scanner”, Journal of Intelligent & Robotic
Systems, 1995, Vol. 13(2), pp. 161 ‐ 179.
[230] Dicesare F., Harhalakis G., Porth J.M., Silva M., and Vernadat F. B.,
“Practice of Petri Nets in Manufacturing”, Chapman & Hall, 1999.
[231] Zhou M., and Dicesare F., “Petri Net Synthesis for Discrete Event Control
of Manufacturing Systems”, Kluwer Academic Publisher, 1993.
279
Published Papers
Papers Published in International Journals:
“Potential field method to navigate several mobile robots”, Applied
Intelligence, (2006), Vol. 25 pages 321 – 333.
“Neuro‐Fuzzy Technique for Navigation of Multiple Mobile Robots”,
Fuzzy Optimization and Decision Making, (2006), Vol. – 5, pages 255 – 288.
“Navigation of Multiple Mobile Robots Using Rule‐based‐Neuro‐Fuzzy
Technique”, International Journal of Computational Intelligence, (2006), Vol. –
3(2), pages 142 – 152.
“Navigation Technique to Control Several Mobile Robots”, International
Journal of Knowledge‐Based and Intelligent Engineering Systems, (2006), Vol. –
10 (5), Pages 387 ‐ 401.
280
Papers Published in International / National Conferences:
“Fuzzy Control Technique for of Multiple Mobile Robots’ Navigation”,
AMS‐03, Jadavpur University, Kolkata, 28‐29th March, 2003, Page no.: 415‐
420.
“Fuzzy Controllers for Navigation of Multiple Mobile Robots”, NCME‐03,
TITE, Patiala, November, 2003, Pages : 498‐504.
“Neuro‐Fuzzy Technique for Navigation of Multiple Mobile Robots”,
VETOMAC 3 / ACSIM 2004, 6‐9 December 2004, Pages 749‐756.
“Path planning using rule‐based approach for navigation of multiple
mobile Robots”, N.I.T., Rourkela, ISTAM – 2004, Page No.: 56.
“Rule base Technique for Navigation of Multiple Mobile Robots”, NCME‐
03, TITE, Patiala, November, 2003, Pages: 432‐438.
“Potential Field Method for Navigation of Multiple Mobile Robots”, NIT,
Hamirpur, RDFTME‐2006, Pages 446 – 454.
“Potential‐Field‐Neuro‐Fuzzy Technique for Navigation of Several Mobile
Robots”, N.I.T., Rourkela, ETCE‐2005, Pages 73 – 84.
281
282
283
284