Are the readings new?
Compare no sharing with naive fusion. At round 2, local and received summaries already overlap. The reported uncertainty still shrinks.
07 / Localization & mapping · Advanced
Does another message mean another measurement?
Three agents observe one target, then exchange their estimates.
Follow the evidence: a new packet can still contain an old reading.
A browser simulation with three synthetic readings of a static target. Both views show the same estimates. The drones are stationary illustrations: no flight, recorded sensor stream or live execution.
Builds on Position estimation.
Before you begin
Sharing can improve an estimate. But what happens to its reported uncertainty when the same evidence is counted again?
Explore the four questionsNaive fusion treats summaries as independent. The ledger deduplicates raw measurement IDs. CI uses a fixed weight ω = ½ with unknown cross-correlation.
Each agent uses its prior and one received neighbor packet. The target truth and analytical error covariance belong only to the evaluator.
A1 → A2 → A3 → A1. Packets carry the previous round's state. No delays or retries; one link may drop packets or return at round 5.
One independent Gaussian reading per agent at round 0, σ = 0.8 m per axis. No further observations, robot motion, radio physics or distributed processes.
Two distinct comparisons: changing the method changes fusion and packet contents; changing the schedule changes message delivery. CI is conservative here, but does not identify duplicates or repair a biased input model.
01 / Try it
A1 estimate / circleA2 estimate / diamondA3 estimate / square✛ T / evaluator truth
Markers are estimates of T, not moving robots. Trails show estimate revisions. Contours have 2σ axes from reported covariance, not a 95% joint coverage guarantee.
Agent information / latest update
| Original ID | Reading (x, y) | Variance / axis |
|---|
Evaluator only / trace the originals
━━ Expected trace┄ Reported trace
Expected covariance follows the weights on the three original independent errors across hypothetical sensor draws. It is not the squared error of this one seed. The agents do not receive these evaluator weights.
Estimates / evaluator comparison
| Agent | Estimated x | Estimated y | Reported trace | Actual error | Expected trace | Unique originals | Expected / reported |
|---|
Traffic counters count simulated packets and delivered estimate/measurement records, not bytes or measured network bandwidth. A ledger sends all its unique raw records; a summary sends one mean/covariance record.
02 / Four things to try
Keep the readings. Change how they are shared and combined.
Compare no sharing with naive fusion. At round 2, local and received summaries already overlap. The reported uncertainty still shrinks.
The ledger sends original readings and their IDs. By round 2 on the intact ring, every agent has all three. Repeated records add nothing.
Fixed-half CI keeps a conservative covariance here without tracking IDs. On the intact ring its means match naive fusion, while its reported uncertainty stays wider.
Cut A3 → A1, then try a ledger with the link restored at round 5. Watch which originals each agent knows. Dropped packets are never queued.
Every case starts paused with seed 1 and the same three original readings. There are no later sensor observations. Changing the method changes both the fusion rule and the packet contents.
Fixed references use seed 1. The repeated set uses the same seeds 1–100 in every configuration: no sharing on the ring, then each fusion method on ring/cut/recovery. Every result is at round 12. Tables do not change the active run.
| Method / schedule | Mean squared error | Reported trace | Expected trace | Max ratio | Delivered records |
|---|
| Method / schedule | Mean squared error | Reported trace | Expected trace | Mean NEES | Max ratio |
|---|
03 / Go deeper
At round 2, naive fusion counts overlapping evidence as independent. The evaluator can trace the originals and calculate how much uncertainty the estimate actually has under this sensor model.
The expected error variance is 1.5× the reported value. Trace adds the x and y variances; it is not the measured error of a single seed.
Each summary contains a mean m and variance P for each axis. Information is inverse variance, P⁻¹. Adding information is justified for independent errors. A summary received from a neighbor may already contain evidence used by the recipient.
P⁺ = (Pₐ⁻¹ + Pᵦ⁻¹)⁻¹
m⁺ = P⁺(Pₐ⁻¹mₐ + Pᵦ⁻¹mᵦ)
P⁺ = (ωPₐ⁻¹ + (1 − ω)Pᵦ⁻¹)⁻¹
m⁺ = P⁺(ωPₐ⁻¹mₐ + (1 − ω)Pᵦ⁻¹mᵦ)
Merge raw records by their original IDs. For n unique readings, m is their arithmetic mean and P = 0.64/n m² per axis. This matches centralized fusion of those independent readings; later duplicates leave it unchanged.
This lesson fixes ω at ½; it does not optimize the weight. Equal input P stays at 0.64 m² per axis. On the intact ring, CI and naive fusion have identical means but very different covariance claims.
Track m = a₁z₁ + a₂z₂ + a₃z₃ with a₁+a₂+a₃=1. Independent original errors give actual expected variance 0.64(a₁²+a₂²+a₃²) per axis. These coefficients never enter agent updates.
The target is static and all agents already share a coordinate frame. There is no data association, outlier rejection, correlated original sensing, self-localization, SLAM, CI weight optimization or motion planning.
Original CI method: Julier & Uhlmann (1997), A non-divergent estimation algorithm in the presence of unknown correlations ↗. Accessible equations and shared-information discussion: Noack et al. (2017), Decentralized data fusion with inverse covariance intersection ↗, equations 9–10 and section 3.2. This workshop implements CI, not that paper's inverse covariance intersection method.
Unique IDs prevent duplicate raw readings; they do not make correlated readings independent. CI relies on consistent input covariances and does not repair unmodeled bias. The displayed 2σ contours are neither safety boundaries nor a demonstrated 95% joint coverage region.
Keep the thread · Advanced
Continue the perception path with two moving robots. Explore why their position estimates become correlated, and what a joint filter retains.