<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Compliance errors estimation for robotic manipulator using the Quantum Monte Carlo method *</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Ramil Dautov</string-name>
          <email>r.dautov@innopolis.ru</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Alexandr Klimchik</string-name>
          <email>a.klimchik@innopolis.ru</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Innopolis University</institution>
          ,
          <addr-line>Innopolis</addr-line>
          ,
          <country country="RU">Russia</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>The paper presents new approach to estimating the compliance errors of robotic manipulator. The existing methods are complicated with the nonlinear character of equations coming from the theory. Quantum Monte Carlo computational technique is shown to overcome this problem. The algorithm of evaluating and compensating compliance errors using this technique is presented.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
    </sec>
    <sec id="sec-2">
      <title>Quantum</title>
    </sec>
    <sec id="sec-3">
      <title>Monte Carlo method</title>
      <p>In quantum physics we have a well-developed formalism that generalizes the action principle of classical mechanics. This
formalism is called Path Integral formulation of quantum mechanics and was proposed by Richard Feynman in 1948 [6].
Path integrals replace the notion of classical trajectory with the functional integral over an infinite number of mechanically
possible trajectories. These integrals are used to obtain the value of particular parameters of the system.</p>
      <p>The path integrals reveal the correspondence between quantum and stochastic processes and also can be considered as
an analytical continuation of a method of random walks. This property allows to transform path integral theory to the form
analogous to the theory of statistical physics and molecular dynamics.
2.1</p>
      <sec id="sec-3-1">
        <title>Path Integrals</title>
        <p>Path integrals provide us possibility to calculate the value of a particular parameter of the system. Let us denote the
parameter that we want to evaluate as  . In general,  ( ) is a function of coordinates. Then we can find the average value
of  ( ) by following formula:</p>
        <p>After the Wick’s rotation  → 
we will have:








