<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing DTD v2.3 20070202//EN" "journalpublishing.dtd">
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" article-type="research-article">
<front>
<journal-meta>
<journal-id journal-id-type="publisher-id">Front. Neurosci.</journal-id>
<journal-title>Frontiers in Neuroscience</journal-title>
<abbrev-journal-title abbrev-type="pubmed">Front. Neurosci.</abbrev-journal-title>
<issn pub-type="epub">1662-453X</issn>
<publisher>
<publisher-name>Frontiers Media S.A.</publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="doi">10.3389/fnins.2018.00159</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Neuroscience</subject>
<subj-group>
<subject>Original Research</subject>
</subj-group>
</subj-group>
</article-categories>
<title-group>
<article-title>A Control Scheme That Uses Dynamic Postural Synergies to Coordinate a Hybrid Walking Neuroprosthesis: Theory and Experiments</article-title>
</title-group>
<contrib-group>
<contrib contrib-type="author">
<name><surname>Alibeji</surname> <given-names>Naji A.</given-names></name>
<xref ref-type="aff" rid="aff1"><sup>1</sup></xref>
<uri xlink:href="http://loop.frontiersin.org/people/191900/overview"/>
</contrib>
<contrib contrib-type="author">
<name><surname>Molazadeh</surname> <given-names>Vahidreza</given-names></name>
<xref ref-type="aff" rid="aff2"><sup>2</sup></xref>
<uri xlink:href="http://loop.frontiersin.org/people/495884/overview"/>
</contrib>
<contrib contrib-type="author">
<name><surname>Dicianno</surname> <given-names>Brad E.</given-names></name>
<xref ref-type="aff" rid="aff2"><sup>2</sup></xref>
</contrib>
<contrib contrib-type="author" corresp="yes">
<name><surname>Sharma</surname> <given-names>Nitin</given-names></name>
<xref ref-type="aff" rid="aff2"><sup>2</sup></xref>
<xref ref-type="aff" rid="aff3"><sup>3</sup></xref>
<xref ref-type="corresp" rid="c001"><sup>&#x0002A;</sup></xref>
<uri xlink:href="http://loop.frontiersin.org/people/191261/overview"/>
</contrib>
</contrib-group>
<aff id="aff1"><sup>1</sup><institution>Department of Biomedical Engineering, Case Western Reserve University</institution>, <addr-line>Cleveland, OH</addr-line>, <country>United States</country></aff>
<aff id="aff2"><sup>2</sup><institution>Department of Mechanical Engineering and Materials Science, University of Pittsburgh</institution>, <addr-line>Pittsburgh, PA</addr-line>, <country>United States</country></aff>
<aff id="aff3"><sup>3</sup><institution>Department of Bioengineering, University of Pittsburgh</institution>, <addr-line>Pittsburgh, PA</addr-line>, <country>United States</country></aff>
<author-notes>
<fn fn-type="edited-by"><p>Edited by: Irina N. Beloozerova, Barrow Neurological Institute (BNI), United States</p></fn>
<fn fn-type="edited-by"><p>Reviewed by: Shinya Aoi, Kyoto University, Japan; Boris Prilutsky, Georgia Institute of Technology, United States</p></fn>
<corresp id="c001">&#x0002A;Correspondence: Nitin Sharma <email>nis62&#x00040;pitt.edu</email></corresp>
<fn fn-type="other" id="fn001"><p>This article was submitted to Neuroprosthetics, a section of the journal Frontiers in Neuroscience</p></fn></author-notes>
<pub-date pub-type="epub">
<day>10</day>
<month>04</month>
<year>2018</year>
</pub-date>
<pub-date pub-type="collection">
<year>2018</year>
</pub-date>
<volume>12</volume>
<elocation-id>159</elocation-id>
<history>
<date date-type="received">
<day>01</day>
<month>09</month>
<year>2017</year>
</date>
<date date-type="accepted">
<day>27</day>
<month>02</month>
<year>2018</year>
</date>
</history>
<permissions>
<copyright-statement>Copyright &#x000A9; 2018 Alibeji, Molazadeh, Dicianno and Sharma.</copyright-statement>
<copyright-year>2018</copyright-year>
<copyright-holder>Alibeji, Molazadeh, Dicianno and Sharma</copyright-holder>
<license xlink:href="http://creativecommons.org/licenses/by/4.0/"><p>This is an open-access article distributed under the terms of the Creative Commons Attribution License (CC BY). The use, distribution or reproduction in other forums is permitted, provided the original author(s) and the copyright owner are credited and that the original publication in this journal is cited, in accordance with accepted academic practice. No use, distribution or reproduction is permitted which does not comply with these terms.</p></license>
</permissions>
<abstract>
<p>A hybrid walking neuroprosthesis that combines functional electrical stimulation (FES) with a powered lower limb exoskeleton can be used to restore walking in persons with paraplegia. It provides therapeutic benefits of FES and torque reliability of the powered exoskeleton. Moreover, by harnessing metabolic power of muscles via FES, the hybrid combination has a potential to lower power consumption and reduce actuator size in the powered exoskeleton. Its control design, however, must overcome the challenges of actuator redundancy due to the combined use of FES and electric motor. Further, dynamic disturbances such as electromechanical delay (EMD) and muscle fatigue must be considered during the control design process. This ensures stability and control performance despite disparate dynamics of FES and electric motor. In this paper, a general framework to coordinate FES of multiple gait-governing muscles with electric motors is presented. A muscle synergy-inspired control framework is used to derive the controller and is motivated mainly to address the actuator redundancy issue. Dynamic postural synergies between FES of the muscles and the electric motors were artificially generated through optimizations and result in key dynamic postures when activated. These synergies were used in the feedforward path of the control system. A dynamic surface control technique, modified with a delay compensation term, is used as the feedback controller to address model uncertainty, the cascaded muscle activation dynamics, and EMD. To address muscle fatigue, the stimulation levels in the feedforward path were gradually increased based on a model-based fatigue estimate. A Lyapunov-based stability approach was used to derive the controller and guarantee its stability. The synergy-based controller was demonstrated experimentally on an able-bodied subject and person with an incomplete spinal cord injury.</p>
</abstract>
<kwd-group>
<kwd>hybrid neuroprosthesis</kwd>
<kwd>synergy</kwd>
<kwd>nonlinear control</kwd>
<kwd>neuromuscular stimulation</kwd>
<kwd>Lyapunov</kwd>
</kwd-group>
<contract-num rid="cn001">1462876</contract-num>
<contract-num rid="cn001">1511139</contract-num>
<contract-num rid="cn002">R03HD086529-01</contract-num>
<contract-sponsor id="cn001">National Science Foundation<named-content content-type="fundref-id">10.13039/100000001</named-content></contract-sponsor>
<contract-sponsor id="cn002">National Institutes of Health<named-content content-type="fundref-id">10.13039/100000002</named-content></contract-sponsor>
<counts>
<fig-count count="12"/>
<table-count count="1"/>
<equation-count count="41"/>
<ref-count count="44"/>
<page-count count="15"/>
<word-count count="8665"/>
</counts>
</article-meta>
</front>
<body>
<sec sec-type="intro" id="s1">
<title>1. Introduction</title>
<p>Paraplegia in persons with spinal cord injury (SCI) impairs walking function and lowers their quality of life. Functional electrical stimulation (FES) and powered exoskeletons are two potential technologies that aim to reanimate lower-limb function in these persons. FES is an artificial application of electrical potential across a muscle group to produce a desired limb function and is prescribed as an intervention to rehabilitate or restore gait function in individuals with mobility-impairements (Peckham and Gray, <xref ref-type="bibr" rid="B30">1996</xref>). FES was used for the first time in the 1960s by Kantrowitz (<xref ref-type="bibr" rid="B17">1960</xref>) and Liberson et al. (<xref ref-type="bibr" rid="B26">1961</xref>) to produce gait patterns and to correct drop foot, respectively. Since then FES systems that use either percutaneous or surface electrodes have been used to produce gait (Bajd et al., <xref ref-type="bibr" rid="B4">1983</xref>; Marsolais and Kobetic, <xref ref-type="bibr" rid="B27">1987</xref>; Kralj and Bajd, <xref ref-type="bibr" rid="B25">1989</xref>; Granat et al., <xref ref-type="bibr" rid="B13">1993</xref>; Kobetic et al., <xref ref-type="bibr" rid="B24">1997</xref>; Hardin et al., <xref ref-type="bibr" rid="B16">2007</xref>). Despite this progress, the issue of rapid onset of FES-induced muscle fatigue remains unresolved. To reduce the effects of muscle fatigue, FES has been used in conjunction with a passive orthosis (Solomonow et al., <xref ref-type="bibr" rid="B38">1988</xref>; Goldfarb et al., <xref ref-type="bibr" rid="B12">2003</xref>; Farris et al., <xref ref-type="bibr" rid="B11">2009</xref>; Kobetic et al., <xref ref-type="bibr" rid="B23">2009</xref>). The addition of an orthosis mitigates fatigue effects by lowering stimulation duty cycle of FES because it can be used to support the user&#x00027;s weight during standing. However, the gait is still powered by FES during the swing movement and is affected by FES-induced muscle fatigue.</p>
<p>Powered exoskeletons by their virtue of generating high, rapid, and reliable torque are actively being used to provide gait therapy or restoration (Farris et al., <xref ref-type="bibr" rid="B10">2011</xref>; Neuhaus et al., <xref ref-type="bibr" rid="B29">2011</xref>; Strausser and Kazerooni, <xref ref-type="bibr" rid="B39">2011</xref>). Compared to sole FES-based walking systems, however, they may have higher power consumption to operate high torque motors. Bulky high torque motors and larger batteries increase weight and reduce wearability. A hybrid device that combines an FES system with a powered exoskeleton (del Ama et al., <xref ref-type="bibr" rid="B7">2012</xref>, <xref ref-type="bibr" rid="B6">2014</xref>; Ha et al., <xref ref-type="bibr" rid="B15">2012</xref>; Kirsch et al., <xref ref-type="bibr" rid="B21">2013</xref>, <xref ref-type="bibr" rid="B19">2014a</xref>) can overcome these limitations by reducing power consumption and actuator size in the powered exoskeleton. Moreover, the use of FES provides therapeutic benefits to a user.</p>
<p>In Quintero et al. (<xref ref-type="bibr" rid="B32">2012</xref>), FES was combined with a powered exoskeleton to control knee extension by using an adaptive gain-based controller and a PD controller. In del Ama et al. (<xref ref-type="bibr" rid="B6">2014</xref>) a cooperative knee joint controller was used in a hybrid knee-ankle-foot exoskeleton. The approach was tested on able-bodied subjects. A PID controller and an iterative learning controller were used to stimulate the quadriceps muscle and the knee flexors, respectively while a variable stiffness controller computed the knee electric motor stiffness based on the measured interaction torque between the user and the exoskeleton. In Ha et al. (<xref ref-type="bibr" rid="B14">2015</xref>), another cooperative control approach was used to coordinate hip motors with the stimulation of the hamstrings and knee motors with the stimulation of quadriceps muscle. The approach was tested on three subjects with SCI. The motors were controlled using a high-bandwidth position feedback and the FES control was modified by the difference between the estimated muscle torque and the reference torque profile.</p>
<p>In our previous research, a dynamic optimization method was used to optimize a hybrid walking system (FES &#x0002B; passive orthosis) (Sharma et al., <xref ref-type="bibr" rid="B36">2014</xref>). However, the method computes FES control inputs offline. Motivated to develop an optimization method for a real-time implementation, in Kirsch et al. (<xref ref-type="bibr" rid="B20">2014b</xref>), a linear model predictive control (MPC) method was proposed to dynamically allocate control in a hybrid knee joint control system composed of FES and an electric motor. However, a linearized musculoskeletal model was used for the linear MPC method, which may lose control performance outside the region of linearization. Therefore a nonlinear model predictive controller (NMPC) for an FES only case was developed in Kirsch and Sharma (<xref ref-type="bibr" rid="B22">2017</xref>) to elicit knee extension in able-bodied participants.</p>
<p>Aforementioned research papers in hybrid neuroprosthesis control focused primarily on coordinating FES and the motors at a single joint, even though some of these papers provided pioneering evidence of its benefits. Motivated to provide a general framework that coordinates stimulation of multiple muscles and exoskeleton actuators at multiple joints, a muscle synergy-inspired controllers were presented in Alibeji et al. (<xref ref-type="bibr" rid="B2">2015b</xref>, <xref ref-type="bibr" rid="B3">2017</xref>). In Alibeji et al. (<xref ref-type="bibr" rid="B2">2015b</xref>), simulations of the synergy inspired controller for single stepping motion were shown. This controller was further improved to incorporate effects of fatigue and electromechanical delay (EMD) in Alibeji et al. (<xref ref-type="bibr" rid="B3">2017</xref>). The experimental evidence of the synergy-inspired controller was provided using standing-cyclical experiments.</p>
<p>Motivated to extend the synergy-based controller, in this paper, dynamic postural synergies were used in a control scheme to generate walking with a hybrid exoskeleton. The dynamic postural synergies are artificial synergies designed to drive the system to key dynamic postures when activated. Then sequential activation of these dynamic postural synergies drive the system to produce gait motions. An adaptive update law was used to modify the synergy activation profiles to compensate for parametric changes in the model. A PID-based feedback component was used to make the controller robust to uncertainity and disturbances. The controller uses dynamic surface control (DSC) (Alibeji et al., <xref ref-type="bibr" rid="B3">2017</xref>) to avoid the use of acceleration signals in the control design. This DSC framework was also modified to include a delay compensation term to account for the EMD. To counter muscle fatigue effects, the control input terms were scaled by the fatigue estimate&#x00027;s inverse. In addition, a scaling factor gain is added to the feedforward component in case there is mismatch in model and subjects strength during experiments. Model-based estimators were designed to estimate the fatigue and activation state variables. The individual components of this controller have been validated experimentally and through simulations in Sharma et al. and Alibeji et al. and have been shown to provide improved performance compared with traditional PID controllers (Sharma et al., <xref ref-type="bibr" rid="B35">2011</xref>; Alibeji et al., <xref ref-type="bibr" rid="B1">2015a</xref>,<xref ref-type="bibr" rid="B2">b</xref>, <xref ref-type="bibr" rid="B3">2017</xref>). Finally, experiments were performed on an able-bodied subject and a person with an incomplete spinal cord injury to show the feasibility of coordinating multiple muscles and electric motors with the synergy-inspired controller.</p>
</sec>
<sec sec-type="methods" id="s2">
<title>2. Methods</title>
<sec>
<title>2.1. Walking hybrid neuroprosthesis model</title>
<p>Figure <xref ref-type="fig" rid="F1">1</xref> represents the 4-link model which is used for modeling a hybrid neuroprosthesis and a walker. The 4-link model considers a hybrid neuroprosthesis that uses electric motors and FES via surface electrodes, which non-selectively apply an external voltage potential to a muscle group to generate a contraction. The stance leg is modeled as one rigid segment simulating the locking of the knee joint and the ankle is fixed to the ground because only half of the gait cycle is considered. The swing leg has a thigh, shank, and foot segment but only the hip and knee joints have active actuation. The knee joint uses 3 actuators: motor and FES for flexion and extension of antagonistic muscle pairs. The model only uses electric motors at the hip joints because it can be difficult to stimulate the hip flexors and extensors, as these muscle are not easily accessible using surface electrodes. The trunk dynamics were neglected in the model because the use of a walker allows the user to stabilize their truck. However, the model assumes the trunk is fixed at the vertical orientation. The walker is modeled as a moment acting on the stance leg to help propel the body forward and also to keep it upright. The lower limb model is given as:</p>
<disp-formula id="E1"><label>(1)</label><mml:math id="M1"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mi>M</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover><mml:mo>&#x0002B;</mml:mo><mml:mi>C</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>q</mml:mi><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo>&#x0002B;</mml:mo><mml:mi>G</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>&#x0002B;</mml:mo><mml:mi>f</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>q</mml:mi><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mo>&#x00393;</mml:mo></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mo>&#x00393;</mml:mo></mml:mrow><mml:mrow><mml:mi>e</mml:mi><mml:mi>x</mml:mi><mml:mi>t</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mo>&#x00393;</mml:mo><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where <inline-formula><mml:math id="M2"><mml:mi>q</mml:mi><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mn>4</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula> are the angular positions, velocities, and accelerations of the leg segments, respectively. In (1), <italic>M</italic>(<italic>q</italic>) &#x02208; &#x0211D;<sup>4&#x000D7;4</sup> is the combined inertia of the hybrid neuroprosthesis and human limbs, <inline-formula><mml:math id="M3"><mml:mi>C</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>q</mml:mi><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mn>4</mml:mn><mml:mo>&#x000D7;</mml:mo><mml:mn>4</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula> is the centripetal/Coriolis matrix, <italic>G</italic>(<italic>q</italic>) &#x02208; &#x0211D;<sup>4</sup> is the gravity vector, <inline-formula><mml:math id="M4"><mml:mi>f</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>q</mml:mi><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mn>4</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula> is the viscoelastic vector term that models the passive muscle dynamics, <inline-formula><mml:math id="M5"><mml:msub><mml:mrow><mml:mo>&#x00393;</mml:mo></mml:mrow><mml:mrow><mml:mi>e</mml:mi><mml:mi>x</mml:mi><mml:mi>t</mml:mi></mml:mrow></mml:msub><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mn>4</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula> is the torque generated at each joint due to contact with the ground and walker moment (<italic>M</italic><sub><italic>W</italic></sub>), and <inline-formula><mml:math id="M6"><mml:msub><mml:mrow><mml:mo>&#x00393;</mml:mo></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mn>4</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula> is any unmodeled effects or disturbances in the system. The active torques at the joints are generated by including the musculoskeletal dynamics due to FES (Popovi&#x00107; et al., <xref ref-type="bibr" rid="B31">1999</xref>), an electric motor attached at each joint, and the moment generated by the walker force. The torque term is defined as</p>
<disp-formula id="E2"><label>(2)</label><mml:math id="M7"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mo>&#x00393;</mml:mo><mml:mo>=</mml:mo><mml:mi>b</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>q</mml:mi><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mi>&#x003D5;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mi>&#x003BC;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where &#x003BC;(<italic>t</italic>) &#x02208; &#x0211D;<sup>4</sup> is the intermediate normalized activation vector containing activation states for the actuators, and is defined as</p>
<disp-formula id="E3"><mml:math id="M8"><mml:mrow><mml:mi>&#x003BC;</mml:mi><mml:mo>&#x0225C;</mml:mo><mml:msup><mml:mrow><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:mtable style="text-align:axis;" equalrows="false" columnlines="none none none" equalcolumns="false" class="array"><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:mi>f</mml:mi><mml:mi>x</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mtd><mml:mtd><mml:msub><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:mi>e</mml:mi><mml:mi>x</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mtd><mml:mtd><mml:msub><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>h</mml:mi></mml:mrow><mml:mrow><mml:mi>m</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mtd><mml:mtd><mml:msub><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:mi>m</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mtd></mml:mtr></mml:mtable></mml:mrow><mml:mo>]</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mtext class="textrm" mathvariant="normal">T</mml:mtext></mml:mrow></mml:msup><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>
<p>where, &#x003BC;<sub><italic>k</italic><sub><italic>fx</italic></sub></sub> &#x02208; &#x0211D; is knee flexor muscle activation, &#x003BC;<sub><italic>k</italic><sub><italic>ex</italic></sub></sub> &#x02208; &#x0211D; is knee extensor muscle activation, &#x003BC;<sub><italic>k</italic><sub><italic>m</italic></sub></sub> &#x02208; &#x0211D; is normalized current for the knee motor and &#x003BC;<sub><italic>h</italic><sub><italic>m</italic></sub></sub> &#x02208; &#x0211D; is normalized current for the hip motor. In (2), &#x003D5;(<italic>t</italic>) &#x02208; &#x0211D;<sup>4&#x000D7;4</sup> is the fatigue matrix that contains the fatigue factor corresponding to each stimulated muscle and is defined as</p>
<disp-formula id="E4"><mml:math id="M9"><mml:mrow><mml:mi>&#x003D5;</mml:mi><mml:mo>&#x0225C;</mml:mo><mml:mi>d</mml:mi><mml:mi>i</mml:mi><mml:mi>a</mml:mi><mml:mi>g</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:mtable style="text-align:axis;" equalrows="false" columnlines="none none none" equalcolumns="false" class="array"><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:mi>f</mml:mi><mml:mi>x</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mtd><mml:mtd><mml:msub><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:mi>e</mml:mi><mml:mi>x</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mtd><mml:mtd><mml:mn>1</mml:mn></mml:mtd><mml:mtd><mml:mn>1</mml:mn></mml:mtd></mml:mtr></mml:mtable></mml:mrow><mml:mo>]</mml:mo></mml:mrow></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>
<p>and <inline-formula><mml:math id="M10"><mml:mi>b</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>q</mml:mi><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mn>4</mml:mn><mml:mo>&#x000D7;</mml:mo><mml:mn>4</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula> is the control gain matrix defined as</p>
<disp-formula id="E5"><label>(3)</label><mml:math id="M11"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mi>b</mml:mi><mml:mo>=</mml:mo><mml:msup><mml:mrow><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:mtable style="text-align:axis;" equalrows="false" columnlines="none none none" equalcolumns="false" class="array"><mml:mtr><mml:mtd><mml:mn>0</mml:mn></mml:mtd><mml:mtd><mml:mn>0</mml:mn></mml:mtd><mml:mtd><mml:msub><mml:mrow><mml:mi>&#x003C8;</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:mi>f</mml:mi><mml:mi>x</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mtd><mml:mtd><mml:mn>0</mml:mn></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mn>0</mml:mn></mml:mtd><mml:mtd><mml:mn>0</mml:mn></mml:mtd><mml:mtd><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003C8;</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:mi>e</mml:mi><mml:mi>x</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mtd><mml:mtd><mml:mn>0</mml:mn></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mn>0</mml:mn></mml:mtd><mml:mtd><mml:msub><mml:mrow><mml:mi>&#x003BA;</mml:mi></mml:mrow><mml:mrow><mml:mi>h</mml:mi></mml:mrow></mml:msub></mml:mtd><mml:mtd><mml:mn>0</mml:mn></mml:mtd><mml:mtd><mml:mn>0</mml:mn></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mn>0</mml:mn></mml:mtd><mml:mtd><mml:mn>0</mml:mn></mml:mtd><mml:mtd><mml:msub><mml:mrow><mml:mi>&#x003BA;</mml:mi></mml:mrow><mml:mrow><mml:mi>k</mml:mi></mml:mrow></mml:msub></mml:mtd><mml:mtd><mml:mn>0</mml:mn></mml:mtd></mml:mtr></mml:mtable></mml:mrow><mml:mo>]</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<fig id="F1" position="float">
<label>Figure 1</label>
<caption><p>A 4-link gait model is used to represent a subject taking a step in a hybrid neuroprosthesis while using a walker.</p></caption>
<graphic xlink:href="fnins-12-00159-g0001.tif"/>
</fig>
<p>In (3), &#x003C8;<sub><italic>i</italic><sub><italic>fx</italic></sub></sub>, &#x003C8;<sub><italic>i</italic><sub><italic>ex</italic></sub></sub> are the torque-length and torque-velocity relationships of the flexor and extensor muscles and the conversion constants (current to torque) of the electric-motor drives is &#x003BA;<sub><italic>i</italic></sub>.</p>
<p>The activation state is governed by the following first order differential equation</p>
<disp-formula id="E6"><label>(4)</label><mml:math id="M12"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003C9;</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub><mml:msub><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003C9;</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub><mml:msub><mml:mrow><mml:mi>u</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003C4;</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where subscripts <italic>i</italic> &#x0003D; <italic>h, k</italic> stand for the hip and knee joints of the swing leg and (<italic>j</italic> &#x0003D; <italic>fx, ex, m</italic>) for the type of actuator. In (4), <inline-formula><mml:math id="M13"><mml:msub><mml:mrow><mml:mi>&#x003C9;</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mo>&#x0002B;</mml:mo></mml:mrow></mml:msup></mml:math></inline-formula> is the actuator decay constant, <italic>u</italic><sub><italic>i</italic><sub><italic>j</italic></sub></sub> is the normalized input, and &#x003C4;<sub><italic>i</italic><sub><italic>j</italic></sub></sub> is the input delay.</p>
<p>The fatigue dynamics of the muscles, &#x003D5;<sub><italic>i</italic><sub><italic>j</italic></sub></sub> &#x02208; &#x0211D; is generated from the first order differential equation (Riener et al., <xref ref-type="bibr" rid="B33">1996</xref>)</p>
<disp-formula id="E7"><label>(5)</label><mml:math id="M14"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mfrac><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>T</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>f</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mrow></mml:mfrac><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mrow><mml:mstyle displaystyle="true"><mml:msub><mml:mrow><mml:mo class="qopname">min</mml:mo></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mstyle></mml:mrow></mml:msub><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:msub><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub><mml:mo>&#x0002B;</mml:mo><mml:mfrac><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>T</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>r</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mrow></mml:mfrac><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mn>1</mml:mn><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mn>1</mml:mn><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where &#x003D5;<sub>min</sub> &#x02208; (0, 1) is the unknown minimum fatigue constant of a muscle, and <italic>T</italic><sub><italic>f</italic></sub>, <inline-formula><mml:math id="M15"><mml:msub><mml:mrow><mml:mi>T</mml:mi></mml:mrow><mml:mrow><mml:mi>r</mml:mi></mml:mrow></mml:msub><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mo>&#x0002B;</mml:mo></mml:mrow></mml:msup></mml:math></inline-formula> are unknown time constants for fatigue and recovery in the muscle, respectively. Because &#x003BC; &#x02208; [<italic>u</italic><sub><italic>min</italic></sub>, <italic>u</italic><sub><italic>max</italic></sub>] for muscles, it can be shown that &#x003D5; &#x02208; [&#x003D5;<sub>min</sub>, 1], where &#x003D5; &#x0003D; 1 when the muscle is fully rested, and &#x003D5; &#x0003D; &#x003D5;<sub>min</sub> when the muscle is fully fatigued. The fatigue state for the motors in the fatigue matrix are set to one because the motors do not fatigue.</p>
<p>The stimulation applied to the muscle is bounded by two stimulation levels <italic>v</italic><sub><italic>min</italic></sub> and <italic>v</italic><sub><italic>max</italic></sub> to avoid under/over stimulating the muscles. This allows the normalization of the input function <italic>u</italic>(<italic>t</italic>) &#x02208; &#x0211D;<sup>4</sup>, which is modeled by a piecewise linear recruitment curve (Schauer et al., <xref ref-type="bibr" rid="B34">2005</xref>), as</p>
<disp-formula id="E8"><label>(6)</label><mml:math id="M16"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd columnalign="left"><mml:mi>u</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mi>s</mml:mi><mml:mi>a</mml:mi><mml:mi>t</mml:mi><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:mi>v</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mo>]</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mrow><mml:mo>{</mml:mo><mml:mtable style="text-align:axis;" equalrows="false" columnlines="none" equalcolumns="false" class="array"><mml:mtr><mml:mtd columnalign="left"><mml:mn>0</mml:mn><mml:mtext>&#x000A0;&#x000A0;&#x000A0;&#x000A0;</mml:mtext></mml:mtd><mml:mtd columnalign="left"><mml:mi>v</mml:mi><mml:mo>&#x0003C;</mml:mo><mml:msub><mml:mrow><mml:mi>v</mml:mi></mml:mrow><mml:mrow><mml:mi>m</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi></mml:mrow></mml:msub></mml:mtd></mml:mtr><mml:mtr><mml:mtd columnalign="left"><mml:mfrac><mml:mrow><mml:mi>v</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>v</mml:mi></mml:mrow><mml:mrow><mml:mi>m</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>v</mml:mi></mml:mrow><mml:mrow><mml:mi>m</mml:mi><mml:mi>a</mml:mi><mml:mi>x</mml:mi></mml:mrow></mml:msub><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>v</mml:mi></mml:mrow><mml:mrow><mml:mi>m</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mfrac><mml:mtext>&#x000A0;&#x000A0;&#x000A0;&#x000A0;</mml:mtext></mml:mtd><mml:mtd columnalign="left"><mml:msub><mml:mrow><mml:mi>v</mml:mi></mml:mrow><mml:mrow><mml:mi>m</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi></mml:mrow></mml:msub><mml:mo>&#x02264;</mml:mo><mml:mi>v</mml:mi><mml:mo>&#x02264;</mml:mo><mml:msub><mml:mrow><mml:mi>v</mml:mi></mml:mrow><mml:mrow><mml:mi>m</mml:mi><mml:mi>a</mml:mi><mml:mi>x</mml:mi></mml:mrow></mml:msub></mml:mtd></mml:mtr><mml:mtr><mml:mtd columnalign="left"><mml:mn>1</mml:mn><mml:mtext>&#x000A0;&#x000A0;&#x000A0;&#x000A0;</mml:mtext></mml:mtd><mml:mtd columnalign="left"><mml:mi>v</mml:mi><mml:mo>&#x0003E;</mml:mo><mml:msub><mml:mrow><mml:mi>v</mml:mi></mml:mrow><mml:mrow><mml:mi>m</mml:mi><mml:mi>a</mml:mi><mml:mi>x</mml:mi></mml:mrow></mml:msub></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where <inline-formula><mml:math id="M17"><mml:msub><mml:mrow><mml:mi>v</mml:mi></mml:mrow><mml:mrow><mml:mo class="qopname">min</mml:mo></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mi>v</mml:mi></mml:mrow><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">max</mml:mtext></mml:mstyle></mml:mrow></mml:msub><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mn>4</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula> are the minimum/maximum input magnitudes for each actuator (stimulation or motor) and <italic>v</italic>(<italic>t</italic>) &#x02208; &#x0211D;<sup>4</sup> is the input to the system. Based on (4) and (6), a linear differential inequality can be developed to show that &#x003BC; &#x02208; [<italic>u</italic><sub>min</sub>, <italic>u</italic><sub>max</sub>]. The <italic>u</italic><sub>min</sub>, <italic>u</italic><sub>max</sub> values are [0, 1] for muscles because they are unidirectional and [&#x02212;1, 1] for electric motors because they are bidirectional actuators.</p>
</sec>
<sec>
<title>2.2. Dynamic postural synergies</title>
<p>The purpose of muscle synergies in human motor control is to reduce the complexity of the system by reducing the input space and redundant DOF. In this paper, an alternative form of synergies called dynamic postural synergies are introduced. Unlike other methods which identify synergies by using statistical analysis tools on collected EMG data or simulation results, this form of synergies is computed independently to create a reduced input space for a system that can be used to more efficiently control a system. The dynamic postural synergies generated in this paper are artificial synergies that are designed to drive the system to key dynamic postures, which are defined as the joint positions at any moment during a movement pattern. Then motions such as walking can be segmented into a finite number of dynamic postures and a dynamic postural synergy can be computed for each dynamic posture. These artificial synergies can then be activated sequentially to drive the system from one dynamic posture to the next to create the original motion.</p>
<p>In Bajd et al. (<xref ref-type="bibr" rid="B4">1983</xref>) rudimentary gait was recreated in subjects with SCI by stimulating the peroneal nerve and then the quadriceps to produce two key dynamic postures; the withdrawal reflex and knee extension. The withdrawal reflex is a spinal reflex that protects the body from damaging stimuli and can be triggered by activating the pain receptors at the bottom of the foot or stimulating the peroneal nerve. The reflex consists of the flexing of the hip, knee, and ankle joints to immediately lift the leg off of the ground or the source of the pain. In this work, the artificial synergies, defined as <italic>W</italic> &#x02208; &#x0211D;<sup>4&#x000D7;2</sup>, that produce these dynamic postures were computed using dynamic optimizations. Then, another set of dynamic optimizations were used to find the optimal activation of these artificial synergies, defined as <inline-formula><mml:math id="M18"><mml:msub><mml:mrow><mml:mi>c</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula>, to reproduce gait trajectories, <italic>q</italic><sub><italic>d</italic></sub>. Below, the dynamics, excluding the fatigue factor &#x003D5;, are written in terms of the kinematic trajectories (<italic>q</italic><sub><italic>d</italic></sub>) and the activation state generated from the dynamic postural synergies and their optimal activation (i.e., &#x003BC;<sub><italic>d</italic></sub> &#x0003D; <italic>Wc</italic><sub><italic>d</italic></sub>) as</p>
<disp-formula id="E9"><label>(7)</label><mml:math id="M19"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mi>M</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo>&#x0002B;</mml:mo><mml:mi>C</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mrow><mml:msub><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mover accent="true"><mml:mrow><mml:msub><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo>&#x0002B;</mml:mo><mml:mi>G</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>&#x0002B;</mml:mo><mml:mi>f</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mrow><mml:msub><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mo>&#x02261;</mml:mo><mml:mi>b</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:msub><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>-</mml:mo><mml:msubsup><mml:mrow><mml:mo>&#x00393;</mml:mo></mml:mrow><mml:mrow><mml:mi>e</mml:mi><mml:mi>x</mml:mi><mml:mi>t</mml:mi></mml:mrow><mml:mrow><mml:mo>&#x0002A;</mml:mo></mml:mrow></mml:msubsup><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where <inline-formula><mml:math id="M21"><mml:msubsup><mml:mrow><mml:mo>&#x00393;</mml:mo></mml:mrow><mml:mrow><mml:mi>e</mml:mi><mml:mi>x</mml:mi><mml:mi>t</mml:mi></mml:mrow><mml:mrow><mml:mo>&#x0002A;</mml:mo></mml:mrow></mml:msubsup></mml:math></inline-formula> is the ground reaction forces and walker moment, <italic>M</italic><sub><italic>W</italic></sub>, resulting from the optimal trajectories (<italic>q</italic><sub><italic>d</italic></sub>).</p>
<sec>
<title>2.2.1. Computing the synergies</title>
<p>The dynamic postural synergies are computed using optimizations that use the 4-link walking model in (1). The 4-link walking model was modified to reflect the hybrid neuroprosthesis testbed, therefore, only the hip motors, knee motors, and the antagonistic muscle pairs of the knee joint are used. The parameters used for this model were taken from Popovi&#x00107; et al. (<xref ref-type="bibr" rid="B31">1999</xref>) for an able bodied person. Optimizations were conducted to compute the synergies that distribute the effort to the 4 inputs that minimize the error between the desired dynamic posture and the resulting motion. The joint angles for the desired dynamic postures were taken from the optimal trajectories in Alibeji et al. (<xref ref-type="bibr" rid="B2">2015b</xref>). For these optimizations, the convex cost function&#x00027;s objective was to minimize the dynamic posture&#x00027;s position error and minimize the activation states of the system and is defined as</p>
<disp-formula id="E11"><label>(8)</label><mml:math id="M22"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mstyle displaystyle="true"><mml:munder><mml:mrow><mml:mtext class="textrm" mathvariant="normal">min</mml:mtext></mml:mrow><mml:mrow><mml:mi>W</mml:mi></mml:mrow></mml:munder></mml:mstyle><mml:mo>&#x003A0;</mml:mo><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:munderover accentunder="false" accent="false"><mml:mrow><mml:mo>&#x0222B;</mml:mo></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mrow><mml:mi>f</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:munderover></mml:mstyle><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>E</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:msup><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:msub><mml:mrow><mml:mi>Q</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:msub><mml:mrow><mml:mi>E</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>&#x0002B;</mml:mo><mml:mi>&#x003BC;</mml:mi><mml:msup><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:msub><mml:mrow><mml:mi>R</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mi>&#x003BC;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mi>d</mml:mi><mml:mi>t</mml:mi></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="E12"><mml:math id="M23"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mtext class="textrm" mathvariant="normal">subject&#x000A0;to</mml:mtext><mml:mo>:</mml:mo><mml:mi>M</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover><mml:mo>&#x0002B;</mml:mo><mml:mi>C</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>q</mml:mi><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo>&#x0002B;</mml:mo><mml:mi>G</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>&#x0002B;</mml:mo><mml:mi>f</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>q</mml:mi><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mo>=</mml:mo><mml:mi>b</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>q</mml:mi><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mi>&#x003BC;</mml:mi><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mo>&#x00393;</mml:mo></mml:mrow><mml:mrow><mml:mi>e</mml:mi><mml:mi>x</mml:mi><mml:mi>t</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mi>&#x003BC;</mml:mi><mml:mo>&#x02208;</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mrow><mml:mi>l</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mrow><mml:mi>u</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo>]</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where dynamic posture&#x00027;s position error is defined as <italic>E</italic><sub>1</sub> &#x0003D; <italic>q</italic><sub><italic>dp</italic></sub> &#x02212; <italic>q</italic> and <italic>q</italic><sub><italic>dp</italic></sub> is the joint positions for the desired dynamic posture. In (8), <inline-formula><mml:math id="M24"><mml:msub><mml:mrow><mml:mi>Q</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mn>4</mml:mn><mml:mo>&#x000D7;</mml:mo><mml:mn>4</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula> is a weight on the position tracking error, the matrix <inline-formula><mml:math id="M25"><mml:msub><mml:mrow><mml:mi>R</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mn>4</mml:mn><mml:mo>&#x000D7;</mml:mo><mml:mn>4</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula> is a positive-definite matrix of weights on the activation vector, and the lower and upper bound on the activations are defined as &#x003BC;<sub><italic>l</italic></sub> and <inline-formula><mml:math id="M26"><mml:msub><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mrow><mml:mi>u</mml:mi></mml:mrow></mml:msub><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mn>4</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula>. Based on the selection of the input weight matrix <italic>R</italic><sub>1</sub>, the distribution of the effort from the motors or stimulation can be emphasized. These optimizations were performed by using Matlab&#x00027;s fmincon function (MathWorks, Inc., USA). The dynamic postural synergies computed through the optimization and the postures they produce; withdrawal reflex and knee extension, can be seen in Figure <xref ref-type="fig" rid="F2">2</xref>. The first dynamic postural synergy activates the hip motor to produce a moment at the hip in the flexion direction, and activates the knee motor and knee flexor to produce a moment at the knee in the flexion direction, to produce the withdrawal reflex. The second dynamic postural synergy activates the hip motor to produce a smaller moment at that hip to maintain the hip joint&#x00027;s position, and activates the knee motor and knee extensor to produce a moment at the knee to fully extend the knee joint.</p>
<fig id="F2" position="float">
<label>Figure 2</label>
<caption><p>The dynamic postural synergies computed through the optimizations and the dynamic postures they result in when activated.</p></caption>
<graphic xlink:href="fnins-12-00159-g0002.tif"/>
</fig>
</sec>
<sec>
<title>2.2.2. Computing the synergies&#x00027; activation</title>
<p>Unlike the synergies extracted through statistical methods, such as principal component analysis in Alibeji et al. (<xref ref-type="bibr" rid="B2">2015b</xref>), these dynamic postural synergies were determined using separate optimizations prior to these dynamic optimizations. Using these already computed dynamic postural synergies, these dynamic optimizations now compute the optimal synergies&#x00027; activations in order to complete a step.</p>
<p>In order to consistently and easily maintain the initial condition during experimentation, the subject will start the gait process while standing upright. Therefore, two sets of dynamic optimizations are computed; one for a half step (0.2 meters) and the second for a full step (0.4 meters).</p>
<p>These dynamic optimizations also include the double support phase (DSP) part of the gait sequence, i.e, when the body is supported by both legs. During the DSP the load transfers from the stance leg to the swing leg and the legs switch roles, i.e., the stance leg from the previous step becomes the swing leg for the next step and vice versa. To include the DSP, the swing leg has to the reach the desired position, where the swing leg makes contact with the ground, in the allotted time, <italic>t</italic><sub><italic>step</italic></sub> &#x0003D; 1 s., and maintain that position, i.e., maintain contact with the ground, for a predetermined duration, <italic>t</italic><sub><italic>DSP</italic></sub> &#x0003D; 0.5 s. For these optimizations, the convex cost function&#x00027;s objective was to minimize the synergy activation for the full duration and the final position error from <italic>t</italic> &#x0003D; <italic>t</italic><sub><italic>step</italic></sub> to <italic>t</italic> &#x0003D; <italic>t</italic><sub><italic>DSP</italic></sub>. The cost function is defined as</p>
<disp-formula id="E13"><label>(9)</label><mml:math id="M27"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mstyle displaystyle="true"><mml:munder><mml:mrow><mml:mtext class="textrm" mathvariant="normal">min</mml:mtext></mml:mrow><mml:mrow><mml:mi>c</mml:mi><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mi>M</mml:mi></mml:mrow><mml:mrow><mml:mi>w</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:munder></mml:mstyle><mml:mo>&#x003A0;</mml:mo><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:munderover accentunder="false" accent="false"><mml:mrow><mml:mo>&#x0222B;</mml:mo></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mrow><mml:mi>f</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:munderover></mml:mstyle><mml:mi>c</mml:mi><mml:msup><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:msub><mml:mrow><mml:mi>R</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mi>c</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mi>d</mml:mi><mml:mi>t</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:mstyle displaystyle="true"><mml:munderover accentunder="false" accent="false"><mml:mrow><mml:mo>&#x0222B;</mml:mo></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mrow><mml:mi>s</mml:mi><mml:mi>t</mml:mi><mml:mi>e</mml:mi><mml:mi>p</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mrow><mml:mi>f</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:munderover></mml:mstyle><mml:msub><mml:mrow><mml:mi>E</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:msup><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:msub><mml:mrow><mml:mi>Q</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:msub><mml:mrow><mml:mi>E</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mi>d</mml:mi><mml:mi>t</mml:mi></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mo>&#x003A0;</mml:mo></mml:mrow><mml:mrow><mml:mi>e</mml:mi><mml:mi>x</mml:mi><mml:mi>t</mml:mi><mml:mi>r</mml:mi><mml:mi>a</mml:mi></mml:mrow></mml:msub></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="E15"><mml:math id="M29"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mtext class="textrm" mathvariant="normal">subject&#x000A0;to</mml:mtext><mml:mo>:</mml:mo><mml:mi>c</mml:mi><mml:mo>&#x02208;</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>c</mml:mi></mml:mrow><mml:mrow><mml:mi>l</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mi>c</mml:mi></mml:mrow><mml:mrow><mml:mi>u</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo>]</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where final position error is defined as <italic>E</italic> &#x0003D; <italic>q</italic><sub><italic>f</italic></sub> &#x02212; <italic>q</italic>, <italic>q</italic><sub><italic>f</italic></sub> is the final joint positions for a complete step, <inline-formula><mml:math id="M30"><mml:msub><mml:mrow><mml:mi>R</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn><mml:mo>&#x000D7;</mml:mo><mml:mn>2</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula> is the positive-definite weight matrix for the synergy activation, <inline-formula><mml:math id="M31"><mml:msub><mml:mrow><mml:mi>Q</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mn>4</mml:mn><mml:mo>&#x000D7;</mml:mo><mml:mn>4</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula> is the positive-definite weight matrix for the the joint angle errors, and the lower and upper bound on the synergy activations are defined as <italic>c</italic><sub><italic>l</italic></sub> and <inline-formula><mml:math id="M32"><mml:msub><mml:mrow><mml:mi>c</mml:mi></mml:mrow><mml:mrow><mml:mi>u</mml:mi></mml:mrow></mml:msub><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula>. In the cost function <italic>t</italic><sub>0</sub> is the time in which the step begins and <italic>t</italic><sub><italic>f</italic></sub> is the final time for the step and is defined as <italic>t</italic><sub><italic>f</italic></sub> &#x0003D; <italic>t</italic><sub><italic>step</italic></sub> &#x0002B; <italic>t</italic><sub><italic>DSP</italic></sub>. The last variable in the cost function, &#x003A0;<sub><italic>extra</italic></sub> is an additional cost that is activated when certain undesirable events occur in the solution, e.g., the foot drags on the ground or the swing leg overshoots.</p>
<p>These optimizations were performed in Matlab using a genetic algorithm particle swarm optimization (GAPSO) method to minimize the cost function. The dynamic postural synergies, their activations computed through the optimizations, the joint trajectories they produce, and the gait sequence for the half step and full step can be seen in Figures <xref ref-type="fig" rid="F3">3</xref>, <xref ref-type="fig" rid="F4">4</xref>, respectively. From the gait sequences, it can be observed that the optimizations computed the synergy activations to complete the step, whether half or full, and maintained contact with the ground throughout the DSP while interacting with the ground reaction model. In addition, it can be seen that the dynamic postural synergies are activated in sequence as intended, i.e., for the first 0.5 s. primarily the first synergy is activated and then for the remainder of time primarily the second synergy is activated. Even though the model completes the step by around 1 s. the second synergy is still activated for the remainder of the time; this is to keep the knee from buckling since both legs are supporting the body during this phase.</p>
<fig id="F3" position="float">
<label>Figure 3</label>
<caption><p><bold>(A)</bold> The dynamic postural synergies (a) and their activation to produce a half step (b), <bold>(B)</bold> the joint trajectories they produce, <bold>(C)</bold> the gait sequence for the half step.</p></caption>
<graphic xlink:href="fnins-12-00159-g0003.tif"/>
</fig>
<fig id="F4" position="float">
<label>Figure 4</label>
<caption><p><bold>(A)</bold> The dynamic postural synergies (a) and their activation to produce a full step (b), <bold>(B)</bold> the joint trajectories they produce, <bold>(C)</bold> the gait sequence for the full step.</p></caption>
<graphic xlink:href="fnins-12-00159-g0004.tif"/>
</fig>
<p>Note that for the full step results, as the swing leg leaves the ground, the stance leg is tilted posteriorly which is not typical for normal gait. This is because this system does not currently include actuation at the ankle joints to produce push off. During normal gait the first part of the gait sequence is push off, as a result of the plantar-flexion of the ankle, to propel the body forward. The differences between gait with and without push off can be seen when comparing these results to the walking simulation results in Alibeji et al. (<xref ref-type="bibr" rid="B2">2015b</xref>) where ankle actuation is present. If the push off phase is to be included in this system, it would have its own dynamic postural synergy.</p>
</sec>
</sec>
<sec>
<title>2.3. Control development and stability analysis</title>
<sec>
<title>2.3.1. Control objective</title>
<p>The control objective is to track a continuously differentiable desired trajectory <inline-formula><mml:math id="M33"><mml:msub><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mn>4</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula>. The tracking error, <italic>e</italic> &#x02208; &#x0211D;<sup>4</sup>, is defined as</p>
<disp-formula id="E16"><label>(10)</label><mml:math id="M34"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mi>e</mml:mi><mml:mo>&#x0225C;</mml:mo><mml:msub><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo>-</mml:mo><mml:mi>q</mml:mi><mml:mo>.</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>To facilitate the control design and stability analysis, the auxiliary error signals <inline-formula><mml:math id="M35"><mml:msub><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>,</mml:mo><mml:mi>r</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mn>4</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula> are defined as</p>
<disp-formula id="E17"><label>(11)</label><mml:math id="M36"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>&#x0225C;</mml:mo><mml:msub><mml:mrow><mml:mi>&#x00117;</mml:mi></mml:mrow><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003B1;</mml:mi></mml:mrow><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub><mml:msub><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="E18"><label>(12)</label><mml:math id="M37"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mi>r</mml:mi><mml:mo>&#x0225C;</mml:mo><mml:msub><mml:mrow><mml:mi>&#x00117;</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003B1;</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:msub><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where <inline-formula><mml:math id="M38"><mml:msub><mml:mrow><mml:mi>&#x003B1;</mml:mi></mml:mrow><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003B1;</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mo>&#x0002B;</mml:mo></mml:mrow></mml:msup></mml:math></inline-formula> are control gains and <inline-formula><mml:math id="M39"><mml:msub><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mn>4</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula> is an auxiliary signal defined as Downey et al. (<xref ref-type="bibr" rid="B9">2015</xref>)</p>
<disp-formula id="E19"><label>(13)</label><mml:math id="M40"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub><mml:mo>&#x0225C;</mml:mo><mml:mstyle displaystyle="true"><mml:msubsup><mml:mrow><mml:mo>&#x0222B;</mml:mo></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub></mml:mrow><mml:mrow><mml:mi>t</mml:mi></mml:mrow></mml:msubsup></mml:mstyle><mml:mi>e</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>s</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mi>d</mml:mi><mml:mi>s</mml:mi><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>in order to incorporate integral control. To simplify the derivations, the following notations are used: (1) the time dependence of a function is dropped [e.g., <italic>e</italic>(<italic>t</italic>) &#x02192; <italic>e</italic>] and (2) a signal delayed by &#x003C4; is notated as a subscript [e.g., <italic>u</italic>(<italic>t</italic> &#x02212; &#x003C4;) &#x02192; <italic>u</italic><sub>&#x003C4;</sub>]. In addition, to facilitate the control development and stability analysis, the following assumptions were made.</p>
<p><bold>Assumption 1:</bold> Only motion in the sagittal plane is considered.</p>
<p><bold>Assumption 2:</bold> The unmodeled effects or disturbances, &#x003C4;<sub><italic>d</italic></sub>, are bounded as |&#x003C4;<sub><italic>d</italic></sub>| &#x02264; &#x003F5;<sub>1</sub> where <inline-formula><mml:math id="M41"><mml:msub><mml:mrow><mml:mi>&#x003F5;</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mo>&#x0002B;</mml:mo></mml:mrow></mml:msup></mml:math></inline-formula> is a constant.</p>
<p><bold>Assumption 3:</bold> The dynamic postural synergies, <italic>W</italic>, are bounded constants and their activation, <italic>c</italic><sub><italic>d</italic></sub>, are bounded vectors.</p>
<p><bold>Assumption 4:</bold> The desired trajectory, <inline-formula><mml:math id="M43"><mml:msub><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mi>n</mml:mi></mml:mrow></mml:msup></mml:math></inline-formula>, and its derivatives, <inline-formula><mml:math id="M44"><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mi>n</mml:mi></mml:mrow></mml:msup></mml:math></inline-formula>, are bounded.</p>
</sec>
<sec>
<title>2.3.2. Closed-loop error system</title>
<p>The open-loop error is derived by multiplying the time derivative of (12) with <italic>M</italic>(<italic>q</italic>) and substituting the dynamics in (1) and (2) to obtain</p>
<disp-formula id="E20"><label>(14)</label><mml:math id="M45"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mi>M</mml:mi><mml:mi>&#x01E59;</mml:mi><mml:mo>=</mml:mo><mml:mi>M</mml:mi><mml:mover accent="true"><mml:mrow><mml:msub><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover><mml:mo>&#x0002B;</mml:mo><mml:mi>C</mml:mi><mml:mover accent="true"><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo>&#x0002B;</mml:mo><mml:mi>G</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:mi>f</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:mi>d</mml:mi><mml:mo>-</mml:mo><mml:mi>b</mml:mi><mml:mi>&#x003D5;</mml:mi><mml:mi>&#x003BC;</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:mi>M</mml:mi><mml:msub><mml:mrow><mml:mi>&#x003B1;</mml:mi></mml:mrow><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub><mml:msub><mml:mrow><mml:mi>&#x000EB;</mml:mi></mml:mrow><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub><mml:mo>&#x0002B;</mml:mo><mml:mi>M</mml:mi><mml:msub><mml:mrow><mml:mi>&#x003B1;</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:msub><mml:mrow><mml:mi>&#x00117;</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>.</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where <italic>d</italic> is the lumped disturbances and is defined as <italic>d</italic> &#x0003D; &#x00393;<sub><italic>d</italic></sub> &#x0002B; &#x00393;<sub><italic>ext</italic></sub>. This expression can be written in the form</p>
<disp-formula id="E21"><label>(15)</label><mml:math id="M46"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mi>M</mml:mi><mml:mi>&#x01E59;</mml:mi><mml:mo>=</mml:mo><mml:mo>-</mml:mo><mml:mi>C</mml:mi><mml:mi>r</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:mi>&#x000D1;</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>N</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo>&#x0002B;</mml:mo><mml:mi>d</mml:mi><mml:mo>-</mml:mo><mml:mi>b</mml:mi><mml:mi>&#x003D5;</mml:mi><mml:mi>&#x003BC;</mml:mi><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mi>&#x003D5;</mml:mi><mml:msub><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mi>I</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where <inline-formula><mml:math id="M47"><mml:msub><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mi>b</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math id="M48"><mml:msub><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mi>I</mml:mi></mml:mrow></mml:msub><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mn>4</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula>, is defined as <inline-formula><mml:math id="M49"><mml:msub><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>I</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mrow></mml:msub><mml:mo>&#x0225C;</mml:mo><mml:msubsup><mml:mrow><mml:mo>&#x0222B;</mml:mo></mml:mrow><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003C4;</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mrow><mml:mrow><mml:mi>t</mml:mi></mml:mrow></mml:msubsup><mml:msub><mml:mrow><mml:mi>u</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>&#x003B8;</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mi>d</mml:mi><mml:mi>&#x003B8;</mml:mi></mml:math></inline-formula> for each actuator and &#x000D1; &#x02208; &#x0211D;<sup>4</sup>, is defined as &#x000D1; &#x0225C; <italic>N</italic> &#x02212; <italic>N</italic><sub><italic>d</italic></sub>. The auxiliary signals <inline-formula><mml:math id="M50"><mml:mi>N</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>q</mml:mi><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo>,</mml:mo><mml:mi>e</mml:mi><mml:mo>,</mml:mo><mml:mi>&#x00117;</mml:mi><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mi>I</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula> and <italic>N</italic><sub><italic>d</italic></sub>(<italic>t</italic>) are defined as</p>
<disp-formula id="E22"><mml:math id="M51"><mml:mrow><mml:mtable style="text-align:axis;" equalrows="false" equalcolumns="false" class="array"><mml:mtr><mml:mtd><mml:mi>N</mml:mi><mml:mo>&#x0225C;</mml:mo><mml:mi>M</mml:mi><mml:mover accent="true"><mml:mrow><mml:msub><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover><mml:mo>&#x0002B;</mml:mo><mml:mi>C</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo>&#x0002B;</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>&#x003B1;</mml:mi></mml:mrow><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003B1;</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:msub><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>-</mml:mo><mml:msubsup><mml:mrow><mml:mi>&#x003B1;</mml:mi></mml:mrow><mml:mrow><mml:mn>0</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msubsup><mml:msub><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>&#x0002B;</mml:mo><mml:mi>G</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:mi>f</mml:mi></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mo>&#x0002B;</mml:mo><mml:mi>M</mml:mi><mml:msub><mml:mrow><mml:mi>&#x003B1;</mml:mi></mml:mrow><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>r</mml:mi><mml:mo>-</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>&#x003B1;</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003B1;</mml:mi></mml:mrow><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:msub><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>&#x0002B;</mml:mo><mml:msubsup><mml:mrow><mml:mi>&#x003B1;</mml:mi></mml:mrow><mml:mrow><mml:mn>0</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msubsup><mml:msub><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mo>&#x0002B;</mml:mo><mml:mi>M</mml:mi><mml:msub><mml:mrow><mml:mi>&#x003B1;</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>r</mml:mi><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003B1;</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:msub><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mi>&#x003D5;</mml:mi><mml:msub><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mi>I</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:math></disp-formula>
<disp-formula id="E23"><mml:math id="M52"><mml:mrow><mml:msub><mml:mrow><mml:mi>N</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo>&#x0225C;</mml:mo><mml:mi>M</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo>&#x0002B;</mml:mo><mml:mi>C</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mrow><mml:msub><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mover accent="true"><mml:mrow><mml:msub><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo>&#x0002B;</mml:mo><mml:mi>G</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>&#x0002B;</mml:mo><mml:mi>f</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mrow><mml:msub><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>.</mml:mo></mml:mrow></mml:math></disp-formula>
<p>The term &#x000D1; in (15) can be upper bounded by using the Mean Value Theorem as</p>
<disp-formula id="E24"><label>(16)</label><mml:math id="M53"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mrow><mml:mo>&#x02016;</mml:mo><mml:mi>&#x000D1;</mml:mi><mml:mo>&#x02016;</mml:mo></mml:mrow><mml:mo>&#x02264;</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003C1;</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mrow><mml:mo>&#x02016;</mml:mo><mml:mi>z</mml:mi><mml:mo>&#x02016;</mml:mo></mml:mrow></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mrow><mml:mo>&#x02016;</mml:mo><mml:mi>z</mml:mi><mml:mo>&#x02016;</mml:mo></mml:mrow><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where &#x003C1;<sub>1</sub>(||<italic>z</italic>||) &#x02208; &#x0211D; is a positive monotonic bounded function and <italic>z</italic> &#x02208; &#x0211D;<sup>16</sup> is defined as</p>
<disp-formula id="E25"><mml:math id="M54"><mml:mrow><mml:mi>z</mml:mi><mml:mo>=</mml:mo><mml:msup><mml:mrow><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:mtable style="text-align:axis;" equalrows="false" columnlines="none none none" equalcolumns="false" class="array"><mml:mtr><mml:mtd><mml:msubsup><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mn>0</mml:mn></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msubsup></mml:mtd><mml:mtd><mml:msubsup><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msubsup></mml:mtd><mml:mtd><mml:msup><mml:mrow><mml:mi>r</mml:mi></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup></mml:mtd><mml:mtd><mml:msubsup><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mi>I</mml:mi></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msubsup></mml:mtd></mml:mtr></mml:mtable></mml:mrow><mml:mo>]</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:mo>.</mml:mo></mml:mrow></mml:math></disp-formula>
<p>Note that the auxiliary signal <italic>N</italic><sub><italic>d</italic></sub> is equal to the left hand side of the desired muscle dynamics in (7). Therefore, (15) can be rewritten as</p>
<disp-formula id="E26"><label>(17)</label><mml:math id="M55"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mi>M</mml:mi><mml:mi>&#x01E59;</mml:mi><mml:mo>=</mml:mo><mml:mo>-</mml:mo><mml:mi>C</mml:mi><mml:mi>r</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:mi>&#x000D1;</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:mi>D</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:msub><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo>-</mml:mo><mml:mi>b</mml:mi><mml:mi>&#x003D5;</mml:mi><mml:mi>&#x003BC;</mml:mi><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mi>&#x003D5;</mml:mi><mml:msub><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mi>I</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where <inline-formula><mml:math id="M56"><mml:mi>D</mml:mi><mml:mo>=</mml:mo><mml:mi>d</mml:mi><mml:mo>-</mml:mo><mml:msubsup><mml:mrow><mml:mo>&#x00393;</mml:mo></mml:mrow><mml:mrow><mml:mi>e</mml:mi><mml:mi>x</mml:mi><mml:mi>t</mml:mi></mml:mrow><mml:mrow><mml:mo>&#x0002A;</mml:mo></mml:mrow></mml:msubsup></mml:math></inline-formula>. After adding and subtracting the terms <inline-formula><mml:math id="M57"><mml:msub><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>^</mml:mo></mml:mover><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>,</mml:mo></mml:math></inline-formula> <inline-formula><mml:math id="M58"><mml:msub><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mi>&#x003D5;</mml:mi><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>,</mml:mo></mml:math></inline-formula> <inline-formula><mml:math id="M59"><mml:msub><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mi>&#x003D5;</mml:mi><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mo>^</mml:mo></mml:mover><mml:mo>,</mml:mo></mml:math></inline-formula> <italic>b</italic><sub><italic>d</italic></sub>&#x003D5;&#x003BC;, and <italic>b</italic><sub><italic>d</italic></sub>&#x003D5;&#x003BC;<sub><italic>f</italic></sub> where <inline-formula><mml:math id="M60"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mo>^</mml:mo></mml:mover><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mn>4</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula> and <inline-formula><mml:math id="M61"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>^</mml:mo></mml:mover><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mn>4</mml:mn><mml:mo>&#x000D7;</mml:mo><mml:mn>4</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula> are estimates of the activation state and the fatigue state, <inline-formula><mml:math id="M62"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mn>4</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula> is the desired activation to be later defined, and <inline-formula><mml:math id="M63"><mml:msub><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mrow><mml:mi>f</mml:mi></mml:mrow></mml:msub><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mn>4</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula> is a filtered desired activation, and rearranging the terms, (17) becomes</p>
<disp-formula id="E27"><label>(18)</label><mml:math id="M64"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mi>M</mml:mi><mml:mi>&#x01E59;</mml:mi><mml:mo>=</mml:mo><mml:mo>-</mml:mo><mml:mi>C</mml:mi><mml:mi>r</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mi>&#x003D5;</mml:mi><mml:mi>S</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mi>&#x003D5;</mml:mi><mml:mi>y</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:mi>&#x000D1;</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:mi>D</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:msub><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo>&#x0002B;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mo>&#x0007E;</mml:mo></mml:mover><mml:mi>&#x003D5;</mml:mi><mml:mi>&#x003BC;</mml:mi></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mi>&#x003D5;</mml:mi><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mo>&#x0007E;</mml:mo></mml:mover><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x0007E;</mml:mo></mml:mover><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>^</mml:mo></mml:mover><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where <inline-formula><mml:math id="M66"><mml:mover accent="true"><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mo>&#x0007E;</mml:mo></mml:mover><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mn>4</mml:mn><mml:mo>&#x000D7;</mml:mo><mml:mn>4</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula> is defined as <inline-formula><mml:math id="M67"><mml:mover accent="true"><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mo>&#x0007E;</mml:mo></mml:mover><mml:mo>&#x0225C;</mml:mo><mml:msub><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo>-</mml:mo><mml:mi>b</mml:mi></mml:math></inline-formula>, <inline-formula><mml:math id="M68"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x0007E;</mml:mo></mml:mover><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mn>4</mml:mn><mml:mo>&#x000D7;</mml:mo><mml:mn>4</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula> is defined as <inline-formula><mml:math id="M69"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x0007E;</mml:mo></mml:mover><mml:mo>&#x0225C;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>^</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:mi>&#x003D5;</mml:mi></mml:math></inline-formula>, and <inline-formula><mml:math id="M70"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mo>&#x0007E;</mml:mo></mml:mover><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mn>4</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula> is defined as <inline-formula><mml:math id="M71"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mo>&#x0007E;</mml:mo></mml:mover><mml:mo>&#x0225C;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mo>^</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:mi>&#x003BC;</mml:mi></mml:math></inline-formula>.</p>
<p>The estimates of the activation and fatigue states in (4) and (5) are generated through the following dynamics</p>
<disp-formula id="E29"><label>(19)</label><mml:math id="M72"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>&#x00175;</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>&#x00175;</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub><mml:msub><mml:mrow><mml:mi>u</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003C4;</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="E30"><label>(20)</label><mml:math id="M73"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mfrac><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>T</mml:mi></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>f</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mrow></mml:mfrac><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mstyle displaystyle="true"><mml:msub><mml:mrow><mml:mo class="qopname">min</mml:mo></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mstyle></mml:mrow></mml:msub><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub><mml:mo>&#x0002B;</mml:mo><mml:mfrac><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>T</mml:mi></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>r</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mrow></mml:mfrac><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mn>1</mml:mn><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mn>1</mml:mn><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where <inline-formula><mml:math id="M74"><mml:msub><mml:mrow><mml:mi>&#x00175;</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>T</mml:mi></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>f</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>T</mml:mi></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>r</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">and</mml:mtext></mml:mstyle><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">min</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:math></inline-formula> are bounded estimates of the real parameters that can be determined through system identification experiments (Kirsch, <xref ref-type="bibr" rid="B18">2016</xref>; Alibeji et al., <xref ref-type="bibr" rid="B3">2017</xref>). Note that these estimators are governed by first-order differential equations, thus the estimates are bounded as <inline-formula><mml:math id="M75"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mo>^</mml:mo></mml:mover><mml:mo>&#x02208;</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>u</mml:mi></mml:mrow><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">min</mml:mtext></mml:mstyle></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mi>u</mml:mi></mml:mrow><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">max</mml:mtext></mml:mstyle></mml:mrow></mml:msub></mml:mrow><mml:mo>]</mml:mo></mml:mrow></mml:math></inline-formula> and <inline-formula><mml:math id="M76"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>^</mml:mo></mml:mover><mml:mo>&#x02208;</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">min</mml:mtext></mml:mstyle></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mo>]</mml:mo></mml:mrow></mml:math></inline-formula>.</p>
<p>In (18), the surface error, <italic>S</italic> &#x02208; &#x0211D;<sup>4</sup>, is defined as</p>
<disp-formula id="E31"><label>(21)</label><mml:math id="M77"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mi>S</mml:mi><mml:mo>&#x0225C;</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mrow><mml:mi>f</mml:mi></mml:mrow></mml:msub><mml:mo>-</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mo>^</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mi>I</mml:mi></mml:mrow></mml:msub><mml:mo>.</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>The delay compensation term, <italic>e</italic><sub><italic>I</italic></sub>, is added to the surface error, <italic>S</italic>, to deal with the input delay in the actuator dynamics. The boundary layer error, <italic>y</italic> &#x02208; &#x0211D;<sup>4</sup>, for &#x003BC; is defined as</p>
<disp-formula id="E32"><label>(22)</label><mml:math id="M78"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mi>y</mml:mi><mml:mo>&#x0225C;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mrow><mml:mi>f</mml:mi></mml:mrow></mml:msub><mml:mo>.</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>The filtered desired activation &#x003BC;<sub><italic>f</italic></sub> is obtained by passing <inline-formula><mml:math id="M79"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:math></inline-formula> through a low-pass filter such as</p>
<disp-formula id="E33"><label>(23)</label><mml:math id="M80"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mi>&#x003B6;</mml:mi></mml:mrow><mml:mrow><mml:mi>f</mml:mi></mml:mrow></mml:msub><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>f</mml:mi></mml:mrow></mml:msub><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mrow><mml:mi>f</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>;</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mrow><mml:mi>f</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mn>0</mml:mn></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mn>0</mml:mn></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where <inline-formula><mml:math id="M81"><mml:msub><mml:mrow><mml:mi>&#x003B6;</mml:mi></mml:mrow><mml:mrow><mml:mi>f</mml:mi></mml:mrow></mml:msub><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mo>&#x0002B;</mml:mo></mml:mrow></mml:msup></mml:math></inline-formula> is the low-pass filter time constant.</p>
<p>To felicitate the control design the desired activation, <inline-formula><mml:math id="M82"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:math></inline-formula>, is defined as</p>
<disp-formula id="E34"><label>(24)</label><mml:math id="M83"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo>-</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msup><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>&#x003B6;</mml:mi></mml:mrow><mml:mrow><mml:mi>s</mml:mi><mml:mi>f</mml:mi></mml:mrow></mml:msub><mml:mi>W</mml:mi><mml:mi>&#x00109;</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:mi>k</mml:mi><mml:mi>r</mml:mi></mml:mrow><mml:mo>]</mml:mo></mml:mrow><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where &#x00109; &#x02208; &#x0211D;<sup>2</sup> is the estimate of <italic>c</italic><sub><italic>d</italic></sub>, <inline-formula><mml:math id="M84"><mml:msub><mml:mrow><mml:mi>&#x003B6;</mml:mi></mml:mrow><mml:mrow><mml:mi>s</mml:mi><mml:mi>f</mml:mi></mml:mrow></mml:msub><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mn>4</mml:mn><mml:mo>&#x000D7;</mml:mo><mml:mn>4</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula> is a control gain matrix and <italic>k</italic> &#x02208; &#x0211D;<sup>4&#x000D7;4</sup> is the feedback gain matrix that is chosen to only influence the electric motors.</p>
<p>In <inline-formula><mml:math id="M85"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:math></inline-formula>, the feedforward component, &#x003B6;<sub><italic>sf</italic></sub><italic>W&#x00109;</italic>, and the feedback component, <italic>kr</italic>, are scaled by the inverse of the fatigue estimate. This feature is included in the controller so that as a muscle fatigues, the stimulation input to that muscle increases gradually to counteract the effects of the fatigue. The estimate of the synergy activation updates according to the following update law with the projection algorithm (Dixon et al., <xref ref-type="bibr" rid="B8">2003</xref>).</p>
<disp-formula id="E35"><label>(25)</label><mml:math id="M86"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mover accent="true"><mml:mrow><mml:mi>&#x00109;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mtext class="textrm" mathvariant="normal">proj</mml:mtext><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>&#x0010B;</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo>&#x0002B;</mml:mo><mml:mi>F</mml:mi><mml:msup><mml:mrow><mml:mi>W</mml:mi></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:msubsup><mml:mrow><mml:mi>&#x003B6;</mml:mi></mml:mrow><mml:mrow><mml:mi>s</mml:mi><mml:mi>f</mml:mi></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msubsup><mml:msubsup><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msubsup><mml:mi>r</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where <italic>F</italic> &#x02208; &#x0211D;<sup>2&#x000D7;2</sup> is a symmetric positive definite gain matrix. After using (24), (18) becomes</p>
<disp-formula id="E36"><label>(26)</label><mml:math id="M87"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mi>M</mml:mi><mml:mi>&#x01E59;</mml:mi><mml:mo>=</mml:mo><mml:mo>-</mml:mo><mml:mi>C</mml:mi><mml:mi>r</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mi>&#x003D5;</mml:mi><mml:mi>S</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mi>&#x003D5;</mml:mi><mml:mi>y</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:mi>&#x000D1;</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:mi>D</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:msub><mml:mrow><mml:mi>&#x003B6;</mml:mi></mml:mrow><mml:mrow><mml:mi>s</mml:mi><mml:mi>f</mml:mi></mml:mrow></mml:msub><mml:mi>W</mml:mi><mml:mover accent="true"><mml:mrow><mml:mi>c</mml:mi></mml:mrow><mml:mo>&#x0007E;</mml:mo></mml:mover></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>I</mml:mi><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003B6;</mml:mi></mml:mrow><mml:mrow><mml:mi>s</mml:mi><mml:mi>f</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mi>W</mml:mi><mml:msub><mml:mrow><mml:mi>c</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo>&#x0002B;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mo>&#x0007E;</mml:mo></mml:mover><mml:mi>&#x003D5;</mml:mi><mml:mi>&#x003BC;</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mi>&#x003D5;</mml:mi><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mo>&#x0007E;</mml:mo></mml:mover></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x0007E;</mml:mo></mml:mover><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo>-</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msup><mml:msub><mml:mrow><mml:mi>&#x003B6;</mml:mi></mml:mrow><mml:mrow><mml:mi>s</mml:mi><mml:mi>f</mml:mi></mml:mrow></mml:msub><mml:mi>W</mml:mi><mml:mi>&#x00109;</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x0007E;</mml:mo></mml:mover><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo>-</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msup><mml:mi>k</mml:mi><mml:mi>r</mml:mi><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mi>k</mml:mi><mml:mi>r</mml:mi><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where <italic>I</italic> is the identity matrix and <inline-formula><mml:math id="M89"><mml:mover accent="true"><mml:mrow><mml:mi>c</mml:mi></mml:mrow><mml:mo>&#x0007E;</mml:mo></mml:mover><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula> is defined as</p>
<disp-formula id="E38"><mml:math id="M90"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>c</mml:mi></mml:mrow><mml:mo>&#x0007E;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:msub><mml:mrow><mml:mi>c</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo>-</mml:mo><mml:mi>&#x00109;</mml:mi><mml:mo>.</mml:mo></mml:mrow></mml:math></disp-formula>
<p>Using the Mean Value Theorem, Assumption 4, and the property of projection algorithm the following terms can be bounded as</p>
<disp-formula id="E39"><label>(27)</label><mml:math id="M91"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mrow><mml:mo>&#x02016;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mo>&#x0007E;</mml:mo></mml:mover><mml:mi>&#x003D5;</mml:mi><mml:mi>&#x003BC;</mml:mi><mml:mo>&#x02016;</mml:mo></mml:mrow><mml:mo>&#x02264;</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003C1;</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mrow><mml:mo>&#x02016;</mml:mo><mml:mi>z</mml:mi><mml:mo>&#x02016;</mml:mo></mml:mrow></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mrow><mml:mo>&#x02016;</mml:mo><mml:mi>z</mml:mi><mml:mo>&#x02016;</mml:mo></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mo>&#x02016;</mml:mo><mml:msub><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo>&#x02016;</mml:mo></mml:mrow><mml:mo>&#x02264;</mml:mo><mml:mi>&#x003B6;</mml:mi><mml:mo>,</mml:mo><mml:mrow><mml:mo>&#x02016;</mml:mo><mml:mi>D</mml:mi><mml:mo>&#x02016;</mml:mo></mml:mrow><mml:mo>&#x02264;</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003F5;</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="E40"><mml:math id="M92"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mrow><mml:mo>&#x02016;</mml:mo><mml:msub><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>I</mml:mi><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003B6;</mml:mi></mml:mrow><mml:mrow><mml:mi>s</mml:mi><mml:mi>f</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mi>W</mml:mi><mml:msub><mml:mrow><mml:mi>c</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo>&#x02016;</mml:mo></mml:mrow><mml:mo>&#x02264;</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003F5;</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mrow><mml:mo>&#x02016;</mml:mo><mml:msub><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x0007E;</mml:mo></mml:mover><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo>-</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msup><mml:msub><mml:mrow><mml:mi>&#x003B6;</mml:mi></mml:mrow><mml:mrow><mml:mi>s</mml:mi><mml:mi>f</mml:mi></mml:mrow></mml:msub><mml:mi>W</mml:mi><mml:mi>&#x00109;</mml:mi><mml:mo>&#x02016;</mml:mo></mml:mrow><mml:mo>&#x02264;</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003F5;</mml:mi></mml:mrow><mml:mrow><mml:mn>3</mml:mn></mml:mrow></mml:msub></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where &#x003C1;<sub>2</sub>(||<italic>z</italic>||) &#x02208; &#x0211D; is a positive monotonically increasing bounded function and <inline-formula><mml:math id="M93"><mml:msub><mml:mrow><mml:mi>&#x003F5;</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003F5;</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003F5;</mml:mi></mml:mrow><mml:mrow><mml:mn>3</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>&#x003B6;</mml:mi><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mo>&#x0002B;</mml:mo></mml:mrow></mml:msup></mml:math></inline-formula> are constants.</p>
<p>The surface error dynamics are derived by taking the time derivative of (21) and using (19), resulting in</p>
<disp-formula id="E41"><label>(28)</label><mml:math id="M94"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mi>&#x01E60;</mml:mi><mml:mo>=</mml:mo><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>f</mml:mi></mml:mrow></mml:msub><mml:mo>&#x0002B;</mml:mo><mml:mi>&#x00175;</mml:mi><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mo>^</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:mi>&#x00175;</mml:mi><mml:msub><mml:mrow><mml:mi>u</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x003C4;</mml:mi></mml:mrow></mml:msub><mml:mo>-</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>u</mml:mi><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>u</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x003C4;</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>.</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>Based on the subsequent stability analysis, the normalized input <italic>u</italic> is designed as</p>
<disp-formula id="E42"><label>(29)</label><mml:math id="M95"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mi>u</mml:mi><mml:mo>=</mml:mo><mml:mi>&#x003B2;</mml:mi><mml:mi>S</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>f</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where &#x003B2; &#x02208; &#x0211D;<sup>&#x0002B;</sup> is a control gain.</p>
<p>Therefore, the closed-loop surface error dynamics can be written as</p>
<disp-formula id="E43"><label>(30)</label><mml:math id="M97"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mi>&#x01E60;</mml:mi><mml:mo>=</mml:mo><mml:mo>-</mml:mo><mml:mi>&#x003B2;</mml:mi><mml:mi>S</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:mi>&#x00175;</mml:mi><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mo>^</mml:mo></mml:mover><mml:mo>&#x0002B;</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mn>1</mml:mn><mml:mo>-</mml:mo><mml:mi>&#x00175;</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:msub><mml:mrow><mml:mi>u</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x003C4;</mml:mi></mml:mrow></mml:msub><mml:mo>.</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>The boundary layer error dynamics are found by taking the time derivative of (22) and using (23), which results in</p>
<disp-formula id="E44"><label>(31)</label><mml:math id="M98"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mi>&#x01E8F;</mml:mi><mml:mo>=</mml:mo><mml:mi>&#x003B7;</mml:mi><mml:mo>-</mml:mo><mml:mfrac><mml:mrow><mml:mi>y</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>&#x003B6;</mml:mi></mml:mrow><mml:mrow><mml:mi>f</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mfrac><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where &#x003B7;(<italic>e, r, S, y, t</italic>) is a continuous nonlinear function defined as <inline-formula><mml:math id="M99"><mml:mi>&#x003B7;</mml:mi><mml:mo>=</mml:mo><mml:mfrac><mml:mrow><mml:mi>d</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi><mml:mi>t</mml:mi></mml:mrow></mml:mfrac><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>]</mml:mo></mml:mrow><mml:mo>.</mml:mo></mml:math></inline-formula> Based on the definition of <italic>u</italic> in (29), the control law <italic>v</italic> is designed as</p>
<disp-formula id="E45"><label>(32)</label><mml:math id="M100"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mi>v</mml:mi><mml:mo>=</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:mi>&#x003B2;</mml:mi><mml:mi>S</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:mfrac><mml:mrow><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo>-</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msup><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>&#x003B6;</mml:mi></mml:mrow><mml:mrow><mml:mi>s</mml:mi><mml:mi>f</mml:mi></mml:mrow></mml:msub><mml:mi>W</mml:mi><mml:mi>&#x00109;</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:mi>k</mml:mi><mml:mi>r</mml:mi></mml:mrow><mml:mo>]</mml:mo></mml:mrow><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mrow><mml:mi>f</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>&#x003B6;</mml:mi></mml:mrow><mml:mrow><mml:mi>f</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mfrac><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>u</mml:mi></mml:mrow><mml:mrow><mml:mi>m</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo>]</mml:mo></mml:mrow><mml:mfrac><mml:mrow><mml:mo>&#x025B3;</mml:mo><mml:mi>v</mml:mi></mml:mrow><mml:mrow><mml:mo>&#x025B3;</mml:mo><mml:mi>u</mml:mi></mml:mrow></mml:mfrac><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>v</mml:mi></mml:mrow><mml:mrow><mml:mo class="qopname">min</mml:mo></mml:mrow></mml:msub><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where &#x025B3;<italic>v</italic> &#x0003D; <italic>v</italic><sub>max</sub> &#x02212; <italic>v</italic><sub>min</sub> and &#x025B3;<italic>u</italic> &#x0003D; <italic>u</italic><sub>max</sub> &#x02212; <italic>u</italic><sub>min</sub>. The desired feedback activation, <italic>kr</italic>, defined in (24) can be expressed in standard PID form as <inline-formula><mml:math id="M101"><mml:msub><mml:mrow><mml:mi>K</mml:mi></mml:mrow><mml:mrow><mml:mi>P</mml:mi></mml:mrow></mml:msub><mml:mi>e</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>K</mml:mi></mml:mrow><mml:mrow><mml:mi>D</mml:mi></mml:mrow></mml:msub><mml:mi>&#x00117;</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>K</mml:mi></mml:mrow><mml:mrow><mml:mi>I</mml:mi></mml:mrow></mml:msub><mml:msubsup><mml:mrow><mml:mo>&#x0222B;</mml:mo></mml:mrow><mml:mrow><mml:mn>0</mml:mn></mml:mrow><mml:mrow><mml:mi>t</mml:mi></mml:mrow></mml:msubsup><mml:mi>e</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>&#x003B8;</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mi>d</mml:mi><mml:mi>&#x003B8;</mml:mi></mml:math></inline-formula> where <inline-formula><mml:math id="M102"><mml:msub><mml:mrow><mml:mi>K</mml:mi></mml:mrow><mml:mrow><mml:mi>P</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mi>K</mml:mi></mml:mrow><mml:mrow><mml:mi>D</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mi>K</mml:mi></mml:mrow><mml:mrow><mml:mi>I</mml:mi></mml:mrow></mml:msub><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mo>&#x0002B;</mml:mo></mml:mrow></mml:msup></mml:math></inline-formula> are the proportional, derivative, and integral control gains and are defined as <italic>K</italic><sub><italic>P</italic></sub> &#x0003D; <italic>k</italic>(&#x003B1;<sub>0</sub> &#x0002B; &#x003B1;<sub>1</sub>), <italic>K</italic><sub><italic>D</italic></sub> &#x0003D; <italic>k</italic>, and <italic>K</italic><sub><italic>I</italic></sub> &#x0003D; <italic>k&#x003B1;</italic><sub>0</sub>&#x003B1;<sub>1</sub>. The control schematic for the implementation of the overall controller is represented in Figure <xref ref-type="fig" rid="F5">5</xref>.</p>
<fig id="F5" position="float">
<label>Figure 5</label>
<caption><p>The control schematic for the implementation of the overall controller.</p></caption>
<graphic xlink:href="fnins-12-00159-g0005.tif"/>
</fig>
</sec>
</sec>
<sec>
<title>2.4. Finite state machine</title>
<p>The hybrid neuroprosthesis used for experimental demonstration uses 4 electric motors; one on each hip joint and knee joint, and 4 stimulation channels; the quadriceps and hamstrings of each leg. The hybrid neuroprosthesis is controlled using two of the adaptive synergy-based PID-DSC controller with delay compensation working in tandem to produce gait, one for each leg. The Finite State Machine, shown in Figure <xref ref-type="fig" rid="F6">6</xref>, is used to determine which trajectories and synergy activations of the gait sequence are used; i.e., either half right step (State 1), full left step (State 2), or full right step (State 3). In between the active states; State 1&#x02013;3, the standby state (State 0) is activated by default, in which the motors at the joints hold their positions and the synergy activations are set to zero. When a leg is activated in a state, it becomes the swing leg and its counterpart becomes the stance leg. When a leg becomes the stance leg the controller only uses feedback to track the stance hip trajectory and hold the position of the knee joint. The progression of the FSM is determined by the progression button, in which the first time it is pressed State 1 is activated, then each time it is pressed after that the even transitions activate State 2 and the odd transitions activate State 3. In addition to the progression button, there is a safety button which turns off all inputs when pressed.</p>
<fig id="F6" position="float">
<label>Figure 6</label>
<caption><p>The Finite State Machine determines the desired trajectories and synergy activations based on what state is activated; either half right step, full left step, or full right step. Then two controllers are used, one for each leg, which work in tandem to produce gait.</p></caption>
<graphic xlink:href="fnins-12-00159-g0006.tif"/>
</fig>
</sec>
<sec>
<title>2.5. Experimental demonstration</title>
<p>The hybrid neuroprosthesis testbed, shown in Figure <xref ref-type="fig" rid="F7">7</xref>, can be broken down into four primary components: an adjustable orthosis, electric motors, a stimulation unit, and an assistive support device. The orthosis is designed to be adjustable to comfortably fit a wide variety of body types while maintaining the alignment of the joints between the orthosis and subject. Custom motor mount brackets were fabricated to attach the electric motors at the joints of the orthosis. The electric motors (Harmonic Drive LLC, MA, USA) at the hip joints can generate a maximum torque of 50 Nm. The knee electric motor were EC90 brushless motors (Maxon Motor, Switzerland) combined with a Harmonic Gear CSD-25-100-2UH (Harmonic Drive LLC, MA, USA). The knee motor can generate a maximum torque of 56 Nm. A RehaStim 8-channel stimulator (Hasomed Inc., DE) was used to generate the current modulated biphasic pulse trains used to elicit muscle contractions. A set of transcutaneous electrodes was placed on the quadriceps and hamstring muscle groups. The current modulated pulse train with a frequency of 35 Hz and a 400 &#x003BC;s pulse width is typically used for all experiments. An assistive support device, called an E-Pacter (Rifton, USA), is used for the experiments to help the subjects maintain their balance and propel themselves forward. An xPC target (SpeedGoat, CH) was used to interface with the different sensors and motor drivers and implement the controller in real-time at 1 kHz. The control algorithms were coded in Simulink (MathWorks Inc, USA) and used Simulink&#x00027;s (MathWorks Inc, USA) real-time toolbox software running on a Windows machine (Intel Xeon 3.10 GHz processor). The hybrid neuroprosthesis is controlled using a button to control the progression of gait and an emergency stop button to stop all the inputs.</p>
<fig id="F7" position="float">
<label>Figure 7</label>
<caption><p>The walking hybrid neuroprosthesis and the gait support device used in the experimental demonstration of the synergy-based control system. This system uses an electric motor at the hip and knee joints of each leg and FES of the hamstrings and quadriceps muscle group of each leg.</p></caption>
<graphic xlink:href="fnins-12-00159-g0007.tif"/>
</fig>
<p>The overall control system was experimentally demonstrated on an able-bodied subject (male; 27 years old, height: 1.80 m, weight: 90 kg) and a person with an incomplete SCI (male; 41 years old, height 1.70 m, weight 70 kg, injury: T10 AIS A). For these experiments it is assumed that the behavior of the right and left leg are similar, therefore, both States 2 and 3 use the same synergies and activations computed in the previous sections. The optimizations to compute the synergies, their activations, and the trajectories they produce were performed using the subject&#x00027;s height and weight, but the model used the muscle parameters reported in Popovi&#x00107; et al. (<xref ref-type="bibr" rid="B31">1999</xref>) for an able-bodied subject and person with SCI, respectively. If this system is to be implemented on a subject with a condition in which a injury/disorder in which one of his or her leg&#x00027;s response is much different than his or her other leg such as in hemiplegia due to a stroke, it would probably be more beneficial to use multiple subject-specific models, one for each leg.</p>
<p>Prior to any experimentation, an approval from the Institutional Review Board at the University of Pittsburgh was obtained. The consent procedure for human participants was written and informed. During the experiments, the subject was instructed to relax and refrain from voluntarily interfering with the hybrid exoskeleton. The estimates of the EMD, activation time constants, and fatigue/recovery rates were estimated in system identification experiments in a leg extension machine and assumed to be the same for both legs. During the experiments, the subjects used a gait assistive device called the E-Pacer (Rifton, USA) to help support and propel themselves forward. The progression and safety buttons were operated by a separate user and were used to control the FSM. The experiments were run for 6 steps, including the half right step. In order to compare the difference in power consumption between a powered exoskeleton, just motors, and a hybrid neuroprosthesis, motors and FES, the testbed was tested with two different control systems. For the first control system for the hybrid neuroprosthesis configuration, the adaptive synergy-based PID-DSC controller was used to govern the input to the FES and motors. For the second control system for the powered exoskeleton configuration, a Robust Integral of the Sign of the Error (RISE) (Xian et al., <xref ref-type="bibr" rid="B44">2004</xref>) controller was used to govern the input to the motors. This controller was used for this case because it contains a unique integral signum term which can accommodate for sufficiently smooth bounded disturbances like the friction in the harmonic drive motors used in this testbed.</p>
</sec>
</sec>
<sec sec-type="results" id="s3">
<title>3. Results</title>
<p>The experimental results from the subject with the incomplete SCI can be seen in Figures <xref ref-type="fig" rid="F8">8</xref>&#x02013;<xref ref-type="fig" rid="F12">12</xref>. The tracking performance for the both right and left hip and knee joints can be seen in Figure <xref ref-type="fig" rid="F8">8A</xref>. Figure <xref ref-type="fig" rid="F8">8B</xref> shows a sequence of frames from the video footage illustrating the gait produced using the control system<xref ref-type="fn" rid="fn0001"><sup>1</sup></xref>. The root mean squared errors (RMSE) and root mean squared voltages (RMSV) for the hip and knee joints for the right leg are presented in Table <xref ref-type="table" rid="T1">1</xref>. From the results it can be seen that not only did the synergy-based controller result in better tracking performance, but it did so while consuming less energy compared to the RISE controller. In addition, the hybrid neuroprosthesis testbed, when using the synergy-based controller, also includes theraputic health benefits due to the use of FES. The desired feedforward component, <inline-formula><mml:math id="M103"><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo>-</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msup><mml:msub><mml:mrow><mml:mi>&#x003B6;</mml:mi></mml:mrow><mml:mrow><mml:mi>s</mml:mi><mml:mi>f</mml:mi></mml:mrow></mml:msub><mml:mi>W</mml:mi><mml:mi>&#x00109;</mml:mi></mml:math></inline-formula>, and desired feedback component, <italic>kr</italic>, in <inline-formula><mml:math id="M104"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:math></inline-formula> can be seen in Figures <xref ref-type="fig" rid="F9">9</xref>, <xref ref-type="fig" rid="F10">10</xref>. The contribution of the inverse of the fatigue estimate scaling factor is not apparent in the experimental results as there is little change in the desired feedfoward activations, as seen in Figure <xref ref-type="fig" rid="F9">9</xref>. This is due to the small changes in the estimate of the fatigue, as seen in Figure <xref ref-type="fig" rid="F11">11</xref>. This is due to the fatigue parameters identified for the subject with an incomplete SCI. Since his injury level is incomplete, his muscles had not atrophied and resistant to fatigue. However, for the subjects with advanced muscle atrophy as a result of their complete SCI, muscle fatigue would occur more rapidly, hence this is still a practical feature in the controller. The actual input signals for all 8 inputs of the system can be seen in Figure <xref ref-type="fig" rid="F12">12</xref>. It can be observed, that when a leg takes the role of the stance leg, the synergy activation is zero which results in zero stimulation and zero desired feedforward motor activation. Hence, only feedback control of the motors is used to lock the knee joint of the stance leg. From the inputs, we can see that the timing of the stimulation is sensible as for each step the flexors is activated first to produce the withdrawal reflex and then the extensors to fully extend the knee.</p>
<fig id="F8" position="float">
<label>Figure 8</label>
<caption><p><bold>(A)</bold> The desired and actual joint angles of the right and left hip and knee joints resulting from using the developed synergy-based DSC/DC control system in conjunction with the FSM on a subject with an incomplete SCI. The shaded regions indicate which state of the FSM is active at that time. <bold>(B)</bold> A sequence of photos illustrating the gait produce during the experiments. The depicted individual provided written and informed consent for the publication of this image.</p></caption>
<graphic xlink:href="fnins-12-00159-g0008.tif"/>
</fig>
<fig id="F9" position="float">
<label>Figure 9</label>
<caption><p>The desired feedforward component of <inline-formula><mml:math id="M42"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:math></inline-formula> for all of the system inputs. This component is generated from the dynamic postural synergies and their activation after adaptation and with the scaling up from the fatigue estimate and the scaling factor control gain.</p></caption>
<graphic xlink:href="fnins-12-00159-g0009.tif"/>
</fig>
<fig id="F10" position="float">
<label>Figure 10</label>
<caption><p>The desired feedback component of <inline-formula><mml:math id="M96"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BC;</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:math></inline-formula> which is only applied to the four motors at the hip and knee joints of each leg. It can be observed that they majority of the effort is occurring during the swing phase of each leg.</p></caption>
<graphic xlink:href="fnins-12-00159-g0010.tif"/>
</fig>
<fig id="F11" position="float">
<label>Figure 11</label>
<caption><p>The fatigue estimates for the knee flexors and extensors of the right leg. The fatigue estimate ranges from 1 to &#x003D5;<sub><italic>min</italic></sub>, which corresponds to no fatigue to fully fatigued, respectively. It can be observed that the fatigue occurs during the swing phase, and the muscles recover during the stance phase since there is no stimulation.</p></caption>
<graphic xlink:href="fnins-12-00159-g0011.tif"/>
</fig>
<fig id="F12" position="float">
<label>Figure 12</label>
<caption><p>The inputs to all of the system inputs, including feedback and feedforward, for this experimental trial. Note that there is no stimulation occurring during the stance phase of each leg.</p></caption>
<graphic xlink:href="fnins-12-00159-g0012.tif"/>
</fig>
<table-wrap position="float" id="T1">
<label>Table 1</label>
<caption><p>The root mean squared of the input voltage to the motors.</p></caption>
<table frame="hsides" rules="groups">
<thead><tr>
<th valign="top" align="left"><bold>Subject</bold></th>
<th valign="top" align="left"><bold>Joint</bold></th>
<th valign="top" align="center" colspan="2" style="border-bottom: thin solid #000000;"><bold>Synergy-based Controller</bold></th>
<th valign="top" align="center" colspan="2" style="border-bottom: thin solid #000000;"><bold>RISE</bold></th>
</tr>
<tr>
<th/>
<th/>
<th valign="top" align="center"><bold>RMSE [deg.]</bold></th>
<th valign="top" align="center"><bold>RMS V [V]</bold></th>
<th valign="top" align="center"><bold>RMSE [deg.]</bold></th>
<th valign="top" align="center"><bold>RMSV [V]</bold></th>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="left">Incomplete SCI</td>
<td valign="top" align="left">Right Hip</td>
<td valign="top" align="center">1.35</td>
<td valign="top" align="center">2.25</td>
<td valign="top" align="center">1.68</td>
<td valign="top" align="center">2.49</td>
</tr>
<tr>
<td/>
<td valign="top" align="left">Right Knee</td>
<td valign="top" align="center">1.68</td>
<td valign="top" align="center">3.10</td>
<td valign="top" align="center">3.52</td>
<td valign="top" align="center">3.36</td>
</tr>
<tr style="border-top: thin solid #000000;">
<td valign="top" align="left">Able Bodied</td>
<td valign="top" align="left">Right Hip</td>
<td valign="top" align="center">1.56</td>
<td valign="top" align="center">3.22</td>
<td valign="top" align="center">2.70</td>
<td valign="top" align="center">3.39</td>
</tr>
<tr>
<td/>
<td valign="top" align="left">Right Knee</td>
<td valign="top" align="center">0.92</td>
<td valign="top" align="center">2.50</td>
<td valign="top" align="center">3.03</td>
<td valign="top" align="center">3.70</td>
</tr>
</tbody>
</table>
<table-wrap-foot>
<p><italic>Note that the Synergy-based controller uses less motor input which means less power consumption and results in better tracking performance</italic>.</p>
</table-wrap-foot>
</table-wrap>
</sec>
<sec sec-type="discussion" id="s4">
<title>4. Discussion</title>
<p>As researchers, we often analyze biological systems to devise innovative solutions to real world applications. To overcome the challenge of actuator redundancy, we studied how scientists believed the human body solves its high degree of freedom and actuator redundancy problem to achieve fluid and coordinated movements such as gait. It is hypothesized that the human central nervous system (CNS) activates multiple muscle fibers in groups or patterns called muscle synergies, or motor primitives, to efficiently perform complex movements such as reaching, hand manipulations, or posture control (Sherrington, <xref ref-type="bibr" rid="B37">1910</xref>; d&#x02018;Avella and Tresch, <xref ref-type="bibr" rid="B5">2001</xref>; Ting, <xref ref-type="bibr" rid="B40">2007</xref>; Vinjamuri, <xref ref-type="bibr" rid="B43">2008</xref>; Vinjamuri et al., <xref ref-type="bibr" rid="B42">2010</xref>). The benifit of synergies is their function of transforming a higher dimensional and complex systems into lower dimensional and simpler systems that are easier to control (Tresch and Jarc, <xref ref-type="bibr" rid="B41">2009</xref>). In Neptune et al. (<xref ref-type="bibr" rid="B28">2009</xref>), muscle synergies for human locomotion were extracted and successfully applied to complex human walking models to reproduce realistic gait motions. For a more thorough literature review on synergies, readers are referred to these references (Vinjamuri, <xref ref-type="bibr" rid="B43">2008</xref>; Tresch and Jarc, <xref ref-type="bibr" rid="B41">2009</xref>).</p>
<p>In this research, a synergy-based control system is used to distribute the control effort to the multiple actuators of a walking hybrid neuroprosthesis. This approach is inspired from the human motor control concept of muscle synergies. In most studies, muscle synergies are proposed as a basis employed during human motor control and found by decomposing recorded EMG signals (collected from multiple muscles) to extract muscle synergies. Unlike these studies, in this paper dynamic postural synergies are designed, using dynamic optimizations, to be used as a basis for the control system for the walking hybrid neuroprosthesis. This synergy design approach, using optimizations to distribute the control effort among the available actuators, offers multiple advantages and convenience such as allowing for the incorporation of external inputs, i.e., electric motors and FES. Another benefit for this method of designing dynamic postural synergies is the ease of adding additional restrictions on the synergies, i.e., no co-activation or no negative stimulation. Based on the synergy principle, fewer control signals are used to control multiple actuators in a hybrid neuroprosthesis, therefore the use of synergies will not only solve the actuator redundancy problem similarly to how the body is hypothesized to do so, but it will do it in a more computationally efficient way. However, there are still other remaining challenges that could hamper the effectiveness of a closed-loop synergy-based control system if not addressed. These remaining challenges are EMD, actuator dynamics, and muscle fatigue. Therefore, Lyapunov-based control design approaches were used to derive this class of synergy-based controllers that are robust to EMD and compensate for activation dynamics and muscle fatigue. While the developed control system was capable of reproducing gait, the finite state machine can still be scaled-up to achieve motions other than gait such as sitting/standing and ascending/descending.</p>
</sec>
<sec sec-type="conclusions" id="s5">
<title>5. Conclusion</title>
<p>In this paper, the adaptive synergy-based DSC controller is developed and experimentally tested on an able-bodied subject and person with an incomplete SCI using a walking hybrid neuroprosthesis. This control system used dynamic postural synergies designed to reproduce the key dynamic posture; the withdrawal reflex and knee extension, which have been shown to be able to reproduce gait. Dynamic optimizations were then used to compute the optimal synergies&#x00027; activation to produce a half step and full step. A finite state machine was developed to switch between the trajectories and synergy activations depending on three states; half right step, full right step, and full left step. The control system then used two of the synergy-based DSC controller, one for each leg, working in tandem to reproduce gait. The overall control system was able to recreate gait using the hybrid neuroprosthesis and the gait assistive device.</p>
</sec>
<sec id="s6">
<title>Author contributions</title>
<p>NA designed the controller, developed dynamic postural synergies, performed experiments, and wrote the paper. VM performed optimizations, BD recruited subjects for the study and supervised and provided advise on conducting experiments with subjects with SCI, and NS designed and conceptualized the control design, study, experiments, and edited the manuscript.</p>
<sec>
<title>Conflict of interest statement</title>
<p>The authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest.</p>
</sec>
</sec>
</body>
<back>
<ack><p>This work was funded in part by the NSF award numbers: 1462876 and 1511139. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation. Research reported in this article was also supported in part by Eunice Kennedy Shriver National Institute of Child Health and Human Development of the National Institutes of Health under award number: R03HD086529. The content is solely the responsibility of the authors and does not necessarily represent the official views of the National Institutes of Health. NA is with the Department of Biomedical Engineering at Case Western Reserve University, Cleveland, OH, USA. VM and NS, Ph.D. are with the Department of Mechanical Engineering and Materials Science, University of Pittsburgh, Pittsburgh, PA, USA 15261. BD, MD, is with the Department of Physical Medicine and Rehabilitation Science, University of Pittsburgh, Pittsburgh, PA.</p>
</ack>
<sec sec-type="supplementary-material" id="s7">
<title>Supplementary material</title>
<p>The Supplementary Material for this article can be found online at: <ext-link ext-link-type="uri" xlink:href="https://www.frontiersin.org/articles/10.3389/fnins.2018.00159/full#supplementary-material">https://www.frontiersin.org/articles/10.3389/fnins.2018.00159/full#supplementary-material</ext-link></p>
<supplementary-material xlink:href="Video1.mp4" id="SM1" mimetype="video/mp4" xmlns:xlink="http://www.w3.org/1999/xlink"/>
<supplementary-material xlink:href="DataSheet1.pdf" id="SM2" mimetype="application/pdf" xmlns:xlink="http://www.w3.org/1999/xlink"/>
</sec>
<ref-list>
<title>References</title>
<ref id="B1">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Alibeji</surname> <given-names>N.</given-names></name> <name><surname>Kirsch</surname> <given-names>N.</given-names></name> <name><surname>Farrokhi</surname> <given-names>S.</given-names></name> <name><surname>Sharma</surname> <given-names>N.</given-names></name></person-group> (<year>2015a</year>). <article-title>Further results on predictor-based control of neuromuscular electrical stimulation</article-title>. <source>IEEE Trans. Neural Syst. Rehabil. Eng.</source> <volume>3</volume>, <fpage>1095</fpage>&#x02013;<lpage>1105</lpage>. <pub-id pub-id-type="doi">10.1109/TNSRE.2015.2418735</pub-id></citation>
</ref>
<ref id="B2">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Alibeji</surname> <given-names>N. A.</given-names></name> <name><surname>Kirsch</surname> <given-names>N. A.</given-names></name> <name><surname>Sharma</surname> <given-names>N.</given-names></name></person-group> (<year>2015b</year>). <article-title>A muscle synergy-inspired adaptive control scheme for a hybrid walking neuroprosthesis</article-title>. <source>Front. Bioeng. Biotechnol.</source> <volume>3</volume>:<fpage>203</fpage>. <pub-id pub-id-type="doi">10.3389/fbioe.2015.00203</pub-id><pub-id pub-id-type="pmid">26734606</pub-id></citation>
</ref>
<ref id="B3">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Alibeji</surname> <given-names>N.</given-names></name> <name><surname>Kirsch</surname> <given-names>N.</given-names></name> <name><surname>Sharma</surname> <given-names>N.</given-names></name></person-group> (<year>2017</year>). <article-title>An adaptive low-dimensional control to compensate for actuator redundancy and fes-induced muscle fatigue in a hybrid neuroprosthesis</article-title>. <source>Control Eng. Pract.</source> <volume>59</volume>, <fpage>204</fpage>&#x02013;<lpage>219</lpage>. <pub-id pub-id-type="doi">10.1016/j.conengprac.2016.07.015</pub-id></citation>
</ref>
<ref id="B4">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Bajd</surname> <given-names>T.</given-names></name> <name><surname>Kralj</surname> <given-names>A.</given-names></name> <name><surname>Turk</surname> <given-names>R.</given-names></name> <name><surname>Benko</surname> <given-names>H.</given-names></name> <name><surname>Sega</surname> <given-names>J.</given-names></name></person-group> (<year>1983</year>). <article-title>The use of a four-channel electrical stimulator as an ambulatory aid for paraplegic patients</article-title>. <source>Phys. Ther.</source> <volume>63</volume>, <fpage>1116</fpage>&#x02013;<lpage>1120</lpage>. <pub-id pub-id-type="doi">10.1093/ptj/63.7.1116</pub-id><pub-id pub-id-type="pmid">6602994</pub-id></citation>
</ref>
<ref id="B5">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>d&#x02018;Avella</surname> <given-names>A.</given-names></name> <name><surname>Tresch</surname> <given-names>M. C.</given-names></name></person-group> (<year>2001</year>). <article-title>Modularity in the motor system: decomposition of muscle patterns as combinations of time-varying synergies</article-title>, in <source>Advances in Neural Information Processing Systems</source>, <volume>Vol. 14</volume>, eds <person-group person-group-type="editor"><name><surname>Dietterich</surname> <given-names>T. G.</given-names></name> <name><surname>Becker</surname> <given-names>S.</given-names></name> <name><surname>Ghahramani</surname> <given-names>Z.</given-names></name></person-group> (<publisher-loc>Vancouver, BC</publisher-loc>: <publisher-name>MIT Press</publisher-name>), <fpage>141</fpage>&#x02013;<lpage>148</lpage>.</citation>
</ref>
<ref id="B6">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>del Ama</surname> <given-names>A. J.</given-names></name> <name><surname>Gil-Agudo</surname> <given-names>A.</given-names></name> <name><surname>Pons</surname> <given-names>J.</given-names></name> <name><surname>Moreno</surname> <given-names>J. C.</given-names></name></person-group> (<year>2014</year>). <article-title>Hybrid FES-robot cooperative control of ambulatory gait rehabilitation exoskeleton</article-title>. <source>J. NeuroEng. Rehabil.</source> <volume>11</volume>:<fpage>27</fpage>. <pub-id pub-id-type="doi">10.1186/1743-0003-11-27</pub-id><pub-id pub-id-type="pmid">24594302</pub-id></citation>
</ref>
<ref id="B7">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>del Ama</surname> <given-names>A. J.</given-names></name> <name><surname>Koutsou</surname> <given-names>A. D.</given-names></name> <name><surname>Moreno</surname> <given-names>J. C.</given-names></name> <name><surname>de-los Reyes</surname> <given-names>A.</given-names></name> <name><surname>Gil-Agudo</surname> <given-names>A.</given-names></name> <name><surname>Pons</surname> <given-names>J. L.</given-names></name></person-group> (<year>2012</year>). <article-title>Review of hybrid exoskeletons to restore gait following spinal cord injury</article-title>. <source>J. Rehabil. Res. Dev.</source> <volume>49</volume>, <fpage>497</fpage>&#x02013;<lpage>514</lpage>. <pub-id pub-id-type="doi">10.1682/JRRD.2011.03.0043</pub-id><pub-id pub-id-type="pmid">22773254</pub-id></citation>
</ref>
<ref id="B8">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Dixon</surname> <given-names>W. E.</given-names></name> <name><surname>Behal</surname> <given-names>A.</given-names></name> <name><surname>Dawson</surname> <given-names>D. M.</given-names></name> <name><surname>Nagarkatti</surname> <given-names>S.</given-names></name></person-group> (<year>2003</year>). <source>Nonlinear Control of Engineering Systems: A Lyapunov-Based Approach</source>. <publisher-loc>New York, NY</publisher-loc>: <publisher-name>Birkh&#x000E4;user Boston</publisher-name>.</citation>
</ref>
<ref id="B9">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Downey</surname> <given-names>R. J.</given-names></name> <name><surname>Cheng</surname> <given-names>T. H.</given-names></name> <name><surname>Bellman</surname> <given-names>M. J.</given-names></name> <name><surname>Dixon</surname> <given-names>W. E.</given-names></name></person-group> (<year>2015</year>). <article-title>Switched tracking control of a human limb during asynchronous neuromuscular electrical stimulation</article-title>, in <source>Proceedings of American Control Conference</source> (<publisher-loc>Chicago, IL</publisher-loc>), <fpage>4504</fpage>&#x02013;<lpage>4508</lpage>.</citation>
</ref>
<ref id="B10">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Farris</surname> <given-names>R. J.</given-names></name> <name><surname>Quintero</surname> <given-names>H. A.</given-names></name> <name><surname>Goldfarb</surname> <given-names>M.</given-names></name></person-group> (<year>2011</year>). <article-title>Preliminary evaluation of a powered lower limb orthosis to aid walking in paraplegic individuals</article-title>. <source>IEEE Trans. Neural Syst. Rehabil. Eng.</source> <volume>19</volume>, <fpage>652</fpage>&#x02013;<lpage>659</lpage>. <pub-id pub-id-type="doi">10.1109/TNSRE.2011.2163083</pub-id><pub-id pub-id-type="pmid">21968791</pub-id></citation>
</ref>
<ref id="B11">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Farris</surname> <given-names>R.</given-names></name> <name><surname>Quintero</surname> <given-names>H.</given-names></name> <name><surname>Withrow</surname> <given-names>T.</given-names></name> <name><surname>Goldfarb</surname> <given-names>M.</given-names></name></person-group> (<year>2009</year>). <article-title>Design and simulation of a joint-coupled orthosis for regulating FES-aided gait</article-title>, in <source>IEEE International Conference on Robotics and Automation</source> (<publisher-loc>Kobe</publisher-loc>), <fpage>1916</fpage>&#x02013;<lpage>1922</lpage>.</citation>
</ref>
<ref id="B12">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Goldfarb</surname> <given-names>M.</given-names></name> <name><surname>Korkowski</surname> <given-names>K.</given-names></name> <name><surname>Harrold</surname> <given-names>B.</given-names></name> <name><surname>Durfee</surname> <given-names>W.</given-names></name></person-group> (<year>2003</year>). <article-title>Preliminary evaluation of a controlled-brake orthosis for FES-aided gait</article-title>. <source>IEEE Trans. Neural Syst. Rehabil. Eng.</source> <volume>11</volume>, <fpage>241</fpage>&#x02013;<lpage>248</lpage>. <pub-id pub-id-type="doi">10.1109/TNSRE.2003.816873</pub-id><pub-id pub-id-type="pmid">14518787</pub-id></citation>
</ref>
<ref id="B13">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Granat</surname> <given-names>M. H.</given-names></name> <name><surname>Ferguson</surname> <given-names>A. C.</given-names></name> <name><surname>Andrews</surname> <given-names>B. J.</given-names></name> <name><surname>Delargy</surname> <given-names>M.</given-names></name></person-group> (<year>1993</year>). <article-title>The role of functional electrical stimulation in the rehabilitation of patients with incomplete spinal cord injury-observed benefits during gait studies</article-title>. <source>Spinal Cord</source> <volume>31</volume>, <fpage>207</fpage>&#x02013;<lpage>215</lpage>. <pub-id pub-id-type="doi">10.1038/sc.1993.39</pub-id><pub-id pub-id-type="pmid">8493035</pub-id></citation>
</ref>
<ref id="B14">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Ha</surname> <given-names>K. H.</given-names></name> <name><surname>Murray</surname> <given-names>S.</given-names></name> <name><surname>Goldfarb</surname> <given-names>M.</given-names></name></person-group> (<year>2015</year>). <article-title>An approach for the cooperative control of FES with a powered exoskeleton during level walking for persons with paraplegia</article-title>. <source>IEEE Trans. Neural Syst. Rehabil. Eng.</source> <volume>24</volume>, <fpage>455</fpage>&#x02013;<lpage>466</lpage>. <pub-id pub-id-type="doi">10.1109/TNSRE.2015.2421052</pub-id><pub-id pub-id-type="pmid">25915961</pub-id></citation>
</ref>
<ref id="B15">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Ha</surname> <given-names>K. H.</given-names></name> <name><surname>Quintero</surname> <given-names>H. A.</given-names></name> <name><surname>Farris</surname> <given-names>R. J.</given-names></name> <name><surname>Goldfarb</surname> <given-names>M.</given-names></name></person-group> (<year>2012</year>). <article-title>Enhancing stance phase propulsion during level walking by combining FES with a powered exoskeleton for persons with paraplegia</article-title>, in <source>Annual International Conference of the IEEE Engineering in Medicine and Biology Society</source> (<publisher-loc>San Diego, CA</publisher-loc>), <fpage>344</fpage>&#x02013;<lpage>347</lpage>.</citation>
</ref>
<ref id="B16">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Hardin</surname> <given-names>E.</given-names></name> <name><surname>Kobetic</surname> <given-names>R.</given-names></name> <name><surname>Murray</surname> <given-names>L.</given-names></name> <name><surname>Corado-Ahmed</surname> <given-names>M.</given-names></name> <name><surname>Pinault</surname> <given-names>G.</given-names></name> <name><surname>Sakai</surname> <given-names>J.</given-names></name> <etal/></person-group>. (<year>2007</year>). <article-title>Walking after incomplete spinal cord injury using an implanted FES system: a case report</article-title>. <source>J. Rehabil. Res. Dev.</source> <volume>44</volume>, <fpage>333</fpage>&#x02013;<lpage>346</lpage>. <pub-id pub-id-type="doi">10.1682/JRRD.2007.03.0333</pub-id><pub-id pub-id-type="pmid">18247230</pub-id></citation>
</ref>
<ref id="B17">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Kantrowitz</surname> <given-names>A.</given-names></name></person-group> (<year>1960</year>). <source>Electronic Physiologic Aids. Report of the Maimonides Hospital</source>, <publisher-loc>Brooklyn, NY</publisher-loc>. <fpage>4</fpage>&#x02013;<lpage>5</lpage>.</citation>
</ref>
<ref id="B18">
<citation citation-type="thesis"><person-group person-group-type="author"><name><surname>Kirsch</surname> <given-names>N.</given-names></name></person-group> (<year>2016</year>). <source>Control Methods for Compensation and Inhibition of Muscle Fatigue in Neuroprosthetic Devices</source>. Doctoral Dissertation, <publisher-name>University of Pittsburgh</publisher-name>.</citation>
</ref>
<ref id="B19">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Kirsch</surname> <given-names>N. A.</given-names></name> <name><surname>Alibeji</surname> <given-names>N.</given-names></name> <name><surname>Fisher</surname> <given-names>L.</given-names></name> <name><surname>Gregory</surname> <given-names>C.</given-names></name> <name><surname>Sharma</surname> <given-names>N.</given-names></name></person-group> (<year>2014a</year>). <article-title>A semi-active hybrid neuroprosthesis for restoring lower limb function in paraplegics</article-title>, in <source>IEEE Annual International Conference of the IEEE Engineering in Medicine and Biology Society</source> (<publisher-loc>Chicago, IL</publisher-loc>). <pub-id pub-id-type="pmid">25570512</pub-id></citation>
</ref>
<ref id="B20">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Kirsch</surname> <given-names>N.</given-names></name> <name><surname>Alibeji</surname> <given-names>N.</given-names></name> <name><surname>Sharma</surname> <given-names>N.</given-names></name></person-group> (<year>2014b</year>). <article-title>Model predictive control-based dynamic control allocation in a hybrid neuroprosthesis</article-title>, in <source>Proceedings of ASME Dynamic Systems and Control Conference</source> (<publisher-loc>San Antonio, TX</publisher-loc>).</citation>
</ref>
<ref id="B21">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Kirsch</surname> <given-names>N.</given-names></name> <name><surname>Alibeji</surname> <given-names>N. A.</given-names></name> <name><surname>Sharma</surname> <given-names>N.</given-names></name></person-group> (<year>2013</year>). <article-title>Optimized control of different actuation strategies for FES and orthosis aided gait</article-title>, in <source>Proceedings of ASME Dynamic Systems and Control Conference</source> (<publisher-loc>Palo Alto, CA</publisher-loc>).</citation>
</ref>
<ref id="B22">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Kirsch</surname> <given-names>N.</given-names></name> <name><surname>Alibeji</surname> <given-names>N.</given-names></name> <name><surname>Sharma</surname> <given-names>N.</given-names></name></person-group> (<year>2017</year>). <article-title>Nonlinear model predictive control of functional electrical stimulation</article-title>. <source>Control Eng. Pract.</source> <volume>58</volume>, <fpage>319</fpage>&#x02013;<lpage>331</lpage>. <pub-id pub-id-type="doi">10.1016/j.conengprac.2016.03.005</pub-id></citation>
</ref>
<ref id="B23">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Kobetic</surname> <given-names>R.</given-names></name> <name><surname>To</surname> <given-names>C. S.</given-names></name> <name><surname>Schnellenberger</surname> <given-names>J. R.</given-names></name> <name><surname>Audu</surname> <given-names>M. L.</given-names></name> <name><surname>Bulea</surname> <given-names>T. C.</given-names></name> <name><surname>Gaudio</surname> <given-names>R.</given-names></name> <etal/></person-group>. (<year>2009</year>). <article-title>Development of hybrid orthosis for standing, walking, and stair climbing after spinal cord injury</article-title>. <source>J. Rehabil. Res. Dev.</source> <volume>46</volume>, <fpage>447</fpage>&#x02013;<lpage>462</lpage>. <pub-id pub-id-type="doi">10.1682/JRRD.2008.07.0087</pub-id><pub-id pub-id-type="pmid">19675995</pub-id></citation>
</ref>
<ref id="B24">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Kobetic</surname> <given-names>R.</given-names></name> <name><surname>Triolo</surname> <given-names>R.</given-names></name> <name><surname>Marsolais</surname> <given-names>E.</given-names></name></person-group> (<year>1997</year>). <article-title>Muscle selection and walking performance of multichannel FES systems for ambulation in paraplegia</article-title>. <source>IEEE Trans. Rehabil. Eng.</source> <volume>5</volume>, <fpage>23</fpage>&#x02013;<lpage>29</lpage>. <pub-id pub-id-type="doi">10.1109/86.559346</pub-id><pub-id pub-id-type="pmid">9086382</pub-id></citation>
</ref>
<ref id="B25">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Kralj</surname> <given-names>A.</given-names></name> <name><surname>Bajd</surname> <given-names>T.</given-names></name></person-group> (<year>1989</year>). <source>Functional Electrical Stimulation: Standing and Walking after Spinal Cord Injury</source>. <publisher-loc>Boca Raton, FL</publisher-loc>: <publisher-name>CRC</publisher-name>.</citation>
</ref>
<ref id="B26">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Liberson</surname> <given-names>W.</given-names></name> <name><surname>Holmquest</surname> <given-names>H.</given-names></name> <name><surname>Scot</surname> <given-names>D.</given-names></name> <name><surname>Dow</surname> <given-names>M.</given-names></name></person-group> (<year>1961</year>). <article-title>Functional electrotherapy: stimulation of the peroneal nerve synchronized with the swing phase of the gait of hemiplegic patients</article-title>. <source>Arch. Phys. Med.</source> <volume>42</volume>, <fpage>101</fpage>&#x02013;<lpage>105</lpage>. <pub-id pub-id-type="pmid">13761879</pub-id></citation>
</ref>
<ref id="B27">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Marsolais</surname> <given-names>E. B.</given-names></name> <name><surname>Kobetic</surname> <given-names>R.</given-names></name></person-group> (<year>1987</year>). <article-title>Functional electrical stimulation for walking in paraplegia</article-title>. <source>J. Bone Joint Surg.</source> <volume>69</volume>, <fpage>728</fpage>&#x02013;<lpage>733</lpage>. <pub-id pub-id-type="doi">10.2106/00004623-198769050-00014</pub-id><pub-id pub-id-type="pmid">3496340</pub-id></citation>
</ref>
<ref id="B28">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Neptune</surname> <given-names>R. R.</given-names></name> <name><surname>Clark</surname> <given-names>D. J.</given-names></name> <name><surname>Kautz</surname> <given-names>S. A.</given-names></name></person-group> (<year>2009</year>). <article-title>Modular control of human walking: a simulation study</article-title>. <source>J. Biomech.</source> <volume>42</volume>, <fpage>1282</fpage>&#x02013;<lpage>1287</lpage>. <pub-id pub-id-type="doi">10.1016/j.jbiomech.2009.03.009</pub-id><pub-id pub-id-type="pmid">19394023</pub-id></citation>
</ref>
<ref id="B29">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Neuhaus</surname> <given-names>P. D.</given-names></name> <name><surname>Noorden</surname> <given-names>J. H.</given-names></name> <name><surname>Craig</surname> <given-names>T. J.</given-names></name> <name><surname>Torres</surname> <given-names>T.</given-names></name> <name><surname>Kirschbaum</surname> <given-names>J.</given-names></name> <name><surname>Pratt</surname> <given-names>J. E.</given-names></name></person-group> (<year>2011</year>). <article-title>Design and evaluation of mina: a robotic orthosis for paraplegics</article-title>, in <source>IEEE International Conference on Rehabilitation Robotics</source> (<publisher-loc>Zurich</publisher-loc>), <fpage>1</fpage>&#x02013;<lpage>8</lpage>.</citation>
</ref>
<ref id="B30">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Peckham</surname> <given-names>P. H.</given-names></name> <name><surname>Gray</surname> <given-names>D. B.</given-names></name></person-group> (<year>1996</year>). <article-title>Functional neuromuscular stimulation</article-title>. <source>J. Rehabil. Res. Dev.</source> <volume>33</volume>, <fpage>9</fpage>&#x02013;<lpage>11</lpage>. <pub-id pub-id-type="doi">10.1109/86.750554</pub-id><pub-id pub-id-type="pmid">8724166</pub-id></citation>
</ref>
<ref id="B31">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Popovi&#x00107;</surname> <given-names>D.</given-names></name> <name><surname>Stein</surname> <given-names>R.</given-names></name> <name><surname>O&#x0011F;uzt&#x000F6;reli</surname> <given-names>M.</given-names></name> <name><surname>Lebiedowska</surname> <given-names>M.</given-names></name> <name><surname>Joni&#x00107;</surname> <given-names>S.</given-names></name></person-group> (<year>1999</year>). <article-title>Optimal control of walking with functional electrical stimulation: a computer simulation study</article-title>. <source>IEEE Trans. Rehabil. Eng.</source> <volume>7</volume>, <fpage>69</fpage>&#x02013;<lpage>79</lpage>. <pub-id pub-id-type="pmid">10188609</pub-id></citation>
</ref>
<ref id="B32">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Quintero</surname> <given-names>H. A.</given-names></name> <name><surname>Farris</surname> <given-names>R. J.</given-names></name> <name><surname>Ha</surname> <given-names>K.</given-names></name> <name><surname>Goldfarb</surname> <given-names>M.</given-names></name></person-group> (<year>2012</year>). <article-title>Preliminary assessment of the efficacy of supplementing knee extension capability in a lower limb exoskeleton with FES</article-title>. <source>IEEE Eng. Med. Biol. Soc.</source> <volume>2012</volume>, <fpage>3360</fpage>&#x02013;<lpage>3363</lpage>. <pub-id pub-id-type="doi">10.1109/EMBC.2012.6346685</pub-id><pub-id pub-id-type="pmid">23366646</pub-id></citation>
</ref>
<ref id="B33">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Riener</surname> <given-names>R.</given-names></name> <name><surname>Quintern</surname> <given-names>J.</given-names></name> <name><surname>Schmidt</surname> <given-names>G.</given-names></name></person-group> (<year>1996</year>). <article-title>Biomechanical model of the human knee evaluated by neuromuscular stimulation</article-title>. <source>J. Biomech.</source> <volume>29</volume>, <fpage>1157</fpage>&#x02013;<lpage>1167</lpage>. <pub-id pub-id-type="doi">10.1016/0021-9290(96)00012-7</pub-id><pub-id pub-id-type="pmid">8872272</pub-id></citation>
</ref>
<ref id="B34">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Schauer</surname> <given-names>T.</given-names></name> <name><surname>Negard</surname> <given-names>N. O.</given-names></name> <name><surname>Previdi</surname> <given-names>F.</given-names></name> <name><surname>Hunt</surname> <given-names>K. J.</given-names></name> <name><surname>Fraser</surname> <given-names>M. H.</given-names></name> <name><surname>Ferchland</surname> <given-names>E.</given-names></name> <etal/></person-group>. (<year>2005</year>). <article-title>Online identification and nonlinear control of the electrically stimulated quadriceps muscle</article-title>. <source>Control Eng. Pract.</source> <volume>13</volume>, <fpage>1207</fpage>&#x02013;<lpage>1219</lpage>. <pub-id pub-id-type="doi">10.1016/j.conengprac.2004.10.006</pub-id></citation>
</ref>
<ref id="B35">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Sharma</surname> <given-names>N.</given-names></name> <name><surname>Bhasin</surname> <given-names>S.</given-names></name> <name><surname>Wang</surname> <given-names>Q.</given-names></name> <name><surname>Dixon</surname> <given-names>W. E.</given-names></name></person-group> (<year>2011</year>). <article-title>Predictor-based control for an uncertain euler-lagrange system with input delay</article-title>. <source>Automatica</source> <volume>47</volume>, <fpage>2332</fpage>&#x02013;<lpage>2342</lpage>. <pub-id pub-id-type="doi">10.1016/j.automatica.2011.03.016</pub-id></citation>
</ref>
<ref id="B36">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Sharma</surname> <given-names>N.</given-names></name> <name><surname>Mushahwar</surname> <given-names>V.</given-names></name> <name><surname>Stein</surname> <given-names>R.</given-names></name></person-group> (<year>2014</year>). <article-title>Dynamic optimization of fes and orthosis-based walking using simple models</article-title>. <source>IEEE Trans. Neural Syst. Rehabil. Eng.</source> <volume>22</volume>, <fpage>114</fpage>&#x02013;<lpage>126</lpage>. <pub-id pub-id-type="doi">10.1109/TNSRE.2013.2280520</pub-id><pub-id pub-id-type="pmid">24122568</pub-id></citation>
</ref>
<ref id="B37">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Sherrington</surname> <given-names>C. S.</given-names></name></person-group> (<year>1910</year>). <article-title>Flexion-reflex of the limb, crossed extension-reflex, and reflex stepping and standing</article-title>. <source>J. Physiol.</source> <volume>40</volume>, <fpage>28</fpage>&#x02013;<lpage>121</lpage>. <pub-id pub-id-type="doi">10.1113/jphysiol.1910.sp001362</pub-id><pub-id pub-id-type="pmid">16993027</pub-id></citation>
</ref>
<ref id="B38">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Solomonow</surname> <given-names>M.</given-names></name> <name><surname>Baratta</surname> <given-names>R.</given-names></name> <name><surname>Shoji</surname> <given-names>H.</given-names></name> <name><surname>Ichie</surname> <given-names>M.</given-names></name> <name><surname>Hwang</surname> <given-names>S.</given-names></name> <name><surname>Rightor</surname> <given-names>N.</given-names></name> <etal/></person-group>. (<year>1988</year>). <article-title>FES powered locomotion of paraplegics fitted with the LSU reciprocating gait orthoses (RGO)</article-title>, in <source>Proceedings of the Annual International Conference of the IEEE Engineering in Medicine and Biology Society</source> (<publisher-loc>New Orleans, LA</publisher-loc>), <volume>Vol. 4</volume>, <fpage>1672</fpage>.</citation>
</ref>
<ref id="B39">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Strausser</surname> <given-names>K.</given-names></name> <name><surname>Kazerooni</surname> <given-names>H.</given-names></name></person-group> (<year>2011</year>). <article-title>The development and testing of a human machine interface for a mobile medical exoskeleton</article-title>, in <source>Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems</source> (<publisher-loc>San Francisco, CA</publisher-loc>), <fpage>4911</fpage>&#x02013;<lpage>4916</lpage>.</citation>
</ref>
<ref id="B40">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Ting</surname> <given-names>L. H.</given-names></name></person-group> (<year>2007</year>). <article-title>Dimensional reduction in sensorimotor systems: a framework for understanding muscle coordination of posture</article-title>. <source>Prog. Brain. Res.</source> <volume>165</volume>, <fpage>299</fpage>&#x02013;<lpage>321</lpage>. <pub-id pub-id-type="doi">10.1016/S0079-6123(06)65019-X</pub-id><pub-id pub-id-type="pmid">17925254</pub-id></citation>
</ref>
<ref id="B41">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Tresch</surname> <given-names>M. C.</given-names></name> <name><surname>Jarc</surname> <given-names>A.</given-names></name></person-group> (<year>2009</year>). <article-title>The case for and against muscle synergies</article-title>. <source>Curr. Opin. Neurobiol.</source> <volume>19</volume>, <fpage>601</fpage>&#x02013;<lpage>607</lpage>. <pub-id pub-id-type="doi">10.1016/j.conb.2009.09.002</pub-id><pub-id pub-id-type="pmid">19828310</pub-id></citation>
</ref>
<ref id="B42">
<citation citation-type="thesis"><person-group person-group-type="author"><name><surname>Vinjamuri</surname> <given-names>R.</given-names></name> <name><surname>Sun</surname> <given-names>M.</given-names></name> <name><surname>Chang</surname> <given-names>C.-C.</given-names></name> <name><surname>Lee</surname> <given-names>H.-N.</given-names></name> <name><surname>Sclabassi</surname> <given-names>R. J.</given-names></name> <name><surname>Mao</surname> <given-names>Z.-H.</given-names></name></person-group> (<year>2010</year>). <source>Dimensionality Reduction in Control and Coordination of the Human Hand</source>, PhD thesis. <publisher-name>University of Pittsburgh</publisher-name>. <pub-id pub-id-type="pmid">19789098</pub-id></citation>
</ref>
<ref id="B43">
<citation citation-type="thesis"><person-group person-group-type="author"><name><surname>Vinjamuri</surname> <given-names>R. K.</given-names></name></person-group> (<year>2008</year>). <source>Dimensionality Reduction in Control and Coordination of the Human Hand</source>, PhD thesis, <publisher-name>Swanson School of Engineering, University of Pittsburgh</publisher-name>. <pub-id pub-id-type="pmid">19789098</pub-id></citation>
</ref>
<ref id="B44">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Xian</surname> <given-names>B.</given-names></name> <name><surname>Dawson</surname> <given-names>D. M.</given-names></name> <name><surname>de Queiroz</surname> <given-names>M. S.</given-names></name> <name><surname>Chen</surname> <given-names>J.</given-names></name></person-group> (<year>2004</year>). <article-title>A continuous asymptotic tracking control strategy for uncertain nonlinear systems</article-title>. <source>IEEE Trans. Autom. Control</source> <volume>49</volume>, <fpage>1206</fpage>&#x02013;<lpage>1211</lpage>. <pub-id pub-id-type="doi">10.1109/TAC.2004.831148</pub-id></citation>
</ref>
</ref-list>
<fn-group>
<fn id="fn0001"><p><sup>1</sup>The video footage of testing of the dynamic postural synergy-based controller on a subject with an incomplete SCI can be seen in the <xref ref-type="supplementary-material" rid="SM1">Supplementary Files</xref>.</p></fn>
</fn-group>
</back>
</article>