Muscle Location Optimization Using a GA Zach Danziger

Tony Jarc

Biomedical Engineering Northwestern University Chicago, IL 60611 USA

Biomedical Engineering Northwestern University Chicago, IL 60611 USA

[email protected]

[email protected]

ABSTRACT The control of movement is very complex, involving the activation of a redundant musculature with intricate physiology that affects the highly nonlinear kinematics of the skeletal system. Previous studies have attempted to understand musculoskeletal design by creating computational models very specific to the musculoskeletal system. While these methods have produced many insights, they lack the ability to conclusively answer one major question: Why is the musculoskeletal system designed the way it is? In this paper, we describe an alternative computational approach that addresses one component of the question above: Are muscles optimally placed on the skeleton? Specifically, we found the optimal muscle locations for single and multiple tasks using a genetic algorithm (GA) (the tasks are maximum height jumping and static posture). By comparing single task optimization results to those for combined tasks, we show that multiple task optimization yields results with high similarity to human physiology, directly demonstrating that the musculoskeletal system is not designed optimally for one behavior, but instead it is designed to perform well at many behaviors.

1. Introduction Many researchers have tried to understand how the central nervous system (CNS) controls human movement because of its vast array of applications to many medical fields [1-4], including rehabilitation following stroke or spinal cord injury, athletic training, and systems neurophysiological diseases such as Parkinson’s and Huntington’s diseases. More recently, computational techniques such as optimal control theory have been applied to questions of motor control so that experimental measurements can be directly compared to theoretical assumptions. For example, Todorov and Jordan demonstrated the natural emergence of task-constrained variability and muscle synergies using optimal feedback control on models of object manipulation [5]. Muscle synergies are grouped activations of muscles across a limb (or body) that eliminate the need to control each muscle individually. They supported their work with experimental results from several motor tasks. Despite the success of researchers in this field, their conclusions lack a definitive nature, i.e. – they cannot disprove other plausible methods of motor control. Therefore, we are left with many possible theories. The method that we propose is to examine the design of the musculoskeletal system in the context of control. Given either measured muscle activity (or optimally predicted muscle activity), can we predict the design of the musculoskeletal system, namely the locations of muscles? Such a prediction would help address questions about the contributions of musculoskeletal design on the eventual muscle activations. Additionally, it could improve our understanding of diseases or disabilities where muscles

assume different locations (or are surgically transferred to different locations as in cerebral palsy). Several researchers have examined these questions but not explicitly from a control perspective. Instead, they showed that the mechanics of the muscle and/or skeleton are optimally designed for certain tasks. For example, Ruina and others have shown that purely passive mechanisms can produce human-like locomotion [6]. In fact, they have constructed these mechanisms and shown that they can passively (no motors) walk down a slight incline. These studies strongly suggest that the mechanical design of the human body tries to minimize the complexity of neural commands from the CNS during behaviors such as walking, i.e. – reduce energy expenditure. Similarly, Lutz and Rome showed that muscles in the frog hindlimb are optimally designed for jumping [7]. The muscles have physiological parameters (force-length and force-velocity relationships) that enable them to produce optimal forces during coordination strategies used in jumping. In this paper, we used a genetic algorithm (GA) to ‘evolve’ muscle locations for single and multiple tasks using a human lower limb model. We have explicitly shown that the placement and orientation of muscles on the skeleton (i.e. – musculoskeletal design) greatly influence how the overall system will behave. The solutions found by the GA highlight those muscle groups that are most necessary for certain tasks. The remainder of this paper describes our GA, the specific tasks we generate optimal musculoskeletal designs for, and comparisons between actual human physiology and the optimized muscle locations.

