• Projects
  • New Things
  • Drawings
  • Instagram
  • About
Menu

Adam Heisserer

  • Projects
  • New Things
  • Drawings
  • Instagram
  • About

Climate Mapping with Machine Learning

February 4, 2018

Machine learning is being used to classify DNA sequences, recognize speech, and perform medical diagnoses. So far, all I can do with it is tell you how likely it is to rain in your corner of the country this year.

in 2017, Proving Ground released a new Machine Learning addition of LunchBox, their Grasshopper plugin, called LunchBoxML. This includes a few open source components built on the machine learning library Accord.NET. One of the simplest and most useful tools is the non-linear regression algorithm. 

Non-Linear Regression, Proving Ground.

Non-Linear Regression, Proving Ground.

Simply put, it uses a few training points to predict what the rest of the surface might look like. This lends itself perfectly to a problem I've worked on: Taking data from a few weather stations across the US to predict climate data for every site in between. There are two problems with EPW weather files. The first is that they are only available for relatively few locations, sometimes hundreds of miles apart. It's usually acceptable to use the nearest weather station, but it would be nice to have unique data for all of our building sites outside of major cities. The second problem is that EPW weather files don't include rainfall data. To make the automation of climate analysis possible, the best solution would be to enter the latitude and longitude of a site, and then let the algorithm predict the weather data based on an EPW library, and the rainfall data based on another rainfall library.

I started with a relatively small rainfall library. I have monthly rainfall averages for 26 different cities in an Excel spreadsheet, each of which have a longitude and latitude.

rr2.jpg

For these visualizations, I'm looking at the annual total rainfall, from 8 inches in Phoenix, to 67 inches in Pensacola.

rr3.jpg

The Grasshopper script reads the Excel library (on the left) and gets plugged into the non-linear regression algorithm (on the right). The rest of the components are for displaying the tags and results.

v4.jpg

Now it's time to fine tune the Sigma value, the degree of the prediction curve. This is one of the inputs into the regression function. A low Sigma value will cause the effect of each data point to "decay" too quickly and not affect it's surrounding test points.

rr5.jpg

A high Sigma value decays too slowly and smooths out the test surface too much.

rr6.jpg

Somewhere in the middle, it starts to look like a reasonable model.

This model will benefit a lot from more data points. Increasing the library from 26 cities to a few hundred will make a much finer resolution model. This is especially important for the western US. Whereas the eastern US is much more predictable, the west has more extreme topography that creates more locally unique micro-climates. Now, it's a simple matter of adding more data points to the library, and it will begin to look much more like the map below.

Spatial Climate Analysis Service, Oregon State University

Spatial Climate Analysis Service, Oregon State University

 
Tags Climate, rainfall, map, machine learning, proving ground, grasshopper
Comment

Latest

New Things
A dimensional model of emotion based on Principal Component Analysis
about a month ago
Co-Authorship with AI
about a year ago
Graphing Multiple Moving Averages with Python
about 2 years ago
Image to Image Translation with Stable Diffusion
Image to Image Translation with Stable Diffusion
about 2 years ago
StyleGAN2 + CLIP Guided Diffusion
StyleGAN2 + CLIP Guided Diffusion
about 3 years ago
Music Blocks
Music Blocks
about 3 years ago
Analyzing Architectural Drawings with Hough Transform
Analyzing Architectural Drawings with Hough Transform
about 4 years ago
Using a Rhino Environment to Train a Surface-Normal Prediction Model in Pix2PixHD
Using a Rhino Environment to Train a Surface-Normal Prediction Model in Pix2PixHD
about 4 years ago
StyleGAN "Notebook"
StyleGAN "Notebook"
about 4 years ago
Play Pavilion at Margaret Hance Park
about 4 years ago
Moving Average - Grasshopper Component
Moving Average - Grasshopper Component
about 4 years ago
5 Years of Shirts
5 Years of Shirts
about 4 years ago
Pseudo Non-Linear Regression in Grasshopper
Pseudo Non-Linear Regression in Grasshopper
about 4 years ago
City Roses - Graphic Tool for Visualizing Emotions
City Roses - Graphic Tool for Visualizing Emotions
about 4 years ago
Data-Driven Classification of Feelings
Data-Driven Classification of Feelings
about 4 years ago
Automated Climate Graphics with Grasshopper
Automated Climate Graphics with Grasshopper
about 4 years ago
Optimization Algorithms (Opossum) for Daylight Modeling
Optimization Algorithms (Opossum) for Daylight Modeling
about 5 years ago
Mobile Meshes - Drawing with Photogrammetry
Mobile Meshes - Drawing with Photogrammetry
about 5 years ago
Biometric Mapping III
Biometric Mapping III
about 7 years ago
Constructed Language in Grasshopper
Constructed Language in Grasshopper
about 7 years ago


Powered by Squarespace