Thanks to visit codestin.com
Credit goes to www.scribd.com

0% found this document useful (0 votes)
16 views96 pages

FAI: Multiagent Systems: Important Links

The document discusses multiagent systems in game theory, covering concepts such as normal and extensive form games, utilities, and various strategic scenarios like the Prisoner's Dilemma and Matching Pennies. It includes problem sets with examples illustrating how to model games, define strategies, and calculate payoffs. Additionally, it touches on assumptions in utility theory and the conditions under which a utility function can be established, including the Von Neumann-Morgenstern theorem.

Uploaded by

Pranav Joshi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
16 views96 pages

FAI: Multiagent Systems: Important Links

The document discusses multiagent systems in game theory, covering concepts such as normal and extensive form games, utilities, and various strategic scenarios like the Prisoner's Dilemma and Matching Pennies. It includes problem sets with examples illustrating how to model games, define strategies, and calculate payoffs. Additionally, it touches on assumptions in utility theory and the conditions under which a utility function can be established, including the Von Neumann-Morgenstern theorem.

Uploaded by

Pranav Joshi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 96

FAI : Multiagent Systems

Created: May 18, 2024 9:55 AM Contact: [email protected] Creator:


Pranav Joshi

Important Links
FAI
https://docs.google.com/spreadsheets/u/1/d/18UPx7ZTum4ra18Ncmb-
Y_dx_24iv-yJoVO2GlQH1Iec/preview#gid=0
https://seek.onlinedegree.iitm.ac.in/courses/ns_24t2_cs301gn?

May 18 : Normal and Exclusive Form Games


Download Game Theory and Mechanism design by Narahari
Watch gametheoryonline on YT
Informal Problem sets every lecture end. Assignments will be from them.
Non cooperative game theory : Every player has a set of actions, independent of
other.

Student Coordination Problem


2 students 1 and 2. Actions for each :
• Attend Class - C
• Relax - R
This matrix contains payoffs for each situations as 2-tuples.

1 2 C R
C (100,100) (0,0)
R (0,0) (10,10)

Elements needed to model games


1. Set of players N = [1, 2, . . . n]
2. Stratergy of players S1 , S2 . . . where Si is the set of actions
3. Payoffs or utilities ui which are functions of elements is S1 × S2 . . . Sn
called the stratergy profile.

Prisoner’s Dilemma
2 friends caught for cheating, in two different room. The actions are
• Confession (C)

1
• Not Confession (NC)
The utilities are

.
u1 (N C, N C) = −2u1 (N C, C) = −10u1 (C, N C) = −1u1 (C, C) = −5..

1 2 NC C
NC (-2,-2) (-10,-1)
C (-1,-10) (-5,-5)

Pigou’s Network
2 travellers , 2 roads, highway (H) or local road (L)

1\2 H L
H (-1,-1) (-1,-1/2)
L (-1/2,-1) (-1,-1)

Entry game
Firm A is already in maket and making profit 2.
Firm B can enter in the market or not.
If A accomodates B, both share profit. i.e. both get 1.
If A fights B, both incur a loss of 1 and A also loses 0.5 to B, i.e we get (0.5,-0.5)
utility.
This can be modeled via a graph, which represents the extensive form.

Extensive form
To define it, we need
• The set of players N = [1, 2 . . . n]
• Actions of each individual player (dependent on actions of others) Ai (a
set)
• Terminal histories Z (set) (A history is a string of actions)
• All sub-histories SZ (set) (This does not contain the terminal histories)
• p : SZ → N which tells which player is to take action. p(ϵ) = 1 for example.
• An information set is a set of sub-histories in SZ that lead to a situation
(a collection of nodes connected by dashed lines in the graph). The set of
all information sets that end at a node where player i is taking action is
called Ii .
• The utilities for terminal histories. ui : Z → R .

2
Matching Pennies
2 coins for 2 players. 1 wants coins to match, 2 doesn’t.

H T
H (1,-1) (-1,1)
T (-1,1) (1,-1)

If we were to

Perfect Information
It’s when each information set for any player is a singleton ..i.e a situation can
be reached in only one way.

Strategy
A strategy for a player is a predetermination of its actions based on the informa-
tion it has. In math, this becomes

si : Ii → Ai s.t. si (J) ∈ C(J) ∀J ∈ Ii

where C(J) is the set of all actions possible at a situation (a bunch of nodes)
corresponding to information set J .
Different strategies for same player are denoted as si1 , si2 . . .

Strategy Form
We can express the outcomes (utilities) of the game based on the strategies that
each player has. Tabulated, it’s called the strategic form.

Problem Set
Question 1
Answer
Agents are denoted by [1..n]
Each agent has 2 actions Ai = [v, w] .
Thus strategies are si1 = Ii → v and si2 = Ii → w
Q
Strategy profile is S = i Si where Si = {si1 , si2 }
Utility function :

3
Figure 1: Untitled

(
−(1 + nv /n) si = (Ii → v)
ui (s) =
−(2 − nv /n) si = (Ii → w)

where nv (s) = |{si ∈ s | si = (Ii → v)}|

Figure 2: Untitled

Answer
The agent list is same. The actions are now Ai = {v, vw, w} which are also the
strategies (as functions)
Q
The strategy profile is S = i Si
Define

nsv (s) := |{si ∈ s | si = (Ii → v) or si = (Ii → vw)}|nvw (s) := |{si ∈ s | or si = (Ii → vw)}|

4
Figure 3: Untitled

So the utility function is



−1 − (nsv /n)
 si = (Ii → v)
ui (s) = −1 − (nvw /n) si = (Ii → vw)

−2 + ((nsv − nvw )/n) si = (Ii → w)

Question 2

Figure 4: Untitled

Answer
N = [1 . . . n]
Ai = {1, 2 . . . 100}
sij = (Ii → j)
Si = {sij | j ∈ Ai }

5
Q
S= i Si
For any s ∈ S we define
xi (s) = si (Ii )
2
P
X(s) = 3n i xi (s)

yi (s) = |xi (s) − X(s)|


ymin = min{yi | i ∈ N }
W (s) = {i ∈ N | yi = ymin }
(
100/|W (s)| i ∈ W (s)
ui (s) =
0

Question 3
N = {A, B, C}
Si = {P, N P } for i ∈ N
S = SA × SB × SC
for s ∈ S , define
X(s) = {i ∈ N | si = P }
uA (s) = |X(s)| mod 2
uB (s) = δ|X|,2
uC (s) = δ|X|,0
As a table
If sC = N P

A B P NP
P (0,1,0) (1,0,0)
NP (1,0,0) (0,0,1)

If sC = P

A B P NP
P (1,0,0) (0,1,0)
NP (0,1,0) (1,0,0)

6
Figure 5: Untitled

Question 4
N = {A, B}
Ai = {C, N C}
Z = {(C, C), (C, N C), (N C, C), (N C, N C)}
SZ = {(ϵ), (C), (N C)}
IA = {{(ϵ)}}
IB = {{(C)}, {(N C)}}
p : SZ → N is defined as

p({ϵ}) = Ap({C}) = Bp({N C}) = A

uB : Z → R is defined as
uB ((C, C)) = −5
uB ((C, N C)) = −10
uB ((N C, C)) = −1
uB ((N C, N C)) = −2
uA : Z → R is defined as
uA ((C, C)) = −5
uA ((C, N C)) = −1

7
uA ((N C, C)) = −10
uA ((N C, N C)) = −2
A has 2 strategies

sA1 = ({ϵ} → C)sA2 = ({ϵ} → N C)

B has 2 strategies

sB1 = ({C} → C, {N C} → C)sB2 = ({C} → C, {N C} → N C)sB3 = ({C} → N C, {N C} → C)sB4 = ({C} →

The strategic form :

A B 1 2 3 4
1 (-5,-5) (-5,-5) (-1,-10) (-1,-10)
2 (-10,-1) (-2,-2) (-10,-1) (-2,-2)

Question 5

Figure 6: Untitled

Figure 7: Untitled

Answer
N = {A, B}
Ai = {C, N C}

8
Z = {(a1 , C), (a1 , N C), (a2 , C), (a2 , N C), (a3 , C), (a3 , N C), (a4 , C), (a4 , N C)}
SZ = {(ϵ), (a1 ), (a2 ), (a3 ), (a4 )}
IB = {{(ϵ)}}
IA = {{a1 , a2 , a3 , a4 }}
p : SZ → N is defined as

p({ϵ}) = Bp({a1 }) = Ap({a2 }) = Ap({a3 }) = Ap({a4 }) = A

uB : Z → R is defined as
uB ((a1 , C)) = −10
uB ((a1 , N C)) = −2
uB ((a2 , C)) = −5
uB ((a2 , N C)) = −2
uB ((a3 , C)) = 10
uB ((a3 , N C)) = −10
uB ((a4 , C)) = −5
uB ((a4 , N C)) = −10
uA : Z → R is defined as
uA ((a1 , C)) = −10
uA ((a1 , N C)) = −2
uA ((a2 , C)) = −5
uA ((a2 , N C)) = −2
uA ((a3 , C)) = −1
uA ((a3 , N C)) = −10
uA ((a4 , C)) = −5
uA ((a4 , N C)) = −10
B has 4 strategies

sB1 = ({ϵ} → a1 )sB2 = ({ϵ} → a2 )sB3 = ({ϵ} → a3 )sB4 = ({ϵ} → a4 )

A has 2 strategies

sA1 = ({a1 , a2 , a3 , a4 } → N C)sA2 = ({a1 , a2 , a3 , a4 } → C)

The strategic form :

A B 1 2 3 4
1 (-2,-2) (-2,-2) (-10,-1) (-10,-1)
2 (-1,-10) (-5,-5) (-1,-10) (-5,-5)

9
May 20 : Assumptions in Game Theory
Utility Theory
We actually have no idea how to represent preferences of agents as numbers or
rankings.
For outcomes o1 , o2 , o3 , an agent could have these preferences :

o! >A o2 o2 >A o3 o3 >A o1

Such situations must be avoided. We need these properties to do stuff :


1. Completeness : Any agent can compare any two outcomes
2. Transitivity : o1 ≥A o2 and o2 ≥A o3 imply o1 ≥A o3
An ordinal preference aka ranking is assigning smallest natural numbers.
Cardinal ranking is assigning numbers proportional to intensity.
Cardinal rankings can be figured out by “lotteries”. Assign the most preferred
outcome (say o1 ) utility 1 and least preferred (say o2 ) 0 . Then ask the agent
whether he will prefer a certain outcome over a lottery with different probabilities
of o1 , o2 .
To avoid weird stuff happening, we need anther axiom :
1. Substitubality : If o3 = o4 then lottery between o5 and o3 is same utility
to lottery between o5 and o4 if the probabilitis are same.
The other 2 axioms are
1. Decomposibility (o1 - 0.76 , o2 - 0.24) = (o1 - 0.6 , (o1 - 0.4 , o2 - 0.6))
2. Monotonicity
3. Continuity
Von-Nuemann Morgenstren Theorem :
If all 6 assumptions are satisfied, you can have a sane utility function.
Preposition : Any affine transformation u′A (o) = a uA (o) + b also works if a > 0
P
Zero sum game : x∈N ux (o) = 0 ∀o ∈ Z
Agents are “selfish” or rational i.e. they want to maximise their utilities regardless
of their’s utilities.

Problem Set
Question 1
First table : Transform player B’s utilities as u′B (s) = (uB (s) − 10)/20 and you
get a zero sum game

10
Figure 8: Untitled

Second table : For an affine transformation f (x) = ax + b , on 2nd player’s


utilities to give a zero sum game, we need f (3) = 2 and f (0) = −2 from the first
row. Thus, a = 4/3, b = −2 , which fails for other row. Thus, 2nd game is not
equivalent to a zero sum game.

Question 2

Figure 9: Untitled

The only way B can have no way of determining the the sum (or equivalently the
2 numbers) is if the product P (given to B) cannot be factorised uniquely.This
must happen for all possible (p, q) such that p + q = S , the number given to A .
Otherwise, A wouldn’t be able to say the first statement . Here are the results
of such analysis on different values of S :

Code
def check(S,P):
D = S**2 - 4*P
if D < 0 : return False
sD = int(D**0.5)
ok = False
if sD**2 == D : ok = True
elif (sD+1)**2 == D :
ok = True
sD += 1;

11
if not ok : return False
p = (S - sD)
q = (S + sD)
if p%2 != 0 : return False
p = p//2
q = q//2
if p <= 1 : return False
#if q > 20 : return False
#print(S,P,p,q)
return True

def unique_factorisation(P):
q = None
for p in range(2,int(P**0.5)+1):
if q is None:
if P%p == 0:
q = P//p
if q < 2 : return None
#if q > 20 : q = None
else:
if q <= p : break
if P%p == 0 and p < P: return None
if q is None : return None
return (P//q,q)

tocons = []
for S in range(4,41):
good = True
for p in range(2,S-1):
q = S - p
if q < 2: break;
if p > 20: break;
if q > 20: continue;
P = p*q
f = unique_factorisation(P)
if f is not None:
assert f[0] == p and f[1] == q
good = False
print(S,"is bad since",S,"=",p,"+",q,"and",p,"*",q,"=",P,"is the only factorisat
break

if good :
print(S,"is good")
tocons.append(S);

print(tocons)

12
for S in tocons:
print("S =",S)
for p in range(2,S-1):
q = S - p
if q < p : break
P = p*q
good = True
for Sother in tocons:
if Sother == S : continue
if check(Sother,P) :
good = False
break
if good : print("P : ",P,", p :",p,", q :",q)
print("\n")
4 is bad since 4 = 2 + 2 and 2 * 2 = 4 is the only factorisation of 4
5 is bad since 5 = 2 + 3 and 2 * 3 = 6 is the only factorisation of 6
6 is bad since 6 = 2 + 4 and 2 * 4 = 8 is the only factorisation of 8
7 is bad since 7 = 2 + 5 and 2 * 5 = 10 is the only factorisation of 10
8 is bad since 8 = 3 + 5 and 3 * 5 = 15 is the only factorisation of 15
9 is bad since 9 = 2 + 7 and 2 * 7 = 14 is the only factorisation of 14
10 is bad since 10 = 3 + 7 and 3 * 7 = 21 is the only factorisation of 21
11 is good
12 is bad since 12 = 3 + 9 and 3 * 9 = 27 is the only factorisation of 27
13 is bad since 13 = 2 + 11 and 2 * 11 = 22 is the only factorisation of 22
14 is bad since 14 = 3 + 11 and 3 * 11 = 33 is the only factorisation of 33
15 is bad since 15 = 2 + 13 and 2 * 13 = 26 is the only factorisation of 26
16 is bad since 16 = 3 + 13 and 3 * 13 = 39 is the only factorisation of 39
17 is good
18 is bad since 18 = 5 + 13 and 5 * 13 = 65 is the only factorisation of 65
19 is bad since 19 = 2 + 17 and 2 * 17 = 34 is the only factorisation of 34
20 is bad since 20 = 3 + 17 and 3 * 17 = 51 is the only factorisation of 51
21 is bad since 21 = 2 + 19 and 2 * 19 = 38 is the only factorisation of 38
22 is bad since 22 = 3 + 19 and 3 * 19 = 57 is the only factorisation of 57
23 is good
24 is bad since 24 = 5 + 19 and 5 * 19 = 95 is the only factorisation of 95
25 is good
26 is bad since 26 = 7 + 19 and 7 * 19 = 133 is the only factorisation of 133
27 is good
28 is bad since 28 = 11 + 17 and 11 * 17 = 187 is the only factorisation of 187
29 is good
30 is bad since 30 = 11 + 19 and 11 * 19 = 209 is the only factorisation of 209
31 is good
32 is bad since 32 = 13 + 19 and 13 * 19 = 247 is the only factorisation of 247
33 is good

13
34 is bad since 34 = 17 + 17 and 17 * 17 = 289 is the only factorisation of 289
35 is good
36 is bad since 36 = 17 + 19 and 17 * 19 = 323 is the only factorisation of 323
37 is good
38 is bad since 38 = 19 + 19 and 19 * 19 = 361 is the only factorisation of 361
39 is good
40 is good
Now, B know that the sum S can only be amongst 11, 17, 23, 25, 27, 29, 31, 33,
35, 37, 39, 40. . . . Further, the maximum value of this sum is capped to 40 for
obvious reasons. For B, this limit will be lower, based on whatever P is, but for
us, it’s 40.
B also knows P and thus will be able to determine (p, q) for each (S, P ).
For B to know completely which is correct p, q , there must be only
√ one S that
2
gives a normal√ answer..i.e. the product P is such that p = (S − S − 4P )/2
2
and q = (S + S − 4P )/2 are both integers bigger than 1 only for one single S
among the ones that B considered, namely the one A knows. Thus, A is able to
figure out P .
Here are the different possibilities of of what P values might “work” for different
values of S by which I mean that P will not work for any other sum Sother that
B tries to calculate (p, q) for.
S = 11
P : 18 , p : 2 , q : 9
P : 24 , p : 3 , q : 8
P : 28 , p : 4 , q : 7

S = 17
P : 52 , p : 4 , q : 13

S = 23
P : 112 , p : 7 , q : 16

S = 25
P : 46 , p : 2 , q : 23
P : 114 , p : 6 , q : 19
P : 136 , p : 8 , q : 17
P : 156 , p : 12 , q : 13

S = 27
P : 50 , p : 2 , q : 25
P : 92 , p : 4 , q : 23
P : 110 , p : 5 , q : 22
P : 152 , p : 8 , q : 19
P : 176 , p : 11 , q : 16

14
S = 29
P : 54 , p : 2 , q : 27
P : 78 , p : 3 , q : 26
P : 138 , p : 6 , q : 23
P : 190 , p : 10 , q : 19
P : 208 , p : 13 , q : 16

S = 31
P : 58 , p : 2 , q : 29
P : 184 , p : 8 , q : 23
P : 220 , p : 11 , q : 20
P : 228 , p : 12 , q : 19
P : 238 , p : 14 , q : 17
P : 240 , p : 15 , q : 16

S = 33
P : 62 , p : 2 , q : 31
P : 116 , p : 4 , q : 29
P : 200 , p : 8 , q : 25
P : 230 , p : 10 , q : 23
P : 242 , p : 11 , q : 22
P : 260 , p : 13 , q : 20
P : 266 , p : 14 , q : 19
P : 272 , p : 16 , q : 17

S = 35
P : 96 , p : 3 , q : 32
P : 124 , p : 4 , q : 31
P : 174 , p : 6 , q : 29
P : 196 , p : 7 , q : 28
P : 250 , p : 10 , q : 25
P : 264 , p : 11 , q : 24
P : 276 , p : 12 , q : 23
P : 294 , p : 14 , q : 21
P : 304 , p : 16 , q : 19
P : 306 , p : 17 , q : 18

S = 37
P : 160 , p : 5 , q : 32
P : 186 , p : 6 , q : 31
P : 232 , p : 8 , q : 29
P : 312 , p : 13 , q : 24
P : 322 , p : 14 , q : 23
P : 330 , p : 15 , q : 22
P : 340 , p : 17 , q : 20

15
P : 342 , p : 18 , q : 19

S = 39
P : 74 , p : 2 , q : 37
P : 224 , p : 7 , q : 32
P : 248 , p : 8 , q : 31
P : 290 , p : 10 , q : 29
P : 308 , p : 11 , q : 28
P : 324 , p : 12 , q : 27
P : 338 , p : 13 , q : 26
P : 350 , p : 14 , q : 25
P : 360 , p : 15 , q : 24
P : 368 , p : 16 , q : 23
P : 374 , p : 17 , q : 22
P : 378 , p : 18 , q : 21
P : 380 , p : 19 , q : 20

S = 40
P : 111 , p : 3 , q : 37
P : 175 , p : 5 , q : 35
P : 231 , p : 7 , q : 33
P : 256 , p : 8 , q : 32
P : 279 , p : 9 , q : 31
P : 319 , p : 11 , q : 29
P : 351 , p : 13 , q : 27
P : 364 , p : 14 , q : 26
P : 375 , p : 15 , q : 25
P : 384 , p : 16 , q : 24
P : 391 , p : 17 , q : 23
P : 396 , p : 18 , q : 22
P : 399 , p : 19 , q : 21
P : 400 , p : 20 , q : 20
As we can see, only for S = 17 and S = 23 , there is only one P value that works.
So, A can say the last statement only if the numbers given to him is 17 or 23.
So, (p, q) = (4, 13) or (p, q) = (7, 16) are the possibilities.
Two numbers, two mathematicians puzzle
Sum and Product Puzzle

May 22
Dominant Stratergies
Strongly dominant : a strategy’s utility is greater than all others for a player,
for any strategy profile of other profile.

16
Weakly dominant : a strategy’s utility is greater than or equal to all others for a
player, for any strategy profile of other profile, except for at least one case it’s
strictly greater.
Very weakly dominant : a strategy’s utility is greater than or equal to all others
for a player, for any strategy profile of other profile. (No more reestrictions)
Thus, every strongly dominant strategy (SDS) is a weakly dominant strategy
(WDS).
And every WDS is a VWDS.

Dominated strategies
Strongly dominated : There exists a strategy for a player that gives strictly
better utility in all cases.
Weakly dominated : . . . . . . . . . . . . . . . . . . greater than or equal to . . . . . . . . . . . . .. ,
except for one case.
Very Weakly dominated : . . . . . . . . . . . . . . . . . . ..greater than or equal to . . . . . . . . . ..

Braisses paradox
In question 1 of problem set 1, we encounter the paradox.
Clearly, vw dominates v . Thus, nvw = 0 and so, we get vw dominating w and
so, the total cost for each player becomes -2 . Without the teleportation device,
it would be -1.5 at best.
Thus, adding another path can make things worse rather than better.

Dominant strategy equilibrium


The strategy profile where strategy for each player is weakly dominant is a
dominant strategy equilibrium

Iterated dominance equilibrium


Keep removing dominated strategies for both player, shrinking the game, and
you reach equilibrium eventually.

Problem Set
Question 1
Answer : (B, Y ) .. obvious

17
Figure 10: Untitled

Figure 11: Untitled

18
Question 2
1) x < 2 .
2) x ≤ 2
3) x > 2

Question 3

Figure 12: Untitled

There are 3 ways to proceed:


1. Remove X and Z to get (A,Y) and (B,Y) as equilibrium
2. Remove X , Remove A to get (B,Y) and (B,Z) as equilibrium
3. Remove Z , Remove B to get (A,X) and (A,Y) as equilibrium

Question 4

Figure 13: Untitled

1) (A,X) is final equilibrium


2) (A,Y) is final equilibrium
3) (A,X) and (A,Y) are equilibrium.