2. Related Work The human lower limb model that we used (and one of the tasks we optimized musculoskeletal design for) was replicated from previous work by Pandy, Zajac, and others [2,3]. Based on years of research in physiology, motor control and optimal control theory, they developed a seminal model of the human skeleton and lower limb musculature, then optimized for activation signals in maximum height jumping (maximum height jumping was used because it has an explicit cost function – achieve the highest vertical displacement possible). Their 4-link inverted pendulum model accurately predicted the activation times of each of 8 muscle groups as compared with electromyographic (EMG) data recorded from professional volleyball players [2]. This model was created to show that the nervous system implements an optimal control scheme when activating muscles during jumping. The change we made to the model and simulation allowed the muscle locations to move about the skeleton to new, more ‘optimal’ positions. We chose to use the maximum height jumping task because it allowed us to build upon an already successful model as well as verify our model before moving to more complex components of our research.

For our second task, we chose static posture because Pandy and Zajac’s model and optimal control principles were extended to a similar version of this task by Kuo [4]. Kuo designed a feedback model for postural resistance to horizontal perturbations to the center of mass of the trunk segment. He described the basic control mechanisms and geometry that he believed to be most relevant in normal standing, and which muscle groups were responsible for stabilization [4]. The difference in our task is that we will not apply perturbations, but instead simply require the model to stand upright. Again, we allowed the muscle locations to change until optimal values were found rather than restricting ourselves to the believed physiological characteristics. Finally, we examined the resultant muscle locations when optimizing for both maximum height jumping and static posture. Most likely, humans have evolved to perform multiple tasks and are not optimally designed for a single one. Therefore, we explicitly show that as we optimize the musculoskeletal design for more tasks, the muscle locations become increasingly more similar to normal physiology.

3. Methods We developed a genetic algorithm (GA) that predicts the optimal muscle locations (origin and insertion points) on a predefined skeleton of the human lower limb for given tasks. We used a model with 8 muscles that dynamically represents the human lower limb and trunk [2]. The feasibility of the simulation was first demonstrated by inputting known activation patterns for human jumping and basic muscle and tendon properties from human physiology and demonstrating that the simulation produces muscle architecture similar to what is seen in previous optimizations and in the physiology literature [2,3]. We then extended the optimization to static posture and a combined task of both jumping and posture. The success of our optimally designed and controlled model was verified by its ability to perform the jumping and standing tasks relative to humans performing the same task, and by the algorithm’s placement of the muscles similar to that found in physiology.

3.1 Musculoskeletal Model The biomechanical model (SimMechanics, MATLAB) represented the human skeleton (focused on the lower limb) as a 4-link planar structure articulated using frictionless revolute hinge joints – shown in Figure 1. Ranges were imposed for all 3 joint angles to prevent hyperextension of any joint. The GA dictated the placement of 8 actuators (i.e. – muscles) on the linkages. Each actuator was modeled as a Hill-type muscle model [9]. Briefly, in a Hill-type muscle model, a force-producing contractile element is in parallel with a spring representing the passive muscle stiffness. This ‘muscle’ is then in series with a spring representing the tendon stiffness. These 4 elements govern the dynamics of each actuator, or its biological analogue, the musclulotendon complex. The toe was fixed to the ground via a revolute joint. The model was considered to have left the ground when the vertical ground reaction force at that joint is zero. The ground itself was modeled as a very stiff spring at the heel to avoid mathematical discontinuities. Precise parameter values for stiffnesses, moment arms about joints (wrapping surfaces), and segment lengths can be found in [2].

HAT

RF

GMAX

VAS

HAMS

THIGH

GAS OPF SOL

SHANK FOOT

TA Figure 1 – Inverted pendulum model representing the human lower limbs and trunk for maximum height jumping and static posture. The 8 muscles groups are labeled on the left and the segments are labeled on the right. Images borrowed from [2,3].

