Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Automated Parallel Parking Using Fuzzy Logic


Published on

Published in: Technology, Business
  • Be the first to comment

  • Be the first to like this

Automated Parallel Parking Using Fuzzy Logic

  1. 1. <ul><li>Intelligent Parallel Parking Control of Autonomous Ground Vehicles in Tight Spaces </li></ul><ul><li>Yanan Zhao, Emmanuel G. Collins. Jr. </li></ul><ul><li>Dept. of Mechanical Engineering </li></ul><ul><li>Florida A&M University- Florida State University </li></ul>Prepared through collaborative participation in the Robotics Consortium sponsored by the U. S. Army Research Laboratory under the Collaborative Technology Alliance Program, Cooperative Agreement DAAD19-01-2-0012. The U. S. Government is authorized to reproduce and distribute reprints for Government purposes notwithstanding any copyright notation thereon.
  2. 2. Outline <ul><li>Introduction </li></ul><ul><li>Parking space </li></ul><ul><li>Parking algorithm </li></ul><ul><li>Fuzzy logic controller design </li></ul><ul><li>Genetic fuzzy systems </li></ul><ul><li>Simulation results </li></ul><ul><li>Experimental implementation </li></ul><ul><li>Conclusions </li></ul>
  3. 3. Introduction <ul><li>The objective of the research is to study reverse-motion maneuvering which can be used to hide autonomous ground vehicles (AGVs) during missions, for example between trees or in crevices or small buildings, preventing them from being detected or attacked. </li></ul><ul><li>Reverse motion is necessary under the </li></ul><ul><li>cases </li></ul><ul><ul><li>when the forward path is blocked, </li></ul></ul><ul><ul><li>or when forward navigation has difficulty to maneuver a vehicle into a tight space. </li></ul></ul><ul><li>The reverse-motion maneuvering algorithm studied here was designed to emulate the parallel parking process of an experienced human driver. </li></ul><ul><li>Parallel parking is also important for industrial and commercial vehicles. </li></ul>
  4. 4. Introduction (cont’d) <ul><li>Current approaches to automatic parallel parking can be classified into two groups. </li></ul><ul><li>Path tracking approach, </li></ul><ul><ul><li>a feasible geometry path is planned in advance, taking into account the environmental model as well as the vehicle's dynamics and constraints. Control commands are generated to follow the reference path. </li></ul></ul><ul><li>Skill-based approach, </li></ul><ul><ul><li>fuzzy logic or neural networks are used to acquire and transfer an experienced human driver's parking skill to an automatic parking controller. The control command is generated by considering the orientation and position of the vehicle relative to the parking space. </li></ul></ul>
  5. 5. Introduction (cont’d) <ul><li>A skill-based fuzzy logic approach was used in the design based on several considerations: </li></ul><ul><ul><li>fuzzy logic provides a convenient and efficient way of implementing expert parking rules, </li></ul></ul><ul><ul><li>the control algorithm is robust to errors in sensor data and to fluctuations in the system parameters, </li></ul></ul><ul><ul><li>the control algorithm can be easily transferred from one platform to another with few modifications, and </li></ul></ul><ul><ul><li>it allows various behaviors to be easily combined through a command fusion process. </li></ul></ul><ul><li>A three step parking algorithm was proposed and fuzzy controllers were developed for each of the steps. </li></ul>
  6. 6. Parking Space Detection <ul><li>Detected parking space </li></ul><ul><li>Defined local coordinate system </li></ul>Contour of detected obstacles
  7. 7. Parking Algorithm <ul><li>The maneuvering process has three steps: </li></ul><ul><ul><li>Step 1: reach a desired ready-to-reverse position, which is </li></ul></ul><ul><ul><ul><li>the vehicle reach an intermediate desired y position without considering the orientation angle, which is </li></ul></ul></ul><ul><ul><ul><li>the ready-to-reverse position is reached by moving forward and adjusting the orientation at the same time. Thus the desired x position and orientation are reached. </li></ul></ul></ul>
  8. 8. Parking Algorithm (cont’d) <ul><ul><li>Step 2: reverse into the parking space, </li></ul></ul><ul><ul><ul><li>first with an increasing orientation angle and then with a decreasing orientation angle </li></ul></ul></ul><ul><ul><li>Step 3: adjust the orientation by moving forward, </li></ul></ul><ul><ul><li>The 2 nd and 3 rd steps can be repeated several times to reach the desired final position. </li></ul></ul>Step 2 (1) Step 2 (2) Step 3 -2 0 2 0 1 2 3 -2 0 2 0 1 2 3 -2 0 2 0 1 2 3
  9. 9. Fuzzy Controller: Moving to a Ready-to-Reverse Position <ul><li>The FLC designed for the first substep of step 1: </li></ul><ul><ul><li>Input: heading angle difference </li></ul></ul><ul><ul><li>Output: steering angle rate </li></ul></ul><ul><ul><li>Fuzzy rules </li></ul></ul><ul><ul><li>Membership functions </li></ul></ul>N Z P P Z N x y target b  
  10. 10. Fuzzy Controller: Moving to a Ready-to-Reverse Position (cont’d) <ul><li>FLC designed for the second substep of step 1: </li></ul><ul><ul><li>Input: orientation angle </li></ul></ul><ul><ul><li>Output: steering angle rate </li></ul></ul><ul><ul><li>Fuzzy rules </li></ul></ul><ul><ul><li>Membership functions </li></ul></ul>NB NM Z PM PB PB PM Z NM NB
  11. 11. Fuzzy Controller: Backing up the Vehicle Into Maneuvering Space <ul><li>The control command is determined by the position of the vehicle relative to the parking space and the vehicle's orientation </li></ul><ul><ul><li>Three inputs: </li></ul></ul><ul><ul><li>Output: steering angle rate </li></ul></ul>Fuzzy rules NB VB PM Z NM B =P Z NB S Z VB PB PB Z B =Z Z Z S PM VB PB PB PM B =N PB PB S VB B S
  12. 12. Fuzzy Controller: Backing up the Vehicle Into Maneuvering Space(cont’d) <ul><li>Membership functions of inputs and output </li></ul><ul><li>The FLC for step 3 is the same as substep 2 of step 1. </li></ul>x a1 y d1
  13. 13. Size of the Parking Space <ul><li>The size of the parking space has significant impact on the degree of difficulty of the parallel parking maneuvering. </li></ul><ul><li>To make vehicles maneuver smoothly and safely in tight spaces, fuzzy controllers were extensively fine tuned </li></ul><ul><ul><li>both manual and genetic algorithm tuning approaches were tried for the fuzzy controllers. </li></ul></ul><ul><li>The algorithm has the ability to park vehicles in a space that is 1.4 times the length and 1.2 times the width of the vehicles. </li></ul><ul><ul><li>a tighter space compared with the spaces used in the literatures. </li></ul></ul>
  14. 14. Fine-tuning of FLC Using GAs <ul><li>Genetic algorithms (GAs) are a part of evolutionary computing. GAs search the solution space of a function through the use of simulated evolution, i.e., the survival of the fittest strategy. </li></ul><ul><li>GAs have the ability to learn effective fuzzy logic controllers. GAs were used to determine optimal membership functions and scaling factor for the second step only in the research. </li></ul><ul><li>The main design issues of the genetic fuzzy system include: </li></ul><ul><ul><li>selection of design variables (parameters to be optimized). </li></ul></ul><ul><ul><li>determination of suitable fitness function representing the controller performance. </li></ul></ul>
  15. 15. Fine-tuning of FLC Using GAs (cont’d) <ul><li>The triangular-shaped MFs can be represented by </li></ul><ul><li>The trapezoidal-shaped MFs can be represented by </li></ul><ul><li>Tuning the MFs requires the adjustment of the values of these parameters (22 overall). </li></ul><ul><li>Output scaling factor: </li></ul>
  16. 16. Tuning for a Skid-steering System <ul><li>The ATRV-Jr uses skid steering for vehicle maneuvering . </li></ul><ul><li>The fitness function was chosen as </li></ul><ul><ul><li>The 1 st and 2 nd terms consider the relative position of the AGV to the boundaries of the space. </li></ul></ul><ul><ul><li>The 3 rd term considers the orientation of the vehicle with respect to the horizontal axis. </li></ul></ul><ul><ul><li>The 4 th term is to prevent the AGV from colliding with the boundaries of the parking space. </li></ul></ul><ul><li>A GA was implemented with a population size of 20 and 100 generations. </li></ul>
  17. 17. Simulation Results <ul><li>The proposed algorithm was seen to always successfully park the vehicle from any initial position if the desired ready-to-reserve position was reached. </li></ul>
  18. 18. Experimental Implementation <ul><li>Maneuvering process of an ATRV-Jr from an initial position to the final position. </li></ul>
  19. 19. Experimental Implementation (cont’d)
  20. 20. Conclusions <ul><li>A solution to automatic parallel parking of autonomous ground vehicles by the use of fuzzy logic was developed. </li></ul><ul><li>GAs provide a systematic approach to determine the effective MFs and scaling factors for the fuzzy logic controller. </li></ul><ul><li>Both simulation and experimental implementation results illustrate the effectiveness of the parallel parking scheme to maneuver the vehicle into tight spaces. </li></ul>The views and conclusions contained in this document are those of the authors and should not be interpreted as representing the official policies, either expressed or implied, of the Army Research Laboratory or the U. S. Government.
  21. 21. Quiz Material <ul><li>Know all of the material in the Introduction including : </li></ul><ul><ul><li>The general schematic of fuzzy logic (given in class). </li></ul></ul><ul><ul><li>The reason fuzzy logic used? </li></ul></ul><ul><ul><li>The graphical explanation of why fuzzy logic tends to be robust (given in class). </li></ul></ul><ul><li>Be able to determine the degree of membership of a fuzzy variable in fuzzy sets given a graph of the membership functions. </li></ul><ul><li>Be able to read the rule bases given in the presentation. </li></ul><ul><li>Be able to give a parameterization of the triangular- and trapezoidal-shaped membership functions. </li></ul><ul><li>Be able to give a general explanation of how genetic algorithms work. </li></ul><ul><li>Be able to describe why a genetic algorithm was used in this problem. </li></ul><ul><li>Be able to give an explanation of the fitness function used for the fuzzy-genetic algorithm. </li></ul>