Designing office layouts with a team of agents

AI engineering (client project) · 2024

Multi-agent systemsClaudecomputational geometry
  • Furniture hallucinations 51 → 0
  • Dimension accuracy 80% → 100%
  • Layouts generated from raw floor plans

A large Indian co-working operator wanted to stop drawing office layouts by hand. Given a floor plan, could software propose a sensible arrangement — desks, meeting rooms, circulation — that respected the real constraints of the space? The first naive attempts were a cautionary tale: the model would confidently place furniture that didn't exist, and the dimensions it worked from were wrong often enough that nothing downstream could be trusted.

Both problems came from asking one model to do everything at once. The fix was to split the work and let specialists check each other.

Proposers and checkers

Instead of a single agent, the system runs as a small team in a maker–checker pattern. One set of agents proposes — dividing the space into zones, choosing furniture, laying it out, refining coordinates. A second set does nothing but check that work — validating the subdivision, confirming each piece of furniture is real and allowed, checking compliance, catching collisions. Nothing a proposer suggests is accepted until a checker has signed off on it.

The dividing principle was simple and it held up: let the language models decide what and why, and let plain algorithms handle how and where. Choosing that a corner should be a quiet zone is a judgement call a model is good at; calculating whether two desks overlap is geometry, and geometry should never be left to a model's intuition.

Getting the numbers right

The dimensional errors traced back to how floor plans were being read. The existing parser was right only about 80% of the time — fine for a sketch, useless for a layout that has to fit real walls. Replacing it with one built for the job took dimension accuracy to 100%, which is the floor you need before any of the clever placement work means anything.

The other win came from grounding the proposers in reality rather than fine-tuning them. Feeding the agents real furniture blocks and real zone templates from the operator's own projects — as context, not training — took furniture hallucinations from 51 in a test run down to zero.

Why it worked

The lesson I carried out of this one: when AI keeps getting something wrong, the answer is usually not a bigger model or a cleverer prompt. It's drawing a sharper line between the parts that need judgement and the parts that need arithmetic — and having something check the work before it ships.

Dimension accuracy: before vs. after the rebuilt parser