3.2 Genetic Algorithm The fitness function in a GA essentially maps the genotype of a hypothesis into a phenotype. In our case, the genotype was a sequence of muscle locations. [M1,o M1,i side …. M8,o M8,i side] M is the muscle location, subscript o is the muscle origin, and subscript i is the muscle insertion location, and side explains which side of the planar model the muscle is on. M can range from 1-N, where N is the number of bins the skeleton is divided into, while side is binary (0 – left, and 1 – right). This sequence of 3 attributes repeats once in the genotype for each muscle. We used uniform crossover with the locations for crossover being selected randomly for two parent members of the population in each generation. Therefore, two randomly selected parents always produced two children. We also implemented random mutation to every component in the genotype. The rate of mutation was chosen as 1%. We used a selection criterion that used the top 5 parents from the previous generation and the top 25 children in the next generation, assuming a population size of 30. This approach helped retain diversity across many generations. Our algorithm ran for a specified number of generations – from 30-200, with a population size of 30. We restricted our hypothesis space by not allowing tri-articulate muscles (muscles that span 3 joints) because these are not found in normal human physiology. Therefore, the hypothesis space spans all combinations of muscle origin and insertion points on either side of the skeletal model that give rise to mono- or biarticulate muscles. The fitness functions for each task in this paper are described in the next section.

3.3 Activation Signals Muscle activation signals (i.e. – those commands that tell the muscle when and how much to contract) were predefined for each task. The activation signals for maximum height jumping were reproduced from those predicted by Pandy and Zajac [3]. Those for static posture are assumed to be constant at 10% of maximum

contraction for all 8 musculotendon actuators on the skeleton – similar to isometric contraction to keep one’s body upright.

3.4 Fitness Functions 3.4.1 Maximum Height Jumping The fitness function for maximum height jumping was a modified version of the one used by Pandy and Zajac [3]:

f jump  e

( ahHAT , f  bvHAT , f )

/(e

 ( c final )

)

(1)

The goal is maximize this fitness, fjump, which equals the sum of the final vertical displacement and velocity achieved by the HAT (head-abdomen-trunk) segment’s center of mass at take-off raised to the exponential and divided by the negative exponential of the duration of the jump. The constants a, b, and c were adjusted to equally weight each component of the fitness function. The reason we need to include the time constraint in our fitness function is two-fold: (1) the solution from Pandy and Zajac [3] was constrained to jump at 0.5 seconds, and (2) to prevent our optimization from choosing muscle locations that coordinate a jump in physiologically unrealistic time scales using only passive musculotendon forces. Additionally, we raised all components to the exponential (strictly increasing) to give a wider range of possible fitness values, making the GA more effective. This fitness function encourages the algorithm to confine itself to physiologically feasible muscle placements that coordinate a jump using active muscle forces while still having the freedom to explore a rich hypothesis space.



1

 max

  max  sˆ  s 2  bˆ  b    cˆl  cl 2  2

4

(3)

l 1

4. Results 4.1 Individual Tasks 4.1.1 Maximum Height Jumping The prediction of muscle locations for maximum height jumping would serve as a validation for our model since, ideally, it would reproduce the results of Pandy and Zajac [3]. Figure 3 compares the evolution of the mechanical dynamics during the simulation time between their optimal solution (bottom) and our solution (top).

3.4.2 Static Posture The fitness function for static posture, fpost , tries to drive the solution to one that minimizes the vertical displacement of the uppermost segment’s center of mass over a specified time duration while maximizing that time duration: vertical vertical f post   a | (hHAT  hHAT ,o ) |  e

( b final )

(2)

The first term of (2) tries to minimize the vertical displacement by negating the absolute value of the initial height subtracted from the mean vertical height of the HAT segment. Therefore, the maximum value for the numerator occurs if the mean height of the uppermost segment remains at its initial height. The second term of (2) forces the duration of the simulation to be as large as possible, i.e. – stand upright for the duration of the simulation.

3.4.3 Combined Max Height Jumping and Posture The combined optimization of both maximum height jumping and static posture would alternate between the fitness functions in (1) and (2) every 20 generations similar to [8]. This implies that the same genotypes (i.e. – muscle locations) will be used throughout this alternation, and therefore the GA will optimize muscle locations for combined behaviors rather than single ones as described in Sections 3.4.1 and 3.4.2.

