Download presentation
Presentation is loading. Please wait.
1
Lakshmikar reddy Nearest Neighborhood Search in Motion Planning Lakshmi Reddy B Xiabing Xu Nancy M. Amato lakshmikar.iiitj@gmail.com xiabing@cs.tamu.edu amato@cs.tamu.edu lakshmikar.iiitj@gmail.comxiabing@cs.tamu.eduamato@cs.tamu.edu Parasol Lab, Department of Computer Science, Texas A&M University, http://parasol.tamu.edu/ Motion Planning Problem Motion planning problem can be defined as finding a collision free path between a start and goal configurations of a robot in a given C-space with obstacles lying in the C-space. Major steps in Motion Planning 1. Node generation: Node-generator randomly generate the nodes throughout the C -space wherein each node represents the possible position of the Robot that might be attained while in motion. 2. Collision Detection: Collision detection test will filter out the collision free configurations from all the above nodes generated by node generator, and store in the road-map. e.g.: RAPID 3. Nearest neighborhood search: Neighborhood finders using various algorithms will search for possible nearest neighbors for all nodes stored in the road-map. e.g.: Brute-Force, CGAL, and MPNN 4. Connecting nodes: Nodes stored in the Road-map are connected using Local-planner. e.g.: Straight line, Rotate_AT_S. 5. Query processing: Queries are processed by connecting the initial and goal configurations to the Road-map and then finding the path in the road-map between these two connection points. Motivation PROBLEMS: 1. No consistent method exit to choose appropriate values for K, N and ε 2. Reliability and quality of the road-map is highly sensitive to the values of K, N and ε SOLUTION: After serious investigation of various environments using Brute-Force, CGAL and MPNN neighborhood finders, came up with suitable values for K, N and Epsilon in order to optimize total time taken to find nearest neighbors in a given C-space with out loosing reliability and quality of the Road-map Definitions and Background K: K denotes the maximum number of nodes that to be connected by a query node to it’s neighborhood. N: N denotes the maximum number of collision-free configurations that can be generated randomly throughout the C-space by a Node-generator. ε: ε uses to extend the proximity of the query node in order to search nearest neighbors by query node. Kd-tree: Kd-tree is a space partitioning data-structure for organizing nodes in a C-space in order to search nearest neighbors. CGAL and MPNN use Ed-tree algorithm. It searches nearest neighbors comparatively very faster than the sorting algorithms used in Brute-Force. Kd-tree can be constructed using recursive procedure by splitting the C-space with a vertical line at nodes whose depth is even and with a horizontal line at nodes whose depth is odd. A Kd-tree for a set of N points uses Θ(N ) storage and can be constructed in Θ(N logN ) time. Hook ` Choosing K and N \ Clutter Results Using Brute-Force, N=10000 and K=8 will optimize Total-time taken to find nearest neighbors, reliability and quality of Road-map. ε will not effect Brute-Force at all. Using CGAL, N=10000, K=8 and ε=0.8 will optimize Total-time taken to find nearest neighbors, reliability and quality of Road-map Using MPNN, N=10000, K=8 and ε=1.6 will optimize Total-time taken to find nearest neighbors, reliability and quality of Road-map. Conclusions After serious investigation of various environments using Brute-Force, CGAL and MPNN nearest neighborhood finders suitable values for K, N and ε were determined in order to optimize total time taken to find nearest neighbors in a given C-space with out loosing reliability and quality of the Road-map. A comparative study and analysis of di ff erent environments has been carried out and implemented on a single system (run on the same test environments and on the same Computer). 1. Operating System: Linux 2. Compiler: Emacs 3. System name: Big-Spring, consists of 96 CPUs which subdivided into 24 components where each single component called as COMPUTE. Configuration of each COMPUTE: Hardware: CPUs: 4 × 2.34 Ghz, Memory(RAM): 3.96 GB Software: Os(x86) Parameters used for Hook: Dimensions of the Hook environment:Min X= -100 and Max X=100 Min Y= -100 and Max Y=100 Min Z= -400 and Max Z=200 Start configuration:(0,0,120, 0,0,0) Goal position:(0,0,-280, 0,0,0) Node generation method: BasicPRM Neighborhood Finder: Brute-Force, CGAL, MPNN Local Planner: Straight Line and Rotate AT S. Distance Metric: scaledEuclidean Collision Detection: RAPID Position resolution= 5.5 Orientation resolution= 0.05 Epsilon= 0.0 Nodes: 1000, 2000, 5000, 10000, 15000 and 20000 K closest: 1, 2, 4, 8, 16, 32, 64 and 128 Hook and its EnvironmentStart and Goal Configurations of the Hook Plotting: Choosing K-Value – For higher values of K, MPNN may not work properly if K greater than the nodes is present in that Kd-tree. – For lower values of K, Road-map may not be efficient and might not be able to process complicated queries. – Since the dimensions of the environment are constant, for higher value of K, environment become congested and processing time increases. –A feasible value for K is 8 as it works for all values of N and for all NFs. Choosing N -Value – Since the dimensions of the environment are constant, for higher values of N, the environment may become congested and it will not yield expected results in some of the cases. This results in a waste of time and memory. – For lower values of N, nodes might not be deployed well throughout the C –space; if nodes are not deployed well then the Road-map will not be electively connected; The quality of the Road-map degrades and it is unable to process complex queries. – In case of MPNN, N should be greater than K at all Kd-trees, otherwise it will return an error without Processing the query. – From the graphs we can say that, for higher values of N, a graph looks dynamic and for lower values of N, graph looks almost static in behaviour. – From above, feasible value for N should be neither high nor low. So, feasible value for N is 10000. Reasons for choosing Hook and Maze The Node generator for Hook generates approximately 1.5 times the nodes that are stored in the Road-map and is relatively simple; on the other hand Maze is a complex enviro- nment as Node- generator generates approximately 5 times the nodes stored in the Road- map. Maze Parameters used for Maze: Dimensions of the Maze environment: Min X= -8 and Max X=7 Min Y= -16.5 and Max Y=16.5 Min Z= -9 and Max Z=11 Start position:(0,0,15, 0,0,0) Goal position:(0,0,-15, 0,0,0) Node generation method: BasicPRM Neighborhood Finder: Brute-Force, CGAL, MPNN Choosing ε requires more attention and investigation. As the range of ε value itself is very small (0 to 3), the reliability and quality of the road-map is highly sensitive to the value of ε and hence it is important to chose an appropriate ε value. So we need to investigate more environments resembling real-world domain like Clutter. Parameters used for Clutter environment: Dimensions of the Clutter environment: Min X= -5 and Max X=5 Node generation method: BasicPRM Min Y= -4.5 and Max Y=5 Neighborhood Finder:Brute-Force, CGAL, MPNN Min Z= -10 and Max Z=10 Local Planner: Straight_Line and Rotate_AT_S Start position:(0,0,9, 0,0,0), Goal position:(0,0,-9, 0,0,0) Distance Metric: scaledEuclidean Position resolution= 0.0139705, 0.12828, and 0.113559 for least Cluttered, Collision Detection: RAPID medium Cluttered, and most Cluttered environments respectively. Nodes: 10000, K closest: 8 Orientation resolution= 0.05 for all three types of Cluttered environments. Epsilon: 0.0, 0.1, 0.2, 0.4, 0.8, 1.6 and 3.2. Maze and its environment Start and Goal configurations Plotting Plotting: Observations: Epsilon doesn't effect Brute-Force at all and Total-time will decrease for CGAL and MPNN as we increase Epsilon. For higher values of Epsilon, total-time tends to be constant for both CGAL and MPNN. For CGAL, if Epsilon > 0.8, the decrease in total-time is too low and graph looks almost constant. For MPNN, if Epsilon > 1.6, the decrease in total-time is too low and negligible. T Observations: – For Brute-Force, as N increases, Total-time increases rapidly. – For CGAL, as N increases, Total-time increases logarithmically (at very – For MPNN, as N increases, Total-time increases as in CGAL but with higher low rate). rate than CGAL. – Above some K, the environment becomes congested and there is a – For higher values of N, behaviour of the graphs is Dynamic and for lower minimal e ff ect on Total-time on increasing K. values it is almost Static. So it is better to take medium values for better results. Observations: Results obtained are very much similar to that of Hook. In addition, if environment is complex then the Total-time taken to find nearest neighbors increase for all Brute-Force, CGAL, and MPNN. Least Cluttered Medium Cluttered Most Cluttered “Improving Motion-Planning Algorithms by Efficient Nearest-Neighbor Searching,” Anna Yershova,and Steven M. Lavalle, May 2006, In proc. IEEE International Conference on Robotics and Automation. “Choosing Good Distance Metrics and Local Planners for Probabilistic Road map methods,” Nancy M. Amato, O. Burchan Bayazit, Lucia K. Dale, Christopher Jones, Daniel Vallejo, in Proc. of ICRA’98 “Computational Geometry: Algorithms and applications,” M. de Berg, M. van Kreveld, M.Overmars, O. Schwarzkopf, second edition, 2000. “MSL: Motion Strategy Library,” S. M. LaValle, [Online]. Available: http://msl.cs.uiuc.edu/msl/http://msl.cs.uiuc.edu/msl/ “MPNN: Nearest Neighbor Library for MotionPlanning,” A. Yershova, 2005 [Online]. Available: http://msl.cs.uiuc.edu/~yershova/MPNN/MPNN.htmhttp://msl.cs.uiuc.edu/~yershova/ “Planning algorithms,” 2004 [Online]. Available: http://msl.cs.uiuc.edu/planning/http://msl.cs.uiuc.edu/planning/, “A randomized roadmap method for path andmanipulation planning,” N. M. Amato and Y.Wu in Proc. IEEE Int. Conf. Robot. Autom., 1996,pp. 113–120. Speed-up: The term speed-up implies, how faster the neighborhood finders CGAL and MPNN calculate its neighborhoods than the Base neighborhood Brute-Force and mathematically it is defined as Speed-up factor = (Base Total-time/NF Total-time) Neighborhood Finder(NF): Neighborhood finder in Motion Planning is used to find nearest neighbors using various search algorithms. Brute-Force, CGAL and MPNN are examples of NFs ;Brute-Force searches exact neighbors using sorting Algorithms while CGAL and MPNN searches approximate neighbors using Kd-tree algorithm. Above Figure illustrates how the splitting is done and the corresponding Binary tree Speed-up: The adjacent figure shows the higher speed of the CGAL and MPNN searches nearest neighbors When compared to the Brute-Force NF. So CGAL is the fastest NF followed by MPNN and then Brute-Force. Since Brute-Force is exact NF, it is more reliable than other NFs. Local Planner: Straight Line and Rotate AT S Distance Metric: scaledEuclidean Collision Detection: RAPID Position resolution= 0.12 Orientation resolution= 0.05 Epsilon= 0.0 Nodes(N ): 1000, 2000, 5000, 10000, 15000 and 20000 K closest: 1, 2, 4, 8, 16, 32, 64 and 128 MPNN will not work for all K especially where K greater than 8 References
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.