Nearest Neighborhood Search in Motion Planning

14
Nearest Neighborhood Search in Motion Planning Lakshmi Reddy B Advisor: Nancy M. Amato Parasol lab Department of Computer Science Texas A&M University http://parasol.tamu.edu/

description

Nearest Neighborhood Search in Motion Planning. Lakshmi Reddy B Advisor: Nancy M. Amato Parasol lab Department of Computer Science Texas A&M University http://parasol.tamu.edu/. Motion Planning. Motion Planning Problem:. - PowerPoint PPT Presentation

Transcript of Nearest Neighborhood Search in Motion Planning

Page 1: Nearest Neighborhood Search in Motion Planning

Nearest Neighborhood Search in Motion Planning

Lakshmi Reddy B Advisor: Nancy M. Amato

Parasol labDepartment of Computer Science Texas A&M University http://parasol.tamu.edu/

Page 2: Nearest Neighborhood Search in Motion Planning

Motion Planning

Motion Planning Problem: Motion planning problem can be defined as finding a collisionfree path between a start and goal configurations of a robot ina given C-space with obstacles lying in the C-space.Major steps in Motion Planning:

1. Node generation: Node-generator randomly generates 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.

Page 3: Nearest Neighborhood Search in Motion Planning

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.

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.

Page 4: Nearest Neighborhood Search in Motion Planning

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

Page 5: Nearest Neighborhood Search in Motion Planning

Choosing K and N

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 environment as Node-generator generates approximately 5 times the nodes stored in the Road-map.

Hook and its Environment Start and Goal Configurations of the Hook

Maze and its Environment

Start and GoalConfiguratons

Page 6: Nearest Neighborhood Search in Motion Planning

HookParameters 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=200Start configuration:(0,0,120, 0,0,0)Goal position:(0,0,-280, 0,0,0)Node generation method: BasicPRMNeighborhood Finder: Brute-Force, CGAL, MPNN

Local Planner: Straight Line and Rotate AT S.Distance Metric: scaledEuclideanCollision Detection: RAPIDPosition resolution= 5.5Orientation resolution= 0.05Epsilon= 0.0Nodes: 1000, 2000, 5000, 10000, 15000 and 20000K closest: 1, 2, 4, 8, 16, 32, 64 and 128

Page 7: Nearest Neighborhood Search in Motion Planning

MazeParameters 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=11Start position:(0,0,15, 0,0,0)Goal position:(0,0,-15, 0,0,0)Node generation method: BasicPRMNeighborhood Finder: Brute-Force, CGAL, MPNN

Local Planner: Straight Line and Rotate AT SDistance Metric: scaledEuclideanCollision Detection: RAPIDPosition resolution= 0.12Orientation resolution= 0.05Epsilon= 0.0Nodes(N ): 1000, 2000, 5000, 10000, 15000 and 20000K closest: 1, 2, 4, 8, 16, 32, 64 and 128

Page 8: Nearest Neighborhood Search in Motion Planning

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.

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.

Page 9: Nearest Neighborhood Search in Motion Planning

Choosing ε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_SStart position:(0,0,9, 0,0,0), Goal position:(0,0,-9, 0,0,0) Distance Metric: scaledEuclideanPosition 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: 8Orientation 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.

Least Cluttered Medium Cluttered Most Cluttered

Page 10: Nearest Neighborhood Search in Motion Planning

Choosing ε:

ε doesn't affect Brute-Force at all and Total-time will decrease for CGAL and MPNN as we increase ε.For higher values of ε, total-time tends to be constant for both CGAL and MPNN.For CGAL, if ε > 0.8, the decrease in total-time is too low and graph looks almost constant.For MPNN, if ε > 1.6, the decrease in total-time is too low and negligible.

Page 11: Nearest Neighborhood Search in Motion Planning

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.

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)

Speed-up plot for CGAL and MPNN

Page 12: Nearest Neighborhood Search in Motion Planning

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.

CGAL is the fastest NF followed by MPNN and then followed by Brute-Force. Since CGAL is exact NF it is more reliable than the others.

CGAL is the fastest NF followed by MPNN and then followed by Brute-Force. Since Brute-Force is exact NF it is more reliable than others

Page 13: Nearest Neighborhood Search in Motion Planning

ConclusionsAfter 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 findnearest neighbors in a given C-space with out loosing reliability and quality of the Road-map.

A comparative study and analysis of different 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)

Page 14: Nearest Neighborhood Search in Motion Planning

Thank you