Real-world dual-robot implementation of TopoFocus. An RTX 4090 Hub builds the shared semantic map and coordinates VLM-selected goals; both robots plan, control and stop locally.
| Role | Compute | Platform and sensing | Primary runtime |
|---|---|---|---|
| GPU Hub | Intel Core i9-14900K, 64 GB RAM, NVIDIA GeForce RTX 4090 | ASUS workstation, Ubuntu 22.04 | Semantics, fusion and VLM coordination |
| Robot 0 | NVIDIA Jetson Orin NX, JetPack 6.2.1 | Unitree Go2 + Intel RealSense D435i | TinyNav + guarded Unitree control |
| Robot 1 | ASUS NUC 12 Pro NUC12WSK-B, Core i7-1260P, 16 GB RAM | Wheeled chassis + Manifold Tech Odin1 | Odin, TinyNav + guarded WATER control |
The Hub fuses online maps and applies the source-compatible A–D VLM decision cascade. Each robot routes an expiring goal with known-free A*, then follows a TinyNav local trajectory behind independent fail-closed safety checks.
Use the same Git revision on every host.
git clone https://github.com/AlanZhu2006/topofocus_realworld.git cd topofocus_realworld python3 hub/tools/verify_public_baseline.py --workspace .
Checks the public file and deployment contracts only; it installs nothing and does not connect to a robot.
bash hub/scripts/bootstrap_gpu_hub_cleanroom.sh bash hub/scripts/bootstrap_gpu_hub_cleanroom.sh \ --apply --fetch-models --accept-model-licenses
The first command previews the plan. The second installs the locked runtime, pinned model artifacts and validation stack.
bash hub/robot_overlay/bootstrap_robot0_cleanroom.sh bash hub/robot_overlay/bootstrap_robot0_cleanroom.sh --apply bash hub/robot_overlay/configure_go2_network.sh bash hub/robot_overlay/configure_go2_network.sh --apply
Commands without --apply preview their plans. The applied commands install
the locked Jetson runtime and dedicated Go2 network configuration without
starting motion.
Full reproduction guide · Robot 0 clean-room deployment · Supervised workflow · Documentation index
Shared cross-robot calibration using a circle-grid board
Both stationary robots observe the same ×ばつ10 circle-grid board to register their local odometry in one shared frame. A moved-board holdout independently validates the fitted transform before use.
Note: Glass, mirrors, low-texture surfaces and extreme lighting can degrade depth sensing and localization; adjust the viewing direction or use another scene, then revalidate tracking before a run.
| Scene | Target | Navigation setting |
|---|---|---|
| Scene 01 | Chair | Short-range navigation |
| Scene 02 | Plant | Medium-range navigation |
| Scene 03 | Plant | Long-range cooperative exploration |
| Scene 04 | Plant | Cooperative exploration |
The short-range setting starts both robots from the same lab area and targets a nearby white chair. All five formal experiments succeeded.
| Trials | Success | SR | Mean source-compatible SPL | Mean Standard SPL |
|---|---|---|---|---|
5 |
5 |
1.0 |
0.726088 |
0.780993 |
Standard SPL uses the independently measured shortest feasible path
L≈3.25 m; source-compatible SPL uses the arriving robot's start-to-arrival
displacement D as a source-compatible reference.
Experiment 1 explored semantic map and robot trajectories
Third view
Formal 01 rollout
Dashboard
Formal 01 dashboard
Robot 0 explores a frontier first, then switches to the chair semantic region and auto-ARRIVED; Robot 1 advances along an independent frontier and HOLDs in sync.
Third view · Dashboard Formal 02 · SUCCESS
Third view
Formal 02 rollout
Dashboard
Formal 02 dashboard
Robot 0 finishes frontier exploration and enters the chair semantic region, auto-ARRIVED; Robot 1 is held near-stationary by the coordinator.
Third view · Dashboard
Third view
Formal 03 rollout
Dashboard
Formal 03 dashboard
Robot 0 completes an initial round of frontier exploration; Robot 1 relays exploration and enters the chair's 0.5 m success region, confirmed on arrival by the operator.
Third view · Dashboard Formal 04 · SUCCESS
Third view
Formal 04 rollout
Dashboard
Formal 04 dashboard
Both robots explore in alternating parallel rounds; Robot 1 switches to the chair semantic region and auto-ARRIVED, while Robot 0 finishes its independent frontier and HOLDs in sync.
Third view · Dashboard
Third view
Formal 05 rollout
Dashboard
Formal 05 dashboard
Robot 0 finishes frontier exploration and continuously navigates to the chair, auto-ARRIVED; Robot 1 HOLDs under route coordination.
Third view · Dashboard
| Run | Exploration rounds | Arriving robot | Actual path P |
Source-compatible SPL | Standard SPL |
|---|---|---|---|---|---|
| Formal 01 | 2 |
Robot 0 | 3.850792 m |
0.628399 |
0.843982 |
| Formal 02 | 2 |
Robot 0 | 2.760377 m |
0.892911 |
1.000000 |
| Formal 03 | 3 |
Robot 1 | 4.048842 m |
0.864048 |
0.802699 |
| Formal 04 | 4 |
Robot 1 | 3.210222 m |
0.956361 |
1.000000 |
| Formal 05 | 2 |
Robot 0 | 12.582981 m |
0.288722 |
0.258285 |
Full five-experiment archive · Machine-readable results · Media manifest · Run instructions
The medium-range setting requires both robots to explore cooperatively toward a more distant plant target.
| Trials | Success | SR | Mean source-compatible SPL | Mean Standard SPL |
|---|---|---|---|---|
5 |
3 |
0.600000 |
0.557367 |
0.531689 |
Both means count the two failures at zero contribution. Standard SPL uses
the operator-provided independently measured shortest feasible path
L≈7 m (Scene 01's 3.25 m is not reused).
Experiment 2 explored semantic map and robot trajectories
Third view
Formal 01 failure rollout
Dashboard
Formal 01 failure dashboard
Formal 01 failed during coordinated execution: one assigned frontier was rejected as locally unreachable, and the remaining semantic-navigation leg terminated before arrival.
Third view · Dashboard Formal 02 · FAILURE
Third view
Formal 02 failure rollout
Dashboard
Formal 02 failure dashboard
Robot 1 explores 13 rounds without ever finding the plant semantic region — one frontier branch was observed heading away from the target — while Robot 0 HOLDs under route coordination throughout. The run is stopped by a two-interval no-progress guard after displacement stalled below 0.05 m.
Third view · Dashboard
Third view
Formal 03 rollout
Dashboard
Formal 03 dashboard
Robot 1 explores frontiers, switches to the plant semantic region and auto-ARRIVED, confirmed by the operator; Robot 0 remains in HOLD throughout.
Third view · Dashboard Formal 04 · SUCCESS
Third view
Formal 04 rollout
Dashboard
Formal 04 dashboard
Route coordination keeps Robot 0 in HOLD while Robot 1 follows the plant semantic route and auto-ARRIVED, confirmed by the operator.
Third view · Dashboard
Third view
Formal 05 rollout
Dashboard
Formal 05 dashboard
Both robots advance concurrently where their route corridors are clear; Robot 1 completes the plant semantic route and auto-ARRIVED, confirmed by the operator.
Third view · Dashboard
| Run | Result | Exploration rounds | Robot 0 path | Robot 1 path | Source-compatible SPL | Standard SPL |
|---|---|---|---|---|---|---|
| Formal 01 | FAILURE | 4 |
6.104564 m |
1.905387 m |
0.0 |
0.0 |
| Formal 02 | FAILURE | 13 |
1.034858 m |
7.425951 m |
0.0 |
0.0 |
| Formal 03 | SUCCESS | 11 |
0.728655 m |
8.356524 m |
0.865192 |
0.837669 |
| Formal 04 | SUCCESS | 4 |
0.454227 m |
7.579081 m |
0.961379 |
0.923595 |
| Formal 05 | SUCCESS | 5 |
2.032182 m |
7.802197 m |
0.960264 |
0.897183 |
Formal 01 failure record · Formal 02 failure record · Formal 03 success record · Formal 04 record · Formal 05 record · Machine-readable results
The long-range setting retains the plant target while increasing travel distance and requiring both robots to explore and coordinate across the route.
| Trials | Success | SR | Mean source-compatible SPL | Mean Standard SPL |
|---|---|---|---|---|
5 |
3 |
0.600000 |
0.365962 |
0.546194 |
Both means count the two time-limit failures at zero contribution. Standard
SPL uses the independently measured approximate shortest feasible path
L≈14 m.
Experiment 3 explored semantic map with Robot 0 and Robot 1 trajectories
Third view
Formal 01 failure rollout
Dashboard
Formal 01 failure dashboard
Exploration reached the test-time limit before finding and reaching a verified plant target; both robot trajectories were retained.
Third view · Dashboard Formal 02 · FAILURE
Third view
Formal 02 failure rollout
Dashboard
Formal 02 failure dashboard
Exploration reached the test-time limit before finding and reaching a verified plant target; both robots finish in synchronized HOLD.
Third view · Dashboard
Third view
Formal 03 rollout
Dashboard
Formal 03 dashboard
Both robots explore long-range frontiers; Robot 1 switches to the plant semantic region and reaches the target, confirmed by the operator.
Third view · Dashboard Formal 04 · SUCCESS
Third view
Formal 04 rollout
Dashboard
Formal 04 dashboard
Robot 0 advances along an independent frontier while Robot 1 completes the plant semantic route and auto-ARRIVED, confirmed by the operator.
Third view · Dashboard
Third view
Formal 05 rollout
Dashboard
Formal 05 dashboard
Coordinated role assignment preserves Robot 0 observations while Robot 1 completes long-range exploration, switches to the plant semantic region and auto-ARRIVED, confirmed by the operator.
Third view · Dashboard
| Run | Result | Exploration rounds | Robot 0 trajectory | Robot 1 trajectory | Source-compatible SPL | Standard SPL |
|---|---|---|---|---|---|---|
| Formal 01 | FAILURE | 16 |
18.577107 m |
14.162235 m |
0.0 |
0.0 |
| Formal 02 | FAILURE | 18 |
5.754388 m |
17.902160 m |
0.0 |
0.0 |
| Formal 03 | SUCCESS | 5 |
9.037490 m |
11.606679 m |
0.689524 |
1.000000 |
| Formal 04 | SUCCESS | 6 |
9.391253 m |
13.010775 m |
0.693557 |
1.000000 |
| Formal 05 | SUCCESS | 11 |
0.006053 m |
19.152683 m |
0.446727 |
0.730968 |
Full five-experiment archive · Formal 01 failure record · Formal 02 failure record · Formal 03 success record · Formal 04 success record · Formal 05 success record · Machine-readable results · Media manifest
Five formal experiments are archived. Robot 1 reached the plant in Formal 04 and Formal 05, with Robot 0 contributing its independently allocated exploration routes.
| Recorded trials | Success | SR | Mean source-compatible SPL | Mean Standard SPL |
|---|---|---|---|---|
5 |
2 |
0.4 |
0.330311 |
0.361412 |
The source-compatible mean counts all three failures at zero contribution.
Standard SPL uses the operator-provided independently measured approximate
shortest feasible path L≈11 m; its mean also counts the three failures at
zero contribution.
Experiment 4 explored semantic map and robot trajectories
Third view
Scene 04 Formal 01 failure rollout
Dashboard
Scene 04 Formal 01 failure dashboard
Exploration ended after no remaining frontier had a safe executable allocation; no verified plant target was reached.
Third view · Dashboard Formal 02 · FAILURE
Third view
Scene 04 Formal 02 failure rollout
Dashboard
Scene 04 Formal 02 failure dashboard
Robot 1 detects the plant, but the projected semantic approach region is satisfied before physical arrival; both robots HOLD safely.
Third view · Dashboard
Third view
Scene 04 Formal 03 failure rollout
Dashboard
Scene 04 Formal 03 failure dashboard
The exploration budget is exhausted after the plant becomes visible but before either robot reaches the target region.
Third view · Dashboard Formal 04 · SUCCESS
Third view
Scene 04 Formal 04 rollout
Dashboard
Scene 04 Formal 04 dashboard
Robot 0 explores its allocated route; Robot 1 switches to the detected plant semantic region, arrives, and both robots HOLD in sync.
Third view · Dashboard
Third view
Scene 04 Formal 05 rollout
Dashboard
Scene 04 Formal 05 dashboard
Robot 0 explores its allocated routes while Robot 1 advances through the corridor, switches to the detected plant semantic region and arrives.
Third view · Dashboard
| Run | Result | Exploration rounds | Robot 0 trajectory | Robot 1 trajectory | Source-compatible SPL | Standard SPL |
|---|---|---|---|---|---|---|
| Formal 01 | FAILURE | 15 |
10.461142 m |
14.271182 m |
0.0 |
0.0 |
| Formal 02 | FAILURE | 13 |
12.313735 m |
6.858408 m |
0.0 |
0.0 |
| Formal 03 | FAILURE | 16 |
5.303672 m |
8.733911 m |
0.0 |
0.0 |
| Formal 04 | SUCCESS | 4 |
5.709166 m |
12.149176 m |
0.822180 |
0.905411 |
| Formal 05 | SUCCESS | 7 |
3.738739 m |
12.199885 m |
0.829375 |
0.901648 |
Formal 01 failure record · Formal 02 failure record · Formal 03 failure record · Formal 04 success record · Formal 05 success record · Machine-readable results