Car-Like
Robot
Motion
Planning
Mohamed M.El-Khatib David J.Hamilton
Electronic and Electrical Engineering Dpt. Electronic andElectrical Engineering Dpt.
University of Strathclyde University of Strathclyde
204 George St.,GI IXW,Glasgow 204 George St.,GI IXW, Glasgow
UnitedKingdom UnitedKingdom
melkhatib@eee.strath.ac.uk d.hamilton@eee.strath. ac. uk
Abstract - A system for real time navigation of a planning, only partial information is available about the nonholonomic car-like robot in a dynamic environment obstacles and to achieve a given goal; the robot plans a consists of two layers is described: a Sugeno-type fuzzy path based on the available information [6], [7].
motion planner; and a modified proportional navigation The main problem when navigating realistic basedfuzzy controller. The systemphilosophy is inspired by environments is the
pervasive
uncertainties in the overallhuman routing when moving between obstacles based on
visual information including right and left views to identify system (which
includes
the robot and surrounding the nextsteptothegoal.ASugeno-type fuzzy motion planner domain). Thus it becomes impossible to generate complete of four inputs one output is introduced to give a clear or exact models of the system and/or its behavior. direction to the robot controller. The second stage is a Uncertainties also propagate through the control systems modified proportional navigation based fuzzy controller leading to further inaccuracies or errors. By contrast, based on theproportional navigation guidance law and able humans cope very well with uncertain environments, often to optimize the robot's behavior in real time, i.e. to avoid relying on approximate or qualitative data and reasoning to stationary and moving obstacles in its local environment make decisions and to accomplish theirobjectives.
obeying kinematics constraints. The system has anintelligent Therefore artificial intelligent systems which use ancombination oftwobehaviorstocopewithobstacleavoidance
as well as approaching a target using a proportional apprxmt raoig grhihy [eial[81] Fzy
navigationpath. logic systems are inspired by the human capability to
operate on, andreasonwith, perception based information The system was simulated and tested on different [12]. Fuzzy logic provides a formal methodology for environments with various obstacle distributions. The representing and implementing the human expert's simulation reveals that the system gives good results for heuristic knowledge and perception based actions [13]. varioussimpleenvironments. The focus of this paper is the real time navigation of a
nonholonomic car-like robot in a dynamic environment. I INTRODUCTION The nonholonomic constraints for this system arise from The motion planning problem involves formulating a
constraining
eachpair
of wheels to roll withoutslipping.
foragiven objectorsystemofobjects, such a
They
canonly
moveforwardorbackwardwhile
making
atrajectoryed
geometricand/ornon-geometricconstrainthate
curvewith
aboundedradius, in
thesameway
asreal carspredefined
geometric
and/ornon-geometricconstraise
[14] [15].
Theseconstraintsimposed
onthe motionarenotsattentisfied Thesen pearoblemushe
theyattreated
cons
wide
eintegrable
and,
as aresultcannotbestabilized
by smooth,
attention in recent years because they are faced in awide sai edakcnrl 1] hrfr h ehiuso
varietyof
applications,
particularly inroboticsnavigation,
scotin
feedback control , dnmfeedbac
autonomousguidance~ ~
systems, electricpackaging,
NCmachining,
lisneatinons
modebcon
trol[1e],and
an trfi otrl[1- linearization
[17],
sliding
mode control[18],
andIn most
generaffionrolthemotion
[1-4].ngproblem
is fuzzy/neural control [19], [20], have been used to solveInated
is
mollowst
stabilization, trajectory tracking
and robust controlstated as follows:. . problems. Car-like robots are particularly interesting for
coGfivenrationsr
sythem
objects,
a.stt
an a g the present approach because of the restricted set ofconfigurations
forthesemobjct,
andset
of owich
motions.
This methodplans
forward motions for the robot can be stationary or moving, the objective is to find the (bcwr moin r nyuedfrbctakn) best feasibletrajectory
for the system ofobjects
to movefrom the startconfiguration to the goal configuration such
SYSTESC TION AND PROBLEM
thatcollision withthe obstaclesiS avoided" [5].Themotion planning problem can beclassified as staticFOMLTN
M. M.El-Khatib, D. J. Hamilton * ALayered FuzzyController for Nonholonomic Car-Like Robot Motion
Planning
carried out in terms of events, whereas the execution of III SUGENO-TYPEFuzzYMOTION PLANNER planned actions uses areference frame on
existing
robot The system philosophy is inspired by human routing control systemusingatime basedorclockedtrajectory [8].
when moving between obstacles based on visual Thus, the proposed system consists oftwosubsystems,
a information including right and left views to identify the fuzzy motion planner (FMP) anda modifiedproportional
nextsteptothegoal
infree space. This isanalogous
tothe navigation (PN) based fuzzy controllerFig.(2).
First a proposed robot moving safely in an environment based on definition of car-like robot kinematics isintroduced. data "visible" with three ultrasound range finders. These Let(x,y,O)denote theconfigurationof the car-like robot sensors are mounted to the front, right and left of the robot Fig.(1)parameterized by the location of the front wheels. asshown inFig.(3).
The kinematic model[14],[15] canberepresentedas:
27C
X =VCOS6 cc 1Sfc Ss ,go,
y=vsin
-=-tan 'o
where:
v the forwardvelocity of the car-like robot
0 the angle of the vehicle
body
with respectto thehorizontal line
5.
p thesteeringanglewith respecttothe vehicle
body
(x,y) the location of thecentrepointof the front wheelsL thelengthbetween the front andrearwheels Figure 3
TheRobotSensors with theirbeampattern
e j i
27r'
The Proposed sensors are modeled using Matlab,' software such thattheyscan an array ofzeros
representing
the clear environment with obstaclesset toonesifpresent.
9c, s / ( \Theyscanthe array in a
500
sectoralong
each sensoraxisdirection such that it returns the range of the nearest
obstacleas shown in
fig (3).
The maximum range issetto be5meter.Thesespecifications
model commercialsensorssuchasUltrasonic range finderSRF04, SRF05 andSRF1O
,'
~~~~~~~~~~~~[22].
,--
oA
Sugeno-type
[23], [24], fuzzy motionplanner
of four. | ox
inputs
one output isintroducedto giveafree direction to Figure 1 the robot controller. The inputs are thefrontal,
right
and TheCar-likeRobotsystem left obstacle ranges found by the front, right and left sensors. The last input is theangle
to thegoal,
which Thenonholonomicconstraints
forthis
system arise fromindicates the
difference
in
direction
between the
goal and
constrainingheachpair
ofwheels torollwithout
slippingthe
robot's
current
direction.
The
output is
an
error angle
In theproposed system
Fig.(2),
thedata from the
three
representing the angle needed to go from the robot's sensorsplus
the
rectis
aclearare
given
in.direction
to a
free
(suggested)
direction. Fuzzy
motion planner; the result is a clear direction to move
in.
membership functions are assigned to each input as shown Next,the fuzzycontroller takes the handto steerthe robot in Fig(4)e
tothegoalusingthe
proportional
navigation
trajectory
andavoidingthe obstacles. F VF LL F F VF
Righ c _
FuzzyMotiorCa ieoo 3 4 xC 3 4 x
MDdified PNFuzzl 22 C 4
Sensor Errol .INKSM Steer_ni LL V L F B MRS_A- SL ML BL
LSRatefCange C ' 4 x 2 C A
Angle{cthte Gca FiXgure4
Figure 2 The Membershipfunctions ofthefuzzymotion planner inputs The complete systemoffuzzymotion planner and behavioralfuzzyThmebripfntosdcieteragsrmte
controller.Thmebrhpfntosdsrbthragsrmte
left and right sensors assign the obstacle as N (near) or VN
F
(very near) for the front sensor if its range approaches 90%0of the sensor maximum range. For example: the obstacle is Free Behavioural Fuzz CaLike Rob
nearif its range is about 4.5 meter as the sensor maximum
Mior
+ Logic controller Xrangeis 5 meter. This enables the
planner
todetermine the PAAngne ]S;afeasible
trajectory
atanearly
stagetoavoid cul-de-sacs. C alrThe fuzzy motion planner uses Takagi-Sugeno fuzzy Robol
inference for the rule evaluation [23], [24]. Unlike other Directior
fuzzy control methods [25], [26], the Takagi-Sugeno
LOSrateofchange
results in the output of a control function for the system
depending on the values of the inputs. The application of The behavioral
fuzzy
controllermodelthe Sugeno method allows piecewise refinement of a linear
relationship of the form that appears in the rule's Fig.(5)showsthe proposed system model which consists consequent. However, the linear dependence of each rule of a two inputs-one output fuzzy controller as shown in on the input variable of a system makes the Sugeno Fig.(6).
method ideal for acting as an interpolation supervisor of
multiplelinear controllers that are to be applied, Fuzzificatior Defuzzifcaflot
respectively,
todifferentoperating
conditions ofadynamic
Errol
j nonlinear system as in the present case. The output of theplanner
is theangle
to a free direction. This goes to the TheSteerin-second stage to control the robot
direction,
describedby
fivemembershipfunction (MF) as shown in table
(1)
o,chanceTable I
The fuzzy membershipfunction for the output ofthe Sugeno-typefuzzy
motion planner Figure6
MF Name Type Value
DescriptioThe
proposedBehavioral
Fuzzy LogicController withitsMembershipMFName
Type
ValueDescription
FunctionsSL Const. 0.523 Small to the left(300) Each crisp input into a fuzzy system can have multiple BL Const. 0.785
Big
to theleft(450) membership functions assigned to it. In general, the greater SR Const. -0.523 Small to theright(300)
number ofmembership functions assigned to describe an BR Const. -0.785 Big to theright(450) input variable,the higher resolution of the resultant fuzzy F Const. 0 Forward (no change) control system, resulting in a smoother control response. GOAL Linear4th
input The same angle to the However, a large number of membership functionsl__________
________ __ _ goal as the4th input |requires added computation time and increase the system complexity. Moreover, an excessive number of IV MODIFIEDPROPORTIONAL NAVIGATION BASED membership functions can lead to unstable fuzzy system.FUZzYLOGICCONTROLLER As a result, the most common number of membership
The second stage is an intelligent controller able to functions for each variable in afuzzy system fall between optimize the robot's behavior in real time, i.e. to avoid 3 and 9. The number shouldusually (but not always) bean stationary and moving obstacles in its local environment odd number (3,5,7,9). The control surface fuzzy sets on
obeyingkinematicsconstraints. each side of the zero (or normal) action set should
Thus, for the robot to reach the goal, it has to follow two
normally
be balanced andsymmetricbehaviors: (1) when there are no obstacles in the goal sight The error signal between the desired direction from the and (2) when there is anobstacle. Thus, it has to change planner and the feedback actual direction of the robot is direction to avoid the obstacle taking into account the fuzzified by seven membership functions; five triangle dimensions and the kinematics of the robot.Inaddition, for membership functions, and two trapezoidal membership thegeneralcase,amoving goal may also be considered. functions. They are used at the inputs to convert the To meet these criteria, a fuzzy logic controller (FLC) direction error signal into linguistic variables. The based on the proportional navigation method was trapezoidal membershipfunctions at the boundaries of the simulated. The proportional navigation method is a desiredinputrange serveto provide "saturation" behavior guidancelaw first used in 1950 [27]. Itis popular due to its whenever the input is high. In order to optimize the simplicity,effectiveness andeaseofimplementation [28]. membershipfunction width the WholeOverlap, WO, index
The proportional navigation guidance law seeks to null is calculated from the next
equation
[12]: the line of sight changing rate (LOS) by making thecontrolled system (robot) turn rate be directly proportional fmin(,i(x),"j2 (x)) to the rateof turn of sight line [29]. In other words, it seeks WO=x
to nullify the angular velocity of the line of sight (LOS)
fmax(ji1 (x),
812(x))
anglex
In addition to the proportional navigation behavior of where: g1(x) and g2(x) are two adjacent membership the controller, the direction control behavior of the robot in functions.
M. M. El-Khatib, D. J. Hamilton* A Layered FuzzyController for NonholonomicCar-Like Robot Motion Planning
calculatedusing the proportional navigation concepts [29],
[30],
in thesignal processing
unit shown inFig.(2)
asfollows:
Calculate the distance and thedirection to the goal:
Xto Goal XGoal-XRobot
YoGoal YGoal-
YRobotonEoiSCngRt
1 to Goal Figure7
WtoGoal tan X The controlsurface of the behavioral fuzzy controller to_Goal
Gto
|Goal
oa +2Y
a V RESULTS DISCUSSION AND CONCLUSIONThe system was modeled and simulated with SimulinkTM software
[32],
for agiven
data set of randomCalculate the LOS rateof
change:
environments. Different environments with
different
obstacle distributions are used to test the system LOS rateofchangetoS1l]O
R Goal -3R) performance as shown in Fig.(8). The simulation reveals that thesystem
gives good
results for thenon-complicated
to_Goal
environment. This is predictable because of the robot's kinematics constraints.where:
(XGoal,
YGoal) The Goal coordinates(XRObot,
YRobot) The current robot coordinates(Xto_Goal, Yto_Goal)
The difference between the robot and Goal coordinates'Vto_Goal
The direction
to
the Goal from the
robot
Rt
Goal The distancetoGoal from robotO_ ii
..iii g.v EZ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~...
The output of the controller is the steering angle to the robot which is constrainedtothe range-450to
450.
Aswith the input variables, seven membership functions are used torepresentthe outputsignal.
The FLC usesthe Mamdanimethod for the inference engine [31], and the rules are g designed such that they combine two behaviors. Firstly
when there is noobstacle, the robot behaves in "Track the proportional navigation path until the goal is reached" mode. Secondly, when there is an obstacle, the robot operates in "Deviate from the calculated path and go around the obstacle until it is clear to the goal" mode. Thesetwobehaviors areindependentthereforetheycanbe
developed
and demonstratedindependently
of each other.Thus,
each behaviorhas rulesrepresented
inthe controller.. But, only one action command can be sent to a single outputcontrol for anygivenstimulus (a single pointintheinput space). This leads to the concept that onebehavior The simulationThes1mlaton esutsresults forordifferent environments with various obstacleFigure8 must dominate in any given region of the input space. distributions
Thus, these two behaviors are merged to create a more
complex reasoning system. Thus, these two behaviors are A number of different strategies has been mergedto create a more complex reasoning system. The published to table similar problems. However, the ruleswereformulatedoneby one, then the whole rulesset proposed system is compared with similar published
wasanalyzedtomake it: systems [13], [9], [10], [33-37]. Different strategies have
Complete: any combination of theinputsfiredatleastone been used: thebehavioral based structure has been used in
rule. many [33-37]. These assign different behaviors for
Consistent: it does not contain any contradictions. different situations (avoiding obstacles, following wall, Continuous: it does not have neighboring rules with output going to the goal,...etc) and employ a behavior selection fuzzy sets that have an emptyintersection, mechanism. Such strategies need more training and The performance of the fuzzy controller is shown in additional algorithms for tuning the fuzzy parameters.
Fig.(7) Moreover, the more behaviors we employ the more
By contrast, areal time navigator for a nonholonomic International Conference onFuzzy Systems,Melbourne, Australia,
car-like robot in a dynamic environmentis proposed. Here [15] Dec. 2005, pp. 513-516F. LamirauxandJ.-P.Laumond "SmoothMotionPlanningfor Car-in, the system consists of a Sugeno-type fuzzy motion Like Vehicles", IEEE Transactions on Robotics and Automation, planner and a modified proportional navigation based Vol.17, No.4, Aug. 2001, pp. 100-104.
fuzzy controller. The system philosophy is inspired by [16] W. S. Lin, C. L. Huang and M. K. Chuang, "Hierarchical Fuzzy human routing when moving between obstacles basedon ProceedingsControl for Autonomous Navigation of
Wheeled
Robots",IEE
-Control TheoryandApplications, September 2005,
visual information including the right and leftviews and he Vol. 152, Issue 5, pp. 598-606.
makes already the next step to the goal in the free space. [17] G. Oriolo, A. De Luca, and M. Vendittelli, "WMR Control via ASugeno-type fuzzy motion planner of four inputsone Dynamic Feedback Linearization: Design, Implementation, and output is introduced to give a free direction to the robot Experimental Validation", IEEE Trans. Control Syst. Technol.,Vol. controller. Amodifiedproportional navigation based fuzzy
[18
,No.
6, 2002a
P.H35.K8
"Sliding Mode Controlfor TrajectYlogic controller for real time navigation of a nonholonomic Tracking of Nonholonomic Wheeled Mobile Robots", IEEE Trans. car-like robot in a dynamic environment is proposed. It Robot. Autom., Vol.15, No. 3, 1999,pp.578-587.
intelligently companies two behaviors to cope with [19] R. Fierro and F.L.Lewis, "Control ofA Nonholonomic Mobile Robot
UsingNeuralNetworks",IEEE Trans. NeuralNetw.,Vol.9,No.4,
obstacle avoidance as well as approaching a goal using a 1998, pp. 589-600.
proportional navigation path accounting for car-like robot [20] R. Colbaugh, E. Barany, and K.Glass, "Adaptive Control of kinematics. Other behaviors can be integrated to perform Nonholonomic Robotic Systems", J. Robot. Syst.,Vol.15, No.7, morecomplex tasks [21] K.1998, pp. 365-393.Gupta,and A.P.Pobil, PracticalMotionPlanninginRobotics: The main advantage of the present author's system iS Current approach and Future Directions, John Wiley & Sons
Ltd,
the simplicity of design which makes it suitable for 1998.hardware implementation and extensibility as it does not [22] Advanced Electronics for Robotics, http://www.robot-rely on any specific robotic platform. The system uses a [23] electronics.co.uk.K.Walker and A. C.Esterline, "Fuzzymotionplanningusing the small number of sensors. The system uses linguistic Takagi-Sugeno method', Southeastcon 2000, Nashville, TN, USA, representation which allows the capture of human Proceedings ofthe IEEE, April 2000, pp.56-59.
experiences and intuitive reasoning. Inaddition, theuse of [24] D. Tsay, H.-Y. Chung, and C.-J. Lee, "The Adaptive Control of proportional navigation method enables the system to track Nonlinear Systems Using the Sugeno-Type of Fuzzy Logic", IEEE
TransactionsOnFuzzySystems,Vol.7,No.2,April 1999,pp
225-the goal even if its coordinates have been changed during 229.
thenavigation which widens the range of proposed system [25] A. M. Ibrahim, Introduction to Applied Fuzzy Electronics, Prentice
applications. HallInc.,1997.
[26] J. J. Buckley andE. Eslami,AnIntroduction toFuzzy Logic and FuzzySets,Phydica-Verlag Heidelberg, 2002.
REFERENCES [27] V.Rajasekhar and A. G. Sreenatha "Fuzzy Logic Implementation of [1] C. Eldershaw, HeuristicAlgorithms forMotion Planning, D.Phil. Proportional Navigation Guidance", Acta Astronautica, Vol. 46,
Thesis, The University of Oxford, 2001. No. 1, 2000,pp. 17-24.
[2] G. Song, and N. M. Amato, "A Motion-Planning Approach To [28] M. Mehrandezh, M. N. Sela, R. G. Fenton, and B. Benhabib,
Folding:FromPaperCrafttoProteinFolding",IEEETransactions "Robotic interception of moving objects using ideal proportional onRobotics andAutomation, Vol. 20,No.1,February2004 navigation guidance technique" Journal of Robotics and
[3] H.Zhang andJ. P.Ostrowski, "VisualMotionPlanningfor Mobile AutonomousSystems,Vol.28, 1999,pp 295-3 10.
Robots",IEEETransactions onRobotics and Automation, Vol. 18, [29] S. A. Murtaugh, and H. E. Girel, "Fundamental of Proportional No.2,April 2002,pp199-208. Navigation", IEEE Spectrum, December, 1966, pp.75-85
[4] X. Yang,M.Moallem, andR. V. Patel, "ALayerGoal-Oriented [30] J. M. Borg, An Industrial Robotic System For Moving Object
FuzzyMotionPlanning Strategyfor Mobil Robot Navigation",IEEE Interception Using Ideal Proportional Navigation Guidance, Master Transactions on System, Man, and Cybernetics, Vol. 35, No. 6, Thesis,Universityof Toronto, 2000.
December 2005,pp1214-1224. [31] S. S.Farinwata, D. Filev, and R.Langari,Fuzzy Control: Synthesis
[5] C. Ahrikencheikh and A. Seireg, Optimized-Motion Planning- and Analysis, John Wiley & Sons Ltd, 2000.
Theory and Implementation, John Wiley & Sons Inc., 1994. [32] W. C. Messner and D. M.Tilbury,Control TutorialsforMatlab and
[6] Y. K.Hwang,andN.Ahuja,"GrossMotionPlanning-ASurvey", Simulink,Addison-Wesley Publishing Company,Inc., 1998. ACMComputingSurveys,Vol.24,No.3,Sept. 1992.pp.219-291 [33] V. K.Hombal, A. S. Sekmen, and M. S. Zein-Sabatto, "A Fuzzy [7] 5. M. LaValle,PlanningAlgorithms, Cambridge UniversityPress, integrated Robotic Behavioral Architecture", Proceeding of the
2005. IEEE Southeastcon conf, Nashville, TN, 2000
[8] B. K. Ghosh, Ning Xi and T. j. Tarn, Control in Robotics and [34] H. Seraji,and A. Howard, "Behavior-Based RobotNavigationon Automation: Sensor-Based Integration,Academic Press, 1999. Challenging Terrain: A Fuzzy Logic Approach", IEEE Trans. on [9] Tzuu-Hseng S. Li, M.-S. Chiang and S-S. Jian, 2000. "Motion Robotics And Automation, Vol. 18, No. 3, 2002,pp. 308-321.
planning of anautonomous mobile robot by integrating Gas and [35] M. Wang, and J. N. Liu, "Automatic Robot Navigation Using Fuzzy
fuzzy logic control,"Proc.of FUZZ-IEEE-2000,pp.933-938, May LogicController", Proceeding ofthe
3ad
International Conferenceon2000, San Antonio, Texas, USA.(NSC89-2212-E006-063) MachineLearningand Cybernetics, Shanghai,2004.
[10] H.Surmann,J. HuserandJ.Wehking, "Path PlanningforaFuzzy [36] A. Ant6nio and L. Correia., "A fuzzybehavior-based architecture Controlled Autonomous Mobile Robot" 5th IEEE Int. Conf on for decision control in autonomous vehicles", Proceedings of the
FuzzySystems FUZZ-IEEE'96,NEWORLEANS, Sept. 1996. 2001 IEEE International Symposium on Intelligent Control -[11] C. Son "Intelligent control planning strategies with neural ISIC'01, Mexico-city,Mexico, 2001.
network/fuzzy coordinator and sensor fusion for robotic part [37] S.X.Yang,H. Li, M.Q.-H.Meng, and P. X. Liu, "An Embedded
macro/micro-assemblytasks in a partially unknown environment", Fuzzy Controller for a Behavior-Based Mobile Robot With International Journal of Machine Tools & Manufacture, No. 44 Guaranteed Performance", IEEE Transactions on Fuzzy Systems,
2004, pp. 1667-1681. Vol. 12, No. 4, 2004.
[12] L. Reznik, Fuzzy controllers, Newnes, 1997. [38] I. Baturone, F. J. Moreno-Velo, S. Sanchez-Solano, and A. Ollero, [13] N. H. C. Yung and C. Ye, "An intelligent Navigator for Mobile "Automatic Design of Fuzzy Controllers for Car-LikeAutonomous Vehicles" Proceedings of the International Conf. on Neural Robots" IEEE Transactions on Fuzzy Systems, Vol. 12, No. 4, 2004. InformationProcessing, Hong Kong, 1996, pp. 948-953. [39] H. A. Hagras, "A Hierarchical Type-2 Fuzzy Logic Control [14] A. Riid and E. Rustern "Fuzzy Logic in Control : Truck Backer- Architecture for Autonomous Mobile Robots" , IEEE Transactions