This project is a Python-based layout generation system that programmatically explores multiple building configurations within a fixed rectangular site.
Each layout is evaluated using geometric computations and conditional logic to ensure spatial validity before being visualised.
The system focuses on generation, validation, and visual verification of layout arrangements rather than manual placement.
- Fixed rectangular site with a reserved central plaza
- Two distinct building footprint types
- Automated layout generation through repeated sampling
- Validation of each configuration using spatial checks
- Visual output for comparison of multiple valid layouts
The program can generate and display more than one valid layout, allowing comparison of different spatial arrangements.
Buildings are placed algorithmically within the site bounds using a randomised generation strategy.
Each generated configuration is evaluated through a series of geometric and logical checks to determine its validity.
Layouts that violate any constraint are discarded, while valid configurations are retained and visualised.
This process allows systematic exploration of feasible layout possibilities within the defined site.
- Install Python 3
- Install required dependency:
pip install matplotlib
- Run the main python file python layout_generator.py
Visual representations of multiple valid site layouts Clear display of site boundary, plaza, and building placements Console output with basic layout statistics
Below are example layout configurations generated by the system:


