This is an implementation of the stabilizing REN controller presented at CDC 2022:
@INPROCEEDINGS{9992684,
author={Junnarkar, Neelay and Yin, He and Gu, Fangda and Arcak, Murat and Seiler, Peter},
booktitle={2022 IEEE 61st Conference on Decision and Control (CDC)},
title={Synthesis of Stabilizing Recurrent Equilibrium Network Controllers},
year={2022},
volume={},
number={},
pages={7449-7454},
doi={10.1109/CDC51059.2022.9992684}}
envs
: models of plants.models
: controller models and an implicit model for system identification. The controller presented in the paper is inProjREN.py
.learned_models
: parameters trained with an implicit model for system identification.activations.py
: activation functions with sector-bound information.trainers.py
: trainers modified to include the projection step.
train_controller.py
: configure and train controllers.train_implicit_network.py
: train an implicit model to learn plant dynamics.plots.py
androllout.py
: plotting files.
This code is tested with Python 3.9 and PyTorch 1.10.
- The fixed point solvers in the
deq_lib
folder and the basis for the PyTorch implicit model implementation are from the Deep Equilibrium Models repository.