Daylight predictor app.

This project aimed to develop a daylight predictor to facilitate and generate well-informed adaptive reuse projects, with a specific focus on providing sustainable design solutions for low-income housing. Los Angeles (LA) was selected as a case study due to its proactive open data initiatives and commitment to adaptive reuse.

This proposal provides a snapshot of the project, presenting architects, designers and planners with a user-friendly interface. This interface allows non-experts to participate in environmental analysis, thus enhancing the design decision-making process. It outlines a preliminary design framework suitable for planning or consultation purposes.

Project objectives and overall concept.

The workflow of the proposal can be broken down into 03 stages; Initially, building information is extracted from open data, providing geometry and relevant metadata. Part 02 looks at the reconstruction of this data into floors and rooms, a pre trained machine learning model is then used to provide a UDI prediction for these spaces. Part 03 then performs a spatial prediction based on the results of this analysis and which then gives a final layout with metadata on performance which is then visualized in a human UI interface

Design process through synthetic data creation.

Part 1: Open Data Extraction

Part 1 involves the handling of the users desired address; user input is translated to a geo-located point using google maps API. Initially querying the Google street view API and use Image recognition to return a window to wall ratio but this was dropped due to inconsistencies in the output. The point is subsequently converted to a OSM bounding box and processed through the Grasshopper plugin: Urbano, using the overpass API. The returned data provides building geometry and metadata which is used to generate 3D information and levels which can then be used in the later stages

City data and candidate buildings for Adaptive reuse

Part 2: Data Analysis and Machine Learning

Synthetic data generation steps and machine learning.
Overall features.
Machine learning on simulated data: Revised data.
Machine learning on simulated data: Data distribution.
Model training: Deep learning.
Model training: Deep learning approach
Model Training: Case study building location.
Model training: Actual vs. predicted.

Part 3: Geometry Reconstruction and Spatial Layout

The third part of the project consisted of generating possible distributions of the building’s spaces. Each floor of the total building volume was subdivided into smaller, more manageable sections as directed by the users, which facilitated further analysis and possible configurations of the spaces, as detailed in the slide below.

Following the subdivision of each floor into partitions, specific uses were assigned to the space based on criteria such as UDI values, floor area and floor level. This process involved categorizing each room by assigning ranges to their respective values.

The resulting diagram depicted the building volumes with color-coded rooms designated for various uses, such as living units, one-, two-, and three-bedroom units, and other support areas typical of housing projects. This representation provided a suggested layout for each space.

Spatial partitions.


The project included a detailed deployment strategy for its machine learning model, covering a structured workflow from initial development to final deployment of the application. A Python-based machine learning model was developed and trained using Colab. The model files were integrated into a Flask application hosted in Visual Studio Code. Subsequently, the Flask server was connected to Hops within Grasshopper, which allowed visualization of the UDI predictions. Several Grasshopper plugins, such as Urbano and Climate Studio, were used to validate the data. Finally, Human UI was used to design the user interface, facilitating user interaction with the application.

Deployment strategy.
UI Demo
Future developments and improvements.


Daylight Predictor at Food4Rhino