The DeepPhysX project provides Python packages allowing users to easily interface their numerical simulations with learning algorithms.
DeepPhysX provides a Core package with no dependency on any simulation or AI framework. Then other packages are compatible with this Core and a specific simulation or AI framework:
- DeepPhysX.Sofa as simulation packages;
- DeepPhysX.Torch as AI packages.
DeepPhysX is a full Python3 projects with 3 main features:
- Generate a dataset with synthetic data from numerical simulations;
- Train an artificial neural network with a synthetic dataset;
- Use the predictions of a trained network in a numerical simulation.
The full list of features is detailed in the documentation.
The project was initially developed using SOFA as the simulation package and PyTorch as the AI framework. Thus, DeepPhysX is mainly designed for these frameworks, but obviously other frameworks can also be used. The packages corresponding to these frameworks will therefore be used for the default installation.
The easiest way to install is using pip
, but there are a several way to install and configure a DeepPhysX
environment (refer to the documentation
for further instructions).
$ pip install DeepPhysX # Install default package
$ pip install DeepPhysX.Sofa # Install simulation package
$ pip install DeepPhysX.Torch # Install AI package
DeepPhysX includes a set of detailed tutorials, examples and demos. As these scripts are producing data, they cannot be run in the python site-packages, thus they should be run locally. Use the command line interface to get the examples or to run interactive demos:
$ DPX --get # Get the full example repository locally
$ DPX --run <demo> # Run one of the demo scripts
ArmadilloDPX -r armadillo |
BeamDPX -r beam |
LiverDPX -r liver |
---|---|---|
Did this project help you for your research ? Please cite us as:
R. Enjalbert, A. Odot and S. Cotin, DeepPhysX, a python framework to interface AI with numerical simulation, Zenodo, 2022, DOI