Figure 2 – Dynamics during our solution for a maximum height jump (top) and Pandy and Zajac’s solution (bottom). The resulting solution was a coordinated jump that resembled that of Pandy and Zajac [3]. The major difference is that our simulation jumps in only 0.25 seconds, while theirs takes 0.50 seconds. This means that our solution places muscles so that not all 8 are needed, but instead only a few are actually used to propel the model into the air. Interestingly, the maximum height achieved in our solution (183 cm) was much greater than theirs (33 cm). The fitness plot shown in Figure 4 shows the improvement of our algorithm over 50 generations using the fitness function in (1). It also suggests that more improvement is possible, simply requiring more generations since the fitness is still increasing significantly.

3.5 Similarity Measures The similarity measure, φ, is a quantitative comparison between a genotype and actual muscle placement on the human leg as modeled by [2]. The measure weights side, s, number of biauriculate muscles, b, and muscle contact points per link, c, equally, where actual values are noted with a hat. φ is normalized by φmax so that 0≤ φ≤1, where φ=1 is identical to the actual muscle placement.

Figure 3 – Average fitness values for maximum height jumping across 50 generations (population size of 30).

Finally, the similarity of the muscle locations between our solution and actual physiology are quantified in Table 1, according to equation (3). Note that the values range from 0 to 1 but do not linearly increase; therefore the value of 0.27 signifies that the solutions share several significant commonalities such as the number of bi-articulate muscles and a few similar muscle placements.

remained upright until the end, when it started to fall forward, again, a result of inappropriate muscles on the uppermost segment.

Table 1. Muscle location similarity values. Case

Similarity Value

Actual Physiology

1.00

Max Height Jumping

0.73

Posture

0.64

Combined Tasks

0.73

An interesting solution resulted when we relaxed the simulation duration constraint in the fitness function. Without this component, the simulation simply needs to achieve the highest height possible. Indeed, this solution is found, but the duration of the simulation is on the order of 0.05 seconds. This means that the forces to propel the model into the air come strictly from passive musculotendon properties – the muscles are initially extremely stretched so that they act as very strong springs to launch the model off the ground once the simulation begins. The final maximum height was 5.66 m, which is much greater than that predicted by Pandy and Zajac and also unrealistic. Interestingly, the coordination of joints is very similar to that predicted in [3].

4.1.2 Static Posture The resulting dynamics for the static posture optimization are shown in Figure 5. Based on the evolution of the mechanics, one can see that the GA finds muscle locations that maintain the initial height of the model for the first half of the simulation, but then the model begins to fall forward. The reason the model falls is because it rocks against the stiff spring at the heel representing the ground and eventually contacts it with too much force, making it unstable. Despite this, we compared the similarity of the muscle locations to actual physiology – Table 1. Notice that the muscle locations for posture are less similar to actual physiology than those locations for maximum height jumping.

Figure 4 – Dynamics during static posture simulation.

4.2 Combined Tasks When we optimized for both maximum height jumping and static posture simultaneously, the GA predicted muscle locations that improved static posture significantly at a minimal expense to maximum height jumping – see Figure 5. The dynamics were coordinated to propel the model off the ground except the uppermost segment lacked the appropriate muscles to enforce a regular jump. In the posture optimization, the model actually

Figure 5 – Dynamics during maximum height jumping (0.22s until liftoff) and static posture using the same muscle locations as predicted by the GA for combined tasks.

