A Neuromechanical Simulation of the Human Upper Limb

Introduction

The control of the human body is a complex system encompassing electrical, chemical, and kinetic energy and transformation. Millions of nerve pulses will travel from the brain to a muscle to initiate a contraction. Following the neural input, a muscles contraction will occur as a series of overlapping muscle twitches that integrate into a smooth force. These muscle forces can work in conjunction or opposition to a desired movement. Through this process of movement, various biological functions will create errors, delays, and feedback signals.

Neuromechanics is a body of research that seeks understand how the body moves. A method of neuromechanical study is "Human Robotics," where the human system is treated as a system similar to a mechanical system. Feedforward planning, nerve pulses, muscle recruitment, feedback and inertia can be approximated mathematically to create a model that estimates the movement of the human body. These models of movement can then be used to simulate biomechanics, quantify disability, influence human-mechanical systems such as exoskeletons, and develop therapy protocols for recovery. This report documents a preliminary model that can simulate the movement of the upper limb of the human body. This model can be expanded to include more joints, or modified to simulate other systems. Fist this report provides a quick overview of the biological systems that create movement to justify various elements of the model. I will then describe the model and discuss resulting simulations of movement.

Note: Much of this work is based on a BYU course titled "Neuromechanics of movement," for which I was employed as a teaching aid. As much of the code used in this report is identical to code developed in that course I will not be sharing my model code.

Neural Control of Movement

The human body contains over 7 million nerve cells. These cells may be involved in sensing, thinking, or movement. Regardless of the role, nerves will transmit signals through the axon through a bioelectric process called an action potential. 

At rest, the axon has an electrical potential  across its membrane between -70 and -80 mV. This potential is driven by the high concentration of potassium ions and low concentration of sodium ions in the intracellular fluid compared to the extracellular fluid. The cell membrane is impermeable to charged molecules except through specialized protein channels.

A sudden depolarization of the membrane will trigger an action potential pulse. When the membrane reaches a potential around -55mV the sodium channels may briefly open, allowing for the flow of sodium ions into the intracellular fluid. The introduction of these positive ions further increase the potential to +30mV where potassium channels will open allowing the diffusion of potassium out of the cell, which will drive the membrane potential down to below its resting potential. After this process concludes, active ion pumps will transfer ions between the intracellular and extracellular fluids until the resting potential is reached. Another action potential is unlikely until the resting potential is reached. This means that there is a refractory state where a nerve signal will not occur.

The depolarization of a region of an axon will cause the depolarization of the membrane further down the axon as ions diffuse in the extracellular fluid. This leads to a cascading action potential that progresses along the axon. This cascading action potential is the mechanism for neural signals, allowing for the transmission of information thorough the nervous system. As individual action potentials do not vary in duration or voltages, nerves will use the frequency of action potentials to communicate the magnitude of the signal. For example, a large muscle contraction will occur in response to a rapid series of action potentials, while a small muscle contraction will occur following a lower frequency signal.

The neural control described in this section presents some important factors for human robotic simulation. Since nerve signals occur through a cascading process of ion movement, a measurable delay will exist in between a signals origin in the brain and its receival in the muscle. This delay will not be constant per nerve length, as some nerves have additional structures that increase the speed of nerve signals and nerve diameter can influence the speed of action potential pulses. This signal delay must be included in the human robotic model for accurate simulation of movement.

Figure 2: Plot of the membrane potential of a nerve cell during a single action potential pulse

Figure 3: Animation of action potential progression

Figure 4: Structure of a Sarcomere

Muscle Mechanics and Signaling

Muscles are specialized structures that can create tensile forces through the changing shape of proteins. Individual muscle cells will contain many muscle fibers that will work in conjunction to create the tensile force. A sarcomere is the most basic unit of a muscle, which is then repeated axially and radially to form the muscle fiber. Each sarcomere has a central protein called myosin surrounded by six actin strands. The myosin strand has hundreds of small structures called heads which extend out radially from the fiber body. These heads can switch between a high energy and low energy state following the hydrolyzation of an ATP molecule bonded to the myosin head (the hydrolyzed molecule is ADP). The myosin head can also bond to its corresponding actin filament, however, another protein called tropomyosin blocks the bonding point on the actin filament.

Muscle actuation begins with a release of calcium ions into the muscle fibers. These ions will bond to the tropomyosin, revealing the binding point to the myosin head. Myosin heads that are in their high energy states will then bond to the actin filament. Bonding with the actin filament will release the ADP molecule from the myosin head which causes the myosin head to switch to its low energy configuration. This change from the high energy to low energy configuration will pull the actin filament towards the center of the sarcomere, creating a tensile force. The myosin head will remain bonded to the actin filament until a new ATP molecule bonds. The ATP molecule can then hydrolyze and change the myosin head to its high energy state. This process will repeat until ion pumps remove the calcium ions from the muscle tissue.

All muscle tissues actuate through this interaction of actin and myosin, however they will not be able to generate their full force at all times. Sarcomeres are most efficient at medium lengths, and will lose the ability to generate force at long or short lengths. The speed of muscle contraction will also affect the force a muscle can generate, with slower movement allowing for stronger tensile forces. 

Muscle fibers also exhibit a delay in generating force, with a quick ramping up of force in response to motor neuron pulses. An individual neuron pulse causes the muscle to twitch. A series of neuron signals will lead to a series of muscle twitches, which may integrate into a consistent force. This integration of twitches is called muscle twitch summation. Muscles fibers may also exhibit different muscle twitch characteristics, with slow twitch muscles taking longer to reach it's peak force compared to fast twitch muscles.

