Skip to content

killingbear999/ICLSTM

Repository files navigation

Input Convex LSTM: A Convex Approach for Fast Model Predictive Control

Zihao Wang, Zhe Wu
Paper: https://arxiv.org/abs/2311.07202

Requires: Python 3.11.3, Tensorflow Keras 2.13.0, Pyipopt, Numpy, Sklearn
File description:

  • docker.pptx includes the instruction on how to install Pyipopt into Docker on your laptop.
  • CSTR_ICLSTM.ipynb and CSTR_NNs.ipynb are used to train neural networks to learn the system dynamics.
  • model26.h5, model27.h5, model28.h5, model29.h5 are trained RNN, LSTM, ICRNN, and ICLSTM respectively. You may regenerate the models using CSTR_ICLSTM.ipynb and CSTR_NNs.ipynb.
  • mpc_rnn.ipynb, mpc_lstm.ipynb, mpc_icrnn.ipynb, mpc_iclstm.ipynb are used to integrate NNs into LMPC and solve the MPC optimization problem.

FYI:

  • .ipynb files can be run on Jupyter Notebook or Google Colab.
  • Pyipopt can be installed and run on Docker. mpc_rnn.ipynb, mpc_lstm.ipynb, mpc_icrnn.ipynb, mpc_iclstm.ipynb use Pyipopt.

Citation

If you find our work relevant to your research, please cite:

@article{wang2023input,
  title={Input Convex LSTM: A Convex Approach for Fast Lyapunov-Based Model Predictive Control},
  author={Wang, Zihao and Wu, Zhe},
  journal={arXiv preprint arXiv:2311.07202},
  year={2023}
}

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published