<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing DTD v2.3 20070202//EN" "journalpublishing.dtd">
<article xml:lang="EN" 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. Neurorobot.</journal-id>
<journal-title>Frontiers in Neurorobotics</journal-title>
<abbrev-journal-title abbrev-type="pubmed">Front. Neurorobot.</abbrev-journal-title>
<issn pub-type="epub">1662-5218</issn>
<publisher>
<publisher-name>Frontiers Media S.A.</publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="doi">10.3389/fnbot.2024.1380430</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Neuroscience</subject>
<subj-group>
<subject>Original Research</subject>
</subj-group>
</subj-group>
</article-categories>
<title-group>
<article-title>A data-driven acceleration-level scheme for image-based visual servoing of manipulators with unknown structure</article-title>
</title-group>
<contrib-group>
<contrib contrib-type="author">
<name><surname>Wen</surname> <given-names>Liuyi</given-names></name>
<xref ref-type="aff" rid="aff1"><sup>1</sup></xref>
<xref ref-type="aff" rid="aff2"><sup>2</sup></xref>
<role content-type="https://credit.niso.org/contributor-roles/investigation/"/>
<role content-type="https://credit.niso.org/contributor-roles/methodology/"/>
<role content-type="https://credit.niso.org/contributor-roles/resources/"/>
<role content-type="https://credit.niso.org/contributor-roles/software/"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-original-draft/"/>
</contrib>
<contrib contrib-type="author" corresp="yes">
<name><surname>Xie</surname> <given-names>Zhengtai</given-names></name>
<xref ref-type="aff" rid="aff1"><sup>1</sup></xref>
<xref ref-type="aff" rid="aff3"><sup>3</sup></xref>
<xref ref-type="corresp" rid="c001"><sup>&#x0002A;</sup></xref>
<uri xlink:href="http://loop.frontiersin.org/people/2186834/overview"/>
<role content-type="https://credit.niso.org/contributor-roles/data-curation/"/>
<role content-type="https://credit.niso.org/contributor-roles/investigation/"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-review-editing/"/>
</contrib>
</contrib-group>
<aff id="aff1"><sup>1</sup><institution>The State Key Laboratory of Tibetan Intelligent Information Processing and Application, Qinghai Normal University</institution>, <addr-line>Xining</addr-line>, <country>China</country></aff>
<aff id="aff2"><sup>2</sup><institution>School of Arts, Lanzhou University</institution>, <addr-line>Lanzhou</addr-line>, <country>China</country></aff>
<aff id="aff3"><sup>3</sup><institution>School of Information Science and Engineering, Lanzhou University</institution>, <addr-line>Lanzhou</addr-line>, <country>China</country></aff>
<author-notes>
<fn fn-type="edited-by"><p>Edited by: Predrag S. Stanimirovic, University of Ni&#x00161;, Serbia</p></fn>
<fn fn-type="edited-by"><p>Reviewed by: Liangming Chen, Chinese Academy of Sciences (CAS), China</p>
<p>Yang Shi, Yangzhou University, China</p></fn>
<corresp id="c001">&#x0002A;Correspondence: Zhengtai Xie <email>xzt1xzt&#x00040;vip.qq.com</email></corresp>
</author-notes>
<pub-date pub-type="epub">
<day>20</day>
<month>03</month>
<year>2024</year>
</pub-date>
<pub-date pub-type="collection">
<year>2024</year>
</pub-date>
<volume>18</volume>
<elocation-id>1380430</elocation-id>
<history>
<date date-type="received">
<day>01</day>
<month>02</month>
<year>2024</year>
</date>
<date date-type="accepted">
<day>22</day>
<month>02</month>
<year>2024</year>
</date>
</history>
<permissions>
<copyright-statement>Copyright &#x000A9; 2024 Wen and Xie.</copyright-statement>
<copyright-year>2024</copyright-year>
<copyright-holder>Wen and Xie</copyright-holder>
<license xlink:href="http://creativecommons.org/licenses/by/4.0/"><p>This is an open-access article distributed under the terms of the Creative Commons Attribution License (CC BY). The use, distribution or reproduction in other forums is permitted, provided the original author(s) and the copyright owner(s) 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>The research on acceleration-level visual servoing of manipulators is crucial yet insufficient, which restricts the potential application range of visual servoing. To address this issue, this paper proposes a quadratic programming-based acceleration-level image-based visual servoing (AIVS) scheme, which considers joint constraints. Besides, aiming to address the unknown problems in visual servoing systems, a data-driven learning algorithm is proposed to facilitate estimating structural information. Building upon this foundation, a data-driven acceleration-level image-based visual servoing (DAIVS) scheme is proposed, integrating learning and control capabilities. Subsequently, a recurrent neural network (RNN) is developed to tackle the DAIVS scheme, followed by theoretical analyses substantiating its stability. Afterwards, simulations and experiments on a Franka Emika Panda manipulator with eye-in-hand structure and comparisons among the existing methods are provided. The obtained results demonstrate the feasibility and practicality of the proposed schemes and highlight the superior learning and control ability of the proposed RNN. This method is particularly well-suited for visual servoing applications of manipulators with unknown structure.</p></abstract>
<kwd-group>
<kwd>recurrent neural network (RNN)</kwd>
<kwd>image-based visual servoing (IBVS)</kwd>
<kwd>data-driven technology</kwd>
<kwd>acceleration level</kwd>
<kwd>learning and control</kwd>
</kwd-group>
<counts>
<fig-count count="8"/>
<table-count count="1"/>
<equation-count count="43"/>
<ref-count count="35"/>
<page-count count="14"/>
<word-count count="8828"/>
</counts>
<custom-meta-wrap>
<custom-meta>
<meta-name>section-at-acceptance</meta-name>
<meta-value></meta-value>
</custom-meta>
</custom-meta-wrap>
</article-meta>
</front>
<body>
<sec sec-type="intro" id="s1">
<title>1 Introduction</title>
<p>Robots can accurately perform complex tasks and have become a vital driving force in industrial production (Agarwal and Akella, <xref ref-type="bibr" rid="B1">2024</xref>). Among industrial robots, redundant robots, equipped with multiple degrees of freedom (DOFs), have gained significant recognition and favor due to their exceptional flexibility and automation capabilities (Tang and Zhang, <xref ref-type="bibr" rid="B20">2022</xref>; Zheng et al., <xref ref-type="bibr" rid="B34">2024</xref>). Therefore, numerous control schemes are designed to extend the application range of redundant robots, such as medical services (Zeng et al., <xref ref-type="bibr" rid="B28">2024</xref>) and visual navigation (Wang et al., <xref ref-type="bibr" rid="B22">2023</xref>). Furthermore, in these application scenarios, information on the external environment and the robot&#x00027;s status is acquired from various sensors, especially for the image capture of visual information (Jin et al., <xref ref-type="bibr" rid="B6">2023</xref>). Therefore, unknown situations inevitably exist caused by sensor limitations, environmental variability, and robot modification, which hinder the evolution of robot applications. To address this issue, intelligent algorithms based on data-driven technology are exploited to process the acquired information and convert it into knowledge to drive the regular operation of the robot system (Na et al., <xref ref-type="bibr" rid="B16">2021</xref>; Xie et al., <xref ref-type="bibr" rid="B23">2022</xref>). Yang et al. (<xref ref-type="bibr" rid="B27">2019</xref>) construct a robot learning system by improving the adaptive ability of a robot with the information interaction between the robot and environment, which enhances the safety and reliability of robot applications in reality Peng et al. (<xref ref-type="bibr" rid="B18">2023</xref>). Li et al. (<xref ref-type="bibr" rid="B10">2019</xref>) investigate a model-free control method to cope with the unknown Jacobian problems inside the robot system. On this basis, the dynamic estimation method of robot parameters is researched in the study by Xie and Jin (<xref ref-type="bibr" rid="B24">2023</xref>). However, the aforementioned methods primarily operate at the joint velocity level and cannot directly applicable to robots driven by joint acceleration.</p>
<p>As a crucial robot application, visual servoing simulates the bionic system of human eyes, which can obtain information about real objects through optical devices, thus dynamically responding to a visible object. The fundamental task of visual servoing is to impose the error between the corresponding image feature and the desired static reference to approach zero (Zhu et al., <xref ref-type="bibr" rid="B35">2022</xref>). According to the spatial position or image characteristics of the robot, the visual servoing system can be categorized into two types: position-based visual servoing (PBVS) system (Park et al., <xref ref-type="bibr" rid="B17">2012</xref>), which utilizes 3-D position and orientation information to adjust the robot&#x00027;s state, and image-based visual servoing (IBVS) system, which utilizes 2-D image information for guidance (Van et al., <xref ref-type="bibr" rid="B21">2018</xref>). Recently, the research on visual servoing has achieved many unexpected results (Hashimoto et al., <xref ref-type="bibr" rid="B5">1991</xref>; Malis et al., <xref ref-type="bibr" rid="B14">2010</xref>; Zhang et al., <xref ref-type="bibr" rid="B32">2017</xref>; Liang et al., <xref ref-type="bibr" rid="B12">2018</xref>). For instance, visual servoing is applied to bioinspired soft robots in the underwater environment with an adaptive control method, which extends the scope of visual servoing (Xu et al., <xref ref-type="bibr" rid="B26">2019</xref>). Based on the neural network method, a resolution scheme for IBVS is developed at the velocity level. This enables the manipulator to accurately track fixed desired pixels, resulting in fast convergence (Zhang and Li, <xref ref-type="bibr" rid="B30">2018</xref>). However, the aforementioned methods are difficult to deal with the emergence of unknown conditions, such as focal length change, robot abrasion, or parameter variation. This is because these methods rely on accurate structural information of the robot vision system. To tackle this challenge, this study focuses on data-driven control of visual servoing for robots with an unknown Jacobian matrix.</p>
<p>Neural networks have gained significant recognition as powerful tools for solving challenging problems, such as automatic drive (Jin et al., <xref ref-type="bibr" rid="B7">2024</xref>), mechanism control (Xu et al., <xref ref-type="bibr" rid="B25">2023</xref>), and mathematical calculation (Zeng et al., <xref ref-type="bibr" rid="B29">2003</xref>; Stanimirovic et al., <xref ref-type="bibr" rid="B19">2015</xref>). In robot redundancy analysis, neural networks have shown superior performance. In recent decades, numerous control laws based on neural networks have been developed to harness the potential of redundant manipulators (Zhang and Li, <xref ref-type="bibr" rid="B31">2023</xref>). One specific application of the neural network approach addresses the IBVS problem. In this context, the IBVS problem is formulated as a quadratic programming scheme and tackled using a recurrent neural network (RNN). The RNN drives the robot vision system&#x00027;s feature to rapidly converge toward the desired point (Zhang et al., <xref ref-type="bibr" rid="B32">2017</xref>). Additionally, Li et al. (<xref ref-type="bibr" rid="B11">2020</xref>) investigate an inverse-free neural network technique to deal with the IBVS task, ensuring that the error approaches zero within a finite time while considering the manipulator&#x00027;s physical constraints.</p>
<p>Most control schemes accomplish the given task at the velocity level, especially for visual servoing applications (Hashimoto et al., <xref ref-type="bibr" rid="B5">1991</xref>; Malis et al., <xref ref-type="bibr" rid="B14">2010</xref>; Zhang et al., <xref ref-type="bibr" rid="B32">2017</xref>; Liang et al., <xref ref-type="bibr" rid="B12">2018</xref>; Van et al., <xref ref-type="bibr" rid="B21">2018</xref>; Zhang and Li, <xref ref-type="bibr" rid="B30">2018</xref>; Xu et al., <xref ref-type="bibr" rid="B26">2019</xref>; Li et al., <xref ref-type="bibr" rid="B11">2020</xref>). These velocity-level schemes control redundant robots via joint velocities. However, when confronted with acceleration or torque-driven robots, the velocity-level schemes exhibit limitations and cannot provide precise control. Furthermore, the velocity-level scheme may yield abrupt joint velocities that are impractical in real-world applications. Consequently, research on acceleration-level visual servoing for robot manipulators has become crucial (Keshmiri et al., <xref ref-type="bibr" rid="B8">2014</xref>; Anwar et al., <xref ref-type="bibr" rid="B2">2019</xref>). Motivated by the issues above, this study investigates the application of visual servoing in robots at the acceleration level. The technical route of this study is shown in <xref ref-type="fig" rid="F1">Figure 1</xref>. As illustrated, the contributions of this study are shown as follows:</p>
<list list-type="bullet">
<list-item><p>An acceleration-level image-based visual servoing (AIVS) scheme is designed, taking into account multiple joint constraints.</p></list-item>
<list-item><p>Considering potential unknown factors in the visual servoing system, a data-driven acceleration-level image-based visual servoing (DAIVS) scheme is developed, enabling simultaneous learning and control.</p></list-item>
<list-item><p>RNNs are proposed to solve the AIVS scheme and DAIVS scheme, enabling visual servoing control of the manipulator. Theoretical analyses guarantee the stability of the RNNs.</p></list-item>
</list>
<fig id="F1" position="float">
<label>Figure 1</label>
<caption><p>Technical route of this study.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fnbot-18-1380430-g0001.tif"/>
</fig>
<p>In addition, the feasibility of the proposed schemes is demonstrated through simulative and experimental results conducted on a Franka Emika Panda manipulator with an eye-in-hand structure.</p>
<p>Before concluding this section, the remaining sections of the study are shown as follows. Section 2 presents the robot kinematics of visual servoing and introduces the data-driven learning algorithm, formulating the problem at the acceleration level. Section 3 constructs an AIVS scheme with the relevant RNN. Subsequently, considering the unknown factors, a DAIVS scheme and corresponding RNN are proposed, and theoretical analyses proved the learning and control ability of the RNN, as shown in Section 4. Section 5 provides abundant simulations and performance comparisons, embodying the proposed method&#x00027;s validity and superiority. Section 6 displays physical experiments on a real manipulator. Finally, Section 7 briefly concludes this study.</p></sec>
<sec id="s2">
<title>2 Preliminaries</title>
<p>In this section, the robot visual servoing kinematics and data-driven learning algorithm are introduced as the preliminaries. Note that this study specifically tackles the problem at the acceleration level.</p>
<sec>
<title>2.1 Robot visual servoing kinematics</title>
<p>The forward kinematics, which contains the transformation between the joint angle &#x003D5;(<italic>t</italic>)&#x02208;&#x0211D;<sup><italic>m</italic></sup> of a robot and the end-effector position and posture <bold>s</bold>(<italic>t</italic>)&#x02208;&#x0211D;<sup>6</sup>, can be expressed as follows:</p>
<disp-formula id="E1"><label>(1)</label><mml:math id="M1"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mstyle mathvariant="italic"><mml:mi>f</mml:mi></mml:mstyle><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>&#x003D5;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mstyle mathvariant="bold"><mml:mtext>s</mml:mtext></mml:mstyle><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where <italic>f</italic>(&#x000B7;) is the non-linear mapping related to the structure of the robot. In view of strongly non-linear and redundant characteristics of <italic>f</italic>(&#x000B7;), it is difficult to obtain the desired angle information directly from the desired end-effector information <bold>s</bold><sub>d</sub>(<italic>t</italic>), i.e., <bold>s</bold>(<italic>t</italic>) &#x0003D; <bold>s</bold><sub>d</sub>(<italic>t</italic>). By taking the time derivative of both sides of <xref ref-type="disp-formula" rid="E1">Equation (1)</xref>, one can deduce</p>
<disp-formula id="E2"><label>(2)</label><mml:math id="M2"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mi>J</mml:mi></mml:mrow><mml:mrow><mml:mtext class="textrm" mathvariant="normal">ro</mml:mtext></mml:mrow></mml:msub><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>s</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where <inline-formula><mml:math id="M3"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula> denotes the joint velocity; <inline-formula><mml:math id="M4"><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>s</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula> covers the joint velocity and translational velocity of the end-effector; <inline-formula><mml:math id="M5"><mml:msub><mml:mrow><mml:mi>J</mml:mi></mml:mrow><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">ro</mml:mtext></mml:mstyle></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mi>&#x02202;</mml:mi><mml:mstyle mathvariant="italic"><mml:mi>f</mml:mi></mml:mstyle><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>&#x003D5;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>/</mml:mo><mml:mi>&#x02202;</mml:mi><mml:mi>&#x003D5;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mn>6</mml:mn><mml:mo>&#x000D7;</mml:mo><mml:mi>m</mml:mi></mml:mrow></mml:msup></mml:math></inline-formula> stands for the robot Jacobian matrix. Owing to the physical properties of manipulators, output control signals based on design formulas and intelligent calculations may not be suitable for the normal operation of real robots. Therefore, to ensure the protection of the robot, it is crucial to take into account the following joint restrictions:</p>
<disp-formula id="E3"><mml:math id="M6"><mml:mtable columnalign="left"><mml:mtr><mml:mtd><mml:msup><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mrow><mml:mo>-</mml:mo></mml:mrow></mml:msup><mml:mo>&#x02264;</mml:mo><mml:mi>&#x003D5;</mml:mi><mml:mo>&#x02264;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mrow><mml:mo>&#x0002B;</mml:mo></mml:mrow></mml:msup></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo>-</mml:mo></mml:mrow></mml:msup><mml:mo>&#x02264;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo>&#x02264;</mml:mo><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo>&#x0002B;</mml:mo></mml:mrow></mml:msup></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo>-</mml:mo></mml:mrow></mml:msup><mml:mo>&#x02264;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover><mml:mo>&#x02264;</mml:mo><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo>&#x0002B;</mml:mo></mml:mrow></mml:msup><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where &#x003D5;<sup>&#x02212;</sup>, <inline-formula><mml:math id="M7"><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo>-</mml:mo></mml:mrow></mml:msup></mml:math></inline-formula>, and <inline-formula><mml:math id="M8"><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo>-</mml:mo></mml:mrow></mml:msup></mml:math></inline-formula> signify the lower bounds of joint angle, joint velocity, and joint acceleration, respectively; &#x003D5;<sup>&#x0002B;</sup>, <inline-formula><mml:math id="M9"><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo>&#x0002B;</mml:mo></mml:mrow></mml:msup></mml:math></inline-formula> and <inline-formula><mml:math id="M10"><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo>&#x0002B;</mml:mo></mml:mrow></mml:msup></mml:math></inline-formula> denote the upper bounds of joint angle, joint velocity, and joint acceleration, respectively. Utilizing the special conversion techniques (Zhang and Zhang, <xref ref-type="bibr" rid="B33">2012</xref>; Xie et al., <xref ref-type="bibr" rid="B23">2022</xref>), the joint restrictions would be integrated into the acceleration level as <inline-formula><mml:math id="M11"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover><mml:mo>&#x02208;</mml:mo><mml:mi>&#x003B3;</mml:mi><mml:mo>,</mml:mo></mml:math></inline-formula> where &#x003B3; &#x0003D; {<italic>g</italic>&#x02208;&#x0211D;<sup><italic>m</italic></sup>, &#x003B3;<sup>&#x02212;</sup> &#x02264; <italic>g</italic> &#x02264; &#x003B3;<sup>&#x0002B;</sup>} is the safe range of joints with &#x003B3;<sup>&#x02212;</sup> and &#x003B3;<sup>&#x0002B;</sup> denoting the lower bound and upper bound of &#x003B3;, respectively. In detail, the <italic>i</italic>-th elements of &#x003B3;<sup>&#x02212;</sup> and &#x003B3;<sup>&#x0002B;</sup> are designed as</p>
<disp-formula id="E4"><mml:math id="M12"><mml:mtable columnalign="left"><mml:mtr><mml:mtd><mml:mtable style="text-align:axis;" equalrows="false" columnlines="none" equalcolumns="false" class="array"><mml:mtr><mml:mtd><mml:msubsup><mml:mrow><mml:mi>&#x003B3;</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mo>-</mml:mo></mml:mrow></mml:msubsup><mml:mo>=</mml:mo><mml:mtext class="textrm" mathvariant="normal">max</mml:mtext><mml:mrow><mml:mo>{</mml:mo><mml:mrow><mml:mi>&#x003BC;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msubsup><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mo>-</mml:mo></mml:mrow></mml:msubsup><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003B8;</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>,</mml:mo><mml:mi>&#x003BD;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msubsup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mo>-</mml:mo></mml:mrow></mml:msubsup><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>,</mml:mo><mml:msubsup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mo>-</mml:mo></mml:mrow></mml:msubsup></mml:mrow><mml:mo>}</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:msubsup><mml:mrow><mml:mi>&#x003B3;</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mo>&#x0002B;</mml:mo></mml:mrow></mml:msubsup><mml:mo>=</mml:mo><mml:mtext class="textrm" mathvariant="normal">min</mml:mtext><mml:mrow><mml:mo>{</mml:mo><mml:mrow><mml:mi>&#x003BC;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msubsup><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mo>&#x0002B;</mml:mo></mml:mrow></mml:msubsup><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003B8;</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>,</mml:mo><mml:mi>&#x003BD;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msubsup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mo>&#x0002B;</mml:mo></mml:mrow></mml:msubsup><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>,</mml:mo><mml:msubsup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mo>&#x0002B;</mml:mo></mml:mrow></mml:msubsup></mml:mrow><mml:mo>}</mml:mo></mml:mrow><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where <italic>i</italic> &#x0003D; 1, 2, 3, &#x022EF;&#x02009;, <italic>m</italic>; &#x003BC;&#x0003E;0 and &#x003BD;&#x0003E;0 are designed to select the feasible region for different levels; &#x003B8;<sub><italic>i</italic></sub> is the margin to ensure that the acceleration has a sufficiently large feasible region (Xie et al., <xref ref-type="bibr" rid="B23">2022</xref>). Then, a brief introduction to the visual servoing system is presented as follows. Regarding visual servoing tasks, the number of features determines the complexity of a visual servoing system. Simply considering a visual servoing system with one feature, a miniature camera is mounted on the end-effector of the manipulator and moves with the end-effector. <xref ref-type="fig" rid="F2">Figure 2</xref> illustrates the geometric transformation in different coordinate systems. Three-dimensional space with <italic>O</italic><sub>ca</sub> as the original point and [<italic>X, Y, Z</italic>] as the coordinate axis is called the camera system with the internal coordinate point <bold>q</bold> &#x0003D; [<italic>x, y, z</italic>]<sup>T</sup>. Relatively, with <italic>O</italic><sub>im</sub> as the center point, the image system is the two-dimensional space with the projection pixel point of <bold>q</bold> being <inline-formula><mml:math id="M13"><mml:msup><mml:mrow><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>p</mml:mi></mml:mrow><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mi>p</mml:mi></mml:mrow><mml:mrow><mml:mi>y</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo>]</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">T</mml:mtext></mml:mstyle></mml:mrow></mml:msup></mml:math></inline-formula> and the pixel coordinate being <inline-formula><mml:math id="M14"><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle><mml:mo>=</mml:mo><mml:msup><mml:mrow><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>p</mml:mi></mml:mrow><mml:mrow><mml:mi>u</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mi>p</mml:mi></mml:mrow><mml:mrow><mml:mi>v</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo>]</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">T</mml:mtext></mml:mstyle></mml:mrow></mml:msup><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula>. According to the similar triangle, it can be readily obtained in the study by Zhang et al. (<xref ref-type="bibr" rid="B32">2017</xref>) and Zhang and Li (<xref ref-type="bibr" rid="B30">2018</xref>):</p>
<disp-formula id="E5"><label>(3)</label><mml:math id="M15"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:mtable style="text-align:axis;" equalrows="false" columnlines="none none none none none none none none none" equalcolumns="false" class="array"><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mi>p</mml:mi></mml:mrow><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mi>p</mml:mi></mml:mrow><mml:mrow><mml:mi>y</mml:mi></mml:mrow></mml:msub></mml:mtd></mml:mtr></mml:mtable></mml:mrow><mml:mo>]</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mfrac><mml:mrow><mml:mi>l</mml:mi></mml:mrow><mml:mrow><mml:mi>z</mml:mi></mml:mrow></mml:mfrac><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:mtable style="text-align:axis;" equalrows="false" columnlines="none none none none none none none none none" equalcolumns="false" class="array"><mml:mtr><mml:mtd><mml:mi>x</mml:mi></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mi>y</mml:mi></mml:mtd></mml:mtr></mml:mtable></mml:mrow><mml:mo>]</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>and</p>
<disp-formula id="E6"><label>(4)</label><mml:math id="M16"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mi>p</mml:mi></mml:mrow><mml:mrow><mml:mi>u</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:msub><mml:mrow><mml:mi>u</mml:mi></mml:mrow><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>a</mml:mi></mml:mrow><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub><mml:msub><mml:mrow><mml:mi>p</mml:mi></mml:mrow><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="E7"><mml:math id="M17"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mi>p</mml:mi></mml:mrow><mml:mrow><mml:mi>v</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:msub><mml:mrow><mml:mi>v</mml:mi></mml:mrow><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>a</mml:mi></mml:mrow><mml:mrow><mml:mi>y</mml:mi></mml:mrow></mml:msub><mml:msub><mml:mrow><mml:mi>p</mml:mi></mml:mrow><mml:mrow><mml:mi>y</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<fig id="F2" position="float">
<label>Figure 2</label>
<caption><p>Geometric schematic of the camera system.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fnbot-18-1380430-g0002.tif"/>
</fig>
<p>with <italic>l</italic> standing for the focal length of the camera; <italic>u</italic><sub>0</sub> and <italic>v</italic><sub>0</sub> denoting the pixel coordinate of principle point; and <inline-formula><mml:math id="M18"><mml:msup><mml:mrow><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>a</mml:mi></mml:mrow><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mi>a</mml:mi></mml:mrow><mml:mrow><mml:mi>y</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo>]</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">T</mml:mtext></mml:mstyle></mml:mrow></mml:msup></mml:math></inline-formula> standing for the conversion scale. Based on <xref ref-type="disp-formula" rid="E5">Equations (3</xref>, <xref ref-type="disp-formula" rid="E6">4</xref>), the image Jacobian matrix <inline-formula><mml:math id="M19"><mml:msub><mml:mrow><mml:mi>J</mml:mi></mml:mrow><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">im</mml:mtext></mml:mstyle></mml:mrow></mml:msub><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle><mml:mo>,</mml:mo><mml:mi>z</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn><mml:mo>&#x000D7;</mml:mo><mml:mn>6</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula> is defined using the following relationship (Liang et al., <xref ref-type="bibr" rid="B12">2018</xref>):</p>



