SimGAN
Pytorch Implementation of SimGAN: Hybrid Simulator Identification for Domain Adaptation via Adversarial Reinforcement L…
Optimal Control for Switched Systems
OCS2 (Optimal Control for Switched Systems) is a C++ toolbox for formulating and solving nonlinear optimal control problems, with an emphasis on real-time Model Predictive Control (MPC) for robotics.
OCS2 handles general path constraints through Augmented Lagrangian or relaxed barrier methods. To facilitate the application of OCS2 in robotic tasks, it provides additional tools to set up the system dynamics (such as kinematic or dynamic models) and cost/constraints (such as self-collision avoidance and end-effector tracking) from a URDF model. The library also provides an automatic differentiation tool to calculate derivatives of the system dynamics, constraints, and cost. To facilitate deployment on robotic platforms, OCS2 provides tools for ROS interfaces. The toolbox’s efficient and numerically stable implementations in conjunction with its user-friendly interface have paved the way for employing it on numerous robotic applications with limited onboard computation power.
ROS 2 port available: use branch
ros2.
| ROS version | Branch |
|---|---|
| ROS 1 | main |
| ROS 2 | ros2 |
ocs2_core: core data types, math utilities, rollout interfaces, AD utilities.ocs2_oc: optimal control problem building blocks (costs, constraints, dynamics, pre-computation, reference management).ocs2_ddp, ocs2_mpc: DDP-family solvers + MPC infrastructure and runtime interfaces.ocs2_sqp, ocs2_slp, ocs2_ipm: alternative solvers (SQP / SLP / IPM).ocs2_pinocchio/*: URDF/Pinocchio tooling (centroidal model, kinematics, self-collision, visualization).ocs2_ros_interfaces, ocs2_msgs: ROS interfaces and message definitions.ocs2_robotic_examples/*: robotic examples and their ROS nodes.ocs2_python_interface: Python bindings for selected components.ocs2_mpcnet: MPC-Net tooling for learned policy deployment/training.ocs2_doc: documentation sources (Sphinx/Doxygen).main): follow the installation instructions in the documentation (Installation page): https://leggedrobotics.github.io/ocs2/ros2): follow installation.md on that branch: https://github.com/leggedrobotics/ocs2/blob/ros2/installation.md@misc{OCS2,
title = {{OCS2}: An open source library for Optimal Control of Switched Systems},
note = {[Online]. Available: \url{https://github.com/leggedrobotics/ocs2}},
author = {Farbod Farshidian and others}
}
BSD 3-Clause, see LICENCE.txt.
more like this
Pytorch Implementation of SimGAN: Hybrid Simulator Identification for Domain Adaptation via Adversarial Reinforcement L…
Arduino library and MATLAB/Simulink API for the AutomationShield Arduino expansion boards for control engineering educa…
search projects, people, and tags