Better Urban Walkability
By: Cesar Cheng
Tags: Artificial Intelligence, Data Science, Smart Cities, Urban Planning, Machine Learning

Step 1, Generate Data

We use Grasshopper 3D to generate our training data set.

The advantage of Grasshopper 3D is that it uses a visual interface and it is well adopted in architecture already. This makes it easier for non-coders to get involved.

On an average the professionals would spend close to 60–80% of the time cleaning and wrangling the data. Preprocessing would take up a lot of effort and of course time, if we used some available dataset. Since we are generating data ourselves, we can control inputs, and we could eliminate the pre-processing step.

We wrote a Grasshopper3D script which generated the number of parking spots for a given set of parameters of a polygon :

Area of the polygon Perimeter of the polygon

From Grasshopper 3D, we can create a CSV (Comma Separated Values) file that can be imported into python for model training in step 2.

Step 2, Train and Predict

The next step is to train our Machine Learning model.

A Machine Learning model is a file that has been trained to recognize hidden relationships between features in a dataset. At this step, input features (Predictor variables) are mapped to the variables we are predicting (Target variable). These learned patterns are then applied to testing data’s input features to predict the required outcomes which are the labels.

In this project we compared the results of few of the popular and explainable machine learning regression algorithms :

Linear Regression K-Nearest Neighbor Regression Random Forest Regression

We further used Stacking 4, which is a method to combine the strength of different estimators.

All the estimators, we used so far; Linear Regression, K-Nearest Neighbor Regression, and Random Forest Regression are individually fit on our training dataset, while a final estimator is trained using the stacked predictions of these base estimators, which will combine the strengths of the different regressors.

Assessing The Results

The metric we used to evaluate is R² value (proportion of the variance in the dependent variable that is predictable from the independent variable), which has the best possible score of 1.0 . For initial phase we got the R² value for:

Linear Regression : 0.98

K-Nearest Neighbor Regression 0.992

Random Forest Regression : 0.994

The Stacked Regression resulted in a high R² value of 0.997.

Visualizing the performance of the ML models we have used

Step 3, Visualize and Compare

The goal of the study is to improve the pedestrian quality of the neighborhood. Our approach involves relocating On-Street parking and removing unnecessary On-Site parking from the area of intervention.

With this in mind, we create a proposal for a walking district. In this proposal, streets that were previously occupied by cars are replaced by pedestrian friendly greenways. Furthermore, the majority of On-Site parking in the area is replaced for public spaces.

We used the Machine Learning(ML) developed in step 2, to estimate the parking capacity of 60 possible lots available for parking relocation. Next, we selected lots located within 5 min walking distance of the area where future redevelopment will take place. From these inputs, we can use Digital Blue Foam we can quickly visualize and compare different scenarios through the use of generative design.

We simulate a variety of possible urban development scenarios. For each, we calculate parking capacity and average walking distance for new developments in the study area.