In addition to the mechanics of muscle contraction, muscle recruitment plays a role in the Neuromechanics of movement. Motor neurons interact with certain muscle fibers, creating a motor unit. Each motor unit may differ in size and fast/slow twitch composition. So, when a movement is communicated by the brain only some motor units may be activated. The current muscle recruitment theory that when performing an unknown movement, motor units will be recruited starting with the small/precise motor units. Gradually, larger motor units will be recruited until the desired motion is achieved.

The mechanics of muscle contraction will directly influence a human robotic model. Muscle twitch summation and motor unit recruitment will introduce delay in movement. Individual muscles may have different fast/slow twitch compositions which will affect the delay in actuation. Other mechanical parameters will need to be included in the human robotic model, such as inertia, tissue stiffness, and viscoelastic properties of the muscle.

Pathfinding and "Muscle Memory"

Movement in the human body occurs in two spaces simultaneously: the joint space and the linear space. The joint space defines the position of the body as a function of joint angles. This space is important in the simulation of movement as muscle contraction creates rotational movements about the joints. Joint angles and segment lengths can fully define the position of the arm in the work space, but experiments have shown that the human brain percieves movement in the linear space. Meaning, if moving from point A to point B, the x and y position of the hand will move smoothly between those points even if the joints do not move smoothly. Various approximations have been proposed to model pathfinding, the model described in this report uses a minimum-jerk method, i.e., the 3rd derivative of the x and y positions are minimized over the time of the movement. Alternative pathfinding models include minimum energy optimization, and sensorimotor primitives.

This understanding of pathfinding is essential in the development of a human robot simulation. Pathfinding is first calculated in the linear space then transformed to the joint space for simulation.

Human movement studies have shown that healthy individuals will gradually optimize repetitive movement. In essence, first attempts of a new movement will be clumsy as the brain best approximates what muscles and motor units should be recruited to move from A to B. If the movement is repeated, the recruitment of muscles and motor units will be optimized to most efficiently perform the desired movement. This optimization of movement can be simulated, with results being useful for therapy development and quantification of motor disabilities. The model described in this report simulates learned movements only. A future report can review my model that simulates movement learning.

Overview of the Human Robot Model of the Neuromechanics of Movement

The process map below shows the general composition of the model and its comprising modules. As stated before, I have chosen not to make my source code available due to its similarity to assignments given in the "Neuromechanics of Movement" course. 

Figure 4: Process map of human robot model

The model simulates the movement of the hand travelling between two points. Dimensions and material mechanics are included as constants. The model is simplified as the two links simulating the upper and lower with their corresponding shoulder and elbow joints. Figure 5 illustrates model results as a plot of linear position (task space), joint position, and as a 2 link arm illustration. Movement is assumed to occur in a horizontal plane, eliminating any gravity terms. The movement is expected to occur within a set time period, but the simulation is allowed to continue past this duration to capture additional movement of the hand.

There are two control mechanisms for movement in the model: feedforward and feedback. A feedforward control generates a muscle force profile based solely on the start and end points with no knowledge of the environment in which the movement is performed or the position outside of the starting point. A feedforward control system is adequate if the movement is performed in a space without any external forces (null field). The feedback control system will compare the position of the arm at each time step with the desired movement and create trajectory correcting torques. The full model combines these control schemes, more accurately mimicking the brains ability to utilize muscle memory and path correcting behavior.

Figure 5: Illustration of movement plots in task space, joint space, and arm configuration.

Various parameters appear in the model that are derived from experiments. These parameters can change based on position, speed, and forces. The joint space stiffness matrix, K, is a 2x2 matrix and a function of the joint torque. The joint space stiffness matrix, D (2x2), is estimated from the stiffness matrix and joint angular velocity. Joint space inertia, H (2x2), is a function of joint position. Centripetal and Coriolis effects are combined into a single matrix C (2x2) which is a function of joint position and velocity.

The model allows for the introduction of external forces in two ways. Random perturbations can be introduced which will apply a force to the hand of a random magnitude and direction at each time step. An active oppositional force can be simulated which will apply a force to the hand of a constant magnitude pointing directly opposite from the end point at each step.

Resulting plots show the position of the hand in linear space. As the feedforward model cannot adapt to external forces, only the null field simulation should show a successful movement between start and end points. The feedback model should be capable of reaching the end point with sufficient time. The full control simulation should be able to complete all movements quicker than the feedback model.

Results

The model was run simulating the movement if the arm in 2D space from an initial location of (0, 0.1) m to (0.4, 0) m. The movement is simulated in four conditions: 1) Simple movement, 2) Movement with random small perturbations, 3) Movement with an active oppositional force, 4) Movement with an active oppositional force with random small perturbations. The simulation also contains results for three control methods: 1) Feedforward only, 2) Feedback only, 3) Feedforward and feedback (this is the final model). I have included results for simulations using only feedback or feedforward controls because the full model has negligible differences between the four conditions. Including the feedforward/feedback models also demonstrates the robust nature of the full model as many conditions simulated diverge without full control.

Discussion and Future Work

The movement profiles simulated by the human robot model look similar to the trajectories performed by study participants found in "Human Robotics" [1]. The model can by further evolved by including a third dimension, though additional gravity terms will be needed. Additional joints can be added to simulate other movements. Other models developed in the neuromechanical courses simulate learning and signal delay, these can be included in the current model to increase its usability.

A full neuromechanical model of the human body is a time consuming endeavor with many unknowns required. A full model can help with control design, exoskeletal movement, human tracking, and physical therapy. The current model is considered a starting point for future work that can be refined and improved with additional modules and models.