2019
DOI: 10.1371/journal.pone.0217730
|View full text |Cite
|
Sign up to set email alerts
|

Algorithmic differentiation improves the computational efficiency of OpenSim-based trajectory optimization of human movement

Abstract: Algorithmic differentiation (AD) is an alternative to finite differences (FD) for evaluating function derivatives. The primary aim of this study was to demonstrate the computational benefits of using AD instead of FD in OpenSim-based trajectory optimization of human movement. The secondary aim was to evaluate computational choices including different AD tools, different linear solvers, and the use of first-or second-order derivatives. First, we enabled the use of AD in OpenSim through a custom source code tran… Show more

Help me understand this report
View preprint versions

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

1
81
0

Year Published

2019
2019
2023
2023

Publication Types

Select...
6
1
1

Relationship

2
6

Authors

Journals

citations
Cited by 65 publications
(82 citation statements)
references
References 40 publications
1
81
0
Order By: Relevance
“…Future studies are needed to compare the efficiency of algorithmic and analytical derivatives in optimal control simulations. Previously, it was shown that using algorithmic derivatives is faster than finite differences which are used by OpenSim 43 . Machine learning approaches were recently investigated in the field of computer graphics to speed up musculoskeletal simulation 44 , 45 .…”
Section: Discussionmentioning
confidence: 99%
“…Future studies are needed to compare the efficiency of algorithmic and analytical derivatives in optimal control simulations. Previously, it was shown that using algorithmic derivatives is faster than finite differences which are used by OpenSim 43 . Machine learning approaches were recently investigated in the field of computer graphics to speed up musculoskeletal simulation 44 , 45 .…”
Section: Discussionmentioning
confidence: 99%
“…We formulated our problems in MATLAB using CasADi (Andersson et al, 2019), applied direct collocation using a third order Radau quadrature collocation scheme with 150 mesh intervals per gait cycle, and solved the resulting nonlinear programming problems with the solver IPOPT (Wächter and Biegler, 2006). We applied algorithmic differentiation to compute derivatives (Falisse et al, 2019a). We started each optimization from multiple initial guesses and selected the result with the lowest optimal cost.…”
Section: Model-based Analysesmentioning
confidence: 99%
“…Supporting mesh refinement would allow the solver to increase the number of mesh intervals in time ranges with fast dynamics, thereby improving accuracy. Computing the nonlinear program derivatives with algorithmic differentiation instead of finite differences would vastly improve the speed of Moco, but would require substantial changes to the source code of OpenSim and its dependencies [40].…”
Section: Availability and Future Directionsmentioning
confidence: 99%
“…More recent versions of CasADi support finite differences and CasADi understands the structure of the nonlinear program objective and constraint functions, allowing for potentially more efficient finite difference calculations than with Tropter, which treats the nonlinear program objective and constraints as blackbox functions [63]. If OpenSim provides exact derivatives in the future, we can exploit the algorithmic differentiation modes in Tropter and CasADi [40]. Those distributing Moco as a dependency of closed-source software may prefer distributing Moco without CasADi, as CasADi's "weak copyleft" GNU Lesser General Public License 3.0 places requirements on how CasADi is redistributed.…”
Section: Moco's Direct Collocation Solversmentioning
confidence: 99%
See 1 more Smart Citation