, Volume 7, Issue 4, pp 331-355

Comparison of Automatic and Symbolic Differentiation in Mathematical Modeling and Computer Simulation of Rigid-Body Systems

Rent the article at a discount

Rent now

* Final gross prices may vary according to local VAT.

Get Access


The objective of this paper is to check the efficiency and validity oftwo approaches for computing derivatives of complex functions,automatic differentiation using ADOLC and symbolicdifferentiation using MACSYMA. This has been done in three benchmarkexamples, where the gradient of a Helmholtz energy function has beencomputed for different dimensions of independent variables (Example 1)and Jacobian matrices of inverse kinematics of planar and spatialparallel robots (Examples 2 and 3) have been computed. The results havebeen evaluated under six criteria: preliminary implementation work,computation time, flexibility in applications, limits of applicability,accuracy, and memory requirements.

ADOLC was superior to MACSYMA concerning preliminarywork (programming, source code generation, and compilation) andmodifications of the functions to be differentiated and thedifferentiation task to be performed. In addition, contrary toMACSYMA, no limits of applicability were observed forADOLC, even in the simulation of complex multi-body systems.

On the other hand, for ADOLC the computation time of derivatives was 10 to 40 times higher than for MACSYMA. As aconsequence, differentiation by MACSYMA is better suited forreal-time applications like hardware in the loop simulation, real-timecontrol and real-time data processing than ADOLC.

Both programs provide numerical results of equal accuracy.