computation of robot inertia matrix using block diagram approach - Fei
computation of robot inertia matrix using block diagram approach - Fei
computation of robot inertia matrix using block diagram approach - Fei
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
COMPUTATION OF ROBOT INERTIA MATRIX<br />
USING BLOCK DIAGRAM APPROACH<br />
Narpat S. Gehlot<br />
Universidade Federal da Paraíba - Departamento de Engenharia Elétrica<br />
58109-970 Campina Grande-PB-Brasil<br />
E-Mail: gehlot@dee.ufpb.br<br />
Pablo J. Alsina<br />
Universidade Estadual da Paraíba - CCT - Departamento de Física<br />
58100 Campina Grande - PB - Brasil<br />
Abstract: In this paper, two new methods for <strong>computation</strong> <strong>of</strong> the <strong>inertia</strong> <strong>matrix</strong> <strong>of</strong> <strong>robot</strong><br />
manipulators are proposed. The new algorithms are based on a <strong>block</strong> <strong>diagram</strong> <strong>of</strong><br />
manipulator dynamics, derived from the Newton-Euler formulation. The proposed<br />
methods allows to compute the <strong>inertia</strong> <strong>matrix</strong> explicitly, in an efficient recursive manner,<br />
and can be applied for <strong>robot</strong> dynamics simulation.<br />
r. INTRODUCTION<br />
The inverse dynamics formulation is a c1assic<br />
problem in <strong>robot</strong>ics. The inverse dynamics equation<br />
allows to compute the vector <strong>of</strong> input generalized<br />
torques as a function <strong>of</strong> the N joint positions and its<br />
derivatives,<br />
where,<br />
't = Nx I vector <strong>of</strong>generalized torques.<br />
q = Nx I vector <strong>of</strong>joint positions.<br />
M(q) = NxN <strong>inertia</strong> <strong>matrix</strong>.<br />
't m = Nx I vector <strong>of</strong><strong>inertia</strong>l torques.<br />
'to = Nx I vector <strong>of</strong> coriolis, centrifugai,<br />
gravitational and disturbance torques.<br />
The solution <strong>of</strong> Eq. (I) is a typical control problem :<br />
finding the adequate vector r needed to impose the<br />
.desired joint trajectory q. In fact, the computed<br />
torque control technique (Yoshikawa , 1990).<br />
utilizes Eq. (I) to obtain the vector <strong>of</strong> generalized<br />
torques r from the measured values <strong>of</strong> position and<br />
velocity and computed values <strong>of</strong> acceleration. The<br />
447<br />
Newton-Euler technique (Luh, 1980) allows to<br />
compute the inverse dynamics Eq. (1) in an efficient<br />
recursive way. The <strong>computation</strong>al efIort <strong>of</strong> this<br />
method has a linear dependence with the number N<br />
<strong>of</strong> degrees <strong>of</strong>freedom (DOF) <strong>of</strong>the manipulator.<br />
The dynamic simulation <strong>of</strong> <strong>robot</strong>ic manipulators is a<br />
dual <strong>of</strong> the control problem. The <strong>robot</strong> simulation<br />
consists on obtaining the arm position as a function<br />
<strong>of</strong> time, given the vector <strong>of</strong> generalized torques and<br />
the initial conditions. This is attained by integrating<br />
the direct dynamics, obtained by inverting Eq. (1),<br />
(2)<br />
It can be noted that the inverse <strong>of</strong> the <strong>inertia</strong> <strong>matrix</strong><br />
is needed in the evaluation <strong>of</strong> Eq. (2). For this<br />
reason, the Newton-Euler method cannot be used<br />
directly to compute Eq. (2), since this method only<br />
evaluates numerically the vector <strong>of</strong> generalized<br />
torques, without computing explicitly the <strong>inertia</strong><br />
<strong>matrix</strong> M(q). In spite <strong>of</strong> this, ao artifice can be used<br />
to compute the <strong>inertia</strong> <strong>matrix</strong> through the Newton-<br />
Euler method, as shown-by Walker (Walker & Orin<br />
I982).Several methods were developed to compute<br />
the forward dynamics (and -the <strong>inertia</strong> <strong>matrix</strong>) .<br />
Baharin (Baharin & Green(Í991) proposed a
ecursive Lagrangian formulation based on<br />
differential relationships. Also based on the<br />
Lagrangian mechanics, Li (Li, 1988) proposed a<br />
method for the evaluation <strong>of</strong> the terms <strong>of</strong> the<br />
Dynamic Equation. Both above-mentioned<br />
have a <strong>computation</strong>al effort <strong>of</strong> order 0(N3). More<br />
efficient methods (Lilly & Orin, 1991; Featherstone,<br />
1987) , with <strong>computation</strong>al effort <strong>of</strong> order O(N2),<br />
have been proposed. Balafoutis (Balafoutis & Patel,<br />
1989) described a method, based on · the Newton-<br />
Euler algorithm and <strong>using</strong> the concept <strong>of</strong>generalized<br />
and augmented links, for computing the <strong>inertia</strong><br />
<strong>matrix</strong> with a <strong>computation</strong>al effort <strong>of</strong> order 0(N2).<br />
Furthermore, an efficient method for computing <strong>of</strong><br />
the inverse dynamics and the <strong>inertia</strong> <strong>matrix</strong><br />
rearranging the equations for a minimum set <strong>of</strong><br />
dynamics parameters, was proposed by Kawasaki<br />
(Kawasaki, et ai., 1992). This method, oriented to<br />
parameter identification, has a <strong>computation</strong>al effort<br />
<strong>of</strong> order 0(N2). Alsina (Alsina & Gehlot, 1994)<br />
proposed a formulation method <strong>of</strong> order 0(N2) based<br />
on the Newton-Euler recursion expressed in term <strong>of</strong><br />
spatial vectors. This method allows the explicit<br />
<strong>computation</strong> <strong>of</strong> the <strong>inertia</strong> <strong>matrix</strong>. In order to<br />
improve the real-time performance <strong>of</strong> the forward<br />
dynamics <strong>computation</strong>, several paralleI algorithms<br />
(Fijani & Bejczy, 1989) and architectures have been<br />
proposed. Arnim-Javaheri (Amim-Javaheri & Or in,<br />
1988) described several systolic architectures for the<br />
evaluation <strong>of</strong> the <strong>inertia</strong> <strong>matrix</strong> based on dedicated<br />
VLSI <strong>robot</strong>ic processors. Lee (Lee & Chang, 1988)<br />
proposed several parallel algorithms for real-time<br />
simulation <strong>of</strong> <strong>robot</strong> forward dynamics based on<br />
single-instruction multiple-data-stream computer,<br />
with as many processor as the number <strong>of</strong> DOF <strong>of</strong> the<br />
manipulator. Beside the methods above, several<br />
forward dynamics <strong>computation</strong> schemes, with no<br />
need <strong>of</strong> <strong>inertia</strong> <strong>matrix</strong> inversion, were proposed. Ko<br />
(Ko, 1992) reformulated the Newton-Euler equations<br />
in a Kalman Filter form for the solution <strong>of</strong> the<br />
forward dynarnics. Gogoussis (Gogoussis & Donath<br />
1990) proposed a method for the solution <strong>of</strong> forward<br />
dynamics <strong>using</strong> the recursive properties <strong>of</strong> Newton-<br />
Euler formulation associated with algebraic loops<br />
(solved through analog hardware) for the digital<br />
simulation <strong>of</strong> <strong>robot</strong> dynamics, A good comparison<br />
between several methods for inverse and forward<br />
dynamics <strong>computation</strong> is found in (Zomaya, 1991).<br />
In this paper, two novel methods for computing the<br />
<strong>inertia</strong> <strong>matrix</strong> <strong>of</strong> <strong>robot</strong> manipulator are proposed.<br />
The methods are based on recursive relationships,<br />
obtained from a <strong>block</strong> <strong>diagram</strong> representation <strong>of</strong> the<br />
dynamics equation. This <strong>block</strong> <strong>diagram</strong> is obtained<br />
from the Newton-Euler formulation. In Section 2<br />
the Newton-Euler algorithm in a ôx l-vector form is<br />
summarized. The blqck <strong>diagram</strong> representation <strong>of</strong><br />
manipulator dynamics is derived in Section 3. The<br />
448<br />
proposed recursive methods for <strong>computation</strong> <strong>of</strong> the<br />
<strong>inertia</strong> <strong>matrix</strong> are described in Section 4. The<br />
<strong>computation</strong>al effort <strong>of</strong> the proposed methods is<br />
discussed in Section 5. Final conclusions are given<br />
in Section 6<br />
2. NEWTON-EULER FORMULATION<br />
The Newton-Euler formulation allows to compute<br />
the manipulator dynamics in a <strong>computation</strong>ally<br />
efficient recursive manner. This formulation is<br />
realized in two stages: Forward and Backward<br />
recursions. In the Forward recursion, the cinematic<br />
variables are transformed frorn the base <strong>of</strong> the<br />
manipulator to the end-effector. The Backward<br />
recursion updates forces and torques starting from<br />
the tool to the base, obtain ing the driving torque <strong>of</strong><br />
each joint. A 6x I spatial vector version <strong>of</strong> the<br />
Newton-Euler algorithm is summarized below. The<br />
following notation is adopted:<br />
q i Position variable <strong>of</strong>joint i.<br />
v i 3x I Linear velocity vector <strong>of</strong> link i.<br />
co i 3x I Angular velocity vector <strong>of</strong> Iink i.<br />
fi 3x I Force vector applied on link i by<br />
link i-I.<br />
n i 3xl Moment vector applied on link i by<br />
linki-I.<br />
3x3 Rotation <strong>matrix</strong> frorn link i to i+I.<br />
1<br />
P;+I 3xl Position vector <strong>of</strong>link i+1 with<br />
respect to link i.<br />
P c; 3xl Center <strong>of</strong>mass position vector <strong>of</strong><br />
link i.<br />
m i Total mass <strong>of</strong> link i.<br />
h i 3x3 Inertia tensor <strong>of</strong> link i in its own<br />
reference frame.<br />
't ; Driving torque/force <strong>of</strong>link i.<br />
Defining the 3x3 and 6x6 <strong>matrix</strong> operators for cross<br />
product <strong>of</strong>3xl and 6xl vectors respectively as:<br />
I O -pz 1<br />
I P y I<br />
(px) = I pz O -Px I (3)<br />
l-py Px O J<br />
rr V1 1 I (cox) 2(vx)1<br />
= l2(vx) (ox) J<br />
where p, v and 00 are 3x 1 vectors. Thus, the 6x6<br />
spatial rotation <strong>matrix</strong>, from link i to link i+ 1, is:<br />
o 1<br />
A:+,J<br />
(4)<br />
(5)
The 6x I vectors <strong>of</strong> spatial veIocity, spatial angular<br />
velocity and spatial effort, and the 6x6 spatial <strong>inertia</strong><br />
<strong>matrix</strong> <strong>of</strong>link i, are respectively defined as:<br />
T<br />
V=v [ 1 1<br />
T]T<br />
Cú;<br />
T] T<br />
Cú;<br />
fi.(p .x)Tl<br />
I c, J<br />
h i<br />
The flag <strong>of</strong> joint i is defined as: for i = Oto N-I<br />
(6)<br />
(7)<br />
(8)<br />
(9)<br />
--------<br />
3. BLOCK DIAGRAM REPRESENTATION<br />
By imposing zero joint accelerations cL ' (i =<br />
I, ....,N), to(q, q) (vector <strong>of</strong> corioIis, centrifugai,<br />
gravitational and disturbance torques) can be easily<br />
computed through the Newton-Euler algorithm.<br />
Similarly, the <strong>inertia</strong>l torque t m '(t m = M(q)q ),<br />
can be updated through the Newton-Euler algorithrn<br />
by imposing zero joint velocities, initial spatial<br />
acceleration and initial spatial effort:<br />
- Forward Recursionfor <strong>inertia</strong>l torques:<br />
1; =[0 O O O OIr for Rjoint(lO.a) Y · RiT y' 1 00<br />
rn;+1 = i+lo mi + i+lqi+l (17)<br />
1;=[0 O O O Or forPjoint(IO.b)<br />
where R and P stands for rotational and prismatic<br />
joint respectively. Thus, the Newton-Euler algorithm<br />
is given by:<br />
- Forward Recursion:<br />
v. = gravity acceleration<br />
for i = I to N<br />
(lI)<br />
(13)<br />
end i<br />
- Backward Recursion for <strong>inertia</strong>l torques:<br />
FmN+1 = O<br />
for i = N to I<br />
F rn; = R;+IFrni+1 +H;V rni<br />
t m] = JT·F rni<br />
end i<br />
(18)<br />
(19)<br />
According to these recursions, a <strong>block</strong> <strong>diagram</strong><br />
representation <strong>of</strong> the . manipulator dynamics is<br />
obtained, as shown in Figure lo<br />
.4. COMPUTATION OF INERTIA MATRIX<br />
end i 4 01 The Inverse Path Method<br />
- Backward Recursion:<br />
F N + 1 = Spatial effort on the tool.·<br />
for i = N to I<br />
F = (n.x)H.n .<br />
cj 1 I I<br />
end i<br />
(14)<br />
(15)<br />
(16)<br />
449<br />
In Figure I, the <strong>block</strong> <strong>diagram</strong> inside the dashed line<br />
represents the transfer <strong>matrix</strong> between joint<br />
accelerations and <strong>inertia</strong>l torques, which is the<br />
<strong>inertia</strong> <strong>matrix</strong>. Thus, the <strong>inertia</strong> <strong>matrix</strong> represents<br />
the relation between an input vector q and an<br />
output vector t rn ' that is, t rn = M(q).q o •The<br />
following notation is adopted: [t rn , Fm]ij is the<br />
transfer <strong>matrix</strong> <strong>of</strong> the path from Frnj to t m] and<br />
[t , V ].. is the transfer <strong>matrix</strong> <strong>of</strong> the path from<br />
rn rn IJ<br />
V . to 't . o Thus, from the <strong>block</strong> <strong>diagram</strong> <strong>of</strong>Figure<br />
rnJ rn, .<br />
I, the following recursive relationships are obtained:
Fig. 1 - Block Diagram: Inverse Dynamics and Inertia Matr ix.<br />
Since the <strong>inertia</strong> <strong>matrix</strong> is symmetric, it is sufficient<br />
to compute Equation (20) for j varying from i to N<br />
and Equations (21) and (22) for j varying from N to<br />
i. Thus, based on the above reIationships, a recursive<br />
aIgorithm for the <strong>computation</strong> <strong>of</strong> the <strong>inertia</strong> <strong>matrix</strong><br />
is proposed, as shown in Figure 2. Since the transfer<br />
matrices are computed recursiveIy in the direction<br />
from torques to joint accelerations, this algorithm<br />
was named: Inverse Path Method .<br />
4.2 The Central Path Méthod<br />
(20)<br />
(22)<br />
In the <strong>block</strong> <strong>diagram</strong> <strong>of</strong> Figure I, a central path<br />
[Frn ,VrnL can be divided in two parallel paths: one<br />
through <strong>matrix</strong> H. ' and the other through<br />
[Fm >V rn l+l,i+1' R;+l ' On the other hand, the<br />
transfer <strong>matrix</strong> [Frn ,qh is composed by <strong>matrix</strong><br />
R 1+I serially associated with transfer <strong>matrix</strong><br />
[Frn ,q]j+l,i' Thus, t?e following recursions are<br />
obtained:<br />
450<br />
The In verse Path Method:<br />
For i = I to N<br />
[-rrn,Frn1 i =f{<br />
r- .....<br />
Inertia Matrix<br />
If(i < N) Then [-rrn ,FrnL+, = [-rrn,Frn1iR;+1<br />
If(i < N-I) Then<br />
ForG=i+2toN)<br />
Endj<br />
[-r rn ' Vrn 1N = [-r rn ,Frn 1N"HN<br />
M iN = [-rrn,Vrn1w l N<br />
If (i < N) Then<br />
For (k = N-I to i)<br />
End k<br />
End i<br />
Fig. 2 - The Inverse Path Method.
(24)<br />
From the recursions above, a new algorithm, named<br />
the Central Path Method, is derived for <strong>computation</strong><br />
<strong>of</strong>the <strong>inertia</strong> <strong>matrix</strong>, as shown in Figure 3..<br />
The Central Path Method:<br />
[Fm,Vm]NN =HN<br />
[Fm,q]NN = [Fm, Vm]NN·JN<br />
M NN =<br />
For (i = N-I to I)<br />
. i' iT<br />
[Fm ,VmL =Hj + Ri+I·[Fm,VmLI,i+l·Ri+1<br />
[Fm,q);; = [Fm,Vm]ii ·Ji<br />
M ii =JT ·[Fm,q);;<br />
For G= i to 1)<br />
Endj<br />
End i<br />
[Fm,q]j,i+1 = R1+,·[Fm,q]j+l,i+1<br />
Mj,i+1 = Jy.[Fm,q]j ,i+]<br />
Fig. 3 - The Central Path Method.<br />
5. COMPUTATIONALEFFORT<br />
The proposed methods involve several 1x6 vector /<br />
6x6 <strong>matrix</strong> products and additions. Noting that the<br />
6x6 spatial <strong>inertia</strong> and spatial rotation matrices<br />
include some zero terms. Thus, the product <strong>of</strong> a lx6<br />
vector and a 6x6 spatial <strong>inertia</strong> <strong>matrix</strong> involves 24<br />
products and 18 additions. The product <strong>of</strong> a lx õ<br />
vector and a 6x6 spatial rotation <strong>matrix</strong> involves 27<br />
products and 21 additions. In this way, both<br />
algorithms for the <strong>inertia</strong> <strong>matrix</strong> <strong>computation</strong><br />
involve a <strong>computation</strong>al effort· <strong>of</strong> order 0(N2), as<br />
shown in Figure 4. The <strong>computation</strong>al efforts for the<br />
Inverse Path Method and for the Central Path<br />
Method are respectively summarized in Table 1 and<br />
Table2.<br />
Table 1 -Computational Effort: Inverse Path Method.<br />
No.OfProducts<br />
39W - 42N +27<br />
No. <strong>of</strong> Additions<br />
33W - 36N + 21<br />
45 1<br />
Table 2-Computational Effort: Central Path Method.<br />
No.OfProducts<br />
(27N 2+621 N-648)/2<br />
No. <strong>of</strong> Additions<br />
(21N2+531N-552)J2<br />
For a sixjoint manipulator, the lnverse Path Method<br />
involves 1179 products and 993 sums, whi1e the<br />
Central Path Method involves 2025 products and<br />
1695 sums for <strong>computation</strong> <strong>of</strong> the <strong>inertia</strong> <strong>matrix</strong>. As<br />
can be seen in Figure 4, for more than twe1ve joints<br />
(highly redundant manipulators), the Central Path<br />
Method -becomes more efficient than the lnverse<br />
Path Method. This is because, for high number <strong>of</strong><br />
DOF, the N 2 term is predominant, and the Central<br />
Path Method has the smallest N 2 coefficient.<br />
10000<br />
' 5000<br />
15000<br />
No . o f P ro d u c ts<br />
o Inverse Path<br />
• C entra I P a th<br />
O O 1O 20<br />
No . o f J o in ts<br />
NO .<strong>of</strong>Sums<br />
o Inve rsePath<br />
10000 . C entra I P a th<br />
5000<br />
O O 10 20<br />
No . <strong>of</strong> Joints<br />
Fig. 4 - Computational Effort.<br />
6. CONCLUSIONS<br />
Two novel methods for <strong>computation</strong> <strong>of</strong> the <strong>inertia</strong> .<br />
<strong>matrix</strong> <strong>of</strong> <strong>robot</strong> manipulators were proposed: the<br />
Inverse Path M éthod and the Central Path Method.<br />
The proposed methods were derived from a set <strong>of</strong><br />
recursive relationships obtained from a <strong>block</strong><br />
<strong>diagram</strong> representation <strong>of</strong> the dynamics equation.<br />
The methods update explicit1y the <strong>inertia</strong> <strong>matrix</strong> in<br />
an efficient recursive way, thus allowing to app1y<br />
these formulations to the forward dynamics problem<br />
and the dynamics simulation <strong>of</strong> <strong>robot</strong> manipulators.<br />
The <strong>computation</strong>al efforts <strong>of</strong> the proposed methods<br />
have an 0(N2) dependence. The Inverse Path<br />
Method is more efficient for small number <strong>of</strong> DOF,<br />
while the Central Path Method is more efficient for<br />
highly redundant manipulators.
REFERENCES<br />
Alsina, P. J. & N. S. Gehlot (1994). " An Alternate<br />
Fonnulation <strong>of</strong> Manipulator Dynamics with<br />
Recursive Computation <strong>of</strong> Inertia Matrix for<br />
Computer Sirnulation". Proc. <strong>of</strong> the IEEE<br />
International Symposium on Industrial<br />
Electronics, ISIE-94, Chile, Vol. 1, pp. 335-338.<br />
Amirn-Javaheri, M. & D. E. Or in (1988). "Systolic<br />
Architecture for the Manipulator Inertia Matrix".<br />
IEEE Trans., Vol. SMC-18, No. 6, pp. 939-951.<br />
Baharin, I. B. & R. J. Green, (1991 ).<br />
"Computationally-effective Recursive Lagrangian<br />
Formulation <strong>of</strong> Manipulator Dynamics". Int.<br />
Journal <strong>of</strong>Control, Vol. 54, No. 1, pp. 195-214.<br />
Balafoutis, C. A. & R. V. Pate l (1989). "Efficient<br />
Com putation <strong>of</strong> Man ipulator Inertia Matrices and<br />
the Direct Dynamics Problem", IEEE Trans.,<br />
Vol. SMC-19, No.5, pp. 1313-1321.<br />
Featherstone, R. (1987). "Robot Dynamics<br />
AIgorithms". Boston Kluwer Academic<br />
Publishers.<br />
Fijany, A. & A. K. Bejczy (1989). "A Class <strong>of</strong><br />
Parallel AIgorithms for Computation <strong>of</strong> the<br />
Manipulator Inertia Matrix", Trans. on Robotics<br />
and Automation, Vol. 5, No. 5, pp. 600-615.<br />
Gogoussis, A. & M. Donath (1990) "A Method for<br />
the Real Time Solution <strong>of</strong>the Forward Dynamics<br />
Prob1em for Robots Incorporating Friction".<br />
Trans. <strong>of</strong>the ASME, Vol. 112, pp. 630-639.<br />
Kawasaki, H., A. Murata & K. Kanzaki (1992). "An<br />
Efficient Method for the Computation <strong>of</strong> Inverse<br />
Dynamics and Inertia Matrix based on the<br />
Minimum Set <strong>of</strong> Dynamics Parameters <strong>of</strong><br />
452<br />
Manipulators". Proc. <strong>of</strong> ICARCV-92, Singapore,<br />
Vol. 3, pp. RO-1.2.1 - RO-1.2 .5.<br />
Ko, K. (1992). "Manipulator Dynamics based on<br />
Stochastic System ". Proc. <strong>of</strong> ICARCV-92,<br />
Singapore, Vol. 3, pp. RO-2.5 .6 - RO-2 .5.6.<br />
Lee, C. S. G. & P. R. Chang (1988). "Efficient<br />
Parallel AIgorithms for Robot Forward Dynamics<br />
Cornputation". IEEE Trans., Vol. SMC-18, No.<br />
2, pp. 238-251 .<br />
Li, C. J. (1988). "A New Method <strong>of</strong> Dynam ics for<br />
Robot Manipulators" . IEEE Trans., Vol. SMC-<br />
18, No. 1, pp. 105-114.<br />
Lilly, K. W. & D. E. Orin (1991). "Altern ate<br />
Formulations for the Manipulator Inertia<br />
Matrix" . Int. Jour. <strong>of</strong> Robotic Research, Vol. 10,<br />
No. 1, pp. 64-74.<br />
Luh , J. Y. S., M. W. Walker & R. P. C. Paul (1980)<br />
"on-line Computational Scheme for Mechanical<br />
Manipulators". Journal <strong>of</strong> Dynamic Systems,<br />
Measure. & Control, Vol. 102, pp. 69-76.<br />
Walker, M. W. and D. E. Orin (1982). "Efficient<br />
Dynamic Computer Simulation <strong>of</strong> Robot<br />
Mechanisrns". ASME Journal <strong>of</strong> Dynamic<br />
Systems, Measure. and Control. Vol. 104, pp.<br />
205-211.<br />
Yoshikawa, T. (1990). "Foundations <strong>of</strong> Robotics -<br />
Analysis and Control". The MIT Press.<br />
Zomaya, A. Y. (1991). " Efficient Robot Dynamics<br />
for High Sampling Rate Motions: Case Studies<br />
and Benchrnarks". Int. Journal <strong>of</strong> Control, Vol.<br />
54, No. 4, pp. 793-8 I4.