5. Discussion In this paper, we have developed a framework to optimize the muscle locations on a skeletal model for individual and combined tasks. The results of these optimizations are promising, although they still need improvement. When we optimized muscle location for maximum height jumping, we found a solution that coordinated a jump in a similar way as previously predicted in [3]. However, only a small subset of muscles roughly corresponded to muscles in actual physiology with the others being unique to our solution. Also, the optimized muscle locations for the static posture task are even less similar to actual physiology – keep in mind that the model’s performance at standing was mediocre. The most interesting results were from the optimization of the combined tasks. As shown above, the final solution performs slightly worse for each task than when the tasks are individually optimized for. However, the muscle locations improve the model’s ability to perform both tasks overall while still being similar to actual human physiology. Therefore, we have explicitly shown that the human musculoskeletal system is designed to perform well at a range of possible tasks rather than single ones, i.e. – alternative designs can be found to improve task performance. Such a demonstration has been lacking in the motor control field until now. In the future, we intend to extend this idea to simultaneously predict muscle locations and muscle activation patterns. The solutions from these future studies will assuredly be interesting because they will address questions pertaining to the intimate relationship between the central nervous system’s control strategies and the design of the musculoskeletal system.

6. REFERENCES [1] Bernstein, N. 1967. The coordination and regulation of movements. Oxford, New York: Pegamon Press.

[2] Pandy, M. Zajac, F., Sim, E. and Levine, W. 1990. An optimal control model for maximum-height human jumping. J Biomech. 23, 12, 1185-90. [3] Pandy, M. and Zajac, F. 1991 Optimal Muscle Coordination Strategies for Jumping. J Biomech. 24, 1. 1-10. [4] Kuo, D. 1995. An Optimal Control Model for Analyzing Human Postural Balance. IEEE Trans Biomed Eng, 42, 1, 87-101. [5] Todorov, E. and Jordan, M. 2002. Optimal feedback control as a theory of motor coordination. Nature. 5,11:1226-35. [6] Collins,S., Ruina, A., Teldrake, R. and Wisse, M. 2005. Science. 307. 1082-85.

[7] Lutz, G. and Rome, W. 1994. Built for jumping: the design of the frog muscular system. Science. 263, 5145. 370-72. [8] Deb, K. Pratap A. Agarwal S. and Meyarivan T. 2002. A Fast and Elitist Multiobjective Genetic Algorithm: NSGA-II. IEEE Trans Evol Comp, 6, 2, 182-197. [9] Zajac, F. 1989. Muscle and tendon: properties, models, properties, scaling, and application to biomechanics and control. CRC Critical Reviews in Biomedical Engineering. 17, 359-411.

Muscle Location Optimization Using a GA

solutions found by the GA highlight those muscle groups that are most necessary for .... chosen as 1%. We used a selection criterion that used the top 5 parents from the ... either side of the skeletal model that give rise to mono- or bi- articulate ...

285KB Sizes 2 Downloads 187 Views

Recommend Documents

Generic GA-based meta-level parameter optimization ...
apply different parameter settings using brute force or trial-and-error ... system called neuro-fuzzy system (NFS) [9], which synergizes the learning and .... NFS output s y . This process will then be terminated when a satisfactory performance is re

A Grid-Based Location Estimation Scheme using Hop ...
Report DCS-TR-435, Rutgers University, April 2001. [13] J. G. Lim, K. L. Chee, H. B. Leow, Y. K. Chong, P. K. Sivaprasad and. SV Rao, “Implementing a ...

Using Topology Optimization
Nov 16, 2016 - Weiyang Lin, James C. Newman III, W. Kyle Anderson. Design of Broadband Acoustic Cloak. Using Topology Optimization. IMECE2016-68135 ...

A User Location and Tracking System using Wireless Local Area ...
A User Location and Tracking System using Wireless Local Area Network. Kent Nishimori ... Area Network signal strength and Geographical. Information ..... The initial K-nearest neighbor algorithm [1] takes all of the K selected reference points and a

Inferring Residential Location Preferences Using a ...
Aug 24, 2010 - P6. P8. Increasing budget for housing ? (b) Reduced Choice/Chooser set after more privileged choosers have made their choice. Figure 1: A ...

