Implementation of parallel randomized algorithm for skew-symmetric matrix game

25
Implementation of parallel randomized algorithm for skew-symmetric matrix game Ajay Shankar Bidyarthy July 13, 2012

Transcript of Implementation of parallel randomized algorithm for skew-symmetric matrix game

Page 1: Implementation of parallel randomized algorithm for skew-symmetric matrix game

Implementation of parallel randomized algorithm

for skew-symmetric matrix game

Ajay Shankar Bidyarthy

July 13, 2012

Page 2: Implementation of parallel randomized algorithm for skew-symmetric matrix game

Parallel randomized algorithm for symmetric games

Consider skew-symmetric matrix games Anxn, A = −Aᵀ. The value

of the game is v? = 0, the case of optimal strategies of both

players coinside, and (?) simplifies to the problem of computing an

x such that Ax ≤ εe, x ∈ S = {x ∈ Rn|eᵀx = 1, x ≥ 0} .

The algorithm given below finds an ε-optimal strategy x for A in

time O(f (n)) with probability ≥ 1/2, where f (n) is a polynomial.

We assume that ε ∈ (0, 1], and n ≥ 8.

Page 3: Implementation of parallel randomized algorithm for skew-symmetric matrix game

Algorithm

[1]. Initialize: X = 0, U = 0, X ,U ∈ Rn, p = e/n, t = 0.

[2]. Repeat:

[3]. Iteration count: t = t + 1..

[4]. Random direction: pick a random k ∈ {1, ..., n} with

probability pk .

[5]. X − update: Xk = Xk + 1.

[6]. U − update: For i = 1 : n do in parallel Ui = Ui + aik .

[7]. p − update: For i = 1 : n do in parallel

pi = piexp{ ε2aik}/∑n

j=1 pjexp{ε2ajk}.

[8]. Stopping criterion: If U/t ≤ εe, Output: x = X/t and halt.

Page 4: Implementation of parallel randomized algorithm for skew-symmetric matrix game

4th step can be computed as follows:

[1]. For i = 1, 2, ..., n calculate cummulative sum

Si = p1 + p2 + ...+ pi .

[2]. Generate an uniform random number z ∈ [0, 1].

[3]. Pick a random number k ∈ {1, 2, ..., n} such that

Sk−1 < z ≤ Sk .

Page 5: Implementation of parallel randomized algorithm for skew-symmetric matrix game

Theorem:

i) The stopping criterion U/t ≤ εe guarantees the ε− optimality

of the output vector x i.e. x = X/t

Page 6: Implementation of parallel randomized algorithm for skew-symmetric matrix game

Theorem:

i) The stopping criterion U/t ≤ εe guarantees the ε− optimality

of the output vector x i.e. x = X/t

Proof: Let X (t) and U(t) denote the n − vectors X and U

respectively at the end of iteration t ≥ 1. According to 5th and

6th step of algorithm we have

[5]. X − update: Xk = Xk + 1.

[6]. U − update: For i = 1 : n do in parallel Ui = Ui + aik .

It maintain the invariants X (t)/t ∈ S = {x ∈ Rn|eᵀx = 1, x ≥ 0}

and U(t) = AX (t).

Page 7: Implementation of parallel randomized algorithm for skew-symmetric matrix game

Theorem:

ii) Algorithm halts in t? = 4ε−2ln(n) iterations with probability

≥ 1/2.

Page 8: Implementation of parallel randomized algorithm for skew-symmetric matrix game

Theorem:

ii) Algorithm halts in t? = 4ε−2ln(n) iterations with probability

≥ 1/2.

Proof: According to 5th and 6th step of algorithm we have

[6]. U − update: For i = 1 : n do in parallel Ui = Ui + aik .

[7]. p − update: For i = 1 : n do in parallel

pi = piexp{ ε2aik}/∑n

j=1 pjexp{ε2ajk}.

we can see that

pi (t) = Pi (t)/∑n

j=1 Pj(t), for t = 1, 2, ...,

where

Pi (t) = exp{εUi (t)/2}, i = 1, 2, ..., n.

Page 9: Implementation of parallel randomized algorithm for skew-symmetric matrix game

