At some point in our future, it is fact that we will share our life with robots. In some cases, we are already doing this, e.g., when we use vacuum cleaner and lawn mower robots. In future, they might even support our daily lives even more and carry out tasks in various scopes, e.g., transporting packages in our factories or driving us to work as autonomous cars. Robots navigating in human-shared environments need to become "part of the crowd" smoothly, by intelligently considering usual as well as future behaviors of people and other dynamic obstacles. In such environments, generating safe and legible robot motions is still an open research question. On the one hand, this is due to the
- unpredictability of some human behaviors and
- on the other, the required computational effort to solve such a difficult problem.
Robots making decisions
In my work at Bosch Research, I contribute to the software part of the solution – by developing novel planning algorithms for the generation of robot motion considering
- geometric properties of the environment,
- perception priors – i.e., input from the perception units/sensors and
- human motion predictions.
Planning is a fundamental sub-area of artificial intelligence that aims to solve decision-making problems – i.e.,
- generating robot motion,
- how to navigate in a large area by finding a sequence of actions for a modeled system to achieve a predefined task (e.g., moving packages to a certain location).
For handling the complexity and the uncertainty of real-world applications, recent approaches combine planning techniques with machine learning ones: this is especially applicable to methods that intensively deal with perceptual priorities and human motion prediction. In robotic applications, motion planning is the area that studies the planning of robot motion.
The solution: Robot motion planning algorithms
During recent decades, several motion planning algorithms have been presented by the scientific community to solve the afore-mentioned problems. All of them use some sort of environment representation for generating robot motion. The oldest approaches adopt a grid representation of the environment, where blocked cells represent obstacles and empty ones the free space. Instead, more recent approaches use graphs (i.e., roadmaps or trees) for expressing the connectivity between free regions in our environments. All graphs and grids can be seen as an instance of a sampling process. All the motion planners that sample the possible space of where the robot can go belong to the family of sampling-based motion planning algorithms. There is a large variety of them and choosing the one that best fits our application is a tedious task, also for most expert users. These algorithms are quite complex and often require choosing subcomponents and additional heuristics.
Finding the best solution: “Bench-MR” – A benchmark for motion planning algorithms
With the goal of further improving current motion planning algorithms, together with colleagues from the University of Southern California and KTH Royal Institute of Technology in Stockholm, we recently presented "Bench-MR" – a benchmarking framework for sampling-based planning algorithms for wheeled mobile robots. The framework allows us, as well as students and academic researchers, to test their novel algorithms against a set of state-of-the-art baselines. The benchmarking suite provides a set of well-defined environments (e.g., parking scenarios, robots in warehouses) and a list of well-known metrics (e.g., path length, smoothness).
Before Bench-MR, other benchmarking tools for planning algorithms existed, but none of them completely focused on wheeled mobile robots: in particular, no benchmarking framework could natively support such a large set of wheeled mobile robots, e.g., cars, intralogistics, and service robots. With Bench-MR, we managed to provide this missing piece. During its development, we understood how difficult it was to offer a framework that could support so many different algorithms and metrics. But after several weeks of work, we finally succeeded in building a framework that can be used easily, even by non-expert users.
With the help of Bench-MR, we aim to daily improve our motion planning algorithms and to fulfill our vision to provide safe and reliable robot navigation systems in dynamic environments. Nowadays, we use similar algorithms in so many different contexts (e.g., service robotics, automated driving) at Bosch. By using Bench-MR, we intend to further improve the performance of these novel products.
What are your thoughts on this topic?
Please feel free to share them or to contact me directly.
Author: Luigi Palmieri
Luigi joined the Advanced Autonomous Systems department of Bosch Research in 2016. He obtained his PhD at the Computer Science Institute (Institut für Informatik, IIF) of the University of Freiburg, Germany, in the field of social navigation and robot motion planning. At Bosch, his research focuses on motion planning for single and multi-robot systems, human motion predictions, and hybrid systems of robot learning-planning-control.