VLN Support Status
Two purposes — what we support, and where it sits in the field
This page does two jobs. Part I — Support answers which VLN methods AgentCanvas runs or wants to run: a single support matrix (shipped · in-progress · planned · wanted), then the env / tool / method machinery underneath. Part II — Landscape places those methods in the wider VLN literature — the representative and most-cited methods, and the 2025–2026 frontier — so the supported subset is legible against the whole field. Full per-era method narrative lives in the research survey VLN — Methods; this page is the status + map view.
Part I — Methods we support
1. Support matrix
Every VLN method AgentCanvas ships, is building, or wants to build. This is the single source of truth for "what we support" — the env / tool / method backing is in §2–§4, the wider field is Part II. ⭐ marks the PortBench v1 / AAS-seed set.
| Method | Env | Status | Graph / roadmap |
|---|---|---|---|
| MapGPT-MP3D ⭐ | MP3D discrete | ✅ verified | mapgpt_mp3d.json · §4.2 |
| SmartWay-CE | Habitat-CE | ✅ verified | smartway_ce.json · §4.6 |
| SmartWay-mono-CE | Habitat-CE | ✅ᵖ paper-comparable (SR 0.270 vs 0.29) | smartway_mono_ce.json · §4.6 |
| DiscussNav-MP3D ⭐ | MP3D discrete | ✓ in-progress | discussnav_mp3d.json · §4.7 · M3 |
| Three-Step Nav | Habitat-CE | ✓ verified (aligned stack, gpt-5: SR* 0.24 vs paper 0.34 @ 25 ep — compatible; official stop-gated SR 0.08, metric rulers differ; 100-ep mini scale check SR* 0.29 · OSR 0.39 = paper) | threestepnav_ce.json · §4.9 |
| NavGPT-MP3D ⭐ | MP3D discrete | ✅ verified (gpt-4 only) | navgpt_mp3d.json · §4.1 |
| NavGPT-CE | Habitat-CE | ⏳ unverified | navgpt_ce.json · §4.1 · M1 |
| Open-Nav | Habitat-CE | ⏳ unverified | opennav_habitat.json · §4.3 |
| SpatialNav-MP3D | MP3D discrete | ⏳ unverified (platform-internal) | spatialnav_mp3d.json · §4.4 |
| CMA / Seq2Seq (Straightforward) | Habitat-CE | ✅ verified (3-ep reference slice bit-identical across the 2026-06-29 refactor + 2026-07-04 nodeset split) | straightforward.json · §4.5 |
| AO-Planner ⭐ | Habitat-CE | ✓ in-progress (SR 0.10 / oracle 0.20 @20ep, noisy) | aoplanner_ce.json · §4.8 · M7 |
| InstructNav ⭐ | Habitat-CE | 🅼 planned | M8 — value-map argmax |
| CA-Nav | Habitat-CE | 🅼 planned | M9 — constraint-aware (v2) |
| AgentVLN | Habitat-CE | 🅼 planned | M10 — VLM-as-Brain 3B (v2) |
| MapGPT (metric-grid) | Habitat-CE | 🅼 planned | M2 — depth-derived map variant |
| VLN-SIG | MP3D discrete | 🅼 planned | M4 — sub-instruction grounding |
| HAMT | MP3D discrete | 🅼 planned (neural policy) | M5 |
| DUET | MP3D discrete | 🅼 planned (neural policy) | M6 |
Today's load-bearing demo set is the ✅ rows — mapgpt_mp3d, smartway_ce, smartway_mono_ce (+ navgpt_mp3d on gpt-4). The ✓ in-progress rows run end-to-end but aren't paper-comparable yet; the ⏳ unverified rows are not a code-quality verdict — most are prompt / tool-wiring / config issues or model-tier gaps (gpt-5-mini vs gpt-5-full) not yet chased down. Verified graphs live under workspace/graphs/vln/verified/, the rest under vln/unverified/ (bare-stem resolution still works via WorkspaceComponentRegistry.resolve_graph_path).
2. Environment nodesets
VLN simulators wrapped as server-mode BaseNodeSets (own subprocess + Python env).
2.1 Habitat (VLN-CE)
- File:
workspace/nodesets/env/env_habitat.py; pinned to theac-vlnceconda env (Python 3.8) by the habitat-sim 0.1.7 wheel. - Datasets: R2R-CE today; RxR-CE planned (E2).
- Env panel:
HabitatEnvPanel—set_split/set_episode/peek_episode(ADR-server-002). - Action space:
Discrete(4)— STOP / FORWARD / LEFT / RIGHT. - VRAM: actual peak in 20-worker replicated runs ~22.6 GB / 24 GB; the scheduler's 8000 MB declaration is ~3× conservative.
2.2 Matterport3D (MP3D)
- File:
workspace/nodesets/env/env_mp3d/__init__.py— MatterSim discrete panoramic navigation. - Datasets: R2R · R4R · RxR · REVERIE · CVDN / NDH — all six schemas behind one nodeset via the
dataset → split → episode_indexcascade inMP3DEnvPanel. - Action space: dynamic-cardinality discrete viewpoints (
viewpoint_idTEXT +cand_vpids_json) — unified with Habitat's once TODO #46 lands.
3. Perception & tool nodesets
Method-side nodesets that expose tools any VLN agent can wire — they don't pick a method themselves.
| Nodeset | File | Provides |
|---|---|---|
| Basic Agent | nodesets/common/basic_agent.py | Foundational toolkit — 11 nodes (action parsing, history, prompt assembly, …) |
| NavGPT MP3D Tools | nodesets/method/navgpt_mp3d_tools.py | Online BLIP-2 captioning + Faster R-CNN detection |
| RAM / SpatialBot wrappers | nodesets/model/{model_ram,vlm_spatialbot}.py | RAM (Swin-L 14M tags, ram/ram_plus variants) + SpatialBot-3B (Phi-3 VLM, depth-aware captioning) — generic FM wrappers (TODO #56 extraction, 2026-07-04) |
| Open-Nav waypoint | nodesets/method/opennav_waypoint/ | Frozen BinaryDistPredictor_TRM + ResNet50 RGB + DDPPO depth → 120×12 angle/distance with NMS |
| SAM | nodesets/model/model_sam.py | Segment Anything — spatial layout & object localisation (feeds AO-Planner M7) |
| Grounding DINO | nodesets/model/model_grounding_dino.py | Open-vocabulary detection — AO-Planner affordance grounding (reuses the detany3d env) |
| InstructBLIP | nodesets/model/model_instructblip.py | Instruction-tuned captioning — DiscussNav scene description |
| SSG | nodesets/method/ssg.py | Spatial Scene Graph — top-down render, reset, instruction-aware object query |
| Geometry | nodesets/common/geometry.py | MeasureDistance and small utilities |
4. Method nodesets
Reasoning-side nodesets implementing a specific VLN paper / family. (Status per §1.)
4.1 NavGPT — nodesets/method/navgpt.py
LLM-as-reasoning-core: action parsing, history management, output formatting. Pairs with navgpt_mp3d.json (discrete) and navgpt_ce.json (CE). NavGPT-MP3D is verified with gpt-4 — only gpt-4 yields a non-zero SR; gpt-4o over-confidently STOPs on long ReAct prompts and collapses to SR=0. NavGPT-CE remains SR=0.
4.2 MapGPT — nodesets/method/mapgpt.py ✅
ACL 2024 — linguistic topological map inside the LLM prompt + adaptive multi-step planning. First VLN method validated end-to-end on AgentCanvas. Pairs with mapgpt_mp3d.json. Use the MapGPT_72 subset (216 eps) for paper-comparable headlines; paper SR 0.477 (gpt-4v) / 0.463 (gpt-4o).
4.3 Open-Nav — nodesets/method/opennav.py
ICRA 2025 — prompts, parsers, ensemble / fusion / tie-break, history; wired to model_ram + vlm_spatialbot (via opennav__select_candidate_views) + opennav_waypoint on Habitat-CE. Pairs with opennav_habitat.json (currently SR=0; the decision chain stalls after step 1 — pre-existing, the graph was never verified).
4.4 SpatialNav — nodesets/method/spatialnav.py
MP3D discrete — 8-compass observation + SSG enrichment fork of NavGPT-MP3D. Platform-internal extension, not a paper port. ("Pre-exploration via SLAM" is in fact MP3D ground-truth .house + _semantic.ply, not SLAM.) Pairs with spatialnav_mp3d.json.
4.5 Policy CMA — nodesets/policy/policy_adapter_vlnce/ (+ env/env_adapter/)
Cross-Modal Attention VLN-CE baseline, run through the General Policy Adapter pipeline (env_adapter stages 1/5 + policy_adapter_vlnce stages 2/3/4; variant CMA_PM_DA_Aug). Hidden state on explicit hidden_in / hidden_out ports. Pairs with vln/verified/straightforward.json. The original single-node policy_cma.py port was deleted 2026-07-04 (superseded; git history keeps it).
4.6 SmartWay / SmartWay-mono — nodesets/method/smartway/ + smartway_mono/ ✅
VLN-CE waypoint-predictor family. smartway dual-frame, smartway_mono single-frame. smartway-mono SR 0.270 vs paper 0.29 after two 2026-05-16 fixes (place_id + image_labels wiring); smartway-CE author-verified 2026-06-01. Default planner LLM gpt-5-mini (needs temperature=1.0 + max_tokens=2000). Pairs with smartway_ce.json, smartway_mono_ce.json.
4.7 DiscussNav — nodesets/method/discussnav.py ✓
MP3D multi-agent discussion — 8-expert LLM fan-out → aggregator. Pairs with discussnav_mp3d.json; fitness not yet driven to a paper-comparable number. Exercises F3 parallel execution.
4.8 AO-Planner — nodesets/method/aoplanner/ ✓
AAAI 2025 — Affordances-Oriented Planning: two-VLM Visual Affordances Prompting (VAP) over SAM ground masks + projected waypoints, with a SmartWay-cloned action decider. Faithful pure-foundation-model port — the released code's supervised ETPNav TRM waypoint predictor + ZeroShotGraphMap alignment are intentionally dropped. Uses model_grounding_dino for affordance grounding. Pairs with aoplanner_ce.json; runs end-to-end — headline SR 0.10 / oracle 0.20 @20ep (noisy: gpt-5-mini is forced to temp=1.0, so run-to-run SR variance at N≤20 exceeds any tuning delta; the multi-hop controller has hit SPL 0.899 on individual episodes; paper-comparable headline needs gpt-5-full + the 216-ep MapGPT72 slice) (M7). See the AO-Planner nodeset page.
4.9 Three-Step Nav — nodesets/method/threestepnav/ ✓
Zero-shot LLM-VLN (arXiv 2604.26946) — a descendant of Open-Nav (its agent class literally is class Open_Nav), so it reuses the exact env_habitat + opennav_waypoint + RAM/SpatialBot substrate (generic model_ram / vlm_spatialbot wrappers since 2026-07-04) and adds the three method-side steps: global sub-instruction decomposition → local waypoint choice → back-check verify. Ported to byte-level fidelity over five cold audit passes (82-check upstream-import harness; waypoint path tensor-equal 6/6; perception layer aligned 2026-07-03 incl. the 1024 px render and a previously never-loaded DDPPO depth encoder). The aligned-stack gpt-5 run scores SR* 0.24 vs the paper's 0.34 at 25 ep — statistically compatible — with TL 9.25 ≈ paper 9.18; the official stop-gated SR is 0.08 because upstream's reported SR has no STOP requirement (two-ruler analysis in the nodeset page §4.1). A 100-episode gpt-5-mini scale check lands SR* 0.29 · OSR 0.39 (equal to the paper). Single-version monolith threestepnav (the Phase-2 decomposition was removed 2026-07-03); graph vln/verified/threestepnav_ce.json.
4.10 VLN-CE policy registry — nodesets/policy/policy_adapter_vlnce/
A 12-variant R2R-CE baseline registry (CMA × 7 + Seq2Seq × 5, from the VLN-CE paper's Table 1) selectable via a variant ConfigField. Upstream published only 2 checkpoints — CMA_PM_DA_Aug (SPL 0.30) and Seq2Seq_DA (SPL 0.23); the other 10 stay in the registry for topology completeness but their dropdown label carries a "(not released by paper authors)" suffix so a run fails fast with a clear missing-file reason. This registry is what §4.5 selects from.
5. Datasets, action spaces, metrics
Datasets: R2R · R4R · RxR · REVERIE · CVDN/NDH (MP3D discrete); R2R-CE shipped, RxR-CE planned (E2); VLN-CE is the continuous family. Split note: R2R val_unseen front-loads easy scans — use MapGPT_72 (216 ep) for paper-comparable headlines; NavGPT batch default 10 ep, stride=3.
Action spaces (env-specific until TODO #46): Habitat Discrete(4) (0=STOP/1=FWD/2=LEFT/3=RIGHT); MP3D dynamic-cardinality viewpoints (viewpoint_id + cand_vpids_json). Metrics: SPL (primary), SR (within 3 m), nDTW, SDTW.
Part II — Field landscape
6. Representative & most-cited
Where the supported methods (§1) sit in the wider VLN literature. Citation counts are a Semantic Scholar snapshot, 2026-06-14; Time is arXiv first-submission YY.MM; the Ours badge ties each row back to §1 status. A code link marks a method with a verified public GitHub repository (link-check snapshot 2026-06-20); no badge = no public code found, and code soon = official repo exists but code not yet released. Rows are ordered by arXiv date (oldest first). Full per-era narrative: VLN — Methods.
| Method | Time | Cites | Type | Ours |
|---|---|---|---|---|
| Speaker-Follower code | 18.06 | 617 | Pre-LLM | 📚 lit-only |
| RCM | 18.11 | 635 | Pre-LLM | 📚 lit-only |
| Self-Monitoring code | 19.01 | 315 | Pre-LLM | 📚 lit-only |
| FAST code | 19.03 | 185 | Pre-LLM | 📚 lit-only |
| EnvDrop code | 19.04 | 401 | Pre-LLM | 📚 lit-only |
| PREVALENT code | 20.02 | 362 | Pretrain | 📚 lit-only |
| VLN-BERT code | 20.04 | 277 | Pretrain | 📚 lit-only |
| Recurrent VLN-BERT code | 20.11 | 447 | Pretrain | 📚 lit-only |
| AirBERT code | 21.08 | 188 | Pretrain | 📚 lit-only |
| HAMT code | 21.10 | 375 | Graph/topo | 🅼 M5 |
| DUET code | 22.02 | 268 | Graph/topo | 🅼 M6 |
| LM-Nav code | 22.07 | 702 | ZS-LLM | 📚 lit-onlyreal-world topo env |
| NavGPT ⭐ code | 23.05 | 390 | ZS-LLM | ✅ gpt-4 only§4.1 |
| GridMM code | 23.07 | 151 | Graph/topo | 📚 lit-only |
| ScaleVLN code | 23.07 | 146 | Data-scale | 📚 lit-only |
| DiscussNav ⭐ code | 23.09 | 146 | ZS-LLM | ✓ M3§4.7 |
| NaviLLM code | 23.12 | 174 | Trained | 📚 lit-only |
| MapGPT ⭐ code | 24.01 | 128 | ZS-LLM | ✅ shipped§4.2 |
| NaVid code | 24.02 | 243 | Trained | 📚 lit-only |
| NavCoT code | 24.03 | 113 | LLM (LoRA) | 📚 lit-only |
| InstructNav ⭐ code | 24.06 | 164 | ZS-LLM | 🅼 M8 |
| AO-Planner ⭐ code | 24.07 | 72 | ZS-LLM | ✓ M7 |
| NavGPT-2 code | 24.07 | 106 | LLM | 📚 lit-only |
| Open-Nav code | 24.09 | 64 | ZS-LLM | ⏳ unverified§4.3 |
| NaVILA code | 24.12 | 200 | Trained | 📚 lit-only |
| Uni-NaVid code | 24.12 | 137 | Trained | 📚 lit-only |
| CA-Nav code | 24.12 | 44 | ZS-LLM | 🅼 M9 |
| SmartWay code | 25.03 | 22 | ZS-LLM | ✅ shipped§4.6 |
| AgentVLN code soon | 26.03 | 1 | ZS-LLM | 🅼 M10latest SOTA 67.2@3B |
Single-box trained transformers (pretraining-era, HAMT/DUET) are deliberately low-priority to port — under PortBench rules they collapse to one LLMCall/policy node. The methods we invest in are the graph-shaped LLM agents (⭐).
7. Frontier (2025–2026, zero-shot LLM)
Newest zero-shot LLM-VLN — high direction-signal, citations still accruing, none ported (📚). Sorted by arXiv date. A code link marks the few with a verified public repo (snapshot 2026-06-20); most have no public code released yet. Detail in survey §2.5.
| Method | Time | Cites | Benchmark / note |
|---|---|---|---|
| EvolveNav code | 25.06 | 1 | R2R/REVERIE/CVDN/SOON — self-improving CoT (fine-tuned) |
| MSNav | 25.08 | 6 | R2R + REVERIE — dynamic memory + Qwen-Spatial |
| Analogical Descriptions code | 25.09 | 3 | R2R — multi-perspective analogical captions (EMNLP 2025) |
| Abstract Obstacle Map | 25.09 | 4 | R2R-CE SR 41 / RxR-CE 36 — waypoint + topo/visit prompting |
| Fast-SmartWay | 25.11 | 4 | VLN-CE — panoramic-free 3-frontal-view MLLM (SmartWay successor) |
| UNeMo | 25.11 | 2 | R2R + REVERIE — multimodal world model (trained, AAAI 2026) |
| Spatial-VLN | 26.01 | 4 | VLN-CE — spatial-perception + multi-expert reasoning |
| One Agent to Guide Them All | 26.02 | 4 | R2R-CE 48.8 / RxR-CE 42.2 zero-shot SOTA — explicit world rep (Qi Wu group) |
| SFCo-Nav | 26.03 | 1 | R2R + REVERIE — slow-fast collaboration |
| HiMemVLN code | 26.03 | 4 | open-source zero-shot — hierarchical memory |
| Three-Step Nav code | 26.04 | 1 | R2R-CE + RxR-CE — global-local + back-check verify |
| P2DNav | 26.05 | 0 | R2R-CE — panorama-to-downview two-stage |