Introduction

SofaEnv

The goal of this project is providing a Gym interface to SOFA in order to use SOFA as a physics-based environment for reinforcement learning.

The Simulation Open Framework Architecture (SOFA) is “an efficient framework dedicated to research, prototyping and development of physics-based simulations”. In particular its ability to perform fast and realistic soft body simulations make this framework appealing for reinforcement learning.

Gym environments provide a simple interface between reinforcement learning algorithms and learning environments. The basic components of a gym environment are their state and action spaces as well as a set of interface functions.

SofaEnv provides modular and simple to use functions to

  • define how actions, passed to the Gym environment affect what happens in the SOFA simulation, and

  • observe the state of the simulation.

Contents

If you are new to the project, please have a look at the Getting Started section.

The project consists of:

  • The SofaEnv Base Class that implements the Gym interface for SOFA simulations

  • Sofa Templates that combine SOFA components to model high-level objects such as deformable objects and pivotized instruments.

  • A set of predefined Scenes and their learning environments.

  • A set of Utility Functions to generate point cloud observations, perform motion planning, and more.

Indices and tables