# Research

## Machine Learning for Computational Engineering

Machine learning for computational engineering is an emerging field in applied mathematics. Machine learning for computational engineering aims at using machine learning methods to solve scientific computing problems. I am particularly interested in studying the applicability of deep neural networks as function approximators for **reconstructing unknown fields or relations** within a physical system.

My perspective view on machine learning for computational engineering is that we should **use the known physical laws to the largest extent** and only substitute the unknown components with deep neural networks (or any other machine learning tools) when necessary. This requires us to **couple the deep neural networks with physical laws (typically described by partial differential equations)**. This methodology allows us to train deep neural networks with **small data** (in many science and engineering problems, we do not have sufficient data to train deep neural networks end-to-end).

Technically, it is desirable to leverage efficient numerical PDE methods (e.g., finite element methods) that have been developed over the last half century. Here comes my research: **a general framework to back-propagate gradients through both deep neural networks and numerical PDE solvers. See the ADCME page for more information**.

## Research Papers

Here are some papers that I authored (or co-authored) related to my methodology:

### Methodology

Physics Constrained Learning for Data-driven Inverse Modeling from Sparse Observations

Trust Region Method for Coupled Systems of PDE Solvers and Deep Neural Networks

The Neural Network Approach to Inverse Problems in Differential Equations

### ADCME Software

ADCME: Learning Spatially-varying Physical Fields using Deep Neural Networks

Distributed machine learning for computational engineering using MPI

### Application: Solid Mechanics

Learning constitutive relations from indirect observations using deep neural networks

Learning constitutive relations using symmetric positive definite neural networks

Learning viscoelasticity models from indirect data using deep neural networks

Learning Nonlinear Constitutive Laws Using Neural Network Models Based on Indirectly Measurable Data