Feasible and Stressful Trajectory Generation for Mobile Robots

Carl Hildebrandt, Sebastian Elbaum, Nicola Bezzo, Matthew B. Dwyer - ISSTA 2020 Artifact

Paper Abstract

While executing nominal tests on mobile robots is required for their validation, such tests may overlook faults that arise under trajectories that accentuate certain aspects of the robot’s behavior. Uncovering such stressful trajectories is challenging as the input space for these systems, as they move, is extremely large, and the relation between a planned trajectory and its potential to induce stress can be subtle. To address this challenge we propose a frame- work that 1) integrates kinematic and dynamic physical models of the robot into the automated trajectory generation in order to generate valid trajectories, and 2) incorporates a parameterizable scoring model to efficiently generate physically valid yet stressful trajectories for a broad range of mobile robots. We evaluate our approach on four variants of a state-of-the-art quadrotor in a rac- ing simulator. We find that, for non-trivial length trajectories, the incorporation of the kinematic and dynamic model is crucial to generate any valid trajectory, and that the approach with the best hand-crafted scoring model and with a trained scoring model can cause on average a 55.9% and 41.3% more stress than a random selection among valid trajectories. A follow-up study shows that the approach was able to induce similar stress on a deployed commercial quadrotor, with trajectories that deviated up to 6m from the intended ones.

Reproducing Results

We provide scripts that process the raw data so you can reproduce the our results.

Reproducing Results

Raw Data

Understanding how the raw data is named, structured, and saved.

Raw Data

Tool Pipeline

How to get started with generating and executing your own tests.

Tool Pipeline

Quick Start

An easy way to evaluate the tool without any setup required

We recommend starting using this method. Start by downloading the provided virtual machine. You shouldn’t need it but just incase the virtual machines password is ‘artifact’. The virtual machine will allow you to view the raw data, reproduce our results from our raw data and generate your own tests. We recommend importing the virtual machine into VirtualBox. Once you have downloaded and setup the virtual machine, go to the Raw Data tab.

Test Generation
Stress Testing
Mobile Robots
Kinematic and Dynamic Models
Trajectories
Virtual Machine Download

Entire Tool

To get the entire tool requires powerful machine and setting up many complex dependencies

If you want to simulate the drones flying the tests, you will need to install complex dependencies described in the Tool Pipeline section. For the second case we recommend cloning the repository which contains the raw data, data processing scripts and entire tool pipeline. To clone the repository you can run:

git clone https://github.com/hildebrandt-carl/RobotTestGeneration.git

Test Generation
Stress Testing
Mobile Robots
Kinematic and Dy- namic Models
Trajectories
Github Repository