2. Scope

This RFC covers:

  • The standard export structure for RS3-generated datasets
  • Mapping between RS3 simulation variables and Telemachus field groups
  • Quality control and noise injection strategies
  • Validation workflow to produce certified Telemachus-compatible datasets

It does not cover RS3’s internal physics or simulation engine, only its output interface.


3. Relationship to Other RFCs

RFCTitleDependency
RFC-0001Telemachus Core 0.2Core schema for all telemetry fields
RFC-0003Dataset Specification 0.2Dataset manifest and structure
RFC-0004Extended FieldGroups SchemaVehicle and energy fields
RFC-0007Validation FrameworkDataset validation rules
RFC-0010Synthetic Data Quality & Noise ModelsNoise and realism modeling

4. Pipeline Overview

The RS3 → Telemachus pipeline follows four sequential stages:

graph TD
  A["RS3 Simulation Engine"] --> B["RS3 Exporter"]
  B --> C["Telemachus Mapper"]
  C --> D["Validator (telemachus‑py)"]
  D --> E["Dataset Publication (Zenodo & GitHub)"]

Fallback (text-only):

RS3 Simulation Engine -> RS3 Exporter -> Telemachus Mapper -> Validator (telemachus-py) -> Dataset Publication (Zenodo/GitHub)
  1. Simulation Engine — Generates raw signals (IMU, GNSS, vehicle dynamics).
  2. Exporter — Converts simulation logs into structured CSV or Parquet files.
  3. Mapper — Translates RS3 variable names to Telemachus schema fields.
  4. Validator — Runs consistency checks and produces a dataset manifest.

5. File and Directory Structure

rs3_out/
 ├── raw/
 │    ├── imu.csv
 │    ├── gps.csv
 │    ├── vehicle.csv
 │    └── env.csv
 ├── mapped/
 │    ├── samples.csv
 │    └── dataset.json
 ├── logs/
 │    └── rs3_run.log
 └── out/
      └── 2025-10-13-v0.2/
           ├── samples.csv
           └── dataset.json

6. RS3 to Telemachus Field Mapping

RS3 FieldTelemachus FieldUnitDescription
gps_latposition.latdegLatitude
gps_lonposition.londegLongitude
speed_msspeed.mpsm/sVehicle speed
yaw_degheading.deg°Vehicle heading
accel_x_ms2accel.long_ms2m/s²Longitudinal acceleration
accel_y_ms2accel.lat_ms2m/s²Lateral acceleration
engine_rpmengine.rpmrpmEngine speed
fuel_level_pctfuel.level_pct%Remaining fuel
odometer_kmodometer.total_kmkmTotal distance traveled
battery_socenergy.battery_level_pct%Battery state of charge

Mapping files are stored under:

rs3/mappings/telemachus_v0.2.yaml

7. Dataset Generation Workflow

  1. Run RS3 simulation with configuration file:
    python -m rs3 run --config configs/urban_day.yaml --out rs3_out/
  2. Convert simulation output to Telemachus:
    python -m rs3.export.telemachus --input rs3_out/raw --output rs3_out/mapped
  3. Validate generated dataset:
    telemachus validate --dataset rs3_out/mapped --level strict
  4. Publish validated dataset:
    telemachus dataset publish --input rs3_out/mapped --to zenodo

8. Quality Control and Noise Injection

RS3 supports several noise models that improve realism:

ModelDescriptionParameter
GaussianRandom white noise added to sensor readingsσ (standard deviation)
Bias DriftSlowly varying sensor offsetdrift rate (°/s, m/s²)
QuantizationSimulates ADC quantizationresolution bits
DelaySimulated communication delaylatency (ms)

All parameters are stored in the dataset manifest under:

"simulation": {
  "noise_model": "gaussian",
  "noise_parameters": {"sigma_accel": 0.02, "sigma_gyro": 0.01}
}

9. Validation Rules

Datasets exported from RS3 must pass:

  • JSON schema validation (RFC-0003)
  • Alignment tolerance tests (RFC-0007)
  • Sampling rate consistency (10 Hz ± 0.1 Hz)
  • Metadata completeness (version, source, description, license)

If any check fails, a warning or error is raised in the validation report.


10. Example Dataset Manifest

{
  "version": "0.2",
  "schema": "https://telemachus3.github.io/telemachus-spec/schema/dataset.schema.json",
  "created_at": "2025-10-13T09:30:00Z",
  "records": 86400,
  "sampling_rate_hz": 10.0,
  "sources": ["RS3"],
  "description": "Urban driving scenario with synthetic IMU and GNSS data",
  "license": "CC-BY-4.0",
  "simulation": {
    "engine": "RS3 core2",
    "noise_model": "gaussian",
    "noise_parameters": {"sigma_accel": 0.02, "sigma_gyro": 0.01}
  },
  "contact": "sebastien.edet@telemachus.org"
}

11. Integration with Validation Tools

The RS3 pipeline integrates directly with telemachus-py:

  • Exposes CLI commands for dataset export and validation
  • Provides metadata enrichment (simulation block)
  • Supports auto-checks for monotonic timestamps and alignment

Each validated dataset includes a checksum.md5 and a VALIDATED: true tag.


12. Publication and Reproducibility

Certified datasets can be published under the Telemachus Datasets organization:

  • GitHub (telemachus3/telemachus-datasets)
  • Zenodo with DOI and version tag
  • Metadata aligned with dataset.json

Each dataset must include:

  • RS3 configuration file (configs/*.yaml)
  • Validation report (out/validation.json)
  • License and citation info (LICENSE, CITATION.cff)

13. Future Extensions

  • Multi-vehicle and traffic scenario simulation
  • Real-time RS3 → Telemachus streaming adapter
  • Integration with OpenTelemetry metrics (RFC-0014)
  • Support for RS3 plugin ecosystem (altitude, weather, fleet)
  • Hybrid datasets combining simulated + real GNSS data

14. References


15. Conclusion

This RFC defines a reproducible integration pipeline between RS3 and Telemachus, enabling the automatic generation of validated, standard-compliant datasets.
By bridging physical simulation and open data standards, it ensures that synthetic data can serve as a scientific and industrial reference for mobility and telematics research.

Réseau 1 sortants 2 entrants

Sources · Liens sortants

  • T001 — Telemachus RFCs & Specifications — White Paper

Cité par · Liens entrants

  • P003 — Telemachus: An Open Pivot Specification for Synthetic and Real Mobility Data
  • T001 — Telemachus RFCs & Specifications — White Paper