Download presentation
Presentation is loading. Please wait.
Published byClaire Daniels Modified over 9 years ago
1
MEGN 536 – Computational Biomechanics Prof. Anthony J. Petrella
2
Inverse Kinematics in Musculoskeletal Analysis Need to know joint angles that define model configuration at each increment in the motion Markers used to track motion and match model to individual We can then do dynamics calcs to find joint reactions / torques Muscle forces and joint contact forces can also be estimated Ali, et al., CMBBE, 2013
3
Inverse Kinematics in Musculoskeletal Analysis Problems… Model markers don’t perfectly match subject Multiple sources of exp. error Segments may have multiple markers over-determined Cannot solve for model config exactly (closed form) Have to use alternate method, such as optimization Ali, et al., CMBBE, 2013
4
Optimization in Inverse Kinematics
5
Optimization Problem Statement Find x that minimizes f(x), subject to A*x ≤ b and A eq *x = b eq x =design vector f(x) objective function A*x ≤ b inequality constraints A eq *x = b eq equality constraints x1:xnx1:xn e.g. -F quad ≤ 0 e.g. F x = 0
6
Optimization Problem Statement Note that the goal is to minimize the objective function in an absolute sense – not to make it small, but to make it as negative as possible If you are solving a problem in which you wish to maximize a value (e.g., find the maximum volume of a box using a fixed amount of material for the sides of the box), then you simply minimize the negative of the objective function… f(x) = -f vol (x) = -(L * W * H)
7
Optimization Example Given: the planex 1 + 2x 2 + 4x 3 = 7 Problem: find point on the plane closest to the origin design vector x = obj. function f(x)= dist = sqrt(x 1 2 + x 2 2 +x 3 2 ) ineq. constraints A*x ≤ b - none - eq. constraints x 1 + 2x 2 + 4x 3 = 7 (A eq = [1 2 4]; b eq = [7]) x1x2x3x1x2x3
8
Optimization Example - Solution
9
Optimization in MATLAB Type ‘ doc fmincon ’ at the MATLAB command line All of the inputs and outputs of fmincon are explained in the MATLAB documentation To use fmincon you will need to write a MATLAB function and use function handles
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.