(
  ̇ 2</p>
        <p>2
(
  ̇ 2</p>
        <p>Here  – is an imaginary unit, ℏ - is a Planck constant (usually quantum physicists work in a system of units with ℏ = 1),
    ( ,  ̇ ) – is an action functional. ∫</p>
        <p>( ) designates the sum over all possible particle paths from the initial</p>
        <p>
          Although there are some theoretical advantages of formula (
          <xref ref-type="bibr" rid="ref1">1</xref>
          ), it is difficult to calculate the value of  ( ) analytically.
To overcome this obstacle there has been developed a numerical method based on the Monte Carlo scheme. It has been
already pointed out that path integral formulation reveals the correspondence between the quantum physics and statistical
physics. To show this correspondence explicitly let us replace the time variable:  →  – so-called Wick’s rotation (it is
actually rotation in an imaginary plane). After Wick’s rotation, considering ℏ = 1 we receive ‘Euclidian’ path integrals:
        </p>
        <p>Euclidian path integrals look very similar to the integrals of thermal averages that we have in Thermodynamics and
Statistical physics. This representation is much better for numerical work as it has no oscillations in sign within the powers
of exponents.</p>
        <p>
          It is important to take into account the changes in the action  ( ) caused by the Wick’s rotation. For instance, let us
consider the action of point-like particle with mass  . Before the Wick’s rotation the action has the form:
(
          <xref ref-type="bibr" rid="ref1">1</xref>
          )
(
          <xref ref-type="bibr" rid="ref2">2</xref>
          )
(
          <xref ref-type="bibr" rid="ref3">3</xref>
          )
(
          <xref ref-type="bibr" rid="ref4">4</xref>
          )
        </p>
        <p>
          Thus any code developed to conduct calculations in thermal physics can be applied for calculation path integrals (
          <xref ref-type="bibr" rid="ref2">2</xref>
          ).
2.2
        </p>
      </sec>
      <sec id="sec-3-2">
        <title>Quantum Monte Carlo algorithm</title>
        <p>
          Quantum Monte Carlo technique provides a numerical procedure for calculating the path integrals using the stochastic
methods developed in statistical physics. To reduce our continuous formula (
          <xref ref-type="bibr" rid="ref2">2</xref>
          ) into the numerical discretized form we
must address two issues.
        </p>
        <p>Firstly, we need to find a convenient representation of an arbitrary path { ( ),   ≤  ≤   } in the computer. A path is
given by the  ( ) function which, in principle, can be complicated enough for computers. We approximate the path by
specifying  ( ) only at the nodes on a discretized time axis:</p>
        <sec id="sec-3-2-1">
          <title>Here  is a grid spacing:</title>
          <p>Then the path can be described by a vector:
 →  ≡</p>
          <p>1
  
  =   +  ,</p>
          <p>for  = 0,1, … , 
 =   −</p>
          <p>= { ( 0),  ( 1), … ,  (  )}</p>
          <p>
            We see that Lagrangian  ( ,  ̇ ) has changed its form and became actually the Hamiltonian of the system. And
continuing the analogy between Euclidian path integrals and thermodynamics one can easily show that the time  now has
relation with the ‘temperature’  [4, 5]:
(
            <xref ref-type="bibr" rid="ref5">5</xref>
            )
(
            <xref ref-type="bibr" rid="ref6">6</xref>
            )
(
            <xref ref-type="bibr" rid="ref7">7</xref>
            )
(8)
(9)
(10)
          </p>
          <p>In lattice theories this vector is usually called ‘configuration’. The integral over all paths becomes an ordinary
multidimensional integral over all possible values for each of the  (  )’s:
+∞
−∞
∫ 
( ) → ∫  1</p>
          <p>2 …   −1
Here we denoted  (  ) =   . We don’t integrate over endpoints  0 and   since they are held fixed.</p>
          <p>
            The second issue is related to the evaluation of the action on the discretized path (8). In fact, here we just need to
substitute the derivatives in the action with their finite differences approximations. Integrals are replaced with the
summation and the potential  ( ) should be calculated in each node  (  ). For instance, the discretized version of the
action (
            <xref ref-type="bibr" rid="ref4">4</xref>
            ):
 −1
standard methods of numerical multidimensional integration. The Monte Carlo procedure appears to be the more general
and convenient technique for this purpose.
          </p>
          <p>
            One can note that path integral of the form (
            <xref ref-type="bibr" rid="ref2">2</xref>
            ) is actually a weighted average over paths with weight exp(− ( )).
Taking into account this fact we generate a large number   of random paths (or configurations)
 ( ) ≡ { 0( ),  1( ), … ,  ( −)1}
 = 1, … ,   ,
on our grid in such a way that the probability  [ ( )] for obtaining the particular path  ( ) is:
          </p>
          <p>[ ( )]~ − [ ( )]
&lt;  ( ) &gt;≈  ̅ =</p>
          <p>∑  [ ( )]
1</p>
          <p>=1
(11)
(12)
(13)</p>
          <p>Then unweighted average of  ( ) over this set of paths approximates the weighted average over uniformly distributed
paths:</p>
          <p>̅ is the Monte Carlo estimation for &lt;  ( ) &gt; on our lattice. The estimation will never be the exact since we use the
discretized paths and  
will never be infinite. One can show that statistical errors will be of the order
methods. For the detailed review the reader can refer to the articles [4, 5].</p>
          <p>So, the general idea of the methods is the following:





first, generate an arbitrary path  (0) = { 0(0), … ,   (0), … ,  (0−)1};
at each   ℎ site we generate the random number Ω, with probability uniformly distributed between –  and  ,
 – is a some constant;
replace   (0) →  (0) + Ω and calculate the change ∆ in the action caused by this replacement;</p>
          <p>if ∆ &lt; 0 then retain the new value for   (0);
if ∆ &gt; 0 generate a random number  uniformly distributed between 0 and 1; retain the new value for   (0) if
exp(−∆ ) &gt;  , otherwise restore the old value;
This algorithm is repeated some number of times and at the end we obtain the path that minimizes the action and can be
considered as the solution to the equations of motion. The constant  is tuned experimentally by running the algorithm so
that 40-60% of new   ’s are retained.
3</p>
        </sec>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>Compliance errors estimation</title>
      <p>The main problem of estimating the compliance errors is the necessity to deal with complicated non-linear equations of
motion. In Quantum Monte Carlo method we have no need to work with the exact equations of motion. All the dynamical
and kinematical information of the system is already included into the Lagrangian function. Using the Quantum Monte
Carlo technique we can minimize the action and obtain the configuration of the system that represents the solution of the
equations of motion.</p>
      <p>To estimate the compliance errors, we must take into account two components. The first component represents the
stiffness properties of the robot. These properties are defined by the stiffness matrix. In this work we assume that the
stiffness matrix of the system is known. The stiffness matrix can be found by implementing the CAD-based approach [7].</p>
      <p>The second component represents the forces/torques acting on the end-effector. Further, we also assume that this
component is given. For instance, it can be obtained by direct measurements using the force/torque sensor adjusted on the
end-effector.</p>
      <p>Compliance errors occur due to the interaction between a workpiece and the end-effector. The control system of the
robot knows the configuration of the manipulator at the given time and manages its movements to make the end-effector
follow the desired trajectory. However, because of the compliance the deflections appear and the end-effector follows
another trajectory (real trajectory) that differs from the desired one.</p>
      <p>The motion of the end-effector can be described by the Lagrange equations of the second kind:
 – the number of degrees of freedom,   – the generalized force acting on the end-effector along the direction of the
  coordinate,  =  ( ,  ̇ )−  ( ) – Lagrangian of the system.  ( ,  ̇ ) – kinetic energy and  ( ) – potential energy of
the system that contains contributions of a gravitational field and potential energy of elastic deformations caused by
compliance.</p>
      <p>=  ( ,  ̇ )−  ( )+ ∑    
 =  ( ,  ̇ )+  ( )+ ∑    
(14)
(15)
(16)</p>
      <p>In principle, we can decompose the movement of the end-effector into the sequence of quasistatic translations: within
a sufficiently small period of time   can be considered as constants and during that time the motion of the end-effector
effectively is ruled by the Lagrangian of the form:


action. By the time the configuration is found the end effector can experience another external force  ′ , and our obtained
configuration  = {  } becomes outdated.</p>
      <p>In fact, we can shorten the time that is needed for the Monte Carlo algorithm to minimize the action by taking as a
starting configuration  (0) in the Monte Carlo algorithm the desired configuration (just read it from the control system).
On practice, the deviations of the desired trajectory from the real trajectory are not so large and taking the desired
configuration as an initial will put the action into position near the minimum. So, a few iterations will be needed to minimize
the action and find the real trajectory. This feature may help us to adjust the trajectory of end-effector in the on-line regime.</p>
      <sec id="sec-4-1">
        <title>The whole algorithm is represented on the Figure 1. Figure 1: The algorithm for estimation and compensation the compliance errors</title>
        <p>Compliance errors appear due to the interactions between the manipulator and the workpiece and they are in high
dependence on the configuration of the robot. This fact makes the analysis and estimation of the errors problematic. We
need to take into account the non-linear character of the compliance mechanism that leads us to the complicated math and
implementation of different approximations.</p>
        <p>Quantum Monte Carlo method has been proposed to overcome these issues. The developed algorithm provides an
elegant way to find the real trajectory of the manipulator under the applied loadings. The obtained data then can be used
by the control system to adjust the trajectory and compensate the compliance errors. However, Quantum Monte Carlo
iterations can take considerable amount of time and the deeper analysis is required.</p>
        <p>In future, the developed technique will be tested on the simulation of the compliance errors compensation of the
Stewart’s platform. Testing the Quantum Monte Carlo approach on that toy model will show the prospects of this method.</p>
      </sec>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>A.</given-names>
            <surname>Klimchik</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Pashkevich</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Chablat</surname>
          </string-name>
          , G. Hovland,
          <article-title>Compliance error compensation technique for parallel robots composed of non-perfect serial chains</article-title>
          ,
          <source>Robotics and Computer-Integrated Manufacturing 29</source>
          ,
          <issue>2</issue>
          (
          <year>2012</year>
          )
          <fpage>385</fpage>
          -
          <lpage>393</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>S.</given-names>
            <surname>Mamedov</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Popov</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Mikhel</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Klimchik</surname>
          </string-name>
          ,
          <source>Compliance Error Compensation based on Reduced Model for Industrial Robots ICINCO (2)</source>
          ,
          <year>2018</year>
          ,
          <fpage>190</fpage>
          -
          <lpage>201</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>A.</given-names>
            <surname>Olabi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Damak</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Béarée</surname>
          </string-name>
          ,
          <string-name>
            <given-names>O.</given-names>
            <surname>Gibaru</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Leleu</surname>
          </string-name>
          .
          <article-title>Improving the Accuracy of Industrial Robots by offline Compensation of Joints Errors</article-title>
          .
          <source>IEEE International Conferenceon Industrial Technology</source>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <given-names>G.</given-names>
            <surname>Peter Lepage</surname>
          </string-name>
          ,
          <article-title>Lattice QCD for Novices</article-title>
          ,
          <source>Proceedings of HUGS 98</source>
          ,
          <string-name>
            <surname>edited by J.L. Goity</surname>
          </string-name>
          , World Scientific (
          <year>2000</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>C.</given-names>
            <surname>Gattringer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.B.</given-names>
            <surname>Lang</surname>
          </string-name>
          ,
          <source>Quantum Chromodynamics on the Lattice: An Introductory Presentation, Lect. Notes Phys</source>
          .
          <volume>788</volume>
          (Springer, Berlin Heidelberg 2010).
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <given-names>R. P.</given-names>
            <surname>Feynman</surname>
          </string-name>
          ,
          <article-title>Space-Time Approach to Non-Relativistic Quantum Mechanics</article-title>
          ,
          <source>Reviews of Modern Physics</source>
          .
          <volume>20</volume>
          (
          <issue>2</issue>
          )
          <string-name>
            <surname>:</surname>
          </string-name>
          (
          <year>1948</year>
          )
          <fpage>367</fpage>
          -
          <lpage>387</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <given-names>A.</given-names>
            <surname>Klimchik</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Pashkevich</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Chablat</surname>
          </string-name>
          ,
          <article-title>CAD-based approach for identification of elasto-static parameters of robotic manipulators</article-title>
          ,
          <source>Finite Elements in Analysis and Design</source>
          <volume>75</volume>
          (
          <year>2013</year>
          )
          <fpage>19</fpage>
          -
          <lpage>30</lpage>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>