Technical roadmap

The roadmap is jointly defined by the Consortium Members with the developer community at the SOFA Technical Committee (STC). This committee is open and free for all, however votes for the roadmap are restricted to Consortium Members.
Read more on the governance.

Previous edition (STC#14) took place online from November 16th to 18th 2022, at the occasion of the SOFA Week 2022.
During this meeting, the committee voted the following roadmap:

Reinforcement learning in soft-robotics

  • Document the SofaGym plugin
  • Ease install and use : “pip install sofagym”
  • Fix and update SOFA scenes with latest SOFA API (sofagym.envs)
  • SofaGym temporal performance evaluation: simulation restart & hot restart
  • Report before the end of contract

Refactoring of the matrix assembly

  • (priority) Define the approach / format selected to manage matrix contributions which affects several MechanicalObjects
  • (priority) Integrate the changes and get tests to guarantee the behavior
  • Propagation within the SOFA codebase
  • Assess that the new API correctly supports projective constraints (accuracy/perf), add scene if one is missing (when a matrix projection occurs)
  • Multithreading to speed up the assembly

Constraint modernization

  • Replace the constraints matrix data structure by a more efficient one: review the InSimo approach replacing MapMapSparseMatrix
  • Refactoring should allow to create component inheriting from ConstraintSolver and being able to compute the compliance matrix W with new methods (possibly also sharing the type of constraint – equality, inequality – to the solver for efficiency)
  • Multithreading
    • Parallel Gauss Seidel
    • Parallel matrix operations

SOFA Rendering using UnrealEngine / Unity3D

  • Clean SofaPhysicsAPI
  • Trim existing Unity3D plugin, using only visual models from SOFA
    → only on SOFA supported platforms (MacOS, Win, Linux)
    → for more: services can be requested to InfinyTech3D
  • [Optional] same with UE
  • Release SOFAUnity-Renderer asset on Unity marketplace

Tearing plugin

  • Documentation of the plugin
  • Clean and fix for completing the plugin
  • Add unit and non-regression tests
  • Get first users’ feedback

DeepPhysX: coupling SOFA & AI

  • Extend the list of available neural networks architectures (Graph Networks)
  • Extend the choice of available AI frameworks (TensorFlow)
  • Extend the choice of the visualization library (Open3D, through SSD)
  • Compatible layer with SofaGym for reinforcement learning

Caribou updates

  • Merge SOniCS features in the main branch
  • Provide CI/CD tests
  • Ensure compatibility with the main branch of SOFA and FEniCS
  • Document including a video tutorial to explain how to implement new material model in SOniCS
  • Implement IGA (IsoGeometric Analysis) for mechanics

Cosserat beam plugin

  • Non-linear stiffness of the mapping
  • Modeling of the insertion of beveled needles
  • (continuing) Implement a python controller for moving co-axial instrument
  • (continuing) Verification and validation for the plastic Cosserat model

More projects

Besides the main roadmap tasks, a lot of projects are going to evolve in the next 6 months. Never hesitate to join the force or propose your own contribution project!

  • Active recruitment of new engineers!
  • Evolutions in the BeamAdapter plugin
  • Replacing access to the Context in the code
  • Propagating the use of the internal component state (replacing bwdInit() with callback mechanism, reinit(), init())
  • Allowing more GPU in SOFA (e.g. LDI collision detection method)
  • Improving the documentation, centralizing it
Back to Top