Field Manual & Resources
Competition
guide.
Everything you need to build, test, and submit your autonomous system for Beyond the Dunes: starter repositories, datasets, interface contracts, and evaluation rules in one place.
Official Codebase & Repositories
Starter Kit & Downloads
Clone the starter codebase and test your pipelines locally with the public practice referee.
Starter Codebase & ROS 2 Workspace
Official baseline repository. Includes ROS 2 Jazzy workspace stubs, Gazebo Harmonic launch files, UGV chassis definition, and template controller nodes.
DEM Dataset & Augmentation Pipeline
Preprocessed 400×400m OpenTopography desert elevation maps, training clue generator, and noise augmentation scripts.
Jolt PRNG Compatibility Suite
Public verification test vectors for Java 48-bit LCG nextInt(3) and 32-bit signed overflow compatibility checking.
Mission Architecture
Three-Level Progression
A run consists of 5 sequential checkpoints followed by final extraction. A checkpoint clue is released only after the current checkpoint is verified.
Level 1: First Checkpoint
Receive the 400×400m global DEM and a corrupted 30×30m patch clue. Estimate coordinates, navigate through dunes, align with target ArUco beacon, decode exposed visual bars B₂ and B₅, and submit for referee acknowledgement.
Level 2: Multi-Checkpoint Expedition
Checkpoints 2 through 5 repeat the full DEM → navigation → beacon search → jolt signature loop under increasing terrain roughness, slope variations, and obstacle occlusions. A new clue unlocks only after current ACK.
Level 3: Jolt Cracking & Extraction
Combine 5 verified visual signatures with published food level F to recover the unique master tick S_master. Submitting the bounded state unlocks extraction coordinates; UGV traverses to extraction to finish.
Participant API
ROS 2 Topic & Channel Contract
All interaction between rover and simulation occurs strictly across these standardized allowlisted channels.
| Channel | Direction | Contract & Rules |
|---|---|---|
| Robot pose | Server → Rover | Ground-truth pose (x, y, z, roll, pitch, yaw) and velocity (SLAM not required) |
| Camera stream | Server → Rover | Standardized RGB / RGB-D frames + intrinsic calibration matrix |
| Global DEM | Server → Rover | 400×400m processed elevation terrain matrix H_global at mission start |
| Checkpoint clue | Server → Rover | Noisy 30×30m fragment P̃_i + target marker ID A*_i (released sequentially) |
| Motion command | Rover → Server | Standardized geometry_msgs/Twist bounded to physical UGV limits |
| Beacon trigger | Rover → Server | Claimed target beacon ID (gated by referee ground-truth proximity and heading) |
| Jolt signature | Rover → Server | Decoded 2-bar visual signature (B₂, B₅) ∈ {+, 0, -}² (bounded attempt budget) |
| Master state | Rover → Server | Recovered integer Ŝ_master (generic success/failure response only) |
| Final goal | Server → Rover | Extraction coordinates unlocked only upon validated master tick |
Evaluation Rules
Ranking Priority
Runner Sandbox
Resource Quotas
Zero outbound network access during official runs. Submissions are hashed and runs archived via MCAP bags.
Questions from the field
FAQ
Why is robot ground-truth pose provided?
Since this is the inaugural edition, the robot’s exact pose (x, y, z, roll, pitch, yaw) is exposed so teams can focus on DEM target matching, obstacle avoidance, CV, and PRNG reverse-engineering rather than SLAM.
How is ranking decided?
Lexicographic order: (1) Highest Progression (total completed checkpoints + extraction reached), (2) Cumulative Score, (3) Completion Time. Progression strictly trumps score.
What are the runner limits?
Each submission receives a 15–18 minute worker slot with 12–15 simulated minutes max simulation time. Single dedicated GPU, 8 vCPUs, 16 GB RAM. 250 MB ZIP upload limit.
How is cheating prevented?
Isolated sandbox with zero outbound internet. Private mission seeds, true coordinates, and referee internals remain strictly server-side. Submissions have rate limits and bounded attempt budgets.