A Mapping Company in Software: Multi-Agent Orchestration of Geospatial Production
AG2I runs geospatial production the way a mapping company is organised — a coordinated team under one conductor, taking a project from raw data to a quality-checked, published deliverable. An orchestrator plans the work and adapts to failures; deterministic specialist agents do the compute; a verifier gates quality at every stage; a shared blackboard is the single source of truth. This reports that backbone and the production line now running on it: a real 7.43 km² dense-urban block, 1,248 images, aerotriangulated to 0.748 px and 0.080 m in three dimensions on 41 check points withheld from the solve, orthorectified on seamlines routed over classified LiDAR, and delivered byte-verified — raw imagery to checksummed delivery tiles, with no language model in the compute inner loop.
1. The problem
Continental-scale geospatial production — thousands of images, billions of points, multi-sensor, continuous QA — cannot run as a monolithic script. It must fan out across a coordinated team of specialists, with someone planning the work, someone checking it, and a clear chain of custody. That is precisely how a mapping company is organised; the contribution here is to build it in software, so the team is fast, parallel, and self-verifying.
2. The team
In the established terminology this is an orchestrator–worker multi-agent system — a hierarchical topology in which one coordinator dispatches specialist workers and a verifier gates their output — operated as an agentic organization, or synthetic workforce: each role a mapping company staffs with people is staffed instead with an agent. The mapping is direct.
| Mapping-company role | Agent role | Reasoning or compute |
|---|---|---|
| Production director / COO | Orchestrator | reasoning — plans the DAG, sets params, diagnoses failures, escalates |
| Department managers | Sub-orchestrators | reasoning — own a phase, delegate to specialists |
| Specialists (AT, LiDAR, ortho, cartography) | Worker agents | deterministic compute — the math |
| QA / QC department | Verifier agent | metric (check-point RMS, σ₀) + a reasoning pass that gates |
| Operators / manual review | Human-in-the-loop | exceptions and low-confidence cases |
| Project tracker / shared drive | Blackboard + data plane | single source of truth; data moves as handles, not payloads |
3. The one principle
LLM at the edges; deterministic compute in the core. The specialists running aerotriangulation, LiDAR, and orthorectification are deterministic math — never a language model inside a bundle-adjustment iteration. The reasoning layer (orchestrator and verifier) is where judgment lives: planning, choosing parameters per dataset, diagnosing a bad solution, and gating pass / re-run / escalate. This is the opposite of frameworks that wrap every step in an LLM, and it is what keeps the team fast, inexpensive, and reliable while remaining genuinely agentic.
4. A production line, run end to end
On the reference block the line ingests 1,248 images, verifies every exposure clock, matches 124,873 overlapping pairs in parallel into 1.28 million multi-ray tie points, and adjusts them. The bundle runs five automatic cleaning rounds, each re-solving and rejecting at a threshold derived from the previous round's own scatter — 9.4 → 4.4 → 2.8 → 2.0 px — so no operator culls blunders by hand. Surfaces and a classified point cloud follow; the classification supplies the ground and building geometry the seamline network is routed over, buildings entering as a routing cost rather than a barrier, which is why seams clear buildings over 97.2 % of 104.7 km rather than all of it — the remainder is forced by coverage. The mosaic is rendered as a pure cut, tiled, packaged, mirrored, and then proved: an md5 of every delivered file recomputed at the far end. On the reference delivery that step caught three files of the right size with the wrong bytes, which a file count, a size check and the transfer tool's own exit status had all called complete.
Two points in the line are human, and deliberately so: ground-control QC and seamline QC and editing. They are the two places a person's judgement beats a number, and the system brings the work to them — a ranked worklist, per-frame residuals, an automatic sweep that begins and ends — rather than making them hunt for it.
| Stage | Outcomeverifier-gated | Behaviour |
|---|---|---|
| Matching | 124,873 pairs | 8.7 M inliers, parallel fan-out |
| Tie network | 1.28 M tracks | 254,426 seen by five or more rays |
| Aerotriangulation | 0.748px | RMS over 2.45 M observations; 0.422 px median, worst residual 2.0 px |
| Accuracy, 41 withheld check points | 0.080m | three-dimensional, on points held out of the solve |
| Seam length clear of buildings | 97.2% | of 104.7 km, routed on classified LiDAR |
| Delivery | 827 files | 6.22 GB, every file verified at the far end |
5. Verification is first-class
Quality is not bolted on at the end. Any task can declare a verifier, and where one is declared a failing verdict does not pass: the orchestrator retries with adapted parameters or escalates to a human, and the escalation is reported rather than absorbed. On the ortho line the checks written as gates halt the build outright when a bar is missed.
| Check on the delivered mosaic | Barhalts the build | Reference block |
|---|---|---|
| Orphan cuts | ≤ 1.0% | 0.0 % |
| Staircase artefacts | ≤ 0.5% | 0.05 % |
| Tile abutment | ≤ 100px | 73 px |
| Tile radiometry | ≤ 1.0DN | 0.03 DN median |
| Dark rows at full resolution | 0 | 0 |
| Cut sharpness | ≤ 6.8% | 2.1 % of 8,067 boundaries |
The seamline network is checked before a human sees it by thirteen executable tests, of which ten refuse the build and three are measured and reported rather than enforced — a distinction we state rather than blur, because a reader who later finds a "gate" that does not stop anything is right to discount the rest.
Three refusals matter more than the passes. The aerotriangulation refuses to start unattended unless check points are configured, so its accuracy is measured rather than asserted. The build refuses to run against an unreleased or stale seamline network, so delivery tiles cannot be cut from geometry an operator has not released. The delivery refuses to report success until the far end is proved byte-identical. The team checks its own work and produces a provable accuracy report — the distinction from generic multi-agent frameworks, and the same check-point discipline behind AG2I's aerotriangulation and orthorectification case studies.
6. Status
The orchestration core — the Task Contract every module implements, the capability registry, the blackboard, and the DAG scheduler with fan-out, verifier gating, adaptive retry, and escalation — is implemented and covered by a protocol test suite. The figures on this page are no longer a demonstration: they are measured on a 7.43 km² dense-urban reference block carried from raw imagery to a verified delivery, with the production modules — OpenStereo, OpenLiDAR, OpenFeatureX and the rest — running through the same Task Contract. Machine run times are deliberately not quoted: the reference run used hardware that is not representative of production compute, and a number that cannot be generalised is worse than none. Operator time on the two human gates is measured and is being verified across the upstream stages before it is published.
OpenMultiAgent — the orchestration backbone of the AG2I suite. Contact: info@ag2i.ai.