Extremely related to this, which focuses more on integrating architectural design constraints:
http://www.rewdesign.ch/automated-floorplan-generation-in-ar...
https://www.researchgate.net/publication/380319243_A_hypergr...
Of course, the shape of the lot and other physical factors put general limitations on the bounds of the house, but filling the entire lot isn't usually the primary goal.
Maybe it's more useful for a renovation?
It feels to me like their approach could be used for this as well, since there's of course nothing that requires it to only be used for generating floor plans.
Necessary things to respect:
- recrangular rooms: non-straight angles are hard to work with
- windows: unless this is a plan for the underground floor
- water/waste water supply/vent shaft: for multi-floor buildings cannot be moved
- personal needs: some people need lots of storage space, some a room to play videogames, some a huge kitchen with an isle. All of that must be reflected in a good floor plan
With that said, I feel like this project might be good for less serious application like procedural game design, but is too naive for real architectural use.
We also had rules layed out graphically, and did a substitution process in the optimizations.
Neufert did help much more than Christopher Alexander.
The way I imagined it working was one Voronoi cell per room, but with a tweak where the Voronoi cells are weighted such that you can grow or shrink a Voronoi cell to fit whatever use you have for the room. (At which point it wouldn't really be a Voronoi diagram anymore, but I don't know if there's a name for this other thing. It ought to at least theoretically be possible to compute, because the way soap bubbles stack in 3 dimensions doesn't require all the soap bubbles to contain an exact quantity of air.)
You could make the case that that isn't really necessary, since you can adjust Voronoi cell size just through the strategic placement of its neighboring cells, but it seemed useful to have an extra axis of control.
The outer surfaces of the building could be given dome shapes, but it may be more aesthetically pleasing to give them the same angular surfaces as the interior walls by having "imaginary" cells bordering the outside that aren't part of the finished building but instead define its shape.
I'd imagine the building could either be 3d-printed, or it could be constructed out of flat wall panels that are made in a factory, shipped to the building site, and bolted together (or affixed some other way) at the edges.
The wall panels could also be shaped so that they form shelves or other usable surfaces out of the strange angles (especially the non-vertical walls).
Ideally you'd have some program that can endlessly generate floor plan variations based on user input and site geometry, and then lay out all the plumbing and wiring and verify that it meets structural constraints, and the whole design manufactured and assembled without any human designer in the loop at all. No two houses need ever be exactly alike, every major component manufactured on-demand from standard material inputs.
This would all be pretty hard to setup in reality, but it's how I imagine new construction in near-future science fiction cities, and eventually space habitats working. You spin up an O'Neil cylinder, and some program generates a layout to fill much of the interior with soap-bubble cities like massive mege-structure apartments, but without any repetition. Every neighborhood different than every other, maybe with some common stylistic elements to distinguish one part of town from another, but every location unique, like nature.