Question 5
All of them choosing D is the dominant strategy equilibrium. A better outcome
would be all of them choosing R if n > 3 .

A property of equilibrium
The stratergy profile is the iterative dominance equilibrium, regardless of the
order of players in which their moves are eliminated.

19
Figure 14: Untitled

Figure 15: Untitled

20
May 24
Pure Strategy Nash equilibrium
It’s all strategy profiles s such that for each player i ,

ui (s′i , s−i ) ≤ ui (si , s−i ) ∀s′i

where s−i is the strategy profile for players in N − {i} at the equilibrium.
Nash equilibrium prevents unilateral deviations ..i.e. deviations by just one
player.
In practice, with multiple iterations of the game, players stick to one of the Nash
equilibrium.

Best Response
It’s a mapping bi : S−i → P (Si ) such that it has the best strategies to play,
given the strategy profile of others.

Question 6

Figure 16: Untitled

The minmax value is min(5,3,5,3) = 3 which is obtained for strategies B and D


of player 2
The maxmin value is max(3,-2,3) = 3 which happens for strategies A and C of
player 1
I’ll ignore the (5,-1) pair, and think of it as (5,-5) coz obv it’s a typo.
The Nash equilibria are (A,B), (A,D), (C,B) and (C,D). All of them give utility
3 to player 1.
A Nash equilibrium in a zero sum game is one that is maximum along the rows,
and minimum along the colums. Since it’s maximum along the rows, it’s a

21
possible value of minmax. Moreover, it’s minimum along collumns and thus
smaller than other maximums (for a particular column) . Thus it’s also the
minmax. Similarly, it’s also the maxmin.
So if a PSNE exists in a zero sum game, it’s also the minmax and maxmin.

Problem Set
Question 1

Figure 17: Untitled

Dominant Strategy
There are no dominant strategies. Although there might be iterative dominance.

Minmax
For Player 1 , it’s min(9,3,2,5) = 2 , which happens for strategy C of player 2
For Player 2 , it’s min(6,3,5,8) = 3 , which happens for strategy B of player 1

Maxmin
For player 1 it’s max(0,0,1,0) = 1 which happens for strategy C of player 1
For player 2 it’s max(0,2,1,1) = 2 which happens for strategy B of player 2

PSNE
b1 (A) = Db1 (B) = Bb1 (C) = Bb1 (D) = C

b2 (A) = Bb2 (B) = Bb2 (C) = Cb2 (D) = D

Thus, there is only one PSNE, which is (B, B)

22
Figure 18: Untitled

Dominant Strategy
None. But there is iterative dominance

Minmax
For player 1 it’s min(14,10,12) = 10 which happens for strategy B of player 2
For player 2 it’s min(7,5,1) = 1 which happens for strategy C of player 2

Maxmin
For player 1, max(2,0,0) = 2 , at A for player 1
For player 2, max(1,0,0) = 1 at A for player 2

PSNE
b1 (A) = {A, B}b1 (B) = Bb1 (C) = Candb2 (A) = {A, B}b2 (B) = Bb2 (C) = A

Thus, PSNE are (A, A), (B, B) .

Question 2
N = [1..n]
Ai = {S, H}

2
 x(s) ≥ m and si = S
ui (s) = 1 si = H

0 x(s) < m and si = S

23
Figure 19: Untitled

where x(s) is number of hunters going for stag. The utility function is rank
based, and not cardinal utility.
Clearly if x(s−i ) ≥ m − 1 , then bi (s−i ) = S , otherwise bi (s−i ) = H .
It’s impossible for a strategy profile s to be a Nash equilibrium if m−1 ≤ x(s) < n
, because the the hunters who didn’t choose S have not picked the best response.
Similarly, it’s impossible for a strategy profile s to be a Nash equilibrium if
0 < x(s) < m − 1 because then hunters who didn’t choose H didn’t pick the
best response.
Thus, the only two possibilities left are x(s) = n or x(s) = 0 , which happen
only for s = (S, S . . . S) and s = (H, H . . . H) respectively, and are indeed Nash
equilibria.

Question 3

Figure 20: Untitled

An easy observation to make is that

∀s2 ∈ S2 , b1 (s2 ) ⊆ {(a, a), (a, b), (b, a), (b, b)}

More specifically, suppose s2 = (x2 , y2 ) then

24

a+b a+b


(a, a) if x2 > 2 and y2 > 2
a+b a+b
(a, b) x2 > y2 <


 if 2 and 2
a+b a+b
b1 (s2 ) = (b, a) if x2 < 2 and y2 > 2
a+b a+b

(b, b) if x2 < and y2 <



 2 2
a+b a+b

{(a, a), (a, b), (b, a), (b, b)} if x2 = 2 and y2 = 2

And we also know that b2 (s1 ) = s1 ∀s1 .


Thus, there cannot be a PSNE.

Question 4

Figure 21: Untitled

u1 is a downward parabola in a1 , and is thus maximised at a1 = a2 /2 .


1
Similarly, u2 is a downward parabola in a2 , and has a maxima a2 = 2a1 . .
Thus

1
b1 (a2 ) = a2 /2b2 (a1 ) =
2a1

So, for a Nash equilibrium (a1 , a2 ) , we need

1
a1 = a2 /2a2 =
2a1
1
Which means a2 /2 = 2a2 =⇒ a2 = ±1 .
So, (1/2, 1) and (−1/2, −1) are the only PSNE

Question 5
Suppose s∗−i is when we ui (s∗i , s∗−i ) is at its minimum value, for the strongly
dominant strategy s∗i . Then, we can write

min ui (s∗i , s−i ) = ui (s∗i , s∗−i ) > ui (si , s∗−i ) ≥ min ui (si , s−i )
s−i s−i

Thus, it’s also the maxmin strategy

25
May 26 : Mixed Strategies and MSNE
Problem Set
Question 1

Figure 22: Untitled

Game 1
Suppose s∗1 = (p, 1 − p) and s∗2 = (q, 1 − q) then

0p+2(1−p) = 6p+0(1−p) =⇒ p = 1/46q+0(1−q) = 3q+6(1−q) =⇒ q = 2/3

Thus, ((1/4, 3/4), (2/3, 1/3)) is the MSNE

Game 2
Strategy A of player 1 is dominated (weakly) . So, 1 will never play that. Then,
strategy B for player 2 would be dominated. Thus, ((0, 1), (1, 0)) = (B, A) is
the MSNE and also the PSNE

Question 2
The expected utilities of player 2 are all 5/2 for every strategy. Thus all of them,
and in fact, any mixed strategy too is a possible “best” response. Thus, q ∗ is a
best response.
Similarly, for player 1, the expected utilities for strategy A and C is 5/3 , while
for B is 4/3. Thus, 1 will never play B, which restricts us to only the p with
p2 = 0 , which p∗ certainly falls in. Thus, p∗ is a best response.
So, (p∗ , q ∗ ) is a MSNE

Question 3
This is a zero sum game and can be represented as

26
Figure 23: Untitled

u1 (x, y) = xT Ayu2 (x, y) = −xT Ay

where x ∈ ∆(S1 ), y ∈ ∆(S2 ) and A is the utility matrix for player 1.


In this game, A = I and thus, we just have

u1 (x, y) = −u2 (x, y) = x · y

̸ i is a best response strategy


Suppose xi = minj∈{1..k} xj , then yi = 1, yi = 0∀j =
for player 2. Similarly, if yi = maxj∈{1..k} yj then xi = 1 is a best response
strategy for player 1.
So, for any nash equilibrium (x, y) , what must happen is that

xi = 0 if yi ̸= max yj yi = 0 if xi ̸= min xj
j j

Thus, any (x, y) where all coordinates of x are not equal is not a nash equlibrium,
since then , the coordinates of x with more than minimum value will have
corresponding yi to be 0. for y to be the best response. But then x won’t be the
best response for y , since xi ̸= 0 for i such that yi ̸= max yj .
Thus, x = y = 1/p is the only MSNE

Question 4
Strategy A of player 2 is dominated. So, supp(1) = {A, B}, supp(2) = {B, C} is
a possibility.
Suppose x∗ = (p, 1 − p) and y ∗ = (0, q, 1 − q) , then

3p = 2p + 2(1 − p) =⇒ p = 2/31 − q = q =⇒ q = 1/2

Making the support any smaller, would just resut in linear combinations of
PSNEs, which there aren’t any.

27
Figure 24: Untitled

Figure 25: Untitled

Question 5
maxmin
For x = (p, 1 − p) , the expected utilities for s2 = A and s2 = B is c + (a − c)p
and d + (b − d)p . Now,

d−c
c + (a − c)p < d + (b − d)p =⇒ (d − c) > (a − b + d − c)p =⇒ p <
a−b+d−c

