RANDOM ROADMAP for Win32 README ------------------------------- INFORMATION: This application can be used to generate a random roadmap for a given scene definition and a circular robot. It has two modes: - Pure Random Sampling In this case, a predetermined number of valid samples (configurations) are found by randomly sampling the entire scene and running a 'Clear' query each time to ensure the sample is not in obstacle space. - Random Subdivision Sampling In order to densely sample constrained spaces, a sliding window approach may be used. In this case, a square window is moved across the scene. At each position, the pure random sampling technique is used as defined above. EXTERNAL DEPENDENCIES: - tinyXml http://www.grinninglizard.com/tinyxmldocs/index.html - ANN win-32 binaries http://www.cs.umd.edu/~mount/ANN/ - Glut win-32 binaries https://www.opengl.org/resources/libraries/glut/ COMPILING/INSTALLATION: o Only Win-32 is supported because of the dependencies. o Simply open the project in Visual Studio project and build the solution. o The executable can be found in the Exe folder. USAGE: Command Line -h or --help Show help message -file Scene specification file -samples Number of valid samples -r Radius of robot -minx Minimum x-coordinate of search domain -miny Minimum y-coordinate of search domain -maxx Maximum x-coordinate of search domain -maxy Maximum y-coordinate of search domain -subdivisionSampling 1 for uniform subdivision sampling. 0 for pure random sampling EXAMPLES: o Examples/bottleneck.xml randomRoadmap.exe -file ../Examples/bottleneck.xml -samples 10000 -r 0.05 -minx -30 -maxx 30 -miny -30 -maxy 30 -subdivisionSampling 1 o Examples/tradeshow.xml randomRoadmap.exe -file ../Examples/tradeshow.xml -samples 10000 -r 0.05 -minx -65 -maxx 65 -miny -65 -maxy 65 -subdivisionSampling 0 TODO's: o Quad tree subdivision. o Use linked list instead of adjacency matrix. o Nearest neighbor culling. o Obstacle culling while performing link queries. o Medial axis sampling for symmetrical scenes. AUTHOR: Sahil Narang Department of Computer Science UNC Chapel Hill E-mail: sahil@cs.unc.edu http://cs.unc.edu/~sahil/