Solving quasi-variational
inequalities
via their KKT conditions
Francisco Facchinei
Department of Computer, Control, and Management Engineering
University of Rome La Sapienza
Italian Spanish Workshop on Optimization
Politecnico di Milano
June 4-5, 2012
Co-authors
Preliminaries Algorithm Nonsingularity Boundedness Numerical Results
Based on work done with
Christian Kanzow, University of Würzburg, Germany
Simone Sagratella, University of Rome La Sapienza
2 / 35
Outline
Preliminaries Algorithm Nonsingularity Boundedness Numerical Results
Main aim: Present a method for solving quasi-variational inequalities that
vastly improves on existing methods
■
■
■
■
■
Problem definition and related issues
Algorithm
Non singularity conditions
Boundedness conditions
Numerical results
3 / 35
The QVI problem I
Preliminaries Algorithm Nonsingularity Boundedness Numerical Results
The Quasi Variational Inequality, QVI (K, F ):
Find x such that x ∈ K(x) and
F (x)T (y − x) ≥ 0,
∀y ∈ K(x)
where
• K(x) : Rn ⇉ Rn is a point-to-set mapping with closed, convex images
• F : Rn ⊇ Dom(K) → Rn
If K(x) = K for all x, then QVI reduces to a VI
4 / 35
The QVI problem II
Preliminaries Algorithm Nonsingularity Boundedness Numerical Results
In most cases the point-to-set mapping is defined by parametric constraints:
K(x) = { y ∈ Rn : g(y, x) ≤ 0 }
with g(y, x) : Rn × Rn → Rm and gi (·, x) convex for any x, i = 1, . . . , m
For example
2y1 − y2 + y3 ≤ x1 + x2 + x3
y1 + 3y2 − y3 ≤ 2x1 − x3
Note that x ∈ K(x) ⇔ g(x, x) ≤ 0
5 / 35
The QVI problem III
Preliminaries Algorithm Nonsingularity Boundedness Numerical Results
The most studied case, from the algorithmic point of view,
is the “moving set” case:
K(x) = c(x) + Q
where Q ⊂ Rn is a given closed convex set and c : Rn → Rn describes a
curve in Rn
If
Q = { x ∈ Rn : q(x) ≤ 0 }
with q : Rn → Rp with q convex, then
K(x) = { y ∈ Rn : q(y − c(x)) ≤ 0 }
6 / 35
The QVI problem IV
Preliminaries Algorithm Nonsingularity Boundedness Numerical Results
QVIs generalize Variational Inequalities and (convex) Optimization problems
They arise quite naturally in
■
■
■
■
■
■
■
Mechanics
Mathematical physics
Economics
Engineering (Transportation, telecommunications etc.)
Biology
Game theory
.......
7 / 35
Generalized Nash Equilibrium Problems I
Preliminaries Algorithm Nonsingularity Boundedness Numerical Results
■
N players
■
Each player controls xν ∈ Rnν
PN
■
Set n :=
■
x = (xν , x−ν )
ν=1 nν ,
x1
.
x := .. ∈ Rn ,
xN
x−ν
x1
...
xν−1
:=
xν+1
.
.
.
xN
8 / 35
Generalized Nash equilibrium problem II
Preliminaries Algorithm Nonsingularity Boundedness Numerical Results
Generalized Nash Equilibrium Problem (GNEP)
θ1 (x1 , x−1 )
minx1
x1
∈ X1
(x−1 )
...
θν (xν , x−ν )
minxν
xν
∈ Xν
(x−ν )
...
θN (xN , x−N )
minxN
xN ∈ X N (x−N )
Usually Xν (x−ν ) = {xν : g ν (xν , x−ν ≤ 0}
Several “optimizers (or players)”
■ Every optimizer minimizes a different obj. f.
■ The obj. f. depend on the variables of the other players
■ Also the feasible sets depend on the other players’ variables
■
9 / 35
Generalized Nash equilibrium III
Preliminaries Algorithm Nonsingularity Boundedness Numerical Results
Sν (x−ν ): Optimal solution set of player i for a given x−ν of the other
players
x is a Nash equilibrium if
xν ∈ Sν (x−ν ) for all players ν
or, equivalently, if for all players
θν (xν , xν ) ≤ θν (y, x−ν ),
∀y ∈ Xν (x−ν )
No player can improve by unilaterally deviating from the current situation
10 / 35
Conversion of a GNEP to a QVI
Preliminaries Algorithm Nonsingularity Boundedness Numerical Results
■
■
■
θν (xν , x−ν ) convex in xν for every x−ν
θν continuously differentiable
Xν (x−ν ) closed and convex
By using the first order optimality conditions for each player, it is easily seen
that
Solve the GNEP
K(x) :=
QN
−ν
ν=1 Xν (x ),
⇔
Solve QV I(X, F )
∇x1 θ1 (x)
..
F (x) :=
.
∇xN θN (x)
11 / 35
Existing approaches
Preliminaries Algorithm Nonsingularity Boundedness Numerical Results
There are very few globally convergent algorithms for the solution of a
(finite-dimensional) QVI. They all require some strong monotonicity
assumption plus conditions on the point-to-set mapping K(x)
• Essentially the only case for which convergence results are available is the
“moving set” case (with additional restrictions)
• The most general result is probably due to Nesterov and Scrimali (2006)
where it is assumed, that for some α ∈ (0, 1),
k ΠK(x) (z) − ΠK(y) (z) k ≤ αk x − y k,
∀x, y, z ∈ Rn
The only practical case for which this can be shown to hold is the moving set
case
12 / 35
What we obtained
Preliminaries Algorithm Nonsingularity Boundedness Numerical Results
Using our approach we are able to enlarge considerably the classes of QVI for
which we can prove convergence. Among others we can deal with:
■
■
■
■
■
Problems where K(x) = c(x) + Q (moving set)
Problems where K(x) is defined by a linear system of inequalities with a
variable right-hand side;
Problems where K(x) is defined by box constraints with parametric upper
and lower bounds;
Problems where K(x) is defined by “binary constraints”, i.e. parametric
inequalities g(x, y) ≤ 0 with each gi actually depending only on two
variables: xj and yj ;
Problems where K(x) is defined by bilinear constraints.
13 / 35
What we obtained
Preliminaries Algorithm Nonsingularity Boundedness Numerical Results
Furthermore
We do not necessarily require strong monotonicity of F
■ For the first time we are able to solve problems with non unique solutions
■
Our approach is based on a interior point approach to the solution of the
KKT system of the QVI
14 / 35
The KKT conditions
Preliminaries Algorithm Nonsingularity Boundedness Numerical Results
x ∈ Rn satisfies the KKT conditions if multipliers λ ∈ Rm exist such that
F (x) + ∇y g(x, x)λ = 0,
(1)
0 ≤ λ ⊥ g(x, x) ≤ 0
Recall that g(x, x) ≤ 0 ⇔ x ∈ K(x)
x, together with a
vector λ ∈ Rm
of multipliers, satisfies the KKT system (1)
⇒
⇐
x is a solution of
the QVI (K, F )
+ constr. qualific.
15 / 35
Reformulation of the KKT conditions
Preliminaries Algorithm Nonsingularity Boundedness Numerical Results
We reformulate the KKT system as a Constrained Equations System
H(z) = 0,
where
and where
z = (x, λ, w) ∈ Z
L(x, λ)
H(x, λ, w) , h(x) + w
λ◦w
L(x, λ) , F (x) + ∇y g(x, x)λ
h(x) , g(x, x)
and
m
Z , {z = (x, λ, w) | x ∈ Rn , λ ∈ Rm
+ , w ∈ R+ }.
16 / 35
Solution algorithm I
Preliminaries Algorithm Nonsingularity Boundedness Numerical Results
To solve the Constrained Equations System we use an Interior Point method
We define a potential function
ψ(z) , p(H(z))
m → R is the function
where p : Rn × Rm
×
R
++
++
2m
X
p(u, v) , ζ log(kuk2 + kvk2 )−
log(vi ),
i=1
m
(u, v) ∈ Rn ×Rm
++ ×R++ ,
ζ > m,
The potential function is defined on the set
m
z ∈ ZI , H −1 (Rn × Rm
++ × R++ ) ∩ int Z,
17 / 35
Solution algorithm II
Preliminaries Algorithm Nonsingularity Boundedness Numerical Results
Algorithm 1: Potential Reduction Algorithm (PRA) for QVIs
(S.0) : Choose z 0 ∈ ZI , β, γ ∈ (0, 1), and set k := 0, aT = (0nT , 1T2m ).
(S.1) : If H(z k ) = 0: STOP.
(S.2) : Choose ρk ∈ [0, 1) and find a solution dk of the linear system
aT H(z k )
a.
JH(z )d = −H(z ) + ρk
2
kak
k
k
k
(S.3) : Compute a stepsize tk := max
z k + tk dk ∈ ZI and
βℓ
| ℓ = 0, 1, 2, . . .
such that
ψ(z k + tk dk ) ≤ ψ(z k ) + γtk ∇ψ(z k )T dk .
(S.4) : Set z k+1 := z k + tk dk , k ← k + 1, and go to (S.1).
18 / 35
Convergence
Preliminaries Algorithm Nonsingularity Boundedness Numerical Results
Assume that JH(z) is nonsingular for all z ∈ ZI , and that the sequence {ρk }
from (S.2) of Algorithm 1 satisfies the condition lim supk→∞ ρk < 1. Let
{z k } be any sequence generated by Algorithm 1. Then:
(a) the sequence {H(z k )} is bounded;
(b) any accumulation point of {z k } is a solution of the QVI (K, F ).
In view of this Theorem the main question we must answer in order to make
our approach viable is: for which classes of QVIs can we guarantee that the
Jacobian matrices JH(z) are nonsingular for all z ∈ ZI ?
19 / 35
The jacobian
Preliminaries Algorithm Nonsingularity Boundedness Numerical Results
The structure of this Jacobian is given by
0
Jx L(x, λ) ∇y g(x, x)
.
0
I
JH(x, λ, w) = Jx h(x)
0
diag(w) diag(λ)
From now on, for sake of simplicity, we assume all functions involved are
“sufficiently” differentiable
20 / 35
The moving set case
Preliminaries Algorithm Nonsingularity Boundedness Numerical Results
K(x) = {y ∈ Rn | q(y − c(x)) ≤ 0}
where q : Rn → Rm and each qi is convex on Rn and c : Rn → Rn
Let x ∈ Rn be given
JF (x) is nonsingular and
µsm (JF (x)−1 )
.
kJc(x)k ≤
kJF (x)−1 k
⇒
JH(x, λ, w)
is
nonsingular for all
positive λ and w
The conditions of the theorem are satisfied at any point if c is Lipschitz
continuous on Rn with Lipschitz modulus α, F is Lipschitz continuous on Rn
and strongly monotone on Rn , the moduli of Lipschitz continuity and strong
monotonicity of F −1 are L−1 and σ−1 , respectively, and
σ−1
α ≤
L−1
21 / 35
Linear constraints with variable r.h.s. I
Preliminaries Algorithm Nonsingularity Boundedness Numerical Results
K(x) = {y ∈ Rn | g(y, x) := Ey − b − c(x) ≤ 0},
where E ∈ Rm×n is a given matrix, c : Rn → Rm and b ∈ Rm
Let x ∈ Rn be given
JF (x) is pos. def. and
µ+
m (x)
kJc(x)k ≤
kJF (x)−1 kkEk
⇒
JH(x, λ, w)
is
nonsingular for all
positive λ and w
where
µ+
m (x)
=
min{µ+
m (A)
1
| A is a principal submatrix of E(JF (x)−1 +JF (x)−T )E T }
2
−T is
µ+
(A)
denotes
the
minimum
positive
eigenvalue
of
the
matrix
A,
and
A
m
the transpose of the inverse of A.
22 / 35
Linear constraints with variable r.h.s II
Preliminaries Algorithm Nonsingularity Boundedness Numerical Results
The conditions of the theorem are satisfied at any point if c is Lipschitz
continuous on Rn with Lipschitz modulus α, F is Lipschitz continuous on Rn
and strongly monotone on Rn , the moduli of Lipschitz continuity and strong
monotonicity of F −1 are L−1 and σ−1 , respectively, and
σ−1 µ+
m
α ≤
L−1 kEk
23 / 35
Box constraints
Preliminaries Algorithm Nonsingularity Boundedness Numerical Results
K(x) is defined by parametric box constraints
yi ≤ ai xi + ci
yi ≥ bi xi − di
∀i = 1, . . . , n and
∀i = 1, . . . , n.
Let x ∈ Rn be given
JF (x) is a P0 -matrix and
ai < 1, bi < 1
⇒
JH(x, λ, w)
is
nonsingular for all
positive λ and w
⇒
JH(x, λ, w)
is
nonsingular for all
positive λ and w
and
JF (x) is a P -matrix and
ai ≤ 1, bi ≤ 1
24 / 35
Binary constraints
Preliminaries Algorithm Nonsingularity Boundedness Numerical Results
The approach in the previous slide can be extended to “binary constraints”,
when each constraint defining K(x) is of the type
gi (yj , xj ) ≤ 0,
∀i = 1, . . . , n
Let x ∈ Rn be given
Jx L(x, λ) is a P0 -matrix and
∇yj gi (xj , xj )∇xj hi (xj ) > 0
for all i
and
JF (x) is a P -matrix and
∇yj gi (xj , xj )∇xj hi (xj ) ≥ 0
for all i
⇒
JH(x, λ, w)
is
nonsingular for all
positive λ and w
⇒
JH(x, λ, w)
is
nonsingular for all
positive λ and w
Can be further generalized ....
25 / 35
Bilinear constraints
Preliminaries Algorithm Nonsingularity Boundedness Numerical Results
K(x) = {y ∈ Rn : q(y)j ≤ 0,
xT Qi y − ci ≤ 0,
j = 1, . . . , p
i = 1, . . . , r }
where all qj are convex and all Qi are symmetric and positive semidefinite
Let x ∈ Rn be given and suppose F is monotone
If
■
■
■
Either JF (x) is pos.
def.
Or at least one qj is
strongly convex
Or at least one Qi is
pos. def.
⇒
JH(x, λ, w)
is
nonsingular for all
positive λ and w
26 / 35
Boundedness I
Preliminaries Algorithm Nonsingularity Boundedness Numerical Results
If any of the nonsingularity conditions if the previous slides holds we know
that “every limit point is a solution”
When does a limit point exists?
This is a question of great theoretical importance, although not crucial from
the practical point of view
27 / 35
Boundedness II
Preliminaries Algorithm Nonsingularity Boundedness Numerical Results
(a1)
lim kmax{0, g(x, x)}k =
kxk→∞
∞
(a2) ∀x ∈ Rn there exist a d such
that ∇y gi (x, x)T d < 0
for all i ∈ {i : gi (x, x) ≥ 0}
(a1)
(a2)
⇒
⇒
⇒
The sequence
generated by the
algorithm
is bounded
boundedness of x and w
boundedness of λ
(a1) + (a2) relatively weak. They can be specified to the various setting
analyzed before. We only look at the moving set case
28 / 35
Boundedness III
Preliminaries Algorithm Nonsingularity Boundedness Numerical Results
K(x) = c(x) + Q = {y ∈ Rn | q(y − c(x)) ≤ 0}
Recall.....
Let x ∈ Rn be given
JF (x) is nonsingular and
µsm (JF (x)−1 )
kJc(x)k ≤
≤ 1
−1
kJF (x) k
kJc(x)k ≤ α < 1
Q is compact and
full dimensional
⇒
JH(x, λ, w)
is
nonsingular for all
positive λ and w
⇒
(a1) and (a2) are
satisfied
29 / 35
Further theoretical considerations
Preliminaries Algorithm Nonsingularity Boundedness Numerical Results
We can give examples showing that (a1) + (a2) + nonsigularity condition(s)
hold but
Neither K(x) 6= ∅ for all x ∈ Rn nor a compact set T exists such that for all
x ∈ T K(x) ⊆ T and K(x) 6= ∅
The QVI has infinite solutions
The condition k ΠK(x) (z) − ΠK(y) (z) k ≤ αk x − y k, ∀x, y, z ∈ Rn and
for some α ∈ (0, 1) does not hold
To the best of our knowledge, the above conditions are explicitly used or
implied by all solution methods
30 / 35
Implementation
Preliminaries Algorithm Nonsingularity Boundedness Numerical Results
Main computation per iteration is the solution of a linear system involving the
(n + 2m) × (n + 2m) matrix JH. Exploiting structure can be reduced to the
solution of an n × n system
The value of ρk is set to 0.1. This is only changed, and increased by 0.1, if in
the previous iteration the step size tk is smaller than 0.1. Should ρk reach the
value of 0.9, it is reset to 0.1 in the following iteration.
Stopping criterion is based on an equation reformulation
of the KKT system
√
using the Fischer-Burmeister function: φ(a, b) = a2 + b2 − (a + b). The
resulting equation reformulation is
!
L(x, λ)
.
V (x, λ) =
m
(φ(λi , −gi (x, x)))i=1
The main termination criterion is kV (xk , λk )k∞ ≤ 10−4 . The iterations are
also stopped if the number of iterations exceeds 1000 or the running time
exceeds one hour.
31 / 35
Test problems
Preliminaries Algorithm Nonsingularity Boundedness Numerical Results
Problem
OutZ40
OutZ41
OutZ42
OutZ43
OutZ44
OutKZ31
OutKZ41
Scrim22
KunR11
KunR12
KunR21
KunR22
KunR31
KunR32
Wal2
Wal3
n
2
2
4
4
4
62
82
4800
2500
4900
2500
4900
2500
4900
105
186
m (mc )
6 (2)
6 (2)
8 (4)
4 (4)
4 (4)
124 (62)
164 (82)
9600 (4800)
2500 (2500)
4900 (4900)
2500 (2500)
4900 (4900)
2500 (2500)
4900 (4900)
127 (20)
218 (30)
Problem
Wal5
MovSet3A1
MovSet3A2
MovSet3B1
MovSet3B2
MovSet4A1
MovSet4A2
MovSet4B1
MovSet4B2
Box2A
Box2B
Box3A
Box3B
RHS1A1
RHS2B1
n
492
1000
2000
1000
2000
400
800
400
800
500
500
500
500
200
200
m (mc )
534 (40)
1 (1)
1 (1)
1 (1)
1 (1)
801 (801)
1601 (1601)
801 (801)
1601 (1601)
1000 (1000)
1000 (1000)
1000 (1000)
1000 (1000)
199 (199)
199 (199)
Table 1: n = # variables, m = # constr., mc = # constr. depending on x
32 / 35
Results
Preliminaries Algorithm Nonsingularity Boundedness Numerical Results
Problem
x0
It / JF
g
F /∇g
OutZ40
OutZ41
OutZx42
OutZx43
OutZ44
OutKZ31
OutKZ31
OutKZ41
OutKZ41
Scrim22
Scrim22
KunR11
KunR11
KunR12
KunR12
KunR21
KunR21
KunR22
KunR22
KunR31
KunR31
KunR32
KunR32
0
0
0
0
0
0
10
0
10
0
10
0
10
0
10
0
10
0
10
0
10
0
10
8
18
8
8
8
18
17
20
20
17
19
14
24
22
25
21
22
23
23
154
9
19
9
9
9
19
18
21
21
18
20
15
40
35
43
35
33
40
40
764
Failure
807
Failure
9
19
9
9
9
19
18
21
21
18
20
15
40
35
43
35
33
40
40
764
168
807
Problem
x0
It / JF
g
F /∇g
Wal2
Wal2
Wal3
Wal3
Wal5
Wal5
MovSet3A1
MovSet3A2
MovSet3B1
MovSet3B2
MovSet4A1
MovSet4A2
MovSet4B1
MovSet4B2
Box2A
Box2B
Box3A
Box3B
RHS1A1
RHS1A1
RHS2B1
RHS2B1
0
10
0
10
0
10
0
0
0
0
0
0
0
0
10
10
10
10
0
10
0
10
34
47
48
63
46
42
11
11
11
11
12
12
12
12
167
195
59
95
84
110
80
43
12
12
12
12
13
13
13
13
187
220
Failure
Failure
140
20
98
20
35
48
82
110
47
43
12
12
12
12
13
13
13
13
187
220
87
19
84
19
127
20
98
20
Table 2: Potential Reduction Algorithm numerical results for QVIs
33 / 35
Comparison to PATH
Preliminaries Algorithm Nonsingularity Boundedness Numerical Results
Problem
x0
PRA
PATH (5)
PATH (0)
OutZ40
OutZ41
OutZ42
OutZ43
OutZ44
OutKZ31
OutKZ31
OutKZ41
OutKZ41
Scrim22
Scrim22
KunR11
KunR11
KunR12
KunR12
KunR21
KunR21
KunR22
KunR22
KunR31
KunR31
KunR32
KunR32
0
0
0
0
0
0
10
0
10
0
10
0
10
0
10
0
10
0
10
0
10
0
10
< 0.1
< 0.1
< 0.1
< 0.1
< 0.1
< 0.1
< 0.1
< 0.1
< 0.1
9.5
10.6
26.2
53.8
177.1
209.0
46.7
47.0
192.5
193.6
637.9
F
2531.6
F
< 0.1
< 0.1
< 0.1
< 0.1
< 0.1
< 0.1
< 0.1
< 0.1
< 0.1
36.8
37.1
110.5
130.0
1382.8
1280.6
91.7
119.1
845.4
1028.0
168.7
185.3
552.3
817.4
< 0.1
< 0.1
< 0.1
< 0.1
< 0.1
< 0.1
< 0.1
< 0.1
< 0.1
6.3
22.5
37.7
50.0
161.8
196.3
42.8
82.2
114.1
218.3
1225.4
F
F
F
Problem
x0
PRA
PATH (5)
PATH (0)
Wal2
Wal2
Wal3
Wal3
Wal5
Wal5
MovSet3A1
MovSet3A2
MovSet3B1
MovSet3B2
MovSet4A1
MovSet4A2
MovSet4B1
MovSet4B2
Box2A
Box2B
Box3A
Box3B
RHS1A1
RHS1A1
RHS2B1
RHS2B1
0
10
0
10
0
10
0
0
0
0
0
0
0
0
10
10
10
10
0
10
0
10
0.1
0.2
0.3
0.4
0.7
0.6
2.2
10.1
2.2
9.9
0.4
1.3
0.3
1.3
4.0
4.7
F
F
3.1
0.6
2.9
0.6
0.2
F
0.1
0.4
F
F
5.4
37.5
5.8
46.8
7.5
92.0
7.6
96.2
5.7
7.2
16.0
F
0.3
0.3
0.3
0.3
0.3
0.1
0.1
0.1
F
1.4
4.8
35.2
5.3
38.1
0.4
2.0
0.4
2.0
2.7
8.7
4.6
34.3
0.1
0.4
0.1
0.3
Table 3: CPU times in seconds and failures (F).
34 / 35
Conclusions
Preliminaries Algorithm Nonsingularity Boundedness Numerical Results
We presented and analyzed a method for the solution of QVIs that vastly
improves on existing method
Convergence can be established for several practical kind of VIs
Numerical results are very promising and compare well to PATH
We are working on the development of a solution code for free distribution
The collection of test problems is already available (in beta-version) and we
plan to maintain and enlarge it
35 / 35
© Copyright 2026 Paperzz