Skip to content

Boundary Injected Graph Neural ODE with Optimal Control

Notifications You must be signed in to change notification settings

amrhssn/bignode

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Inverse Boundary Value and Optimal Control Problems on Graphs: A Neural and Numerical Synthesis

arXiv

A general setup for deterministic system identification problems on graphs with Dirichlet and Neumann boundary conditions is introduced. When control nodes are available along the boundary, we apply a discretize-then-optimize method to estimate an optimal control. A key piece in the present architecture is our boundary injected message passing neural network. This will produce more accurate predictions that are considerably more stable in proximity of the boundary. Also, a regularization technique based on graphical distance is introduced that helps with stabilizing the predictions at nodes far from the boundary.

The main contribution of this project is a Boundary Injected Message Passing Layer for a structural approach to enforce boundary values visualied as follows:

See BoundaryInjectedMessagePassingLayer in both core/bignode_no_ctrl.py and core/bignode_with_ctrl.py for details.

Setup

System requirements:

  • Python <= 3.12
  • Pip package manager or alternative

Simply run:

./setup.sh

Installation steps:

git clone https://github.com/mehdi-gital/bignode.git
cd bignode
python -m venv .venv
source .venv/bin/activate

Usage

For system identification, dataset selection, hyperparameter optimization, go to scripts/graph_sysid.py. Once set, run it using:

python scripts/graph_sysid.py

For optimal control go to scripts/graph_ocp.py, and run:

python scripts/graph_ocp.py

Demo

Below are some step by step walkthroughs with a mix of concept and code:

Paper

@misc{garrousian2024inverseboundaryvalueoptimal,
      title={Inverse Boundary Value and Optimal Control Problems on Graphs: A Neural and Numerical Synthesis}, 
      author={Mehdi Garrousian and Amirhossein Nouranizadeh},
      year={2024},
      eprint={2206.02911},
      archivePrefix={arXiv},
      primaryClass={cs.LG},
      url={https://arxiv.org/abs/2206.02911}, 
}

Contact

Feel free to reach out with any questions/comment.

  • mgarrous@alumni.uwo.ca
  • amirhossein.nouranizadeh@gmail.com

About

Boundary Injected Graph Neural ODE with Optimal Control

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Jupyter Notebook 98.0%
  • Python 2.0%