Hyfydy Features

Performance

Hyfydy works different than most physics engines, in that it is fully force-driven. Even joint constraints are modeled through forces that mimic the effects of ligaments and cartilage. Instead of solving constraints directly, Hyfydy is optimized to run at high simulation frequencies (>3000Hz), and uses a novel error-controlled integrator that automatically adapts the step size based on a user-defined accuracy level. This results in an approximate 100x speed gain* over OpenSim [1] — while using the same muscle and contact models. Hyfydy can perform reflex-based gait simulations [2] in around 150x real-time (Intel i7 CPU, single-core).

Actuator Models

Hyfydy contains optimized implementations of various Hill-type musculotendon actuators, including the Millard Equilibrium Muscle Model [3]. This model incorporates tendon elasticity, variable pennation angles and passive damping of the contractile element, allowing muscles to be fully deactivated. Hyfydy also includes several other actuator models, such as rigid tendon muscle actuators and joint torque actuators.

Contact Models

Hyfydy supports a wide range of force-based contact models, including the Hunt-Crossley Contact Model [4] with non-linear damping. These models better represent soft-tissue contact forces than rigid contact models. The Coulomb friction cone is modeled using static, dynamic and viscous friction coefficients. The error-controlled integrator with adaptive time steps ensures that the simulation stiffness associated with force-based contact models has a minimal impact on performance.

gears, parts, grunge-1381719.jpg

Accuracy & Stability

Hyfydy supports a number of error-controlled integrators with adaptive step sizes and user-controlled accuracy. This ensures that simulations in Hyfydy always remains stable and accurate, while retaining optimal performance.

Continuous Development

Hyfydy is continuously being improved and new features are added regularly based on user requests. It is currently available as a plug-in for SCONE [5], which is Open Source Software for predictive simulations of biological motion, as well as via a Python API for machine learning applications. For specific feature requests, please don’t hesitate to send us a message.

devops, business, process improvement-3148393.jpg

* Performance benchmark details: 10 second gait simulation using a reflex-based controller [2] with hill-type musculotendon dynamics [3] and non-linear contact forces [4]. Optimizations were performed in SCONE [5] using 1000 generations of CMA-ES [6] on a 4-core i7 Intel CPU.

References

[1] Seth, A., Hicks, J. L., Uchida, T. K., Habib, A., Dembia, C. L., Dunne, J. J., … Delp, S. L. (2018). OpenSim: Simulating musculoskeletal dynamics and neuromuscular control to study human and animal movement. PLoS Computational Biology, 14(7).

[2] Geyer, H., & Herr, H. (2010). A muscle-reflex model that encodes principles of legged mechanics produces human walking dynamics and muscle activities. IEEE Transactions on Neural Systems and Rehabilitation Engineering, 18(3), 263–273.

[3] Millard, M., Uchida, T., Seth, A., & Delp, S. L. (2013). Flexing computational muscle: modeling and simulation of musculotendon dynamics. Journal of Biomechanical Engineering, 135(2), 021005.

[4] Hunt, K. H., & Crossley, F. R. E. (1975). Coefficient of Restitution Interpreted as Damping in Vibroimpact. Journal of Applied Mechanics, 42(2), 440.

[5] Geijtenbeek, T (2019). SCONE: Open Source Software for Predictive Simulation of Biological Motion. Journal of Open Source Software, 4(38), 1421

[6] Hansen, N. (2006). The CMA evolution strategy: a comparing review. Towards a New Evolutionary Computation, 75–102.