Tenavi / benchmark_ocp

A collection of benchmark optimal feedback control problems
MIT License
0 stars 0 forks source link

benchmark_ocp

This software is being developed independently of NASA. It is not endorsed or supported by NASA or the US government.

Authors

The optimalcontrol package is a framework for describing optimal control problems (OCPs) in python.

A collection of some benchmark OCPs of varying difficulty are located in the examples folder, separate from the optimalcontrol package. Some of these OCPs are described in

If you use this software, please cite the software package and the relevant publication(s). Please reach out with any questions, or if you encounter bugs or other problems.


Installation

First create a python environment (using e.g. conda or pip) with

python>=3.8

Then to install the optimalcontrol package (in developer mode), run

pip install -e .

This package and the examples have been developed and tested with the following software dependencies:

numpy>=1.17
scipy>=1.8
pytest
jupyter
matplotlib
pandas
scikit-learn>=1.0
tqdm

Test

From the root directory, run

pytest tests -s -v

Generate documentation

Install pdoc and run

pdoc optimalcontrol --d numpy --math -t docs/.template/ -o docs/optimalcontrol
pdoc examples --d numpy --math -t docs/.template/ -o docs/examples

The optimalcontrol package

The optimalcontrol package is made up of the following modules:


The benchmark examples