Generating Feasible Spawn Locations for Autonomous Robot Simulations in Complex Environments

Thumbnail Image

Publication or External Link





Simulations have become one of the main methods in the development of autonomous robots. With the application of physical simulations that closely represent real-world environments, the behavior of a robot in a variety of situations can be tested in a more efficient manner than performing experiments in reality. With the implementation of ROS (Robot Operating System), the software of an autonomous system can be simulated separately without an existing robot. In order to simulate the physical environment surrounding the robot, a physics simulation has to be created through which the robot navigates and performs tasks. A commonly used platform for such simulations is Unity which provides a wide range of simulation capabilities as well as an interface for ROS.

In order to perform multi-agent simulations or simulations with varying initial locations for the robot, it is crucial to find unobstructed spawn locations to avoid undesirable situations with collisions upon start of the simulation. For this purpose, multiple methods were implemented with this research, in order to generate feasible spawn locations within complex environments. Each of the three applied methods generates a set of valid spawn positions, which can be used to design simulations with varying initial locations for the agents. To assess the performance and functionality of these approaches, the algorithms were applied to several environments varying in complexity and scale.

Overall, the implemented approaches performed very well in the applied environments, and generated mainly correctly classified locations which are suitable to spawn a robot. All approaches were tested for performance and compared in respect to their fitness to be applied to environments of varying complexity and scale. The resulting algorithms can be considered a efficient solutions to prepare simulations with multiple initial locations for robots and other test objects.