Skip to content

j-friedrich/neuralOFC

Repository files navigation

Neural Optimal Feedback Control

This repository is the official implementation of Neural optimal feedback control with local learning rules, which has been published as part of Advances in Neural Information Processing Systems 35 (NeurIPS 2021).

Image of Bio-OFC circuit and learning rules

Requirements

The scripts to reproduce all figures of the paper require a typical numerical/scientific Python installation that includes the following

  • python
  • matplotlib
  • numpy
  • scipy

We used optuna to perform hyperparameter optimization. The optimal hyperparameters are included in the results directory, thus the following is optional

  • optuna

To install requirements (using conda) execute:

conda env create -f environment.yml
conda activate neuralOFC

Training

Pre-trained models and optimal hyperparameters are included in the results directory of this repository. To nevertheless re-train the models and perform the hyperparameter optimization, which requires optuna (conda install optuna), (re)move the files from the results directory and run these commands:

python fig3_delay.py
sh hyperopt.sh

Evaluation

To reproduce the figures, run for each script

python <name_of_fig_script.py>

The figures will be saved in the fig directory of this repository.

Pre-trained Models

The pre-trained models are included in the results directory of this repository.

About

Neural Optimal Feedback Control

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published