Improving Location Prediction using a Social Historical ...
of social media where users are able to check-in to loca- tions they ... these predicted locations. Permission to ... [10] pro- posed the Order-k Markov model, which considers the fre- ... more recently visited places), and demonstrating how it can.

Improving Location Prediction using a Social Historical Model with ...
Location-based Social Networks (LBSN) are a popular form of social media where users are able to check-in to loca- tions they have ..... [5] H. Gao, J. Tang, and H. Liu. gSCorr: modeling geo-social correlations for new check-ins on location-based soc

Inferring Residential Location Preferences Using a ...
Aug 24, 2010 - However, despite technological advances that have made ...... path. In principle, one could retain spatially coarse zones and ... of demographers and housing-career researchers can be made, and will result in a more reliable.

Power Generation Loading Optimization using a ... - RMIT University
month) overhaul system, i.e. each time, a unit is through a major overhaul ... what operation mode a unit is operating under (such as mill ..... 214-220, IOS. Press ...

Minimising MI Using GA for Single Trial P300 Component Extraction
Single Trial P300 Component Extraction. Ramaswamy Palaniappan. Dept. of Computer Science, University of Essex, CO4 3SQ, United Kingdom [email protected]. Abstract. In this paper, genetic algorithm (GA) is used to extract single trial evoked potentia

Control Input Constraint Handling Using GA Optimized Predictive ...
Abstract- In this paper a new algorithm is proposed to optimize the gains of Predictive PID controller using genetic algorithms. A Predictive PID controller is developed which can handle control input constraints including amplitude and rate of chang

OPTIMIZATION OF ORBITAL TRAJECTORIES USING ...
a big number of times, reducing the exploration of the search space; at the end of .... (1971) directly calculate the velocity vector in the extreme points of the orbital arc ..... Algorithms in data analysis, Printed by Universiteitsdrukkerij Gronin

Protein location prediction using atomic composition ...
Dec 28, 2009 - subcellular localization and the second is the computational tech- nique employed for making prediction [1]. The biological features used for prediction include detection of protein sorting signal, ami- no acid composition, physiochemi

Cover Estimation and Payload Location using Markov ...
Payload location accuracy is robust to various w2. 4.2 Simple LSB Replacement Steganography. For each cover image in test set B, we embed a fixed payload of 0.5 bpp using LSB replacement with the same key. We then estimate the cover images, or the mo

Geolocation Prediction in Twitter Using Location ...
location-based recommendation (Ye et al., 2010), crisis detection and management (Sakaki et al., ... Section 2 describes our proposed approach, including data ..... Using friendship (bi-directional) and following (uni-directional) links to infer the 

Location-Aware Sign-On and Key Exchange using ...
Uses the consumer mobile device (smartphone) as an agent to perform location- aware sign-on procedures on behalf of the user. • Uses Attribute-Based Encryption (ABE) to construct a secure key exchange protocol. • Uses Bluetooth Low Energy beacons

Efficient Content Location Using Interest-Based Locality ...
Section VIII, and related work in Section IX. II. ... First, shortcuts are modular in that they can work with ..... participate in a Web content file-sharing system.

System and method for obtaining and using location specific information
Sep 1, 2010 - supports the coordinate entry or linked to an existing Web ..... positions to any GPS receiver that is within the communica tion path and is tuned ...

Detecting Location-centric Communities using Social ...
increasing popularity of Location-based Social Networks offers the op- portunity to ... Most of these earlier works consider the spatial aspect of check-ins and co- location without the .... erties of communities with ≤30 users [2, 10]. In particul

Efficient Location Tracking Using Sensor Networks - University of ...
drain-and-balance (DAB), for building efficient tracking hierar- chies, computed from ... and Networking Conference (WCNC) ... Let us call this the hierarchy tree.

Location-Aware Sign-on and Key Exchange using ...
backend system verifies the username and password (or the hash of the password) against a database, and then grants, or not, access to a system. .... this key exchange, and as compared to traditional key exchange formats: • ABE is ...