Proof continue...

Now, define the potential function Φ(t) =∑n

i=1 Pi (t).

If the algorithm selects an index k ∈ {1, 2, ..., n}in step 4 at

iteration t, then

Φ(t + 1) =∑n

i=1 Pi (t + 1) =∑n

i=1 exp{εUi (t + 1)/2}

=∑n

i=1 exp{εUi (t)/2 + εaik/2}

=∑n

i=1 Pi (t)exp{εaik/2}

= Φ(t)∑n

i=1 pi (t)exp{εaik/2}.

And since such a k is selected with probability pk(t), conclude that

the expected value of Φ(t + 1) is given by

E (Φ(t + 1)) = Φ(t)∑n

i ,k=1 pi (t)pk(t)exp{εaik/2}.

Page 10: Implementation of parallel randomized algorithm for skew-symmetric matrix game

Proof continue...

By our assumption that aik ∈ [−1, 1], we have

exp{εaik/2} ≤ 1 + ε2aik + ε2

6 for all εin(0, 1].

Since A is skew-symmetric,

∑ni ,k=1 pi (t)pk(t)aik = 0.

We also have that

∑ni ,k=1 pi (t)pk(t) = (

∑ni=1 pi (t))2 = 1 for any p(t) ∈ S .

Hence

E [Φ(t + 1)] ≤ E [Φ(t)](1 + ε2/6)

Page 11: Implementation of parallel randomized algorithm for skew-symmetric matrix game

Proof continue...

which implies

E [Φ(t)] ≤ Φ(0)(1 + ε2/6)t = n(1 + ε2/6)t ≤ nexp{tε2/6}.

After t? = 4ε−2ln(n) iterations we have E [Φ(t?)] ≤ n5/3. By the

Markov inequality, the latter implies that Φ(t?) ≤ 2n5/3 with

probability ≥ 1/2. Since n ≥ 8 by assumption,

Φ(t?) ≤ n2 with probability ≥ 1/2.

On the other hand, if Φ(t?) ≤ n2, then by the definition

Φ(t) =∑n

i=1 Pi (t) we have Pi (t?) ≤ n2 for all i . By

pi (t) = exp{εUi (t)/2}, i = 1, 2, ..., n. this is equivalent to

ε2Ui (t

?) ≤ 2ln(n), i = 1, 2, ..., n,

Page 12: Implementation of parallel randomized algorithm for skew-symmetric matrix game

Proof continue...

or equivalent to

U(t?)

t? ≤ 4ln(n)t?ε e = εe,

which means that the stopping criterion (step 8) of algorithm is

satisfied at the t?th iteration of algorithm with probability ≥ 1/2.

Page 13: Implementation of parallel randomized algorithm for skew-symmetric matrix game

third Slide

content of the third slide

Page 14: Implementation of parallel randomized algorithm for skew-symmetric matrix game

third Slide

content of the third slide

Page 15: Implementation of parallel randomized algorithm for skew-symmetric matrix game

third Slide

content of the third slide

Page 16: Implementation of parallel randomized algorithm for skew-symmetric matrix game

third Slide

content of the third slide

Page 17: Implementation of parallel randomized algorithm for skew-symmetric matrix game

third Slide

content of the third slide

Page 18: Implementation of parallel randomized algorithm for skew-symmetric matrix game

third Slide

content of the third slide

Page 19: Implementation of parallel randomized algorithm for skew-symmetric matrix game

third Slide

content of the third slide

Page 20: Implementation of parallel randomized algorithm for skew-symmetric matrix game

third Slide

content of the third slide

Page 21: Implementation of parallel randomized algorithm for skew-symmetric matrix game

third Slide

content of the third slide

Page 22: Implementation of parallel randomized algorithm for skew-symmetric matrix game

third Slide

content of the third slide

Page 23: Implementation of parallel randomized algorithm for skew-symmetric matrix game

third Slide

content of the third slide

Page 24: Implementation of parallel randomized algorithm for skew-symmetric matrix game

third Slide

content of the third slide

Page 25: Implementation of parallel randomized algorithm for skew-symmetric matrix game

third Slide

content of the third slide