AquaWAM: A Dynamics-aware World Action Model for Underwater Embodied Agents
Organizations: Shandong University (sdu.edu.cn) · Beijing Institute of Technology (bit.edu.cn)
Abstract
World Action Models (WAMs) are becoming increasingly important and useful for embodied intelligence, as they enable robots to anticipate the consequences of candidate actions before interacting with the physical environment. However, underwater robots are usually subject to passive dynamics, such as inertia, buoyancy, hydrodynamic drag, and persistent drift, which can continue to affect the vehicle even after an action is completed. Existing WAMs, which primarily predict action-conditioned visual observations, are not explicitly designed to capture such passive motion dynamics. In this paper, we present AquaWAM, the first World Action Model designed for underwater embodied agents. Instead of predicting future images, AquaWAM models both action-conditioned and passive physical dynamics, including the thruster dead band, the inertial glide that outlasts each command, and ambient currents. Specifically, it senses through the DVL, IMU, pressure sensor and joint encoders, while cameras supply only semantics for understanding goals and target pose. By modeling compact navigation states rather than high-dimensional visual observations, AquaWAM substantially reduces the model size and computational cost compared with conventional WAMs. Experimentally, AquaWAM achieves a 72.6% task success rate across 20 underwater tasks on the USIM benchmark, outperforming existing methods while making action decisions 2.7x faster than U0 on an NVIDIA Jetson AGX Orin. Our model also remains effective when some onboard sensor measurements are unavailable. For example, without DVL velocity measurements, our method still achieves a 61.6% success rate, compared with 39.4% for U0.
Figures & tables
| Model | Navigation | Grasping | Transporting | Tracking | Overall | |||
|---|---|---|---|---|---|---|---|---|
| Succ. | SPL | Succ. | ASD (s) | Succ. | SSR | Succ. | SR (succ./trials) | |
| OpenVLA | 50/160 | 0.71 0.19 | 0/480 | – | 0/40 | 0.0% | 0/20 | 7.1% (50/700) |
| 58/160 | 0.59 0.19 | 1/480 | 87.3 | 0/40 | 0.0% | 0/20 | 8.4% (59/700) | |
| GR00T N1.5 | 122/160 | 0.78 0.23 | 140/480 | 102.2 | 10/40 | 32.5% | 4/20 | 39.4% (276/700) |
| X-VLA | 85/160 | 0.64 0.24 | 4/480 | 63.5 | 0/40 | 0.0% | 1/20 | 12.9% (90/700) |
| SmolVLA | 74/160 | 0.64 0.25 | 7/480 | 94.7 | 0/40 | 5.0% | 1/20 | 11.7% (82/700) |
| Perturbed world | U0 | AquaWAM | Stricter judge | U0 | AquaWAM |
|---|---|---|---|---|---|
| Start heading rotated 90–180 ∘ | 52/80 | 63/80 | Goto, all waypoints within 1.0 m | 53/80 | 61/80 |
| Goto endpoint within 0.5 m, not 1 m | 26/40 | 35/40 | Goto, all waypoints within 0.5 m | 44/80 | 44/80 |
| Thruster 3 at 50 %, seen in play | 3/40 | 30/40 | Goto, 0.5 m waypoints, DVL loss | 28/80 | 45/80 |
| Thruster 1 at 50 %, unseen | 4/40 | 21/40 | Goto, all waypoints within 0.25 m | 25/80 | 24/80 |
| Thruster 1 at 0 %, unseen | 1/40 | 4/40 | Inspect, 1 m ball, 90 % coverage | 36/40 | 39/40 |
| Turbid water, Jerlov 0.50 | 1/20 | 9/20 | Inspect, same judge, DVL loss | 7/40 | 39/40 |
| Model | Navigation | Grasping | Transporting | Tracking | Overall | |||
| Succ. | SPL | Succ. | ASD (s) | Succ. | SSR | Succ. | SR (succ./trials) | |
| AquaWAM | 151/160 | 0.84 0.21 | 314/480 | 62.9 | 23/40 | 65.0% | 20/20 | 72.6% (508/700) |
| w/o imagination | 127/160 | 0.69 0.22 | 79/480 | 93.7 | 3/40 | 17.8% | 14/20 | 31.9% (223/700) |
| w/o play data | 81/160 | 0.53 0.24 | 138/480 | 97.3 | 7/40 | 26.3% | 13/20 | 34.1% (239/700) |
| w/o disturbance token | 89/160 | 0.59 0.23 | 193/480 | 81.7 | 11/40 | 41.7% | 12/20 | 43.6% (305/700) |
| AquaWAM as DVL | 150/160 | 0.82 0.21 | 262/480 | 65.8 | 3/40 | 67.5% | 16/20 | 61.6% (431/700) |
Appendix figures & tables9 assets
Supplementary material from the paper’s appendix.
Appendix
| Channels | Dim. | Sensor |
| Vehicle (19) | ||
| body velocity | 3 | DVL |
| angular rate | 3 | IMU |
| linear acceleration | 3 | IMU |
| depth, altitude | 2 | pressure, DVL |
| last thruster command | 8 | own output |
| Task | n | Task | n |
| Navigation | |||
| goto charge station | 40 | scan ship modern | 20 |
| goto water tower | 40 | scan ship ancient | 20 |
| inspect pipeline pool | 20 | inspect pipeline sea | 20 |
| Grasping | |||
| pick pipe0 shallow | 40 | pick pipe1 shallow | 40 |
| Task | Full | Dropout | Task | Full | Dropout |
|---|---|---|---|---|---|
| goto charge station | 40/40 | 40/40 | scan ship modern | 19/20 | 20/20 |
| goto water tower | 36/40 | 33/40 | scan ship ancient | 16/20 | 17/20 |
| inspect pipeline pool | 20/20 | 20/20 | inspect pipeline sea | 20/20 | 20/20 |
| follow boat | 20/20 | 16/20 | transfer red shallow | 23/40 | 3/40 |
| pick pipe0 shallow | 33/40 | 21/40 | pick pipe1 shallow | 33/40 | 25/40 |
| pick pipe0 factory | 28/40 | 21/40 | pick pipe1 factory | 26/40 | 25/40 |
| Model | Navigation | Grasping | Transporting | Tracking | Overall SR |
|---|---|---|---|---|---|
| U0 | 73/160 | 202/480 | 0/40 | 1/20 | 39.4% (276/700) |
| U0 + takeover | 155/160 | 181/480 | 0/40 | 12/20 | 49.7% (348/700) |
| AquaWAM | 150/160 | 262/480 | 3/40 | 16/20 | 61.6% (431/700) |
| Task | U0 | AquaWAM |
|---|---|---|
| Heading rotated 90–180 ∘ | ||
| goto charge station | 10/20 | 7/20 |
| goto water tower | 16/20 | 16/20 |
| inspect pipeline pool | 12/20 | 20/20 |
| scan ship modern | 14/20 | 20/20 |
| Goto endpoint within 0.5 m | ||
| Task | U0 | AquaWAM |
|---|---|---|
| Heading rotated 90–180 ∘ | ||
| goto charge station | 10/20 | 7/20 |
| goto water tower | 16/20 | 16/20 |
| inspect pipeline pool | 12/20 | 20/20 |
| scan ship modern | 14/20 | 20/20 |
| Goto endpoint within 0.5 m | ||
| Task | U0 | AquaWAM |
|---|---|---|
| Goto, all waypoints within 1.0 m | ||
| goto charge station | 37/40 | 39/40 |
| goto water tower | 16/40 | 22/40 |
| Goto, all waypoints within 0.5 m | ||
| goto charge station | 34/40 | 32/40 |
| goto water tower | 10/40 | 12/40 |