<?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. Robot. AI</journal-id>
<journal-title>Frontiers in Robotics and AI</journal-title>
<abbrev-journal-title abbrev-type="pubmed">Front. Robot. AI</abbrev-journal-title>
<issn pub-type="epub">2296-9144</issn>
<publisher>
<publisher-name>Frontiers Media S.A.</publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="doi">10.3389/frobt.2017.00068</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Robotics and AI</subject>
<subj-group>
<subject>Original Research</subject>
</subj-group>
</subj-group>
</article-categories>
<title-group>
<article-title>A Non-Linear Control Method to Compensate for Muscle Fatigue during Neuromuscular Electrical Stimulation</article-title>
</title-group>
<contrib-group>
<contrib contrib-type="author" corresp="yes">
<name><surname>Sharma</surname> <given-names>Nitin</given-names></name>
<xref ref-type="aff" rid="aff1"><sup>1</sup></xref>
<xref ref-type="corresp" rid="cor1">&#x0002A;</xref>
<uri xlink:href="http://frontiersin.org/people/u/191261"/>
</contrib>
<contrib contrib-type="author">
<name><surname>Kirsch</surname> <given-names>Nicholas Andrew</given-names></name>
<xref ref-type="aff" rid="aff2"><sup>2</sup></xref>
<uri xlink:href="http://frontiersin.org/people/u/239769"/>
</contrib>
<contrib contrib-type="author">
<name><surname>Alibeji</surname> <given-names>Naji A.</given-names></name>
<xref ref-type="aff" rid="aff3"><sup>3</sup></xref>
<uri xlink:href="http://frontiersin.org/people/u/191900"/>
</contrib>
<contrib contrib-type="author">
<name><surname>Dixon</surname> <given-names>Warren E.</given-names></name>
<xref ref-type="aff" rid="aff4"><sup>4</sup></xref>
<uri xlink:href="http://frontiersin.org/people/u/477195"/>
</contrib>
</contrib-group>
<aff id="aff1"><sup>1</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="aff2"><sup>2</sup><institution>IAM Robotics</institution>, <addr-line>Pittsburgh, PA</addr-line>, <country>United States</country></aff>
<aff id="aff3"><sup>3</sup><institution>Department of Biomedical Engineering, Case Western Reserve University</institution>, <addr-line>Cleveland, OH</addr-line>, <country>United States</country></aff>
<aff id="aff4"><sup>4</sup><institution>Department of Mechanical and Aerospace Engineering, University of Florida</institution>, <addr-line>Gainesville, FL</addr-line>, <country>United States</country></aff>
<author-notes>
<fn fn-type="edited-by"><p>Edited by: Ramana Vinjamuri, Stevens Institute of Technology, United States</p></fn>
<fn fn-type="edited-by"><p>Reviewed by: Raviraj Nataraj, Stevens Institute of Technology, United States; Marco Capogrosso, University of Fribourg, Switzerland</p></fn>
<corresp content-type="corresp" id="cor1">&#x0002A;Correspondence: Nitin Sharma, <email>nis62&#x00040;pitt.edu</email></corresp>
<fn fn-type="other" id="fn001"><p>Specialty section: This article was submitted to Bionics and Biomimetics, a section of the journal Frontiers in Robotics and AI</p></fn>
</author-notes>
<pub-date pub-type="epub">
<day>22</day>
<month>12</month>
<year>2017</year>
</pub-date>
<pub-date pub-type="collection">
<year>2017</year>
</pub-date>
<volume>4</volume>
<elocation-id>68</elocation-id>
<history>
<date date-type="received">
<day>15</day>
<month>08</month>
<year>2017</year>
</date>
<date date-type="accepted">
<day>24</day>
<month>11</month>
<year>2017</year>
</date>
</history>
<permissions>
<copyright-statement>Copyright &#x000A9; 2017 Sharma, Kirsch, Alibeji and Dixon.</copyright-statement>
<copyright-year>2017</copyright-year>
<copyright-holder>Sharma, Kirsch, Alibeji and Dixon</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) or licensor 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>Neuromuscular electrical stimulation (NMES) is a promising technique to artificially activate muscles as a means to potentially restore the capability to perform functional tasks in persons with neurological disorders. A pervasive problem with NMES is that overstimulation of the muscle (among other factors) leads to rapid muscle fatigue, which limits the use of clinical and commercial NMES systems. The objective of this article is to develop an NMES controller that incorporates the effects of muscle fatigue during NMES-induced non-isometric contraction of the human quadriceps femoris muscle. Our previous work that used the RISE class of non-linear controllers cannot accommodate fatigue and muscle activation dynamics. A totally new control design approach and associated stability proof is required to derive a new class of NMES control design that accounts for muscle fatigue dynamics and a first-order activation dynamics, in addition to the second-order musculoskeletal dynamics. Motivated from a control method for robotic systems in a strict-feedback form, a backstepping based-non-linear NMES controller was designed to accommodate for the additional muscle activation dynamics. Further, experimentally identified estimates of the fatigue and activation dynamics were incorporated in the control design. The developed controller uses a neural network-based estimate of the musculoskeletal dynamics and error due to fatigue estimation. A globally uniformly ultimately bounded stability is proven the new controller that accounts for an uncertain non-linear muscle model and bounded non-linear disturbances (e.g., spasticity and changing load dynamics). The developed controller was validated through experiments on the left and right legs of 3 able-bodied subjects and was compared with a proportional-derivative (PD) controller and a PD augmented with a neural network. The statistical analysis showed improved control performance compared with the PD controller.</p>
</abstract>
<kwd-group>
<kwd>integrator backstepping</kwd>
<kwd>neural networks</kwd>
<kwd>muscle fatigue</kwd>
<kwd>Lyapunov stability</kwd>
<kwd>neuromuscular electrical stimulation</kwd>
</kwd-group>
<contract-num rid="cn01">1462876 and 1511139</contract-num>
<contract-sponsor id="cn01">National Science Foundation<named-content content-type="fundref-id">10.13039/100000001</named-content></contract-sponsor>
<counts>
<fig-count count="10"/>
<table-count count="5"/>
<equation-count count="58"/>
<ref-count count="49"/>
<page-count count="17"/>
<word-count count="14007"/>
</counts>
</article-meta>
</front>
<body>
<sec id="S1" sec-type="introduction">
<label>1</label> <title>Introduction</title>
<p>Neuromuscular electrical stimulation (NMES) is a promising technique that produces a muscle contraction through the application of an external electrical current. It has the potential to restore functional tasks in persons with upper motor neuron lesions. Numerous technical challenges such as non-linearity associated with muscle force generation, uncertainties in muscle physiology (e.g., calcium dynamics, pH, and muscle architecture), muscle fatigue, and time delays hinder an effective application of NMES to produce a desired muscle contraction.</p>
<p>In light of these challenges, researchers have explored several control strategies to develop effective NMES controllers; e.g., linear PID-based pure feedback methods (cf., Abbas and Chizeck, <xref ref-type="bibr" rid="B1">1991</xref>; Lan et al., <xref ref-type="bibr" rid="B28">1991a</xref>,<xref ref-type="bibr" rid="B29">b</xref>; Lynch and Popovic, <xref ref-type="bibr" rid="B33">2012</xref>; Klauer et al., <xref ref-type="bibr" rid="B25">2014</xref>; and the references therein), neural network (NN) based controllers (cf., Tong and Granat, <xref ref-type="bibr" rid="B45">1999</xref>; Kordylewski and Graupe, <xref ref-type="bibr" rid="B26">2001</xref>; Sepulveda, <xref ref-type="bibr" rid="B39">2003</xref>; Zhang and Zhu, <xref ref-type="bibr" rid="B49">2004</xref>; Giuffrida and Crago, <xref ref-type="bibr" rid="B19">2005</xref>; Wang et al., <xref ref-type="bibr" rid="B46">2013</xref>; and the references therein), and combined feedback and feedforward methods (Chang et al., <xref ref-type="bibr" rid="B7">1997</xref>; Ferrarin et al., <xref ref-type="bibr" rid="B14">2001</xref>; Chen et al., <xref ref-type="bibr" rid="B8">2005</xref>; Ajoudani and Erfanian, <xref ref-type="bibr" rid="B2">2009</xref>; Freeman et al., <xref ref-type="bibr" rid="B17">2009</xref>; Freeman, <xref ref-type="bibr" rid="B16">2014</xref>). Recently, Lyapunov-based techniques were utilized in Schauer et al. (<xref ref-type="bibr" rid="B38">2005</xref>), Sharma et al. (<xref ref-type="bibr" rid="B44">2009b</xref>, <xref ref-type="bibr" rid="B41">2011</xref>, <xref ref-type="bibr" rid="B42">2012</xref>), and Downey et al. (<xref ref-type="bibr" rid="B13">2015</xref>) to design NMES controllers and prove asymptotic stability for an uncertain non-linear muscle model. While efforts, such as Sharma et al. (<xref ref-type="bibr" rid="B44">2009b</xref>, <xref ref-type="bibr" rid="B41">2011</xref>, <xref ref-type="bibr" rid="B42">2012</xref>), Wang et al. (<xref ref-type="bibr" rid="B46">2013</xref>), and Cheng et al. (<xref ref-type="bibr" rid="B9">2016</xref>), provide an inroad to the development of analytical NMES controllers for the non-linear muscle, these results do not account for muscle fatigue, which is a primary factor to consider to yield some functional results in many rehabilitation applications.</p>
<p>Heuristically, muscle fatigue is a decrease in the muscle force output for a given input and is a complex, multifactorial phenomenon (Levy et al., <xref ref-type="bibr" rid="B30">1990</xref>; Russ et al., <xref ref-type="bibr" rid="B37">2002</xref>). Some of the factors associated with the onset of fatigue are failure of excitation of motor neurons, impairment of action potential propagation in the muscle membrane and conductivity of sarcoplasmic reticulum due to Ca<sup>2&#x0002B;</sup> ion concentration, and the change in concentration of catabolites and metabolites (Asmussen, <xref ref-type="bibr" rid="B4">1979</xref>). Factors such as the stimulation method, muscle fiber composition, state of training of the muscle, and the duration and task to be performed have been noticed to affect fatigue during NMES. Given the impact of fatigue during NMES, researchers have proposed different stimulation strategies (Binder-Macleod et al., <xref ref-type="bibr" rid="B6">2002</xref>; Maladen et al., <xref ref-type="bibr" rid="B34">2007</xref>; Downey et al., <xref ref-type="bibr" rid="B12">2011</xref>, <xref ref-type="bibr" rid="B13">2015</xref>) to delay the onset of fatigue such as choosing different stimulation patterns and parameters, improving fatigue resistance through muscle retraining, sequential stimulation, and size order recruitment.</p>
<p>Controllers can be designed with some feedforward knowledge to approximate the fatigue onset or employ some assumed mathematical model of the fatigue in the control design. Researchers in Giat et al. (<xref ref-type="bibr" rid="B18">1993</xref>), Riener et al. (<xref ref-type="bibr" rid="B36">1996</xref>), Riener and Fuhr (<xref ref-type="bibr" rid="B35">1998</xref>), and Ding et al. (<xref ref-type="bibr" rid="B10">2002a</xref>,<xref ref-type="bibr" rid="B11">b</xref>) developed various mathematical models for fatigue. In Giat et al. (<xref ref-type="bibr" rid="B18">1993</xref>), a musculotendon model for a quadriceps muscle undergoing isometric contractions during NMES was proposed. The model incorporated fatigue based on the intracellular pH level where fatigue parameters for a typical subject were found through metabolic information, experimentation, and curve fitting. A more general mathematical model for dynamic fatigue defined as a function of the Ca<sup>2&#x0002B;</sup> dynamics was proposed in Riener et al. (<xref ref-type="bibr" rid="B36">1996</xref>) and Riener and Fuhr (<xref ref-type="bibr" rid="B35">1998</xref>). Fatigue was introduced in the musculoskeletal dynamics as a fitness variable that varies as electrically stimulated muscles fatigue or recover. The fatigue time parameters were estimated from stimulation experiments. Models in Ding et al. (<xref ref-type="bibr" rid="B10">2002a</xref>,<xref ref-type="bibr" rid="B11">b</xref>) predict force due to the effect of stimulation patterns and resting times with changing physiological conditions, where model parameterization required investigating experimental forces generated from a standardized stimulation protocol.</p>
<p>Although the aforementioned mathematical models for fatigue prediction are available, few researchers have utilized such models for closed-loop NMES control. Results in Riener and Fuhr (<xref ref-type="bibr" rid="B35">1998</xref>) and Jezernik et al. (<xref ref-type="bibr" rid="B22">2004</xref>) use the fatigue model proposed in Riener et al. (<xref ref-type="bibr" rid="B36">1996</xref>) and Riener and Fuhr (<xref ref-type="bibr" rid="B35">1998</xref>) for NMES controllers, where patient specific parameters (e.g., fatigue time constants) are assumed to be known, along with exact model knowledge of the calcium dynamics. The difficulty involved in the control design using calcium dynamics, or intracellular pH level, is that these states cannot be measured for real-time control. An <italic>ad hoc</italic> method to obtain states such as the calcium dynamics or pH level for real-time would be to estimate states from a first or second-order differential equation that acts as a phenomenological fatigue model (cf., Giat et al., <xref ref-type="bibr" rid="B18">1993</xref>; Riener and Fuhr, <xref ref-type="bibr" rid="B35">1998</xref>; Jezernik et al., <xref ref-type="bibr" rid="B22">2004</xref>), where the parameters in the equations are estimated from experimentation or are based on data from past studies.</p>
<p>The focus of this article is to address muscle fatigue by incorporating an uncertain fatigue model (i.e., the model developed in Riener et al. (<xref ref-type="bibr" rid="B36">1996</xref>)) in the NMES controller. Unlike our previous NMES controllers (Sharma et al., <xref ref-type="bibr" rid="B44">2009b</xref>, <xref ref-type="bibr" rid="B41">2011</xref>, <xref ref-type="bibr" rid="B42">2012</xref>; Wang et al., <xref ref-type="bibr" rid="B46">2013</xref>; Downey et al., <xref ref-type="bibr" rid="B13">2015</xref>), the controller presented here models the presence of muscle fatigue and compensates for the diminishing control effectiveness caused by NMES-induced muscle fatigue. Our previous work used the RISE-type controllers. The stability and control design approach used for these type of controllers are incompatible when fatigue and muscle activation dynamics are incorporated. The continuous NN-based controller is proven (through a Lyapunov-based stability analysis) to yield a globally uniformly ultimately bounded stability result despite the uncertain non-linear muscle model and the presence of additive bounded disturbances (e.g., muscle spasticity, changing loads in functional tasks, and delays). This article extends the preliminary results presented in Sharma et al. (<xref ref-type="bibr" rid="B43">2009a</xref>), Sharma (<xref ref-type="bibr" rid="B40">2010</xref>), and Kirsch (<xref ref-type="bibr" rid="B24">2016</xref>) through experimental validation of the new controller. In Sharma et al. (<xref ref-type="bibr" rid="B43">2009a</xref>) and Sharma (<xref ref-type="bibr" rid="B40">2010</xref>), how this controller might be implemented was left unclear because the developed controller requires muscle activation variable that cannot be directly measured. In this article, a procedure for determining the parameters of muscle activation and fatigue dynamics are presented accompanied with the experimental validation of the developed controller.</p>
</sec>
<sec id="S2">
<label>2</label> <title>Muscle Activation and Limb Model</title>
<p>The following model development represents the musculoskeletal dynamics during NMES applied to a person&#x02019;s quadriceps muscle. The total musculoskeletal knee-joint model can be categorized into body segmental dynamics and muscle activation and contraction dynamics. The muscle activation and contraction dynamics model the force generation in the muscle, while the body segmental dynamics considers the active moment and passive joint moments acting on the knee. This is illustrated in Figure <xref ref-type="fig" rid="F1">1</xref>.</p>
<fig id="F1" position="float">
<label>Figure 1</label>
<caption><p>Electrical stimulation of the quadriceps causes the muscle to contract and shorten. This creates a torque at the knee joint, causing a knee extension motion.</p></caption>
<graphic xlink:href="frobt-04-00068-g001.tif"/>
</fig>
<sec id="S2-1">
<label>2.1</label> <title>Contraction and Activation Dynamics</title>
<p>The torque produced about the knee is generated through muscle forces that are elicited by NMES. The active moment generating force at the knee joint is the is related to the muscle force as
<disp-formula id="E1"><label>(1)</label><mml:math id="M1"><mml:mn>&#x003C4;</mml:mn><mml:mi>&#x0225C;</mml:mi><mml:mn>&#x003C2;</mml:mn><mml:mi mathvariant="italic">cos</mml:mi><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mi>a</mml:mi></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mi>F</mml:mi><mml:mo class="MathClass-punc">,</mml:mo></mml:math></disp-formula>
where &#x003C2;&#x02009;&#x02208;&#x02009;&#x0211D; denotes a positive moment arm that changes with the extension and flexion of the leg and <italic>a</italic>(<italic>q</italic>(<italic>t</italic>))&#x02009;&#x02208;&#x02009;&#x0211D; is defined as the pennation angle between the tendon and the direction of the muscle fibers. The pennation angle increases as the muscle shortens and varies between the different muscle types, but ranges from approximately 0&#x02013;30&#x000B0;(Winter, <xref ref-type="bibr" rid="B47">2009</xref>). As given in Riener and Fuhr (<xref ref-type="bibr" rid="B35">1998</xref>), the moment arm can be defined as
<disp-formula id="E2"><mml:math id="M2"><mml:mn>&#x003C2;</mml:mn><mml:mi>&#x0225C;</mml:mi><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:msub><mml:mrow><mml:mi>c</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mi mathvariant="italic">exp</mml:mi><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mn>2</mml:mn><mml:msup><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mtext>sin</mml:mtext><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:msub><mml:mrow><mml:mi>c</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo class="MathClass-punc">,</mml:mo></mml:math></disp-formula>
where <italic>c</italic><sub>1</sub>, <italic>c</italic><sub>2</sub>&#x02009;&#x02208;&#x02009;&#x0211D;<sup>&#x0002B;</sup> are positive constants. The moment arm is considered as a continuously differentiable, positive, and bounded function with a bounded first time derivative. The muscle force <italic>F</italic>&#x02009;&#x02208;&#x02009;&#x0211D; in equation (<xref ref-type="disp-formula" rid="E1">1</xref>) is defined as (Riener and Fuhr, <xref ref-type="bibr" rid="B35">1998</xref>)
<disp-formula id="E3"><label>(2)</label><mml:math id="M3"><mml:mi>F</mml:mi><mml:mspace width="0.3em"/><mml:mi>&#x0225C;</mml:mi><mml:mi>&#x003C6;</mml:mi><mml:msub><mml:mrow><mml:mi>F</mml:mi></mml:mrow><mml:mrow><mml:mi>m</mml:mi></mml:mrow></mml:msub><mml:msub><mml:mrow><mml:mi>&#x003B7;</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:msub><mml:mrow><mml:mi>&#x003B7;</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mi>x</mml:mi><mml:mo class="MathClass-punc">,</mml:mo></mml:math></disp-formula>
where <italic>F<sub>m</sub></italic>&#x02009;&#x02208;&#x02009;&#x0211D; is the constant maximum isometric force generated by the muscle. The uncertain non-linear functions <italic>&#x003B7;</italic><sub>1</sub>: &#x0211D;&#x02009;&#x02192;&#x02009;&#x0211D; in equation (<xref ref-type="disp-formula" rid="E3">2</xref>) is the force&#x02013;length relationship, defined as (Hatze, <xref ref-type="bibr" rid="B21">1977</xref>)
<disp-formula id="E4"><label>(3)</label><mml:math id="M4"><mml:msub><mml:mrow><mml:mi>&#x003B7;</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mi>&#x0225C; exp</mml:mi><mml:mfenced separators="" open="(" close=")"><mml:mrow><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:msup><mml:mrow><mml:mfenced separators="" open="(" close=")"><mml:mrow><mml:mfrac><mml:mrow><mml:mi>l</mml:mi><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>l</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x000AF;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>b</mml:mi><mml:mover accent="true"><mml:mrow><mml:mi>l</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x000AF;</mml:mo></mml:mover></mml:mrow></mml:mfrac></mml:mrow></mml:mfenced></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:mfenced><mml:mspace width="0.3em" class="thinspace"/><mml:mo class="MathClass-punc">,</mml:mo></mml:math></disp-formula>
where <italic>b</italic>&#x02009;&#x02208;&#x02009;&#x0211D; is a constant that denotes the unknown shape factor, <italic>l</italic>&#x02009;&#x02208;&#x02009;&#x0211D; denotes the length of the muscle, <inline-formula><mml:math id="M5"><mml:mover accent="true"><mml:mrow><mml:mi>l</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x000AF;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:mi mathvariant="double-struck">R</mml:mi></mml:math></inline-formula> denotes the optimal muscle length (i.e., <italic>&#x003B7;</italic><sub>1</sub> is greatest for <inline-formula><mml:math id="M6"><mml:mi>l</mml:mi><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>l</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x000AF;</mml:mo></mml:mover></mml:math></inline-formula>). In equation (<xref ref-type="disp-formula" rid="E3">2</xref>), <italic>&#x003B7;</italic><sub>2</sub>: &#x0211D;&#x02009;&#x02192;&#x02009;&#x0211D; is the force&#x02013;velocity relationship, defined as (Happee, <xref ref-type="bibr" rid="B20">1994</xref>)
<disp-formula id="E5"><label>(4)</label><mml:math id="M7"><mml:msub><mml:mrow><mml:mi>&#x003B7;</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mi>&#x0225C;</mml:mi><mml:msub><mml:mrow><mml:mi>d</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mi mathvariant="italic">arctan</mml:mi><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>d</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mover accent="true"><mml:mrow><mml:mi>v</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x000AF;</mml:mo></mml:mover><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>d</mml:mi></mml:mrow><mml:mrow><mml:mn>3</mml:mn></mml:mrow></mml:msub></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>d</mml:mi></mml:mrow><mml:mrow><mml:mn>4</mml:mn></mml:mrow></mml:msub><mml:mo class="MathClass-punc">,</mml:mo></mml:math></disp-formula>
where <inline-formula><mml:math id="M8"><mml:mover accent="true"><mml:mrow><mml:mi>v</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x000AF;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:mi mathvariant="double-struck">R</mml:mi></mml:math></inline-formula> is an unknown non-negative normalized velocity with respect to the maximal contraction velocity of the muscle, and <italic>d</italic><sub>1</sub>, <italic>d</italic><sub>2</sub>, <italic>d</italic><sub>3</sub>, <italic>d</italic><sub>4</sub>&#x02009;&#x02208;&#x02009;&#x0211D;<sup>&#x0002B;</sup> are unknown, positive constants.</p>
<p>The force&#x02013;length function, <italic>&#x003B7;</italic><sub>1</sub> in equation (<xref ref-type="disp-formula" rid="E4">3</xref>), is a Gaussian function. Therefore, for all real values of <italic>l</italic> the force&#x02013;length function can be bounded by a constant, which we will define to be <italic>&#x003B5;</italic><sub>&#x003B7;<sub>1</sub></sub>. This lower bound is practical in the sense that muscles are capable of generating a contractile force for any real muscle length. Similarly, the force&#x02013;velocity function <italic>&#x003B7;</italic><sub>2</sub> in equation (<xref ref-type="disp-formula" rid="E5">4</xref>) is lower bounded by a constant <italic>&#x003B5;</italic><sub>&#x003B7;<sub>2</sub></sub>. The lower bound on the force&#x02013;velocity relationship is practical in the sense that <italic>&#x003B7;</italic>&#x02009;&#x02192;&#x02009;0 as the muscle shortening velocity (a concentric contraction) nears infinity.</p>
<p>The definitions in equation (<xref ref-type="disp-formula" rid="E4">3</xref>) are not directly used in the control development. Instead, the structure of the relationships in equation (<xref ref-type="disp-formula" rid="E4">3</xref>) is used to conclude that <italic>&#x003B7;</italic><sub>1</sub> and <italic>&#x003B7;</italic><sub>2</sub> are continuously differentiable, non-zero, positive, and bounded functions.</p>
<p>The muscle force in equation (<xref ref-type="disp-formula" rid="E3">2</xref>) is coupled to the stimulation control input <italic>v</italic>&#x02009;&#x02208;&#x02009;&#x0211D; through an intermediate normalized muscle activation variable <italic>x</italic>&#x02009;&#x02208;&#x02009;&#x0211D;. The muscle activation variable is governed by the following differential equation (Zajac, <xref ref-type="bibr" rid="B48">1989</xref>)
<disp-formula id="E6"><label>(5)</label><mml:math id="M11"><mml:mn>2</mml:mn><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mi mathvariant="italic">wx</mml:mi><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mi mathvariant="italic">wsat</mml:mi><mml:mrow><mml:mo class="MathClass-open">[</mml:mo><mml:mrow><mml:mi>v</mml:mi></mml:mrow><mml:mo class="MathClass-close">]</mml:mo></mml:mrow><mml:mo class="MathClass-punc">,</mml:mo></mml:math></disp-formula>
where <italic>w</italic>&#x02009;&#x02208;&#x02009;&#x0211D; is the constant, unknown natural frequency of the calcium dynamics. The function <italic>sat</italic>[<italic>v</italic>]&#x02009;&#x02208;&#x02009;&#x0211D; (i.e., recruitment curve) is denoted by a piecewise linear function as (Schauer et al., <xref ref-type="bibr" rid="B38">2005</xref>)
<disp-formula id="E7"><label>(6)</label><mml:math id="M12"><mml:mi mathvariant="italic">sat</mml:mi><mml:mrow><mml:mo class="MathClass-open">[</mml:mo><mml:mrow><mml:mi>v</mml:mi></mml:mrow><mml:mo class="MathClass-close">]</mml:mo></mml:mrow><mml:mi>&#x0225C;</mml:mi><mml:mfenced separators="" open="&#x0007B;" close=""><mml:mrow><mml:mtable class="array"><mml:mtr><mml:mtd class="array" columnalign="center"><mml:mn>0</mml:mn></mml:mtd><mml:mtd class="array" columnalign="center"><mml:mi>v</mml:mi><mml:mo class="MathClass-rel">&#x0003C;</mml:mo><mml:msub><mml:mrow><mml:mi>v</mml:mi></mml:mrow><mml:mrow><mml:mi mathvariant="italic">min</mml:mi></mml:mrow></mml:msub></mml:mtd></mml:mtr><mml:mtr><mml:mtd class="array" columnalign="center"><mml:mfrac><mml:mrow><mml:mi>v</mml:mi><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:msub><mml:mrow><mml:mi>v</mml:mi></mml:mrow><mml:mrow><mml:mi mathvariant="italic">min</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 mathvariant="italic">max</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:msub><mml:mrow><mml:mi>v</mml:mi></mml:mrow><mml:mrow><mml:mi mathvariant="italic">min</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mfrac></mml:mtd><mml:mtd class="array" columnalign="center"><mml:msub><mml:mrow><mml:mi>v</mml:mi></mml:mrow><mml:mrow><mml:mi mathvariant="italic">min</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-rel">&#x02264;</mml:mo><mml:mi>v</mml:mi><mml:mo class="MathClass-rel">&#x02264;</mml:mo><mml:msub><mml:mrow><mml:mi>v</mml:mi></mml:mrow><mml:mrow><mml:mi mathvariant="italic">max</mml:mi></mml:mrow></mml:msub></mml:mtd></mml:mtr><mml:mtr><mml:mtd class="array" columnalign="center"><mml:mn>1</mml:mn></mml:mtd><mml:mtd class="array" columnalign="center"><mml:mi>v</mml:mi><mml:mo class="MathClass-rel">&#x0003E;</mml:mo><mml:msub><mml:mrow><mml:mi>v</mml:mi></mml:mrow><mml:mrow><mml:mi mathvariant="italic">max</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-punc">,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:mfenced></mml:math></disp-formula>
where <italic>v</italic><sub>min</sub>&#x02009;&#x02208;&#x02009;&#x0211D; is the minimum stimulation required to generate noticeable movement or force production in a muscle and <italic>v</italic><sub>max</sub>&#x02009;&#x02208;&#x02009;&#x0211D; is the stimulation input to the muscle at which no considerable increase in force or movement is observed. Based on equations (<xref ref-type="disp-formula" rid="E6">5</xref>) and (<xref ref-type="disp-formula" rid="E7">6</xref>), a linear differential inequality can be developed to show that <italic>x</italic>&#x02009;&#x02208;&#x02009;[0, 1]. Muscle fatigue is included in equation (<xref ref-type="disp-formula" rid="E3">2</xref>) through the invertible, positive, bounded fatigue term <italic>&#x003C6;</italic>&#x02009;&#x02208;&#x02009;&#x0211D; that is generated from the first-order differential equation as (Riener et al., <xref ref-type="bibr" rid="B36">1996</xref>)
<disp-formula id="E8"><label>(7)</label><mml:math id="M13"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x0003D;</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:mi>f</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mfrac><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mrow><mml:mi mathvariant="italic">min</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mi>x</mml:mi><mml:mo class="MathClass-bin">&#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:mi>r</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mfrac><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mn>1</mml:mn><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mn>1</mml:mn><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-punc">,</mml:mo></mml:math></disp-formula>
where <italic>&#x003C6;</italic><sub>min</sub>&#x02009;&#x02208;&#x02009;[0, 1] is the unknown minimum fatigue constant of the muscle and <italic>T<sub>f</sub>, T<sub>r</sub></italic>&#x02009;&#x02208;&#x02009;&#x0211D;<sup>&#x0002B;</sup> are unknown time constants for fatigue and recovery in the muscle, respectively. Because <italic>x</italic>&#x02009;&#x02208;&#x02009;[0, 1] it can be shown that <italic>&#x003C6;</italic>&#x02009;&#x02208;&#x02009;[<italic>&#x003C6;</italic><sub>min</sub>, 1], where <italic>&#x003C6;</italic>&#x02009;&#x0003D;&#x02009;1 when the muscle is fully rested, and <italic>&#x003C6;</italic>&#x02009;&#x0003D;&#x02009;<italic>&#x003C6;</italic><sub>min</sub> when the muscle is fully fatigued. For <italic>x</italic>&#x02009;&#x0003D;&#x02009;0, equation (<xref ref-type="disp-formula" rid="E8">7</xref>) can be reduced to <inline-formula><mml:math id="M14"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x0003D;</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:mi>r</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mfrac><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mn>1</mml:mn><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow></mml:math></inline-formula>, which has the solution <italic>&#x003C6;</italic>(<italic>t</italic>)&#x02009;&#x0003D;&#x02009;1&#x02009;&#x0002B;&#x02009;(<italic>&#x003C6;</italic><sub><italic>r</italic>0</sub>&#x02009;&#x02212;&#x02009;1)<italic>e</italic><sup>&#x02212;<italic>t&#x02215;T<sub>r</sub></italic></sup> that converges to 1 as <italic>t</italic>&#x02009;&#x02192;&#x02009;&#x0221E;. For <italic>x</italic>&#x02009;&#x0003D;&#x02009;1, equation (<xref ref-type="disp-formula" rid="E8">7</xref>) can be reduced to <inline-formula><mml:math id="M16"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x0003D;</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:mi>r</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mfrac><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mn>1</mml:mn><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow></mml:math></inline-formula>, which has the solution <inline-formula><mml:math id="M17"><mml:mi>&#x003C6;</mml:mi><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mrow><mml:mtext>min</mml:mtext></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mrow><mml:mtext>min</mml:mtext></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:msup><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mi>t</mml:mi><mml:mo class="MathClass-bin">&#x02215;</mml:mo><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:msup></mml:math></inline-formula> that converges to <italic>&#x003C6;</italic><sub>min</sub> as <italic>t</italic>&#x02009;&#x02192;&#x02009;&#x0221E;. Since <italic>x</italic>&#x02009;&#x02208;&#x02009;[0, 1] and because equation (<xref ref-type="disp-formula" rid="E8">7</xref>) is a first-order differential equation, the solutions of <italic>&#x003C6;</italic> at the bounds of <italic>x</italic> results in <italic>&#x003C6;</italic> being bounded as <italic>&#x003C6;</italic>&#x02009;&#x02208;&#x02009;[<italic>&#x003C6;</italic><sub>min</sub>, 1].</p>
</sec>
<sec id="S2-2">
<label>2.2</label> <title>Body Segmental Dynamics (Knee Dynamics)</title>
<p>The total knee-joint dynamics in the sagittal plane can be modeled as (Schauer et al., <xref ref-type="bibr" rid="B38">2005</xref>)
<disp-formula id="E9"><label>(8)</label><mml:math id="M18"><mml:mi>J</mml:mi><mml:mover accent="true"><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x000A8;</mml:mo></mml:mover><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>M</mml:mi></mml:mrow><mml:mrow><mml:mi>e</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>M</mml:mi></mml:mrow><mml:mrow><mml:mi>g</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>M</mml:mi></mml:mrow><mml:mrow><mml:mi>v</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mn>&#x003C4;</mml:mn></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mn>&#x003C4;</mml:mn><mml:mo class="MathClass-punc">.</mml:mo></mml:math></disp-formula></p>
<p>In equation (<xref ref-type="disp-formula" rid="E9">8</xref>), <italic>J</italic>&#x02009;&#x02208;&#x02009;&#x0211D;<sup>&#x0002B;</sup> denotes the inertia of the combined shank and foot, <italic>M<sub>e</sub></italic>&#x02009;&#x02208;&#x02009;&#x0211D; denotes the elastic effects due to joint stiffness, <italic>M<sub>g</sub></italic>&#x02009;&#x02208;&#x02009;&#x0211D; denotes the gravitational component, <italic>M<sub>v</sub></italic>&#x02009;&#x02208;&#x02009;&#x0211D; denotes the viscous effects due to damping in the musculotendon complex (Ferrarin and Pedotti, <xref ref-type="bibr" rid="B15">2000</xref>), <italic>&#x003C4;<sub>d</sub></italic>&#x02009;&#x02208;&#x02009;&#x0211D; is an unknown bounded exogenous disturbance that represents an unmodeled reflex activation of the muscle (e.g., muscle spasticity) and other unknown unmodeled phenomena (e.g., changing loads), and <italic>&#x003C4;</italic>&#x02009;&#x02208;&#x02009;&#x0211D; denotes the torque produced at the knee joint due to NMES. In the subsequent development, the unknown disturbance <italic>&#x003C4;<sub>d</sub></italic> is assumed to be bounded, which is reasonable for typical disturbances such as muscle spasticity and load changes during functional tasks. The definitions of <italic>M<sub>e</sub>, M<sub>g</sub></italic>, and <italic>M<sub>v</sub></italic> are given in our previous work (Sharma et al., <xref ref-type="bibr" rid="B43">2009a</xref>,<xref ref-type="bibr" rid="B44">b</xref>, <xref ref-type="bibr" rid="B41">2011</xref>, <xref ref-type="bibr" rid="B42">2012</xref>).</p>
</sec>
</sec>
<sec id="S3">
<label>3</label> <title>Control Development</title>
<p>The objective is to develop an NMES controller to produce a knee torque trajectory that will enable a person&#x02019;s shank to track a desired trajectory, denoted by <italic>q<sub>d</sub></italic>&#x02009;&#x02208;&#x02009;&#x0211D;, despite uncertain fatigue effects and coupled muscle force and calcium dynamics. A Lyapunov redesign approach is used, where the control development and stability analysis are performed at the same time, to design control and update laws. Without loss of generality, the developed controller is applicable to different stimulation protocols (i.e., voltage, frequency, or pulse width modulation). To quantify the objective, a position tracking error, denoted by <italic>e</italic>&#x02009;&#x02208;&#x02009;&#x0211D;, is defined as
<disp-formula id="E10"><label>(9)</label><mml:math id="M19"><mml:mi>e</mml:mi><mml:mo class="MathClass-rel">&#x0003D;</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 class="MathClass-bin">&#x02212;</mml:mo><mml:mi>q</mml:mi><mml:mo class="MathClass-punc">,</mml:mo></mml:math></disp-formula>
where <italic>q<sub>d</sub></italic> is designed such that <inline-formula><mml:math id="M20"><mml:msubsup><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msubsup><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:msub><mml:mrow><mml:mi mathvariant="script">L</mml:mi></mml:mrow><mml:mrow><mml:mo class="MathClass-rel">&#x0221E;</mml:mo></mml:mrow></mml:msub></mml:math></inline-formula>, where <inline-formula><mml:math id="M21"><mml:msubsup><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow></mml:mrow></mml:msubsup></mml:math></inline-formula> denotes the <italic>i</italic>th derivative for <italic>i</italic>&#x02009;&#x0003D;&#x02009;0, 1, 2, 3, 4. To facilitate the subsequent analysis, a filtered tracking error, denoted by <italic>r</italic>&#x02009;&#x02208;&#x02009;&#x0211D;, is defined as
<disp-formula id="E11"><label>(10)</label><mml:math id="M22"><mml:mi>r</mml:mi><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mi>&#x003B1;</mml:mi><mml:mi>e</mml:mi><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-punc">,</mml:mo></mml:math></disp-formula>
where &#x003B1;&#x02009;&#x02208;&#x02009;&#x0211D; denotes a positive constant.</p>
<sec id="S3-3">
<label>3.1</label> <title>Open-Loop Error System</title>
<p>The open-loop tracking error system is developed by taking the time derivative of equation (<xref ref-type="disp-formula" rid="E11">10</xref>), multiplying the resulting expression by <italic>J</italic>, and then utilizing the expressions in equations (<xref ref-type="disp-formula" rid="E1">1</xref>), (<xref ref-type="disp-formula" rid="E3">2</xref>), (<xref ref-type="disp-formula" rid="E9">8</xref>), and (<xref ref-type="disp-formula" rid="E10">9</xref>) to yield
<disp-formula id="E12"><label>(11)</label><mml:math id="M23"><mml:mi>J</mml:mi><mml:mover accent="true"><mml:mrow><mml:mi>r</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mi>J</mml:mi><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mi>&#x003B1;</mml:mi><mml:mover accent="true"><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x000A8;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>M</mml:mi></mml:mrow><mml:mrow><mml:mi>e</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>M</mml:mi></mml:mrow><mml:mrow><mml:mi>g</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>M</mml:mi></mml:mrow><mml:mrow><mml:mi>v</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mn>&#x003C4;</mml:mn></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mi>&#x003C1;</mml:mi><mml:mspace width="0.3em"/><mml:mi>&#x003C6;</mml:mi><mml:mspace width="0.3em"/><mml:mi>x</mml:mi><mml:mo class="MathClass-punc">,</mml:mo></mml:math></disp-formula>
where the auxiliary term <italic>&#x003C1;</italic>&#x02009;&#x02208;&#x02009;&#x0211D; is defined as
<disp-formula id="E13"><mml:math id="M24"><mml:mi>&#x003C1;</mml:mi><mml:mi>&#x0225C;</mml:mi><mml:mn>&#x003C2;</mml:mn><mml:mi mathvariant="italic">cos</mml:mi><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mi>a</mml:mi></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:msub><mml:mrow><mml:mi>F</mml:mi></mml:mrow><mml:mrow><mml:mi>m</mml:mi></mml:mrow></mml:msub><mml:msub><mml:mrow><mml:mi>&#x003B7;</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:msub><mml:mrow><mml:mi>&#x003B7;</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo class="MathClass-punc">.</mml:mo></mml:math></disp-formula></p>
<p>After multiplying equation (<xref ref-type="disp-formula" rid="E12">11</xref>) by <italic>&#x003C1;</italic><sup>&#x02212;1</sup>, the following expression is obtained:
<disp-formula id="E14"><label>(12)</label><mml:math id="M25"><mml:msub><mml:mrow><mml:mi>J</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x003C1;</mml:mi></mml:mrow></mml:msub><mml:mover accent="true"><mml:mrow><mml:mi>r</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:msub><mml:mrow><mml:mi>J</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x003C1;</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mi>&#x003B1;</mml:mi><mml:mover accent="true"><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x000A8;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>L</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x003C1;</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mn>&#x003C4;</mml:mn></mml:mrow><mml:mrow><mml:mi>d</mml:mi><mml:mi>&#x003C1;</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mi>&#x003C6;</mml:mi><mml:mi>x</mml:mi><mml:mo class="MathClass-punc">,</mml:mo></mml:math></disp-formula>
where <italic>J<sub>p</sub></italic>, &#x003C4;<italic><sub>dp</sub>, L<sub>&#x003C1;</sub></italic>&#x02009;&#x02208;&#x02009;&#x0211D; are defined as
<disp-formula id="E15"><mml:math id="M26"><mml:msub><mml:mrow><mml:mi>J</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x003C1;</mml:mi></mml:mrow></mml:msub><mml:mi>&#x0225C;</mml:mi><mml:mfrac><mml:mrow><mml:mi>J</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x003C1;</mml:mi></mml:mrow></mml:mfrac><mml:mo class="MathClass-punc">,</mml:mo><mml:mspace width="1em" class="quad"/><mml:mspace width="1em" class="quad"/><mml:msub><mml:mrow><mml:mn>&#x003C4;</mml:mn></mml:mrow><mml:mrow><mml:mi>d</mml:mi><mml:mi>&#x003C1;</mml:mi></mml:mrow></mml:msub><mml:mi>&#x0225C;</mml:mi><mml:mfrac><mml:mrow><mml:msub><mml:mrow><mml:mn>&#x003C4;</mml:mn></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mrow><mml:mi>&#x003C1;</mml:mi></mml:mrow></mml:mfrac><mml:mo class="MathClass-punc">,</mml:mo><mml:mspace width="1em" class="quad"/><mml:mspace width="1em" class="quad"/><mml:msub><mml:mrow><mml:mi>L</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x003C1;</mml:mi></mml:mrow></mml:msub><mml:mi>&#x0225C;</mml:mi><mml:mfrac><mml:mrow><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>M</mml:mi></mml:mrow><mml:mrow><mml:mi>e</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>M</mml:mi></mml:mrow><mml:mrow><mml:mi>g</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>M</mml:mi></mml:mrow><mml:mrow><mml:mi>v</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mi>&#x003C1;</mml:mi></mml:mrow></mml:mfrac><mml:mo class="MathClass-punc">.</mml:mo></mml:math></disp-formula></p>
<p><bold>Property 1:</bold> Based on the assumptions and properties in Section <xref ref-type="sec" rid="S2">2</xref>, <italic>&#x003C1;</italic> is continuously differentiable, positive, and bounded. The first time derivatives of <italic>&#x003C1;</italic> and <inline-formula><mml:math id="M27"><mml:mfrac><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>&#x003C1;</mml:mi></mml:mrow></mml:mfrac></mml:math></inline-formula> exist and are bounded. The inertia function <italic>J<sub>p</sub></italic> is positive definite and can be upper and lower bounded as
<disp-formula id="E16"><label>(13)</label><mml:math id="M28"><mml:msub><mml:mrow><mml:mi>a</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:msup><mml:mrow><mml:mfenced separators="" open="&#x02225;" close="&#x02225;"><mml:mrow><mml:mn>&#x003B3;</mml:mn></mml:mrow></mml:mfenced></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mo class="MathClass-rel">&#x02264;</mml:mo><mml:msup><mml:mrow><mml:mn>&#x003B3;</mml:mn></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:msub><mml:mrow><mml:mi>J</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x003C1;</mml:mi></mml:mrow></mml:msub><mml:mn>&#x003B3;</mml:mn><mml:mo class="MathClass-rel">&#x02264;</mml:mo><mml:msub><mml:mrow><mml:mi>a</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:msup><mml:mrow><mml:mfenced separators="" open="&#x02225;" close="&#x02225;"><mml:mrow><mml:mn>&#x003B3;</mml:mn></mml:mrow></mml:mfenced></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mspace width="1em" class="quad"/><mml:mo class="MathClass-rel">&#x02200;</mml:mo><mml:mspace width="0.3em"/><mml:mn>&#x003B3;</mml:mn><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi mathvariant="double-struck">R</mml:mi></mml:mrow><mml:mrow><mml:mi>n</mml:mi></mml:mrow></mml:msup><mml:mo class="MathClass-punc">,</mml:mo></mml:math></disp-formula>
where <italic>a</italic><sub>1</sub>, <italic>a</italic><sub>2</sub>&#x02009;&#x02208;&#x02009;&#x0211D;<sup>&#x0002B;</sup> are some known positive constants. Based on the boundedness of <italic>&#x003C1;</italic>, <inline-formula><mml:math id="M29"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C1;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover></mml:math></inline-formula>, and <inline-formula><mml:math id="M30"><mml:mfrac><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>&#x003C1;</mml:mi></mml:mrow></mml:mfrac></mml:math></inline-formula>
<disp-formula id="E17"><label>(14)</label><mml:math id="M31"><mml:mfenced separators="" open="|" close="|"><mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>J</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>&#x003C1;</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mfenced><mml:mo class="MathClass-rel">&#x02264;</mml:mo><mml:msub><mml:mrow><mml:mn>&#x003BE;</mml:mn></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mspace width="1em" class="quad"/><mml:mfenced separators="" open="|" close="|"><mml:mrow><mml:msub><mml:mrow><mml:mn>&#x003C4;</mml:mn></mml:mrow><mml:mrow><mml:mi>d</mml:mi><mml:mi>&#x003C1;</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mfenced><mml:mo class="MathClass-rel">&#x02264;</mml:mo><mml:msub><mml:mrow><mml:mn>&#x003BE;</mml:mn></mml:mrow><mml:mrow><mml:mn>&#x003C4;</mml:mn></mml:mrow></mml:msub><mml:mo class="MathClass-punc">,</mml:mo></mml:math></disp-formula>
where <italic>&#x003BE;<sub>j</sub>, &#x003BE;<sub>&#x003C4;</sub></italic>&#x02009;&#x02208;&#x02009;&#x0211D;<sup>&#x0002B;</sup> are some known positive constants.</p>
<p>Based on equation (<xref ref-type="disp-formula" rid="E8">7</xref>) a positive estimate <inline-formula><mml:math id="M32"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:math></inline-formula> is generated as
<disp-formula id="E18"><label>(15)</label><mml:math id="M33"><mml:mtable columnalign="left" class="align"><mml:mtr><mml:mtd></mml:mtd><mml:mtd class="align-even"><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x0003D;</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 class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>f</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mfrac><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi mathvariant="italic">min</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-bin">&#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 class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>r</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mfrac><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mn>1</mml:mn><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mn>1</mml:mn><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-punc">,</mml:mo></mml:mtd></mml:mtr><mml:mtr><mml:mtd></mml:mtd><mml:mtd class="align-even"><mml:mn>1</mml:mn><mml:mo class="MathClass-rel">&#x02265;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mspace width="0.3em"/><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mn>0</mml:mn></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-rel">&#x0003E;</mml:mo><mml:mn>0</mml:mn><mml:mo class="MathClass-punc">,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
where <inline-formula><mml:math id="M34"><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>T</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>f</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-punc">,</mml:mo><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>T</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>r</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi mathvariant="double-struck">R</mml:mi></mml:mrow><mml:mrow><mml:mo class="MathClass-bin">&#x0002B;</mml:mo></mml:mrow></mml:msup></mml:math></inline-formula> denote constant, estimates of the time constants <italic>T<sub>f</sub></italic> and <italic>T<sub>r</sub></italic>, respectively. <inline-formula><mml:math id="M35"><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi mathvariant="italic">min</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:mi mathvariant="double-struck">R</mml:mi></mml:math></inline-formula> is a non-zero known positive constant that is an estimate of <italic>&#x003C6;<sub>min</sub></italic>, and <inline-formula><mml:math id="M36"><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:mi mathvariant="double-struck">R</mml:mi></mml:math></inline-formula> is the estimated normalized muscle activation variable which is generated based on equation (<xref ref-type="disp-formula" rid="E6">5</xref>) as
<disp-formula id="E19"><label>(16)</label><mml:math id="M37"><mml:mn>2</mml:mn><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>w</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>w</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mi mathvariant="italic">sat</mml:mi><mml:mrow><mml:mo class="MathClass-open">[</mml:mo><mml:mrow><mml:mi>v</mml:mi></mml:mrow><mml:mo class="MathClass-close">]</mml:mo></mml:mrow><mml:mo class="MathClass-punc">,</mml:mo></mml:math></disp-formula>
where <inline-formula><mml:math id="M38"><mml:mover accent="true"><mml:mrow><mml:mi>w</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:mi mathvariant="double-struck">R</mml:mi></mml:math></inline-formula> denotes the constant best-guess estimate of <italic>w</italic>, the unknown natural frequency of the calcium dynamics. The estimated function <inline-formula><mml:math id="M39"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:math></inline-formula> is upper bounded by a positive constant <inline-formula><mml:math id="M40"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x000AF;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi mathvariant="double-struck">R</mml:mi></mml:mrow><mml:mrow><mml:mo class="MathClass-bin">&#x0002B;</mml:mo></mml:mrow></mml:msup></mml:math></inline-formula>. Specifically, <inline-formula><mml:math id="M41"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x000AF;</mml:mo></mml:mover></mml:math></inline-formula> can be determined as
<disp-formula id="E20"><mml:math id="M42"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x000AF;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mn>0</mml:mn></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mn>1</mml:mn><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mfrac><mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>T</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>r</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>T</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>f</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mfrac><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi mathvariant="normal">min</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-punc">.</mml:mo></mml:math></disp-formula></p>
<p>The differential equation (<xref ref-type="disp-formula" rid="E18">15</xref>) ensures that <inline-formula><mml:math id="M43"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:math></inline-formula> remains strictly positive. Based on equations (<xref ref-type="disp-formula" rid="E7">6</xref>) and (<xref ref-type="disp-formula" rid="E19">16</xref>), a linear differential inequality can be developed to show that <inline-formula><mml:math id="M44"><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:mrow><mml:mo class="MathClass-open">[</mml:mo><mml:mrow><mml:mn>0</mml:mn><mml:mo class="MathClass-punc">,</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mo class="MathClass-close">]</mml:mo></mml:mrow></mml:math></inline-formula>.</p>
<p>In the next step, the open-loop error dynamics in equation (<xref ref-type="disp-formula" rid="E14">12</xref>) is algebraically manipulated to separate a term that will be estimated by the NN, and also to obtain functions that represent errors due to estimated fatigue and muscle activation variables. Thus, the open-loop error dynamics can be expressed as
<disp-formula id="E21"><label>(17)</label><mml:math id="M45"><mml:msub><mml:mrow><mml:mi>J</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x003C1;</mml:mi></mml:mrow></mml:msub><mml:mover accent="true"><mml:mrow><mml:mi>r</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mi>S</mml:mi><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mn>&#x003C4;</mml:mn></mml:mrow><mml:mrow><mml:mi>d</mml:mi><mml:mi>&#x003C1;</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mi>e</mml:mi><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mi>&#x003C6;</mml:mi><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mrow><mml:mi>e</mml:mi></mml:mrow></mml:msub><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mfrac><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:mfrac><mml:msub><mml:mrow><mml:mn>&#x003BE;</mml:mn></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mi>r</mml:mi><mml:mo class="MathClass-punc">,</mml:mo></mml:math></disp-formula>
where the auxiliary function <italic>S</italic>&#x02009;&#x02208;&#x02009;&#x0211D; that will be estimated by the NN is defined as
<disp-formula id="E22"><label>(18)</label><mml:math id="M46"><mml:mi>S</mml:mi><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:msub><mml:mrow><mml:mi>J</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x003C1;</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x000A8;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mi>&#x003B1;</mml:mi><mml:mover accent="true"><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>L</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x003C1;</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mi>e</mml:mi><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mfrac><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:mfrac><mml:msub><mml:mrow><mml:mn>&#x003BE;</mml:mn></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mi>r</mml:mi><mml:mo class="MathClass-punc">,</mml:mo></mml:math></disp-formula>
and the error functions <italic>&#x003C6;<sub>e</sub></italic>, <inline-formula><mml:math id="M47"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover></mml:math></inline-formula>, <inline-formula><mml:math id="M48"><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:mi mathvariant="double-struck">R</mml:mi></mml:math></inline-formula> are defined as
<disp-formula id="E23"><label>(19)</label><mml:math id="M49"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mi>&#x0225C;</mml:mi><mml:mi>&#x003C6;</mml:mi><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-punc">,</mml:mo><mml:mspace width="1em"/><mml:msub><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mrow><mml:mi>e</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mi>x</mml:mi><mml:mo class="MathClass-punc">,</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mi>&#x0225C;</mml:mi><mml:mi>&#x003C6;</mml:mi><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mi>&#x003C6;</mml:mi><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-punc">,</mml:mo><mml:mspace width="1em"/><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover><mml:mi>&#x0225C;</mml:mi><mml:mi>x</mml:mi><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-punc">.</mml:mo></mml:math></disp-formula></p>
<p>Since <italic>&#x003C6;</italic> is a bounded function, the error function <italic>&#x003C6;<sub>e</sub></italic> can be upper bounded as
<disp-formula id="E24"><label>(20)</label><mml:math id="M50"><mml:mfenced separators="" open="|" close="|"><mml:mrow><mml:msub><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mrow><mml:mi>e</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mfenced><mml:mo class="MathClass-rel">&#x02264;</mml:mo><mml:msub><mml:mrow><mml:mn>&#x003BE;</mml:mn></mml:mrow><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-punc">,</mml:mo></mml:math></disp-formula>
where &#x003BE;<italic><sub>&#x003C6;</sub></italic>&#x02009;&#x02208;&#x02009;&#x0211D; is some known positive constant. The auxiliary function <italic>S</italic> can be represented by a three-layer NN as
<disp-formula id="E25"><label>(21)</label><mml:math id="M51"><mml:mi>S</mml:mi><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:msup><mml:mrow><mml:mi>W</mml:mi></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:mi>&#x003C3;</mml:mi><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msup><mml:mrow><mml:mi>U</mml:mi></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:mi>y</mml:mi></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mn>&#x003F5;</mml:mn><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mi>y</mml:mi></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-punc">,</mml:mo></mml:math></disp-formula>
where <italic>y</italic>&#x02009;&#x02208;&#x02009;&#x0211D;<sup>7</sup> is defined as
<disp-formula id="E26"><label>(22)</label><mml:math id="M52"><mml:mi>y</mml:mi><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mfenced separators="" open="[" close="]"><mml:mrow><mml:mtable class="array"><mml:mtr><mml:mtd class="array" columnalign="center"><mml:mn>1</mml:mn></mml:mtd><mml:mtd class="array" columnalign="center"><mml:mi>q</mml:mi></mml:mtd><mml:mtd class="array" columnalign="center"><mml:mover accent="true"><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover></mml:mtd><mml:mtd class="array" columnalign="center"><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x000A8;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub></mml:mtd><mml:mtd class="array" columnalign="center"><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mtd><mml:mtd class="array" columnalign="center"><mml:mi>e</mml:mi></mml:mtd><mml:mtd class="array" columnalign="center"><mml:mi>r</mml:mi></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:mfenced><mml:mspace width="0.3em" class="thinspace"/><mml:mo class="MathClass-punc">.</mml:mo></mml:math></disp-formula></p>
<p><inline-formula><mml:math id="M53"><mml:mi>U</mml:mi><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi mathvariant="double-struck">R</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>N</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-bin">&#x000D7;</mml:mo><mml:msub><mml:mrow><mml:mi>N</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub></mml:mrow></mml:msup></mml:math></inline-formula> and <inline-formula><mml:math id="M54"><mml:mi>W</mml:mi><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi mathvariant="double-struck">R</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>N</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-bin">&#x000D7;</mml:mo><mml:mi>n</mml:mi></mml:mrow></mml:msup></mml:math></inline-formula> are bounded constant ideal weight matrices for the first-to-second and second-to-third layers, respectively, where <italic>N</italic><sub>1</sub> is the number of neurons in the input layer, <italic>N</italic><sub>2</sub> is the number of neurons in the hidden layer, and <italic>n</italic> is the number of neurons in the output layer. The sigmoid activation function in equation (<xref ref-type="disp-formula" rid="E25">21</xref>) is denoted by <inline-formula><mml:math id="M55"><mml:mi>&#x003C3;</mml:mi><mml:mo class="MathClass-punc">:</mml:mo><mml:msup><mml:mrow><mml:mi mathvariant="double-struck">R</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>N</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub></mml:mrow></mml:msup><mml:mo class="MathClass-rel">&#x02192;</mml:mo><mml:msup><mml:mrow><mml:mi mathvariant="double-struck">R</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>N</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula>, and &#x003F5; &#x02208; &#x0211D;<italic><sup>n</sup></italic> is the functional reconstruction error, which can be upper bounded by a constant as
<disp-formula id="E27"><label>(23)</label><mml:math id="M57"><mml:mfenced separators="" open="|" close="|"><mml:mrow><mml:mn>&#x003F5;</mml:mn><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mi>y</mml:mi></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow></mml:mrow></mml:mfenced><mml:mo class="MathClass-rel">&#x02264;</mml:mo><mml:mi>&#x003B5;</mml:mi><mml:mo class="MathClass-punc">.</mml:mo></mml:math></disp-formula></p>
<p>The additional term &#x0201C;1&#x0201D; in the input vector <italic>y</italic> and activation term <italic>&#x003C3;</italic> enables the activation function thresholds to be included as the first columns of the weight matrices (Lewis et al., <xref ref-type="bibr" rid="B32">2002</xref>). Thus, any tuning of <italic>W</italic> and <italic>U</italic> also includes tuning the thresholds.</p>
</sec>
<sec id="S3-4">
<label>3.2</label> <title>Closed-Loop Error System</title>
<p>Since a direct control input does not appear in the open-loop system in equation (<xref ref-type="disp-formula" rid="E21">17</xref>), a backstepping-based approach is used to inject a virtual control input <italic>x<sub>d</sub></italic>&#x02009;&#x02208;&#x02009;&#x0211D; (i.e., desired muscle activation) as
<disp-formula id="E28"><label>(24)</label><mml:math id="M58"><mml:msub><mml:mrow><mml:mi>J</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x003C1;</mml:mi></mml:mrow></mml:msub><mml:mover accent="true"><mml:mrow><mml:mi>r</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mi>S</mml:mi><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mn>&#x003C4;</mml:mn></mml:mrow><mml:mrow><mml:mi>d</mml:mi><mml:mi>&#x003C1;</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mfrac><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:mfrac><mml:msub><mml:mrow><mml:mn>&#x003BE;</mml:mn></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mi>r</mml:mi><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mi>e</mml:mi><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mi>&#x003C6;</mml:mi><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mrow><mml:mi>e</mml:mi></mml:mrow></mml:msub><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:msub><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:msub><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-punc">.</mml:mo></mml:math></disp-formula></p>
<p>Based on equation (<xref ref-type="disp-formula" rid="E28">24</xref>), the virtual control input is designed as a three-layer NN feedforward term plus a feedback term as
<disp-formula id="E29"><label>(25)</label><mml:math id="M59"><mml:msub><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msup><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>S</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:mi>s</mml:mi></mml:mrow></mml:msub><mml:mi>r</mml:mi></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-punc">,</mml:mo></mml:math></disp-formula>
where <inline-formula><mml:math id="M60"><mml:msub><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:mi>s</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:msub><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>s</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>s</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:math></inline-formula> and <inline-formula><mml:math id="M61"><mml:msub><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>s</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:mrow></mml:msub><mml:mo class="MathClass-punc">,</mml:mo><mml:msub><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>s</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub></mml:mrow></mml:msub><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi mathvariant="double-struck">R</mml:mi></mml:mrow><mml:mrow><mml:mo class="MathClass-bin">&#x0002B;</mml:mo></mml:mrow></mml:msup></mml:math></inline-formula> are positive constant gains. The feedforward NN component in equation (<xref ref-type="disp-formula" rid="E29">25</xref>), denoted by <inline-formula><mml:math id="M62"><mml:mover accent="true"><mml:mrow><mml:mi>S</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:mi mathvariant="double-struck">R</mml:mi></mml:math></inline-formula> is generated as
<disp-formula id="E30"><label>(26)</label><mml:math id="M63"><mml:mover accent="true"><mml:mrow><mml:mi>S</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>W</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:mi>&#x003C3;</mml:mi><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>U</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:mi>y</mml:mi></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-punc">,</mml:mo></mml:math></disp-formula>
where <inline-formula><mml:math id="M64"><mml:mover accent="true"><mml:mrow><mml:mi>U</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi mathvariant="double-struck">R</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>N</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-bin">&#x000D7;</mml:mo><mml:msub><mml:mrow><mml:mi>N</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub></mml:mrow></mml:msup></mml:math></inline-formula> and <inline-formula><mml:math id="M65"><mml:mover accent="true"><mml:mrow><mml:mi>W</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi mathvariant="double-struck">R</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>N</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-bin">&#x000D7;</mml:mo><mml:mi>n</mml:mi></mml:mrow></mml:msup></mml:math></inline-formula> are estimates of the ideal weight matrices. Estimates for the NN weights in equation (<xref ref-type="disp-formula" rid="E30">26</xref>) are generated online using a projection algorithm (Krstic et al., <xref ref-type="bibr" rid="B27">1995</xref>) as
<disp-formula id="E31"><label>(27)</label><mml:math id="M66"><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>W</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mi mathvariant="italic">proj</mml:mi><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mn>&#x00393;</mml:mn></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C3;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mi>r</mml:mi></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-punc">,</mml:mo><mml:mspace width="1em" class="quad"/><mml:mspace width="1em" class="quad"/><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>U</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mi mathvariant="italic">proj</mml:mi><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mn>&#x00393;</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mi>y</mml:mi><mml:msup><mml:mrow><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C3;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo class="MathClass-rel">&#x02032;</mml:mo><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:mover accent="true"><mml:mrow><mml:mi>W</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mi>r</mml:mi></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-punc">,</mml:mo></mml:math></disp-formula>
where <inline-formula><mml:math id="M67"><mml:msub><mml:mrow><mml:mn>&#x00393;</mml:mn></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi mathvariant="double-struck">R</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>N</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-bin">&#x000D7;</mml:mo><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>N</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow></mml:mrow></mml:msup></mml:math></inline-formula> and <inline-formula><mml:math id="M68"><mml:msub><mml:mrow><mml:mn>&#x00393;</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi mathvariant="double-struck">R</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>N</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-bin">&#x000D7;</mml:mo><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>N</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow></mml:mrow></mml:msup></mml:math></inline-formula> are constant, positive definite, symmetric gain matrices. The closed-loop tracking error system can be developed by substituting equation (<xref ref-type="disp-formula" rid="E29">25</xref>) into equation (<xref ref-type="disp-formula" rid="E28">24</xref>) as
<disp-formula id="E32"><mml:math id="M69"><mml:msub><mml:mrow><mml:mi>J</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x003C1;</mml:mi></mml:mrow></mml:msub><mml:mover accent="true"><mml:mrow><mml:mi>r</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mfrac><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:mfrac><mml:msub><mml:mrow><mml:mn>&#x003BE;</mml:mn></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mi>r</mml:mi><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mi>e</mml:mi><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>S</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mn>&#x003C4;</mml:mn></mml:mrow><mml:mrow><mml:mi>d</mml:mi><mml:mi>&#x003C1;</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mi>&#x003C6;</mml:mi><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mrow><mml:mi>e</mml:mi></mml:mrow></mml:msub><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:msub><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:mi>s</mml:mi></mml:mrow></mml:msub><mml:mi>r</mml:mi><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:msub><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-punc">,</mml:mo></mml:math></disp-formula>
where <inline-formula><mml:math id="M70"><mml:mover accent="true"><mml:mrow><mml:mi>S</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:mi mathvariant="double-struck">R</mml:mi></mml:math></inline-formula> is defined as
<disp-formula id="E33"><label>(28)</label><mml:math id="M71"><mml:mover accent="true"><mml:mrow><mml:mi>S</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mi>S</mml:mi><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>S</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-punc">,</mml:mo></mml:math></disp-formula>
and <italic>e<sub>x</sub></italic>&#x02009;&#x02208;&#x02009;&#x0211D; is the backstepping error defined as
<disp-formula id="E34"><label>(29)</label><mml:math id="M72"><mml:msub><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:msub><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-punc">.</mml:mo></mml:math></disp-formula></p>
<p>After writing the definitions of <italic>S</italic> and <inline-formula><mml:math id="M73"><mml:mover accent="true"><mml:mrow><mml:mi>S</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:math></inline-formula> in terms of ideal and estimated NN weights, the closed-loop system can be expressed as
<disp-formula id="E35"><label>(30)</label><mml:math id="M74"><mml:mtable columnalign="left" class="align"><mml:mtr><mml:mtd columnalign="right" class="align-odd"><mml:msub><mml:mrow><mml:mi>J</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x003C1;</mml:mi></mml:mrow></mml:msub><mml:mover accent="true"><mml:mrow><mml:mi>r</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover></mml:mtd><mml:mtd class="align-even"><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mfrac><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:mfrac><mml:msub><mml:mrow><mml:mn>&#x003BE;</mml:mn></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mi>r</mml:mi><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mi>e</mml:mi><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>W</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C3;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>W</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C3;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>W</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C3;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mn>&#x003F5;</mml:mn><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mi>y</mml:mi></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:msub><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub></mml:mtd></mml:mtr><mml:mtr><mml:mtd></mml:mtd><mml:mtd class="align-even"><mml:mspace width="1em" class="quad"/><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mn>&#x003C4;</mml:mn></mml:mrow><mml:mrow><mml:mi>d</mml:mi><mml:mi>&#x003C1;</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mi>&#x003C6;</mml:mi><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mrow><mml:mi>e</mml:mi></mml:mrow></mml:msub><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:msub><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:mi>s</mml:mi></mml:mrow></mml:msub><mml:mi>r</mml:mi><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:msub><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-punc">,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
where <inline-formula><mml:math id="M75"><mml:mover accent="true"><mml:mrow><mml:mi>W</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi mathvariant="double-struck">R</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>N</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-bin">&#x000D7;</mml:mo><mml:mi>n</mml:mi></mml:mrow></mml:msup></mml:math></inline-formula> is defined as <inline-formula><mml:math id="M76"><mml:mover accent="true"><mml:mrow><mml:mi>W</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mi>W</mml:mi><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>W</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:math></inline-formula>, the notations <inline-formula><mml:math id="M77"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C3;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:math></inline-formula> and <inline-formula><mml:math id="M78"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C3;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover></mml:math></inline-formula>, <inline-formula><mml:math id="M79"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C3;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover><mml:mo class="MathClass-punc">:</mml:mo><mml:msup><mml:mrow><mml:mi mathvariant="double-struck">R</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>N</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub></mml:mrow></mml:msup><mml:mo class="MathClass-rel">&#x02192;</mml:mo><mml:msup><mml:mrow><mml:mi mathvariant="double-struck">R</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>N</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula>, for a given <italic>y</italic> is defined as <inline-formula><mml:math id="M80"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C3;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mi>&#x003C3;</mml:mi><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C3;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mi>&#x003C3;</mml:mi><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msup><mml:mrow><mml:mi>U</mml:mi></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:mi>y</mml:mi></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mi>&#x003C3;</mml:mi><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>U</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:mi>y</mml:mi></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow></mml:math></inline-formula>. The Taylor series expansion for <italic>&#x003C3;</italic>(<italic>U</italic><sup>T</sup><italic>y</italic>), (Lewis et al., <xref ref-type="bibr" rid="B32">2002</xref>) for a given <italic>y</italic>, is <inline-formula><mml:math id="M81"><mml:mi>&#x003C3;</mml:mi><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msup><mml:mrow><mml:mi>U</mml:mi></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:mi>y</mml:mi></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mi>&#x003C3;</mml:mi><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>U</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:mi>y</mml:mi></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x003C3;</mml:mi></mml:mrow><mml:mrow><mml:mo class="MathClass-rel">&#x02032;</mml:mo></mml:mrow></mml:msup><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>U</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:mi>y</mml:mi></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>U</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:mi>y</mml:mi><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mi>O</mml:mi><mml:msup><mml:mrow><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>U</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:mi>y</mml:mi></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula>, where <inline-formula><mml:math id="M82"><mml:msup><mml:mrow><mml:mi>&#x003C3;</mml:mi></mml:mrow><mml:mrow><mml:mo class="MathClass-rel">&#x02032;</mml:mo></mml:mrow></mml:msup><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>U</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:mi>y</mml:mi></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mi>d</mml:mi><mml:mi>&#x003C3;</mml:mi><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msup><mml:mrow><mml:mi>U</mml:mi></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:mi>y</mml:mi></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-bin">&#x02215;</mml:mo><mml:mi>d</mml:mi><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msup><mml:mrow><mml:mi>U</mml:mi></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:mi>y</mml:mi></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:msub><mml:mrow><mml:mo class="MathClass-rel">&#x0007C;</mml:mo></mml:mrow><mml:mrow><mml:msup><mml:mrow><mml:mi>U</mml:mi></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:mi>y</mml:mi><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>U</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:mi>y</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> and <inline-formula><mml:math id="M83"><mml:mi>O</mml:mi><mml:msup><mml:mrow><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>U</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:mi>y</mml:mi></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula> can be used to write <inline-formula><mml:math id="M84"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C3;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover></mml:math></inline-formula> as <inline-formula><mml:math id="M85"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C3;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C3;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo class="MathClass-rel">&#x02032;</mml:mo></mml:mrow></mml:msup><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>U</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:mi>y</mml:mi><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mi>O</mml:mi><mml:msup><mml:mrow><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>U</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:mi>y</mml:mi></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula>, where <inline-formula><mml:math id="M86"><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C3;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo class="MathClass-rel">&#x02032;</mml:mo></mml:mrow></mml:msup><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x003C3;</mml:mi></mml:mrow><mml:mrow><mml:mo class="MathClass-rel">&#x02032;</mml:mo></mml:mrow></mml:msup><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>U</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:mi>y</mml:mi></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow></mml:math></inline-formula>. Using this expression, equation (<xref ref-type="disp-formula" rid="E35">30</xref>) can be rewritten as
<disp-formula id="E36"><label>(31)</label><mml:math id="M87"><mml:msub><mml:mrow><mml:mi>J</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x003C1;</mml:mi></mml:mrow></mml:msub><mml:mover accent="true"><mml:mrow><mml:mi>r</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mfrac><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:mfrac><mml:msub><mml:mrow><mml:mn>&#x003BE;</mml:mn></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mi>r</mml:mi><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mi>e</mml:mi><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mi>N</mml:mi><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>W</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C3;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>W</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C3;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo class="MathClass-rel">&#x02032;</mml:mo></mml:mrow></mml:msup><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>U</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:mi>y</mml:mi><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:msub><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:mi>s</mml:mi></mml:mrow></mml:msub><mml:mi>r</mml:mi><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:msub><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-punc">,</mml:mo></mml:math></disp-formula>
where the unmeasurable auxiliary term <italic>N</italic>&#x02009;&#x02208;&#x02009;&#x0211D; is introduced to facilitate subsequent stability analysis and is defined as
<disp-formula id="E37"><mml:math id="M88"><mml:mi>N</mml:mi><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>W</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C3;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo class="MathClass-rel">&#x02032;</mml:mo></mml:mrow></mml:msup><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>U</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:mi>y</mml:mi><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msup><mml:mrow><mml:mi>W</mml:mi></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:mi>O</mml:mi><mml:msup><mml:mrow><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>U</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:mi>y</mml:mi></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mn>&#x003F5;</mml:mn><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mn>&#x003C4;</mml:mn></mml:mrow><mml:mrow><mml:mi>d</mml:mi><mml:mi>&#x003C1;</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mi>&#x003C6;</mml:mi><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mrow><mml:mi>e</mml:mi></mml:mrow></mml:msub><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-punc">,</mml:mo></mml:math></disp-formula>
where <inline-formula><mml:math id="M89"><mml:mover accent="true"><mml:mrow><mml:mi>U</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi mathvariant="double-struck">R</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>N</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-bin">&#x000D7;</mml:mo><mml:msub><mml:mrow><mml:mi>N</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub></mml:mrow></mml:msup></mml:math></inline-formula> is defined as <inline-formula><mml:math id="M90"><mml:mover accent="true"><mml:mrow><mml:mi>U</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mi>U</mml:mi><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>U</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:math></inline-formula>. Based on equations (<xref ref-type="disp-formula" rid="E17">14</xref>), (<xref ref-type="disp-formula" rid="E24">20</xref>), (<xref ref-type="disp-formula" rid="E27">23</xref>), and (<xref ref-type="disp-formula" rid="E31">27</xref>), the fact that <italic>x</italic>, <inline-formula><mml:math id="M91"><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:mrow><mml:mo class="MathClass-open">[</mml:mo><mml:mrow><mml:mtext>0,1</mml:mtext></mml:mrow><mml:mo class="MathClass-close">]</mml:mo></mml:mrow></mml:math></inline-formula>, and the assumption that desired trajectories are bounded, the following inequality can be developed (Lewis, <xref ref-type="bibr" rid="B31">1996</xref>):
<disp-formula id="E38"><label>(32)</label><mml:math id="M92"><mml:mfenced separators="" open="|" close="|"><mml:mrow><mml:mi>N</mml:mi></mml:mrow></mml:mfenced><mml:mo class="MathClass-rel">&#x02264;</mml:mo><mml:msub><mml:mrow><mml:mn>&#x003B6;</mml:mn></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mn>&#x003B6;</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mfenced separators="" open="&#x02225;" close="&#x02225;"><mml:mrow><mml:mi>z</mml:mi></mml:mrow></mml:mfenced><mml:mspace width="0.3em" class="thinspace"/><mml:mo class="MathClass-punc">,</mml:mo></mml:math></disp-formula>
where <italic>&#x003B6;<sub>i</sub></italic>&#x02009;&#x02208;&#x02009;&#x0211D;<sup>&#x0002B;</sup> for (<italic>i</italic>&#x02009;&#x0003D;&#x02009;1,2) are known positive constants, and <italic>z</italic>&#x02009;&#x02208;&#x02009;&#x0211D;<sup>2</sup> is defined as
<disp-formula id="E39"><mml:math id="M93"><mml:mi>z</mml:mi><mml:mspace width="0.3em"/><mml:mi>&#x0225C;</mml:mi><mml:msup><mml:mrow><mml:mfenced separators="" open="[" close="]"><mml:mrow><mml:msup><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:mspace width="1em" class="quad"/><mml:msup><mml:mrow><mml:mi>r</mml:mi></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup></mml:mrow></mml:mfenced></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:mo class="MathClass-punc">.</mml:mo></mml:math></disp-formula></p>
</sec>
<sec id="S3-5">
<label>3.3</label> <title>Backstepping Error System</title>
<p>To facilitate the subsequent stability analysis, the time derivative of the backstepping error (equation (<xref ref-type="disp-formula" rid="E34">29</xref>)) can be determined by using equation (<xref ref-type="disp-formula" rid="E19">16</xref>) as
<disp-formula id="E40"><label>(33)</label><mml:math id="M94"><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mfrac><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>w</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:mfrac><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mfrac><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>w</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:mfrac><mml:mi mathvariant="italic">sat</mml:mi><mml:mrow><mml:mo class="MathClass-open">[</mml:mo><mml:mrow><mml:mi>v</mml:mi><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow></mml:mrow><mml:mo class="MathClass-close">]</mml:mo></mml:mrow><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-punc">.</mml:mo></mml:math></disp-formula></p>
<p>Due to the input saturation function in this system, which is expressed in equation (<xref ref-type="disp-formula" rid="E7">6</xref>), we want <italic>v</italic>&#x02009;&#x02208;&#x02009;[<italic>v</italic><sub>min</sub>, <italic>v</italic><sub>max</sub>]. Based on equations (<xref ref-type="disp-formula" rid="E7">6</xref>) and (<xref ref-type="disp-formula" rid="E40">33</xref>), the stimulation control input is designed as
<disp-formula id="E41"><label>(34)</label><mml:math id="M95"><mml:mi>v</mml:mi><mml:mspace width="0.3em"/><mml:mi>&#x0225C;</mml:mi><mml:mn>&#x00394;</mml:mn><mml:mspace width="0.3em"/><mml:mi>v</mml:mi><mml:mfenced separators="" open="&#x0007B;" close="&#x0007D;"><mml:mrow><mml:msup><mml:mrow><mml:mfenced separators="" open="(" close=")"><mml:mrow><mml:mfrac><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>w</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:mfrac></mml:mrow></mml:mfenced></mml:mrow><mml:mrow><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msup><mml:mn>&#x003BE;</mml:mn></mml:mrow></mml:mfenced><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>v</mml:mi></mml:mrow><mml:mrow><mml:mtext>min</mml:mtext></mml:mrow></mml:msub><mml:mo class="MathClass-punc">,</mml:mo></mml:math></disp-formula>
where &#x00394;<italic>v</italic>&#x02009;&#x0003D;&#x02009;<italic>v</italic><sub>max</sub>&#x02009;&#x02212;&#x02009;<italic>v</italic><sub>min</sub> and <inline-formula><mml:math id="M96"><mml:mn>&#x003BE;</mml:mn><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mfrac><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>w</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:mfrac><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mi>r</mml:mi><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mi>k</mml:mi><mml:msub><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula><xref ref-type="fn" rid="fn1"><sup>1</sup></xref>; <italic>k</italic>&#x02009;&#x02208;&#x02009;&#x0211D;<sup>&#x0002B;</sup> denotes a positive constant adjustable control gain. For <inline-formula><mml:math id="M97"><mml:mi>v</mml:mi><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mn>&#x00394;</mml:mn><mml:mspace width="0.3em"/><mml:mi>v</mml:mi><mml:mrow><mml:mo class="MathClass-open">&#x0007B;</mml:mo><mml:mrow><mml:msup><mml:mrow><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mfrac><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>w</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:mfrac></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msup><mml:mn>&#x003BE;</mml:mn></mml:mrow><mml:mo class="MathClass-close">&#x0007D;</mml:mo></mml:mrow><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>v</mml:mi></mml:mrow><mml:mrow><mml:mtext> min</mml:mtext></mml:mrow></mml:msub></mml:math></inline-formula>, (i.e., when <inline-formula><mml:math id="M98"><mml:mi mathvariant="italic">sat</mml:mi><mml:mrow><mml:mo class="MathClass-open">[</mml:mo><mml:mrow><mml:mi>v</mml:mi></mml:mrow><mml:mo class="MathClass-close">]</mml:mo></mml:mrow><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:msup><mml:mrow><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mfrac><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>w</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:mfrac></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msup><mml:mn>&#x003BE;</mml:mn></mml:math></inline-formula>), equation (<xref ref-type="disp-formula" rid="E40">33</xref>) becomes
<disp-formula id="E42"><label>(35)</label><mml:math id="M99"><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mi>r</mml:mi><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mi>k</mml:mi><mml:msub><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-punc">.</mml:mo></mml:math></disp-formula></p>
<p>Note that equation (<xref ref-type="disp-formula" rid="E42">35</xref>) is valid only for the case where the control signal in equation (<xref ref-type="disp-formula" rid="E41">34</xref>) is not saturated (i.e., <inline-formula><mml:math id="M100"><mml:msub><mml:mrow><mml:mi>v</mml:mi></mml:mrow><mml:mrow><mml:mtext>min</mml:mtext></mml:mrow></mml:msub><mml:mo class="MathClass-rel">&#x02264;</mml:mo><mml:mn>&#x00394;</mml:mn><mml:mi>v</mml:mi><mml:mrow><mml:mo class="MathClass-open">&#x0007B;</mml:mo><mml:mrow><mml:msup><mml:mrow><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mfrac><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>w</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:mfrac></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msup><mml:mn>&#x003BE;</mml:mn></mml:mrow><mml:mo class="MathClass-close">&#x0007D;</mml:mo></mml:mrow><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>v</mml:mi></mml:mrow><mml:mrow><mml:mtext> min</mml:mtext></mml:mrow></mml:msub><mml:mo class="MathClass-rel">&#x02264;</mml:mo><mml:msub><mml:mrow><mml:mi>v</mml:mi></mml:mrow><mml:mrow><mml:mtext>max</mml:mtext></mml:mrow></mml:msub></mml:math></inline-formula>). In other words, equation (<xref ref-type="disp-formula" rid="E42">35</xref>) is valid for
<disp-formula id="E43"><label>(36)</label><mml:math id="M101"><mml:mn>0</mml:mn><mml:mo class="MathClass-rel">&#x02264;</mml:mo><mml:msup><mml:mrow><mml:mfenced separators="" open="(" close=")"><mml:mrow><mml:mfrac><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>w</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:mfrac></mml:mrow></mml:mfenced></mml:mrow><mml:mrow><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msup><mml:mn>&#x003BE;</mml:mn><mml:mo class="MathClass-rel">&#x02264;</mml:mo><mml:mn>1</mml:mn><mml:mo class="MathClass-punc">.</mml:mo></mml:math></disp-formula></p>
<p>The controller given in equation (<xref ref-type="disp-formula" rid="E41">34</xref>) is the actual stimulation input to the muscle. The variables <italic>v</italic><sub>max</sub> and <italic>v</italic><sub>min</sub> are saturation and threshold stimulation inputs, respectively and can be selected appropriately, depending on the type of modulation employed. For example, the controller can be implemented as a voltage modulation or current modulation or pulsewidth modulation controller. Mainly a PD&#x02009;&#x0002B;&#x02009;NN signal (with fatigue compensation) is used as a virtual control input and due to the use of backstepping approach, the actual controller uses the time derivative of the virtual control input, in addition to other signals such as <inline-formula><mml:math id="M102"><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:math></inline-formula>, <inline-formula><mml:math id="M103"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:math></inline-formula>, <italic>r</italic>, and <italic>e<sub>x</sub></italic>. A block diagram describing the controller is shown in Figure <xref ref-type="fig" rid="F2">2</xref>.</p>
<fig id="F2" position="float">
<label>Figure 2</label>
<caption><p>A block diagram describing the control implementation.</p></caption>
<graphic xlink:href="frobt-04-00068-g002.tif"/>
</fig>
</sec>
</sec>
<sec id="S4">
<label>4</label> <title>Stability Analysis</title>
<p><bold>Theorem 1</bold>. <italic>The controller given in equations (<xref ref-type="disp-formula" rid="E29">25</xref>) and (<xref ref-type="disp-formula" rid="E41">34</xref>) ensures that all system signals are bounded under closed-loop operation and that the position tracking error is uniformly ultimately bounded in the sense that</italic>
<disp-formula id="E44"><label>(37)</label><mml:math id="M104"><mml:mfenced separators="" open="|" close="|"><mml:mrow><mml:mi>e</mml:mi></mml:mrow></mml:mfenced><mml:mo class="MathClass-rel">&#x02264;</mml:mo><mml:msub><mml:mrow><mml:mn>&#x003F5;</mml:mn></mml:mrow><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub><mml:mi mathvariant="italic">exp</mml:mi><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:msub><mml:mrow><mml:mn>&#x003F5;</mml:mn></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mi>t</mml:mi></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mn>&#x003F5;</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo class="MathClass-punc">,</mml:mo></mml:math></disp-formula>
<italic>provided that the bound in equation (<xref ref-type="disp-formula" rid="E43">36</xref>) is satisfied (i.e., the input is not saturated), and the control gains &#x003B1; (introduced in equation (<xref ref-type="disp-formula" rid="E11">10</xref>)) and</italic> <inline-formula><mml:math id="M105"><mml:msub><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>s</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:math></inline-formula><italic>(subsequently introduced) are selected according to the following sufficient condition</italic>:
<disp-formula id="E45"><label>(38)</label><mml:math id="M106"><mml:mi mathvariant="italic">min</mml:mi><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mi>&#x003B1;</mml:mi><mml:mo class="MathClass-punc">,</mml:mo><mml:msub><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>s</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-rel">&#x0003E;</mml:mo><mml:msub><mml:mrow><mml:mn>&#x003B6;</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo class="MathClass-punc">,</mml:mo></mml:math></disp-formula>
<italic>where &#x003F5;<sub>0</sub>, &#x003F5;<sub>1</sub>, &#x003F5;<sub>2</sub>&#x02009;&#x02208;&#x02009;&#x0211D;<sup>&#x0002B;</sup> denote positive constants, and &#x003B6;</italic><sub>2</sub><italic>is a known positive constant introduced in equation (<xref ref-type="disp-formula" rid="E38">32</xref>)</italic>. <italic>Proof</italic> : See <xref ref-type="app" rid="A1">Appendix</xref>.</p>
</sec>
<sec id="S5">
<label>5</label> <title>Parameter Estimation</title>
<p>The controller given in equation (<xref ref-type="disp-formula" rid="E41">34</xref>) is a robust and adaptive controller; i.e., many of the aforementioned model parameters in Section <xref ref-type="sec" rid="S2">2</xref> are not required to be known for the control implementation. The controller, however, uses estimates of the muscle activation dynamics in equation (<xref ref-type="disp-formula" rid="E6">5</xref>), the muscle recruitment threshold and saturation in equation (<xref ref-type="disp-formula" rid="E7">6</xref>), and the fatigue variable in equation (<xref ref-type="disp-formula" rid="E8">7</xref>). These are estimates of the following parameters: threshold (<italic>v</italic><sub>min</sub>), saturation (<italic>v</italic><sub>max</sub>), natural frequency of the calcium dynamics (<italic>w</italic>), muscle fatigue state (<italic>&#x003C6;</italic>), and the muscle activation (<italic>x</italic>). This section describes the procedures that were used to estimate these parameters. The parameter estimation was performed on the right and left legs of three able-bodied subjects.<xref ref-type="fn" rid="fn2"><sup>2</sup></xref> The results of the parameter estimation for Subject 1 are presented in this section to demonstrate the procedure and accuracy of the parameter estimation. The parameters estimated for all participants can be found in the following section. During the parameter estimation procedures the participants were asked to relax and avoid any voluntary contractions that might influence the results during electrical stimulation.</p>
<p>All of the procedures discussed in this section were performed in a leg extension machine fitted with a load cell that held the leg in an isometric configuration at approximately 90&#x000B0; of knee flexion, as shown in Figure <xref ref-type="fig" rid="F3">3</xref>. The isometric joint torque was computed from the force measured by the load cell (Omega Engineering Inc., USA) and the moment arm of the leg extension machine. Isometric tests were used because it can be shown that in an isometric contraction the joint torque normalized by the maximum torque that can be produced at that joint angle is equal to the product of the muscle activation and the fatigue state (i.e., for isometric contraction <italic>&#x003B7;</italic><sub>2</sub>&#x02009;&#x0003D;&#x02009;1 and <inline-formula><mml:math id="M107"><mml:mfrac><mml:mrow><mml:mi>F</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>F</mml:mi></mml:mrow><mml:mrow><mml:mi>m</mml:mi></mml:mrow></mml:msub><mml:msub><mml:mrow><mml:mi>&#x003B7;</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:mrow></mml:mfrac><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mi>&#x003C6;</mml:mi><mml:mi>x</mml:mi></mml:math></inline-formula> from equation (<xref ref-type="disp-formula" rid="E3">2</xref>)). The quadriceps muscles were stimulated using an FNS-16 Multi-Channel Stimulator (CWE Inc., USA), which is current amplitude controlled with a resolution of 0.1&#x02009;mA and maximum current amplitude of 100&#x02009;mA. The FNS-16 was modified from the standard model to increase the amplitude range from 20 to 100&#x02009;mA, as NMES of human quadriceps muscles typically require current amplitudes in the range of 20&#x02013;100&#x02009;mA to achieve a significant muscle contraction. A current amplitude controlled 35&#x02009;Hz pulse train with a pulse width of 400&#x02009;&#x003BC;s was used. The stimulation train was delivered to the quadriceps muscles through 2.75&#x00022;&#x02009;&#x000D7;&#x02009;5&#x00022; self-adhesive NMES stimulating electrodes (Dura-Stick plus). The muscle activation and fatigue parameters estimated in this section are dependent on the stimulation parameters used during identification. Therefore, it is important to note that the stimulation parameters (frequency and pulse width) used during the parameter estimation procedures are same as the stimulation parameters during the controller validation experiments. It is also important to note that the parameters can change with placement of the electrodes. To address this issue the electrode placement procedures in (<uri xlink:href="https://www.axelgaard.com/Education">https://www.axelgaard.com/Education</uri>) were used, and the electrode placements were noted for each subject to facilitate consistency between all procedures.</p>
<fig id="F3" position="float">
<label>Figure 3</label>
<caption><p>Test setup for estimating fatigue and activation dynamics. The isometric joint torque, produced by stimulation of the quadriceps muscles, was measured by keeping the arm of the leg extension machine fixed and holding the subject&#x02019;s leg in place with a load cell. The test setup was also used to validate the developed controller for NMES knee extension tracking experiments. A rotary encoder was used to measure the knee-joint angle. The depicted individual provided written and informed consent for the publication of this image.</p></caption>
<graphic xlink:href="frobt-04-00068-g003.tif"/>
</fig>
<p>Pulse trains of increasing current amplitude were used to determine the saturation and threshold current amplitudes. The threshold current amplitude is the amplitude that produces the first noticeable isometric joint torque, and the saturation current amplitude is the minimum amplitude that produces no further significant increase in joint torque. One-second long stimulation pulse trains were used to minimize muscle fatigue that may occur during the procedure. From the results shown in Figure <xref ref-type="fig" rid="F4">4</xref>A, the threshold amplitude was determined to be 33&#x02009;mA. The increase in the isometric torque was found to be an insignificant (much less than 1&#x02009;Nm) at stimulation amplitudes beyond 77&#x02009;mA. Therefore, the saturation current amplitude was chosen as 77&#x02009;mA.</p>
<fig id="F4" position="float">
<label>Figure 4</label>
<caption><p><bold>(A)</bold> The threshold and saturation current amplitudes were determined from this plot. The threshold amplitude was determined to be 33&#x02009;mA, and the saturation amplitude was determined to be 77&#x02009;mA. <bold>(B)</bold> This plot shows the measured muscle activation and the best fit first-order response for a unit step input, which has an RMS error of 0.045. The first-order response has a time constant of 0.16&#x02009;s, which corresponds to a calcium dynamics natural frequency of 12.5&#x02009;HZ.</p></caption>
<graphic xlink:href="frobt-04-00068-g004.tif"/>
</fig>
<p>To generate an estimate of the muscle activation (Ca<sup>2&#x0002B;</sup>) dynamics in equation (<xref ref-type="disp-formula" rid="E19">16</xref>), its natural frequency was estimated. The muscle activation dynamics were modeled as a first-order system with <italic>sat</italic>[<italic>v</italic>] as the input and 2/<italic>w</italic> as the time constant (see equation (<xref ref-type="disp-formula" rid="E19">16</xref>)). Therefore, the estimated natural frequency, <inline-formula><mml:math id="M108"><mml:mover accent="true"><mml:mrow><mml:mi>W</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:math></inline-formula>, can be determined by solving for the time constant of a first-order system that best matched the response of the muscle activation. Assuming that muscle fatigue does not occur (<italic>&#x003C6;</italic>&#x02009;&#x0003D;&#x02009;1) the normalized load cell data can be used as a measurement of muscle activation (i.e., <inline-formula><mml:math id="M109"><mml:mfrac><mml:mrow><mml:mi>F</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>F</mml:mi></mml:mrow><mml:mrow><mml:mi>m</mml:mi></mml:mrow></mml:msub><mml:msub><mml:mrow><mml:mi>&#x003B7;</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:mrow></mml:mfrac><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mi>x</mml:mi></mml:math></inline-formula>). The unit step response of muscle activation dynamics were tested by stimulating the subject at the saturation level (<italic>sat</italic>[<italic>v</italic>]&#x02009;&#x0003D;&#x02009;1) and using the load cell data, normalized by the maximum isometric force measured at that position (<italic>F<sub>m</sub>&#x003B7;</italic><sub>1</sub>), as a measurement of muscle activation. This procedure was conducted 3&#x02009;min after the previous procedure to ensure that the subject was not fatigued. This procedure was only conducted once, since further trials would induce fatigue. Any induced muscle fatigue would cause the isometric contraction to not reach a normalized activation of one, which would affect the parameter estimation. An optimization method was then used to solve for the first-order system with a time constant that best matches the response measured by the load cell. MATLAB&#x02019;s fmincon function (MathWorks, Boston, MA, USA), using an interior-point algorithm, was used to perform the optimizations to estimate the muscle activation time constant for each of the participants. The normalized load cell measurement and the first-order response that best fits the measured data are shown in Figure <xref ref-type="fig" rid="F4">4</xref>B. A first-order system with a time constant of 0.16&#x02009;<italic>s</italic>, which corresponds to <inline-formula><mml:math id="M110"><mml:mover accent="true"><mml:mrow><mml:mi>w</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mn>12</mml:mn><mml:mo class="MathClass-punc">.</mml:mo><mml:mn>5</mml:mn><mml:mspace width="0.5" class="nbsp"/><mml:mtext>Hz</mml:mtext></mml:math></inline-formula>, was found to best fit the measured data with a root mean square (RMS) error of 0.045.</p>
<p>To generate an estimate of the fatigue state, an estimated model of the fatigue dynamics, described in equation (<xref ref-type="disp-formula" rid="E18">15</xref>), was used; i.e., the parameters <italic>T<sub>f</sub>, T<sub>r</sub></italic>, and <italic>&#x003C6;</italic><sub>min</sub> were estimated using a procedure similar to Riener et al. (<xref ref-type="bibr" rid="B36">1996</xref>). This procedure was conducted on a separate day from the previous procedures (muscle activation estimation) to ensure that the muscle was fully rested. First, the muscle was potentiated using 10, 1-s long pulse trains with 10&#x02009;s between the trains. The current stimulation amplitude was set at the saturation level. This was done to warm up the quadriceps muscles to electrical stimulation, and the duration of the potentiation was short enough to prevent the muscles from fatiguing. After the potentiation sequence, a constant stimulation at the saturation amplitude was used for 3&#x02009;min. This fatigues the quadriceps muscles, approximately to its minimum level, <italic>&#x003C6;</italic><sub>min</sub>. Immediately after the fatiguing protocol, 1-s long pulse trains of stimulation were used every 10&#x02009;s to see the rate at which the joint torque magnitude recovered. The measured load cell data during the potentiation, fatigue, and recovery processes can be seen in Figure <xref ref-type="fig" rid="F5">5</xref>. The steady decrease in the measured joint torque during the fatigue process and the steady increase in the joint torque produced during the recovery process illustrate that fatigue and recovery are occurring as expected. These measurements were then used to estimate the parameters of muscle fatigue dynamics in equation (<xref ref-type="disp-formula" rid="E18">15</xref>).</p>
<fig id="F5" position="float">
<label>Figure 5</label>
<caption><p>Results of the experiments to determine the parameters of the muscle fatigue parameters. These three plots show the torque measured during the potentiation, fatigue, and recovery segments of the procedure.</p></caption>
<graphic xlink:href="frobt-04-00068-g005.tif"/>
</fig>
<p>It was assumed that the muscle was fully rested at the beginning of the fatigue process. Therefore, the initial condition of the fatigue state was assumed as <inline-formula><mml:math id="M114"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mspace width="0.3em"/><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mn>0</mml:mn></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mn>1</mml:mn></mml:math></inline-formula>. Also, because the participant was being stimulated at the saturation amplitude for the duration of the fatigue procedure, the muscle activation variable was assumed to be 1 throughout the fatigue process (this is because the duration of the procedure is significantly longer than the muscle activation time constant that was previously determined). This approximation is necessary, as it allows us to measure the rate at which the muscle recovers without unnecessarily fatiguing the muscle. This procedure is identical to the potentiation procedure, where it can be observed that no noticeable muscle fatigue occurs. Using these assumptions the equation of the muscle fatigue dynamics (see equation (<xref ref-type="disp-formula" rid="E18">15</xref>)) can be reduced to <inline-formula><mml:math id="M115"><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x0003D;</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 class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>f</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mfrac><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi mathvariant="italic">min</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow></mml:math></inline-formula> whose solution, given the previously stated initial condition, is <inline-formula><mml:math id="M116"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mspace width="0.3em"/><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mtext>min</mml:mtext></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mtext>min</mml:mtext></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:msup><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mi>t</mml:mi><mml:mo class="MathClass-bin">&#x02215;</mml:mo><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>T</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>f</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msup></mml:math></inline-formula>. A least-squares non-linear curve fitting algorithm was then used to solve for the parameters <inline-formula><mml:math id="M117"><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>T</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>f</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> and <inline-formula><mml:math id="M118"><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mtext>min</mml:mtext></mml:mrow></mml:msub></mml:math></inline-formula> that best fit the time response of the fatigue state to the normalized load cell measurement from the fatigue process. The normalized load cell data and the plot of the fatigue state that best fits the measured data are shown in Figure <xref ref-type="fig" rid="F6">6</xref>A. The resulting fit has an RMS error of 0.0373, and the parameters that were determined from this fit are <inline-formula><mml:math id="M119"><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>T</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>f</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mn>43</mml:mn><mml:mo class="MathClass-punc">.</mml:mo><mml:mn>3</mml:mn><mml:mi>s</mml:mi></mml:math></inline-formula> and <inline-formula><mml:math id="M120"><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mtext>min</mml:mtext></mml:mrow></mml:msub><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mn>0</mml:mn><mml:mo class="MathClass-punc">.</mml:mo><mml:mn>188</mml:mn></mml:math></inline-formula>.</p>
<fig id="F6" position="float">
<label>Figure 6</label>
<caption><p><bold>(A)</bold> The fatigue time constant and minimum fatigue states were determined by fitting the solution of the differential equation of the fatigue state to the normalized load cell data. From this fit, which has an RMS error of 0.0373, the fatigue time constant and minimum fatigue state were determined to be <inline-formula><mml:math id="M111"><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>T</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>f</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mn>43</mml:mn><mml:mo class="MathClass-punc">.</mml:mo><mml:mn>3</mml:mn><mml:mspace width="0.3em"/><mml:mtext>s</mml:mtext></mml:math></inline-formula> and <inline-formula><mml:math id="M112"><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mtext>min</mml:mtext></mml:mrow></mml:msub><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mn>0</mml:mn><mml:mo class="MathClass-punc">.</mml:mo><mml:mn>188</mml:mn></mml:math></inline-formula>, respectively. <bold>(B)</bold> The recovery time constant can be determined by fitting the solution of the differential equation of the fatigue state during recovery to the normalized load cell data. From this fit, which has an RMS error of 0.0031, the recovery time constant was determined to be <inline-formula><mml:math id="M113"><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>T</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>r</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mn>72</mml:mn><mml:mo class="MathClass-punc">.</mml:mo><mml:mn>0</mml:mn><mml:mtext>s</mml:mtext></mml:math></inline-formula>.</p></caption>
<graphic xlink:href="frobt-04-00068-g006.tif"/>
</fig>
<p>During the recovery procedure, it was assumed that the pulses of stimulation were sufficiently short such that the muscle activation variable was essentially zero throughout the duration of the procedure. Therefore, the equation of the muscle fatigue dynamics can be reduced to <inline-formula><mml:math id="M125"><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x0003D;</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 class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>r</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mfrac><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mn>1</mml:mn><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow></mml:math></inline-formula>, whose solution is <inline-formula><mml:math id="M126"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mn>1</mml:mn><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>r</mml:mi><mml:mn>0</mml:mn></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:msup><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mi>t</mml:mi><mml:mo class="MathClass-bin">&#x02215;</mml:mo><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>T</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>r</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msup></mml:math></inline-formula>, where <inline-formula><mml:math id="M127"><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>r</mml:mi><mml:mn>0</mml:mn></mml:mrow></mml:msub><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mn>0</mml:mn><mml:mo class="MathClass-punc">.</mml:mo><mml:mn>493</mml:mn></mml:math></inline-formula> is the initial condition that was measured from the first isometric contraction during the recovery procedure. The normalized load cell data and the plot of the fatigue state that best fits the measured data are shown in Figure <xref ref-type="fig" rid="F6">6</xref>B. The resulting fit has an RMS error of 0.0031, and the recovery time constant determined from the fit is <inline-formula><mml:math id="M128"><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>T</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>r</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mn>72</mml:mn><mml:mo class="MathClass-punc">.</mml:mo><mml:mn>0</mml:mn><mml:mi>s</mml:mi></mml:math></inline-formula>. The estimated parameters of all of the participants are given in Table <xref ref-type="table" rid="T1">1</xref>.</p>
<table-wrap position="float" id="T1">
<label>Table 1</label>
<caption><p>Values of the estimated parameters and control gains used in the experiments for the right leg (RL) and left leg (LL) of each subject.</p></caption>
<table frame="hsides" rules="groups">
<thead>
<tr>
<th align="center"/>
<th align="center" valign="top" colspan="2">Subject 1<hr/></th>
<th align="center" valign="top" colspan="2">Subject 2<hr/></th>
<th align="center" valign="top" colspan="2">Subject 3<hr/></th>
</tr>
<tr>
<th align="center"/>
<th align="center" colspan="2"/>
</tr>
<tr>
<th align="center" colspan="3"/>
<th align="center" colspan="2"/>
</tr>
<tr>
<th align="center" colspan="5"/>
<th align="center" colspan="2"/>
</tr>
<tr>
<th align="center"/>
<th align="center">RL</th>
<th align="center">LL</th>
<th align="center">RL</th>
<th align="center">LL</th>
<th align="center">RL</th>
<th align="center">LL</th>
</tr>
</thead>
<tbody>
<tr>
<td align="left"><inline-formula><mml:math id="M121"><mml:mover accent="true"><mml:mrow><mml:mi>w</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mspace width="0.3" class="nbsp"/><mml:mrow><mml:mo class="MathClass-open">[</mml:mo><mml:mrow><mml:mtext>Hz</mml:mtext></mml:mrow><mml:mo class="MathClass-close">]</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td align="center">12.5</td>
<td align="center">10.5</td>
<td align="center">6.67</td>
<td align="center">7.69</td>
<td align="center">8.33</td>
<td align="center">10.53</td>
</tr>
<tr>
<td align="left"><inline-formula><mml:math id="M122"><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>T</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>f</mml:mi></mml:mrow></mml:msub><mml:mspace width="0.3em" class="nbsp"/><mml:mrow><mml:mo class="MathClass-open">[</mml:mo><mml:mrow><mml:mtext>s</mml:mtext></mml:mrow><mml:mo class="MathClass-close">]</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td align="center">43.3</td>
<td align="center">26.6</td>
<td align="center">19.7</td>
<td align="center">20.0</td>
<td align="center">101.7</td>
<td align="center">26.0</td>
</tr>
<tr>
<td align="left"><inline-formula><mml:math id="M123"><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>T</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>r</mml:mi></mml:mrow></mml:msub><mml:mspace width="0.3em" class="nbsp"/><mml:mrow><mml:mo class="MathClass-open">[</mml:mo><mml:mrow><mml:mtext>s</mml:mtext></mml:mrow><mml:mo class="MathClass-close">]</mml:mo></mml:mrow></mml:math></inline-formula></td>
<td align="center">72.0</td>
<td align="center">110</td>
<td align="center">126</td>
<td align="center">183</td>
<td align="center">119</td>
<td align="center">124</td>
</tr>
<tr>
<td align="left"><inline-formula><mml:math id="M124"><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mtext>min</mml:mtext></mml:mrow></mml:msub></mml:math></inline-formula></td>
<td align="center">0.188</td>
<td align="center">0.383</td>
<td align="center">0.138</td>
<td align="center">0.125</td>
<td align="center">4.17&#x000D7;10<sup>&#x02212;10</sup></td>
<td align="center">0.144</td>
</tr>
<tr>
<td align="left"><italic>v</italic><sub>min</sub> [mA]</td>
<td align="center">30</td>
<td align="center">23</td>
<td align="center">25</td>
<td align="center">26</td>
<td align="center">23</td>
<td align="center">26</td>
</tr>
<tr>
<td align="left"><italic>v</italic><sub>max</sub> [mA]</td>
<td align="center">80</td>
<td align="center">74</td>
<td align="center">70</td>
<td align="center">70</td>
<td align="center">80</td>
<td align="center">77</td>
</tr>
<tr>
<td align="left"><italic>k<sub>s</sub></italic></td>
<td align="center">0.1</td>
<td align="center">0.1</td>
<td align="center">0.07</td>
<td align="center">0.09</td>
<td align="center">0.1</td>
<td align="center">0.09</td>
</tr>
<tr>
<td align="left"><italic>&#x003B1;</italic></td>
<td align="center">10</td>
<td align="center">10</td>
<td align="center">4</td>
<td align="center">5</td>
<td align="center">6</td>
<td align="center">6</td>
</tr>
<tr>
<td align="left"><italic>K</italic></td>
<td align="center">6.25</td>
<td align="center">5.3</td>
<td align="center">3.33</td>
<td align="center">3.85</td>
<td align="center">4.17</td>
<td align="center">5.26</td>
</tr>
<tr>
<td align="left"><italic>K<sub>p</sub></italic></td>
<td align="center">1.9</td>
<td align="center">1.8</td>
<td align="center">1.8</td>
<td align="center">2.05</td>
<td align="center">1.6</td>
<td align="center">3</td>
</tr>
<tr>
<td align="left"><italic>K<sub>d</sub></italic></td>
<td align="center">0.5</td>
<td align="center">0.5</td>
<td align="center">0.4</td>
<td align="center">0.8</td>
<td align="center">0.2</td>
<td align="center">0.9</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
<sec id="S6">
<label>6</label> <title>Experimental Results</title>
<p>The controller developed in equation (<xref ref-type="disp-formula" rid="E41">34</xref>) was validated through three sets of experiments on the right and left leg of three able-bodied subjects. The participants were seated in the leg extension machine, which is fitted with a CALT GHH100 rotary encoder (Shanghai Qiyi Electrical &#x00026; Mechanical Equipment Co. Ltd.) to measure the knee angle, and were asked to remain completely relaxed and to avoid any volitional contractions that might influence the control. The first two sets of experiments used a desired sinusoidal trajectory with a minimum of 0&#x000B0; and a maximum of 45&#x000B0; and a period of 2&#x02009;s. The third set of experiments tested the controllers&#x02019; ability to perform on a larger bandwidth of desired trajectories, 1-s time period and 4-s time period. The maximum amplitude of the 1-s time-period trajectory was reduced to 35&#x000B0;. The controller modulated the current amplitude while the pulse train&#x02019;s frequency was fixed at 35&#x02009;Hz with a pulse width of 400&#x02009;&#x003BC;s. The 35&#x02009;Hz pulse wave was used because it is within the optimal range for stimulating the muscle. It yields reduced fatigue in comparison to a higher frequency and produces a smoother motion compared with a lower frequency that tends to produce rippled knee motion (Riener et al., <xref ref-type="bibr" rid="B36">1996</xref>). A pulse width can be chosen between the range of 100&#x02013;500&#x02009;&#x003BC;s. In this range, human skeletal muscle response to changes in stimulation amplitude (force&#x02013;amplitude relationship) is highly predictable and thus was deemed appropriate for use in the current study. Because the new controller is a proportional-derivative (PD) type controller, tracking experiments using a PD controller were also conducted in the first two sets of experiments so that the performance of the new controller could be compared with a similar linear controller. In the third set of experiments, the controller was compared with a PD type controller augmented with a feedforward NN (Wang et al., <xref ref-type="bibr" rid="B46">2013</xref>). The estimated control parameters and control gains for the fatigue compensation controller and the control gains for the PD controller from the first two sets of experiments are shown in Table <xref ref-type="table" rid="T1">1</xref>, where <italic>K<sub>p</sub></italic> and <italic>K<sub>d</sub></italic> are the proportional and derivative gains of the PD controller, respectively. The control gains of the fatigue compensation controller (i.e., <italic>&#x003B1;, k<sub>s</sub></italic>, and <italic>k</italic>) were introduced in equations (<xref ref-type="disp-formula" rid="E11">10</xref>), (<xref ref-type="disp-formula" rid="E29">25</xref>), and (<xref ref-type="disp-formula" rid="E41">34</xref>). The minimum muscle fatigue parameter, <inline-formula><mml:math id="M129"><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mtext>min</mml:mtext></mml:mrow></mml:msub></mml:math></inline-formula>, for the right leg of Subject 3, which is approximately zero, indicates that when their quadriceps muscles are fully fatigued the stimulation will produce approximately no muscle force. The PD and FC controller gains given in Table <xref ref-type="table" rid="T1">1</xref> were determined experimentally using approximately 5&#x02013;6&#x02009;s long trials (per leg and per subject) before the 30 and 120&#x02009;s long experiments. As no systematic tuning approach exists for the newly developed FC controller, the control gains were tuned through trial and error with the guidance of the knowledge of how each term in the controller affects the dynamics of the controlled system. Short duration trials were used to minimize the amount of muscle fatigue induced during tuning, and each subject was given 5&#x02009;min after the tuning procedure to allow the participant to recover from any induced muscle fatigue before conducting the main experiments.</p>
<p>In the first set of experiments, after tuning the controller parameters, five 30-s long tracking experiment trials were performed on each leg of each participant for the FC and PD controllers. The root mean square (RMS) errors were computed for each trial, and then averaged over the five trials. The averaged RMS errors for the full duration of the experiments (0&#x02013;30&#x02009;s), the steady-state RMS (SSRMS) errors (ignores the first two periods of the desired trajectory), and the RMS of the current amplitude of the stimulation are shown in Table <xref ref-type="table" rid="T2">2</xref>. Representative trials of the results of the fatigue compensation (FC) controller and the PD controller are shown in Figure <xref ref-type="fig" rid="F7">7</xref>. A Shapiro&#x02013;Wilk test was used to determine if the RMS and SSRMS data were normal data sets. From the results of the Shapiro&#x02013;Wilk test, it was concluded that the RMS and SSRMS PD controller data sets are not normal distributions. Therefore, a two-tailed Wilcoxon signed rank test with a 95% confidence level was used to determine if there was a difference between the FC and PD data sets. From the results of the Wilcoxon signed rank test,<xref ref-type="fn" rid="fn3"><sup>3</sup></xref> it was concluded that the FC and PD controllers are statistically different. Therefore, since the FC controller has a lower mean RMS and SSRMS error and because the data sets are significantly different it can be concluded that the FC controller yielded significantly better performance.</p>
<table-wrap position="float" id="T2">
<label>Table 2</label>
<caption><p>Root mean square errors (RMS) for the full 30-s long trajectory tracking experiments and steady-state (4&#x02013;30&#x02009;s) RMS (SSRMS) errors averaged over five trials for the right leg (RL) and left leg (LL) of each subject for both the fatigue compensation (FC) and PD controllers.</p></caption>
<table frame="hsides" rules="groups">
<thead>
<tr>
<th align="center"/>
<th align="center"/>
<th align="center" valign="top" colspan="2">Subject 1<hr/></th>
<th align="center" valign="top" colspan="2">Subject 2<hr/></th>
<th align="center" valign="top" colspan="2">Subject 3<hr/></th>
<th align="center">Mean</th>
<th align="center">SD</th>
</tr>
<tr>
<th align="center" colspan="2"/>
<th align="center" colspan="2"/>
</tr>
<tr>
<th align="center" colspan="4"/>
<th align="center" colspan="2"/>
</tr>
<tr>
<th align="center" colspan="6"/>
<th align="center" colspan="2"/>
</tr>
<tr>
<th align="center"/>
<th align="center"/>
<th align="center">RL</th>
<th align="center">LL</th>
<th align="center">RL</th>
<th align="center">LL</th>
<th align="center">RL</th>
<th align="center">LL</th>
<th align="center"/>
</tr>
</thead>
<tbody>
<tr>
<td align="left">FC controller</td>
<td align="center">RMS error [&#x000B0;]</td>
<td align="center">3.72</td>
<td align="center">3.48</td>
<td align="center">4.33</td>
<td align="center">4.15</td>
<td align="center">5.00</td>
<td align="center">2.93</td>
<td align="center">3.93</td>
<td align="center">0.721</td>
</tr>
<tr>
<td align="left"/>
<td align="center">SSRMS Error [&#x000B0;]</td>
<td align="center">3.43</td>
<td align="center">3.37</td>
<td align="center">4.29</td>
<td align="center">4.05</td>
<td align="center">4.96</td>
<td align="center">2.85</td>
<td align="center">3.82</td>
<td align="center">0.758</td>
</tr>
<tr>
<td align="left"/>
<td align="center">RMS current [mA]</td>
<td align="center">46.2</td>
<td align="center">44.3</td>
<td align="center">34.7</td>
<td align="center">40.9</td>
<td align="center">34.8</td>
<td align="center">47.4</td>
<td align="center">41.4</td>
<td align="center">6.26</td>
</tr>
<tr>
<td align="left">PD controller</td>
<td align="center">RMS error [&#x000B0;]</td>
<td align="center">5.40</td>
<td align="center">6.94</td>
<td align="center">8.30</td>
<td align="center">5.25</td>
<td align="center">8.85</td>
<td align="center">5.61</td>
<td align="center">6.73</td>
<td align="center">1.56</td>
</tr>
<tr>
<td align="left"/>
<td align="center">SSRMS error [&#x000B0;]</td>
<td align="center">5.25</td>
<td align="center">6.99</td>
<td align="center">8.49</td>
<td align="center">5.08</td>
<td align="center">8.92</td>
<td align="center">5.65</td>
<td align="center">6.73</td>
<td align="center">1.68</td>
</tr>
<tr>
<td align="left"/>
<td align="center">RMS current [mA]</td>
<td align="center">33.6</td>
<td align="center">36.2</td>
<td align="center">36.6</td>
<td align="center">39.3</td>
<td align="center">36.2</td>
<td align="center">46.2</td>
<td align="center">38.0</td>
<td align="center">4.39</td>
</tr>
</tbody>
</table>
<table-wrap-foot>
<p><italic>These results were evaluated with a Wilcoxon signed rank test, which concluded that the FC controller performed significantly better</italic>.</p>
</table-wrap-foot>
</table-wrap>
<fig id="F7" position="float">
<label>Figure 7</label>
<caption><p>The trials that resulted in the lowest steady-state RMS errors for the fatigue compensation and PD controllers are shown in panels <bold>(A,B)</bold>, respectively. The trial for the fatigue compensation controller was taken from one of Subject 1&#x02019;s trials, which had a steady-state RMS error of 2.44&#x000B0;. The trial for the PD controller was taken from one of Subject 2&#x02019;s trials, which had a steady-state RMS error of 4.23&#x000B0;.</p></caption>
<graphic xlink:href="frobt-04-00068-g007.tif"/>
</fig>
<p>In the second set of experiments, to determine how well the newly developed controller performed over long duration, where muscle fatigue should have a greater effect on performance, 2-min long tracking experiments were performed for one trial on each leg of each subject. A desired sinusoidal trajectory with a minimum of 0&#x000B0; and a maximum of 45&#x000B0; and a period of 2&#x02009;s was used for the 2&#x02009;min trials. Representative trials of the 2-min long experiments using the FC controller and the PD controller are shown in Figure <xref ref-type="fig" rid="F8">8</xref>, and the RMS errors computed from these trials are shown in Table <xref ref-type="table" rid="T3">3</xref>. The RMS data sets were found to be not normally distributed, so a Wilcoxon signed rank test was used to conclude that there was a statistically significant difference between the FC and PD RMS data sets.<xref ref-type="fn" rid="fn4"><sup>4</sup></xref> Therefore, since the mean RMS error of the FC trials is lower than the mean RMS error of the PD trials it can be concluded that the FC controller also yielded significantly better performance over 2-min long trials.</p>
<fig id="F8" position="float">
<label>Figure 8</label>
<caption><p>The 2-min long trials that resulted in the lowest RMS errors for the FC and PD controllers are shown in panels <bold>(A,B)</bold>, respectively. Both trials were taken from the results of Subject 1&#x02019;s left leg. The results of the FC controller in panel <bold>(A)</bold> had an RMS error of 3.24&#x000B0;, and the results of the PD controller in panel <bold>(B)</bold> had an RMS error of 6.96&#x000B0;.</p></caption>
<graphic xlink:href="frobt-04-00068-g008.tif"/>
</fig>
<table-wrap position="float" id="T3">
<label>Table 3</label>
<caption><p>RMS errors for 2-min long trials with PD and FC controllers for the right leg (RL) and left leg (LL) of each subject.</p></caption>
<table frame="hsides" rules="groups">
<thead>
<tr>
<th align="center"/>
<th align="center"/>
<th align="center" valign="top" colspan="2">Subject 1<hr/></th>
<th align="center" valign="top" colspan="2">Subject 2<hr/></th>
<th align="center" valign="top" colspan="2">Subject 3<hr/></th>
<th align="center">Mean</th>
<th align="center">SD</th>
</tr>
<tr>
<th align="center" colspan="2"/>
<th align="center" colspan="2"/>
</tr>
<tr>
<th align="center" colspan="4"/>
<th align="center" colspan="2"/>
</tr>
<tr>
<th align="center" colspan="6"/>
<th align="center" colspan="2"/>
</tr>
<tr>
<th align="center"/>
<th align="center"/>
<th align="center">RL</th>
<th align="center">LL</th>
<th align="center">RL</th>
<th align="center">LL</th>
<th align="center">RL</th>
<th align="center">LL</th>
<th align="center"/>
</tr>
</thead>
<tbody>
<tr>
<td align="left">FC controller</td>
<td align="center">RMS error [&#x000B0;]</td>
<td align="center">3.26</td>
<td align="center">3.24</td>
<td align="center">4.11</td>
<td align="center">3.92</td>
<td align="center">4.08</td>
<td align="center">4.08</td>
<td align="center">3.78</td>
<td align="center">0.418</td>
</tr>
<tr>
<td align="left"/>
<td align="center">RMS current [mA]</td>
<td align="center">51.6</td>
<td align="center">37.2</td>
<td align="center">35.4</td>
<td align="center">40.1</td>
<td align="center">37.9</td>
<td align="center">37.2</td>
<td align="center">39.9</td>
<td align="center">5.92</td>
</tr>
<tr>
<td align="left">PD controller</td>
<td align="center">RMS error [&#x000B0;]</td>
<td align="center">7.66</td>
<td align="center">6.96</td>
<td align="center">7.28</td>
<td align="center">7.71</td>
<td align="center">12.8</td>
<td align="center">11.9</td>
<td align="center">9.0</td>
<td align="center">2.57</td>
</tr>
<tr>
<td align="left"/>
<td align="center">RMS current [mA]</td>
<td align="center">37.2</td>
<td align="center">37.9</td>
<td align="center">37.9</td>
<td align="center">41.3</td>
<td align="center">36.4</td>
<td align="center">41.0</td>
<td align="center">38.6</td>
<td align="center">2.06</td>
</tr>
</tbody>
</table>
<table-wrap-foot>
<p><italic>These results were evaluated with a Wilcoxon signed rank test, which concluded that the FC controller performed significantly better</italic>.</p>
</table-wrap-foot>
</table-wrap>
<p>The estimated muscle fatigue state, obtained from the estimated models of muscle fatigue (see equation (<xref ref-type="disp-formula" rid="E18">15</xref>)), from the 2-min long trials are plotted in Figure <xref ref-type="fig" rid="F9">9</xref> to illustrate the effect that each controller has on the estimate of muscle fatigue. Although the FC controller performed significantly better than the PD controller, it can be observed from Figure <xref ref-type="fig" rid="F9">9</xref> that there is little difference in the muscle fatigue induced by both controllers. This was not the case for all subjects though as can be seen in Table <xref ref-type="table" rid="T4">4</xref>, which shows the estimate of the fatigue states at the end of the 2-min long tracking trials. The fatigue state estimates were found to be not normally distributed, so a Wilcoxon signed rank test was used to conclude that there was no statistically significant difference between the two data sets.<xref ref-type="fn" rid="fn5"><sup>5</sup></xref> Therefore, because there is no statistical difference in the terminal fatigue estimate data it can be concluded that the FC controller does not cause any significant increase or decrease in muscle fatigue. Nevertheless, these values may not correlate with the actual fatigue and there is a caveat in making the conclusion that the two controllers might cause the same muscle fatigue. The main point is that the estimate show both controllers may be comparable in terms of inducing fatigue based on the estimated dynamics of fatigue. The estimated fatigue is an approximate quantifier of what is the capability of each controller in inducing fatigue, which based on Figure <xref ref-type="fig" rid="F9">9</xref> and Table <xref ref-type="table" rid="T4">4</xref> comes out to be same.</p>
<fig id="F9" position="float">
<label>Figure 9</label>
<caption><p>Estimate of the fatigue state, obtained from the estimated model of muscle fatigue, from the 2-min trials of Subject 1 for the FC and PD controllers.</p></caption>
<graphic xlink:href="frobt-04-00068-g009.tif"/>
</fig>
<table-wrap position="float" id="T4">
<label>Table 4</label>
<caption><p>The estimate of the fatigue states at the end of the 2-min long tracking trials for the right leg (RL) and left leg (LL) of each subject.</p></caption>
<table frame="hsides" rules="groups">
<thead>
<tr>
<th align="center"/>
<th align="center"/>
<th align="center" valign="top" colspan="2">Subject 1<hr/></th>
<th align="center" valign="top" colspan="2">Subject 2<hr/></th>
<th align="center" valign="top" colspan="2">Subject 3<hr/></th>
<th align="center">Mean</th>
<th align="center">SD</th>
</tr>
<tr>
<th align="center" colspan="2"/>
<th align="center" colspan="2"/>
</tr>
<tr>
<th align="center" colspan="4"/>
<th align="center" colspan="2"/>
</tr>
<tr>
<th align="center" colspan="6"/>
<th align="center" colspan="2"/>
</tr>
<tr>
<th align="center"/>
<th align="center"/>
<th align="center">RL</th>
<th align="center">LL</th>
<th align="center">RL</th>
<th align="center">LL</th>
<th align="center">RL</th>
<th align="center">LL</th>
<th align="center"/>
</tr>
</thead>
<tbody>
<tr>
<td align="left">Fatigue state estimate</td>
<td align="center">FC controller</td>
<td align="center">0.617</td>
<td align="center">0.705</td>
<td align="center">0.549</td>
<td align="center">0.406</td>
<td align="center">0.919</td>
<td align="center">0.614</td>
<td align="center">0.533</td>
<td align="center">0.171</td>
</tr>
<tr>
<td align="left"/>
<td align="center">PD controller</td>
<td align="center">0.719</td>
<td align="center">0.704</td>
<td align="center">0.579</td>
<td align="center">0.408</td>
<td align="center">0.860</td>
<td align="center">0.605</td>
<td align="center">0.646</td>
<td align="center">0.153</td>
</tr>
<tr>
<td align="left"/>
<td align="center">Difference</td>
<td align="center">&#x02212;0.102</td>
<td align="center">0.001</td>
<td align="center">&#x02212;0.030</td>
<td align="center">&#x02212;0.002</td>
<td align="center">0.059</td>
<td align="center">0.009</td>
<td align="center">&#x02212;0.011</td>
<td align="center">0.053</td>
</tr>
</tbody>
</table>
<table-wrap-foot>
<p><italic>From the results of a Wilcoxon signed rank test it was concluded that there is no statistical difference in the fatigue states at the end of the 2-min long trials</italic>.</p>
</table-wrap-foot>
</table-wrap>
<p>In the third set of experiments, to demonstrate the controllers&#x02019; ability to track trajectories with different frequencies, five 30&#x02009;s trials were conducted on both legs of subject 2 for two more trajectories. The first trajectory, which is comparable with normal gait speeds, is twice as fast with a time period of 1&#x02009;s and maximum amplitude of 35&#x000B0;. The second trajectory is half as slow with a time period of 4&#x02009;s and maximum amplitude of 45&#x000B0;. In addition, to compare the FC controller to a similar class of adaptive controllers, a PD control with a feedforward NN was also tested in this set of experiments. The averaged RMS errors for the full duration of the experiments (0&#x02013;30&#x02009;s), the steady-state RMS (SSRMS) errors (ignores the first two periods of the desired trajectory), and the RMS of the current amplitude of the stimulation are shown in Table <xref ref-type="table" rid="T5">5</xref>. Representative trials of the results of the fatigue compensation (FC) controller and the PD controller are shown in Figure <xref ref-type="fig" rid="F10">10</xref>. The subjects that were recruited for the previous set of experiments were unavailable for testing and more experiments were not performed for this set. Because this set of experiment was performed on only one subject, statistical tests are not included.</p>
<table-wrap position="float" id="T5">
<label>Table 5</label>
<caption><p>Root mean square errors (RMS) for the full 30-s long trajectory tracking of 1 and 4&#x02009;s time-period sinusoidal experiments and steady-state (2&#x02013;30 and 8&#x02013;30) RMS (SSRMS) errors averaged over five trials for the right leg (RL) and left leg (LL) of each subject for both the fatigue compensation (FC) and PD&#x02009;&#x0002B;&#x02009;NN controllers.</p></caption>
<table frame="hsides" rules="groups">
<thead>
<tr>
<th align="center"/>
<th align="center"/>
<th align="center" valign="top" colspan="2">1-s Time period<hr/></th>
<th align="center" valign="top" colspan="2">4-s Time period<hr/></th>
</tr>
<tr>
<th align="center" colspan="2"/>
<th align="center" colspan="2"/>
</tr>
<tr>
<th align="center" colspan="4"/>
<th align="center" colspan="2"/>
</tr>
<tr>
<th align="center"/>
<th align="center"/>
<th align="center">RL</th>
<th align="center">LL</th>
<th align="center">RL</th>
<th align="center">LL</th>
</tr>
</thead>
<tbody>
<tr>
<td align="left">FC controller</td>
<td align="center">RMS error [&#x000B0;]</td>
<td align="center">5.75</td>
<td align="center">3.96</td>
<td align="center">3.36</td>
<td align="center">3.89</td>
</tr>
<tr>
<td align="left"/>
<td align="center">SSRMS error [&#x000B0;]</td>
<td align="center">5.28</td>
<td align="center">3.77</td>
<td align="center">3.17</td>
<td align="center">3.35</td>
</tr>
<tr>
<td align="left"/>
<td align="center">RMS current [mA]</td>
<td align="center">20.2</td>
<td align="center">19.7</td>
<td align="center">15.1</td>
<td align="center">24.1</td>
</tr>
<tr>
<td align="left">PD&#x02009;&#x0002B;&#x02009;NN controller (Wang et al., <xref ref-type="bibr" rid="B46">2013</xref>)</td>
<td align="center">RMS error [&#x000B0;]</td>
<td align="center">7.39</td>
<td align="center">5.59</td>
<td align="center">5.74</td>
<td align="center">4.18</td>
</tr>
<tr>
<td align="left"/>
<td align="center">SSRMS error [&#x000B0;]</td>
<td align="center">6.56</td>
<td align="center">5.03</td>
<td align="center">4.70</td>
<td align="center">4.12</td>
</tr>
<tr>
<td align="left"/>
<td align="center">RMS current [mA]</td>
<td align="center">25.1</td>
<td align="center">23.0</td>
<td align="center">19.4</td>
<td align="center">23.4</td>
</tr>
</tbody>
</table>
</table-wrap>
<fig id="F10" position="float">
<label>Figure 10</label>
<caption><p>The trials that resulted in the lowest steady-state RMS errors for the <bold>(A)</bold> fatigue compensation and <bold>(B)</bold> PD&#x02009;&#x0002B;&#x02009;NN controllers for the (left) 1&#x02009;s time-period trajectory and (right) 4&#x02009;s time-period trajectory.</p></caption>
<graphic xlink:href="frobt-04-00068-g010.tif"/>
</fig>
</sec>
<sec id="S7" sec-type="discussion">
<label>7</label> <title>Discussion</title>
<p>Compared with our previous work, this work is a different control design because an integrator backstepping approach was employed to design an NMES controller that accounts for muscle fatigue and activation dynamics. The associated stability analysis is also different from the stability analyses of the RISE controllers (i.e., a different Lyapunov function is used). In our previous work with the RISE and RISE&#x02009;&#x0002B;&#x02009;NN controllers, the design approach only considered the second-order musculoskeletal dynamics. To account for muscle fatigue, an additional muscle activation dynamics needs to be added. This increases the order of the system from second order to third order. Our previous controllers RISE and RISE&#x02009;&#x0002B;&#x02009;NN are not designed for a third order system and their associated stability analyses for the 3rd order system may not be feasible. The ability of this controller to compensate for the effects of NMES-induced muscle fatigue is the main novelty of this developed controller, as no previously developed NMES controllers compensate for muscle fatigue. The control system presented in this article was originally developed in Sharma et al. (<xref ref-type="bibr" rid="B43">2009a</xref>). However, the previous work did not present a method for the implementation of this controller or any experimental results. This article concludes the work by presenting how the controller may be implemented through using estimated muscle parameters, procedures for estimating the required parameters, and experimental results that show the controller to have a statistically significant improvement over a PD controller. Also, given the developed control strategy and stability analysis, if a different first-order fatigue model (e.g., an EMG-based fatigue model) is available, it can be incorporated into the control design, which can provide a more accurate and real-time compensation of muscle fatigue.</p>
<p>To approximate the unknown model parameters, an NN-based feedforward approach was used. The NN design is based on an online update law and does not require <italic>a priori</italic> weight training. The estimates of the three-layer NN are updated by the laws given in equation (<xref ref-type="disp-formula" rid="E31">27</xref>). These laws allow the NN weights to be updated in real time, which are designed by using the Lyapunov control redesign process. According to Weierstrass&#x02013;Stone theorem a three-layer NN can be used to approximate any continuous function up to a residual threshold, and hence, motivates the choice of a three-layer network. In three-layer NN, by increasing the number of hidden layer neurons (L), the approximation error can be reduced arbitrarily small, and the weights can be adjusted based on the adaptation law. For a two layer NN the basis function (hidden layer with activation functions) has to be selected carefully for practical implementations. This is not a problem with a three-layer NN because the input layer can be tuned to find an appropriate basis function. Moreover, the approximation error for a two layer NN is bounded from below on the order of <inline-formula><mml:math id="M130"><mml:mfrac><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:msup><mml:mrow><mml:mi>L</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn><mml:mo class="MathClass-bin">&#x02215;</mml:mo><mml:mi>n</mml:mi></mml:mrow></mml:msup></mml:mrow></mml:mfrac></mml:math></inline-formula>, which implies that if the input dimension (n) is large, increasing L has no effect on reducing the approximation error (Lewis et al., <xref ref-type="bibr" rid="B32">2002</xref>).</p>
<p>The work of Wang et al. (<xref ref-type="bibr" rid="B46">2013</xref>) presents the control development of an adaptive inverse optimal NMES controller. This work may seem similar to Wang et al.&#x02019;s work as both papers used PD and neural network components; however, there are three major differences. First, the controller developed in Wang et al. is an optimal controller whose control objective is to minimize a user-specific cost functional, while the controller developed in this article is strictly error-based feedback control. Second, the controller developed in Wang et al. does not account for muscle fatigue, where as the controller developed in this paper models and compensates for the effects of muscle fatigue. Third, the control design approach and stability analyses of both papers are different because in Wang et al. an inverse optimal control approach was used to derive a PD&#x02009;&#x0002B;&#x02009;NN controller but in this current work a backstepping approach is used to derive a controller that uses PD&#x02009;&#x0002B;&#x02009;NN controller as a virtual control input (due to feedback type 3rd order dynamics), which leads to a controller that uses time derivatives of PD&#x02009;&#x0002B;&#x02009;NN controller.</p>
<p>The 30-s long and 2-min long trials illustrated that the developed controller performs significantly better than a PD controller. For the 30&#x02009;s trials, the mean steady-state RMS errors for the PD controller and the FC controller were 6.73&#x000B0; and 3.93&#x000B0;, respectively. For the 2-min long trials the FC controller was shown to have a mean RMS error of 3.78&#x000B0;, while the PD controller was shown to have a mean RMS error of 9.04&#x000B0;. The 30-s long and 2-min long trials illustrated that the developed controller performs significantly better than a PD controller. For the 30&#x02009;s trials, the mean steady-state RMS errors for the PD controller and the FC controller were 6.73&#x000B0; and 3.93&#x000B0;, respectively. For the 2-min long trials the FC controller was shown to have a mean RMS error of 3.78&#x000B0;, while the PD controller was shown to have a mean RMS error of 9.04&#x000B0;. The first two sets of experiments illustrated that the developed controller performs significantly better than a PD controller. For the first set of experiments, the mean steady-state RMS errors for the PD controller and the FC controller were 6.73&#x000B0; and 3.93&#x000B0;, respectively. For the second set of experiments, the FC controller was shown to have a mean RMS error of 3.78&#x000B0;, while the PD controller was shown to have a mean RMS error of 9.04&#x000B0;. A Wilcoxon signed rank test was used to show that the differences in performance were significant. The significant decrease in the performance of the PD controller for the 2-min long trials, compared with the 30-s long trials, indicated that the muscle fatigue does in fact cause a degradation in the control performance. However, for the newly developed FC controller there was no significant decrease in the performance of the controller for the 2-min long trials compared with the 30-s long trials. Therefore, it can be concluded that the newly developed FC controller is significantly more robust to the effects of muscle fatigue than a PD controller. Also, from the results of the third set of experiments, the FC controller is able to perform for slower and faster trajectories and fairs close to a PD&#x02009;&#x0002B;&#x02009;NN controller, which does not consider activation or fatigue dynamics. However, since only 1 subject was recruited for this set of experiment, the performance of the new controller with PD&#x02009;&#x0002B;&#x02009;NN controller lacks statistical significance. It should also be noted that the poor performance of the PD controller is also a result of its limitations as a linear controller. In other words, not only can the PD controller not compensate for the effects of muscle fatigue but it also cannot compensate for the other non-linearities of the system that are apparent in its dynamics in equation (<xref ref-type="disp-formula" rid="E9">8</xref>). A potential limitation of a PD controller is that high gain feedback is typically required to provide robustness to uncertain dynamics or unmodeled phenomena. High gain feedback can often result in large amplitude or high frequency control effort, which can lead to increased discomfort in people that are sensitive to stimulation intensity or lead to increased fatigue. The control gains can be adjusted to account for the level of noise in the feedback signal (i.e., which could result in high frequency stimulation) versus performance metrics and robustness. While various approaches have been documented for systematically adjusting the control gains for PD-like controllers (&#x000C5;str&#x000F6;m et al., <xref ref-type="bibr" rid="B5">1993</xref>; Killingsworth and Krstic, <xref ref-type="bibr" rid="B23">2006</xref>), an empirical approach was used to obtain the results in this article. The results were obtained from the experiments performed on able-bodied subjects and any voluntary contributions from them may create a bias in the results. Therefore, the subjects were instructed to relax and not to interfere with FES and were unaware of the type of desired trajectory used. To completely ensure that the subjects would not interfere with the FES performance, EMG signals may be used to quantify any voluntary effort and thus remove any bias in the results.</p>
<p>Although the estimated muscle fatigue for the demonstrative trials were approximately equal for the two controllers, this was not true for all participants. From the results of the Wilcoxon signed rank test it was concluded that the developed controller does not cause any significant increase or decrease in muscle fatigue. However, it should be noted that this is an estimate of the muscle fatigue state and not the actual muscle fatigue state. Also, the controller is only compensating for the muscle fatigue to maintain the performance of the controller. The improved performance achieved by the FC controller was likely a result of the FC controller having a higher frequency response than the PD controller, as can be observed in Figures <xref ref-type="fig" rid="F7">7</xref> and <xref ref-type="fig" rid="F8">8</xref>.</p>
</sec>
<sec id="S8">
<label>8</label> <title>Conclusion</title>
<p>In this article, an NMES controller that incorporates the effects of muscle fatigue through an uncertain function of the activation dynamics was developed. The developed controller was shown to yield globally uniformly ultimately bounded tracking, provided that the sufficient conditions are met. The experimental results illustrate the feasibility of the controller to enable the lower leg to track a desired trajectory through stimulation of the quadriceps muscle. The focus of the current work was control development and analysis of the controller that incorporates muscle fatigue dynamics. The next step is to validate the new controller performance in a pathological case; e.g., stimulating muscles atrophied due to SCI. Especially, it will be interesting to see the controller&#x02019;s performance when muscle is atrophied. The resulting control effectiveness of the muscle could be so low due to atrophy that not enough stimulation can be applied with safe limits to yield output. In other clinical populations, the user may be hyper sensitive to stimulation, limiting the amount that can be applied and also resulting in inefficient amount of stimulation. These issues and other implications from specific clinical populations would need to be considered in a more detailed clinical study, which is beyond the scope of this control development and analysis. The controller also needs to be tested for complex tasks that relate to activities of daily living. Therefore, our future work will focus on implementing the controller on clinical population and testing its performance during tasks such as walking elicited through FES.</p>
</sec>
<sec id="S9">
<title>Ethics Statement</title>
<p>Before any experimentation, approval from the Institutional Review Board at the University of Pittsburgh was obtained and each human subject was consented before participation.</p>
</sec>
<sec id="S10" sec-type="author-contributor">
<title>Author Contributions</title>
<p>NS derived the back stepping control design for NMES control, conceptualized the experimental study, and wrote and edited the article. NK designed and performed parameter estimation experiments, validated the control design on human subjects, and wrote the experimental and discussion section. NA performed additional experiments and compared with a previous control design. WD advised in the control design and edited the article.</p>
</sec>
<sec id="S11">
<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. The reviewer, RN, and handling editor declared their shared affiliation.</p>
</sec>
</body>
<back>
<ack>
<p>The parts of the control development, analysis, and results presented in the article have been published in the dissertations of the authors, namely, by Sharma (<xref ref-type="bibr" rid="B40">2010</xref>) and Kirsch (<xref ref-type="bibr" rid="B24">2016</xref>).</p>
</ack>
<fn-group>
<fn fn-type="financial-disclosure">
<p><bold>Funding.</bold> This work was funded in part by the National Science Foundation award numbers 1462876 and 1511139 and the University of Pittsburgh&#x02019;s Competitive Medical Research Fund and Central Research Development Fund.</p>
</fn>
</fn-group>
<ref-list>
<title>References</title>
<ref id="B1"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Abbas</surname> <given-names>J. J.</given-names></name> <name><surname>Chizeck</surname> <given-names>H. J.</given-names></name></person-group> (<year>1991</year>). <article-title>Feedback control of coronal plane hip angle in paraplegic subjects using functional neuromuscular stimulation</article-title>. <source>IEEE Trans. Biomed. Eng.</source> <volume>38</volume>, <fpage>687</fpage>&#x02013;<lpage>698</lpage>.<pub-id pub-id-type="doi">10.1109/10.83570</pub-id><pub-id pub-id-type="pmid">1879862</pub-id></citation></ref>
<ref id="B2"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Ajoudani</surname> <given-names>A.</given-names></name> <name><surname>Erfanian</surname> <given-names>A.</given-names></name></person-group> (<year>2009</year>). <article-title>A neuro-sliding-mode control with adaptive modeling of uncertainty for control of movement in paralyzed limbs using functional electrical stimulation</article-title>. <source>IEEE Trans. Biomed. Eng.</source> <volume>56</volume>, <fpage>1771</fpage>&#x02013;<lpage>1780</lpage>.<pub-id pub-id-type="doi">10.1109/TBME.2009.2017030</pub-id><pub-id pub-id-type="pmid">19336284</pub-id></citation></ref>
<ref id="B3"><citation citation-type="confproc"><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>2015</year>). <article-title>&#x0201C;Dynamic surface control of neuromuscular electrical stimulation of a musculoskeletal system with activation dynamics and an input delay,&#x0201D;</article-title> in <conf-name>American Control Conference (ACC)</conf-name> (<conf-loc>Chicago, IL</conf-loc>: <conf-sponsor>IEEE</conf-sponsor>), <fpage>631</fpage>&#x02013;<lpage>636</lpage>.</citation></ref>
<ref id="B4"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Asmussen</surname> <given-names>E.</given-names></name></person-group> (<year>1979</year>). <article-title>Muscle fatigue</article-title>. <source>Med. Sci. Sports. Exerc.</source> <volume>11</volume>, <fpage>313</fpage>&#x02013;<lpage>321</lpage>.<pub-id pub-id-type="doi">10.1249/00005768-197901140-00001</pub-id></citation></ref>
<ref id="B5"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>&#x000C5;str&#x000F6;m</surname> <given-names>K. J.</given-names></name> <name><surname>H&#x000E4;gglund</surname> <given-names>T.</given-names></name> <name><surname>Hang</surname> <given-names>C. C.</given-names></name> <name><surname>Ho</surname> <given-names>W. K.</given-names></name></person-group> (<year>1993</year>). <article-title>Automatic tuning and adaptation for PID controllers &#x02013; a survey</article-title>. <source>Control Eng. Prac.</source> <volume>1</volume>, <fpage>699</fpage>&#x02013;<lpage>714</lpage>.<pub-id pub-id-type="doi">10.1016/0967-0661(93)91394-C</pub-id></citation></ref>
<ref id="B6"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Binder-Macleod</surname> <given-names>S. A.</given-names></name> <name><surname>Dean</surname> <given-names>J. C.</given-names></name> <name><surname>Ding</surname> <given-names>J.</given-names></name></person-group> (<year>2002</year>). <article-title>Electrical stimulation factors in potentiation of human quadriceps femoris</article-title>. <source>Muscle Nerve</source> <volume>25</volume>, <fpage>271</fpage>&#x02013;<lpage>279</lpage>.<pub-id pub-id-type="doi">10.1002/mus.10027</pub-id><pub-id pub-id-type="pmid">11870697</pub-id></citation></ref>
<ref id="B7"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Chang</surname> <given-names>G.-C.</given-names></name> <name><surname>Lub</surname> <given-names>J.-J.</given-names></name> <name><surname>Liao</surname> <given-names>G.-D.</given-names></name> <name><surname>Lai</surname> <given-names>J.-S.</given-names></name> <name><surname>Cheng</surname> <given-names>C.-K.</given-names></name> <name><surname>Kuo</surname> <given-names>B.-L.</given-names></name> <etal/></person-group> (<year>1997</year>). <article-title>A neuro-control system for the knee joint position control with quadriceps stimulation</article-title>. <source>IEEE Trans. Rehabil. Eng.</source> <volume>5</volume>, <fpage>2</fpage>&#x02013;<lpage>11</lpage>.<pub-id pub-id-type="doi">10.1109/86.559344</pub-id><pub-id pub-id-type="pmid">9086380</pub-id></citation></ref>
<ref id="B8"><citation citation-type="book"><person-group person-group-type="author"><name><surname>Chen</surname> <given-names>Y.-L.</given-names></name> <name><surname>Chen</surname> <given-names>W.-L.</given-names></name> <name><surname>Hsiao</surname> <given-names>C.-C.</given-names></name> <name><surname>Kuo</surname> <given-names>T.-S.</given-names></name> <name><surname>Lai</surname> <given-names>J.-S.</given-names></name></person-group> (<year>2005</year>). <article-title>Development of the FES system with neural network &#x0002B; PID controller for the stroke</article-title>. <source>Proc. IEEE Int. Symp. Circuits Syst.</source> <publisher-loc>Kobe</publisher-loc>, <volume>5</volume>, <fpage>5119</fpage>&#x02013;<lpage>5121</lpage>.<pub-id pub-id-type="doi">10.1109/ISCAS.2005.1465786</pub-id></citation></ref>
<ref id="B9"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Cheng</surname> <given-names>T.</given-names></name> <name><surname>Wang</surname> <given-names>Q.</given-names></name> <name><surname>Kamalapurkar</surname> <given-names>R.</given-names></name> <name><surname>Dinh</surname> <given-names>H.</given-names></name> <name><surname>Bellman</surname> <given-names>M.</given-names></name> <name><surname>Dixon</surname> <given-names>W.</given-names></name></person-group> (<year>2016</year>). <article-title>Identification-based closed-loop NMES limb tracking with amplitude-modulated control input</article-title>. <source>IEEE Trans. Cybern.</source> <volume>46</volume>, <fpage>1679</fpage>&#x02013;<lpage>1690</lpage>.<pub-id pub-id-type="doi">10.1109/TCYB.2015.2453402</pub-id><pub-id pub-id-type="pmid">26241989</pub-id></citation></ref>
<ref id="B10"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Ding</surname> <given-names>J.</given-names></name> <name><surname>Wexler</surname> <given-names>A.</given-names></name> <name><surname>Binder-Macleod</surname> <given-names>S.</given-names></name></person-group> (<year>2002a</year>). <article-title>A predictive fatigue model. II. predicting the effect of resting times on fatigue</article-title>. <source>IEEE Trans. Rehabil. Eng.</source> <volume>10</volume>, <fpage>59</fpage>&#x02013;<lpage>67</lpage>.<pub-id pub-id-type="doi">10.1109/TNSRE.2002.1021587</pub-id></citation></ref>
<ref id="B11"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Ding</surname> <given-names>J.</given-names></name> <name><surname>Wexler</surname> <given-names>A.</given-names></name> <name><surname>Binder-Macleod</surname> <given-names>S.</given-names></name></person-group> (<year>2002b</year>). <article-title>A predictive fatigue model. I. predicting the effect of stimulation frequency and pattern on fatigue</article-title>. <source>IEEE Trans. Rehabil. Eng.</source> <volume>10</volume>, <fpage>48</fpage>&#x02013;<lpage>58</lpage>.<pub-id pub-id-type="doi">10.1109/TNSRE.2002.1021586</pub-id></citation></ref>
<ref id="B12"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Downey</surname> <given-names>R.</given-names></name> <name><surname>Bellman</surname> <given-names>M.</given-names></name> <name><surname>Sharma</surname> <given-names>N.</given-names></name> <name><surname>Wang</surname> <given-names>Q.</given-names></name> <name><surname>Gregory</surname> <given-names>C.</given-names></name> <name><surname>Dixon</surname> <given-names>W.</given-names></name></person-group> (<year>2011</year>). <article-title>A novel modulation strategy to increase stimulation duration in neuromuscular electrical stimulation</article-title>. <source>Muscle Nerve</source> <volume>44</volume>, <fpage>382</fpage>&#x02013;<lpage>387</lpage>.<pub-id pub-id-type="doi">10.1002/mus.22058</pub-id><pub-id pub-id-type="pmid">21996798</pub-id></citation></ref>
<ref id="B13"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Downey</surname> <given-names>R.</given-names></name> <name><surname>Cheng</surname> <given-names>T.</given-names></name> <name><surname>Bellman</surname> <given-names>M.</given-names></name> <name><surname>Dixon</surname> <given-names>W.</given-names></name></person-group> (<year>2015</year>). <article-title>Closed-loop asynchronous electrical stimulation prolongs functional movements in the lower body</article-title>. <source>IEEE Trans. Neural. Syst. Rehabil. Eng.</source> <volume>23</volume>, <fpage>1117</fpage>&#x02013;<lpage>1127</lpage>.<pub-id pub-id-type="doi">10.1109/TNSRE.2015.2427658</pub-id></citation></ref>
<ref id="B14"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Ferrarin</surname> <given-names>M.</given-names></name> <name><surname>Palazzo</surname> <given-names>F.</given-names></name> <name><surname>Riener</surname> <given-names>R.</given-names></name> <name><surname>Quintern</surname> <given-names>J.</given-names></name></person-group> (<year>2001</year>). <article-title>Model-based control of FES-induced single joint movements</article-title>. <source>IEEE Trans. Neural Syst. Rehabil. Eng.</source> <volume>9</volume>, <fpage>245</fpage>&#x02013;<lpage>257</lpage>.<pub-id pub-id-type="doi">10.1109/7333.948452</pub-id><pub-id pub-id-type="pmid">11561660</pub-id></citation></ref>
<ref id="B15"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Ferrarin</surname> <given-names>M.</given-names></name> <name><surname>Pedotti</surname> <given-names>A.</given-names></name></person-group> (<year>2000</year>). <article-title>The relationship between electrical stimulus and joint torque: a dynamic model</article-title>. <source>IEEE Trans. Rehabil. Eng.</source> <volume>8</volume>, <fpage>342</fpage>&#x02013;<lpage>352</lpage>.<pub-id pub-id-type="doi">10.1109/86.867876</pub-id><pub-id pub-id-type="pmid">11001514</pub-id></citation></ref>
<ref id="B16"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Freeman</surname> <given-names>C.</given-names></name></person-group> (<year>2014</year>). <article-title>Upper limb electrical stimulation using input-output lineariztaion and iterative learning control</article-title>. <source>IEEE Trans. Control Syst. Technol.</source> <volume>23</volume>, <fpage>1546</fpage>&#x02013;<lpage>1554</lpage>.<pub-id pub-id-type="doi">10.1109/TCST.2014.2363412</pub-id></citation></ref>
<ref id="B17"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Freeman</surname> <given-names>C. T.</given-names></name> <name><surname>Hughes</surname> <given-names>A.-M.</given-names></name> <name><surname>Burridge</surname> <given-names>J. H.</given-names></name> <name><surname>Chappell</surname> <given-names>P. H.</given-names></name> <name><surname>Lewin</surname> <given-names>P. L.</given-names></name> <name><surname>Rogers</surname> <given-names>E.</given-names></name></person-group> (<year>2009</year>). <article-title>A model of the upper extremity using FES for stroke rehabilitation</article-title>. <source>J. Biomech. Eng.</source> <volume>131</volume>, <fpage>031011</fpage>.<pub-id pub-id-type="doi">10.1115/1.3005332</pub-id><pub-id pub-id-type="pmid">19154070</pub-id></citation></ref>
<ref id="B18"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Giat</surname> <given-names>Y.</given-names></name> <name><surname>Mizrahi</surname> <given-names>J.</given-names></name> <name><surname>Levy</surname> <given-names>M.</given-names></name></person-group> (<year>1993</year>). <article-title>A musculotendon model of the fatigue profiles of paralyzed quadriceps muscle under FES</article-title>. <source>IEEE Trans. Biomed. Eng.</source> <volume>40</volume>, <fpage>664</fpage>&#x02013;<lpage>674</lpage>.<pub-id pub-id-type="doi">10.1109/10.237696</pub-id><pub-id pub-id-type="pmid">8244427</pub-id></citation></ref>
<ref id="B19"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Giuffrida</surname> <given-names>J. P.</given-names></name> <name><surname>Crago</surname> <given-names>P. E.</given-names></name></person-group> (<year>2005</year>). <article-title>Functional restoration of elbow extension after spinal-cord injury using a neural network-based synergistic FES controller</article-title>. <source>IEEE Trans. Neural Syst. Rehabil. Eng.</source> <volume>13</volume>, <fpage>147</fpage>&#x02013;<lpage>152</lpage>.<pub-id pub-id-type="doi">10.1109/TNSRE.2005.847375</pub-id><pub-id pub-id-type="pmid">16003892</pub-id></citation></ref>
<ref id="B20"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Happee</surname> <given-names>R.</given-names></name></person-group> (<year>1994</year>). <article-title>Inverse dynamic optimization including muscular dynamics, a new simulation method applied to goal directed movements</article-title>. <source>J. Biomech.</source> <volume>27</volume>, <fpage>953</fpage>&#x02013;<lpage>960</lpage>.<pub-id pub-id-type="doi">10.1016/0021-9290(94)91277-7</pub-id><pub-id pub-id-type="pmid">8063845</pub-id></citation></ref>
<ref id="B21"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Hatze</surname> <given-names>H.</given-names></name></person-group> (<year>1977</year>). <article-title>A myocybernetic control model of skeletal muscle</article-title>. <source>Biol. Cybern.</source> <volume>25</volume>, <fpage>103</fpage>&#x02013;<lpage>119</lpage>.<pub-id pub-id-type="doi">10.1007/BF00337268</pub-id></citation></ref>
<ref id="B22"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Jezernik</surname> <given-names>S.</given-names></name> <name><surname>Wassink</surname> <given-names>R. G.</given-names></name> <name><surname>Keller</surname> <given-names>T.</given-names></name></person-group> (<year>2004</year>). <article-title>Sliding mode closed-loop control of FES controlling the shank movement</article-title>. <source>IEEE Trans. Biomed. Eng</source> <volume>51</volume>, <fpage>263</fpage>&#x02013;<lpage>272</lpage>.<pub-id pub-id-type="doi">10.1109/TBME.2003.820393</pub-id><pub-id pub-id-type="pmid">14765699</pub-id></citation></ref>
<ref id="B23"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Killingsworth</surname> <given-names>N. J.</given-names></name> <name><surname>Krstic</surname> <given-names>M.</given-names></name></person-group> (<year>2006</year>). <article-title>PID tuning using extremum seeking: online, model-free performance optimization</article-title>. <source>IEEE Contr. Syst. Mag.</source> <volume>26</volume>, <fpage>70</fpage>&#x02013;<lpage>79</lpage>.<pub-id pub-id-type="doi">10.1109/MCS.2006.1580155</pub-id></citation></ref>
<ref id="B24"><citation citation-type="thesis"><person-group person-group-type="author"><name><surname>Kirsch</surname> <given-names>N. A.</given-names></name></person-group> (<year>2016</year>). <source>Control Methods for Compensation and Inhibition of Muscle Fatigue in Neuroprosthetic Devices</source>. PhD thesis, <publisher-name>University of Pittsburgh</publisher-name>.</citation></ref>
<ref id="B25"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Klauer</surname> <given-names>C.</given-names></name> <name><surname>Schauer</surname> <given-names>T.</given-names></name> <name><surname>Reichenfelser</surname> <given-names>W.</given-names></name> <name><surname>Karner</surname> <given-names>J.</given-names></name> <name><surname>Zwicker</surname> <given-names>S.</given-names></name> <name><surname>Gandolla</surname> <given-names>M.</given-names></name> <etal/></person-group> (<year>2014</year>). <article-title>Feedback control of arm movements using neuro-muscular electrical stimulation (NMES) combined with a lockable, passive exoskeleton for gravity compensation</article-title>. <source>Front. Neurosci.</source> <volume>8</volume>:<fpage>262</fpage>.<pub-id pub-id-type="doi">10.3389/fnins.2014.00262</pub-id><pub-id pub-id-type="pmid">25228853</pub-id></citation></ref>
<ref id="B26"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Kordylewski</surname> <given-names>H.</given-names></name> <name><surname>Graupe</surname> <given-names>D.</given-names></name></person-group> (<year>2001</year>). <article-title>Control of neuromuscular stimulation for ambulation by complete paraplegics via artificial neural networks</article-title>. <source>Neurol. Res.</source> <volume>23</volume>, <fpage>472</fpage>&#x02013;<lpage>481</lpage>.<pub-id pub-id-type="doi">10.1179/016164101101198866</pub-id><pub-id pub-id-type="pmid">11474803</pub-id></citation></ref>
<ref id="B27"><citation citation-type="book"><person-group person-group-type="author"><name><surname>Krstic</surname> <given-names>M.</given-names></name> <name><surname>Kanellakopoulos</surname> <given-names>I.</given-names></name> <name><surname>Kokotovic</surname> <given-names>P. V.</given-names></name></person-group> (<year>1995</year>). <source>Nonlinear and Adaptive Control Design</source>. <publisher-loc>New York, NY</publisher-loc>: <publisher-name>Wiley</publisher-name>.</citation></ref>
<ref id="B28"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Lan</surname> <given-names>N.</given-names></name> <name><surname>Crago</surname> <given-names>P. E.</given-names></name> <name><surname>Chizeck</surname> <given-names>H. J.</given-names></name></person-group> (<year>1991a</year>). <article-title>Control of end-point forces of a multijoint limb by functional neuromuscular stimulation</article-title>. <source>IEEE Trans. Biomed. Eng.</source> <volume>38</volume>, <fpage>953</fpage>&#x02013;<lpage>965</lpage>.<pub-id pub-id-type="doi">10.1109/10.88441</pub-id></citation></ref>
<ref id="B29"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Lan</surname> <given-names>N.</given-names></name> <name><surname>Crago</surname> <given-names>P. E.</given-names></name> <name><surname>Chizeck</surname> <given-names>H. J.</given-names></name></person-group> (<year>1991b</year>). <article-title>Feedback control methods for task regulation by electrical stimulation of muscles</article-title>. <source>IEEE Trans. Biomed. Eng.</source> <volume>38</volume>, <fpage>1213</fpage>&#x02013;<lpage>1223</lpage>.<pub-id pub-id-type="doi">10.1109/10.137287</pub-id></citation></ref>
<ref id="B30"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Levy</surname> <given-names>M.</given-names></name> <name><surname>Mizrahi</surname> <given-names>J.</given-names></name> <name><surname>Susak</surname> <given-names>Z.</given-names></name></person-group> (<year>1990</year>). <article-title>Recruitment, force and fatigue characteristics of quadriceps muscles of paraplegics, isometrically activated by surface FES</article-title>. <source>J. Biomed. Eng.</source> <volume>12</volume>, <fpage>150</fpage>&#x02013;<lpage>156</lpage>.<pub-id pub-id-type="doi">10.1016/0141-5425(90)90136-B</pub-id></citation></ref>
<ref id="B31"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Lewis</surname> <given-names>F. L.</given-names></name></person-group> (<year>1996</year>). <article-title>Neural network control of robot manipulators</article-title>. <source>IEEE Expert</source> <volume>11</volume>, <fpage>64</fpage>&#x02013;<lpage>75</lpage>.<pub-id pub-id-type="doi">10.1109/64.506755</pub-id></citation></ref>
<ref id="B32"><citation citation-type="book"><person-group person-group-type="author"><name><surname>Lewis</surname> <given-names>F. L.</given-names></name> <name><surname>Selmic</surname> <given-names>R.</given-names></name> <name><surname>Campos</surname> <given-names>J.</given-names></name></person-group> (<year>2002</year>). <source>Neuro-Fuzzy Control of Industrial Systems with Actuator Nonlinearities</source>. <publisher-loc>Philadelphia, PA, USA</publisher-loc>: <publisher-name>Society for Industrial and Applied Mathematics</publisher-name>.</citation></ref>
<ref id="B33"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Lynch</surname> <given-names>C.</given-names></name> <name><surname>Popovic</surname> <given-names>M.</given-names></name></person-group> (<year>2012</year>). <article-title>A comparison of closed-loop control algorithms for regulating electrically stimulated knee movements in individuals with spinal cord injury</article-title>. <source>IEEE Trans. Neural Syst. Rehabil. Eng.</source> <volume>20</volume>, <fpage>539</fpage>&#x02013;<lpage>548</lpage>.<pub-id pub-id-type="doi">10.1109/TNSRE.2012.2185065</pub-id><pub-id pub-id-type="pmid">22772375</pub-id></citation></ref>
<ref id="B34"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Maladen</surname> <given-names>R.</given-names></name> <name><surname>Perumal</surname> <given-names>R.</given-names></name> <name><surname>Wexler</surname> <given-names>A.</given-names></name> <name><surname>Binder-Macleod</surname> <given-names>S.</given-names></name></person-group> (<year>2007</year>). <article-title>Effects of activation pattern on nonisometric human skeletal muscle performance</article-title>. <source>J. Appl. Physiol.</source> <volume>102</volume>, <fpage>1985</fpage>&#x02013;<lpage>1991</lpage>.<pub-id pub-id-type="doi">10.1152/japplphysiol.00729.2006</pub-id><pub-id pub-id-type="pmid">17272410</pub-id></citation></ref>
<ref id="B35"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Riener</surname> <given-names>R.</given-names></name> <name><surname>Fuhr</surname> <given-names>T.</given-names></name></person-group> (<year>1998</year>). <article-title>Patient-driven control of FES-supported standing up: a simulation study</article-title>. <source>IEEE Trans. Rehabil. Eng.</source> <volume>6</volume>, <fpage>113</fpage>&#x02013;<lpage>124</lpage>.<pub-id pub-id-type="doi">10.1109/86.681177</pub-id><pub-id pub-id-type="pmid">9631319</pub-id></citation></ref>
<ref id="B36"><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="B37"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Russ</surname> <given-names>D.</given-names></name> <name><surname>Vandenborne</surname> <given-names>K.</given-names></name> <name><surname>Binder-Macleod</surname> <given-names>S.</given-names></name></person-group> (<year>2002</year>). <article-title>Factors in fatigue during intermittent electrical stimulation of human skeletal muscle</article-title>. <source>J. Appl. Physiol.</source> <volume>93</volume>, <fpage>469</fpage>&#x02013;<lpage>478</lpage>.<pub-id pub-id-type="doi">10.1152/japplphysiol.01010.2001</pub-id><pub-id pub-id-type="pmid">12133852</pub-id></citation></ref>
<ref id="B38"><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="B39"><citation citation-type="book"><person-group person-group-type="author"><name><surname>Sepulveda</surname> <given-names>F.</given-names></name></person-group> (<year>2003</year>). <article-title>&#x0201C;Artificial neural network techniques in human mobility rehabilitation,&#x0201D;</article-title> in <source>Computational Methods in Biophysics, Biomaterials, Biotechnology and Medical Systems</source>, ed. <person-group person-group-type="editor"><name><surname>Leondes</surname> <given-names>C. T.</given-names></name></person-group> (<publisher-loc>Boston, MA</publisher-loc>: <publisher-name>Springer</publisher-name>), <fpage>313</fpage>&#x02013;<lpage>348</lpage>.</citation></ref>
<ref id="B40"><citation citation-type="thesis"><person-group person-group-type="author"><name><surname>Sharma</surname> <given-names>N.</given-names></name></person-group> (<year>2010</year>). <source>Lyapunov-Based Control Method for Neuromuscular Electrical Stimulation</source>. PhD thesis, <publisher-loc>University of Florida</publisher-loc>.</citation></ref>
<ref id="B41"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Sharma</surname> <given-names>N.</given-names></name> <name><surname>Gregory</surname> <given-names>C.</given-names></name> <name><surname>Dixon</surname> <given-names>W. E.</given-names></name></person-group> (<year>2011</year>). <article-title>Predictor-based compensation for electromechanical delay during neuromuscular electrical stimulation</article-title>. <source>IEEE Trans. Neural Syst. Rehabil. Eng.</source> <volume>19</volume>, <fpage>601</fpage>&#x02013;<lpage>611</lpage>.<pub-id pub-id-type="doi">10.1109/TNSRE.2011.2166405</pub-id><pub-id pub-id-type="pmid">21968792</pub-id></citation></ref>
<ref id="B42"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Sharma</surname> <given-names>N.</given-names></name> <name><surname>Gregory</surname> <given-names>C. M.</given-names></name> <name><surname>Johnson</surname> <given-names>M.</given-names></name> <name><surname>Dixon</surname> <given-names>W. E.</given-names></name></person-group> (<year>2012</year>). <article-title>Closed-loop neural network-based NMES control for human limb tracking</article-title>. <source>IEEE Trans. Control Syst. Technol.</source> <volume>20</volume>, <fpage>712</fpage>&#x02013;<lpage>725</lpage>.<pub-id pub-id-type="doi">10.1109/TCST.2011.2125792</pub-id></citation></ref>
<ref id="B43"><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Sharma</surname> <given-names>N.</given-names></name> <name><surname>Patre</surname> <given-names>P.</given-names></name> <name><surname>Gregory</surname> <given-names>C.</given-names></name> <name><surname>Dixon</surname> <given-names>W.</given-names></name></person-group> (<year>2009a</year>). <article-title>&#x0201C;Nonlinear control of NMES: incorporating fatigue and calcium dynamics,&#x0201D;</article-title> in <conf-name>Proceedings of ASME Dynamic Systems and Control Conference</conf-name> (<conf-loc>Hollywood, CA</conf-loc>: <conf-sponsor>ASME</conf-sponsor>).</citation></ref>
<ref id="B44"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Sharma</surname> <given-names>N.</given-names></name> <name><surname>Stegath</surname> <given-names>K.</given-names></name> <name><surname>Gregory</surname> <given-names>C. M.</given-names></name> <name><surname>Dixon</surname> <given-names>W. E.</given-names></name></person-group> (<year>2009b</year>). <article-title>Nonlinear neuromuscular electrical stimulation tracking control of a human limb</article-title>. <source>IEEE Trans. Neural Syst. Rehabil. Eng.</source> <volume>17</volume>, <fpage>576</fpage>&#x02013;<lpage>584</lpage>.<pub-id pub-id-type="doi">10.1109/TNSRE.2009.2023294</pub-id></citation></ref>
<ref id="B45"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Tong</surname> <given-names>K. Y.</given-names></name> <name><surname>Granat</surname> <given-names>M. H.</given-names></name></person-group> (<year>1999</year>). <article-title>Gait-control system for functional electrical stimulation using neural networks</article-title>. <source>Med. Biol. Eng. Comput.</source> <volume>37</volume>, <fpage>35</fpage>&#x02013;<lpage>41</lpage>.<pub-id pub-id-type="doi">10.1007/BF02513359</pub-id></citation></ref>
<ref id="B46"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Wang</surname> <given-names>Q.</given-names></name> <name><surname>Sharma</surname> <given-names>N.</given-names></name> <name><surname>Johnson</surname> <given-names>M.</given-names></name> <name><surname>Gregory</surname> <given-names>C. M.</given-names></name> <name><surname>Dixon</surname> <given-names>W. E.</given-names></name></person-group> (<year>2013</year>). <article-title>Adaptive inverse optimal neuromuscular electrical stimulation</article-title>. <source>IEEE Trans. Cybern.</source> <volume>43</volume>, <fpage>1710</fpage>.<pub-id pub-id-type="doi">10.1109/TSMCB.2012.2228259</pub-id><pub-id pub-id-type="pmid">23757569</pub-id></citation></ref>
<ref id="B47"><citation citation-type="book"><person-group person-group-type="author"><name><surname>Winter</surname> <given-names>D.</given-names></name></person-group> (<year>2009</year>). <source>Biomechanics and Motor Control of Human Movement</source>. <publisher-loc>Hoboken, NJ</publisher-loc>: <publisher-name>Wiley</publisher-name>.</citation></ref>
<ref id="B48"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Zajac</surname> <given-names>F.</given-names></name></person-group> (<year>1989</year>). <article-title>Muscle and tendon: properties, models, scaling, and application to biomechanics and motor control</article-title>. <source>Crit. Rev. Biomed. Eng.</source> <volume>17</volume>, <fpage>359</fpage>&#x02013;<lpage>411</lpage>.<pub-id pub-id-type="pmid">2676342</pub-id></citation></ref>
<ref id="B49"><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Zhang</surname> <given-names>D.</given-names></name> <name><surname>Zhu</surname> <given-names>K.</given-names></name></person-group> (<year>2004</year>). <article-title>Simulation study of FES-assisted standing up with neural network control</article-title>. <conf-name>Proceedings of IEEE EMBS</conf-name>, <conf-loc>San Francisco, CA</conf-loc>, <volume>7</volume>, <fpage>4877</fpage>&#x02013;<lpage>4880</lpage>.<pub-id pub-id-type="doi">10.1109/IEMBS.2004.1404349</pub-id><pub-id pub-id-type="pmid">17271405</pub-id></citation></ref>
</ref-list>
<fn-group>
<fn id="fn1"><p><sup>1</sup>The controller may have a high frequency component due to the use of acceleration signals (<italic>x<sub>d</sub></italic> contains the time derivative of the auxiliary signal, <italic>r</italic>). To remove the requirement for acceleration, the dynamic surface control (Alibeji et al., <xref ref-type="bibr" rid="B3">2015</xref>) can be explored.</p></fn>
<fn id="fn2"><p><sup>2</sup>Before any experimentation, approval from the Institutional Review Board at the University of Pittsburgh was obtained. The consent for the research participants was both informed and written.</p></fn>
<fn id="fn3"><p><sup>3</sup>The critical test statistic value for a sample size of 30 and a 95% confidence level is 137, and the test statistic from the results of the Wilcoxon test was determined to be 4. Since the calculated test statistic is less than the critical test statistic it was concluded that the RMS and SSRMS data for the FC and PD controllers are significantly different.</p></fn>
<fn id="fn4"><p><sup>4</sup>The critical test statistic value for a sample size of 6 and a 95% confidence level is 0, and the test statistic from the results of the Wilcoxon test was determined to be 0. Since the calculated test statistic is equal to the critical test statistic it was concluded that the RMS and SSRMS data for the FC and PD controllers are significantly different.</p></fn>
<fn id="fn5"><p><sup>5</sup>The critical test statistic value for a sample size of 30 and a 95% confidence level is 0, and the test statistic from the results of the Wilcoxon test was determined to be 9. Since the calculated test statistic is greater than the critical test statistic it was concluded that there is no statistical difference between the two data sets.</p></fn>
</fn-group>
<app-group>
<app id="A1">
<title>Appendix</title>
<p>Let <italic>V</italic>&#x02009;&#x02208;&#x02009;&#x0211D; denote a continuously differentiable, non-negative, radially unbounded function defined as
<disp-formula id="E46"><label>(A1)</label><mml:math id="M131"><mml:mtable columnalign="left" class="align"><mml:mtr><mml:mtd columnalign="right" class="align-odd"><mml:mi>V</mml:mi><mml:mfenced separators="" open="(" close=")"><mml:mrow><mml:mi>t</mml:mi></mml:mrow></mml:mfenced></mml:mtd><mml:mtd class="align-even"><mml:mi>&#x0225C;</mml:mi><mml:mfrac><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:mfrac><mml:msup><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mfrac><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:mfrac><mml:msub><mml:mrow><mml:mi>J</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x003C1;</mml:mi></mml:mrow></mml:msub><mml:msup><mml:mrow><mml:mi>r</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mfrac><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:mfrac><mml:msubsup><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msubsup><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mfrac><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:mfrac><mml:mi mathvariant="italic">tr</mml:mi><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>W</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:msubsup><mml:mrow><mml:mn>&#x00393;</mml:mn></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msubsup><mml:mover accent="true"><mml:mrow><mml:mi>W</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd></mml:mtd><mml:mtd class="align-even"><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mfrac><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:mfrac><mml:mi mathvariant="italic">tr</mml:mi><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>U</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:msubsup><mml:mrow><mml:mn>&#x00393;</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow><mml:mrow><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msubsup><mml:mover accent="true"><mml:mrow><mml:mi>U</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-punc">.</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula></p>
<p>By using equation (<xref ref-type="disp-formula" rid="E16">13</xref>) and typical NN properties (Lewis et al., <xref ref-type="bibr" rid="B32">2002</xref>), <italic>V</italic> can be upper and lower bounded as
<disp-formula id="E47"><label>(A2)</label><mml:math id="M132"><mml:msub><mml:mrow><mml:mn>&#x003BB;</mml:mn></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:msup><mml:mrow><mml:mfenced separators="" open="&#x02225;" close="&#x02225;"><mml:mrow><mml:mi>X</mml:mi></mml:mrow></mml:mfenced></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mo class="MathClass-rel">&#x02264;</mml:mo><mml:mi>V</mml:mi><mml:mfenced separators="" open="(" close=")"><mml:mrow><mml:mi>t</mml:mi></mml:mrow></mml:mfenced><mml:mo class="MathClass-rel">&#x02264;</mml:mo><mml:msub><mml:mrow><mml:mn>&#x003BB;</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:msup><mml:mrow><mml:mfenced separators="" open="&#x02225;" close="&#x02225;"><mml:mrow><mml:mi>X</mml:mi></mml:mrow></mml:mfenced></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mn>&#x003B8;</mml:mn><mml:mo class="MathClass-punc">,</mml:mo></mml:math></disp-formula>
where <italic>&#x003BB;</italic><sub>1</sub>,<italic>&#x003BB;</italic><sub>2</sub>,<italic>&#x003B8;</italic>&#x02009;&#x02208;&#x02009;&#x0211D;<sup>&#x0002B;</sup> are known positive constants, and <italic>X</italic>&#x02009;&#x02208;&#x02009;&#x0211D;<sup>3</sup> is defined as
<disp-formula id="E48"><label>(A3)</label><mml:math id="M135"><mml:mi>X</mml:mi><mml:mspace width="0.3em"/><mml:mi>&#x0225C;</mml:mi><mml:msup><mml:mrow><mml:mfenced separators="" open="[" close="]"><mml:mrow><mml:mtable class="array"><mml:mtr><mml:mtd class="array" columnalign="center"><mml:msup><mml:mrow><mml:mi>z</mml:mi></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup></mml:mtd><mml:mtd class="array" columnalign="center"><mml:msub><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:mfenced></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:mo class="MathClass-punc">.</mml:mo></mml:math></disp-formula></p>
<p>Taking the time derivative of equation (<xref ref-type="disp-formula" rid="E46">A1</xref>), utilizing equations (<xref ref-type="disp-formula" rid="E11">10</xref>) and (<xref ref-type="disp-formula" rid="E36">31</xref>), the definition of <italic>k</italic><sub>s</sub>, and canceling similar terms yields
<disp-formula id="E49"><label>(A4)</label><mml:math id="M136"><mml:mtable columnalign="left" class="align"><mml:mtr><mml:mtd columnalign="right" class="align-odd"><mml:mover accent="true"><mml:mrow><mml:mi>V</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover></mml:mtd><mml:mtd class="align-even"><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mi>&#x003B1;</mml:mi><mml:msup><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mi mathvariant="italic">rN</mml:mi><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>s</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>s</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:msup><mml:mrow><mml:mi>r</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mi>r</mml:mi><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:msub><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub></mml:mtd></mml:mtr><mml:mtr><mml:mtd></mml:mtd><mml:mtd class="align-even"><mml:mspace width="1em" class="quad"/><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mi>r</mml:mi><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>W</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C3;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mi>r</mml:mi><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>W</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C3;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo class="MathClass-rel">&#x02032;</mml:mo></mml:mrow></mml:msup><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>U</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:mi>y</mml:mi><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mi mathvariant="italic">tr</mml:mi><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>W</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:msubsup><mml:mrow><mml:mn>&#x00393;</mml:mn></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msubsup><mml:mo class="MathClass-bin">&#x022C5;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>W</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd></mml:mtd><mml:mtd class="align-even"><mml:mspace width="1em" class="quad"/><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mi mathvariant="italic">tr</mml:mi><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>U</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:msubsup><mml:mrow><mml:mn>&#x00393;</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow><mml:mrow><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msubsup><mml:mo class="MathClass-bin">&#x022C5;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>U</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mfrac><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:mfrac><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>J</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>&#x003C1;</mml:mi></mml:mrow></mml:msub><mml:msup><mml:mrow><mml:mi>r</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mfrac><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:mfrac><mml:msub><mml:mrow><mml:mn>&#x003BE;</mml:mn></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:msup><mml:mrow><mml:mi>r</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mo class="MathClass-punc">.</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula></p>
<p>Using equations (<xref ref-type="disp-formula" rid="E17">14</xref>), (<xref ref-type="disp-formula" rid="E31">27</xref>), and (<xref ref-type="disp-formula" rid="E38">32</xref>), the expression in equation (<xref ref-type="disp-formula" rid="E49">A4</xref>) can be upper bounded as
<disp-formula id="E50"><label>(A5)</label><mml:math id="M137"><mml:mover accent="true"><mml:mrow><mml:mi>V</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x02264;</mml:mo><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mi>&#x003B1;</mml:mi><mml:msup><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:msub><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>s</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:mrow></mml:msub><mml:msup><mml:mrow><mml:mi>r</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mi>r</mml:mi><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:msub><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mn>&#x003B6;</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mfenced separators="" open="&#x02225;" close="&#x02225;"><mml:mrow><mml:mi>z</mml:mi></mml:mrow></mml:mfenced><mml:mfenced separators="" open="|" close="|"><mml:mrow><mml:mi>r</mml:mi></mml:mrow></mml:mfenced><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mfenced separators="" open="[" close="]"><mml:mrow><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mfenced separators="" open="|" close="|"><mml:mrow><mml:mi>r</mml:mi></mml:mrow></mml:mfenced><mml:msub><mml:mrow><mml:mn>&#x003B6;</mml:mn></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:msub><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>s</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub></mml:mrow></mml:msub><mml:msup><mml:mrow><mml:mi>r</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow></mml:mrow></mml:mfenced><mml:mspace width="0.3em" class="thinspace"/><mml:mo class="MathClass-punc">.</mml:mo></mml:math></disp-formula></p>
<p>Assuming that equation (<xref ref-type="disp-formula" rid="E43">36</xref>) is satisfied, and substituting equation (<xref ref-type="disp-formula" rid="E42">35</xref>) into equation (<xref ref-type="disp-formula" rid="E50">A5</xref>), results in
<disp-formula id="E51"><label>(A6)</label><mml:math id="M138"><mml:mover accent="true"><mml:mrow><mml:mi>V</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x02264;</mml:mo><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mi>&#x003B1;</mml:mi><mml:msup><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:msub><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>s</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:mrow></mml:msub><mml:msup><mml:mrow><mml:mi>r</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mi>k</mml:mi><mml:msubsup><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msubsup><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mn>&#x003B6;</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mfenced separators="" open="&#x02225;" close="&#x02225;"><mml:mrow><mml:mi>z</mml:mi></mml:mrow></mml:mfenced><mml:mfenced separators="" open="|" close="|"><mml:mrow><mml:mi>r</mml:mi></mml:mrow></mml:mfenced><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mfenced separators="" open="[" close="]"><mml:mrow><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mfenced separators="" open="|" close="|"><mml:mrow><mml:mi>r</mml:mi></mml:mrow></mml:mfenced><mml:msub><mml:mrow><mml:mn>&#x003B6;</mml:mn></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:msub><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>s</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub></mml:mrow></mml:msub><mml:msup><mml:mrow><mml:mi>r</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow></mml:mrow></mml:mfenced><mml:mspace width="0.3em" class="thinspace"/><mml:mo class="MathClass-punc">.</mml:mo></mml:math></disp-formula></p>
<p>Completing the squares for the bracketed term in equation (<xref ref-type="disp-formula" rid="E51">A6</xref>), and further bounding the expression yields
<disp-formula id="E52"><label>(A7)</label><mml:math id="M139"><mml:mover accent="true"><mml:mrow><mml:mi>V</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x02264;</mml:mo><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mrow><mml:mo class="MathClass-open">[</mml:mo><mml:mrow><mml:mi mathvariant="italic">min</mml:mi><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mi>&#x003B1;</mml:mi><mml:mo class="MathClass-punc">,</mml:mo><mml:msub><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>s</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:msub><mml:mrow><mml:mn>&#x003B6;</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub></mml:mrow><mml:mo class="MathClass-close">]</mml:mo></mml:mrow><mml:msup><mml:mrow><mml:mfenced separators="" open="&#x02225;" close="&#x02225;"><mml:mrow><mml:mi>z</mml:mi></mml:mrow></mml:mfenced></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mi>k</mml:mi><mml:msubsup><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msubsup><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mfrac><mml:mrow><mml:msubsup><mml:mrow><mml:mn>&#x003B6;</mml:mn></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msubsup></mml:mrow><mml:mrow><mml:mn>4</mml:mn><mml:msub><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>s</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mrow></mml:mfrac><mml:mo class="MathClass-punc">.</mml:mo></mml:math></disp-formula></p>
<p>The inequality in equation (<xref ref-type="disp-formula" rid="E47">A2</xref>) can be used to rewrite equation (<xref ref-type="disp-formula" rid="E52">A7</xref>) as
<disp-formula id="E53"><label>(A8)</label><mml:math id="M140"><mml:mover accent="true"><mml:mrow><mml:mi>V</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x02264;</mml:mo><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mfrac><mml:mrow><mml:mi>&#x003B2;</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mn>&#x003BB;</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub></mml:mrow></mml:mfrac><mml:mi>V</mml:mi><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mn>&#x003B4;</mml:mn><mml:mo class="MathClass-punc">,</mml:mo></mml:math></disp-formula>
where <italic>&#x003B4;</italic>&#x02009;&#x02208;&#x02009;&#x0211D;<sup>&#x0002B;</sup> is a positive constant defined as
<disp-formula id="E54"><mml:math id="M141"><mml:mi>&#x003B4;</mml:mi><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mfrac><mml:mrow><mml:msubsup><mml:mrow><mml:mn>&#x003B6;</mml:mn></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msubsup></mml:mrow><mml:mrow><mml:mn>4</mml:mn><mml:msub><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>s</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mrow></mml:mfrac><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mfrac><mml:mrow><mml:mi>&#x003B2;</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mn>&#x003BB;</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub></mml:mrow></mml:mfrac><mml:mn>&#x003B8;</mml:mn><mml:mo class="MathClass-punc">,</mml:mo></mml:math></disp-formula>
and <italic>&#x003B2;</italic>&#x02009;&#x02208;&#x02009;&#x0211D; is defined as
<disp-formula id="E55"><mml:math id="M142"><mml:mi>&#x003B2;</mml:mi><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mi mathvariant="italic">min</mml:mi><mml:mrow><mml:mo class="MathClass-open">[</mml:mo><mml:mrow><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mi mathvariant="italic">min</mml:mi><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mi>&#x003B1;</mml:mi><mml:mo class="MathClass-punc">,</mml:mo><mml:msub><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>s</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:msub><mml:mrow><mml:mn>&#x003B6;</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-punc">,</mml:mo><mml:mi>k</mml:mi></mml:mrow><mml:mo class="MathClass-close">]</mml:mo></mml:mrow><mml:mo class="MathClass-punc">.</mml:mo></mml:math></disp-formula></p>
<p>The linear differential inequality in equation (<xref ref-type="disp-formula" rid="E53">A8</xref>) can be solved as
<disp-formula id="E56"><label>(A9)</label><mml:math id="M143"><mml:mi>V</mml:mi><mml:mo class="MathClass-rel">&#x02264;</mml:mo><mml:mi>V</mml:mi><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mn>0</mml:mn></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:msup><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mfrac><mml:mrow><mml:mi>&#x003B2;</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mn>&#x003BB;</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub></mml:mrow></mml:mfrac><mml:mi>t</mml:mi></mml:mrow></mml:msup><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mn>&#x003B4;</mml:mn><mml:mfrac><mml:mrow><mml:msub><mml:mrow><mml:mn>&#x003BB;</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub></mml:mrow><mml:mrow><mml:mi>&#x003B2;</mml:mi></mml:mrow></mml:mfrac><mml:mfenced separators="" open="[" close="]"><mml:mrow><mml:mn>1</mml:mn><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:msup><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mfrac><mml:mrow><mml:mi>&#x003B2;</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mn>&#x003BB;</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub></mml:mrow></mml:mfrac><mml:mi>t</mml:mi></mml:mrow></mml:msup></mml:mrow></mml:mfenced><mml:mspace width="0.3em" class="thinspace"/><mml:mo class="MathClass-punc">.</mml:mo></mml:math></disp-formula></p>
<p>Based on equations (<xref ref-type="disp-formula" rid="E47">A2</xref>) and (<xref ref-type="disp-formula" rid="E56">A9</xref>), it can be derived that
<disp-formula id="E57"><label>(A10)</label><mml:math id="M144"><mml:mo class="MathClass-rel">&#x0007C;</mml:mo><mml:mo class="MathClass-rel">&#x0007C;</mml:mo><mml:mi>X</mml:mi><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-rel">&#x0007C;</mml:mo><mml:mo class="MathClass-rel">&#x0007C;</mml:mo><mml:mo class="MathClass-rel">&#x02264;</mml:mo><mml:msqrt><mml:mrow><mml:mfrac><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mn>&#x003BB;</mml:mn></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:mrow></mml:mfrac><mml:mfenced separators="" open="(" close=")"><mml:mrow><mml:msub><mml:mrow><mml:mn>&#x003BB;</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo class="MathClass-rel">&#x0007C;</mml:mo><mml:mo class="MathClass-rel">&#x0007C;</mml:mo><mml:mi>X</mml:mi><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mn>0</mml:mn></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-rel">&#x0007C;</mml:mo><mml:msup><mml:mrow><mml:mo class="MathClass-rel">&#x0007C;</mml:mo></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mn>&#x003B8;</mml:mn></mml:mrow></mml:mfenced></mml:mrow></mml:msqrt><mml:msup><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mfrac><mml:mrow><mml:mi>&#x003B2;</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn><mml:msub><mml:mrow><mml:mn>&#x003BB;</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub></mml:mrow></mml:mfrac><mml:mi>t</mml:mi></mml:mrow></mml:msup><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msqrt><mml:mrow><mml:mfrac><mml:mrow><mml:msub><mml:mrow><mml:mn>&#x003BB;</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mn>&#x003B4;</mml:mn></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mn>&#x003BB;</mml:mn></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mi>&#x003B2;</mml:mi></mml:mrow></mml:mfrac></mml:mrow></mml:msqrt><mml:mo class="MathClass-punc">,</mml:mo></mml:math></disp-formula>
which can be used, along with equation (<xref ref-type="disp-formula" rid="E48">A3</xref>), to show that the error can be bounded as
<disp-formula id="E58"><label>(A11)</label><mml:math id="M145"><mml:mo class="MathClass-rel">&#x0007C;</mml:mo><mml:mo class="MathClass-rel">&#x0007C;</mml:mo><mml:mi>e</mml:mi><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-rel">&#x0007C;</mml:mo><mml:mo class="MathClass-rel">&#x0007C;</mml:mo><mml:mspace width="0.3em"/><mml:mo class="MathClass-rel">&#x02264;</mml:mo><mml:msub><mml:mrow><mml:mn>&#x003F5;</mml:mn></mml:mrow><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub><mml:msup><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:msub><mml:mrow><mml:mn>&#x003F5;</mml:mn></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mi>t</mml:mi></mml:mrow></mml:msup><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mn>&#x003F5;</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo class="MathClass-punc">,</mml:mo></mml:math></disp-formula>
where <inline-formula><mml:math id="M146"><mml:msub><mml:mrow><mml:mn>&#x003F5;</mml:mn></mml:mrow><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:msqrt><mml:mrow><mml:mfrac><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mn>&#x003BB;</mml:mn></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:mrow></mml:mfrac><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mn>&#x003BB;</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo class="MathClass-rel">&#x0007C;</mml:mo><mml:mi>e</mml:mi><mml:mrow><mml:mo class="MathClass-open">(</mml:mo><mml:mrow><mml:mn>0</mml:mn></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow><mml:mo class="MathClass-rel">&#x0007C;</mml:mo><mml:msup><mml:mrow><mml:mo class="MathClass-rel">&#x0007C;</mml:mo></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mo class="MathClass-bin">&#x0002B;</mml:mo><mml:mn>&#x003B8;</mml:mn></mml:mrow><mml:mo class="MathClass-close">)</mml:mo></mml:mrow></mml:mrow></mml:msqrt></mml:math></inline-formula>, <inline-formula><mml:math id="M147"><mml:msub><mml:mrow><mml:mn>&#x003F5;</mml:mn></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mfrac><mml:mrow><mml:mi>&#x003B2;</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn><mml:msub><mml:mrow><mml:mn>&#x003BB;</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub></mml:mrow></mml:mfrac></mml:math></inline-formula>, and <inline-formula><mml:math id="M148"><mml:msub><mml:mrow><mml:mn>&#x003F5;</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo class="MathClass-rel">&#x0003D;</mml:mo><mml:msqrt><mml:mrow><mml:mfrac><mml:mrow><mml:msub><mml:mrow><mml:mn>&#x003BB;</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mn>&#x003B4;</mml:mn></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mn>&#x003BB;</mml:mn></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mi>&#x003B2;</mml:mi></mml:mrow></mml:mfrac></mml:mrow></mml:msqrt></mml:math></inline-formula>.</p>
<p>Provided the sufficient condition in equation (<xref ref-type="disp-formula" rid="E45">38</xref>) is satisfied, the expressions in equations (<xref ref-type="disp-formula" rid="E57">A10</xref>) and (<xref ref-type="disp-formula" rid="E58">A11</xref>) indicate that <italic>e, r, e<sub>x</sub></italic>, <inline-formula><mml:math id="M149"><mml:mover accent="true"><mml:mrow><mml:mi>W</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover><mml:mo class="MathClass-punc">,</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>U</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:msub><mml:mrow><mml:mi mathvariant="script">L</mml:mi></mml:mrow><mml:mrow><mml:mo class="MathClass-rel">&#x0221E;</mml:mo></mml:mrow></mml:msub></mml:math></inline-formula>. Given that <italic>e, r, q<sub>d</sub></italic>, <inline-formula><mml:math id="M150"><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:msub><mml:mrow><mml:mi mathvariant="script">L</mml:mi></mml:mrow><mml:mrow><mml:mo class="MathClass-rel">&#x0221E;</mml:mo></mml:mrow></mml:msub></mml:math></inline-formula>, equations (<xref ref-type="disp-formula" rid="E10">9</xref>) and (<xref ref-type="disp-formula" rid="E11">10</xref>) indicate that <italic>q</italic>, <inline-formula><mml:math id="M151"><mml:mover accent="true"><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:msub><mml:mrow><mml:mi mathvariant="script">L</mml:mi></mml:mrow><mml:mrow><mml:mo class="MathClass-rel">&#x0221E;</mml:mo></mml:mrow></mml:msub></mml:math></inline-formula>. Since <inline-formula><mml:math id="M152"><mml:mover accent="true"><mml:mrow><mml:mi>W</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover><mml:mo class="MathClass-punc">,</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>U</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:msub><mml:mrow><mml:mi mathvariant="script">L</mml:mi></mml:mrow><mml:mrow><mml:mo class="MathClass-rel">&#x0221E;</mml:mo></mml:mrow></mml:msub></mml:math></inline-formula>, the boundedness of the ideal weights (Lewis et al., <xref ref-type="bibr" rid="B32">2002</xref>) can be used to conclude that <inline-formula><mml:math id="M153"><mml:mover accent="true"><mml:mrow><mml:mi>W</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-punc">,</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>U</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:msub><mml:mrow><mml:mi mathvariant="script">L</mml:mi></mml:mrow><mml:mrow><mml:mo class="MathClass-rel">&#x0221E;</mml:mo></mml:mrow></mml:msub></mml:math></inline-formula>. Based on equation (<xref ref-type="disp-formula" rid="E6">5</xref>), it can be shown that <inline-formula><mml:math id="M154"><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:mrow><mml:mo class="MathClass-open">[</mml:mo><mml:mrow><mml:mn>0</mml:mn><mml:mo class="MathClass-punc">,</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mo class="MathClass-close">]</mml:mo></mml:mrow></mml:math></inline-formula>. Given that <inline-formula><mml:math id="M155"><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x000A8;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula>, <italic>e, r, q</italic>, <inline-formula><mml:math id="M156"><mml:mover accent="true"><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover></mml:math></inline-formula>, <inline-formula><mml:math id="M157"><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:msub><mml:mrow><mml:mi>L</mml:mi></mml:mrow><mml:mrow><mml:mo class="MathClass-rel">&#x0221E;</mml:mo></mml:mrow></mml:msub></mml:math></inline-formula>, the NN input vector &#x003B2;<italic>y</italic>&#x02009;&#x02208;&#x02009;<italic><inline-formula><mml:math id="M158"><mml:mo class="MathClass-op">&#x0039B;</mml:mo></mml:math></inline-formula><sub>&#x0221E;</sub></italic> from equation (<xref ref-type="disp-formula" rid="E26">22</xref>). Since <italic>e<sub>x</sub></italic>, <inline-formula><mml:math id="M159"><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:msub><mml:mrow><mml:mi mathvariant="script">L</mml:mi></mml:mrow><mml:mrow><mml:mo class="MathClass-rel">&#x0221E;</mml:mo></mml:mrow></mml:msub></mml:math></inline-formula>, equation (<xref ref-type="disp-formula" rid="E34">29</xref>) can be used to show that <italic>x<sub>d</sub></italic>&#x02009;&#x02208;&#x02009;<italic><inline-formula><mml:math id="M160"><mml:mo class="MathClass-op">&#x0039B;</mml:mo></mml:math></inline-formula><sub>&#x0221E;</sub></italic>. Given that <italic>r</italic>, <inline-formula><mml:math id="M161"><mml:mover accent="true"><mml:mrow><mml:mi>W</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:math></inline-formula>, <inline-formula><mml:math id="M162"><mml:mover accent="true"><mml:mrow><mml:mi>U</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:math></inline-formula>, <inline-formula><mml:math id="M163"><mml:msub><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:msub><mml:mrow><mml:mi mathvariant="script">L</mml:mi></mml:mrow><mml:mrow><mml:mo class="MathClass-rel">&#x0221E;</mml:mo></mml:mrow></mml:msub></mml:math></inline-formula>, equations (<xref ref-type="disp-formula" rid="E29">25</xref>) and (<xref ref-type="disp-formula" rid="E30">26</xref>) indicate that <inline-formula><mml:math id="M164"><mml:mover accent="true"><mml:mrow><mml:mi>S</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:math></inline-formula>, <inline-formula><mml:math id="M165"><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msup><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:msub><mml:mrow><mml:mi mathvariant="script">L</mml:mi></mml:mrow><mml:mrow><mml:mo class="MathClass-rel">&#x0221E;</mml:mo></mml:mrow></mml:msub></mml:math></inline-formula>. Since <italic>e, r</italic>, <inline-formula><mml:math id="M166"><mml:mover accent="true"><mml:mrow><mml:mi>W</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:math></inline-formula>, <inline-formula><mml:math id="M167"><mml:mover accent="true"><mml:mrow><mml:mi>W</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover></mml:math></inline-formula>, <inline-formula><mml:math id="M168"><mml:mover accent="true"><mml:mrow><mml:mi>U</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002DC;</mml:mo></mml:mover><mml:mo class="MathClass-punc">,</mml:mo><mml:msub><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula>, <inline-formula><mml:math id="M169"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:msub><mml:mrow><mml:mi mathvariant="script">L</mml:mi></mml:mrow><mml:mrow><mml:mo class="MathClass-rel">&#x0221E;</mml:mo></mml:mrow></mml:msub></mml:math></inline-formula>, equations (<xref ref-type="disp-formula" rid="E36">31</xref>) and (<xref ref-type="disp-formula" rid="E38">32</xref>) indicate that <inline-formula><mml:math id="M170"><mml:mover accent="true"><mml:mrow><mml:mi>r</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:msub><mml:mrow><mml:mi mathvariant="script">L</mml:mi></mml:mrow><mml:mrow><mml:mo class="MathClass-rel">&#x0221E;</mml:mo></mml:mrow></mml:msub></mml:math></inline-formula>. As <italic>r, y</italic>, <inline-formula><mml:math id="M171"><mml:mover accent="true"><mml:mrow><mml:mi>W</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:msub><mml:mrow><mml:mi mathvariant="script">L</mml:mi></mml:mrow><mml:mrow><mml:mo class="MathClass-rel">&#x0221E;</mml:mo></mml:mrow></mml:msub></mml:math></inline-formula>, the update laws <inline-formula><mml:math id="M172"><mml:mover accent="true"><mml:mrow><mml:mi>W</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-punc">,</mml:mo><mml:mspace width="0.5em" class="nbsp"/><mml:mover accent="true"><mml:mrow><mml:mi>U</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:msub><mml:mrow><mml:mi mathvariant="script">L</mml:mi></mml:mrow><mml:mrow><mml:mo class="MathClass-rel">&#x0221E;</mml:mo></mml:mrow></mml:msub></mml:math></inline-formula>. Since <inline-formula><mml:math id="M173"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-punc">,</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:msub><mml:mrow><mml:mi mathvariant="script">L</mml:mi></mml:mrow><mml:mrow><mml:mo class="MathClass-rel">&#x0221E;</mml:mo></mml:mrow></mml:msub></mml:math></inline-formula>, it can be shown that <inline-formula><mml:math id="M174"><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:msub><mml:mrow><mml:mi mathvariant="script">L</mml:mi></mml:mrow><mml:mrow><mml:mo class="MathClass-rel">&#x0221E;</mml:mo></mml:mrow></mml:msub></mml:math></inline-formula>. Given that the <inline-formula><mml:math id="M175"><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover></mml:math></inline-formula>, <inline-formula><mml:math id="M176"><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo class="MathClass-bin">&#x02212;</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula>, <inline-formula><mml:math id="M177"><mml:mover accent="true"><mml:mrow><mml:mi>r</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover></mml:math></inline-formula>, <italic>r</italic>, <inline-formula><mml:math id="M178"><mml:mover accent="true"><mml:mrow><mml:mi>W</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-punc">,</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>U</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-punc">,</mml:mo><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>W</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover><mml:mo class="MathClass-punc">,</mml:mo><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>U</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:msub><mml:mrow><mml:mi mathvariant="script">L</mml:mi></mml:mrow><mml:mrow><mml:mo class="MathClass-rel">&#x0221E;</mml:mo></mml:mrow></mml:msub></mml:math></inline-formula>, it can be shown that <inline-formula><mml:math id="M179"><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:msub><mml:mrow><mml:mi mathvariant="script">L</mml:mi></mml:mrow><mml:mrow><mml:mo class="MathClass-rel">&#x0221E;</mml:mo></mml:mrow></mml:msub></mml:math></inline-formula>. Because <inline-formula><mml:math id="M180"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003C6;</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-punc">,</mml:mo><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-punc">,</mml:mo><mml:mi>r</mml:mi><mml:mo class="MathClass-punc">,</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>x</mml:mi></mml:mrow><mml:mo class="MathClass-op">&#x0005E;</mml:mo></mml:mover><mml:mo class="MathClass-punc">,</mml:mo><mml:msub><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub><mml:mo class="MathClass-rel">&#x02208;</mml:mo><mml:msub><mml:mrow><mml:mi mathvariant="script">L</mml:mi></mml:mrow><mml:mrow><mml:mo class="MathClass-rel">&#x0221E;</mml:mo></mml:mrow></mml:msub></mml:math></inline-formula>, it can be concluded that the stimulation control input <italic>v</italic> is bounded.</p></app>
</app-group>
</back>
</article>