This repository provides real-world measurement data for data-driven modeling of a differential drive robot. The data sets are tailored for research on Extended Dynamic Mode Decomposition (EDMD) for control-affine systems. The repository contains data collected using two different sampling strategies. In the first strategy, arbitrary control inputs are applied to the robot, while in the second strategy predefined constant control vectors are used. For both strategies, data is provided for two different sampling times (250ms and 500ms). The robot's pose is originally recorded at a significantly higher frequency using a motion capture system. The raw measurements are then post-processed using the provided MATLAB scripts to obtain data sets suitable for learning discrete-time kinematic models of the employed mobile robot.
The resulting data sets contain predecessor and successor pose data of the robot. Each state describes the robot's position in the plane of an inertial reference frame as well as its orientation (yaw angle) with respect to the x-axis of that frame. In addition to the data sets used for model learning, the repository provides 20 reference trajectories for each sampling time. These trajectories are intended for evaluating the performance of learned models. The corresponding input trajectories are chosen such that the robot nominally follows sinusoidal-shaped paths.
The employed differential-drive robot is actuated through commanded velocity inputs that are governed by onboard motor controllers. These inputs consist of the robot's translational velocity and angular velocity. Two different sampling strategies are used to generate the data.
Sampling with arbitrary inputs
In this strategy, arbitrary control inputs are commanded and applied for 1 second. To enable the use of this data with EDMD for bilinear systems, the collected data is clustered with respect to the robot orientation. Linear models are then identified at the respective cluster points. These intermediate models are subsequently used to generate synthetic data tailored for bilinear EDMD. In particular, synthetic predecessor and successor states are generated for predefined constant control vectors. This sampling strategy mimics on-the-fly data acquisition.
Sampling with constant inputs
In the second strategy, the predefined constant control inputs are applied directly during data collection. As a result, no intermediate synthetic data generation is required, and EDMD for bilinear systems can be applied directly to obtain a data-driven surrogate model of the differential-drive robot.
The provided data sets are designed to investigate how more detailed discrete-time descriptions of nonholonomic systems can improve the quality of data-driven surrogate models. For this purpose, three different constant control vectors are used (or synthetically generated in the case of arbitrary-input sampling). While two distinct control vectors would be sufficient for applying EDMD to the differential-drive robot, the additional third control vector enables the identification of an auxiliary control-affine input that captures bilinear input effects.
Although the data sets were generated with this specific research direction in mind, they contain general measurement data that can be used for other data-driven modeling approaches.
A detailed overview of the repository structure, including directories, MATLAB processing files, visualizations (videos and figure), and the provided data sets, can be found in the Readme file.