Evaluation of a Particle Swarm Algorithm For Biomechanical Optimization

[+] Author and Article Information
Jaco F. Schutte, Jeffrey A. Reinbolt, Raphael T. Haftka

Department of Mechanical & Aerospace Engineering, University of Florida, Gainesville, FL 32611-6250

Byung-Il Koh

Department of Electrical and Computer Engineering University of Florida, Gainesville, FL 32611-6250

Alan D. George

Department of Electrical & Computer Engineering,  University of Florida, Gainesville, FL 32611-6250

Benjamin J. Fregly1

Department of Mechanical & Aerospace Engineering and Department of Biomedical Engineering, University of Florida, Gainesville, FL 32611-6250fregly@ufl.edu


Address correspondence to: B. J. Fregly, Ph.D., Assistant Professor, Department of Mechanical & Aerospace Engineering, 231 MAE-A Building, P.O. Box 116250, University of Florida, Gainesville, FL 32611-6250. Phone: (352) 392-8157; fax: (352) 392-7303.

J Biomech Eng 127(3), 465-474 (Jan 31, 2005) (10 pages) doi:10.1115/1.1894388 History: Received July 09, 2003; Revised January 01, 2005; Accepted January 31, 2005

Optimization is frequently employed in biomechanics research to solve system identification problems, predict human movement, or estimate muscle or other internal forces that cannot be measured directly. Unfortunately, biomechanical optimization problems often possess multiple local minima, making it difficult to find the best solution. Furthermore, convergence in gradient-based algorithms can be affected by scaling to account for design variables with different length scales or units. In this study we evaluate a recently- developed version of the particle swarm optimization (PSO) algorithm to address these problems. The algorithm’s global search capabilities were investigated using a suite of difficult analytical test problems, while its scale-independent nature was proven mathematically and verified using a biomechanical test problem. For comparison, all test problems were also solved with three off-the-shelf optimization algorithms—a global genetic algorithm (GA) and multistart gradient-based sequential quadratic programming (SQP) and quasi-Newton (BFGS) algorithms. For the analytical test problems, only the PSO algorithm was successful on the majority of the problems. When compared to previously published results for the same problems, PSO was more robust than a global simulated annealing algorithm but less robust than a different, more complex genetic algorithm. For the biomechanical test problem, only the PSO algorithm was insensitive to design variable scaling, with the GA algorithm being mildly sensitive and the SQP and BFGS algorithms being highly sensitive. The proposed PSO algorithm provides a new off-the-shelf global optimization option for difficult biomechanical problems, especially those utilizing design variables with different length scales or units.

Copyright © 2005 by American Society of Mechanical Engineers
Your Session has timed out. Please sign back in to continue.



Grahic Jump Location
Figure 1

Experimental shank and foot surface marker configuration (left) for developing a subject-specific kinematic ankle model defined by 12 parameters p1 through p12 (right). Each parameter defines the position or orientation of a joint axis in one of the body segments.

Grahic Jump Location
Figure 2

A comparison of convergence history results for the analytical test problems. Left column: Results from the PSO, GA, SQP, and BFGS algorithms used in the present study. Right column: Results from the SA, GA, SQP, and DS algorithms used in Soest and Casius (5). The GA and SQP algorithms used in that study were different from the ones used in our study. (a) Problem H1. The SA results have been updated using corrected data provided by Soest and Casius, since the results in 5 accidentally used a temperature reduction rate of 0.5 rather than the standard value of 0.85 as reported. (b) Problem H2. (c) Problem H3 with n=4. (d) Problem H3 with n=32. The error was computed using the known cost at the global optimum and represents the average of 1000 runs (100 multi-start SQP and BFGS runs in our study) with each algorithm.

Grahic Jump Location
Figure 3

Final cost function values for ten unscaled (dark bars) and scaled (gray bars) parallel PSO, GA, SQP, and BFGS runs for the biomechanical test problem. Each pair of unscaled and scaled runs was started from the same initial point(s) in design space, and each run was terminated when the specified stopping criteria was met (see the text).

Grahic Jump Location
Figure 4

Convergence history for unscaled (dark lines) and scaled (gray lines) parallel PSO, GA, SQP, and BFGS runs for the biomechanical test problem. Each algorithm run was terminated after 10,000 function evaluations. Only one unscaled and scaled PSO and GA run were required to reach 10,000 function evaluations, while repeated SQP and BFGS runs were required to reach that number. Separate SQP and BFGS runs were treated like individual particles in a single PSO run for calculating convergence history (see the text).

Grahic Jump Location
Figure 5

Sensitivity of SQP and BFGS gradient calculations to the selected finite difference step size for one design variable. Forward and central differencing were evaluated using relative convergence tolerances of 10−3 and 10−6 for the nonlinear least squares suboptimizations performed during a cost function evaluation [see Eq. 20].




Some tools below are only available to our subscribers or users with an online account.

Related Content

Customize your page view by dragging and repositioning the boxes below.

Related Journal Articles
Related eBook Content
Topic Collections

Sorry! You do not have access to this content. For assistance or to subscribe, please contact us:

  • TELEPHONE: 1-800-843-2763 (Toll-free in the USA)
  • EMAIL: asmedigitalcollection@asme.org
Sign In