Return to Article Details Linear complementarity problems solvable as linear programs

Linear complementarity problems solvable as linear programs

Zakia Kebbiche

July 14, 2018. Accepted: December 5, 2018. Published online: February 17, 2019.

LMFN, Department of Mathematics, Faculty of Sciences, University of Ferhat Abbas, Sétif1, Algeria., e-mail: kebbichez@yahoo.fr.

In this paper, we present a theoretical and numerical study of linear complementary problems solvable as linear programs. We give several examples of linear complementarity problems which can be solved as linear programs using linear programming approaches. Also, we propose two examples solved by the simplex and Karmarkar’s method, while the most widely know method for solving linear complementarity problems “the complementarity pivoting algorithm due to Lemke" has failed to find a solution.

MSC. 90C05, 90C33.

Keywords. Linear programming, linear complementarity problem, Lemke’s algorithm, Karmarkar’s algorithm, Simplex algorithm, Hidden Z-matrix.

1 Introduction

Complementarity plays a central role in all constrained optimization problems. The linear complementarity problem is an ideal model for the development and analysis of algorithms through its different practical applications. Indeed, linear programming, convex quadratic programming, variational inequalities, partial differential equations, can be transformed into complementarity problems. In addition, many problems in mechanics, economics, chemistry and meteorology, can be modeled by complementarity.

Most algorithms proposed for the resolution of the linear complementarity problem are based on the assumption that the matrix M belongs to a particular class of matrices. In 1975, Mangasarian demonstrated that the resolution of the linear complementarity problem with the class of Z-matrices “real square matrix whose off-diagonal entries are nonpositive" is equivalent to that of a well-defined linear program. Moreover, in 1976 he proposed another more general class, Pang (1979) proposed to call this generalization of the class Z as the class of hidden Z-matrices since many of the properties which hold for the class Z are preserved for the class hidden Z.

As a result, some problems in mathematics and mechanics: finding the smallest element in a polyhedron, finding the convex hull of a set of points in space, the theory of optimal stopping time, problems with free boundaries, can be solved using a linear programs associated with the linear complementarity problem. Therefore, any method designed for linear programming can be used. It is known that the Lemke’s algorithm solves the linear complementarity problem only for special classes of the matrix M. This problem may admit a solution but the algorithm is unable to find it. So, the goal of this work is to get more information and results from the linear complementarity problem by solving the associated linear program.

The paper is organized as following. In Section 2, we starts by defining the problem, then we give definitions and some notations. In Section 3, we discuss about existence of the solution of the linear complementarity problem where M is a hidden Z-matrix. Section 4 is devoted to defining the linear program associated with the linear complementarity problem. Section 5 presents special cases of hidden Z-matrices. We establish in this section the conditions that the linear program must satisfy in order that each solution of the linear program is also a solution of the linear complementarity problem. In Section 6, we present several numerical examples for linear complementarity solvable as linear programs. We also present two examples when Lemke’s method has failed to find a solution to the linear complementarity problem. Finally, in Section 7 we give a conclusion of this work.

2 The problem

The linear complementarity problem, denoted LCP(q,M), is that of finding a vector zRn satisfying