Thus
(
d−c
c + (a − c)p if p <
min xT Ayj = d−c+a−b
j∈{A,B} d − (d − b)p

Clearly, the maximum (wrt p ∈ [0, 1]) is achieved when p = (d − c)/(d + a − c − b)


, which is

ad − bc
max min xT Ay =
x∈∆(S1 ) y∈∆(S2 ) a+d−b−c

minmax
For y = (q, 1 − q) , the expected values for strategies A, B of player 1 are
b + (a − b)q and d − (d − c)q .
Just like before,

d−b
b + (a − b)q < d − (d − c)q =⇒ q <
a+d−b−c

28
So, just like before,
(
d−b
d − (d − c)q if q <
max xTi Ay = ad −b−c
i b + (a − b)q

So, the maximum is achieved at q = (d − b)/(a + d − b − c) , which gives

ad − bc
min max xT Ay =
y∈∆(S2 ) x∈∆(S1 ) a+b−b−c

Question 6

Figure 26: Untitled

Case 1 : supp(2) = {A, B}


(7 − 2)p = (7 − 2)(1 − p) =⇒ p = 1/2

By symmetry, q = 1/2 . Thus y = (1/2, 1/2, 0) and x = (1/2, 1/2) . This is not
a MSNE since y ′ = (0, 0, 1) gives a better utility to 2 , and thus y is not the best
response.

Case 2 : supp(2) = {A, C}


(6 − 2)p = (7 − 5)(1 − p) =⇒ p = 1/3(7 − 2)q = (4 − 3)(1 − q) =⇒ q = 1/6

This is in fact a MSNE since y = (1/6, 0, 5/6) dominates y ′ = (0, 1, 0) if


x = (1/3, 2/3).

Case 3 : supp(2) = {B, C}


Clearly, strategy B for player 1 is dominant. Thus, x = (0, 1) . From there
it’s easy to see that y = (0, 0, 1) is the only option. But this is wrong, since it
corresponds to the case where supp(1) = {B}, supp(2) = {C} which would isn’t
waht we are looking for. This would be a (potential) PSNE, but we know it
isn’t.

29
Case 4 : supp(2) = {A, B, C}
This is impossible since equating first 2 expected utilities for 2 would give p = 1/2
, while equating 1st and 3rd would give p = 1/3
Thus, x = (1/3, 2/3) and y = (1/6, 0, 5/6) is the only MSNE

May 28 : Matrix Games


Problem Set

Figure 27: Untitled

Question 1

Figure 28: Untitled

We have fixed x ∈ ∆(S1 ) and we wish to minimise (xT A)y = (AT x) · y wrt
y ∈ ∆(S2 ) , where “ · ” is the dot product. Now, let m = minj (AT x)j , so that

X X X
∀y ∈ ∆(S2 ), y · (AT x) = yj (AT x)j ≥ yj m = m yj = m = min(AT x)j
j
j j

30
Thus,

min y · (AT x) ≥ min(AT x)j = min ej · (AT x) ≥ min y · (AT x)


y∈∆(S2 ) j j y∈∆(S2 )

Thus,

X X
min xT Ay = min(AT x)j = min (AT )ji xi = min aij xi
y∈∆(S2 ) j j j
i i

Question 2
    
10 5 x1 10x1 + 5x2
AT x = =
6 7 x2 6x1 + 7x2

The maxmin problem can be stated as

max zz ≤ 10x1 + 5x2 z ≤ 6x1 + 7x2 x1 + x2 = 1x1 ≥ 0, x2 ≥ 0

This can be solved by hand to get

x1 = 1/3, x2 = 2/3, z = 20/3

The minmax problem would be

min zz ≥ 10y1 + 6y2 z ≥ 5y1 + 7y2 y1 + y2 = 1y1 ≥ 0, y2 ≥ 0

This too can be solved easily to get

y1 = 1/6, y2 = 5/6, z = 20/3

Thus,

x = (1/3, 2/3)y = (1/6, 5/6)xT Ay = 20/3

is the MSNE

Question 3
The maxmin problem :
max zz ≤ 0x1 +0.5 x2 −0.5x3 +0x4 z ≤ 1x1 +0x2 +1x3 +0x4 x1 +x2 +x3 +x4 = 1x1 , x2 , x3 , x4 ≥ 0

It’s easy to see that x4 = 0 . Now,

31
Figure 29: Untitled

Case 1 : x3 = 0
This gives us

x1 = 1/3, x2 = 2/3, z = 1/3

Case 2 : x2 = 0
This case is impossible.

Case 3 : x1 = 0
This gives us

x2 = 3/4x3 = 1/4z = 1/4

If none of x1 , x2 , x3 are zero, the we just haven’t found a critical point yet and
can still keep doing a projected gradient descent or something.
Thus

x = (1/3, 2/3, 0, 0)z = 1/3

is the solution

The minmax problem


min zz ≥ 0y1 +1y2 z ≥ 0.5 y1 +0y2 z ≥ −0.5 y1 +1y2 z ≥ 0y1 +0y2 y1 , y2 ≥ 0y1 +y2 = 1

The 3rd and 4th inequalities are redundant. Thus we get

y = (y1 , y2 ) = (2/3, 1/3)z = 1/3

So the MSNE is

x = (1/3, 2/3, 0, 0)y = (2/3, 1/3)xT Ay = 1/3

32
Question 4
7 and 8 are not possible, because of this (obvious) theorem :
If aij = akl are nash equilibrium values, then so are ail and akj .
There is simply no way that you could place 2 (or 1) non-Nash-equilibrium values
in a 3 by 3 grid filled with Nash equilibrium values.

Assignment
MCQs
1. 2
2. 3
3. 1
4. 3
5. 1 . Nash equilbrium value is 4/7
6. 3
7. 2
8. 1
9. 4 : (B,D) , (D,B) thus 2
10. 4
11. 1
12. 2

Numericals
1. 2
2. 20
3. 100
4. 2
5. 37 15 = 315
6. 1/12
7. 0
8. -1
9. 7/3
10. 2/3 coz ((2/3,1/3),(2/3,1/3),(2/3,1/3)) is a MSNE
11. -1/2 or 3
12. 5 (4 with x = 3/4) (1 with x = 1)
13. 2

Jun 7
Fixed Point
Let X ∈ Rn and f : X → X be a function. A point x ∈ X is a fixed point for f
if f (x) = x .

33
Trivia : For any continuous function f : [a, b] → [a, b] , there is a fixed point
x ∈ [a, b] .

Convex Set
A set X ⊆ Rn is a convex set if for any a, b ∈ X , for all t ∈ [0, 1] , we have
ta + (1 − t)b ∈ X .

Compact Set
A set X is a compact set if for all infinite series ai for i = 1, 2 . . . , with the
property that ai ∈ X ∀i ∈ N , we have limn→∞ an = a∞ ∈ X .

Correspondence
A correspondence is a set valued function ϕ : A → 2B where 2B is the power set
of B . This can also be seen as a relation f . Essentially, a correspondence ϕ
function gives the set of all images of a particular element as per the relation f ,
i.e. ϕ(x) = {y ∈ B | f (x, y)} ∀x ∈ A.

Graph of Correspondence
For a correspondence ϕ : A → 2B , it’s graph , Gr(ϕ) ⊆ A × B is given by

Gr(ϕ) = {(a, b)|a ∈ A, b ∈ ϕ(a)}

Kakatuni’s Fixed Point Theorem


Let A be a non-empty, compact and convex subset of some Euclidean space R⋉ .
Let ϕ : A → 2A be a set-valued function (correspondence) on A with a closed
graph and the property that ϕ(x) is non-empty and convex for all x ∈ A. Then
ϕ has a fixed point, i.e. a point x such that x ∈ ϕ(x) .

Existence of MSNE
Consider the set valued function b : A → 2A where A =
Q
i ∆(Si ) , given by

Y
b(σ) = bi (σ−i )
i

It’s easy to see that σ ∈ b(σ) if and only if it is a MSNE, by definition. Moreover,
we have these properties :
1. b(σ) is non-empty (due to definition of bi )
2. b(σ) is convex (due to additive nature of utilities)
3. b(σ) has a closed graph (true for finite games)

34
Thus, by Kakatuni’s fixed point theorem, a fixed point of b , i.e. a MSNE exists,
for any finite game.

Complexity of PSNE computation


Succint Games
Consider n players, with each having m strategies at max. There are O(mn )
strategy profiles in that case. Then, finding the PSNE is done in O(mn ) , while
the input size is nmn , Thus, finding PSNE is done in time (elementary steps)
linear in the input size.

Graphical Games
The input size can be reduced all the way to O(nmd+1 ) in case of a graphical
game where each player’s utility depends on the actions of at most d other
players. In this representation, finding PSNE takes time that is exponential in
the size of input.
All we know is that verifying where a given profile is a PSNE is a task that
takes linear time. That is, computing PSNE for any general graphical game
is in computation complexity class NP. In fact, every other task in NP can be
represented using this task too, and thus, it is NP-complete.
So, then, if we did find a poly-time-algo for this task we would have P=NP and
all hell would break lose.
For some specific cases of graphical games, like trees for example, we do have a
poly-time algorithm.

Jun 13 Problem Set


• 1
– a
(A,CF) is SPE , (A,CE) , (A,CF) are the PSNE
– b
∗ Code for graph
digraph G {

K -> R [label="R"];
K -> E [label = "E"];
E2 [label = "E"];
E3 [label = "E"];
R -> E2 [label = "H"];
R -> E3 [label = "B"];
R2 [label = "R"];

35
R3 [label = "R"];
E -> R2 [label = "H"];
E -> R3 [label = "B"];
E2 -> O1 [label = "H"];
E2 -> O2 [label = "B"];
E3 -> O3 [label = "H"];
E3 -> O4 [label = "B"];
R2 -> O5 [label = "H"];
R2 -> O6 [label = "B"];
R3 -> O7 [label = "H"];
R3 -> O8 [label = "B"];
O1 [label = "(2,2,1)"];
O2 [label = "(0,0,0)"];
O3 [label = "(0,0,0)"];
O4 [label = "(1,1,2)"];
O5 [label = "(2,2,1)"];
O6 [label = "(0,0,0)"];
O7 [label = "(0,0,0)"];
O8 [label = "(1,1,2)"];
}

Figure 30: Untitled

There are 42 NE. I have computed all of them in this notebook :


https://github.com/pranav-joshi-iitgn/FAI/blob/main/NE.ipynb
• 2
1. 2nd player
2. 2nd player if m = 2, else player 1
3. Cut at col 1, row 2 (from below) to make it a 2 × ∞ game, or the
explicit strategy for n × n .
• 3

36
1. Any nash equilibrium is of form (a1 , b2 (a1 )) , and the SPE is a∗1 =
argmaxa1 u1 (a1 .b2 (a1 )) , thus u1 (a∗1 , b2 (a∗1 )) ≥ u1 (a1 , b2 (a1 )) ∀a1
• 4

p
−1 + (1 + 3(α − q1 )) α − q1
3q22 +2q2 −(α−q1 ) = 0q2 = = p ≤ α−q1
3 1 + 1 + 3(α − q1 )

Thus, utility of player 1 is

1 1 p
u1 = αq1 − q12 + q1 + q1 1 + 3α − 3q1 − q13
3 3
Thus
du1 1√ 1√ q1
dq1 = α − 2q1 + 1/3 + 3 1 + 3α − 3q1 + 2 1+3α−3q1 − 3q12
• 5
Suppose inspector inspects with probability p , then if p < 1/10 , the
inspectee will cheat. If p > 1/10 , then inspectee with not cheat. Then
second case is favorable for the inspector. In that case, p → 0.1+ is the best
scenario. If the inspectee is optimistic, then we get a strong stackelberg
equilibrium with p = 0.1 and inspectee not cheating. We don’t have a
weak stackelberg equilibrium, since it needs p > 0.1 and p to be as close to
0.1 as possible.

Jun 15
To watch : Tim Roughgarden

Practice set
Question 1

Figure 31: Untitled

37
• Case 1 : P, Q ∈ [0, 1]2
In this case, the Nash equilibrium (a, d) and the minimum cost case
(P + Q)/2
√ are both feasible. It’s easy to show that the highest value of
PoA is 2 in this case.
• Case 2 : a ∈ [0, 1], d ∈ [0, 1]
That is to say, P is above the square and Q is to the right of it.
Now, the NE is feasible, but the
√ minimum cost is sometimes not. Thus,
PoA is still upper bounded by 2
• Case 3 : a ∈ [0, 1], d ∈ (1, 2]
In this case, the PoA we obtain is always smaller than the cost at NE and
minimum cost woud be same if we used the NE for given conditions, but
then reflected Q along the line y = 1 . Then, by triangle inequaility, the
cost of NE for the reflected case would be more, while minimum cost would
stay the same or decrease. Thus, the PoA can’t be at its highest value.
• Case 4 : a ∈ [0, 1], d > 2 , b < 2
Now, we can reflect P about y = 1 . Here, the cost of NE remains same,
and minimum cost either decreases or remains same when we √ reflect. But
then using triangle inequality, the PoA is always less than 2 .
• Case 5 and 6
These are exact
√ opposites of 3 and 4 , and by symmetry, the PoA is still
bounded by 2
• Case 7 : a, d > 1
In this case, both the NE and minimum cost case are the same, i.e. (1, 1)
and thus PoA is 1.

Question 2
Since xp ≤ 1 , so at NE, the cost is 1 . Now, for any x , the cost is (1 − x) + xp+1
, which is minimised at x = (p + 1)−1/p to give the cost 1 − x + (1 + p)−1 x =
xp −1
1 − 1+p = 1 − p(1 + p)−1−1/p = 1 − (1/p)1/p (1 + p−1 )−1−p .
−1
Now, limp→∞ 1 − (1/p)1/p (1 + p−1 )−1−p = 1 − (1 + 0)−1−0 limq→0+ q q = 0+ .
Thus PoA goes to ∞ as p → ∞ .

Question 3 and 4
No figure given with a δ

38
Figure 32: Untitled

Figure 33: Untitled

39
Question 5
Si = {v, vw, w}
Suppose a, b fraction of people opt for v, w , then the cost for v, vw, w are

c(v) = a+(1−a−b)+2 = 3−bc(w) = 1+2(1−a−b+b) = 3−2ac(vw) = 1−b+1−a−b+2−2a = 4−3a−2b

Only one of a or b being 0 is impossible. If a + b = 1 , then c(v) = c(w) = 7/3 ,


while c(vw) = 5/3 , which isn’t right.
So, the only option left is that all roads are used, with equal cost, which gives us

b = 2aa + 2b = 1 =⇒ a = 1/5, b = 2/5

giving the total cost as 3c(v) = 3(13/5) = 39/5 .


For optimal cost,

max a(3 − b) + b(3 − 2a) + (1 − a − b)(4 − 3a − 2b)1 ≥ a, b ≥ 0

Jun 17
Correlated Equilibrium
Let N be list of players, Si , ui be strategies andQutilities for individual players
i ∈ N , then for the set of strategy profiles S = i Si , any correlated strategy
τ ∈ ∆(S) is a distribution over all the profiles in S .
τ can also be seen as a function, where τ (s) is the probability of profile s .
Then, the utility of a correlated strategy is just this expected value :

X
ui (τ ) = τ (s)ui (s)
s∈S

usually called the “expected payoff”.


The way this works if that there is an agent who decides the profiles to be
tentatively played by each player, and based on that, he creates the distribution
τ , which is known to every player. Then, he picks one of the pure profiles at
random, which isn’t known to anyone, and tells each player secretly what they
should play. The players are free to choose whatever they want to play though,
and are not penalised if they disobey the agent. They are also intelligent and
know Bayesian inference, AND they assume that other players WILL follow the
agent’s advice.

40
For example for τ = {(A, A) : 0, (A, W ) : 1/3, (W, A) : 1/3, (W, W ) : 1/3}
, if player 1 is told to play W , we would have 2 cases to consider, (W, A)
and (W, W ) with probabilities τ ((W, A)) = (1/3)/(1/3 + 1/3) and τ ((W, W )) =
(1/3)/(1/3+1/3) , i.e player 2 (if he obeys the agent) will play W with probability
0.5 and A with probability 0.5.
Note that in general, the expected payoff for i ∈ N when si is assigned to him,
and he plays any strategy s′i ∈ Si is

X
ui (s′i |τ, si ) = τ (s−i |si )ui (s′i , s−i )
s−i

where τ (s−i |si ) = τ (si , s−i )/ s′ τ (si , s′−i ) is the probability of other player
P
−i
being told to play s−i , given that player i is told to play si .
Player 1 can now calculate the expected utilities in the two cases where he plays
W and A , so he, being rational, will only play the one with highest expected
payoff.
So, only those τ where deviation is not favourable, are actually played.
This is called Correlated Equilibrium, and can be stated as :

X X
τ (si , s−i )ui (si , s−i ) ≥ τ (si , s−i )ui (s′i , s−i ) ∀si , s′i ∈ Si , ∀i ∈ N
s−i ∈S−i s−i ∈S−i

The left hand side is the expected utility if player i is assigned si , and plays
that, times the probability of si being assigned to i . Similarly, the RHS is if
player i is assigned si , but plays s′i .
Rearranging, we get that τ is a correlated strategy equilibrium if and only if . . .

X
τ (s)(ui (si , s−i ) − ui (s′i , s−i )) ≥ 0∀si , s′i
s−i ∈S−i

Computational complexity
Now, to actually compute such an equilibrium, we need toPsolve an LP with
all of these inequalities as well as the additional constraints s∈S τ (s) = 1 and
τ (s) ≥ 0 ∀s ∈ S .
There is one constraint for each si , s′i pair, with 2|S−i | variables (τ (s) values) in
each constraint, and there are |Si |2 such pairs for each i .
Thus, there are i |Si |2 such inequality constraints.
P

So, the solution can be found in polynomial time.

41
Existence
Any MSNE can also be viewed as a correlated equilibrium, i.e. it “induces”
a τ that is an equilibrium. Thus, if MSNE exists, then so does a correlated
equilibrium.

Contracts
Every correlated strategy can be visually represented in the utility plane as a
point.

Figure 34: Untitled

With correlated equilibrium, the players can reach more of the plane, namely
the area bounded by blue lines except the area bounded by orange lines, than
with just MSNE .
But, suppose we want to reach all possible utilities related to all correlated
strategies, i.e. the area bounded by the blue lines, then we need to add another
possibility to the game, known as contracts.
A contract fixes the strategy of players who sign it. Each player has an option
to sign it or not sign it. The contract specifies what strategies a subset C ⊆ N
must play if only and all of the players in C sign the contract.

42
Thus a contract τ is a vector [τC ]C⊆N where τC is a distribution over the
correlated strategies of the subset (aka coalition) C , that is to say τC ∈ ∆(SC )
where SC = ×i∈C Si .
Now, of course, the players wouldn’t just choose any random τC . They would
choose one where they are benefiting the most, both individually, and collectively.
Similarly, for the correlated equilibrium case, the players would want to fol-
low a very particular correlated strategy, not just any of the many correlated
equilibrium.

Problem Set
Question 1

Figure 35: Untitled

Game 1
Let the probabilities be

A B
A a b
B c d

Then we can write

(2−0)a+(0−1)b ≥ 0(0−2)c+(1−0)d ≥ 0(2−0)a+(0−1)c ≥ 0(0−2)b+(1−0)d ≥ 0 =⇒ 2a ≥ bd ≥ 2c2a ≥ cd ≥ 2b

This combined with a, b, c, d ≥ 0 and a + b + c + d = 1 gives us the solution space


for the equilibria .
Out of these, one that maximises the sum, i.e. 4a + 2d is obviously a = 1, b =
c=d=0.

43
Game 2
This game has the utilities as a linear transformation of game 1, so it’s the same
as game 1.

Question 2

Figure 36: Untitled

If a payoff x is in the space, then it is achieved by a correlated strategy τx


. So, for two payoffs x, y , there exist τx , τy . Thus, any convex combination
px + (1 − p)y is achieved by pτx + (1 − p)τy .
It’s easy to see that if τx , τy are correlated equilibria, then so if pτx + (1 − p)τy
since the inequalities can be just scled and added as p, 1 − p ≥ 0 .

Question 3

Figure 37: Untitled

With the usual notation,

−a+2b ≥ 0c−2d ≥ 0−a+2c ≥ 0b−2d ≥ 06a+2b+7c = 40/96a+7b+2c = 36/9a+b+c+d = 1

Let’s assume that a = 0 , since a < 2b, 2c and 2d < b, c . This gives,

2b+7c = 40/97b+2c = 36/9 =⇒ c−b = 4/45c+b = 76/81 =⇒ c = 208/405b = 172/405d = 5/81 = 25/405

Thus the correlated equilibrium

τ = {(A, A) : 0, (A, B) : 172/405, (B, A) : 208/405, (B, B) = 25/405}

is the answer.

44
Question 4

Figure 38: Untitled

Suppose the probabilities are w, x, y, z respectively for (A, A), (A, B), (B, A), (B, B)
, then we have

w ≥ (1 − c)x(1 − c)z ≥ y(1 − b)y ≥ (1 + d)w(1 + d)x ≥ (1 − b)z

Thus, we have

(1 + d)w ≥ (1 + d)(1 − c)x ≥ (1 − c)(1 − b)z ≥ (1 − b)y ≥ (1 + d)w

So, all of these quantities are the same, let’s say (1 + d)(1 − c)(1 − b)t . Then we
can say

w = (1 − c)(1 − b)tx = (1 − b)tz = (1 + d)ty = (1 + d)(1 − c)t

Then this gives us

1
t(2 + d − b)(2 − c) = 1 =⇒ t =
(2 + d − b)(2 − c)

Thus, the correlated equilibrium is

(1 − c)(1 − b) (1 − b) (1 + d)(1 − c) (1 + d)
τ = {(A, A) : , (A, B) : , (B, A) : , (B, B) : }
(2 − c)(2d − b) (2 − c)(2d − b) (2 − c)(2d − b) (2 − c)(2d − b)

Question 5

Figure 39: Untitled

No, because of the very definition of correlated equilibrium and “strictly” domi-
nant strategy.

45
The inequality in the definition for cor. eq. will be false when player i is assigned
si .

Jun 19
Nash Bargaining
A correlated strategy is “feasible” if, not given any option to bargain (suggest a
better τ ), the players would still agree to, since it’s better than working alone.
Given the set of utilities of all feasible correlated strategies ,F , and the security
values (maxmin values), as a vector v = [vi ]i , one can find the utility of the
correlated strategy that the players would finally agree to, if they were allowed
bargaining (suggesting a correlated strategy that is better for some group of
players than the current strategy, thus making them sign up for the new contract
rather than the old one)
This is called the Nash Bargaining solution, given as f (F, v) . It has these
properties :
1. Independent Rationality : Each player gets more than security value
2. Scale covariance : Any linear transformation of the utlities doesn’t change
the solution.
3. Independence of Irrelevant Alternatives : If f (F, v) ∈ G ⊆ F , then
f (G, v) = f (F, v)
4. Symmetry : If the game is symmetric, i.e. vi is same for all i , and
{P u|u ∈ F } = F , where P is any permutation matrix, then (f (F, v))i is
same for all i .
It is computed as

Y
f (F, v) ∈ argmaxx∈F s.t. x≥v (xi − vi )
i

This only works for N = 2 .


It fails for other N because effective negotiation can give us a strategy better
than the computed Nash bargaining solution.
For N > 2 , we need to look at Transferable Utilities, Coalitions, etc, etc.

Problem Set
Question 1
3 points are discarded immediately. Among other three we draw lines and on
those lines, find the points that maximise (x1 − 2)(x2 − 1) and the point that
does that is (8, 6) .

46
Figure 40: Untitled

Figure 41: Untitled

Figure 42: Untitled

47
Question 2
To find the minmax of player 1, suppose player 2 has mixed strategy (q, 1 − q)
then the expected utilities for 1 is 2 + 3q, 3 − q . Thus, we want to find
minq max(2 + 3q, 3 − q) , which occurs at q = 1/4 and gives value 11/4 .
Similarly, for 2nd player, we want minp max(2 + 3p, 3 − p) = 11/4 .
So, the status quo point is v = (11/4, 11/4) . Due to the symmetry if the game,
the solution f (F, v) is on x1 = x2 , and is thus (5, 5)

Question 3
N = {1, 2, 3}v(123) = 6v(12) = v(23) = v(13) = 4v(1) = v(2) = v(3) = 0

Question 4

Figure 43: Untitled

Let’s say that G = {1, 2, 3} and T = {4, 5} . Then,

N = {1, 2, 3, 4, 5}v(C) = 10000 × min(|C ∩ G|, |C ∩ T |) ∀C ⊆ N

Question 5

Figure 44: Untitled

The first one is, the second is not.

Question 6
v(1) = v(2) = v(3) = 0v(12) = (5−1−2)/6 = 1/3v(13) = (7−1−3)/6 = 1/2v(23) = (9−2−3)/6 = 2/3v(123) = 1

48
Figure 45: Untitled

Figure 46: Untitled

Question 7
1. Yes, for C = {2, 3}
2. Yes, for C = {1, 3}
3. {0.25, 0.51, 0.24} , for C = {2, 3}
4. 0
5. {5.5/16, 8/16, 2.5/16} for C = {1, 3}
6. No

Doubts
Mid Term Assessment
Assessment 1
Assignment 2 Responses

Jun 21
Shapley Value Axioms
1. Symmetry : If two players are equivalent, their values are same.
2. Dummies : If a player has 0 marginal contribution to every coalition, then
it gets 0. P
3. Non-wastefulness or Efficiency : i ϕi = v(N P )
4. Strategic equivalence : If w(C) = av(C) + i∈C ci for some a ≥ 0 and
fixed ci for i ∈ N , then ϕi (w) = aϕi (v) + ci .
5. Additivity : If w = v1 + v2 , then ϕ(N, w) = ϕ(N, v1 ) + ϕ(N, v2 )

Problem Set
Question 1
Let’s assume v(N ) = 100000 , so that v({l, r}) = 1 ∀l ∈ L, r ∈ R where L is the
set of left glove suppliers and R is for right glove suppliers. By forming pairs,

49
Figure 47: Untitled

Figure 48: Untitled

50
and then adding their values up, we see that the sum is exactly 100000 , and
thus, the only sensible way is that each pair in the pairing must have a value
of 1. Now, the way in which we do the pairing is arbitrary, and thus each pair
{l, r} for l ∈ L, r ∈ R must have value 1.
From here, it’s easy to see that xl = a is the same for any l ∈ L and xr = b is
the same for any r ∈ R , along with a + b = 1
As for the Shapely value, because of symmetry and non-wastfulness, it is also
in the core. Now, because of the symmetrical nature of this game, the Shapely
value for any left glove guy is the same as right glove guy. Thus, xi = 0.5 ∀i ∈ N
.

Question 2

Figure 49: Untitled

Suppose x and y are two imputations in the core, then for all C ⊆ N ,

X X X X
xi ≥ v(C) yi ≥ v(C) =⇒ pxi +(1−p)yi ≥ v(C)∀p ∈ [0, 1] =⇒ (px+(1−p)y)i ≥ v(C)
i∈C i∈C i∈C i∈C

P
Also, i∈N (px + (1 − p)y)i = pv(N ) + (1 − p)v(N ) = v(N ) .
Thus, the imputation z = px + (1 − p)y is such that

X X
zi = v(N ) zi ≥ v(C) ∀C ⊆ N
i∈N i∈C

Question 3
For the above game,

v(1) = v(2) = v(3) = 1v(12) = v(23) = v(13) = 2v(123) = 3

The core is (1, 1, 1) .


I’m unsure of the whole game being a coalition game in fact.

51
Figure 50: Untitled

Question 4
v(12) = v(13) = v(14) = 400v(123) = v(124) = v(234) = v(134) = 400v(1234) = 400

Thus, the core is empty, since if it were not,

x1 +x2 +x3 ≥ 400x1 +x2 +x4 ≥ 400x1 +x3 +x4 ≥ 400x2 +x3 +x4 ≥ 400 =⇒ 3(x1 +x2 +x3 +x4 ) ≥ 4∗400 =⇒ x1 +

which is stupid.
But, the Shapley value always exists . The marginal cost of adding any member
to a 3 member coalition is 0, and so is for adding to null coalition.
For 1, there are 3 of 1 membered coalitions that give 400, and 3 of 2 membered
coalitions. Thus,

400
x1 = (3 × 2! + 3 × 2!) = 200
4!

Now, for 2, the only coalitions where it has a marginal cost are {1}, {3, 4} ,
giving us

400
x2 = (2! + 2!) = 200/3
4!
For 3 and 4, there is again, 1 one membered coalition, and 1 two membered
coalition, giving 200/3 as the value.

52
Figure 51: Untitled

Question 5
1. 3 player majority voting.
2. The game in question 4
3. Prisoner’s Dilemna

Question 6

Figure 52: Untitled

1 1 1
x1 = (a + b + 2(d − c))x2 = (a + c + 2(d − b))x3 = (b + c + 2(d − a))
6 6 6

Question 7

Figure 53: Untitled

Additivity is broken

Question 8
1
The conditions are

53
Figure 54: Untitled

X X
α(C) = 1 ∀C ⊆ N and α(C) ≥ 0 ∀C ⊆ N =⇒ v(C)α(C) ≤ v(N )
C⊇{i} C⊆N

, which in this case turn out to be

α1 +α12 +α13 +α123 = 1α2 +α12 +α23 +α123 = 1α3 +α13 +α23 +α123 = 1α1 , α2 , α3 , α12 , α23 , α13 , α123 ≥ 0 =⇒ aα

2
Already done in question 6. Just plug in d = 1

3
The necessary and sufficient condition is convexity, and thus

for i = 1 : a ≤ 1−cb ≤ 1−c for i = 2 : a ≤ 1−bc ≤ 1−b for i = 3 : b ≤ 1−ac ≤ 1−a

So, essentially,

a + b ≤ 1b + c ≤ 1c + a ≤ 1

Jun 23
Fairness
We want to answer from a designer’s perspective, given different outcomes and
preferences (utilities), how to “aggregate” the preferences to reach a specific
outcome.

54
That is, we want to find a social choice function f that, given the agent preferences,
gives the outcome, and it satisfies the conditions of “efficiency” and “fairness”.
One way of fair division is Fitness.

Fitness
Give more resource to those who use it the best.
The problem is that “best” is subjective.
Another way to make a division (allocation) is Pareto-optimality. This is the
approach that a Welfarist would take.

Pareto Optimal
A division d1 is dominated by d2 if d1i ≤ d2i ∀i ∈ N . and ∃i ∈ N s.t. d2i > d1i
. A division that is never dominated is pareto-optimal.
The problem with this is that there are many Pareto-optimal divisions at times.

Collective utility
Utilitarian Welfare
P
Yet another criterion is simply the maximisation of sum of utilities W = i vi .

Egalitarian Welfare
Or, we could maximise the minimum of the utilities, W = mini vi

Nash Welfare
Just like in Nash bargaining,
Q we can also come P up with a fair division given by
maximising W = vi = exp(W0 ) where W0 = i ln ui . We know this doesn’t
really work all the time for |N | > 2 , but still, why not try it.
All of these satisfy these properties:

Axioms
Completeness
Given profiles (divisions) v1 , v2 , we can compare them as either v1 ≻ v2 or
v2 ≺ v1 , or v1 ∼ v2 . Note that this isn’t the same as v1 = v2 .
Essentially,

v1 ≻ v2 ⇐⇒ W (v1 ) > W (v2 )v1 ≺ v2 ⇐⇒ W (v1 ) < W (v2 )v1 ∼ v2 ⇐⇒ W (v1 ) = W (v2 )

55
Transitivity
v1 ⪰ v2 v2 ⪰ v3 =⇒ v1 ⪰ v3

Monotonicity
If a divison v1 dominates v2 , written as v1 ≥ v2 , then v1 ⪰ v2 .

Symmetry
If two agents are essentially the same than v1 ∼ v2 is v2 is just v1 with the
utilities of those two agents interchanged.

Independence of Unconcerned Agent.


If vi1 = vi2 , then v−i1 ≻ v−i2 ⇐⇒ v1 ≻ v2

Independence of Scale
v1 ≻ v2 ⇐⇒ λv1 ≻ λv2 ∀λ > 0

Pigou Dalton Transfer Principle


If, for a division v , vi > vj for i, j ∈ N , then construct a division v ′ with
vi > vi′ > vj′ > vj and vi′ + vj′ = vi + vj , then W (v ′ ) ≥ W (v) , i.e. collective
utility does not decrease if equality is favoured.

Welfare functions
The functions with satisfy all these axioms are of a family {Wp | p ∈ (−∞, 1]}
called welfare functions, given as
P p
P ui
 0<p≤1
Wp (u) = i log ui p=0
 P p

− i ui −∞ < p < 0

It’s easy to see that maximising W1 is the same as Utilitarian Welfare, and W0
is the same as Nash Welfare, and p → −∞ is Egalitarian Welfare.

Assignment 2
1. 1,2,4
2. 4 (doubtful)
3. Two player zero sum game of picking numbers between 0 and 1.
1. 1 (i.e. 0, since whatever distribution 1 gives, 2 will “pick” the interval
where the integral is highest, thus making his utlity positive or 0)

56
2. 1 (i.e. 0, since that is just the maxmin value of player 2, but we can
do the exact same analysis)
3. 2 (i.e. 0, from b and c)
4. 1
5. 2
6. 3 (w = 50, L = 25)
7. 1
8. 3

20 40
60 30

F1 \ F2 E W
N 70,80 65,85
S 85,65 80,70

9. 4
10. 2
• Explanation
For CE , then condition is

X
τ (si , s−i )(ui (si , s−i ) − ui (s′i , s−i )) ≥ 0∀si , s′i ∈ Si
s−i

This can be rewritten as

si ∈ argmaxs′i ⃗ui (s′i ) · ⃗τi (si )

where ⃗τi (si ) = [τ (si , s−i )]s−i is the row or column vector of probabili-
ties in the matrix, and ⃗ui (s′i ) = [ui (s′i , s−i )]s−i is the row or column
vector of utilities corresponding to s′i . (These are all completely made
up terms, only for my convenience)
So, for a r × c bi-matrix, we’ll have to check the condition r + c times
in total for all different si for each i .

57
– Utility vectors

⃗u1 (A) = (2, 0, 0)⃗u1 (B) = (1, −1, 1)⃗u1 (C) = (0, 0, 2)⃗u2 (A) = (2, 1, 0)⃗u2 (B) = (3, −1, 3)⃗u2 (C) = (0

For different options this gives different values for ⃗τi (s′i ) . Remember,
for each ⃗τi (si ) , we need to check if ⃗ui (si ) gives the biggest dot product
or not, among all ⃗ui (s′i ). This can be done in O((r + c)rc) many steps.
(Red ⃗τ is faulty of not letting the CS be a CE)
– 1

τ1 (A) = (0.5, 0, 0)τ1 (B) = (0, 0, 0)τ1 (C) = (0, 0, 0.5)τ2 (A) = (0.5, 0, 0)τ2 (B) = (0, 0, 0)τ2 (C) = (0

– 2 : No faulty probability vector

τ1 (A) = (1/4, 0, 0)τ1 (B) = (3/8, 0, 3/8)τ1 (C) = (0, 0, 0)τ2 (A) = (1/4, 3/8, 0)τ2 (B) = (0, 0, 0)τ2 (C

– 3

       
τ1 (A) 1/4 0 1/8 τ2 (A) 1/4 0 0
τ = τ1 (B) =  0 0 0  τ T = τ2 (B) =  0 0 1/8
τ1 (C) 0 1/8 1/2 τ2 (C) 1/8 0 1/2

– 4
 
0 1/4 1/8
τ = 0 0 0 
0 1/8 1/2

Essentially, for the probability matrix, we want each probability row


vector’s dot product to be maximised by the corresponding utility
row vector (of row player’s utility matrix), and same for columns (but
with column player’s utility matrix)
11. 3
• Explanation

−a+2b ≥ 0c−2d ≥ 0−a+2c ≥ 0b−2d ≥ 0 =⇒ a/2, 2d ≤ b, ca+b+c+d = 1 =⇒ 1−b−3c/2 ≤ a1−c−

58
We know that the game is symmetric and so if a point with x + y = s
is a corr. equilibrium. , then so is (s/2, s/2), thus we only wish to find
the maximum and minimum x such that (x, x) would be a correlated
equilibrium. Obviously, then c = b, and so, that can be done as

max 6a + 9ba + 5b/2 ≥ 1a − 2b ≤ 0a + 2b ≤ 1a, b ≥ 0

Some cases of concern are (a, b) = (1/2, 1/4) , (a, b) = (0, 1/2) . Thus,
the maximum is x = 21/4 = 5.25 .
Similarly, the minimum can be done as

min 6a + 9b5b/2 + a ≥ 12b − a ≥ 0a + 2b ≤ 1a, b ≥ 0

Thus, the candidates for (a, b) are (0, 2/5), (1/2, 1/4), (4/9, 2/9) .
Thus, the minimum is x = 3.6 .

Figure 55: Untitled

This eliminates options 1,2,4


12. 3
• Explanation
For the first case, the point is on x+2y = 20 , or (x−10/3)+2(y−6) =
8 − 10/3 = 14/3 . Thus, we are looking for (using weight AM-GM)
the point when (x − 10/3) = 2(y − 6) = 7/3 ,i.e. (17/3, 43/6) . Thus,
player 2 gets more in first case.

59
Figure 56: Untitled

For the second case, again, x + 2y = 30 =⇒ (x − 2) + 2(y − 6) =


6 =⇒ x − 2 = 2(y − 6) = 3 =⇒ (x, y) = (5, 7.5) , so player 2 gets
more
FAIPlot3
13. 7.48547
P1000 R 1000 R 999
It’s n=1 1/n ∈ [1 + n=2 x−1 dx, 1 + 1 x−1 dx] = [1 + ln(500), 1 +
ln(999)] ≈ [7.2, 7.9] . In fact, we can compute this to abitrary precision as
Pk −1 P1000 Pk
1n + ln(1000/(k + 1)) ≤ n=1 1/n ≤ 1 n−1 + ln(999/k) .
But, since we have computers, and not calculators, the exact value is
around 7.48547
14. 0 (working on proof)
15. 48 Substracting the status-quo point, we get

A′ = (−1, 7)B ′ = (4, 6)c′ = (6, 5)D′ = (7, 4)E ′ = (8, 2)F ′ = (9, −2)G′ = (−3, −2)

Points with negative coordinates are not to be considered obviously. So,


we are left with

B ′ = (4, 6) = (0, 2)+(4, 4)C ′ = (6, 5) = (2, 1)+(4, 4)D′ = (7, 4) = (3, 0)+(4, 4)

60
It’s easy to see that the point we are looking for is a point on either B ′ C ′
or C ′ D′ , which are x + 2y = 16 and x + y = 11 . Clearly, maximum of
xy is achieved at (x, y) = (8, 4) and (x, y) = (5.5, 5.5) on these, which are
both, not on the line segments. Thus, C ′ = (6, 5) is the maxima. Adding
the status quo point to this, we get C = (8, 6), giving 48 as the product of
utilities. .
16. -6
17. 0

x1 ≥ 2x2 ≥ 4x3 ≥ 1x1 +x2 ≥ 12x1 +x3 ≥ 10x2 +x3 ≥ 14 =⇒ 2(x1 +x2 +x3 ) ≥ 36but x1 +x2 +x3 = 16

So, the core is empty. Sorry.. not in the mood for the conventional method.
18. 2
19. 2 (Additivity and Non-wastefulness (Efficiency))
20. 0
Consider the 2 player coalition game v(1) = v(2) = 0 , v(12) = 1 . It has a
non empty core. Now suppose we define v ∗ (1) = v ∗ (2) = 1 and v ∗ (12) = 1
, then the core is empty, which means that the new game isn’t balanced.
21. 82

min x1 +x2 +x3 x1 ≥ 12x2 ≥ 10x3 ≥ 20x1 +x2 ≥ 20x2 +x3 ≥ 70x1 +x3 ≥ 50

This can be simplified to

min a + b + ca, b, c ≥ 0b + c ≥ 40a + c ≥ 18

which gives us a solution (a, b, c) = (0, 40, 0) , which converted back gives
(x1 , x2 , x3 ) = (12, 50, 20) .
22. 1/3 (x1 , x2 , x3 ) = (0, 0, 1) and

1
ϕ3 = (2 + 2) = 2/3
3!
23. 9

Sequence Before After Contr.


1,2,3 24 34 10

61
Sequence Before After Contr.
1,3,2 10 22 12
2,1,3 24 34 10
2, 3, 1 8 18 10
3,2,1 0 6 6
3,1,2 0 6 6
Total 54
/ 3! 9

24. 17/30 ~= 0.5666666666666667 N = {P, S, T, C1 , C2 }


v(i) = v(ij) = 0 ∀i, j ∈ N
Since the president’s vote is necessary, so he always has a marginal contri-
bution of 1, when coalition can approve proposal.
There is 1 of 4 membered coalitions, 4 of 3 membered coalitions, and 5 of
2 membered coalitions that president contributes to. Thus,
1 1 2
ϕP = 5! (4! × 0! + 4 × 3! × 1! + 5 × 2! × 2!) = 5! (2 × 4! + 20) = 5 + 16 = 17/30
25. 1

Jun 25
Cake Cutting
Given a distribution of utility of different sectorsR of a cake for each player say
1
ui (x) where x = θ/2π , normalised as vi ([0, 1]) = 0 ui (x)dx = 1 , then we want
to cut a cake, represented by [0, 1] into pieces Ai ⊆ [0, 1].

Proportional Cake Cutting


R
We want to cut such that vi (Ai ) = Ai
ui (x)dx ≥ 1/n . There are various
algorithms to achieve this.

Moving Knife
Start at x0 = 0 and whenever we encounter vi ([xt , xt+1 ]) ≥ 1/n , give it to i .
Then remove that player. The last unclaimed piece is given to the remaining
person.
The people who are not last get a piece that they value at 1/n . For the last
person, since all the given pieces valued less than 1/n for him, thus the last piece
value more than 1/n.
In practice, after every cut, we have to ask everyone to mark the endpoint of
the next piece that would have valuation 1/n if they got it. Thus, it’s an O(n2 )
algorithm.

62
Even and Paz Algorithm.
Ask each person to mark the cake such that it’s divided into a left and right
piece, both at equal valuation for the player. Then cut at the median of these
marks. Divide the players into a Left and Right group based on the position of
their mark (whether it’s on left or right piece) . This ensures that each player is
assigned to the piece (among left or right) that they value at Vi ≥ 1/2 . Then,
if we somehow proportionally divide these pieces individually, then each player
would get vi ≥ Vi /(n/2) ≥ 1/n . To do the proportional division, we can do the
same thing again, and then again, and so on (except when a single person is
assigned to a piece).
This is a recursive algorithm which requires splits the group in half at every
stage, (i.e. it form a binary tree structure) . Thus, the number of levels is log2 n
. At each stage, in total (over all pieces), we have to ask all the n players to
make a mark. Thus, this requires n log2 n queries.

Envy Free (EF) Cake Cutting


An allocation is envy free if ∀i, ̸ ∃j s.t. vi (Ai ) < vi (Aj ) . EF implies proportion-
ality, since if you value your piece more than all other pieces, you value it more
than 1/n .

For n = 2
Let the first player divide into equal pieces and let the second player choose one
to his liking and give first the other. Thus, both are envy free.

For n = 3 : Selfridge-Conway division


Call the players as P1,P2,P3. These are the steps to be taken :
1. P1 cuts the cake into 3 equal pieces A,B,C (according to him).
2. P2 trims the best piece A into the trimmed piece A1 and the remaining
part, A2, such that A1 is equivalent to B, which is better than C for him.
A2 is kept aside for now.
3. P3 chooses a piece among A1,B,C
4. P2 chooses A1 if P3 didn’t choose it, otherwise chooses B.
5. P1 chooses the piece that is remaining (which is either B or C , both more
than A1)
Now, it remains to divide A2. Let’s call, whoever chose A1 as PA, and other
as PB. PB must not get an more cake than what P1 gets, otherwise P1 will be
envious, while PA can get as much he wants from A2, and P1 won’t be envious.
1. PB cuts A2 in 3 equal parts.
2. PA chooses the best piece, call it A21
3. P1 chooses the better of remaining pieces, call it A22
4. PB takes the last piece.

63
Thus, PB isn’t envious since equal division, P1 isn’t envious since PA doesn’t
matter, and he got better piece than PB and PA isn’t envious too since he too
got the better piece.

For n > 3
The Selfridge-Conway procedure can be generalised (according to wikipedia). It
requires 2n−2 + 1 cuts in the first step, so ig it isn’t really practical.
Since we have actual algorithms to make envy division for any n , thus, an envy
free division, which is also a proportional division always exists.

Indivisible resource allocation


Suppose M = {1, 2 . . . m} is the set of goods to be allocated to P agents N =
{1, 2 . . . n} , where an allocation Ai ⊆ M gives value vi (Ai ) = a∈Ai vi (a) to
the agents, then how do we make proportional or envy free divions ?

Envy free by 1 (EF1).


There might not even be any envy free allocations the way that we ave defined
envy. But we can relax the definition a bit.
Let’s say that a person i is EF1 type envious of some person j if both of these
happen :
1. vi (Aj ) > v1 (Ai )
2. ̸ ∃k ∈ Aj s.t. vi (Aj − {k}) ≤ vi (Ai )
The second restriction say that people can tolerate if someone is better than
them by just one item.
Thus, a person i is envy free by 1 (EF1) to j if

∃k ∈ Aj , vi (Ai ) ≥ vi (Aj − {k})

Round Robin Algorithm


This algorithm gives us am EF1 division of goods.
Arrange the agents in a fixed (but arbitrarily chosen) order. Then in that order,
each agent chooses whatever he likes the most out of remaining items. Once the
last player is done, start again from top.
Preposition 1 : A player cannot be envious of anyone that comes later/lower in
the cycle, since in each cycle, the items chosen by lower ranks are of lower utility
to the that player than what he chose in that cycle.
So, the first player is not envious of anyone.

64
Proof by Induction that RR works :
Assume RR works for all (N, M, v) with |M | = k − 1 .
We want to prove that for a game (N, M, v) with |M | = k , RR works.
Consider the game (N, M − {a1 }, v) after the first player has chosen his first item
a1 as per RR. It boils down to the same game, but the second player starting
first, and first player playing last in the cycle. If we forget about the first item
that is now not in the game, none of the players would be envious of the first
(now the last) player. Thus, they would also be envy free by 1 item if we did
consider the item.
Now, for the game after 1st player chooses first item, let’s assume by induction
that the RR works, then in the original game, all the players other than 1st
would be envy free by 1 to each other. But now we know that everyone is also
EF1 to player 1, and player 1 is envy free to everyone.
Thus, RR also works for the original game too.
Base case : |M | = 1

EFX
A person i is EFX type envy free from a person j if

∀k ∈ Aj , vi (Ai ) ≥ vi (Aj − {k})

This is different from EF1 since it has “∀k” rather than “∃k” .
It’s easy to see that
1. envy free implies EFX
2. EFX implies EF1
We have proved the existence of EF1 type divisions, but that does not say
anything about the existence of proportional divisions.

Problem Set
Question 1
Since Eddie doesn’t care which share he gets, we are left with Doug and Fred.
Doug cannot get S2 or S3 since 30% < 100%/3 , so he must be given S1. Similarly,
Fred cannot get S2. So, he must get S3, since S1 is allocated already. So,
Doug gets S1 , Eddie gets S2 and Fred gets S3.
They are all envy free since they got maximum utility anyway.

65
Figure 57: Untitled

Figure 58: Untitled

Question 2
Pep + Sausage/2 and Mushroom + Sausage/2 .
There are many other ways too.

Question 3

Figure 59: Untitled

NO
Consider N = {1, 2} with v1 = v2 , M = {1, 2, 3, 4, 5} with

v(5) = 100v(4) = 60v(3) = 40v(1) = v(2) = 0v(42) = 70v(41) = 60v(32) = 40v(31) = 80v(A∪{5}) = v(A)+v(5)

Other values may be filled via additivity.


Now, according to RR, these happen :
1. A1 = {5}
2. A2 = {4}
3. A1 = {5, 3}
4. A2 = {4, 2}
5. A1 = {5, 3, 1}
Now, 2 is not EF1 to 1 .

66
Question 4

Figure 60: Untitled

For n = 2
WLOG, suppose player 1 is not EF1 of player 2, then

v1 (A2 ) − v1 (g) > v1 (A1 ) ∀g ∈ A2

Now suppose g ∗ = argming∈A2 v2 (g)/v1 (g) , then the above equation would apply
as

v1 (A2 ) > v1 (A1 ) + v1 (g ∗ )

but at the same time, another important equation we can use is


P
v2 (g ∗ ) g∈A2 v2 (g) v2 (A2 )

≤P =
v1 (g ) g∈A2 v1 (g) v1 (A2 )

Multiplying this with the other equation, we get

v2 (g ∗ ) v2 (A2 )
(v1 (A1 )+v1 (g ∗ ))( ) < v1 (A2 )( ) = v2 (A2 ) =⇒ (v1 (A1 )+v1 (g ∗ ))(v2 (g ∗ )−v2 (A2 )) < −v1 (A1 )v2 (A2 )
v1 (g ∗ ) v1 (A2 )

Thus, for A = (A1 , A2 ) is not the allocation that maximises Nash Welfare.

For n > 2
Assume true till n = k .
For n = k + 1 , let A∗ = (A∗1 . . . A∗n ) be a NW solution for (N, M, v) .
Then, (A∗1 . . . A∗n−1 ) is a NW solution for (N − {n}, M − An , v) , and thus, the
allocation (A∗1 . . . A∗n−1 ) is EF1 , or more simply, any two agents in N − {n} are
pairwise EF1 to each other, given these allocations. Similarly, (A∗2 . . . A∗n ) is a
NW solution for (N − {1}, M − A1 , v) and is thus, EF1 (again, by hypothesis).
Similarly .. (A∗1 , A∗3 , A∗4 . . . A∗n ) is EF1. From this, we can conclude that all

67
i, j ∈ N are EF1 to each other for the allocation A∗ , and thus, A∗ is EF1 (by
definition).

Question 5

Figure 61: Untitled

Consider N = {1, 2} , M = {1, 2} with v1 = v2 = v given by

v(1) = v(2) = 1v(12) = 3

Then, (1 : {1}, 2 : {2}) is an envy free allocation, but not a proportional one.

Jun 27
Equitability (EQ)
A division is equitable if vi (Ai ) = vj (Aj ) ∀i, j .
The restriction is that vi (M ) = 1 and vi (ϕ) = 0 for all i . The notion can be
extended to general games by first normalising the value functions.

Equitable by one good (EQ1)


∀i, j ∈ N, ∃g ∈ Aj s.t. vi (Ai ) ≥ vj (Aj ) − vj (g)

Price of Fairness for a game (instance) I.


Given a welfare index W and some measure of fairness, let D denote all the
possible divisions and F ⊆ D be all the fair divisions. Then

maxA∈D W (A)
PoF(I) =
maxA∈F W (A)

Price of Fairness for a type of games


Consider for example, all the indivisible good allocation games with additive
valuations whose valuation matrix has r distinct row vectors (or r different types
of players), where r is some fixed number.
Then, the Price of Fairness for all of these games, combined is the maximum
PoF of individual games.

PoF = max PoF(I)


I

68
Essentially, for a set S of instances of games, the price of fairness is

PoF(S) = max PoF(I)


I∈S

Lower bound on PoF(S)


To lower bound by l , you just have to provide an instance I ∈ S that has
PoF(I) = l .

Upper bound on PoF(S)


To upper bound by u , you must provide an algorithm that given any input
instance I ∈ S , finds an allocation Af ∈ F such that

maxA∈D W (A)
≤u
W (Af )

since obviously, PoF(I) is at most the LHS.

Binary valuations
In this section, we’ll consider the set Sr of games which have
1. binary valuations (0 or 1) of any single good by any player.
2. at least one player having non zero utility for each good.
3. r unique rows in the valuation matrix for some fixed r.
and we’ll consider the price of EQ1 fairness with utilitarian welfare.
It’s easy to see that the maximum utilitarian welfare is m = |M | .
Moreover, due to the binary valuations, every player is either rich , or poor, in
every EQ1 allocation, with rich agents having surplus of 1 over poor agents.

Lower bound
Consider the instance where agents a1 . . . ax+1 , all have utility for all and only
items in a subset M1 ⊆ M where x = (r − 1)2 , and for every other agent ax+i
for 1 < i ≤ r , they have
S utility for each and only items in Mi ⊆ M with
Mi ∩ Mj = ϕ ∀i, j and i Mi = M , and |Mi | = x ∀i .
Thus, optimal welfare is |M | = rx = r(r − 1)2 .
But, for any EQ1 fair division, at least one of a1 . . . ax+1 would be allocated value
0 due to pigeon-hole principle. Thus, there is one “poor” agent with value 0. So,
all the rich agents must have value 1 doe to EQ1 fairness. Thus, Ax+i = 1 ∀i > 1
is the best possible division, giving us W = x + (r − 1) = r(r − 1) .
Thus, the PoF for this instance is r − 1 , which will serve as a lower bound for
PoF(Sr ) .

69
Upper bound
For any I ∈ Sr ,let k be the rank of the valuation matrix. It’s easy to see that
k≤r.
Let B be any allocation that maximises utilitarian welfare among all EQ1
allocations.

Lemma : Wasteful allocations


We claim the the number of unallocated goods for any B is at most m − m/k ,
that is , at least m/k goods are allocated.

Proof
Using the lemma, W (B) ≥ m/k . Thus,

m
PoF(I) ≤ = k ≤ r ∀I ∈ Sr =⇒ PoF(Sr ) ≤ r
m/k

Problem Set
Question 1

Figure 62: Untitled

1. The two types of players are {a1 } and {a2 , a3 } .


In the second type, the minimum utility will be 1, at maximum, (for
A2 = {g4 , g5 }, A3 = {g6 , g3 } , or something like that.) . So, utility of
a1 cannot be more than 2 . So, one EQ1 allocation might be A1 =
{g1 , g2 }, A2 = {g4 , g5 }, A3 = {g6 , g3 } .
2. No, it’s not pareto optimal. Since shifting g6 to A1 is better.

70
3. No. The utility of a1 is 2 at most for any EQ1 division, so at least one
item he likes is going to a2 or a3 . Thus, no EQ1 division will be pareto
optimal.

Question 2

Figure 63: Untitled

1. Take the game in question 1. The division with A1 = {g1 , g2 , g3 }, A2 =


{g4 , g5 }, A3 = {g6 } maximises Egalitarian Welfare, but is not EQ1.
2. The division with A1 = {g4 , g5 , g6 }, A2 = {g1 , g2 }, A3 = {g3 } is EQ1, but
doesn’t maximise Egalitarian welfare.

Question 3

Figure 64: Untitled

The condition for equitability is vi (Ai ) = vj (Aj ) , and for envy-freeness is


vi (Ai ) = vi (Aj ) . Since here, vi = vj ∀i, j ∈ N , so both conditions are exactly
the same.
Same logic for EQ1 = EF1 .

Jun 29
Classification models
Given features X and targets Y , and for all x ∈ X, suppose h(x) is the
vector of probability of different outcomes, i.e. (h(x))i ≈ P rob(yi = 1) as
predicated by the model, then the output vector ŷ is given by thresholding h(x)
, i.e. ŷ = I(h(x) > yt ) where yt is the threshold value, and I is an indicator
function that converts true to 1 and false to 0 (like, in numpy).

71
Sensitive features
There are some features which shouldn’t be used in ML ethically, like gender,
race, etc. Let’s call these A .

Individual Fairness Criterion


Two instances which are similar in the non-sensitive traits, should get the same
predictions ideally. There are different ways of finding out how fair a model is in
this sense.

(D, d)-Lipschitz property


Let D, d be notions of distance, then a model h is (D, d)-Lipschitz fair if

∀x1 , x2 ∈ X, D(h(x1 ), h(x2 )) ≤ d(x1 , x2 )

To train a model to have this criterion, we solve this constrained optimisation

min E(x,y)∼(X,Y ) [L(h(x), y)]∀x1 , x2 ∈ X, D(h(x1 ), h(x2 )) ≤ d(x1 , x2 )

Here (x, y) ∼ (X, Y ) means that x, y come from the same distribution, that
(X, Y ) (concatenated) come from. L is the usual loss function, etc, etc.

Group Fairness
In any society, any group, if it feels like it’s on the shorter end of the stick, will
cause issues. Suppose there are 2 groups, a1 , a2 of 50 people each. Group a1
studies a lot, group a2 doesn’t. So, a1 is told they will succeed in life, and a2 the
opposite. Now, replace a1 , a2 with “female” and “male” . Even though the a2
group didn’t succeed because of their own actions, they will still cause trouble
and blame the school for partiality (or any other stupid reason). Thus, group
fairness is not there.
(This example is from my own perspective, since this is what happened at my
school. Damn.. the girls were competitive.)

Independence
The (predicted) probability of “success”, or really, any event should be indepen-
dent of sensitive traits (not taking into account the dependence of other traits
on the sensitive ones)

P r(Ŷ = 1 |A = a1 ) = P r(Ŷ = 1 |A = a2 )

This is actually unfair, but useful, since it seems fair to stupid people.

72
Separation.
Suppose, we later find out whether or not the boys actually succeeded in life.
Then, we can define these two things :

False negative parity


P r(Ŷ = 0|A = a1 , Y = 1) = P r(Ŷ = 0|A = a2 , Y = 1)

False positive parity


P r(Ŷ = 1|A = a1 , Y = 0) = P r(Ŷ = 1|A = a2 , Y = 0)

If the predictions were equally bad (in terms of “recall”) on each side, then they
were not biased.
This is a much better criterion.

Sufficiency (Equalised odds)


If the predictions were equally bad (in terms of “precision”) for each group, then
they were not biased. Something like this :

P r(Y = 1|A = a1 , Ŷ = 0) = P r(Y = 1|A = a2 , Ŷ = 0)P r(Y = 0|A = a1 , Ŷ = 1) = P r(Y = 0|A = a2 , Ŷ = 1)

But there is an even stricter and better criterion, which we actualy use for
sufficiency.

Calibration by groups
P r(Y = 1|A = a, h(X) = r) = r ∀a

This ensures not just unbiased-ness, but accuracy too.

Summary
Independence Ŷ ⊥ A
Separation(equal FPP, FNP) (Ŷ ⊥ A)|Y
Sufficiency (group calibration) (Y ⊥ A)|Ŷ

2 conditions simultaneously
Independence and Sufficiency
Since Independence implies Ŷ ⊥ A , and sufficiency implies (Y ⊥ A)|Ŷ , so both
happening simultaneously, thus P r(Ŷ |a) is independent of a (independence).
Then, P r(Y |a, Ŷ ) is independent of a , for some fixed Ŷ (sufficiency)

73
P
Combining P r(Y |a) = Ŷ P r(Y |a, Ŷ )P r(Ŷ |a) is independent of a.
Thus, both together mean Y ⊥ A

Independence and Separation


P r(Ŷ |a) is independent of a .
P r(Ŷ |a, Y ) is also independent to a , for any Y .
Now,

X
P r(Ŷ |a) = P r(Ŷ |a, Y )P r(Y |a)
Y

, which gives us a set of equations with P r(Ŷ |a, Y ) being coefficients


Two conditions in which these can be solved are A ⊥ Y or Ŷ ⊥ Y

Separation and Sufficiency


Either same Base rates i.e. P r(Y |a1 ) = P r(Y |a2 ), or the accuracy is 100% .
We have P r(Y |Ŷ , a) independent of a, given a Ŷ , and, we have P r(Y |Ŷ , a)
independent of a too.
Since

X
P r(Ŷ |Y, a)P r(Y |a) = P r(Ŷ , Y |a) = P r(Y |Ŷ , a)P r(Ŷ |a) = P r(Y |Ŷ , a) P r(Ŷ |Y ′ , a)P r(Y ′ |a)
Y′

, using first and last expressions, and the rules, we have, for each Y ′ , either
1. P r(Ŷ |Y ′ , a) = 0 ∀a
2. P r(Y ′ |a) to be the same for all a . (same base rates)

Problem Set
Question 1
512+36
For adults, P r(Y = 1|a1 ) = 10000 = 0.0548
2147+2177
For children, P r(Y = 1|a2 ) = 10000 = 0.4324
Thus, loss in demographic parity is 0.3776
For adults,
51 51
F P R1 = P r(Ŷ = 1|Y = 0, a1 ) = 51+9401 = 9452 and
36 36
F N R1 = P r(Ŷ = 0|Y = 1, a1 ) = 36+512 = 548

74
Figure 65: Untitled

For children,
96 96
F P R2 = 5580+96 = 5676 and
2177 2177
F N R1 = 2177+2147 = 4324
2177 36
Thus, loss in equalised odds is 4324 − 548 .
I would recommend this model to Adults

Question 2

Figure 66: Untitled

X 0.5 -1 -0.5 2 0.5 1.5 0.1


A a b b a b a b
Y 1 1 0 0 0 0 1

75
X 0.5 -1 -0.5 2 0.5 1.5 0.1
Y’ 0 1 1 0 0 0 1

P r(Ŷ = 1|a) = 0 ̸= P r(Ŷ = 1|b) = 3/4


F N Ra = 1 ̸= F N Rb = 0
F P Ra = 0 ̸= F P Rb = 0.5 .
Thus, neither criterion is there

Question 3

Figure 67: Untitled

Y\A a b
0 1/4 0 1/4 0
1 0 1/4 0 1/4
Y’ 0 1 0 1

Question 4

Y\A a b
0 p 3/8 - p x 1/8 - x
1 1/8 - q q 3/8 - y y
Y’ 0 1 0 1

Independence implies

max p+q+x+yp−q−x+y = 1/40 ≤ p ≤ 3/80 ≤ q ≤ 1/80 ≤ x ≤ 1/80 ≤ y ≤ 3/8

This becomes

76
Figure 68: Untitled

Figure 69: Untitled

max u + vv = u + 1/40 ≤ u ≤ 1/40 ≤ v ≤ 3/4

by replacing u = q + x and v = p + y
Clearly, maximisation happens at u = 1/4, v = 2/4 .
We can split this as

q = 1/8, x = 1/8p = 1/4, y = 1/4

Thus, the table becomes

Y\A a b
0 2/8 1/8 1/8 0
1 0 1/8 1/8 2/8
Y’ 0 1 0 1

which gives an accuracy of 75 %

77
Jul 1
Ensuring Trained Classifier
We can try to set a threshold have such that a trained model h can be used to
make classification with equalised odds.
This is to say that the ROC curves should intersect at a point where
1. The threshold is same
2. the accuracy isn’t too bad
In practice, this is done by randomisation of thresholds.
Note : The point (0,1) is the perfect classifier on an ROC curve.

How to make ML models fair


Pre-Processing : Find data that is fair
In-Processing : Choose a model (loss function and constraints) that trains the
model to be fair
Post-Processing : Change the threshold and other things

Pre-Processing
Massaging
Change the labels when you can.
Pertubation : Change (scale) the inputs so that distribution (X, Y ) looks similar
for each group.

Sampling
Reweighting
Resampling in minority, lesser sampling in majority
Make new samples to make base rate same

Representation
From given X , we want to generate XF which is the fair version of X , given
A, Y .
The change in representation can be done via a generative model.

Adversial Learning
Will do later..

78
In-Processing
Desperate Impact
min{P r(Ŷ |a1 )/P r(Ŷ |a2 ), P r(Ŷ |aa )/P r(Ŷ |a1 )} ≥ 0.8

Convexification
Suppose we do the ususal lagrange multiplier thing and minimise this lagrangian

Lf = L(θ) + λlf (θ)

, then we need to choose a l(θ) which is decomposable


One such loss function would be just the covariance of h(X) and A .

Recap
Jun 7 : MSNE
• MSNE always exists for every finite strategic form game and it is a fixed
point of a “best responses function (correspondence)” b(σ) = ×i bi (σ−i ).
• Convex Set : Any convex linear combination is in the set.
• Closed Set : Any limit of sequence of items in the set, is also in the set.
• Bounded Set : Distance between any two points in the set is upper bounded
by some finite value.
• Compact Set : Closed and Bounded
• Kakatuni’s theorem : given a correspondence ϕ : X → 2X where X ⊆ Rn
is convex, non-empty and compact , then if ϕ(x) is always non-empty and
convex AND Gr(ϕ) is a closed set, then ϕ has a fixed point.
• PSNE is not guaranteed to exist.
• PSNE can be computed in polynomial time when the full matrix is given.
• For general graphical games (a form of “succinct” games), determining
existence of PSNE (by computing it) is NP-complete : (Verification of a
solution can be done in polynomial time, and all such problems with that
property can be reduced to this problem)
• Congestion or network games can be represented via
– N , the set of players
– E , the set of edges
– Si ⊆ 2E , the set of paths (sets of edges here) that start at ai and
end at bi , which player i can take. This is obviously, also the set of
strategies.

79
– de (x) which tells the cost incurred by going through edge e ∈ E with
x “amount” P(usually fraction) of people on that road.
– ui (s) = − e∈si de (fe (s))
• Every congestion has a PSNE (Theorem by Rosenthal).
Essentially, any strategy profile that minimises the potential function
P Pfe (s)
Φ(s) = e x=0 de (x) is a PSNE. Since there always exists a global
minima (one of the PSNEs) in the search space, for any function (Φ here),
so at least one PSNE exists. Note that the inner summation is over all
“possible” values of x in that range. Also note that we conveniently define
de (0) = ∀e since it doesn’t make any difference strategically, what de (0)
is, coz..nobody uses it anyway.
• Symmetric congestion game : ai = a, bi = b ∀i , i.e same starting and
ending points.
• There is a poly-time algorithm for finding PSNE of a symmetric congestion
games
• Necessary and sufficient conditions for MSNE:

– ui (si , σ−i ) is same, namely ui (σ ∗ ) , for all si ∈ δ(σi∗ )
– ui (σ ) ≥ ui (s′i , σ−i
∗ ∗
) ∀s′i ∈ Si − δ(σ ∗ )
• The LP for MSNE conditions is generally non-linear.
– In case of n = 2 , it’s linear.
– The variables are wi , σi (si ) , where wi is just full utility at MSNE.
There
P equations are translated trivialy, with the addition of
si ∈Si σi (si ) = 1 .
– For n = 2 , there are 2(1 + |S1 | + |S2 |) equations.
– Number of different sets of supports possible is i∈N (2|Si | − 1)
Q

• LCP Standard form : Given M ∈ Rn×n and q ∈ Rn , find y, z ∈ Rn such


that :

y T z = 0y = M z + qy, z ≥ 0

• Bi-Matrix game MSNE :


– Let A, B be the utility matrices of row player (1), and column player
(2) . Then, for any σ2 ∈ ∆(S2 ) , the vector Aσ2 contains the utilities
that player 1 gets by playing pure strategies. Let w be the utility of
player 1, then w − Aσ2 = w̄ ≥ 0 , where by “w” , we mean w1 , a
vector where all entries are w. Similarly, B T σ1 is utilities of player 2
upon playing pure strategies. If player 2 has utility v at MSNE, then
v − B T σ1 = v̄ ≥ 0.
Notice that w̄T σ1 = 0 and v̄ T σ2 = 0 , because if σ1 (s1 ) > 0 , then ,
(Aσ2 )s1 = w and so, w̄(s1 ) = 0 for any s1 ∈ S1 . Similarly, for i = 2 .

80
Put together,

w + 0 (−A)σ2 = w̄
v + (−B T )σ1 0 = v̄

Let’s define
       
0 −A w w̄ σ
M= q= y= z= 1
−B T 0 v v̄ σ2

Because y T z = w̄T σ1 + v̄ T σ2 = 0 , and


q + M z = y , and y ≥ 0 (since loss in utility has to be non-negative) ,
and z ≥ 0 (probability distributions), so this is a LCP problem.

Chomp
• m × n , where m, n are finite : Player 1 wins since player 2 cannot have a
winning strategy. (This implication is from a theorem that’s advance)
• 1 × ∞ : player 1 wins
• 2 × ∞ : player 2 wins
• m × ∞ where m > 2 : player 1 wins
• ∞ × ∞ : player 1 wins by making it a 2 × ∞ game, or by symmetric play
• 2 × ∞ × ∞ : player 1 wins by making it a 2 × ∞ × 1
• 2 × m × n : player 1 wins by stealing argument again
• 2 × m × ∞ : player 1 wins by making it 2 × 1 × ∞ ∼ = 2 × ∞ and becoming
second player.
• In general, if any version of the game reaches a stage where the player
player can cut off a portion that is guaranteed to be removed no matter
what he plays, then by the stealing argument, the next player cannot have
a winning strategy, and thus, the current player has a winning strategy.

Jun 13 : SGPE, Stackelberg Duopoly


• Extensive form games : Γ = (N, [Ai ]i , Z, p : SZ → N, [ui ]i )
• An information set I is a set of nodes, or sub-histories , indistinguishable
to the player (in terms of information of the sub-history)
• Ii is set of information sets for i ∈ N
• Strategies are functions si : Ii → Ai such that si (I) ∈ C(I) ∀I ∈ Iℶ , where
C(I) is available actions at I .
• Subgame : given a game Γ and a subhistory h ∈ SZ , the subgame Γh is
the game left after the actions in h are played.
• Oh (s) is the outcome correspoding to strategy profile s ∈ S, if instead of
starting the game at ϵ , we had started at some arbitrary sub-historty h .

81
• Sub-Game Perfect Equilibria SGPE
For a game Γ , a strategy profile s∗ is a SGPE, if and only if s∗ is a PSNE
for Γh for every h ∈ SZ , i.e. , for all i ∈ N , we must have

this equation was corrupted

,where (SZ )i = {x ∈ SZ |p(x) = i} is the set of all subhistories, where it’s


player i’s turn.
• Every finite game with perfect information has a unique SGPE (this is a
trivial thing to prove)
• Linear Stackelberg Duopoly Game:
– N = {1, 2}
– Si = R≥0 , where qi ∈ Si is the number of goods produced
– 1 plays first, and his move is always visible to 2.
– P (q1 , q2 ) = 1 − q1 − q2 is the price that each item fetches
– C(q1 , q2 ) = c is the production cost per unit
– ui (q1 , q2 ) = qi (P − C) .
– u2 (q1 , q2 )(= q2 ((1 − c − q1 ) − q2 )
0 q1 > 1 − c
– b2 (q1 ) =
(1 − c − q1 )/2
– q1∗ = argmaxq1 u1 (q1 , b2 (q1 )) = (1 − c)/2
– (q1∗ , q2∗ ) = ((1−c)/2, (1−c)/4) is the Stackeleberg Equilibrium (SGPE)
– Thus leader gets to produce more, and gets more utility. This is a
case in which too much information hurts the 2nd player
• Carnot’s Duopoly Game
– The same strategy and utility as Stackelberg Duopoly, except that 2
cannot observe 1’s move.
– This is a case of simultaneous play, and the SGPE is just the PSNE
(there is only 1) , which is q1∗ = q2∗ = (1 − c)/3 .
• General Stackelberg Duopoly
– q1∗ = argmaxq1 u1 (q1 , b2 (q1 ))
– If b2 (q1 ) is not unique (it’s a set of values), then we can consider these
two extreme cases :
∗ Optimistic follower : chooses , out of the best responses, the one
that will benefit player 1 the most, all the time.
∗ Pessimistic follower : chooses , out of the best responses, the one
that will hurt player 1 the most, all the time.

82
By considering these two extreme cases, one can find the Strong
Stackelberg Equilibrium (SSE), and Weak Stackelberg Equilibrium
(WSE), respectivly.
Remember :
Optimistic → Strong
Pessimistic → Weak
– If there are multiple followers, the b−1 (q1 ) will be the Nash equilibrium
of the sub-game after player 1 plays q1 .

Jun 15 : PoA
NE Total Cost
• PoA = Minimum Total Cost

• P,Q game
– N = {1, 2}
– S1 = [0, 1], S2 = [0, 1]
– P = (a, b) ≥ 0, Q = (c, d) ≥ 0 are two points
– For strategies x, y of player 1 and 2, u1 (x, y) = −d((x, y), P ) and
u2 (x, y)√= −d((x, y), Q)
– PoA is 2 .
• Non-linear Pigou network

Figure 70: Untitled

– At NE, x = 1 . Thus, NE cost is 1


– If x fraction go through lower road, cost is 1 − x + xp+1 , minimised
at x∗ = (p + 1)−1/p , giving minumum cost as 1 − p(p + 1)−(1+p)/p
– As p → ∞ , the minimum cost goes to 0+ , and thus, PoA → ∞.
• Linear Pigou Bound

83
– Consider the linear function c(x) = ax + b with b ≥ 0, a > 0.
– Top road has cost c(r) , for some fixed value r .
– Bottom road has cost c(x) where x ≤ r is amount of people on lower
road.
– The price of anarchy is

rc(r) rc(r) rc(r) 2ar + 2b


max = = r = =
x≥0 xc(x) + (r − x)c(r) minx ax2 + bx + br − bx + ar2 − arx 2 (c(r)+ c(r/2)) 3ar/2 + 2b

The maximum of this value is


3b −1
α = maxa,b,r≥0 (1 + (3 + 4ar ) ) = 1 + 3−1 = 4/3 .
• General Pigou Bound
Given a class of functions C, the pigou boud is defined as

rc(r)
α(C) = max max
c∈C, r≥0 x≥0 rc(x) + (r − x)c(r)

Note that the restriction that x ≤ r is removed in this definition.


• Equilibrium flow in congestion games
– The same as “flow at PSNE”
– There cannot be any path (strategy) that has a cost that is more
than minimum cost, and is still being used (has fp > 0). This is
because, then, we can shift an infinitesimal amount of flow, dfp , to
the minimum cost path from this path, decreasing the cost incurred
by the people in that dfp .
– Suppose, all the paths that are in use, in equilibrium flow, have the
P of cp (f ) = L, and there are r such paths, then total cost is
cost
p fp cp (f ) = rL

– For any arbitrary flow f ′ , we have p fp′ cp (f ) ≥ p fp cp (f ) , where


P P
f is the equilibrium flow. (Read this carefully.. it’s cp (f ) on both
LHS and RHS)
– Thus,
P ∗for the optimal
P flow f ∗ (that optimises the total cost) , we have
p fp cp (f ) ≥ p fp cp (f ) = rL

– Since the costs can be summed over edges, we can write


X X
fe∗ ce (f ) ≥ fe ce (f ) = rL
e e

84
– Consider any edge e ∈ E with equilibrium flow fe and optimal flow
fe∗
– Suppose ce ∈ C , a class of functions, then by the definition of Pigou
boud, we have

fe ce (fe )
α(C) ≥
fe∗ ce (fe∗ ) + (fe − fe∗ )ce (fe )

Note : this equation isn’t the result of some witty construction, or


really, anything complicated. It’s directly from the algebraic definition
of α(C) .
Thus,

1
fe∗ ce (fe∗ ) ≥ (fe∗ − fe )ce (fe ) + fe ce (fe )
α

– Summing,

X X 1
Cost(f ∗ ) ≥ ( fe∗ ce (f )) − ( fe ce (f )) + Cost(f )
α
P ∗ P
But now using the fact that e fe ce (f ) ≥ e fe ce (f ) , we can write
:

1
Cost(f ∗ ) ≥ 0 + Cost(f ) =⇒ PoA ≤ α(C)
α(C)

• Another Definition of PoA is

max W
PoA =
maxequi W

where W is a social welfare function and by maxequi , we mean “maximum


over all the PSNE” .

Jun 17 : Correlated Strategies


• Correlated Equilibrium (CE)
– Let Γ = ⟨N, [Si ]i , [ui ]i ⟩ be a strategic form game
– τ ∈ ∆(S) is a correlated strategy
– τ is a correlated strategy iff

X
(ui (si , s−i ) − ui (s′i , s−i ))τ (si , s−i ) ≥ 0 ∀si , s′i ∈ Si , ∀i ∈ N
s−i

85
Q
• Every MSNE σ = (σi )i induces a CE τ such that τ (s) = i σi (si ) .
– The inequality condition for τ being a CE becomes
X Y
σi (si )( σj (sj ))(ui (si , s−i ) − ui (s′i , s−i )) ≥ 0
s−i j̸=i

This can be written as

σi (si )(ui (si , σ−i )−ui (s′i , σ−i )) ≥ 0 ⇐⇒ ∀si , σi (si ) = 0 or ui (si , σ−i ) ≥ ui (s′i , σ−i ) ∀s′i ⇐⇒ ∀si ∈ S

, which is true, since it’s the condition for MSNE.


• Since, for a finite game, the MSNE always exists, so there is always at
least one CE (namely, the MSNE induced one)
• Contracts
– A correlated strategy may or may not be played, without a contract,
but a contract, if signed, restricts the players to fixed strategies, based
on the set of players that sign it.
– A contract τ = (τC )C⊆N is a collection of correlated stategies τC for
every coalition C ⊆ N that could be formed.

Jun 19 and 21 : Coalition Games


When some players agree to a contract, they form a coalition. The arrangements
of utilities of players is decided sovereign by the players in the coalition. For
non transferable utilities, this can be found via Nash Bargaining, or some other
procedure.
• Nash Bargaining
– Given a feasible region (corresponding to correlated strategies (con-
tracts), or correlated equilibria) of utilities, say, F , which is
∗ convex (by default, since correlated strategies or equilibrium)
∗ non-empty (by default, otherwise nothing to solve)
∗ bounded (usually, will be a convex hull of points, and thus
bounded)
, and the status-quo (disagreemet) point v (security values, or min-
imum values from working outside the coalition) , then the point
(utility vector) x = f (F, v) that has the Nash Axioms :
∗ Pareto Efficiency (̸ ∃ x′ > x)
∗ Individual rationality (x ≥ v)
∗ Scale covariance : fi (G, w) = ai fi (F, v) + bi where G = {[ai xi +
bi ]i | x ∈ F } and wi = ai vi + bi
∗ Independence of irrelevant alternatives : If f (F, v) ∈ G ⊆ F ,
then f (G, v) = f (F, v)
∗ Symmetry : If vi = vj and swap(x, i, j) ∈ F ∀x ∈ F , then
fi (F, v) = fj (F, v)
is given by

86
Y
f (F, v) = argmaxx∈F,x≥v (xi − vi )
i

• Effective negotiation
– Definition : The members of a coalition would form an effective
coalition if the players on realising that there is a feasible change in
their strategies that would benefit them all.
– Nash bargaining fails effective negotiation for n ≥ 3 . For n = 2 ,
since f (F, v) ≥ v , effective negotiation is trivially satisfied.
• Transferable utilities
– So far, we have only seen Non-Transferable Utility (NTU) games,
that is, players aren’t allowed to make “side payments” to each other,
and derive their utility solely from the outcome, and not from other
player’s utilities. In real life, this isn’t always the case (example :
employees)
– When utilities are transferable, the sensible thing to do is increase
the sum of the utilities of the coalition (aka Collective Rationality). I
claim, that for any division, if the sum is not maximum, then it is
not Pareto efficient, if utilities are transferable.
– Nash bargaining fails in TU games.
• TU/Coalition game
– N is the set of players
– v : 2N → R is the characteristic function, that assigns the maximum
value v(C) that any coalition C ⊆ N can get (which is the only thing
we need to care about, because of CR)
– v() = 0
– Γ = (N, v)
• NTU game
– N is set of players
|C|
– V : 2N → ∪C⊆N 2R is the characteristic function
– V (C) ⊆ R|C| is the set of feasible utilities by the coalition C ⊆ N
– Γ = (N, V )
• Special TU games
– Monotonic: C ⊆ D =⇒ v(C) ≤ v(D)
– Superadditive : C ∩ D = =⇒ v(C ∪ D) ≥ v(C) + v(D)
– additive : C ∩ D = =⇒ v(C ∪ D) = v(C) + v(D)
• Strategically equivalent TU games
– Let (N, v) and (N, w) be TU games
– These are strategically equivalent iff

X
∃c1 , c2 . . . cn ∈ R and ∃b ∈ R+ such that w(C) = b·(v(C)+ ci ) ∀C ⊆ N
i∈C

• 0-1 normalisation
– A TU game (N, v) is 0,1 normalised iff

87
∗ v({i}) = 0 ∀i ∈ N
∗ v(N ) = 1
∗ v(C) ∈ [0, 1] ∀C ⊆ N
– Every TU game is strategically equivalent to a unique 0-1 normalised
TU game.
• Imputation
– Given a TU game (N, v) , an allocation x is an imputation iff it has
1. Independent Rationality (IR) P : xi ≥ v(i) ∀i ∈ N
2. Collective Rationality (CR) : i∈N xi = v(N )
– An imputation
P y dominates x if ∃C ⊆ N such that yi ≥ xi ∀i ∈ C ,
and i∈C yi ≤ v(C) .
For any imputation x , a coalition C is a blocking coalition if v(C) >
– P
i∈C xi . Essentialy, a blocking coalition is a group of people who can
“revolt” against x and come up with an imputation y that dominates
x.
– An imputation in un-dominated if there is no imputation that can
dominate it, which is the same as saying that it doesn’t have any
blocking coalitions, i.e.
X
xi ≥ v(C) ∀C ⊆ N
i∈C

This is also known as Coalitional Rationality (CoR).


– Coalitional rationality implies inividulal rationality
– The set of all un-dominated imputations is called the core of the
game, written as C(N, v)
∗ Due to IR, for every x ∈ C , unilateral deviation is prevented.
Thus, it is like a Nash Equilibrium
∗ Due to CoR, for ever x ∈ C , there is no blocking coalition, and
thus, it satisfies effective negotiation.
• Core
– Definition : Given a TU game (N, v) , a vector x ∈ Rn , where
n=P |N | is in the core C(N, v) if and only if
∗ Pi∈N xi = v(N )
∗ i∈C xi ≥ v(C) ∀C ⊆ N
– Existence (non-emptyness) : Note that, for any game (N, v) , we can
always create a different game (N, v ′ ) where v ′ (C) = v(C) ∀C ⊂ N
and v ′ (N ) ≥ v(N ) , such that |C(N, v ′ )| > 0 , by gradually increasing
the value of v ′ (N ) till the feasibility conditions give a non-empty
solution set. We are interested in the minimum such v ′ (N ), i.e
X X
min xi xi ≥ v(C)∀C ⊆ N
i∈N i∈C

less than or equal to v(N ) , then the core


If and only if this value isP
is non-empty. But since i∈C xi ≥ v(C) even for C = N , thus, if
and only if the minimum is equal to v(N ), the core is non-empty.

88
The dual LP for this is

X X
max α(C)v(C) α(C) = 1 ∀i ∈ N α(C) ≥ 0 ∀C ⊆ N
C⊆N C⊇{i}

By strong duality, if (and only if) the optimal value for this dual LP
is v(N ) (just like the primal problem), then the core is non-empty
This necessary and sufficient condition is called Balancedness.
– Balanced TU game
A TU game (N, v) is balanced if

X X
α(C) = 1 ∀i ∈ N and α(C) ≥ 0 ∀C ⊆ N =⇒ α(C)v(C) ≤ v(N )
C⊇{i} C⊆N

– Shapley Bondereva Characterisation


The core of a TU game is non-empty if the game is balanced
• Shapley Value (ϕ)
– Axioms
∗ Symmetry : If v(C ∪ {i}) = v(C ∪ {j}) ∀C ⊆ N − {i, j} , then
ϕi = ϕ j
∗ Dummies : v(C ∪ {i}) = v(C) ∀CP⊆ N − {i} =⇒ ϕi = 0
∗ Non-wastefulness or Efficiency : i ϕi = v(N )P
∗ Strategic Equivalence : If w(C) = av(C) + i∈C bi ∀C ⊆ N
where b > 0 , then ϕi (N, w) = aϕi (N, v) + bi
∗ Additivity : ϕ(N, v + w) = ϕ(N, v) + ϕ(N, w)
– Shapley’s theorem :
There is exactly one allocation ϕ that satisfies the 5 axioms, given by
1 X
ϕi = |C|!(n − |C| − 1)!(v(C ∪ {i}) − v(C))
n!
C⊆N −{i}

– Convex TU game
∗ Definition

C ⊆ D =⇒ v(C ∪ {i}) − v(C) ≤ v(D ∪ {i}) − v(D) ∀i ∈ N − D


∗ For a convex game (N, v) , the Shapley value ϕ(N, v) lies in the
core C(N, v) .

Jun 23 : Welfare
• Division based on fitness : give more utility to people who worked harder.
This isn’t going to work in practice though. An animation company,
no matter how good animators they have, still need voice artists, who,
arguably, might slack off once a series is in full throttle. No matter how
little work someone has done, if his “contribution” (the difference in the
value of the product because of him) is big, he gets more in real life.

89
• Welfarist division : allocate resource such that the total benefit (Welfare
function W ) to all is maximised. The benefit can be just the sum of
utilities, or the product, or sum of powers of the utilities, or the minimum.
Note : For convenience, for divisions v1 , v2 , define v1 ≻ v2 ⇐⇒ W (v1 ) >
W (v2 ) and v1 ∼ v2 ⇐⇒ W (v1 ) = W (v2 )
• Welfare fuctions : What would be a good welfare function ? We can write
some sensible and intuitive axioms that will help us figuring out a good
welfare function W .
– Completeness : For any allocations v1 , v2 , one of these 3 must happen:
∗ v1 ≻ v2
∗ v1 ≺ v2
∗ v1 ∼ v2
– Transitivity : v1 ⪰ v2 ⪰ v3 =⇒ v1 ⪰ v3
– Monotonicity : v1 ≥ v2 =⇒ v1 ⪰ v2
– Symmetry : swap(v1 , i, j) ∼ v1 ∀i, j ∈ N
– Independence of unconcerned agent : Given divisions x, y with xi = yi
, x ≻ y ⇐⇒ x−i ≻ y−i
– Independence of scale : v1 ≻ v2 ⇐⇒ av1 ≻ av2 for any a > 0
– Pigou Dalton Tranfser Principle (equality is favoured) : Given di-
visions x, y, if xi = yi ∀i ∈ N − {j, k} and xj + xk = yj + yk and
xi < yj < yk < xk , then y ≻ x . Essentially, take resource from rich,
and give it to poor, and welfare is increased.
The functions {Wp }p∈(−∞,1] that satisfy all these axioms are called social
welfare function, and given by
P p
Pi ui
 0<p≤1
Wp = i log ui p=0
 P p

− i ui p<0
– Utilitarian Welfare is the value of W1
– Egalitarian welfare is give by W = mini ui , maximising which is the
same as maximising W−∞ Q
– Nash Welfare is the value Wnash = exp(W0 ) = i ui .

Jun 25 : Fair division


• Resource Division games
– Γ = (N, M, v)
– N is set of players
– M is a (non-necessarily finite) set of “goods”, or indivisible parts of
the full resource.
– vi (A) is the value that agent i derives out of the bungle of goods
A⊆M

90
If M is finite, then this is called an “indivisible goods allocation game”.
• Divisible resource allocation game
– M = [0, 1]
– Normalisation : vi (M ) = 1 ∀i
– Non-negativity : vi (Ai ) ≥ 0 ∀Ai ⊆ M ∀i
– Additivity : A ∩ A′ = =⇒ v(A ∪ A′ ) = v(A) + v(A′ ) ∀A, A′ ⊆ M .
– Divisibility : A′ ⊆ A =⇒ v(A′ ) = ∃λ ∈ [0, 1] s.t . λv(A) .
• Proportionality : An allocation A = (A1 , A2 . . . ) is proportional if vi (Ai ) ≥
1/n ∀i
• Envy Freeness (EF) : vi (Ai ) ≥ vi (Aj ) ∀i, j ∈ N Note that Envy Freeness
+ complete allocation =⇒ proportonality, P since eachP player, in
his mind, has the best piece, thus nvi (Ai ) = j vi (Ai ) ≥ j vi (Aj ) =
vi (M ) = 1 , which means vi (Ai ) ≥ 1/n .
• Equitability (EQ): vi (Ai ) ≥ vj (Aj )∀i, j ∈ N
• EF1 : ∃g ∈ Aj s.t. vi (Ai ) ≥ vi (Aj − {g})
• EQ1 : ∃g ∈ Aj s.t. vi (Ai ) ≥ vj (Aj − {g})
• EFX : ∀g ∈ Aj , vi (Ai ) ≥ vi (Aj − {g})
• EQX : ∀g ∈ Aj , vj (Ai ) ≥ vi (Aj − {g})
• Dubis-Spanier (moving knife) algorithm for proportional allocation of
divisible resource : Cut just enough from the left that the piece is more
that 1/n for at least one agent. First, ask each agent to mark where that
cut would be for them, then choose the minimum. Thus, ask the agents
O(n2 ) times.
• Even and Paz (divide and conquer) algorithm for same : Let everyone mark
a cut that would divide the cake into equal parts according to them. Cut at
the median, separate the group of people based on whether their mark was
to the left or the right (put the median guy in any one randomly) , then
solve the sub-problems (recursive procedure, until n = 1 is encountered)
• EF divisible good allocation for n = 2 : Let one player divide into equal
portions (according to him), and let the 2nd player choose one to his liking
• EF division for n = 3 : Selfridge Conway Algorithm
• Round Robin (RR) is an algorithm that gives EF1 division for finite
indivisible resource allocation games.

Jun 27 : Price of Fairness


• PoF = maximum Welfare / maximum Welfare for fair divisions
• Price for fairness for a class of games is just the maximum PoF in that
class

91
• For the class Br of indivisible good allocation games with binary valuation,
single person liking each good, and r types of people (row vectors), we
have r − 1 ≤ PoF(Br ) ≤ r where W = W1 and fairness criterion is EQ1
• For class Bstoc of indivisible good allocation games with binary valuation
and row stochastic and column stochastic valuation matrix, the PoF is 1
for each game, where W = W1 and fairness criterion is EQ .

Jun 29 : Fairness in ML
• Given normal attributes X , sensitive attributes A , and binary targets Y ,
a classification model, after training makes predictions Ŷ as I(h(X) > yt ),
without using A, Y .
But just because the model didn’t use A
• Demographic Parity : P r(Y |a) is the same for all a, also written as Y ⊥ A
• Independence : P r(Ŷ |A = a) is the same for all a , also written as Ŷ ⊥ A
• Separation : Pr(Ŷ |a, Y ) is the same for all a (for any randomly chosen,
but fixed Ŷ , Y ). This is also written as (Ŷ ⊥ A)|Y , since we are looking
for independence in the space that has the specific Y , for every possible Y
• Sufficiency : P r(Y |a, Ŷ ) is the same for all a , also written as (Y ⊥ A)|Ŷ .
• ( Independence and separation ) if and only if (Y ⊥ A or Y ⊥ Ŷ ) This is
an “if and only if” condition for binary classification only. In general it’s
just an “if”.
• ( Independence and sufficiency ) if and only if (Y ⊥ A)
• ( Separation and sufficiency) if and only if (Y ⊥ A or Y = Ŷ ) The condition
Y = Ŷ means full accuracy.
• Calibration : P r(Y = 1|h(x) = r) = r
• Calibration on groups : P r(Y = 1|h(x) = r, A = a) = r ∀a This obviously
leads to calibration for total data-set.
• All above are group fairness notions. The one important individual fairness
criterion is (D, d) - Lipschitz fairness, which requires D(h(x1 ), h(x2 )) ≤
d(x1 , x2 ) ∀x1 , x2 ∈ X , where D, d are some distance functions.

July 1 : Implementing Fairness in ML models


• ROC curve :
– Trained model h(X)
– Can change the threshold yt in order to change Ŷ
– F P R = P r(Ŷ = 1|Y = 0) = 1 − T N R
– T P R = P r(Ŷ = 1|Y = 1) = 1 − F N R
– Plot the graph for T P R vs F P R .

92
– At yt = 1 , there are 0 positive predictions, and thus, F P R = 0 and
T P R = 0 too.
– At yt = 0, there will be 0 negative predictions, making T N R =
F N R = 0 . and thus, F P R = T P R = 1 .
– For a perfect classification, we would have F P R = 0, T P R = 1 .
– For a completely random h(X) function, P r(h(x) > yt |Y = 1) =
P r(h(x) > yt |Y = 0) = yt , which is to say F P R = T P R = yt
– Thus, a perfect classifier and a random classifier would has an ROC
curve as described :

Figure 71: Untitled

– We can plot the ROC curve for different groups (assume 2) simulta-
neously like this :
Here, T P Ra = P r(Ŷ = 1|Y = 1, a) and similarly, other definitions.
– The point of intersection of ROC curves is the point where “separation”
or equal odds is achieved.
– ROC curves for different groups might intersect at a point which has
different threshold values for different classifiers, or might give a really
bad total accuracy even if the thresholds are similar
– So, we randomise between different thesholds in order to achieve
better results.
• Pre-processing data to make ML models fair

93
Figure 72: Untitled

94
– Massaging : For instances with P r(Ŷ = 1) ≈ 0.5 , we can change
the labels (Y ) in order to go towards equal base rates (Demographic
Parity)
– Perturbation : Change to input features so that, the ordering of
h(x) remains the same in any group, and, with the new features, the
distributions look the same
– Sampling :
∗ We can weight the importance of the samples according to the
sensitive features
∗ Preferential Sampling : Removal of duplicate samples based of
decision boundary
This is in contrast to uniform sampling, where duplicates are
removed directly.
∗ Oversampling the minority (SMOTE)

More Practice
www.eecs.harvard.edu
www.math-berlin.de

Figure 73: Untitled

95
Figure 74: Untitled

08 03615 - Birmingham - Game Theory - Studocu

Final Exam
FAI : Exam 2 doubts
EndSem_CS329.pdf

Helpful Code
NE.ipynb
TU.ipynb

96

You might also like