ronmaccms / macadThesis24

This study specifically explores Physics-Informed Neural Networks (PINNs) and Computational Fluid Dynamics (CFD) to analyze pedestrian wind comfort.
Apache License 2.0
0 stars 0 forks source link

WIP


Logo

Urban Wind Flow Modeling with PINNs

IAAC: AI 2023-24
Report Bug · Request Feature

View Research Paper

Project-GIF

About The Project

Project developed under the course IAAC: AI 2023-24 in IAAC.

Overview

This study specifically explores Physics-Informed Neural Networks (PINNs) and Computational Fluid Dynamics (CFD) to analyze pedestrian wind comfort. It aims to integrate these neural network models into a web application using Three.js and other tools. By utilizing data from OpenWeatherMap, and OpenStreetMap, the project aims to support real-time simulations and visualizations of wind flow in urban environments.

Objectives

Significance

This project aims to create an open-source platform that provides access to tools and information for analyzing urban wind flow using advanced NN models. By developing this platform, the project:

Methodology

Phases:

  1. Planning: Define the project scope, set up the repository, and outline the research goals. Collect and preprocess real-time wind data from OpenWeatherMap and building geometry from OpenStreetMap using the Overpass API.
  2. Data Integration: Integrate real-time wind data and 3D building models to represent urban environments accurately for simulations.
  3. 3D Geometry Generation: Develop 3D geometries using polygons to represent building footprints.
  4. PINN Model Development: Conduct research and testing using PyTorch. Develop and optimize the PINN model with NVIDIA’s Modulus framework to simulate wind flow dynamics in urban environments.
  5. Frontend Development: Create a web-based user interface using Vue.js to allow real-time simulations. Employ Three.js for 3D visualization and Geolib.
  6. System Integration and Testing: Integrate the frontend, backend, and neural network model.
  7. Deployment and Documentation: Deploy the application as an open-source web platform. Document the research, development process, and usage guidelines to assist future users. Plan for tutorial series and educational content to further facilitate access to the software and methodologies used in this project.

Data Sources

Equations and Models

The simulation of urban wind flow in this project is based on the Navier-Stokes equations, which govern the motion of fluid substances. To incorporate the urban geometries and building footprints into the simulations, the model defines boundary conditions derived from the 3D building data sourced from OpenStreetMap.

Physics-Informed Neural Networks (PINNs) are used to solve the Navier-Stokes equations, embedding the physical laws of fluid dynamics into the neural network’s architecture. During training, the model minimizes the residuals of these equations alongside data-driven loss components, which should include wind data from OpenWeatherMap. The Advection-Diffusion equation is also considered for modeling the transport of environmental variables like temperature.

Inverse PINNs (I-PINNs) and Deep Neural Operators (DeepONets) are explored to optimize the model’s parameters and enhance its ability to simulate real-world scenarios accurately. These approaches allow the neural network to generalize to different urban contexts while maintaining adherence to the governing physical equations. NVIDIA Modulus and PyTorch are employed to facilitate the implementation and optimization of these models for efficient simulation testing on GPUs.

sim-gif

Frontend Development

The frontend is developed using Vue.js, with Three.js handling the 3D rendering and Geolib managing geographic calculations. This interface allows users to input geographical data and run wind flow simulations, providing immediate visual feedback.

Learning and Development with NVIDIA Modulus Sym

As part of the development process for this project, I am actively learning how to leverage NVIDIA’s modulus.sym for building PINNs. The training sessions required for developing accurate models often take up to 12 hours, and they are conducted on my GPU using a WSL. This setup allows me to fully utilize the computational power of my NVIDIA GPU while working in a Linux environment.

sink-heat

Testing Different Techniques

Throughout the research, various techniques were explored to optimize the simulation of urban wind flow:

sink-heat-2


sink-heat-2

Current Status

The platform's front and back ends are fully integrated, allowing for user input, real-time data processing, and detailed 3D visualization. The final integration for pedestrian wind assessment is still in progress, with the focus shifting to an intensive period of research and testing using Physics-Informed Neural Networks (PINNs) and Deep Neural Operators (DeepONets).

The current research involves multiple stages of testing different methodologies:

Setting Up and Using WSL for CUDA-Enabled GPU Computing

To fully utilize the NVIDIA GPU on my system, I have set up a WSL environment with Ubuntu 20.04, which allows me to run Linux-based software while taking advantage of CUDA for GPU. Below are the steps to replicate this setup:

gpu2

Step 1: Install WSL and Ubuntu 20.04

  1. Enable WSL: Open PowerShell as an Administrator and run:
  2. Install Ubuntu 20.04: If you need a specific version, such as Ubuntu 20.04
  3. Set Up WSL: Once Ubuntu is installed, open it from your Start menu and follow the on-screen instructions to complete the setup.

Step 2: Install NVIDIA CUDA Toolkit

Step 4: Install NVIDIA Modulus and Other Dependencies

Team & Contacts

Contributor

Andres Roncal

Andres

Thesis Advisor

David Andres Leon

David Andres Leon

(back to top)