benyamini commited on
Commit
0d313da
Β·
verified Β·
1 Parent(s): fe41fe1

Initial SHARM model card (training in progress, no weights yet)

Browse files
Files changed (1) hide show
  1. README.md +153 -0
README.md ADDED
@@ -0,0 +1,153 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ license: mit
3
+ model-index:
4
+ - name: hab3-social-rearrange-sharm
5
+ results: []
6
+ links:
7
+ - name: GitHub
8
+ url: https://github.com/bkubwimana/ivalab
9
+ tags:
10
+ - reinforcement-learning
11
+ - habitat-baselines
12
+ - habitat
13
+ - embodied-ai
14
+ - multi-agent
15
+ - social-rearrangement
16
+ - dd-ppo
17
+ - robotics
18
+ - shared-memory
19
+ - distributed-shared-memory
20
+ - recurrent-memory
21
+ - stigmergy
22
+ - communication
23
+ - physical-ai
24
+ - embodied-coordination
25
+ datasets:
26
+ - ai-habitat/hab3_episodes
27
+ ---
28
+
29
+ # Habitat 3.0 Social Rearrangement β€” SHARM (Shared Hierarchical Recurrent Memory)
30
+
31
+ > **Status: training in progress.** This card describes the architecture and
32
+ > training plan. Trained weights will be uploaded once the Stage 3/4 runs
33
+ > complete and have been evaluated on the fixed validation split.
34
+
35
+ The **Pereason + Go + Fabric + SHARM** multi-agent coordination model.
36
+ Two embodied agents (a Spot robot arm and a humanoid) cooperate to
37
+ rearrange objects across HSSD home scenes.
38
+
39
+ SHARM extends the [Fabric model](https://huggingface.co/edge-inference/hab3-social-rearrange-fabric)
40
+ with a learned, persistent, *shared* memory layer. Where Fabric
41
+ exchanges *per-step perceptual messages* between agents, SHARM gives
42
+ each agent a typed slot bank that accumulates state across an episode
43
+ and is gossiped to the partner β€” directly inspired by stigmergic
44
+ coordination (ant pheromone trails) re-cast as a learned policy module.
45
+
46
+ This work is part of the thesis *"Scalable Multi-Agent Coordination
47
+ Using a Shared-Context Architecture for Embodied Robotics"* by
48
+ Benjamin Kubwimana. SHARM is the **learned** counterpart to the
49
+ hand-coded CollabTime DSM evaluated earlier in the thesis.
50
+
51
+ ## What's in this repo
52
+
53
+ | File | Description |
54
+ |---|---|
55
+ | *(weights pending)* | Trained Stage 3 / Stage 4 SHARM checkpoints will land here once eval is complete |
56
+
57
+ ## Architecture
58
+
59
+ ```
60
+ RGB+lang ─→ SmolVLM2 (frozen, 350M) ┐
61
+ depth ────→ DepthAnythingV2 (trained, 25M) ─┴→ fused tokens (B, S, 960)
62
+ ↓
63
+ Fabric: encode 128-d msg, broadcast,
64
+ cross-attend partner msg, gated residual
65
+ ↓
66
+ SHARM: write to typed slot bank,
67
+ self-attend over slots, encode gossip,
68
+ cross-attend partner gossip
69
+ ↓
70
+ Go transformer (PPO) ─→ skill choice
71
+ ```
72
+
73
+ ### SHARM specifics
74
+
75
+ | Component | Detail |
76
+ |---|---|
77
+ | Slot bank | 8 typed slots: 4 perception + 2 task + 2 intent |
78
+ | Slot dim | 64 |
79
+ | Memory state | 520 floats per env, packed into Habitat's `recurrent_hidden_states` buffer |
80
+ | Write head | Sparse content-addressed: produces (key, content, gate) per slot, soft-routed by similarity to learned slot key embeddings |
81
+ | Decay | Stigmergic β€” multiplicative attenuation by slot age, half-life ~100 steps |
82
+ | Read | Self-attention over own slots + cross-attention over partner gossip |
83
+ | Gossip | `(K, slot_dim) β†’ (K, msg_dim=128)` encoder, decoded by partner |
84
+ | Training | Truncated BPTT through Habitat's `rnn_build_seq_info` |
85
+
86
+ ### Auxiliary losses (training-time only)
87
+
88
+ SHARM is bootstrapped with two non-PPO gradient signals; both annealed:
89
+
90
+ | Loss | What it pushes | Schedule |
91
+ |---|---|---|
92
+ | Reconstruction | Slots must encode partner's hand-coded task state (skill, holding, target) | weight 1.0 β†’ 0.0 over first 50% of training |
93
+ | Future-latent | Slots must enable predicting own pooled fused features at horizon h=4 | weight 0.5 β†’ 0.1, sustained |
94
+
95
+ The reconstruction loss serves as a teacher (so the write head learns
96
+ *what* to encode) and is released so the model can discover signals
97
+ beyond the human-designed schema.
98
+
99
+ ## Training plan
100
+
101
+ | Stage | Frames | Purpose |
102
+ |---|---|---|
103
+ | 3a (sanity) | ~5M | Verify wiring, no crashes, recon loss converges |
104
+ | 3b (full) | ~55M | Headline Stage 3 result |
105
+ | 4 (ablation) | ~30M | Drop reconstruction aux, warm-start from Stage 3 best |
106
+
107
+ Frame budget is capped at 60M per run. Total compute budget ~90M
108
+ frames across all stages.
109
+
110
+ ## Evaluation (planned)
111
+
112
+ All checkpoints will be evaluated on the same fixed 100-episode
113
+ validation split used for the thesis Table 4.1, with metrics:
114
+
115
+ - `pddl_success` (primary)
116
+ - `num_agents_collide`
117
+ - `episode_steps`
118
+
119
+ For comparison, prior work on this benchmark:
120
+
121
+ | Condition | Success | Collide | Source |
122
+ |---|---|---|---|
123
+ | Oracle baseline | 0.28 | 0.71 | Thesis Table 4.1 |
124
+ | Oracle + CollabTime (hand-coded DSM) | 0.51 | 0.48 | Thesis Table 4.1 |
125
+ | Trained RL baseline (ResNet-LSTM) | 0.15 | 0.47 | Thesis Table 4.1 |
126
+ | Trained RL + CollabTime | 0.37 | 0.32 | Thesis Table 4.1 |
127
+ | **Fabric** ([model](https://huggingface.co/edge-inference/hab3-social-rearrange-fabric)) | 0.43 | 0.16 | Thesis Table 4.1 |
128
+ | **SHARM Stage 3** | *(pending)* | *(pending)* | β€” |
129
+ | **SHARM Stage 4** | *(pending)* | *(pending)* | β€” |
130
+
131
+ ## How to use (once weights land)
132
+
133
+ Weights will load via the same Habitat-baselines harness as the Fabric
134
+ release. See the [GitHub repository](https://github.com/bkubwimana/ivalab)
135
+ for the full training and evaluation pipeline.
136
+
137
+ ```bash
138
+ git clone https://github.com/bkubwimana/ivalab.git
139
+ cd ivalab && git submodule update --init --recursive
140
+ git checkout feature/fabric-dsm # SHARM lives on this branch until merged
141
+ bash scripts/eval_trained.sh pereason_go_fabric_dsm
142
+ ```
143
+
144
+ ## Citation
145
+
146
+ ```
147
+ @thesis{kubwimana_thesis_2026,
148
+ title = {Scalable Multi-Agent Coordination Using a Shared-Context
149
+ Architecture for Embodied Robotics},
150
+ author = {Kubwimana, Benjamin},
151
+ year = {2026}
152
+ }
153
+ ```