<disp-formula id="E8"><label>(5)</label><mml:math id="M20"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mi>J</mml:mi></mml:mrow><mml:mrow><mml:mtext class="textrm" mathvariant="normal">im</mml:mtext></mml:mrow></mml:msub><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle><mml:mo>,</mml:mo><mml:mi>z</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>s</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where <inline-formula><mml:math id="M21"><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:math></inline-formula> stands for the movement velocity of the pixel coordinate and</p>
<disp-formula id="E9"><mml:math id="M22"><mml:mtable columnalign="left"><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mi>J</mml:mi></mml:mrow><mml:mrow><mml:mtext class="textrm" mathvariant="normal">im</mml:mtext></mml:mrow></mml:msub><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle><mml:mo>,</mml:mo><mml:mi>z</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mi>H</mml:mi><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:mtable style="text-align:axis;" equalrows="false" columnlines="none none none none none none none none none" equalcolumns="false" class="array"><mml:mtr><mml:mtd><mml:mo>-</mml:mo><mml:mfrac><mml:mrow><mml:mi>l</mml:mi></mml:mrow><mml:mrow><mml:mi>z</mml:mi></mml:mrow></mml:mfrac></mml:mtd><mml:mtd><mml:mn>0</mml:mn></mml:mtd><mml:mtd><mml:mfrac><mml:mrow><mml:mi>l</mml:mi><mml:msub><mml:mrow><mml:mi>p</mml:mi></mml:mrow><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mrow><mml:mi>z</mml:mi></mml:mrow></mml:mfrac></mml:mtd><mml:mtd><mml:mfrac><mml:mrow><mml:msub><mml:mrow><mml:mi>p</mml:mi></mml:mrow><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub><mml:msub><mml:mrow><mml:mi>p</mml:mi></mml:mrow><mml:mrow><mml:mi>y</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mrow><mml:mi>l</mml:mi></mml:mrow></mml:mfrac></mml:mtd><mml:mtd><mml:mo>-</mml:mo><mml:mfrac><mml:mrow><mml:msubsup><mml:mrow><mml:mi>p</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>&#x0002B;</mml:mo><mml:msup><mml:mrow><mml:mi>l</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup></mml:mrow><mml:mrow><mml:mi>l</mml:mi></mml:mrow></mml:mfrac></mml:mtd><mml:mtd><mml:msub><mml:mrow><mml:mi>p</mml:mi></mml:mrow><mml:mrow><mml:mi>y</mml:mi></mml:mrow></mml:msub></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mn>0</mml:mn></mml:mtd><mml:mtd><mml:mo>-</mml:mo><mml:mfrac><mml:mrow><mml:mi>l</mml:mi></mml:mrow><mml:mrow><mml:mi>z</mml:mi></mml:mrow></mml:mfrac></mml:mtd><mml:mtd><mml:mfrac><mml:mrow><mml:msub><mml:mrow><mml:mi>p</mml:mi></mml:mrow><mml:mrow><mml:mi>y</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mrow><mml:mi>z</mml:mi></mml:mrow></mml:mfrac></mml:mtd><mml:mtd><mml:mo>-</mml:mo><mml:mfrac><mml:mrow><mml:msubsup><mml:mrow><mml:mi>p</mml:mi></mml:mrow><mml:mrow><mml:mi>y</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msubsup><mml:mo>&#x0002B;</mml:mo><mml:msup><mml:mrow><mml:mi>l</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup></mml:mrow><mml:mrow><mml:mi>l</mml:mi><mml:mtext>&#x000A0;</mml:mtext></mml:mrow></mml:mfrac></mml:mtd><mml:mtd><mml:mo>-</mml:mo><mml:mfrac><mml:mrow><mml:msub><mml:mrow><mml:mi>p</mml:mi></mml:mrow><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub><mml:msub><mml:mrow><mml:mi>p</mml:mi></mml:mrow><mml:mrow><mml:mi>y</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mrow><mml:mi>l</mml:mi></mml:mrow></mml:mfrac></mml:mtd><mml:mtd><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>p</mml:mi></mml:mrow><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub></mml:mtd></mml:mtr></mml:mtable></mml:mrow><mml:mo>]</mml:mo></mml:mrow><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>with</p>
<disp-formula id="E10"><mml:math id="M23"><mml:mtable columnalign="left"><mml:mtr><mml:mtd><mml:mtext>&#x000A0;&#x000A0;</mml:mtext><mml:msub><mml:mrow><mml:mi>p</mml:mi></mml:mrow><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mfrac><mml:mrow><mml:msub><mml:mrow><mml:mi>p</mml:mi></mml:mrow><mml:mrow><mml:mi>u</mml:mi></mml:mrow></mml:msub><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>u</mml:mi></mml:mrow><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>a</mml:mi></mml:mrow><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mfrac><mml:mo>,</mml:mo><mml:mtext>&#x000A0;&#x000A0;</mml:mtext><mml:msub><mml:mrow><mml:mi>p</mml:mi></mml:mrow><mml:mrow><mml:mi>y</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mfrac><mml:mrow><mml:msub><mml:mrow><mml:mi>p</mml:mi></mml:mrow><mml:mrow><mml:mi>v</mml:mi></mml:mrow></mml:msub><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>v</mml:mi></mml:mrow><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>a</mml:mi></mml:mrow><mml:mrow><mml:mi>y</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mfrac><mml:mo>,</mml:mo><mml:mtext>&#x000A0;&#x000A0;</mml:mtext><mml:mi>H</mml:mi><mml:mo>=</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:mtable style="text-align:axis;" equalrows="false" columnlines="none none none none none none none none none" equalcolumns="false" class="array"><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mi>a</mml:mi></mml:mrow><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub></mml:mtd><mml:mtd><mml:mn>0</mml:mn></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mn>0</mml:mn></mml:mtd><mml:mtd><mml:msub><mml:mrow><mml:mi>a</mml:mi></mml:mrow><mml:mrow><mml:mi>y</mml:mi></mml:mrow></mml:msub></mml:mtd></mml:mtr></mml:mtable></mml:mrow><mml:mo>]</mml:mo></mml:mrow><mml:mo>.</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>For the sake of convenience, <xref ref-type="disp-formula" rid="E2">Equations (2</xref>, <xref ref-type="disp-formula" rid="E5">5</xref>) can be combined as follows:</p>
<disp-formula id="E11"><label>(6)</label><mml:math id="M24"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mi mathvariant="script">J</mml:mi><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>with <inline-formula><mml:math id="M25"><mml:mi mathvariant="script">J</mml:mi><mml:mo>=</mml:mo><mml:msub><mml:mrow><mml:mi>J</mml:mi></mml:mrow><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">im</mml:mtext></mml:mstyle></mml:mrow></mml:msub><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle><mml:mo>,</mml:mo><mml:mi>z</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:msub><mml:mrow><mml:mi>J</mml:mi></mml:mrow><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">ro</mml:mtext></mml:mstyle></mml:mrow></mml:msub><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn><mml:mo>&#x000D7;</mml:mo><mml:mi>m</mml:mi></mml:mrow></mml:msup></mml:math></inline-formula> defined as the visual Jacobian matrix. The relationship between joint space and image space is established directly by <xref ref-type="disp-formula" rid="E11">Equation (6)</xref> at the velocity level. Taking the time derivatives of both sides of <xref ref-type="disp-formula" rid="E11">Equation (6)</xref> generates</p>
<disp-formula id="E12"><label>(7)</label><mml:math id="M26"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo>&#x0002B;</mml:mo><mml:mi mathvariant="script">J</mml:mi><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where <inline-formula><mml:math id="M27"><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:math></inline-formula> is the time derivative of &#x1D4A5;; <inline-formula><mml:math id="M28"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover></mml:math></inline-formula> denotes the joint acceleration; and <inline-formula><mml:math id="M29"><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover></mml:math></inline-formula> stands for the movement acceleration of the pixel coordinate. When it comes to a complicated situation with more features, the above analyses still hold under the requirements of appropriate dimensions. It is worth noting that a single feature is analyzed as an example for simple illustration. When the number of features increases, the principle of coordinate transformation remains unchanged along with the increase in dimension.</p></sec>
<sec>
<title>2.2 Data-driven learning algorithm</title>
<p>However, unknown conditions may exist in the robot visual servoing system, such as focal length changes or robot modifications. In this regard, it could not control the robot accurately to execute the IBVS task based on <inline-formula><mml:math id="M30"><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:math></inline-formula>. Hence, motivated by this issue, a data-driven learning algorithm is designed as follows. To begin with, a virtual IBVS system is established, incorporating the virtual visual Jacobian matrix <inline-formula><mml:math id="M31"><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn><mml:mo>&#x000D7;</mml:mo><mml:mi>m</mml:mi></mml:mrow></mml:msup></mml:math></inline-formula> and the following relationship:</p>
<disp-formula id="E13"><mml:math id="M32"><mml:mtable columnalign="left"><mml:mtr><mml:mtd><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where <inline-formula><mml:math id="M33"><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula> is the virtual pixel velocity determined by the virtual robot and <inline-formula><mml:math id="M34"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:math></inline-formula> is the joint velocity measured in real time from the robot. Beyond dispute, the goal of the data-driven learning algorithm is to guarantee that <inline-formula><mml:math id="M35"><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:math></inline-formula> can rapidly converge to the real pixel velocity <inline-formula><mml:math id="M36"><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:math></inline-formula>. Thereout, an error function is devised as <inline-formula><mml:math id="M37"><mml:mi>&#x02113;</mml:mi><mml:mo>=</mml:mo><mml:mo>|</mml:mo><mml:mo>|</mml:mo><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo>|</mml:mo><mml:msubsup><mml:mrow><mml:mo>|</mml:mo></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msubsup><mml:mo>/</mml:mo><mml:mn>2</mml:mn></mml:math></inline-formula>, where ||&#x000B7;||<sub>2</sub> is the Euclidean norm of a vector. On the basis of the gradient descent method (Stanimirovic et al., <xref ref-type="bibr" rid="B19">2015</xref>) to minimize the error function along the negative gradient direction, one can get</p>
<disp-formula id="E14"><label>(8)</label><mml:math id="M38"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mo>-</mml:mo><mml:mi>&#x003B4;</mml:mi><mml:mfrac><mml:mrow><mml:mi>&#x02202;</mml:mi><mml:mi>&#x02113;</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x02202;</mml:mi><mml:mover accent="true"><mml:mrow><mml:mi>J</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow></mml:mfrac><mml:mo>=</mml:mo><mml:mo>-</mml:mo><mml:mi>&#x003B4;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mtext class="textrm" mathvariant="normal">T</mml:mtext></mml:mrow></mml:msup><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where <inline-formula><mml:math id="M39"><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:math></inline-formula> is the time derivation of <inline-formula><mml:math id="M40"><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:math></inline-formula>; &#x003B4;&#x0003E;0 denotes the coefficient that controls the convergence rate. Hereinafter, <inline-formula><mml:math id="M41"><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:math></inline-formula> and <inline-formula><mml:math id="M42"><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:math></inline-formula> are used to replace the calibrated parameter <inline-formula><mml:math id="M43"><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:math></inline-formula> and &#x1D4A5; to deal with the unknown situations. This method directly explores the relationship between joint space and image space without the utilization of <inline-formula><mml:math id="M44"><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:math></inline-formula> and &#x1D4A5;. It is worth highlighting that <xref ref-type="disp-formula" rid="E14">Equation (8)</xref> does not involve real structural information and estimates structural information from the joint velocity <inline-formula><mml:math id="M45"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:math></inline-formula> and velocity of the pixel coordinate <inline-formula><mml:math id="M46"><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:math></inline-formula> measured by sensors, which belongs to the core idea of the data-driven learning algorithm.</p></sec></sec>
<sec id="s3">
<title>3 Acceleration-level IBVS solution</title>
<p>In this section, an AIVS scheme is proposed with joint constraints considered. Subsequently, we propose a corresponding RNN and provide theoretical analyses. Note that the presented method requires an accurate visual Jacobian matrix.</p>
<sec>
<title>3.1 AIVS scheme</title>
<p>It is worth pointing out that there are few acceleration-level robot control schemes for dealing with IBVS problems. None of the existing acceleration-level solutions take joint constraints into account (Keshmiri et al., <xref ref-type="bibr" rid="B8">2014</xref>; Anwar et al., <xref ref-type="bibr" rid="B2">2019</xref>). In this regard, considering joint constraints, acceleration control, and visual servoing kinematics, the AIVS scheme is constructed as a quadratic programming problem, taking the following form:</p>
<disp-formula id="E15"><label>(9a)</label><mml:math id="M47"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mtext class="textrm" mathvariant="normal">minimize&#x02003;</mml:mtext><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:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mtext class="textrm" mathvariant="normal">T</mml:mtext></mml:mrow></mml:msup><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="E16"><label>(9b)</label><mml:math id="M48"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mtext class="textrm" mathvariant="normal">subject to&#x02003;</mml:mtext><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mi mathvariant="script">J</mml:mi><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover><mml:mo>&#x0002B;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="E17"><label>(9c)</label><mml:math id="M49"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mtext>&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;</mml:mtext><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle><mml:mo>=</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mtext class="textrm" mathvariant="normal">d</mml:mtext></mml:mrow></mml:msub></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="E18"><label>(9d)</label><mml:math id="M50"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mtext>&#x02003;&#x000A0;&#x02003;&#x000A0;&#x02003;</mml:mtext><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover><mml:mo>&#x02208;</mml:mo><mml:mi>&#x003B3;</mml:mi><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where <bold>p</bold><sub>d</sub> denotes the desired pixel coordinate. As a result, the goal of AIVS scheme (<xref ref-type="disp-formula" rid="E15">9</xref>) is to make the end-effector track the desired pixel point. In addition, according to robot Jacobian matrix <italic>J</italic><sub>ro</sub> and the image Jacobian matrix <italic>J</italic><sub>im</sub>, the visual Jacobian matrix &#x1D4A5; and its time derivative <inline-formula><mml:math id="M51"><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:math></inline-formula> are determined by the structure and parameters of the robot and the parameter settings inside the camera. Hence, if there are any changes in the internal parameters or structures, leading to an unknown state, the accuracy of &#x1D4A5; and <inline-formula><mml:math id="M52"><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:math></inline-formula> may be compromised, potentially leading to a decline in performance. In contrast to velocity-level visual servoing schemes (Hashimoto et al., <xref ref-type="bibr" rid="B5">1991</xref>; Malis et al., <xref ref-type="bibr" rid="B14">2010</xref>; Zhang et al., <xref ref-type="bibr" rid="B32">2017</xref>; Liang et al., <xref ref-type="bibr" rid="B12">2018</xref>; Van et al., <xref ref-type="bibr" rid="B21">2018</xref>; Zhang and Li, <xref ref-type="bibr" rid="B30">2018</xref>; Xu et al., <xref ref-type="bibr" rid="B26">2019</xref>; Li et al., <xref ref-type="bibr" rid="B11">2020</xref>), the proposed AIVS scheme (<xref ref-type="disp-formula" rid="E15">9</xref>) offers two advantages. First, it utilizes joint acceleration as the control signal, resulting in continuous joint velocities. This helps mitigate the issues associated with excessive and discontinuous joint velocities. Second, AIVS scheme (<xref ref-type="disp-formula" rid="E15">9</xref>) takes into account the equality and inequality constraints at the acceleration level. This allows for a more comprehensive consideration of constraints, expanding the range of applications.</p></sec>
<sec>
<title>3.2 RNN solution and theoretical analysis</title>
<p>For the AIVS scheme (<xref ref-type="disp-formula" rid="E15">9</xref>), the pseudoinverse method is applied to generate the relevant RNN solution (Cigliano et al., <xref ref-type="bibr" rid="B3">2015</xref>; Li et al., <xref ref-type="bibr" rid="B11">2020</xref>). Primarily, as reported in the study by Zhang and Zhang (<xref ref-type="bibr" rid="B33">2012</xref>) and Xie et al. (<xref ref-type="bibr" rid="B23">2022</xref>), one can readily extend pixel coordinate error <bold>p</bold>&#x02212;<bold>p</bold><sub>d</sub> into the acceleration level by neural dynamics method (Liufu et al., <xref ref-type="bibr" rid="B13">2024</xref>) as</p>
<disp-formula id="E19"><label>(10)</label><mml:math id="M53"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mtext class="textrm" mathvariant="normal">d</mml:mtext></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mo>-</mml:mo><mml:mi>&#x003B1;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mtext class="textrm" mathvariant="normal">d</mml:mtext></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>-</mml:mo><mml:mi>&#x003B2;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mtext class="textrm" mathvariant="normal">d</mml:mtext></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where the design parameter &#x003B1;&#x0003E;0 and &#x003B2;&#x0003E;0; <inline-formula><mml:math id="M54"><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">d</mml:mtext></mml:mstyle></mml:mrow></mml:msub></mml:math></inline-formula> and <inline-formula><mml:math id="M55"><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">d</mml:mtext></mml:mstyle></mml:mrow></mml:msub></mml:math></inline-formula> are the desired velocity and the desired acceleration of the pixel coordinates, respectively. It is worth pointing out that the desired pixel coordinates <bold>p</bold><sub>d</sub> is a constant, thus <inline-formula><mml:math id="M56"><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">d</mml:mtext></mml:mstyle></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">d</mml:mtext></mml:mstyle></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>0</mml:mn></mml:math></inline-formula>. As a result, <xref ref-type="disp-formula" rid="E19">Equation (10)</xref> can be rearranged as</p>
<disp-formula id="E20"><label>(11)</label><mml:math id="M57"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mo>-</mml:mo><mml:mi>&#x003B1;</mml:mi><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:mi>&#x003B2;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mtext class="textrm" mathvariant="normal">d</mml:mtext></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>.</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>Substituting <xref ref-type="disp-formula" rid="E20">Equation (11)</xref> into <xref ref-type="disp-formula" rid="E15">Equation (9b)</xref>, it could be obtained:</p>
<disp-formula id="E21"><mml:math id="M58"><mml:mtable columnalign="left"><mml:mtr><mml:mtd><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo>&#x0002B;</mml:mo><mml:mi mathvariant="script">J</mml:mi><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mo>-</mml:mo><mml:mi>&#x003B1;</mml:mi><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:mi>&#x003B2;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mtext class="textrm" mathvariant="normal">d</mml:mtext></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>.</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>In light of the pseudoinverse method, the joint acceleration can be minimized with the following formula:</p>
<disp-formula id="E22"><label>(12)</label><mml:math id="M59"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:msup><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x02020;</mml:mi></mml:mrow></mml:msup><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mo>-</mml:mo><mml:mi>&#x003B1;</mml:mi><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:mi>&#x003B2;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mtext class="textrm" mathvariant="normal">d</mml:mtext></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>-</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where superscript <sup>&#x02020;</sup> denotes the pseudoinverse operation of a matrix with &#x1D4A5;<sup>&#x02020;</sup> &#x0003D; &#x1D4A5;<sup>T</sup>(&#x1D4A5;&#x1D4A5;<sup>T</sup>)&#x02212;1. It is deserved to note that <xref ref-type="disp-formula" rid="E22">Equation (12)</xref> is employed in the study by Keshmiri et al. (<xref ref-type="bibr" rid="B8">2014</xref>) and Anwar et al. (<xref ref-type="bibr" rid="B2">2019</xref>) to generate the acceleration command for a manipulator. However, the research in the study by Keshmiri et al. (<xref ref-type="bibr" rid="B8">2014</xref>) and Anwar et al. (<xref ref-type="bibr" rid="B2">2019</xref>) does not consider joint constraints of the manipulator. To address this problem, the RNN corresponding to the AIVS scheme (<xref ref-type="disp-formula" rid="E15">9</xref>) is derived as</p>
<disp-formula id="E23"><label>(13)</label><mml:math id="M60"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:msub><mml:mrow><mml:mi mathvariant="script">p</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x003B3;</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msup><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x02020;</mml:mi></mml:mrow></mml:msup><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mo>-</mml:mo><mml:mi>&#x003B1;</mml:mi><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:mi>&#x003B2;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mtext class="textrm" mathvariant="normal">d</mml:mtext></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>-</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where projection function &#x1D4AB;<sub>&#x003B3;</sub>(<italic>c</italic>) &#x0003D; argmin<sub><italic>b</italic>&#x02208;&#x003B3;</sub>||<italic>b</italic>&#x02212;<italic>c</italic>||<sub>2</sub>. Furthermore, theoretical analyses regarding the convergence of RNN (<xref ref-type="disp-formula" rid="E23">13</xref>) are presented as follows.</p>
<p><italic>Theorem 1:</italic> The pixel error &#x003BE; &#x0003D; <bold>p</bold>&#x02212;<bold>p</bold><sub>d</sub> driven by AIVS scheme (<xref ref-type="disp-formula" rid="E15">9</xref>) assisted with RNN (<xref ref-type="disp-formula" rid="E23">13</xref>) globally converges to a zero vector.</p>
<p><italic>Proof:</italic> According to <xref ref-type="disp-formula" rid="E12">Equations (7</xref>, <xref ref-type="disp-formula" rid="E23">13</xref>), one has</p>
<disp-formula id="E24"><mml:math id="M61"><mml:mtable columnalign="left"><mml:mtr><mml:mtd><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mi mathvariant="script">J</mml:mi><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover><mml:mo>&#x0002B;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mi mathvariant="script">J</mml:mi><mml:msub><mml:mrow><mml:mi mathvariant="script">p</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x003B3;</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msup><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x02020;</mml:mi></mml:mrow></mml:msup><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mo>-</mml:mo><mml:mi>&#x003B1;</mml:mi><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:mi>&#x003B2;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mtext class="textrm" mathvariant="normal">d</mml:mtext></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>-</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>&#x0002B;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo>.</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>Due to the fact that <bold>p</bold><sub>d</sub> is a fixed feature, error function <inline-formula><mml:math id="M62"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BE;</mml:mi></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover></mml:math></inline-formula> can be readily derived as</p>
<disp-formula id="E25"><mml:math id="M63"><mml:mtable columnalign="left"><mml:mtr><mml:mtd><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BE;</mml:mi></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mi mathvariant="script">J</mml:mi><mml:msub><mml:mrow><mml:mi mathvariant="script">P</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x003B3;</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msup><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x02020;</mml:mi></mml:mrow></mml:msup><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mo>-</mml:mo><mml:mi>&#x003B1;</mml:mi><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BE;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:mi>&#x003B2;</mml:mi><mml:mi>&#x003BE;</mml:mi><mml:mo>-</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>&#x0002B;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo>.</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>By considering the projection function, a substitution matrix <inline-formula><mml:math id="M130"><mml:mi mathvariant='script'>H</mml:mi></mml:math></inline-formula> is designed to replace &#x1D4AB;<sub>&#x003B3;</sub>(&#x000B7;), leading to</p>
<disp-formula id="E26"><label>(14)</label><mml:math id="M64"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BE;</mml:mi></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mi mathvariant="script">J</mml:mi><mml:mi mathvariant="script">H</mml:mi><mml:msup><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x02020;</mml:mi></mml:mrow></mml:msup><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mo>-</mml:mo><mml:mi>&#x003B1;</mml:mi><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BE;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:mi>&#x003B2;</mml:mi><mml:mi>&#x003BE;</mml:mi><mml:mo>-</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>&#x0002B;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>of which</p>
<disp-formula id="E27"><mml:math id="M65"><mml:mtable columnalign="left"><mml:mtr><mml:mtd><mml:mi mathvariant="script">H</mml:mi><mml:mo>=</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:mtable style="text-align:axis;" equalrows="false" columnlines="none none none none none none none none none" equalcolumns="false" class="array"><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mi>h</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:mtd><mml:mtd><mml:mn>0</mml:mn></mml:mtd><mml:mtd><mml:mo>&#x022EF;</mml:mo></mml:mtd><mml:mtd><mml:mn>0</mml:mn></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mn>0</mml:mn></mml:mtd><mml:mtd><mml:msub><mml:mrow><mml:mi>h</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub></mml:mtd><mml:mtd><mml:mo>&#x022EF;</mml:mo></mml:mtd><mml:mtd><mml:mn>0</mml:mn></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mo>&#x022EE;</mml:mo></mml:mtd><mml:mtd><mml:mo>&#x022EE;</mml:mo></mml:mtd><mml:mtd><mml:mo>&#x022F1;</mml:mo></mml:mtd><mml:mtd><mml:mo>&#x022EE;</mml:mo></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mn>0</mml:mn></mml:mtd><mml:mtd><mml:mn>0</mml:mn></mml:mtd><mml:mtd><mml:mo>&#x022EF;</mml:mo><mml:mtext>&#x000A0;</mml:mtext></mml:mtd><mml:mtd><mml:msub><mml:mrow><mml:mi>h</mml:mi></mml:mrow><mml:mrow><mml:mi>m</mml:mi></mml:mrow></mml:msub></mml:mtd></mml:mtr></mml:mtable></mml:mrow><mml:mo>]</mml:mo></mml:mrow><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mi>&#x0211D;</mml:mi></mml:mrow><mml:mrow><mml:mi>m</mml:mi><mml:mo>&#x000D7;</mml:mo><mml:mi>m</mml:mi></mml:mrow></mml:msup></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>and</p>
<disp-formula id="E28"><mml:math id="M66"><mml:mtable columnalign="left"><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mi>h</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mfrac><mml:mrow><mml:msub><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi mathvariant="script">P</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x003B3;</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msup><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x02020;</mml:mi></mml:mrow></mml:msup><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mo>-</mml:mo><mml:mi>&#x003B1;</mml:mi><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:mi>&#x003B2;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mtext class="textrm" mathvariant="normal">d</mml:mtext></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>-</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msup><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x02020;</mml:mi></mml:mrow></mml:msup><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mo>-</mml:mo><mml:mi>&#x003B1;</mml:mi><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:mi>&#x003B2;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mtext class="textrm" mathvariant="normal">d</mml:mtext></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>-</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mfrac><mml:mo>&#x02208;</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mo>]</mml:mo></mml:mrow><mml:mo>.</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>By matrix decomposition, structural analyses of matrix <inline-formula><mml:math id="M67"><mml:mrow><mml:mi mathvariant='script'>J</mml:mi><mml:mi>&#x0210B;</mml:mi><mml:msup><mml:mi mathvariant='script'>J</mml:mi><mml:mo>&#x02020;</mml:mo></mml:msup><mml:mo>=</mml:mo><mml:mo stretchy='false'>[</mml:mo><mml:msub><mml:mi>a</mml:mi><mml:mrow><mml:mn>11</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>a</mml:mi><mml:mrow><mml:mn>12</mml:mn></mml:mrow></mml:msub><mml:mo>;</mml:mo><mml:msub><mml:mi>a</mml:mi><mml:mrow><mml:mn>21</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>a</mml:mi><mml:mrow><mml:mn>22</mml:mn></mml:mrow></mml:msub><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mi>&#x0211D;</mml:mi><mml:mrow><mml:mn>2</mml:mn><mml:mo>&#x000D7;</mml:mo><mml:mn>2</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:math></inline-formula> are given as follows:</p>
<disp-formula id="E29"><mml:math id="M68"><mml:mtable columnalign="left"><mml:mtr><mml:mtd><mml:mi mathvariant="script">J</mml:mi><mml:mi mathvariant="script">H</mml:mi><mml:msup><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x02020;</mml:mi></mml:mrow></mml:msup><mml:mo>=</mml:mo><mml:mi mathvariant="script">J</mml:mi><mml:mi>L</mml:mi><mml:msup><mml:mrow><mml:mi>L</mml:mi></mml:mrow><mml:mrow><mml:mtext class="textrm" mathvariant="normal">T</mml:mtext></mml:mrow></mml:msup><mml:msup><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mrow><mml:mtext class="textrm" mathvariant="normal">T</mml:mtext></mml:mrow></mml:msup><mml:msup><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi mathvariant="script">J</mml:mi><mml:msup><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mrow><mml:mtext class="textrm" mathvariant="normal">T</mml:mtext></mml:mrow></mml:msup></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mo>-</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msup><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where <inline-formula><mml:math id="M69"><mml:mi>L</mml:mi><mml:mo>=</mml:mo><mml:msqrt><mml:mrow><mml:mi mathvariant="script">H</mml:mi></mml:mrow></mml:msqrt></mml:math></inline-formula>. In this regard, matrix &#x1D4A5;<inline-formula><mml:math id="M131"><mml:mi mathvariant='script'>H</mml:mi></mml:math></inline-formula>&#x1D4A5;<sup>&#x02020;</sup> can be viewed as the product of two positive definite matrices. It is evident that the eigenvalues of &#x1D4A5;<inline-formula><mml:math id="M132"><mml:mi mathvariant='script'>H</mml:mi></mml:math></inline-formula>&#x1D4A5;<sup>&#x02020;</sup> are greater than zero and det(&#x1D4A5;<inline-formula><mml:math id="M133"><mml:mi mathvariant='script'>H</mml:mi></mml:math></inline-formula>&#x1D4A5;<sup>&#x02020;</sup>) &#x0003D; det(&#x1D4A5;L<italic>L</italic><sup>T</sup>&#x1D4A5;<sup>T</sup>)det((&#x1D4A5;&#x1D4A5;<sup>T</sup>)&#x02212;1)&#x0003E;0 with det(&#x000B7;), denoting the determinant of a matrix. According to the properties of the diagonal elements of the matrix, it can be concluded that the diagonal elements of &#x1D4A5;<inline-formula><mml:math id="M134"><mml:mi mathvariant='script'>H</mml:mi></mml:math></inline-formula>&#x1D4A5;<sup>&#x02020;</sup> are greater than zero (<italic>a</italic><sub>11</sub>&#x0003E;0, <italic>a</italic><sub>22</sub>&#x0003E;0). Furthermore, <xref ref-type="disp-formula" rid="E22">Equation (12)</xref> can be rewritten as</p>
<disp-formula id="E30"><mml:math id="M70"><mml:mtable columnalign="left"><mml:mtr><mml:mtd><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:mtable style="text-align:axis;" equalrows="false" columnlines="none none none none none none none none none" equalcolumns="false" class="array"><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BE;</mml:mi></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BE;</mml:mi></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub></mml:mtd></mml:mtr></mml:mtable></mml:mrow><mml:mo>]</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:mtable style="text-align:axis;" equalrows="false" columnlines="none none none none none none none none none" equalcolumns="false" class="array"><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mi>a</mml:mi></mml:mrow><mml:mrow><mml:mn>11</mml:mn></mml:mrow></mml:msub></mml:mtd><mml:mtd><mml:msub><mml:mrow><mml:mi>a</mml:mi></mml:mrow><mml:mrow><mml:mn>12</mml:mn></mml:mrow></mml:msub></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mi>a</mml:mi></mml:mrow><mml:mrow><mml:mn>21</mml:mn></mml:mrow></mml:msub></mml:mtd><mml:mtd><mml:msub><mml:mrow><mml:mi>a</mml:mi></mml:mrow><mml:mrow><mml:mn>22</mml:mn></mml:mrow></mml:msub></mml:mtd></mml:mtr></mml:mtable></mml:mrow><mml:mo>]</mml:mo></mml:mrow><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:mtable style="text-align:axis;" equalrows="false" columnlines="none none none none none none none none none" equalcolumns="false" class="array"><mml:mtr><mml:mtd><mml:mo>-</mml:mo><mml:mi>&#x003B1;</mml:mi><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BE;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>-</mml:mo><mml:mi>&#x003B2;</mml:mi><mml:mi>&#x003B4;</mml:mi><mml:msub><mml:mrow><mml:mi>&#x003BE;</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mo>-</mml:mo><mml:mi>&#x003B1;</mml:mi><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BE;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>-</mml:mo><mml:mi>&#x003B2;</mml:mi><mml:msub><mml:mrow><mml:mi>&#x003BE;</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub></mml:mtd></mml:mtr></mml:mtable></mml:mrow><mml:mo>]</mml:mo></mml:mrow><mml:mo>&#x0002B;</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:mtable style="text-align:axis;" equalrows="false" columnlines="none none none none none none none none none" equalcolumns="false" class="array"><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub></mml:mtd></mml:mtr></mml:mtable></mml:mrow><mml:mo>]</mml:mo></mml:mrow><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>and further we get</p>
<disp-formula id="E31"><mml:math id="M71"><mml:mrow><mml:mtable columnalign='left'><mml:mtr columnalign='left'><mml:mtd columnalign='left'><mml:mrow><mml:msub><mml:mover accent='true'><mml:mi>&#x003BE;</mml:mi><mml:mo>&#x000A8;</mml:mo></mml:mover><mml:mn>1</mml:mn></mml:msub><mml:mo>+</mml:mo><mml:msub><mml:mi>a</mml:mi><mml:mrow><mml:mn>11</mml:mn></mml:mrow></mml:msub><mml:mi>&#x003B1;</mml:mi><mml:msub><mml:mover accent='true'><mml:mi>&#x003BE;</mml:mi><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mn>1</mml:mn></mml:msub><mml:mo>+</mml:mo><mml:msub><mml:mi>a</mml:mi><mml:mrow><mml:mn>11</mml:mn></mml:mrow></mml:msub><mml:mi>&#x003B2;</mml:mi><mml:msub><mml:mi>&#x003BE;</mml:mi><mml:mn>1</mml:mn></mml:msub><mml:mo>=</mml:mo><mml:mo>&#x02212;</mml:mo><mml:msub><mml:mi>a</mml:mi><mml:mrow><mml:mn>12</mml:mn></mml:mrow></mml:msub><mml:mo stretchy='false'>(</mml:mo><mml:mi>&#x003B1;</mml:mi><mml:msub><mml:mover accent='true'><mml:mi>&#x003BE;</mml:mi><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mn>2</mml:mn></mml:msub><mml:mo>+</mml:mo><mml:mi>&#x003B2;</mml:mi><mml:msub><mml:mi>&#x003BE;</mml:mi><mml:mn>2</mml:mn></mml:msub><mml:mo>+</mml:mo><mml:msub><mml:mrow><mml:mo stretchy='false'>(</mml:mo><mml:mover accent='true'><mml:mi mathvariant='script'>J</mml:mi><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mover accent='true'><mml:mi>&#x003D5;</mml:mi><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo stretchy='false'>)</mml:mo></mml:mrow><mml:mn>2</mml:mn></mml:msub><mml:mo stretchy='false'>)</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr columnalign='left'><mml:mtd columnalign='left'><mml:mrow><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>+</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo stretchy='false'>(</mml:mo><mml:mn>1</mml:mn><mml:mo>&#x02212;</mml:mo><mml:msub><mml:mi>a</mml:mi><mml:mrow><mml:mn>11</mml:mn></mml:mrow></mml:msub><mml:mo stretchy='false'>)</mml:mo><mml:msub><mml:mrow><mml:mo stretchy='false'>(</mml:mo><mml:mover accent='true'><mml:mi mathvariant='script'>J</mml:mi><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mover accent='true'><mml:mi>&#x003D5;</mml:mi><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo stretchy='false'>)</mml:mo></mml:mrow><mml:mn>1</mml:mn></mml:msub></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:math></disp-formula>
<p>and</p>
<disp-formula id="E32"><mml:math id="M72"><mml:mrow><mml:mtable columnalign='left'><mml:mtr columnalign='left'><mml:mtd columnalign='left'><mml:mrow><mml:msub><mml:mover accent='true'><mml:mi>&#x003BE;</mml:mi><mml:mo>&#x000A8;</mml:mo></mml:mover><mml:mn>2</mml:mn></mml:msub><mml:mo>+</mml:mo><mml:msub><mml:mi>a</mml:mi><mml:mrow><mml:mn>22</mml:mn></mml:mrow></mml:msub><mml:mi>&#x003B1;</mml:mi><mml:msub><mml:mover accent='true'><mml:mi>&#x003BE;</mml:mi><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mn>2</mml:mn></mml:msub><mml:mo>+</mml:mo><mml:msub><mml:mi>a</mml:mi><mml:mrow><mml:mn>22</mml:mn></mml:mrow></mml:msub><mml:mi>&#x003B2;</mml:mi><mml:msub><mml:mi>&#x003BE;</mml:mi><mml:mn>2</mml:mn></mml:msub><mml:mo>=</mml:mo><mml:mo>&#x02212;</mml:mo><mml:msub><mml:mi>a</mml:mi><mml:mrow><mml:mn>21</mml:mn></mml:mrow></mml:msub><mml:mo stretchy='false'>(</mml:mo><mml:mi>&#x003B1;</mml:mi><mml:msub><mml:mover accent='true'><mml:mi>&#x003BE;</mml:mi><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mn>1</mml:mn></mml:msub><mml:mo>+</mml:mo><mml:mi>&#x003B2;</mml:mi><mml:msub><mml:mi>&#x003BE;</mml:mi><mml:mn>1</mml:mn></mml:msub><mml:mo>+</mml:mo><mml:msub><mml:mrow><mml:mo stretchy='false'>(</mml:mo><mml:mover accent='true'><mml:mi mathvariant='script'>J</mml:mi><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mover accent='true'><mml:mi>&#x003D5;</mml:mi><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo stretchy='false'>)</mml:mo></mml:mrow><mml:mn>1</mml:mn></mml:msub><mml:mo stretchy='false'>)</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr columnalign='left'><mml:mtd columnalign='left'><mml:mrow><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>+</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo>&#x000A0;</mml:mo><mml:mo stretchy='false'>(</mml:mo><mml:mn>1</mml:mn><mml:mo>&#x02212;</mml:mo><mml:msub><mml:mi>a</mml:mi><mml:mrow><mml:mn>22</mml:mn></mml:mrow></mml:msub><mml:mo stretchy='false'>)</mml:mo><mml:msub><mml:mrow><mml:mo stretchy='false'>(</mml:mo><mml:mover accent='true'><mml:mi mathvariant='script'>J</mml:mi><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mover accent='true'><mml:mi>&#x003D5;</mml:mi><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo stretchy='false'>)</mml:mo></mml:mrow><mml:mn>2</mml:mn></mml:msub></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:math></disp-formula>
<p>which can be regarded as a perturbed second-order constant coefficient differential equation with respect to &#x003BE;. In conclusion, pixel error &#x003BE; is able to converge exponentially. To illustrate the steady state of the system (<xref ref-type="disp-formula" rid="E26">Equation 14</xref>), further derivations continue to be given. As the pixel error decreases, all joint properties return to the interior of joint constraints. In this sense, joint properties, i.e., <inline-formula><mml:math id="M73"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover></mml:math></inline-formula>, <inline-formula><mml:math id="M74"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:math></inline-formula> and &#x003D5;, are all inside the joint limits with <italic>h</italic><sub><italic>i</italic></sub> &#x0003D; 1. Therefore, <xref ref-type="disp-formula" rid="E26">Equation (14)</xref> can be reorganized as</p>
<disp-formula id="E33"><label>(15)</label><mml:math id="M75"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BE;</mml:mi></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>&#x0002B;</mml:mo><mml:mi>&#x003B1;</mml:mi><mml:mover accent="true"><mml:mrow><mml:mi>&#x003BE;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>&#x0002B;</mml:mo><mml:mi>&#x003B2;</mml:mi><mml:mi>&#x003BE;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mn>0</mml:mn><mml:mo>.</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>It is worth mentioning that <xref ref-type="disp-formula" rid="E33">Equation (15)</xref> can be regarded as a second-order constant coefficient differential equation with regard to &#x003BE;. Moreover, the solutions of <xref ref-type="disp-formula" rid="E33">Equation (15)</xref> can be segmented into three subcases on account of different settings of &#x003B1; and &#x003B2;, given the original state &#x003BE;(0) &#x0003D; <bold>p</bold>&#x02212;<bold>p</bold><sub>d</sub>.</p>
<p>Subcase I: As for &#x003B1;<sup>2</sup>&#x02212;4&#x003B2;&#x0003E;0, the characteristic roots could be obtained simply as <inline-formula><mml:math id="M76"><mml:msub><mml:mrow><mml:mi mathvariant="script">R</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mo>-</mml:mo><mml:mi>&#x003B1;</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:msqrt><mml:mrow><mml:msup><mml:mrow><mml:mi>&#x003B1;</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mo>-</mml:mo><mml:mn>4</mml:mn><mml:mi>&#x003B2;</mml:mi></mml:mrow></mml:msqrt></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>/</mml:mo><mml:mn>2</mml:mn></mml:math></inline-formula> and <inline-formula><mml:math id="M77"><mml:msub><mml:mrow><mml:mi mathvariant="script">R</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mo>-</mml:mo><mml:mi>&#x003B1;</mml:mi><mml:mo>-</mml:mo><mml:msqrt><mml:mrow><mml:msup><mml:mrow><mml:mi>&#x003B1;</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mo>-</mml:mo><mml:mn>4</mml:mn><mml:mi>&#x003B2;</mml:mi></mml:mrow></mml:msqrt></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>/</mml:mo><mml:mn>2</mml:mn></mml:math></inline-formula> with real number <inline-formula><mml:math id="M135"><mml:mi mathvariant='script'>R</mml:mi></mml:math></inline-formula><sub>1</sub>&#x02260;<inline-formula><mml:math id="M136"><mml:mi mathvariant='script'>R</mml:mi></mml:math></inline-formula><sub>2</sub>. Therefore, one can readily deduce</p>
<disp-formula id="E34"><mml:math id="M78"><mml:mtable columnalign="left"><mml:mtr><mml:mtd><mml:mi>&#x003BE;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mi>&#x003BE;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mn>0</mml:mn></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>D</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mtext class="textrm" mathvariant="normal">exp</mml:mtext><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi mathvariant="script">R</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>D</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mtext class="textrm" mathvariant="normal">exp</mml:mtext><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi mathvariant="script">R</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>with <inline-formula><mml:math id="M79"><mml:msub><mml:mrow><mml:mi>D</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mi>&#x003B1;</mml:mi><mml:mo>/</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mn>2</mml:mn><mml:msqrt><mml:mrow><mml:msup><mml:mrow><mml:mi>&#x003B1;</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mo>-</mml:mo><mml:mn>4</mml:mn><mml:mi>&#x003B2;</mml:mi></mml:mrow></mml:msqrt></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>&#x0002B;</mml:mo><mml:mn>1</mml:mn><mml:mo>/</mml:mo><mml:mn>2</mml:mn></mml:math></inline-formula> and <inline-formula><mml:math id="M80"><mml:msub><mml:mrow><mml:mi>D</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>1</mml:mn><mml:mo>/</mml:mo><mml:mn>2</mml:mn><mml:mo>-</mml:mo><mml:mi>&#x003B1;</mml:mi><mml:mo>/</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mn>2</mml:mn><mml:msqrt><mml:mrow><mml:msup><mml:mrow><mml:mi>&#x003B1;</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mo>-</mml:mo><mml:mn>4</mml:mn><mml:mi>&#x003B2;</mml:mi></mml:mrow></mml:msqrt></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula></p>
<p>Subcase II: As to &#x003B1;<sup>2</sup>&#x02212;4&#x003B2; &#x0003D; 0, calculating characteristic roots generates <inline-formula><mml:math id="M137"><mml:mi mathvariant='script'>R</mml:mi></mml:math></inline-formula><sub>1</sub> &#x0003D; <inline-formula><mml:math id="M138"><mml:mi mathvariant='script'>R</mml:mi></mml:math></inline-formula><sub>2</sub> &#x0003D; &#x02212;&#x003B1;/2. Hence, it can be readily obtained:</p>
<disp-formula id="E35"><mml:math id="M81"><mml:mtable columnalign="left"><mml:mtr><mml:mtd><mml:mi>&#x003BE;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mi>&#x003BE;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mn>0</mml:mn></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mtext class="textrm" mathvariant="normal">exp</mml:mtext><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mo>-</mml:mo><mml:mi>&#x003B1;</mml:mi><mml:mo>/</mml:mo><mml:mn>2</mml:mn><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mn>1</mml:mn><mml:mo>&#x0002B;</mml:mo><mml:mi>&#x003B1;</mml:mi><mml:mo>/</mml:mo><mml:mn>2</mml:mn><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>.</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>Subcase III: As to &#x003B1;<sup>2</sup>&#x02212;4&#x003B2; &#x0003C; 0, we get two complex number roots as <inline-formula><mml:math id="M139"><mml:mi mathvariant='script'>R</mml:mi></mml:math></inline-formula><sub>1</sub> &#x0003D; &#x003B6;&#x0002B;<italic>i&#x003B7;</italic> and <inline-formula><mml:math id="M140"><mml:mi mathvariant='script'>R</mml:mi></mml:math></inline-formula><sub>2</sub> &#x0003D; &#x003B6;&#x02212;<italic>i&#x003B7;</italic>. Accordingly, it is evident that</p>
<disp-formula id="E36"><mml:math id="M82"><mml:mtable columnalign="left"><mml:mtr><mml:mtd><mml:mi>&#x003BE;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mi>&#x003BE;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mn>0</mml:mn></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mtext class="textrm" mathvariant="normal">exp</mml:mtext><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mo>-</mml:mo><mml:mi>&#x003B6;</mml:mi><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mtext class="textrm" mathvariant="normal">cos</mml:mtext><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>&#x003B7;</mml:mi><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>-</mml:mo><mml:mi>&#x003B6;</mml:mi><mml:mtext class="textrm" mathvariant="normal">sin</mml:mtext><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>&#x003B7;</mml:mi><mml:mi>t</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>/</mml:mo><mml:mi>&#x003B7;</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>.</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>The above three subcases indicate that the pixel error &#x003BE; &#x0003D; <bold>p</bold>&#x02212;<bold>p</bold><sub>d</sub> converges to zero over time globally. The proof is complete.</p></sec></sec>
<sec id="s4">
<title>4 DAIVS solution</title>
<p>The existing IBVS schemes, including the AIVS scheme (<xref ref-type="disp-formula" rid="E15">9</xref>), often require a detailed knowledge of the robot visual servoing system. However, in a non-ideal state, many unknown cases often exist, which can disturb the precise control of the robot, thus resulting in large errors. Recalling the data-driven learning algorithm (<xref ref-type="disp-formula" rid="E14">Equation 8</xref>), virtual visual Jacobian matrix <inline-formula><mml:math id="M83"><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:math></inline-formula> is exploited to solve this issue.</p>
<sec>
<title>4.1 DAIVS scheme and RNN solution</title>
<p>Based on the virtual visual Jacobian matrix, a DAIVS scheme (<xref ref-type="disp-formula" rid="E14">8</xref>) would be designed as</p>
<disp-formula id="E37"><mml:math id="M84"><mml:mtable columnalign="left"><mml:mtr><mml:mtd><mml:mtext class="textrm" mathvariant="normal">minimize&#x02003;</mml:mtext><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:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mtext class="textrm" mathvariant="normal">T</mml:mtext></mml:mrow></mml:msup><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mtext class="textrm" mathvariant="normal">subject to&#x02003;</mml:mtext><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover><mml:mo>&#x0002B;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mtext>&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;</mml:mtext><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle><mml:mo>=</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mtext class="textrm" mathvariant="normal">d</mml:mtext></mml:mrow></mml:msub></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mtext>&#x02003;&#x000A0;&#x02003;&#x000A0;&#x02003;</mml:mtext><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover><mml:mo>&#x02208;</mml:mo><mml:mi>&#x003B3;</mml:mi><mml:mo>.</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>It is a remarkable fact that the DAIVS scheme does not involve the visual structure of the real robot. Instead, the virtual visual Jacobian matrix <inline-formula><mml:math id="M85"><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:math></inline-formula> conveys the transformation relationship between the joint space and image space to deal with possible unknowns in the structure of the robot system. Compared with acceleration-level visual servoing schemes (Keshmiri et al., <xref ref-type="bibr" rid="B8">2014</xref>; Anwar et al., <xref ref-type="bibr" rid="B2">2019</xref>), the proposed DAIVS scheme offers two distinct advantages. First, it prioritizes the safety aspect by considering joint limits. Second, the DAIVS scheme takes into account the uncertainty of the robot vision system and employs the virtual visual Jacobian matrix for robot control, enhancing the fault tolerance ability. The existing acceleration-level visual servoing schemes (Keshmiri et al., <xref ref-type="bibr" rid="B8">2014</xref>; Anwar et al., <xref ref-type="bibr" rid="B2">2019</xref>) cannot accurately implement visual servoing tasks when the Jacobian matrix lacks precision. Furthermore, combining <xref ref-type="disp-formula" rid="E14">Equations (8</xref>, <xref ref-type="disp-formula" rid="E23">13</xref>) generates</p>
<disp-formula id="E38"><label>(16a)</label><mml:math id="M86"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:msub><mml:mrow><mml:mi mathvariant="script">P</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x003B3;</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>&#x02020;</mml:mi></mml:mrow></mml:msup><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mo>-</mml:mo><mml:mi>&#x003B1;</mml:mi><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:mi>&#x003B2;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mtext class="textrm" mathvariant="normal">d</mml:mtext></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>-</mml:mo><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="E39"><label>(16b)</label><mml:math id="M87"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mo>-</mml:mo><mml:mi>&#x003B4;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mtext class="textrm" mathvariant="normal">T</mml:mtext></mml:mrow></mml:msup><mml:mo>.</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>It is worth pointing out that the RNN (<xref ref-type="disp-formula" rid="E38">16</xref>) is divided into the inner cycle and outer cycle, i.e., the learning cycle and control cycle. Subsystem (<xref ref-type="disp-formula" rid="E38">Equation 16a</xref>), which can be viewed as the outer cycle, mainly generates the control signal to adjust the joint properties via virtual visual Jacobian matrix <inline-formula><mml:math id="M88"><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:math></inline-formula>. In return, inner cycle (<xref ref-type="disp-formula" rid="E39">Equation 16b</xref>) with learning ability can explore the relationship between end-effector motion and joint motion, thus producing virtual visual Jacobian matrix <inline-formula><mml:math id="M89"><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:math></inline-formula> to simulate the movement process of real robots. From a control point of view, the inner cycle (<xref ref-type="disp-formula" rid="E39">Equation 16b</xref>) must converge faster than the outer cycle (<xref ref-type="disp-formula" rid="E38">Equation 16a</xref>). In this sense, &#x003B4;&#x0226B;&#x003B1; is a necessary condition for the normal operation of the system.</p>
<p>Note that both RNN (<xref ref-type="disp-formula" rid="E23">13</xref>) and RNN (<xref ref-type="disp-formula" rid="E38">16</xref>) involve the use of pseudo-inverse operations. As a result, various existing methods can be employed to mitigate singularity issues, such as the damped least squares method. Specifically, &#x1D4A5;<sup>&#x02020;</sup> can be calculated via &#x1D4A5;<sup>&#x02020;</sup> &#x0003D; &#x1D4A5;<sup>T</sup>(&#x1D4A5;&#x1D4A5;<sup>T</sup>&#x0002B;<italic>h</italic><inline-formula><mml:math id="M141"><mml:mi mathvariant='script'>I</mml:mi></mml:math></inline-formula>)&#x02212;1 with <italic>h</italic> being a tiny constant and <inline-formula><mml:math id="M142"><mml:mi mathvariant='script'>I</mml:mi></mml:math></inline-formula> being an identity matrix. The additional item <italic>h</italic><inline-formula><mml:math id="M143"><mml:mi mathvariant='script'>I</mml:mi></mml:math></inline-formula> ensures that all eigenvalues of &#x1D4A5;&#x1D4A5;<sup>T</sup>&#x0002B;<italic>h</italic><inline-formula><mml:math id="M144"><mml:mi mathvariant='script'>I</mml:mi></mml:math></inline-formula> are never zero during the inversion process, thereby preventing singular issues. In addition, RNN (<xref ref-type="disp-formula" rid="E38">16</xref>) relies on the virtual visual Jacobian matrix and estimates the real Jacobian matrix using <xref ref-type="disp-formula" rid="E39">Equation (16b)</xref>. This enables a robust handling of the visual system&#x00027;s uncertainty. However, RNN (<xref ref-type="disp-formula" rid="E23">13</xref>) relies on the real visual Jacobian matrix, leading to potential inaccuracies in the robot control process.</p></sec>
<sec>
<title>4.2 Stability analyses of RNN</title>
<p>The learning and control performance of the proposed DAIVS scheme aided with RNN (<xref ref-type="disp-formula" rid="E38">16</xref>) are proved by the following theorem.</p>
<p><italic>Theorem 2:</italic> The Jacobian matrix error <inline-formula><mml:math id="M90"><mml:mi>E</mml:mi><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:mi mathvariant="script">J</mml:mi></mml:math></inline-formula> and pixel error &#x003BE; &#x0003D; <bold>p</bold>&#x02212;<bold>p</bold><sub>d</sub> produced by RNN (<xref ref-type="disp-formula" rid="E38">16</xref>) converges to zero, given a large enough &#x003B4;.</p>
<p><italic>Proof:</italic> The proof is segmented into two parts: (1) proving learning convergence; (2) proving control convergence.</p>
<p><italic>Part 1:</italic> Proving learning convergence. Design the <italic>i</italic>-th system of Jacobian matrix error as <inline-formula><mml:math id="M91"><mml:msub><mml:mrow><mml:mi>E</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> (<italic>i</italic> &#x0003D; 1, 2) where <inline-formula><mml:math id="M92"><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> and &#x1D4A5;<sub><italic>i</italic></sub> denote the <italic>i</italic>-th row of <inline-formula><mml:math id="M93"><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:math></inline-formula> and &#x1D4A5; and set the Lyapunov candidate <inline-formula><mml:math id="M94"><mml:msub><mml:mrow><mml:mi mathvariant="script">V</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:msup><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">T</mml:mtext></mml:mstyle></mml:mrow></mml:msup></mml:math></inline-formula>. Calculating the time derivative of &#x1D4B1;<sub><italic>i</italic></sub> leads to</p>
<disp-formula id="E40"><mml:math id="M95"><mml:mtable columnalign='left'><mml:mtr><mml:mtd><mml:msub><mml:mover><mml:mi mathvariant='script'>V</mml:mi><mml:mo>.</mml:mo></mml:mover><mml:mi>i</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mo stretchy='false'>(</mml:mo><mml:msub><mml:mover><mml:mrow><mml:mover accent='true'><mml:mi mathvariant='script'>J</mml:mi><mml:mo stretchy='true'>&#x000AF;</mml:mo></mml:mover></mml:mrow><mml:mo>.</mml:mo></mml:mover><mml:mi>i</mml:mi></mml:msub><mml:mo>&#x02212;</mml:mo><mml:msub><mml:mover><mml:mi mathvariant='script'>J</mml:mi><mml:mo>.</mml:mo></mml:mover><mml:mi>i</mml:mi></mml:msub><mml:mo stretchy='false'>)</mml:mo><mml:mo stretchy='false'>(</mml:mo><mml:msub><mml:mover accent='true'><mml:mi mathvariant='script'>J</mml:mi><mml:mo stretchy='true'>&#x000AF;</mml:mo></mml:mover><mml:mi>i</mml:mi></mml:msub><mml:mo>&#x02212;</mml:mo><mml:msub><mml:mi mathvariant='script'>J</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:msup><mml:mo stretchy='false'>)</mml:mo><mml:mtext>T</mml:mtext></mml:msup></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mtext>&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;</mml:mtext><mml:mo>=</mml:mo><mml:mo>&#x02212;</mml:mo><mml:mi>&#x003B4;</mml:mi><mml:mo stretchy='false'>(</mml:mo><mml:msub><mml:mover accent='true'><mml:mi mathvariant='script'>J</mml:mi><mml:mo stretchy='true'>&#x000AF;</mml:mo></mml:mover><mml:mi>i</mml:mi></mml:msub><mml:mover accent='true'><mml:mi>&#x003D5;</mml:mi><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo>&#x02212;</mml:mo><mml:msub><mml:mover><mml:mstyle mathvariant='bold' mathsize='normal'><mml:mi>p</mml:mi></mml:mstyle><mml:mo>.</mml:mo></mml:mover><mml:mi>i</mml:mi></mml:msub><mml:mo stretchy='false'>)</mml:mo><mml:msup><mml:mover accent='true'><mml:mi>&#x003D5;</mml:mi><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mtext>T</mml:mtext></mml:msup><mml:mo stretchy='false'>(</mml:mo><mml:msub><mml:mover accent='true'><mml:mi mathvariant='script'>J</mml:mi><mml:mo stretchy='true'>&#x000AF;</mml:mo></mml:mover><mml:mi>i</mml:mi></mml:msub><mml:mo>&#x02212;</mml:mo><mml:msub><mml:mi mathvariant='script'>J</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:msup><mml:mo stretchy='false'>)</mml:mo><mml:mtext>T</mml:mtext></mml:msup><mml:mo>&#x02212;</mml:mo><mml:msub><mml:mover><mml:mi mathvariant='script'>J</mml:mi><mml:mo>.</mml:mo></mml:mover><mml:mi>i</mml:mi></mml:msub><mml:mo stretchy='false'>(</mml:mo><mml:msub><mml:mover accent='true'><mml:mi mathvariant='script'>J</mml:mi><mml:mo stretchy='true'>&#x000AF;</mml:mo></mml:mover><mml:mi>i</mml:mi></mml:msub><mml:mo>&#x02212;</mml:mo><mml:msub><mml:mi mathvariant='script'>J</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:msup><mml:mo stretchy='false'>)</mml:mo><mml:mtext>T</mml:mtext></mml:msup></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mtext>&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;</mml:mtext><mml:mo>=</mml:mo><mml:mo>&#x02212;</mml:mo><mml:mi>&#x003B4;</mml:mi><mml:mo stretchy='false'>(</mml:mo><mml:msub><mml:mover accent='true'><mml:mi mathvariant='script'>J</mml:mi><mml:mo stretchy='true'>&#x000AF;</mml:mo></mml:mover><mml:mi>i</mml:mi></mml:msub><mml:mover accent='true'><mml:mi>&#x003D5;</mml:mi><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo>&#x02212;</mml:mo><mml:msub><mml:mi mathvariant='script'>J</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mover accent='true'><mml:mi>&#x003D5;</mml:mi><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo stretchy='false'>)</mml:mo><mml:msup><mml:mover accent='true'><mml:mi>&#x003D5;</mml:mi><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mtext>T</mml:mtext></mml:msup><mml:mo stretchy='false'>(</mml:mo><mml:msub><mml:mover accent='true'><mml:mi mathvariant='script'>J</mml:mi><mml:mo stretchy='true'>&#x000AF;</mml:mo></mml:mover><mml:mi>i</mml:mi></mml:msub><mml:mo>&#x02212;</mml:mo><mml:msub><mml:mi mathvariant='script'>J</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:msup><mml:mo stretchy='false'>)</mml:mo><mml:mtext>T</mml:mtext></mml:msup><mml:mo>&#x02212;</mml:mo><mml:msub><mml:mover><mml:mi mathvariant='script'>J</mml:mi><mml:mo>.</mml:mo></mml:mover><mml:mi>i</mml:mi></mml:msub><mml:mo stretchy='false'>(</mml:mo><mml:msub><mml:mover accent='true'><mml:mi mathvariant='script'>J</mml:mi><mml:mo stretchy='true'>&#x000AF;</mml:mo></mml:mover><mml:mi>i</mml:mi></mml:msub><mml:mo>&#x02212;</mml:mo><mml:msub><mml:mi mathvariant='script'>J</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:msup><mml:mo stretchy='false'>)</mml:mo><mml:mtext>T</mml:mtext></mml:msup></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mtext>&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;</mml:mtext><mml:mo>&#x02264;</mml:mo><mml:mo>&#x02212;</mml:mo><mml:mi>&#x003B4;</mml:mi><mml:mi>&#x003A0;</mml:mi><mml:mo stretchy='false'>(</mml:mo><mml:mover accent='true'><mml:mi>&#x003D5;</mml:mi><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:msup><mml:mover accent='true'><mml:mi>&#x003D5;</mml:mi><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mtext>T</mml:mtext></mml:msup><mml:mo stretchy='false'>)</mml:mo><mml:mo stretchy='false'>(</mml:mo><mml:msub><mml:mover accent='true'><mml:mi mathvariant='script'>J</mml:mi><mml:mo stretchy='true'>&#x000AF;</mml:mo></mml:mover><mml:mi>i</mml:mi></mml:msub><mml:mo>&#x02212;</mml:mo><mml:msub><mml:mi mathvariant='script'>J</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mo stretchy='false'>)</mml:mo><mml:mo stretchy='false'>(</mml:mo><mml:msub><mml:mover accent='true'><mml:mi mathvariant='script'>J</mml:mi><mml:mo stretchy='true'>&#x000AF;</mml:mo></mml:mover><mml:mi>i</mml:mi></mml:msub><mml:mo>&#x02212;</mml:mo><mml:msub><mml:mi mathvariant='script'>J</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:msup><mml:mo stretchy='false'>)</mml:mo><mml:mtext>T</mml:mtext></mml:msup><mml:mo>&#x02212;</mml:mo><mml:msub><mml:mover><mml:mi mathvariant='script'>J</mml:mi><mml:mo>.</mml:mo></mml:mover><mml:mi>i</mml:mi></mml:msub><mml:mo stretchy='false'>(</mml:mo><mml:msub><mml:mover accent='true'><mml:mi mathvariant='script'>J</mml:mi><mml:mo stretchy='true'>&#x000AF;</mml:mo></mml:mover><mml:mi>i</mml:mi></mml:msub><mml:mo>&#x02212;</mml:mo><mml:msub><mml:mi mathvariant='script'>J</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:msup><mml:mo stretchy='false'>)</mml:mo><mml:mtext>T</mml:mtext></mml:msup><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where <inline-formula><mml:math id="M96"><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> represents the <italic>i</italic>-th element of <inline-formula><mml:math id="M97"><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:math></inline-formula>, and <inline-formula><mml:math id="M98"><mml:mi>&#x003A0;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">T</mml:mtext></mml:mstyle></mml:mrow></mml:msup></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula> denotes the least eigenvalue of matrix <inline-formula><mml:math id="M99"><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">T</mml:mtext></mml:mstyle></mml:mrow></mml:msup></mml:math></inline-formula>. When the manipulator is tracking the feature, the value of <inline-formula><mml:math id="M100"><mml:mi>&#x003A0;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">T</mml:mtext></mml:mstyle></mml:mrow></mml:msup></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula> is always greater than zero. In this case, we substitute <inline-formula><mml:math id="M101"><mml:msub><mml:mrow><mml:mi>E</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> into the above equation, resulting in the following expression:</p>
<disp-formula id="E41"><mml:math id="M102"><mml:mtable columnalign='left'><mml:mtr><mml:mtd><mml:msub><mml:mover><mml:mi mathvariant='script'>V</mml:mi><mml:mo>.</mml:mo></mml:mover><mml:mi>i</mml:mi></mml:msub><mml:mo>&#x02264;</mml:mo><mml:mo>&#x02212;</mml:mo><mml:mi>&#x003B4;</mml:mi><mml:mi>&#x003A0;</mml:mi><mml:mo stretchy='false'>(</mml:mo><mml:mover accent='true'><mml:mi>&#x003D5;</mml:mi><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:msup><mml:mover accent='true'><mml:mi>&#x003D5;</mml:mi><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mtext>T</mml:mtext></mml:msup><mml:mo stretchy='false'>)</mml:mo><mml:msub><mml:mi>E</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:msubsup><mml:mi>E</mml:mi><mml:mi>i</mml:mi><mml:mtext>T</mml:mtext></mml:msubsup><mml:mo>&#x02212;</mml:mo><mml:msub><mml:mover><mml:mi mathvariant='script'>J</mml:mi><mml:mo>.</mml:mo></mml:mover><mml:mi>i</mml:mi></mml:msub><mml:msubsup><mml:mi>E</mml:mi><mml:mi>i</mml:mi><mml:mtext>T</mml:mtext></mml:msubsup></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mtext>&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;</mml:mtext><mml:mo>&#x02264;</mml:mo><mml:mo>&#x02212;</mml:mo><mml:mi>&#x003B4;</mml:mi><mml:mi>&#x003A0;</mml:mi><mml:mo stretchy='false'>(</mml:mo><mml:mover accent='true'><mml:mi>&#x003D5;</mml:mi><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:msup><mml:mover accent='true'><mml:mi>&#x003D5;</mml:mi><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mtext>T</mml:mtext></mml:msup><mml:mo stretchy='false'>)</mml:mo><mml:mo>&#x0007C;&#x0007C;</mml:mo><mml:msub><mml:mi>E</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mo>&#x0007C;</mml:mo><mml:msubsup><mml:mo>&#x0007C;</mml:mo><mml:mn>2</mml:mn><mml:mn>2</mml:mn></mml:msubsup><mml:mo>+</mml:mo><mml:mo>&#x0007C;&#x0007C;</mml:mo><mml:msub><mml:mover><mml:mi mathvariant='script'>J</mml:mi><mml:mo>.</mml:mo></mml:mover><mml:mi>i</mml:mi></mml:msub><mml:mo>&#x0007C;</mml:mo><mml:msub><mml:mo>&#x0007C;</mml:mo><mml:mn>2</mml:mn></mml:msub><mml:mo>&#x0007C;&#x0007C;</mml:mo><mml:msub><mml:mi>E</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mo>&#x0007C;</mml:mo><mml:msub><mml:mo>&#x0007C;</mml:mo><mml:mn>2</mml:mn></mml:msub></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mtext>&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;</mml:mtext><mml:mo>=</mml:mo><mml:mo>&#x0007C;&#x0007C;</mml:mo><mml:msub><mml:mi>E</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mo>&#x0007C;</mml:mo><mml:msub><mml:mo>&#x0007C;</mml:mo><mml:mn>2</mml:mn></mml:msub><mml:mo stretchy='false'>(</mml:mo><mml:mo>&#x0007C;&#x0007C;</mml:mo><mml:msub><mml:mover><mml:mi mathvariant='script'>J</mml:mi><mml:mo>.</mml:mo></mml:mover><mml:mi>i</mml:mi></mml:msub><mml:mo>&#x0007C;</mml:mo><mml:msub><mml:mo>&#x0007C;</mml:mo><mml:mn>2</mml:mn></mml:msub><mml:mo>&#x02212;</mml:mo><mml:mi>&#x003B4;</mml:mi><mml:mi>&#x003A0;</mml:mi><mml:mo stretchy='false'>(</mml:mo><mml:mover accent='true'><mml:mi>&#x003D5;</mml:mi><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:msup><mml:mover accent='true'><mml:mi>&#x003D5;</mml:mi><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mtext>T</mml:mtext></mml:msup><mml:mo stretchy='false'>)</mml:mo><mml:mo>&#x0007C;&#x0007C;</mml:mo><mml:msub><mml:mi>E</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mo>&#x0007C;</mml:mo><mml:msub><mml:mo>&#x0007C;</mml:mo><mml:mn>2</mml:mn></mml:msub><mml:mo stretchy='false'>)</mml:mo><mml:mo>.</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>For further analysis, we consider three cases based on the above equation:</p>
<list list-type="bullet">
<list-item><p>If <inline-formula><mml:math id="M103"><mml:mo>|</mml:mo><mml:mo>|</mml:mo><mml:msub><mml:mrow><mml:mi>E</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>|</mml:mo><mml:msub><mml:mrow><mml:mo>|</mml:mo></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>&#x0003E;</mml:mo><mml:mo>|</mml:mo><mml:mo>|</mml:mo><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>|</mml:mo><mml:msub><mml:mrow><mml:mo>|</mml:mo></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>/</mml:mo><mml:mi>&#x003B4;</mml:mi><mml:mi>&#x003A0;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">T</mml:mtext></mml:mstyle></mml:mrow></mml:msup></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula>, we observe <inline-formula><mml:math id="M104"><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">V</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>&#x0003C;</mml:mo><mml:mn>0</mml:mn></mml:math></inline-formula> and &#x1D4B1;<sub><italic>i</italic></sub>&#x0003E;0. This indicates that in this case, <italic>E</italic><sub><italic>i</italic></sub> converges until <inline-formula><mml:math id="M105"><mml:mo>|</mml:mo><mml:mo>|</mml:mo><mml:msub><mml:mrow><mml:mi>E</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>|</mml:mo><mml:msub><mml:mrow><mml:mo>|</mml:mo></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mo>|</mml:mo><mml:mo>|</mml:mo><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>|</mml:mo><mml:msub><mml:mrow><mml:mo>|</mml:mo></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>/</mml:mo><mml:mi>&#x003B4;</mml:mi><mml:mi>&#x003A0;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">T</mml:mtext></mml:mstyle></mml:mrow></mml:msup></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula>.</p></list-item>
<list-item><p>If <inline-formula><mml:math id="M106"><mml:mo>|</mml:mo><mml:mo>|</mml:mo><mml:msub><mml:mrow><mml:mi>E</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>|</mml:mo><mml:msub><mml:mrow><mml:mo>|</mml:mo></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mo>|</mml:mo><mml:mo>|</mml:mo><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>|</mml:mo><mml:msub><mml:mrow><mml:mo>|</mml:mo></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>/</mml:mo><mml:mi>&#x003B4;</mml:mi><mml:mi>&#x003A0;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">T</mml:mtext></mml:mstyle></mml:mrow></mml:msup></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula>, we find <inline-formula><mml:math id="M107"><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">V</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>&#x02264;</mml:mo><mml:mn>0</mml:mn></mml:math></inline-formula> and &#x1D4B1;<sub><italic>i</italic></sub>&#x0003E;0. This implies that <italic>E</italic><sub><italic>i</italic></sub> will continue to converge or remain at the state with <inline-formula><mml:math id="M108"><mml:mo>|</mml:mo><mml:mo>|</mml:mo><mml:msub><mml:mrow><mml:mi>E</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>|</mml:mo><mml:msub><mml:mrow><mml:mo>|</mml:mo></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mo>|</mml:mo><mml:mo>|</mml:mo><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>|</mml:mo><mml:msub><mml:mrow><mml:mo>|</mml:mo></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>/</mml:mo><mml:mi>&#x003B4;</mml:mi><mml:mi>&#x003A0;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">T</mml:mtext></mml:mstyle></mml:mrow></mml:msup></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula>.</p></list-item>
<list-item><p>If <inline-formula><mml:math id="M109"><mml:mo>|</mml:mo><mml:mo>|</mml:mo><mml:msub><mml:mrow><mml:mi>E</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>|</mml:mo><mml:msub><mml:mrow><mml:mo>|</mml:mo></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>&#x0003C;</mml:mo><mml:mo>|</mml:mo><mml:mo>|</mml:mo><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>|</mml:mo><mml:msub><mml:mrow><mml:mo>|</mml:mo></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>/</mml:mo><mml:mi>&#x003B4;</mml:mi><mml:mi>&#x003A0;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">T</mml:mtext></mml:mstyle></mml:mrow></mml:msup></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula>, we have two possibilities: either <inline-formula><mml:math id="M110"><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">V</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>&#x0003E;</mml:mo><mml:mn>0</mml:mn></mml:math></inline-formula> and &#x1D4B1;<sub><italic>i</italic></sub>&#x0003E; 0, or <inline-formula><mml:math id="M111"><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">V</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>&#x02264;</mml:mo><mml:mn>0</mml:mn></mml:math></inline-formula> and &#x1D4B1;<sub><italic>i</italic></sub>&#x0003E; 0. In the former possibility, the error will increase until ||<italic>E</italic><sub><italic>i</italic></sub>||<sub>2</sub>= <inline-formula><mml:math id="M112"><mml:mo>|</mml:mo><mml:mo>|</mml:mo><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>|</mml:mo><mml:msub><mml:mrow><mml:mo>|</mml:mo></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>/</mml:mo><mml:mi>&#x003B4;</mml:mi><mml:mi>&#x003A0;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">T</mml:mtext></mml:mstyle></mml:mrow></mml:msup></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula>. In the latter possibility, the error will continue to converge or remain constant.</p></list-item>
</list>
<p>Combining the above three cases, it can be summarized that <inline-formula><mml:math id="M113"><mml:munder class="msub"><mml:mrow><mml:mo class="qopname">lim</mml:mo></mml:mrow><mml:mrow><mml:mi>t</mml:mi><mml:mo>&#x02192;</mml:mo><mml:mo>&#x0002B;</mml:mo><mml:mi>&#x0221E;</mml:mi></mml:mrow></mml:munder><mml:mo>|</mml:mo><mml:mo>|</mml:mo><mml:msub><mml:mrow><mml:mi>E</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>|</mml:mo><mml:msub><mml:mrow><mml:mo>|</mml:mo></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>&#x02264;</mml:mo><mml:mo>|</mml:mo><mml:mo>|</mml:mo><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo class="qopname">&#x000B0;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>|</mml:mo><mml:msub><mml:mrow><mml:mo>|</mml:mo></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>/</mml:mo><mml:mi>&#x003B4;</mml:mi><mml:mi>&#x003A0;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo class="qopname">&#x000B0;</mml:mo></mml:mover><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo class="qopname">&#x000B0;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">T</mml:mtext></mml:mstyle></mml:mrow></mml:msup></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula>. Furthermore, it can be deduced that the Jacobian matrix error <inline-formula><mml:math id="M114"><mml:mi>E</mml:mi><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:mi mathvariant="script">J</mml:mi></mml:math></inline-formula> produced by RNN (<xref ref-type="disp-formula" rid="E38">16a</xref>) globally approach zero, given a sufficiently large value of &#x003B4;.</p>
<p><italic>Part 2:</italic> Proving control convergence.</p>
<p>According to the proof in <italic>Part 1</italic>, we take advantage of the LaSalle&#x00027;s invariant principle (Khalil, <xref ref-type="bibr" rid="B9">2001</xref>) again to conduct the convergence proof on <xref ref-type="disp-formula" rid="E39">Equation (16b)</xref>. In other words, the following formula is provided by replacing <inline-formula><mml:math id="M115"><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:math></inline-formula> and <inline-formula><mml:math id="M116"><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:math></inline-formula> with &#x1D4A5; and <inline-formula><mml:math id="M117"><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:math></inline-formula>:</p>
<disp-formula id="E42"><label>(17)</label><mml:math id="M118"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:msub><mml:mrow><mml:mi mathvariant="script">P</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x003B3;</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msup><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x02020;</mml:mi></mml:mrow></mml:msup><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mo>-</mml:mo><mml:mi>&#x003B1;</mml:mi><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:mi>&#x003B2;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mtext class="textrm" mathvariant="normal">d</mml:mtext></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>-</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>which is equivalent to <xref ref-type="disp-formula" rid="E23">Equation (13)</xref>. In consequence, the proof on the convergence of the pixel error <bold>p</bold>&#x02212;<bold>p</bold><sub>d</sub> in <xref ref-type="disp-formula" rid="E42">Equation (17)</xref> has been discussed in Theorem 1 and thus omitted here. The proof is complete.</p></sec></sec>
<sec id="s5">
<title>5 Simulation verifications</title>
<p>In this section, simulations are conducted on a Franka Emika Panda manipulator with 7 DOFs for completing a visual servoing task, which are synthesized by the proposed AIVS scheme (<xref ref-type="disp-formula" rid="E15">9</xref>) and the proposed DAIVS scheme. Note that the AIVS scheme (<xref ref-type="disp-formula" rid="E15">9</xref>) is able to drive the redundant manipulator to perform the visual servoing task with a given visual Jacobian matrix, and that, the DAIVS scheme can deal with the unknown situation in the robot system dynamically in the absence of the visual Jacobian matrix. For the simulations, this study utilizes a computer with an Intel Core i7-12700 processor and 32 GB RAM. The simulations are performed using MATLAB/Simulink software version R2022a.</p>
<p>First, some necessary information and parameter settings about the manipulator and camera structure are given below. The Franka Emika Panda manipulator is a 7-DOF redundant manipulator (Gaz et al., <xref ref-type="bibr" rid="B4">2019</xref>), with a camera mounted on its end-effector. In addition, we set <italic>l</italic> &#x0003D; 8 &#x000D7; 10<sup>&#x02212;3</sup> m, <italic>u</italic><sub>0</sub> &#x0003D; <italic>v</italic><sub>0</sub> &#x0003D; 256 pixel, <inline-formula><mml:math id="M119"><mml:msub><mml:mrow><mml:mi>a</mml:mi></mml:mrow><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:msub><mml:mrow><mml:mi>a</mml:mi></mml:mrow><mml:mrow><mml:mi>y</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>8</mml:mn><mml:mo>&#x000D7;</mml:mo><mml:mn>1</mml:mn><mml:msup><mml:mrow><mml:mn>0</mml:mn></mml:mrow><mml:mrow><mml:mn>4</mml:mn></mml:mrow></mml:msup><mml:mtext>&#x000A0;</mml:mtext><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">pixel/m</mml:mtext></mml:mstyle></mml:math></inline-formula>, and design &#x003BC; &#x0003D; &#x003BD; &#x0003D; 20 with <italic>z</italic> &#x0003D; 2, task execution time <italic>T</italic> &#x0003D; 20 s and <inline-formula><mml:math id="M120"><mml:msub><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">d</mml:mtext></mml:mstyle></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:msup><mml:mrow><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:mn>256</mml:mn><mml:mo>,</mml:mo><mml:mn>256</mml:mn></mml:mrow><mml:mo>]</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">T</mml:mtext></mml:mstyle></mml:mrow></mml:msup></mml:math></inline-formula> pixel. In addition, the joint limits are set as <inline-formula><mml:math id="M121"><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo>&#x0002B;</mml:mo></mml:mrow></mml:msup><mml:mo>=</mml:mo><mml:mo>-</mml:mo><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo>-</mml:mo></mml:mrow></mml:msup><mml:mo>=</mml:mo><mml:msub><mml:mrow><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:mn>2</mml:mn></mml:mrow><mml:mo>]</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mn>7</mml:mn><mml:mo>&#x000D7;</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula> rad/s<sup>2</sup>, <inline-formula><mml:math id="M122"><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo>&#x0002B;</mml:mo></mml:mrow></mml:msup><mml:mo>=</mml:mo><mml:mo>-</mml:mo><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo>-</mml:mo></mml:mrow></mml:msup><mml:mo>=</mml:mo><mml:msub><mml:mrow><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:mn>0</mml:mn><mml:mo>.</mml:mo><mml:mn>6</mml:mn></mml:mrow><mml:mo>]</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mn>7</mml:mn><mml:mo>&#x000D7;</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula> rad/s, <inline-formula><mml:math id="M123"><mml:msup><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mrow><mml:mo>&#x0002B;</mml:mo></mml:mrow></mml:msup><mml:mo>=</mml:mo><mml:mo>-</mml:mo><mml:msup><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mrow><mml:mo>-</mml:mo></mml:mrow></mml:msup><mml:mo>=</mml:mo><mml:msub><mml:mrow><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:mn>2</mml:mn><mml:mo>.</mml:mo><mml:mn>5</mml:mn></mml:mrow><mml:mo>]</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mn>7</mml:mn><mml:mo>&#x000D7;</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula> rad and &#x003B8; &#x0003D; [0.076]<sub>7 &#x000D7; 1</sub> rad. It is noteworthy that the parameters can be divided into two categories: structural parameters and convergence parameters. Structural parameters, such as <italic>l</italic>, <italic>u</italic><sub>0</sub>, <italic>v</italic><sub>0</sub>, <italic>a</italic><sub><italic>x</italic></sub>, and <italic>a</italic><sub><italic>y</italic></sub>, are dependent on the configuration of the visual servo system. On the other hand, the convergence parameters, namely, &#x003BC;, &#x003BD;, &#x003B1;, &#x003B2;, and &#x003B4;, play a vital role in adjusting the convergence behavior of RNN (<xref ref-type="disp-formula" rid="E38">16</xref>). These convergence parameters are set to values greater than zero, and their specific values can be determined through the trial and error method.</p>
<sec>
<title>5.1 Simulation of AIVS scheme</title>
<p>In this subsection, in order to prove the feasibility of the AIVS scheme (<xref ref-type="disp-formula" rid="E15">9</xref>), four simulations with different initial position states of the Franka Emika Panda manipulator are conducted to trace one desired feature with results shown in <xref ref-type="fig" rid="F3">Figure 3</xref>. Simply design &#x003B1; &#x0003D; 10 and &#x003B2; &#x0003D; 10. It would be readily discovered from <xref ref-type="fig" rid="F3">Figure 3A</xref> that four test examples from four different directions are straightforward to successfully pursue the desired pixel. With test 4 as an example, detailed joint data and pixel errors are shown in <xref ref-type="fig" rid="F3">Figure 3B</xref> through <xref ref-type="fig" rid="F3">Figure 3F</xref>, which illustrate that the joint angle, joint velocity, and joint acceleration are all kept inside the joint limit and that the pixel error can converge to zero within 5 s. The above descriptions well verify the validity of the proposed AIVS scheme (<xref ref-type="disp-formula" rid="E15">9</xref>) in the case of the known visual servoing Jacobian matrix to solve the visual servoing problem at the acceleration level.</p>






<fig id="F3" position="float">
<label>Figure 3</label>
<caption><p>Simulations on a Franka Emika Panda manipulator carrying out IBVS task synthesized by the AIVS scheme (<xref ref-type="disp-formula" rid="E15">9</xref>) assisted by RNN (<xref ref-type="disp-formula" rid="E23">13</xref>) with four test examples. <bold>(A)</bold> Profiles of feature trajectories and desired pixel point in four tests. <bold>(B)</bold> Profiles of joint acceleration in test 4. <bold>(C)</bold> Profiles of joint velocity in test 4. <bold>(D)</bold> Profiles of joint angle in test 4. <bold>(E)</bold> Profiles of pixel error in test 4. <bold>(F)</bold> Profiles of Euclidean norm of pixel error in test 4.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fnbot-18-1380430-g0003.tif"/>
</fig></sec>


<sec>
<title>5.2 Simulation of DAIVS scheme</title>
<p>This subsection indicates the feasibility and capability of the pixel error convergence of the DAIVS scheme aided with the RNN (<xref ref-type="disp-formula" rid="E38">16</xref>) by providing simulation results, as shown in <xref ref-type="fig" rid="F4">Figure 4</xref>. Furthermore, we choose &#x003B4; &#x0003D; 2 &#x000D7; 10<sup>4</sup>, &#x003B1; &#x0003D; 10 and &#x003B2; &#x0003D; 40. Notably, the virtual visual Jacobian matrix is exploited with random initial values, instead of the real visual Jacobian matrix to facilitate system operation. The end-effector of the robotic arm is oriented toward the object, as shown in <xref ref-type="fig" rid="F4">Figure 4A</xref>. In addition, the joint acceleration is shown in <xref ref-type="fig" rid="F4">Figure 4B</xref>, which is confined to the joint limit and maintain the normal operation. As shown in <xref ref-type="fig" rid="F4">Figure 4C</xref>, the Franka Emika Panda manipulator successfully traces the desired feature with pixel error converging to zero and maintaining the order of 10<sup>&#x02212;2</sup> pixel. As for the learning ability, <xref ref-type="fig" rid="F4">Figure 4D</xref> illustrates that the virtual robot manipulator can learn the movement of the real robot manipulator with the learning error approaching to zero in 0.05 s and maintaining the order of 10<sup>&#x02212;4</sup> pixel/s. In short, the simulation results in <xref ref-type="fig" rid="F4">Figure 4</xref> highlight the simultaneous learning and control ability of RNN (<xref ref-type="disp-formula" rid="E38">16</xref>).</p>










<fig id="F4" position="float">
<label>Figure 4</label>
<caption><p>Simulation results on a Franka Emika Panda manipulator with unknown structure carrying out the IBVS task synthesized by the DAIVS scheme assisted with RNN (<xref ref-type="disp-formula" rid="E38">16</xref>). <bold>(A)</bold> Profiles of the movement process. <bold>(B)</bold> Profiles of the joint acceleration. <bold>(C)</bold> Profiles of the pixel error. <bold>(D)</bold> Profiles of the Euclidean norm of learning error.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fnbot-18-1380430-g0004.tif"/>
</fig></sec>


<sec>
<title>5.3 Comparisons of proposed schemes</title>
<p>This subsection offers simulation comparison results between the proposed schemes aided with the corresponding RNNs and the IBVS method presented in the study by Zhang and Li (<xref ref-type="bibr" rid="B30">2018</xref>). In this regard, the RNN provided in the study by Zhang and Li (<xref ref-type="bibr" rid="B30">2018</xref>) is shown as</p>
<disp-formula id="E43"><label>(18)</label><mml:math id="M124"><mml:mrow><mml:mover accent='true'><mml:mi>&#x003D5;</mml:mi><mml:mo>&#x002D9;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:msub><mml:mstyle mathvariant='script'><mml:mi>P</mml:mi></mml:mstyle><mml:mi>&#x003B3;</mml:mi></mml:msub><mml:mo stretchy='false'>(</mml:mo><mml:mo>&#x02212;</mml:mo><mml:msub><mml:mi>&#x003BA;</mml:mi><mml:mn>1</mml:mn></mml:msub><mml:msup><mml:mi mathvariant='script'>J</mml:mi><mml:mtext>T</mml:mtext></mml:msup><mml:mo stretchy='false'>(</mml:mo><mml:mstyle mathvariant='bold' mathsize='normal'><mml:mi>p</mml:mi></mml:mstyle><mml:mo>&#x02212;</mml:mo><mml:msub><mml:mstyle mathvariant='bold' mathsize='normal'><mml:mi>p</mml:mi></mml:mstyle><mml:mtext>d</mml:mtext></mml:msub><mml:mo stretchy='false'>)</mml:mo><mml:mo>&#x02212;</mml:mo><mml:msub><mml:mi>&#x003BA;</mml:mi><mml:mn>2</mml:mn></mml:msub><mml:msup><mml:mi mathvariant='script'>J</mml:mi><mml:mtext>T</mml:mtext></mml:msup><mml:mstyle displaystyle='true'><mml:mrow><mml:msubsup><mml:mo>&#x0222B;</mml:mo><mml:mn>0</mml:mn><mml:mi>t</mml:mi></mml:msubsup><mml:mrow><mml:mo stretchy='false'>(</mml:mo><mml:mstyle mathvariant='bold' mathsize='normal'><mml:mi>p</mml:mi></mml:mstyle><mml:mo>&#x02212;</mml:mo><mml:msub><mml:mstyle mathvariant='bold' mathsize='normal'><mml:mi>p</mml:mi></mml:mstyle><mml:mtext>d</mml:mtext></mml:msub><mml:mo stretchy='false'>)</mml:mo></mml:mrow></mml:mrow></mml:mstyle><mml:mtext>d</mml:mtext><mml:mi>t</mml:mi><mml:mo stretchy='false'>)</mml:mo><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>
<p>where parameters &#x003BA;<sub>1</sub>&#x0003E;0 and &#x003BA;<sub>2</sub>&#x0003E;0 determine the rate of error convergence. It is worth pointing out that the IBVS method in the study by Zhang and Li (<xref ref-type="bibr" rid="B30">2018</xref>) assisted with RNN (<xref ref-type="disp-formula" rid="E43">18</xref>) is constructed from the viewpoint of the velocity level, and that, RNN (<xref ref-type="disp-formula" rid="E43">18</xref>) requires exact structural information &#x1D4A5; to maintain the normal operation.</p>
<p>In the first place, simulations are conducted on the Franka Emika Panda manipulator for IBVS task with <xref ref-type="fig" rid="F5">Figures 5A</xref>&#x02013;<xref ref-type="fig" rid="F5">D</xref> synthesized by RNN (<xref ref-type="disp-formula" rid="E23">13</xref>) and <xref ref-type="fig" rid="F5">Figures 5E</xref>&#x02013;<xref ref-type="fig" rid="F5">H</xref> synthesized by RNN (<xref ref-type="disp-formula" rid="E43">18</xref>). Notably, the results in <xref ref-type="fig" rid="F5">Figure 5</xref> are carried out on the premise of known structural information &#x1D4A5; with parameters &#x003BA;<sub>1</sub> &#x0003D; &#x003BA;<sub>2</sub> &#x0003D; 2, &#x003B1; &#x0003D; 10, and &#x003B2; &#x0003D; 10. As shown in <xref ref-type="fig" rid="F5">Figures 5A</xref>, <xref ref-type="fig" rid="F5">E</xref>, the manipulator&#x00027;s end-effector is controlled to point toward the object. In <xref ref-type="fig" rid="F5">Figure 5B</xref>, the joint acceleration generated by RNN (<xref ref-type="disp-formula" rid="E23">13</xref>) is safely confined within the joint limits, while the joint acceleration generated by RNN (<xref ref-type="disp-formula" rid="E43">18</xref>) exists a sudden change of &#x0007E;38 rad/s<sup>2</sup> in <xref ref-type="fig" rid="F5">Figure 5F</xref>, which may cause damage to the robot. Furthermore, in contrast to <xref ref-type="fig" rid="F5">Figure 5G</xref>, the joint velocity shown in <xref ref-type="fig" rid="F5">Figure 5C</xref> is smaller and exhibits smoother changes, making it more suitable for real-world scenarios. <xref ref-type="fig" rid="F5">Figures 5D</xref>, <xref ref-type="fig" rid="F5">H</xref> demonstrate that both RNN (<xref ref-type="disp-formula" rid="E23">13</xref>) and RNN (<xref ref-type="disp-formula" rid="E43">18</xref>) are able to quickly propel pixel errors to zero. Therefore, it is concluded from the above results that AIVS scheme (<xref ref-type="disp-formula" rid="E15">9</xref>) aided by RNN (<xref ref-type="disp-formula" rid="E23">13</xref>) is able to guarantee a better safety performance when controlling the manipulator.</p>
























<fig id="F5" position="float">
<label>Figure 5</label>
<caption><p>Simulation results on a Franka Emika Panda manipulator with accurate structure information carrying out IBVS task. <bold>(A)</bold> Profiles of motion process assisted with RNN (<xref ref-type="disp-formula" rid="E23">13</xref>). <bold>(B)</bold> Profiles of joint acceleration assisted with RNN (<xref ref-type="disp-formula" rid="E23">13</xref>). <bold>(C)</bold> Profiles of joint velocity assisted with RNN (<xref ref-type="disp-formula" rid="E23">13</xref>). <bold>(D)</bold> Profiles of pixel error assisted with RNN (<xref ref-type="disp-formula" rid="E23">13</xref>). <bold>(E)</bold> Profiles of motion process assisted with RNN (<xref ref-type="disp-formula" rid="E43">18</xref>). <bold>(F)</bold> Profiles of joint acceleration assisted with RNN (<xref ref-type="disp-formula" rid="E43">18</xref>). <bold>(G)</bold> Profiles of joint velocity assisted with RNN (<xref ref-type="disp-formula" rid="E43">18</xref>). <bold>(H)</bold> Profiles of pixel error assisted with RNN (<xref ref-type="disp-formula" rid="E43">18</xref>).</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fnbot-18-1380430-g0005.tif"/>
</fig>


<p>Beyond that, in the case of the unknown visual system, corresponding comparison simulations are driven by the DAIVS scheme aided with the RNN (<xref ref-type="disp-formula" rid="E38">16</xref>) and the IBVS method in the study by Zhang and Li (<xref ref-type="bibr" rid="B30">2018</xref>) assisted with RNN (<xref ref-type="disp-formula" rid="E43">18</xref>). The results are shown in <xref ref-type="fig" rid="F6">Figure 6</xref> with parameters &#x003BA;<sub>1</sub> &#x0003D; &#x003BA;<sub>2</sub> &#x0003D; 2, &#x003B1; &#x0003D; 10, &#x003B2; &#x0003D; 40, and &#x003B4; &#x0003D; 2 &#x000D7; 10<sup>4</sup>. To simulate the unknown visual system, <inline-formula><mml:math id="M125"><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:math></inline-formula> in <xref ref-type="disp-formula" rid="E38">Equation (16)</xref> and &#x1D4A5; in <xref ref-type="disp-formula" rid="E43">Equation (18)</xref> are random matrices of constants with the absolute value of each element &#x0003C; 100. <xref ref-type="fig" rid="F6">Figures 6A</xref>, <xref ref-type="fig" rid="F6">B</xref> well embody that, when encountering unknown structural information, the DAIVS scheme assisted with RNN (<xref ref-type="disp-formula" rid="E38">16</xref>) controls the Franka Emika Panda manipulator to preferably complete IBVS task with the pixel error converging to zero. Nevertheless, the generated joint velocity in <xref ref-type="fig" rid="F6">Figure 6C</xref> changes dramatically within the joint limit in a mess. Even worse, the pixel error driven by RNN (<xref ref-type="disp-formula" rid="E43">18</xref>) does not converge and maintain a diffused state, which indicates the failure of the IBVS task. In conclusion, the proposed DAIVS scheme is able to deal with the unknown structural information in the robot system and fulfill the visual servo control with simultaneous learning and control performance.</p>






<fig id="F6" position="float">
<label>Figure 6</label>
<caption><p>Simulation results on a Franka Emika Panda manipulator carrying out IBVS task with unknown structure. <bold>(A)</bold> Profiles of joint velocity assisted with RNN (<xref ref-type="disp-formula" rid="E38">16</xref>). <bold>(B)</bold> Profiles of pixel error assisted with RNN (<xref ref-type="disp-formula" rid="E38">16</xref>). <bold>(C)</bold> Profiles of joint velocity assisted with RNN (<xref ref-type="disp-formula" rid="E43">18</xref>). <bold>(D)</bold> Profiles of pixel error assisted with RNN (<xref ref-type="disp-formula" rid="E43">18</xref>).</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fnbot-18-1380430-g0006.tif"/>
</fig>


<p>Furthermore, comparison results among different existing approaches (Hashimoto et al., <xref ref-type="bibr" rid="B5">1991</xref>; Keshmiri et al., <xref ref-type="bibr" rid="B8">2014</xref>; Zhang et al., <xref ref-type="bibr" rid="B32">2017</xref>; Van et al., <xref ref-type="bibr" rid="B21">2018</xref>; Zhang and Li, <xref ref-type="bibr" rid="B30">2018</xref>; Anwar et al., <xref ref-type="bibr" rid="B2">2019</xref>; Li et al., <xref ref-type="bibr" rid="B11">2020</xref>; Zhu et al., <xref ref-type="bibr" rid="B35">2022</xref>) for visual servoing of robot manipulators are presented in <xref ref-type="table" rid="T1">Table 1</xref>. It is worth emphasizing that, compared with the prior art, the proposed RNN (<xref ref-type="disp-formula" rid="E23">13</xref>) and RNN (<xref ref-type="disp-formula" rid="E38">16</xref>) are the first acceleration-level work, considering the multiple levels of joint constraints, and RNN (<xref ref-type="disp-formula" rid="E38">16</xref>) is the first study to dispose the unknown situations in the robot visual system with simultaneous learning and control ability. As a result, the above two points are the innovative contributions of this study.</p>
<table-wrap position="float" id="T1">
<label>Table 1</label>
<caption><p>Comparisons among different approaches for visual servoing of robot manipulators.</p></caption>
<table frame="box" rules="all">
<thead>
<tr style="background-color:#919498;color:#ffffff">
<th/>
<th valign="top" align="left"><bold>Visual</bold></th>
<th valign="top" align="center"><bold>Scheme</bold></th>
<th valign="top" align="center"><bold>Velocity</bold></th>
<th valign="top" align="center"><bold>Acceleration</bold></th>
<th valign="top" align="center"><bold>Structure</bold></th>
<th valign="top" align="center"><bold>Jacobian matrix</bold></th>
</tr>
<tr style="background-color:#919498;color:#ffffff">
<th/>
<th valign="top" align="left"><bold>servoing</bold></th>
<th valign="top" align="center"><bold>level</bold></th>
<th valign="top" align="center"><bold>constraints</bold></th>
<th valign="top" align="center"><bold>constraints</bold></th>
<th valign="top" align="center"><bold>information</bold></th>
<th valign="top" align="center"><bold>learning</bold></th>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="left">RNN (<xref ref-type="disp-formula" rid="E23">13</xref>)</td>
<td valign="top" align="left">Yes</td>
<td valign="top" align="center">Acceleration</td>
<td valign="top" align="center">Yes</td>
<td valign="top" align="center">Yes</td>
<td valign="top" align="center">Unnecessary</td>
<td valign="top" align="center">Yes</td>
</tr> <tr>
<td valign="top" align="left">RNN (<xref ref-type="disp-formula" rid="E38">16</xref>)</td>
<td valign="top" align="left">Yes</td>
<td valign="top" align="center">Acceleration</td>
<td valign="top" align="center">Yes</td>
<td valign="top" align="center">Yes</td>
<td valign="top" align="center">Necessary</td>
<td valign="top" align="center">No</td>
</tr> <tr>
<td valign="top" align="left">Van et al. (<xref ref-type="bibr" rid="B21">2018</xref>)</td>
<td valign="top" align="left">Yes</td>
<td valign="top" align="center">Velocity</td>
<td valign="top" align="center">No</td>
<td valign="top" align="center">No</td>
<td valign="top" align="center">Necessary</td>
<td valign="top" align="center">No</td>
</tr> <tr>
<td valign="top" align="left">Hashimoto et al. (<xref ref-type="bibr" rid="B5">1991</xref>)</td>
<td valign="top" align="left">Yes</td>
<td valign="top" align="center">Velocity</td>
<td valign="top" align="center">No</td>
<td valign="top" align="center">No</td>
<td valign="top" align="center">Necessary</td>
<td valign="top" align="center">No</td>
</tr> <tr>
<td valign="top" align="left">Zhang et al. (<xref ref-type="bibr" rid="B32">2017</xref>)</td>
<td valign="top" align="left">Yes</td>
<td valign="top" align="center">Velocity</td>
<td valign="top" align="center">Yes</td>
<td valign="top" align="center">No</td>
<td valign="top" align="center">Necessary</td>
<td valign="top" align="center">No</td>
</tr> <tr>
<td valign="top" align="left">Zhang and Li (<xref ref-type="bibr" rid="B30">2018</xref>)</td>
<td valign="top" align="left">Yes</td>
<td valign="top" align="center">Velocity</td>
<td valign="top" align="center">Yes</td>
<td valign="top" align="center">No</td>
<td valign="top" align="center">Necessary</td>
<td valign="top" align="center">No</td>
</tr> <tr>
<td valign="top" align="left">Li et al. (<xref ref-type="bibr" rid="B11">2020</xref>)</td>
<td valign="top" align="left">Yes</td>
<td valign="top" align="center">Velocity</td>
<td valign="top" align="center">Yes</td>
<td valign="top" align="center">No</td>
<td valign="top" align="center">Necessary</td>
<td valign="top" align="center">No</td>
</tr> <tr>
<td valign="top" align="left">Keshmiri et al. (<xref ref-type="bibr" rid="B8">2014</xref>)</td>
<td valign="top" align="left">Yes</td>
<td valign="top" align="center">Acceleration</td>
<td valign="top" align="center">No</td>
<td valign="top" align="center">No</td>
<td valign="top" align="center">Necessary</td>
<td valign="top" align="center">No</td>
</tr> <tr>
<td valign="top" align="left">Anwar et al. (<xref ref-type="bibr" rid="B2">2019</xref>)</td>
<td valign="top" align="left">Yes</td>
<td valign="top" align="center">Acceleration</td>
<td valign="top" align="center">No</td>
<td valign="top" align="center">No</td>
<td valign="top" align="center">Necessary</td>
<td valign="top" align="center">No</td>
</tr> <tr>
<td valign="top" align="left">Zhu et al. (<xref ref-type="bibr" rid="B35">2022</xref>)</td>
<td valign="top" align="left">Yes</td>
<td valign="top" align="center">Torque</td>
<td valign="top" align="center">No</td>
<td valign="top" align="center">No</td>
<td valign="top" align="center">Necessary</td>
<td valign="top" align="center">No</td>
</tr></tbody>
</table>
</table-wrap>

</sec></sec>
<sec id="s6">
<title>6 Experiments on real manipulators</title>
<p>To verify the effectiveness and practicability of the proposed DAIVS scheme, physical experiments on a real manipulator are conducted in this section, which are driven by the DAIVS scheme aided with RNN (<xref ref-type="disp-formula" rid="E38">16</xref>). Specifically, the experiments essentially rely on C&#x0002B;&#x0002B; and the visual servoing platform (ViSP) for embedding algorithms and control (Marchand et al., <xref ref-type="bibr" rid="B15">2005</xref>), which are built on ubuntu 16.04 LTS operating system. In addition, the experiment platform consists of a Franka Emika Panda manipulator, an Intel RealSense Camera D435i, a personal computer, and an AprilTag (target). It is worth mentioning that the acceleration control commands generated by the proposed RNN (<xref ref-type="disp-formula" rid="E38">16</xref>) are transmitted in a discrete form with a frequency of 1,000 Hz, and parameter settings of RNN (<xref ref-type="disp-formula" rid="E38">16</xref>) are designed as follows. We choose &#x003B1; &#x0003D; 10, &#x003B2; &#x0003D; 10, &#x003B4; &#x0003D; 10<sup>6</sup>, &#x003BC; &#x0003D; &#x003BD; &#x0003D; 20, <inline-formula><mml:math id="M126"><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo>&#x0002B;</mml:mo></mml:mrow></mml:msup><mml:mo>=</mml:mo><mml:mo>-</mml:mo><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x000A8;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo>-</mml:mo></mml:mrow></mml:msup><mml:mo>=</mml:mo><mml:msup><mml:mrow><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:mn>15</mml:mn><mml:mo>,</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:mn>7</mml:mn><mml:mo>.</mml:mo><mml:mn>5</mml:mn><mml:mo>,</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:mn>10</mml:mn><mml:mo>,</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:mn>12</mml:mn><mml:mo>.</mml:mo><mml:mn>5</mml:mn><mml:mo>,</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:mn>15</mml:mn><mml:mo>,</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:mn>20</mml:mn><mml:mo>,</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:mn>20</mml:mn></mml:mrow><mml:mo>]</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">T</mml:mtext></mml:mstyle></mml:mrow></mml:msup></mml:math></inline-formula> rad/s<sup>2</sup>, <inline-formula><mml:math id="M127"><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo>&#x0002B;</mml:mo></mml:mrow></mml:msup><mml:mo>=</mml:mo><mml:mo>-</mml:mo><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mi>&#x003D5;</mml:mi></mml:mrow><mml:mo>&#x002D9;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo>-</mml:mo></mml:mrow></mml:msup><mml:mo>=</mml:mo><mml:msup><mml:mrow><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:mn>2</mml:mn><mml:mo>.</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mn>2</mml:mn><mml:mo>.</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mn>2</mml:mn><mml:mo>.</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mn>2</mml:mn><mml:mo>.</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mn>2</mml:mn><mml:mo>.</mml:mo><mml:mn>6</mml:mn><mml:mo>,</mml:mo><mml:mn>2</mml:mn><mml:mo>.</mml:mo><mml:mn>6</mml:mn><mml:mo>,</mml:mo><mml:mn>2</mml:mn><mml:mo>.</mml:mo><mml:mn>6</mml:mn></mml:mrow><mml:mo>]</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">T</mml:mtext></mml:mstyle></mml:mrow></mml:msup></mml:math></inline-formula> rad/s, &#x003D5;<sup>&#x0002B;</sup> &#x0003D; [2.8, 1.7, 2.8, &#x02212;0.1, 2.9, 3.7, 2.8]<sup>T</sup> rad, &#x003D5;<sup>&#x02212;</sup> &#x0003D; [&#x02212;2.8, &#x02212;1.7, &#x02212;2.8, &#x02212;3.0, &#x02212;2.8, &#x02212;0, &#x02212;2.8]<sup>T</sup> rad, and <inline-formula><mml:math id="M128"><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="script">J</mml:mi></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mn>0</mml:mn></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mi mathvariant="script">J</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mn>0</mml:mn></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula>. As for the parameter settings of the camera and pixel coordinates, they can be directly referenced to ViSP (Marchand et al., <xref ref-type="bibr" rid="B15">2005</xref>). Different from the previous simulations, the physics experiments set the target as an AprilTag containing four features. As a result, the physical parameters associated with the features are expanded to 8 instead of 2.</p>
<p>Experiment results on the Franka Emika Panda manipulator tracking the fixed target are shown in <xref ref-type="fig" rid="F7">Figures 7</xref>, <xref ref-type="fig" rid="F8">8</xref> with <inline-formula><mml:math id="M129"><mml:msub><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>p</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">d</mml:mtext></mml:mstyle></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:msup><mml:mrow><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:mo>-</mml:mo><mml:mn>0</mml:mn><mml:mo>.</mml:mo><mml:mn>06</mml:mn><mml:mo>,</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:mo>-</mml:mo><mml:mn>0</mml:mn><mml:mo>.</mml:mo><mml:mn>06</mml:mn><mml:mo>,</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:mn>0</mml:mn><mml:mo>.</mml:mo><mml:mn>06</mml:mn><mml:mo>,</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:mo>-</mml:mo><mml:mn>0</mml:mn><mml:mo>.</mml:mo><mml:mn>06</mml:mn><mml:mo>,</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:mn>0</mml:mn><mml:mo>.</mml:mo><mml:mn>06</mml:mn><mml:mo>,</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:mn>0</mml:mn><mml:mo>.</mml:mo><mml:mn>06</mml:mn><mml:mo>,</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:mo>-</mml:mo><mml:mn>0</mml:mn><mml:mo>.</mml:mo><mml:mn>06</mml:mn><mml:mo>,</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:mn>0</mml:mn><mml:mo>.</mml:mo><mml:mn>06</mml:mn></mml:mrow><mml:mo>]</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">T</mml:mtext></mml:mstyle></mml:mrow></mml:msup></mml:math></inline-formula> m for the given task in the camera system. It is worth mentioning that the robot manipulator adjusts the joint state to recognize and approach the target, and when the pixel error reaches the order of 10<sup>&#x02212;5</sup> pixel, the task automatically completes. It is important that the whole process of learning and control does not involve the real Jacobian matrix to simulate the situation of the unknown structure. In <xref ref-type="fig" rid="F7">Figures 7A</xref>, <xref ref-type="fig" rid="F7">B</xref>, the initial and final states of the manipulator and camera indicate that the visual servoing task is successfully realized by the DAIVS scheme with execution time of 1.25 s. Specifically, the joint acceleration in <xref ref-type="fig" rid="F7">Figure 7C</xref> varies normally within the joint constraints. In the meantime, the tracking errors &#x003BE; of four features are presented in <xref ref-type="fig" rid="F7">Figure 7D</xref>, which illustrate the precise control ability of the DAIVS scheme with global convergence to zero.</p>














<fig id="F7" position="float">
<label>Figure 7</label>
<caption><p>Physical experiments on a Franka Emika Panda manipulator assisted with RNN (<xref ref-type="disp-formula" rid="E38">16</xref>) for carrying out IBVS task with a fixed target. <bold>(A)</bold> Initial states of the manipulator and camera. <bold>(B)</bold> Final states of the manipulator and camera. <bold>(C)</bold> Profiles of joint acceleration. <bold>(D)</bold> Profiles of tracking error.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fnbot-18-1380430-g0007.tif"/>
</fig>

<fig id="F8" position="float">
<label>Figure 8</label>
<caption><p>Physical experiments on a Franka Emika Panda manipulator assisted with RNN (<xref ref-type="disp-formula" rid="E38">16</xref>) for carrying out IBVS task with a moving target.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fnbot-18-1380430-g0008.tif"/>
</fig>



<p>Beyond that, experiments on the Franka Emika Panda manipulator tracking the moving target are conducted to demonstrate the feasibility of the DAIVS scheme. In <xref ref-type="fig" rid="F8">Figure 8</xref>, the AprilTag is moved artificially by the hand toward the left and right and simultaneously the manipulator constantly adjusts joint states to achieve the characteristics of real-time visual tracking. More vividly, the experiment videos corresponding to <xref ref-type="fig" rid="F7">Figures 7</xref>, <xref ref-type="fig" rid="F8">8</xref> are available at <ext-link ext-link-type="uri" xlink:href="https://youtu.be/6uw35bidVcw">https://youtu.be/6uw35bidVcw</ext-link>.</p></sec>
<sec sec-type="conclusions" id="s7">
<title>7 Conclusion</title>
<p>This study has proposed an AIVS scheme for robot manipulators, taking into account joint limits at multiple levels. On this basis, incorporating data-driven techniques, a DAIVS scheme has been proposed to handle potential unknown situations in the robot visual system. Furthermore, RNNs have been exploited to generate the online solution corresponding to the proposed schemes with theoretical analyses, demonstrating the simultaneous learning and control ability of the proposed DAIVS scheme. Then, numerous simulations and experiments have been carried out on a Franka Emika Panda manipulator to track the desired feature. The results validate the theoretical analyses, demonstrate the feasibility of the AIVS scheme, and showcase the fast convergence and robustness of the DAIVS scheme. Compared with the method in the study by Zhang and Li (<xref ref-type="bibr" rid="B30">2018</xref>), the DAIVS scheme exhibits superior learning capability and achieves visual servoing control with the unknown Jacobian matrix.</p>
<p>In summary, this study provides a data-driven approach for the precise manipulation of robots in IBVS tasks, addressing unknown situations that could affect the robot&#x00027;s Jacobian matrix. In the future, we aim to expand our research to incorporate dynamic factors, utilizing joint torque as control signals and considering dynamic uncertainties.</p></sec>
<sec sec-type="data-availability" id="s8">
<title>Data availability statement</title>
<p>The original contributions presented in the study are included in the article/supplementary material, further inquiries can be directed to the corresponding author.</p></sec>
<sec sec-type="author-contributions" id="s9">
<title>Author contributions</title>
<p>LW: Investigation, Methodology, Resources, Software, Writing &#x02013; original draft. ZX: Data curation, Investigation, Writing &#x02013; review &#x00026; editing.</p></sec>
</body>
<back>
<sec sec-type="funding-information" id="s10">
<title>Funding</title>
<p>The author(s) declare that financial support was received for the research, authorship, and/or publication of this article. This work was supported by the Key Laboratory of Tibetan Information Processing, Ministry of Education, under Grant 2024-Z-002, and supported by the Supercomputing Center of Lanzhou University.</p>
</sec>
<sec sec-type="COI-statement" id="conf1">
<title>Conflict of interest</title>
<p>The authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest.</p>
</sec>
<sec sec-type="disclaimer" id="s11">
<title>Publisher&#x00027;s note</title>
<p>All claims expressed in this article are solely those of the authors and do not necessarily represent those of their affiliated organizations, or those of the publisher, the editors and the reviewers. Any product that may be evaluated in this article, or claim that may be made by its manufacturer, is not guaranteed or endorsed by the publisher.</p>
</sec>
<ref-list>
<title>References</title>
<ref id="B1">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Agarwal</surname> <given-names>S.</given-names></name> <name><surname>Akella</surname> <given-names>S.</given-names></name></person-group> (<year>2024</year>). <article-title>Line coverage with multiple robots: algorithms and experiments</article-title>. <source>IEEE Transact. Robot</source>. <volume>40</volume>, <fpage>1664</fpage>&#x02013;<lpage>1683</lpage>. <pub-id pub-id-type="doi">10.1109/TRO.2024.3355802</pub-id></citation>
</ref>
<ref id="B2">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Anwar</surname> <given-names>A.</given-names></name> <name><surname>Lin</surname> <given-names>W.</given-names></name> <name><surname>Deng</surname> <given-names>X.</given-names></name> <name><surname>Qiu</surname> <given-names>J.</given-names></name> <name><surname>Gao</surname> <given-names>H.</given-names></name></person-group> (<year>2019</year>). <article-title>Quality inspection of remote radio units using depth-free image-based visual servo with acceleration command</article-title>. <source>IEEE Transact. Ind. Electron</source>. <volume>66</volume>, <fpage>8214</fpage>&#x02013;<lpage>8223</lpage>. <pub-id pub-id-type="doi">10.1109/TIE.2018.2881948</pub-id></citation>
</ref>
<ref id="B3">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Cigliano</surname> <given-names>P.</given-names></name> <name><surname>Lippiello</surname> <given-names>V.</given-names></name> <name><surname>Ruggiero</surname> <given-names>F.</given-names></name> <name><surname>Siciliano</surname> <given-names>B.</given-names></name></person-group> (<year>2015</year>). <article-title>Robotic ball catching with an eye-in-hand single-camera system</article-title>. <source>IEEE Transact. Cont. Syst. Technol</source>. <volume>23</volume>, <fpage>1657</fpage>&#x02013;<lpage>1671</lpage>. <pub-id pub-id-type="doi">10.1109/TCST.2014.2380175</pub-id></citation>
</ref>
<ref id="B4">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Gaz</surname> <given-names>C.</given-names></name> <name><surname>Cognetti</surname> <given-names>M.</given-names></name> <name><surname>Oliva</surname> <given-names>A.</given-names></name> <name><surname>Robuffo Giordano</surname> <given-names>P.</given-names></name> <name><surname>De Luca</surname> <given-names>A.</given-names></name></person-group> (<year>2019</year>). <article-title>Dynamic identification of the Franka Emika Panda robot with retrieval of feasible parameters using penalty-based optimization</article-title>. <source>IEEE Robot. Automat. Lett</source>. <volume>4</volume>, <fpage>4147</fpage>&#x02013;<lpage>4154</lpage>. <pub-id pub-id-type="doi">10.1109/LRA.2019.2931248</pub-id></citation>
</ref>
<ref id="B5">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Hashimoto</surname> <given-names>K.</given-names></name> <name><surname>Kimoto</surname> <given-names>T.</given-names></name> <name><surname>Ebine</surname> <given-names>T.</given-names></name> <name><surname>Kimura</surname> <given-names>H.</given-names></name></person-group> (<year>1991</year>). <article-title>&#x0201C;Manipulator control with image-based visual servo,&#x0201D;</article-title> in <source>Proceedings IEEE International Conference on Robotics and Automation</source> (<publisher-loc>New York, NY</publisher-loc>: <publisher-name>Sacramento, CA: IEEE</publisher-name>), <fpage>2267</fpage>&#x02013;<lpage>2271</lpage>.</citation>
</ref>
<ref id="B6">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Jin</surname> <given-names>P.</given-names></name> <name><surname>Lin</surname> <given-names>Y.</given-names></name> <name><surname>Song</surname> <given-names>Y.</given-names></name> <name><surname>Li</surname> <given-names>T.</given-names></name> <name><surname>Yang</surname> <given-names>W.</given-names></name></person-group> (<year>2023</year>). <article-title>Vision-force-fused curriculum learning for robotic contact-rich assembly tasks</article-title>. <source>Front. Neurorobot</source>. <volume>17</volume>:<fpage>1280773</fpage>. <pub-id pub-id-type="doi">10.3389/fnbot.2023.1280773</pub-id><pub-id pub-id-type="pmid">37867617</pub-id></citation></ref>
<ref id="B7">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Jin</surname> <given-names>L.</given-names></name> <name><surname>Liu</surname> <given-names>L.</given-names></name> <name><surname>Wang</surname> <given-names>X.</given-names></name> <name><surname>Shang</surname> <given-names>M.</given-names></name> <name><surname>Wang</surname> <given-names>F.-Y.</given-names></name></person-group> (<year>2024</year>). <article-title>Physical-informed neural network for MPC-based trajectory tracking of vehicles with noise considered</article-title>. <source>IEEE Transact. Intell. Vehicl</source>. <pub-id pub-id-type="doi">10.1109/TIV.2024.3358229</pub-id></citation>
</ref>
<ref id="B8">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Keshmiri</surname> <given-names>M.</given-names></name> <name><surname>Xie</surname> <given-names>W.-F.</given-names></name> <name><surname>Mohebbi</surname> <given-names>A.</given-names></name></person-group> (<year>2014</year>). <article-title>Augmented image-based visual servoing of a manipulator using acceleration command</article-title>. <source>IEEE Transact. Ind. Electron</source>. <volume>61</volume>, <fpage>5444</fpage>&#x02013;<lpage>5452</lpage>. <pub-id pub-id-type="doi">10.1109/TIE.2014.2300048</pub-id></citation>
</ref>
<ref id="B9">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Khalil</surname> <given-names>H. K.</given-names></name></person-group> (<year>2001</year>). <source>Nonlinear Systems</source>. <publisher-loc>Englewood Cliffs, NJ</publisher-loc>: <publisher-name>Prentice Hall</publisher-name>.</citation>
</ref>
<ref id="B10">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Li</surname> <given-names>S.</given-names></name> <name><surname>Shao</surname> <given-names>Z.</given-names></name> <name><surname>Guan</surname> <given-names>Y.</given-names></name></person-group> (<year>2019</year>). <article-title>A dynamic neural network approach for efficient control of manipulators</article-title>. <source>IEEE Transact. Syst. Man Cybernet. Syst</source>. <volume>49</volume>, <fpage>932</fpage>&#x02013;<lpage>941</lpage>. <pub-id pub-id-type="doi">10.1109/TSMC.2017.2690460</pub-id></citation>
</ref>
<ref id="B11">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Li</surname> <given-names>W.</given-names></name> <name><surname>Chiu</surname> <given-names>P. W. Y.</given-names></name> <name><surname>Li</surname> <given-names>Z.</given-names></name></person-group> (<year>2020</year>). <article-title>An accelerated finite-time convergent neural network for visual servoing of a flexible surgical endoscope with physical and RCM constraints</article-title>. <source>IEEE Transact. Neural Netw. Learn. Syst</source>. <volume>31</volume>, <fpage>5272</fpage>&#x02013;<lpage>5284</lpage>. <pub-id pub-id-type="doi">10.1109/TNNLS.2020.2965553</pub-id></citation>
</ref>
<ref id="B12">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Liang</surname> <given-names>X.</given-names></name> <name><surname>Wang</surname> <given-names>H.</given-names></name> <name><surname>Liu</surname> <given-names>Y.-H.</given-names></name> <name><surname>Chen</surname> <given-names>W.</given-names></name> <name><surname>Jing</surname> <given-names>Z.</given-names></name></person-group> (<year>2018</year>). <article-title>Image-based position control of mobile robots with a completely unknown fixed camera</article-title>. <source>IEEE Trans. Automat. Contr</source>. <volume>63</volume>, <fpage>3016</fpage>&#x02013;<lpage>3023</lpage>. <pub-id pub-id-type="doi">10.1109/TAC.2018.2793458</pub-id></citation>
</ref>
<ref id="B13">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Liufu</surname> <given-names>Y.</given-names></name> <name><surname>Jin</surname> <given-names>L.</given-names></name> <name><surname>Shang</surname> <given-names>M.</given-names></name> <name><surname>Wang</surname> <given-names>X.</given-names></name> <name><surname>Wang</surname> <given-names>F.-Y.</given-names></name></person-group> (<year>2024</year>). <article-title>ACP-incorporated perturbation-resistant neural dynamics controller for autonomous vehicles</article-title>. <source>IEEE Transact. Intelli. Vehicl</source>. <pub-id pub-id-type="doi">10.1109/TIV.2023.3348632</pub-id></citation>
</ref>
<ref id="B14">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Malis</surname> <given-names>E.</given-names></name> <name><surname>Mezouar</surname> <given-names>Y.</given-names></name> <name><surname>Rives</surname> <given-names>P.</given-names></name></person-group> (<year>2010</year>). <article-title>Robustness of image-based visual servoing with a calibrated camera in the presence of uncertainties in the three-dimensional structure</article-title>. <source>IEEE Transact. Robot</source>. <volume>26</volume>, <fpage>112</fpage>&#x02013;<lpage>120</lpage>. <pub-id pub-id-type="doi">10.1109/TRO.2009.2033332</pub-id></citation>
</ref>
<ref id="B15">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Marchand</surname> <given-names>E.</given-names></name> <name><surname>Spindler</surname> <given-names>F.</given-names></name> <name><surname>Chaumette</surname> <given-names>F.</given-names></name></person-group> (<year>2005</year>). <article-title>ViSP for visual servoing: a generic software platform with a wide class of robot control skills</article-title>. <source>IEEE Robot. Automat. Mag</source>. <volume>12</volume>, <fpage>40</fpage>&#x02013;<lpage>52</lpage>. <pub-id pub-id-type="doi">10.1109/MRA.2005.1577023</pub-id></citation>
</ref>
<ref id="B16">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Na</surname> <given-names>J.</given-names></name> <name><surname>Yang</surname> <given-names>J.</given-names></name> <name><surname>Wang</surname> <given-names>S.</given-names></name> <name><surname>Gao</surname> <given-names>G.</given-names></name> <name><surname>Yang</surname> <given-names>C.</given-names></name></person-group> (<year>2021</year>). Unknown dynamics estimator-based output-feedback control for nonlinear pure-feedback systems <italic>IEEE Transact. Syst. Man Cybernet. Syst</italic>. <volume>51</volume>, <fpage>3832</fpage>&#x02013;<lpage>3843</lpage>. <pub-id pub-id-type="doi">10.1109/TSMC.2019.2931627</pub-id></citation>
</ref>
<ref id="B17">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Park</surname> <given-names>D.-H.</given-names></name> <name><surname>Kwon</surname> <given-names>J.-H.</given-names></name> <name><surname>Ha</surname> <given-names>I.-J.</given-names></name></person-group> (<year>2012</year>). <article-title>Novel position-based visual servoing approach to robust global stability under field-of-view constraint</article-title>. <source>IEEE Transact. Ind. Electron</source>. <volume>59</volume>, <fpage>4735</fpage>&#x02013;<lpage>4752</lpage>. <pub-id pub-id-type="doi">10.1109/TIE.2011.2179270</pub-id></citation>
</ref>
<ref id="B18">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Peng</surname> <given-names>G.</given-names></name> <name><surname>Chen</surname> <given-names>C. L. P.</given-names></name> <name><surname>Yang</surname> <given-names>C.</given-names></name></person-group> (<year>2023</year>). <article-title>Robust admittance control of optimized robot-environment interaction using reference adaptation</article-title>. <source>IEEE Transact. Neural Netw. Learn. Syst</source>. <volume>34</volume>, <fpage>5804</fpage>&#x02013;<lpage>5815</lpage>. <pub-id pub-id-type="doi">10.1109/TNNLS.2021.3131261</pub-id><pub-id pub-id-type="pmid">34982696</pub-id></citation></ref>
<ref id="B19">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Stanimirovic</surname> <given-names>P. S.</given-names></name> <name><surname>Zivkovic</surname> <given-names>I. S.</given-names></name> <name><surname>Wei</surname> <given-names>Y.</given-names></name></person-group> (<year>2015</year>). <article-title>Recurrent neural network for computing the Drazin inverse</article-title>. <source>IEEE Transact. Neural Netw. Learn. Syst</source>. <volume>26</volume>, <fpage>2830</fpage>&#x02013;<lpage>2843</lpage>. <pub-id pub-id-type="doi">10.1109/TNNLS.2015.2397551</pub-id><pub-id pub-id-type="pmid">25706892</pub-id></citation></ref>
<ref id="B20">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Tang</surname> <given-names>Z.</given-names></name> <name><surname>Zhang</surname> <given-names>Y.</given-names></name></person-group> (<year>2022</year>). <article-title>Refined self-motion scheme with zero initial velocities and time-varying physical limits via Zhang neurodynamics equivalency</article-title>. <source>Front. Neurorobot</source>. <volume>16</volume>:<fpage>945346</fpage>. <pub-id pub-id-type="doi">10.3389/fnbot.2022.945346</pub-id><pub-id pub-id-type="pmid">36061146</pub-id></citation></ref>
<ref id="B21">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Van</surname> <given-names>M.</given-names></name> <name><surname>Ge</surname> <given-names>S. S.</given-names></name> <name><surname>Ceglarek</surname> <given-names>D.</given-names></name></person-group> (<year>2018</year>). <article-title>Fault estimation and accommodation for virtual sensor bias fault in image-based visual servoing using particle filter</article-title>. <source>IEEE Transact. Ind. Inf</source>. <volume>14</volume>, <fpage>1312</fpage>&#x02013;<lpage>1322</lpage>. <pub-id pub-id-type="doi">10.1109/TII.2017.2723930</pub-id></citation>
</ref>
<ref id="B22">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Wang</surname> <given-names>X.</given-names></name> <name><surname>Sun</surname> <given-names>Y.</given-names></name> <name><surname>Xie</surname> <given-names>Y.</given-names></name> <name><surname>Bin</surname> <given-names>J.</given-names></name> <name><surname>Xiao</surname> <given-names>J.</given-names></name></person-group> (<year>2023</year>). <article-title>Deep reinforcement learning-aided autonomous navigation with landmark generators</article-title>. <source>Front. Neurorobot</source>. <volume>17</volume>:<fpage>1200214</fpage>. <pub-id pub-id-type="doi">10.3389/fnbot.2023.1200214</pub-id><pub-id pub-id-type="pmid">37674856</pub-id></citation></ref>
<ref id="B23">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Xie</surname> <given-names>Z.</given-names></name> <name><surname>Jin</surname> <given-names>L.</given-names></name> <name><surname>Luo</surname> <given-names>X.</given-names></name> <name><surname>Hu</surname> <given-names>B.</given-names></name> <name><surname>Li</surname> <given-names>S.</given-names></name></person-group> (<year>2022</year>). <article-title>An acceleration-level data-driven repetitive motion planning scheme for kinematic control of robots with unknown structure</article-title>. <source>IEEE Transact. Syst. Man Cybernet. Syst</source>. <volume>5152</volume>, <fpage>5679</fpage>&#x02013;<lpage>5691</lpage>. <pub-id pub-id-type="doi">10.1109/TSMC.2021.3129794</pub-id></citation>
</ref>
<ref id="B24">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Xie</surname> <given-names>Z.</given-names></name> <name><surname>Jin</surname> <given-names>L.</given-names></name></person-group> (<year>2023</year>). <article-title>A fuzzy neural controller for model-free control of redundant manipulators with unknown kinematic parameters</article-title>. <source>IEEE Transact. Fuzzy Syst</source>. <volume>32</volume>, <fpage>1589</fpage>&#x02013;<lpage>1601</lpage>. <pub-id pub-id-type="doi">10.1109/TFUZZ.2023.3328545</pub-id></citation>
</ref>
<ref id="B25">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Xu</surname> <given-names>C.</given-names></name> <name><surname>Sun</surname> <given-names>Z.</given-names></name> <name><surname>Wang</surname> <given-names>C.</given-names></name> <name><surname>Wu</surname> <given-names>X.</given-names></name> <name><surname>Li</surname> <given-names>B.</given-names></name> <name><surname>Zhao</surname> <given-names>L.</given-names></name></person-group> (<year>2023</year>). <article-title>An advanced bionic knee joint mechanism with neural network controller</article-title>. <source>Front. Neurorobot</source>. <volume>17</volume>:<fpage>1178006</fpage>. <pub-id pub-id-type="doi">10.3389/fnbot.2023.1178006</pub-id><pub-id pub-id-type="pmid">37214786</pub-id></citation></ref>
<ref id="B26">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Xu</surname> <given-names>F.</given-names></name> <name><surname>Wang</surname> <given-names>H.</given-names></name> <name><surname>Wang</surname> <given-names>J.</given-names></name> <name><surname>Au</surname> <given-names>K. W. S.</given-names></name> <name><surname>Chen</surname> <given-names>W.</given-names></name></person-group> (<year>2019</year>). <article-title>Underwater dynamic visual servoing for a soft robot arm with online distortion correction</article-title>. <source>IEEE ASME Transact. Mechatron</source>. <volume>24</volume>, <fpage>979</fpage>&#x02013;<lpage>989</lpage>. <pub-id pub-id-type="doi">10.1109/TMECH.2019.2908242</pub-id></citation>
</ref>
<ref id="B27">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Yang</surname> <given-names>C.</given-names></name> <name><surname>Chen</surname> <given-names>C.</given-names></name> <name><surname>He</surname> <given-names>W.</given-names></name> <name><surname>Cui</surname> <given-names>R.</given-names></name> <name><surname>Li</surname> <given-names>Z.</given-names></name></person-group> (<year>2019</year>). <article-title>Robot learning system based on adaptive neural control and dynamic movement primitives</article-title>. <source>IEEE Transact. Neural Netw. Learn. Syst</source>. <volume>30</volume>, <fpage>777</fpage>&#x02013;<lpage>787</lpage>. <pub-id pub-id-type="doi">10.1109/TNNLS.2018.2852711</pub-id><pub-id pub-id-type="pmid">30047914</pub-id></citation></ref>
<ref id="B28">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Zeng</surname> <given-names>D.</given-names></name> <name><surname>Liu</surname> <given-names>Y.</given-names></name> <name><surname>Qu</surname> <given-names>C.</given-names></name> <name><surname>Cong</surname> <given-names>J.</given-names></name> <name><surname>Hou</surname> <given-names>Y.</given-names></name> <name><surname>Lu</surname> <given-names>W.</given-names></name></person-group> (<year>2024</year>). <article-title>Design and human-robot coupling performance analysis of flexible ankle rehabilitation robot</article-title>. <source>IEEE Robot. Automat. Lett</source>. <volume>9</volume>, <fpage>579</fpage>&#x02013;<lpage>586</lpage>. <pub-id pub-id-type="doi">10.1109/LRA.2023.3330052</pub-id></citation>
</ref>
<ref id="B29">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Zeng</surname> <given-names>Z.</given-names></name> <name><surname>Wang</surname> <given-names>J.</given-names></name> <name><surname>Liao</surname> <given-names>X.</given-names></name></person-group> (<year>2003</year>). <article-title>Global exponential stability of a general class of recurrent neural networks with time-varying delays</article-title>. <source>IEEE Transact. Circ. Syst. I Fund. Theory Appl</source>. <volume>50</volume>, <fpage>1353</fpage>&#x02013;<lpage>1358</lpage>. <pub-id pub-id-type="doi">10.1109/TCSI.2003.817760</pub-id></citation>
</ref>
<ref id="B30">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Zhang</surname> <given-names>Y.</given-names></name> <name><surname>Li</surname> <given-names>S.</given-names></name></person-group> (<year>2018</year>). <article-title>A neural controller for image-based visual servoing of manipulators with physical constraints</article-title>. <source>IEEE Transact. Neural Netw. Learn. Syst</source>. <volume>29</volume>, <fpage>5419</fpage>&#x02013;<lpage>5429</lpage>. <pub-id pub-id-type="doi">10.1109/TNNLS.2018.2802650</pub-id><pub-id pub-id-type="pmid">29994741</pub-id></citation></ref>
<ref id="B31">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Zhang</surname> <given-names>Y.</given-names></name> <name><surname>Li</surname> <given-names>S.</given-names></name></person-group> (<year>2023</year>). <article-title>Kinematic control of serial manipulators under false data injection attack</article-title>. <source>IEEE CAA J. Automat. Sin</source>. <volume>10</volume>, <fpage>1009</fpage>&#x02013;<lpage>1019</lpage>. <pub-id pub-id-type="doi">10.1109/JAS.2023.123132</pub-id></citation>
</ref>
<ref id="B32">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Zhang</surname> <given-names>Y.</given-names></name> <name><surname>Li</surname> <given-names>S.</given-names></name> <name><surname>Liao</surname> <given-names>B.</given-names></name> <name><surname>Jin</surname> <given-names>L.</given-names></name> <name><surname>Zheng</surname> <given-names>L.</given-names></name></person-group> (<year>2017</year>). <article-title>&#x0201C;A recurrent neural network approach for visual servoing of manipulators,&#x0201D;</article-title> in <italic>2017 IEEE International Conference on Information and Automation (ICIA)</italic> (New York, NY: Macao: IEEE), <fpage>614</fpage>&#x02013;<lpage>619</lpage>.</citation>
</ref>
<ref id="B33">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Zhang</surname> <given-names>Z.</given-names></name> <name><surname>Zhang</surname> <given-names>Y.</given-names></name></person-group> (<year>2012</year>). <article-title>Acceleration-level cyclic-motion generation of constrained redundant robots tracking different paths</article-title>. <source>IEEE Transact. Syst. Man Cybernet. Part B</source> <volume>42</volume>, <fpage>1257</fpage>&#x02013;<lpage>1269</lpage>. <pub-id pub-id-type="doi">10.1109/TSMCB.2012.2189003</pub-id><pub-id pub-id-type="pmid">22481829</pub-id></citation></ref>
<ref id="B34">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Zheng</surname> <given-names>X.</given-names></name> <name><surname>Liu</surname> <given-names>M.</given-names></name> <name><surname>Jin</surname> <given-names>L.</given-names></name> <name><surname>Yang</surname> <given-names>C.</given-names></name></person-group> (<year>2024</year>). <article-title>Distributed collaborative control of redundant robots under weight-unbalanced directed graphs</article-title>. <source>IEEE Transact. Ind. Inf</source>. <volume>20</volume>, <fpage>681</fpage>&#x02013;<lpage>690</lpage>. <pub-id pub-id-type="doi">10.1109/TII.2023.3268778</pub-id></citation>
</ref>
<ref id="B35">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Zhu</surname> <given-names>M.</given-names></name> <name><surname>Huang</surname> <given-names>C.</given-names></name> <name><surname>Qiu</surname> <given-names>Z.</given-names></name> <name><surname>Zheng</surname> <given-names>W.</given-names></name> <name><surname>Gong</surname> <given-names>D.</given-names></name></person-group> (<year>2022</year>). <article-title>Parallel image-based visual servoing/force control of a collaborative delta robot</article-title>. <source>Front. Neurorobot</source>. <volume>16</volume>:<fpage>922704</fpage>. <pub-id pub-id-type="doi">10.3389/fnbot.2022.922704</pub-id><pub-id pub-id-type="pmid">35721276</pub-id></citation></ref>
</ref-list>
</back>
</article>