SOCKS#

Release: 7706306

binder_link

SOCKS is a suite of algorithms for stochastic optimal control using kernel methods.

It runs on top of OpenAI Gym, and comes with several classic controls Gym environments. In addition, it can integrate with many pre-existing Gym environments.

Getting Started#

Install SOCKS using pip:

pip install gym-socks

Check out the Installation page for more detailed instructions.

User Guide#

Check out the user guide to use SOCKS in your own projects.

Fundamentals

Describes the basic concepts of SOCKS, and gives a quick overview of data-driven control.

Using SOCKS

Information on how to simulate and generate samples from systems, as well as basic information about how to use the algorithms in SOCKS.

Templates

Some code templates that can be copy/paste into your own projects.

Examples#

After reading the user guide, the best way to familiarize yourself with SOCKS is by checking out several of the key examples.

Target Tracking Problem

Unconstrained stochastic optimal control.

Maximal Stochastic Reachability

Compute a policy that maximizes the probability of remaining within a safe set and reaching a target set.

Forward Reachability

Compute a forward reachable set classifier.

CWH Problem

Satellite rendezvous and docking problem using Clohessy-Wiltshire-Hill dynamics.

SOCKS can be run using binder, and all examples can be run interactively using the binder_link link included at the top of the example pages. If you downloaded the code from the GitHub repo, you can also run the examples locally or using docker and the included Dockerfile.

Cite SOCKS#

In order to cite the toolbox, use the following bibtex entry:

@inproceedings{thorpe2022hscc,
  title     = {{SOCKS}: A Kernel-Based Stochastic Optimal Control and Reachability Toolbox},
  authors   = {Thorpe, Adam J. and Oishi, Meeko M. K.},
  year      = {2022},
  booktitle = {Proceedings of the 25th ACM International Conference on Hybrid Systems: Computation and Control (submitted)}
}

Indices and Tables#