(LCP){Mz+q0,z0,zt(Mz+q)=0,
1

or to show that no such vector z exists. M is a given n×n real matrix and qRn.

Definition 1

A matrix MRn×n is said to be a semidefinite if zRn ztMz0.

Definition 2

MRn×n is said to be a Z-matrix if its off diagonal entries are nonpositive.

Definition 3

MRn×n is said to be a P-matrix if its principal minors are positive.

Definition 4

MRn×n is said to be a K-matrix if M is a Z-matrix and a P-matrix.

Definition 5

MRn×n is said to be a hidden Z-matrix if there exist Z-matrices X, YRn×n and two vectors r and s in R+n satisfying the following conditions

{MX=YrTX+sTY>0.
2

The class of hidden Z-matrices is denoted by hidden Z.

Notation 6

Given a matrix MRn×n and a vector qRn, we define the feasible set of LCP(q,M) by

F(q,M)={zRn:z0,Mz+q0}

and the solution set is denoted by

S(q,M)={zF(q,M):zt(Mz+q)=0}.

3 Existence of the solution of the LCP(\lowercaseq,M)

Theorem 7

Let MRn×n be a hidden Z-matrix, and F(q,M), then the LCP(q,M) has a solution.

To prove this theorem, we construct an equivalent linear complementarity problem as following

Lemma 8

Consider the LCP(q~,M) where M=(0MtM0), q~=(pq), MRn×n is a hidden Z-matrix, p, qRn, where p=r+Mts, r and s are as in Definition 5. If (xy) F(q~,M) then (IMt)y+p>0.

Proof â–¼
Suppose (xy)F(q~,M), as M is a hidden Z-matrix, there exist X, YZ such that MX=Y and rtX+stY>0 where r,sR+n. Let X=DU and Y=DV where U and V are nonnegative matrices and D is a positive diagonal matrix. We have
0<rtX+stY=(rt+stM)X=pt(DU)=pt(DU)+yt(YMX)=pt(DU)+yt[(DV)M(DU)]=(ytM+pt)(DU)+yt(DV)(yt(IM)+pt)D,

since (xy)F(q~,M) and U,V0. Moreover, [yt(IM)+pt]D>0 lead to

(IMt)y+p>0,

as D is a positive diagonal matrix.

Proof â–¼

In the following lemma, we study the relationship between the solution of the LCP(q~,M) and the LCP(q,M).

Lemma 9

The LCP(q,M) has a solution if and only if the LCP(q~,M) has a solution.

Proof â–¼
Necessity. Suppose x¯Rn solves the LCP(q,M) and we show that z=(x¯y) is a feasible solution for the LCP(q~,M) where y=s (s as in Definition 5 is a feasible solution for the LCP(q~,M)). Note that pMty=r+MtsMty=r+MtsMts0. Therefore, the LCP(q~,M) is feasible, further, M is semidefinite matrix then the LCP(q~,M) has a feasible solution implies it has a complementarity solution. So the LCP(q~,M) has a solution.

Sufficiency. Suppose the LCP(q~,M) has a solution. Let z~=(x~y~) S(q~,M). From the complementarity condition it follow that x~t(pMty~)+y~t(q+Mx~)=0. Since both terms are nonnegative, we get x~t(pMty~)=0 and y~t(q+Mx~)=0. From Lemma 8, it follow that y~+(pMty~)>0, this implies for all i{1,..,n}, either (pMty~)i>0 or y~i>0. Now, if (pMty~)i>0 then x~i=0 which implies x~i(q+Mx~)i=0. If yi>0 then (q+M x~)i=0. This implies x~i(q+M x~)i=0 for all i=1,..,n. Hence, we get x~t(q+Mx~)=0. Therefore x~ solves the LCP(q,M).

Proof â–¼

Proof â–¼
[Proof of Theorem 7]

Note that feasibility of the LCP(q,M) implies the feasibility of the LCP(q~,M). Further, M is semidefinite matrix implies the LCP(q~,M) has a solution. By Lemma 9, the LCP(q,M) has a solution if and only if the LCP(q~,M) has a solution. Therefore feasibility of the LCP(q~,M) implies solvability of the LCP(q,M).

4 Characterization of the LCP(\lowercaseq,M) as a linear program

In his study of solving linear complementarity problems as linear programs, Mangasarian [ 3 ] proved the following result.

Theorem 10

Let MRn×n be a hidden-Z matrix and F(q,M), then the LCP(q,M) has a solution which can be obtained by solving the linear program

(LP){min ptz,Mz+q0,z0,
3

where p=r+Mts, r and s are as in Definition 5.

In order to prove this theorem, first we define the dual linear program of (LP)

(D){max qty,Mty+p0,y0,
4

and then we need to the following lemma.

Lemma 11

If z solves the linear program (LP) and if the corresponding optimal dual variable y of (D) satisfies (IMt)y+p>0, then z solves the LCP(q,M).

Proof â–¼
We have yt(Mz+q)+zt(Mty+p)=ytq+ztp=0, since y0, Mz+q0, z0 and (Mty+p)0, then yi(Mz+q)i=0, zi(Mty+p)i=0, i=1...n, but yi+(Mty+p)i>0, i=1...n. So, either yi>0 or (Mty+p)i>0, i=1...n, and therefore zi=0 or (Mz+q)i=0, from where z solves the LCP(q,M).
Proof â–¼

Proof â–¼
[Proof of Theorem 10] Since y=s is a dual feasible point, then, (LP) and (D) have an optimal solutions noted by z and y respectively. Let X=DV and Y=DU, where V and U are nonnegative matrices and D is a positive diagonal matrix, then
0<rtX+stY=(rt+stM)X=pt(DV)=pt(DV)+yt(MD+MV+DU)(since M(DV)=DU)=(ytM+pt)(DV)+yt(DU)(yt(IM)+pt)D.

Also, (IMt)y+p>0, as ytM+pt0, V0, y0, U0) and D is a positive diagonal matrix. According to the Lemma 11, z solves the LCP(q,M).

5 Special cases of hidden Z-matrices

We establish in this section the conditions that p of the linear program (LP) must satisfy in order that each solution of the (LP) is also a solution of the LCP(q,M).

Theorem 12

(See [ 5 ] ). If F(q,M) and there exist r,s,cRn,X,YRn×n such that

{MX=Y+qctrtX+stY0rt(X+C)+st(Y+C)>0, C=diag(c)X,YZs,r,c0.
5

then the LCP(q,M) has a solution which can be obtained by solving the linear program (LP) with p=r+Mts.

Setting c=δe,C=δI in the above where δ is some positive number, we obtain

Corollary 13

(See [ 5 ] ). If F(q,M) and there exist δR, r,sRn,X,YRn×n such that

{MX=Y+δqetrtX+stY0r+s>0, δ>0X,YZ, s,r0.
6

then the LCP(q,M) has a solution which can be obtained by solving the linear program (LP) with p=r+Mts.

We give in Table 1 a convenient summary of some of the cases for which the LCP(q,M) is solvable as linear program together with the conditions that M and p must satisfy.

Matrix M

Conditions on M

Vector p

Conditions on p

M=YX1

X,YZ,

rtX+stY>0

p=r+Mts

r,s0

M=YX1

XK,YZ

p0

ptX>0

M=YX1

XZ,YK

p=Mts0

s0,

sTY>0

M

M Z

p

p>0

M

M1Z

p=Mts

s>0

M

MK

p=e or

p=MTe

e>0

M

M1K

p=MTe or

p=e

e>0

MX=Y+δqet

rtX+stY0,

X,YZ,δ>0

p=r+Mts

r+s>0,

r,s0

Table 1 Summary of some of the cases for which the LCP(q,M) is solvable as linear program.

6 Numerical examples

We give now some examples for which the LCP(q,M) can be solved by a linear program.

Example 14

Let  M=( 1 123) and q=(1 6). M is a hidden Z-matrix with X=( 332 \ 3)K and Y=(1 003)Z. â–¡

Example 15

Consider M=( 2221 2 11 0 2) and q=( 13 2). M is a hidden Z-matrix with X=( 10 0 01110 1)K and Y=( 42 \ 02 213 0 2)Z. â–¡

Example 16

Let M=( 01 12 65 03 2) and q=( 21 1). M is a hidden Z-matrix with X=(10 0011001) Z and Y=( 01 02 61 03 1) Z. â–¡

Example 17

Consider M=( 0221 2 11 0 2) and q=( 74 1). M is a hidden Z-matrix with X=( 10 0 01110 1)K and Y=( 02 02 213 0 2)Z. â–¡

Example 18

Let

M=(2112112112)R10×10, and q=(1,,1)TR10.

The table below summarizes the results obtained in number of iterations K and calculation time T by Lemke’s algorithm (Alg. 1), the Simplex algorithm (Alg. 2) and that of Karmarkar (Alg. 3).

 

Alg. 1

 

Alg. 2

 

Alg. 3

 

Examples

K

T

K

T

K

T

Example 14

2

0.00

1

0.00

62

0.00

Example 15

3

0.00

2

0.00

82

0.01

Example 16

2

0.00

1

0.00

50

0.00

Example 17

2

0.00

1

0.00

72

0.00

Example 18

10

0.00

12

0.01

178

0.01

Table 2 Number of iterations and computation time.

Remark 19

1) The number of iterations recorded by Alg. 1 and that of Alg. 2 is significantly lower than that obtained by the Alg. 3.

2) The calculation time obtained by the three algorithms is almost the same. â–¡

We give now two examples for which the LCP(q,M) can be solved by the simplex and Karmarkar’s methods but not by Lemke’s method.

Example 20

Let M=(1 1 21) and q=( 12).

This example satisfies the conditions of theorem (12) with r=(0,1)t, s=(1,0)t and c=(0,2)t where X=(120 02)Z and Y=( 12012)Z.

Hence p=r+Mts=(1,2)t, then the linear program associated with the LCP(q,M) is

(LP){min z1+2z2z1+z2+102z1z220(z1,z2)0.

The solution is (z1,z2)t=(1,0)t which also solves the LCP(q,M). â–¡

Example 21

Let M=(0 3 411 0013) and q=(2 0 1), we have

MX=Y+δqet

with X=(1 0 0 01 0 0 01),Y=( 2121 1 01 0 2),δ=1,s=e,r=0.

According to Corollary 13, p=r+Mts=Mte=(1,1,1)t, then the linear program associated with LCP(q,M) is

(LP){min z1+z2+z3\ \ 3z2+4z320z1z20z23z3+10(z1,z2,z3)0.

The optimal solution is (z1,z2,z3)t=(0.4,0.4,0.2)t. â–¡

The following table summarizes the number of iterations obtained by the three algorithms (R means that Lemke’s algorithm ends with a secondary ray).

 

Alg. 1

Alg. 2

Alg. 3

Example 20

R

1

48

Example 21

R

2

59

Table 3 Number of iterations obtained by the three algorithms.

Remark 22

Through the tested examples, the results obtained give a particular value to the simplex method and Karmarkar’s method. â–¡

7 Conclusion

In this paper, we have presented a class of linear complementarity problems which can be solved via linear programming approaches. From a practical point of view, we have used methods designed for linear programming (the simplex and the Karmarkar’s methods) to solve the linear program associated with the linear complementarity problem. This idea has offered us a new horizon of research concerning the resolution of a linear complementarity problem with specific classes of matrices, especially when Lemke’s algorithm has failed to find a solution.

The following questions arise: 1) The conditions assumed to test if M is a hidden Z-matrix are not easy to check because of the nonlinearity in the condition rtX+stY>0 for unknowns X,Y,r and s. 2) Can we characterize all classes of matrices for which the linear complementarity problems can be solved by a linear program?