Teorema del minimax

Il teorema del minimax è dovuto a von Neumann[1][2]. Il teorema del minimax fornisce condizioni sufficienti affinché la disuguaglianza max-min

max y K 2 min x K 1 f ( x , y ) min x K 1 max y K 2 f ( x , y ) . {\displaystyle \max _{y\in {\mathit {K_{2}}}}\min _{x\in {\mathit {K_{1}}}}f(x,y)\leq \min _{x\in {\mathit {K_{1}}}}\max _{y\in {\mathit {K_{2}}}}f(x,y).}

sia un’uguaglianza.

Il teorema costituisce non solo il punto di inizio della teoria dei giochi, ma altresì un teorema della dualità per i problemi di programmazione lineare laddove la regione ammissibile è convessa e compatta (chiusa e limitata).

Enunciato

Sia f : K 1 × K 2 R {\displaystyle {\displaystyle f:{\mathit {K_{1}}}\times {\mathit {K_{2}}}\to \mathbb {R} }} una funzione continua dove K 1 R n {\displaystyle {\mathit {K_{1}}}\subset \mathbb {R} ^{n}} e K 2 R m {\displaystyle {\mathit {K_{2}}}\subset \mathbb {R} ^{m}} sono insiemi convessi compatti. Se f {\displaystyle f} è una funzione convessa-concava, ossia tale che

f ( , y ) : K 1 R {\displaystyle f(\cdot ,y):{\mathit {K_{1}}}\to \mathbb {R} } è convessa per y {\displaystyle y} fissato e
f ( x , ) : K 2 R {\displaystyle f(x,\cdot ):{\mathit {K_{2}}}\to \mathbb {R} } è concava per x {\displaystyle x} fissato,

allora

min x K 1 max y K 2 f ( x , y ) = max y K 2 min x K 1 f ( x , y ) . {\displaystyle \min _{x\in {\mathit {K_{1}}}}\max _{y\in {\mathit {K_{2}}}}f(x,y)=\max _{y\in {\mathit {K_{2}}}}\min _{x\in {\mathit {K_{1}}}}f(x,y).}

Esempi

  • Nella teoria dei giochi per un gioco finito a somma zero a due giocatori con un numero finito n di strategie (c.d. giochi simmetrici), è facile pensare alla funzione di pagamento f : S 1 × S 2 R {\displaystyle f:S_{1}\times S_{2}\rightarrow \mathbb {R} } come ad una forma bilineare alternante la cui proprietà di alternanza f ( s 1 , s 2 ) = f ( s 2 , s 1 ) {\displaystyle f(s_{1},s_{2})=-f(s_{2},s_{1})} matematizza la contrapposizione totale dei due giocatori, ossia il fatto che la somma dei pagamenti sia zero. Indicato con S 1 {\displaystyle S_{1}} e S 2 {\displaystyle S_{2}} l’insieme delle strategie pure dei due giocatori e ponendo
f 1 ( s 1 , s 2 ) := f ( s 1 , s 2 ) {\displaystyle f_{1}(s_{1},s_{2}):=f(s_{1},s_{2})}
f 2 ( s 1 , s 2 ) := f ( s 2 , s 1 ) {\displaystyle f_{2}(s_{1},s_{2}):=f(s_{2},s_{1})}
si ottiene la definizione di gioco a somma zero:
f 1 ( s 1 , s 2 ) + f 2 ( s 1 , s 2 ) {\displaystyle f_{1}(s_{1},s_{2})+f_{2}(s_{1},s_{2})} 0 {\displaystyle 0} per ogni s 1 S 1 {\displaystyle s_{1}\in S_{1}} e per ogni s 2 S 2 {\displaystyle s_{2}\in S_{2}}
Nei giochi finiti è immediato constatare che i due insiemi S 1 {\displaystyle S_{1}} e S 2 {\displaystyle S_{2}} risultano essere compatti poiché sono finiti e dunque privi di punti di accumulazione. Le funzioni dei pagamenti f i {\displaystyle f_{i}} risultano definite su insiemi privi di punti di accumulazione, insiemi dunque costituiti dai soli punti isolati, punti cioè in cui le due funzioni f i {\displaystyle f_{i}} risultano essere continue (di più uniformemente continue). In merito alla richiesta che i due insiemi S 1 {\displaystyle S_{1}} e S 2 {\displaystyle S_{2}} siano convessi è sufficiente considerarne il politopo (involucro convesso) una volta introdotto il concetto di strategia mista come una ennupla non negativa di numeri ( s ~ 1 , , s ~ n ) {\displaystyle ({\tilde {s}}_{1},\ldots ,{\tilde {s}}_{n})} tali che s ~ 1 + . . . + s ~ n = 1 {\displaystyle {\tilde {s}}_{1}+...+{\tilde {s}}_{n}=1} . Il dominio di variazione delle strategie miste è più esteso di quello delle strategie pure: per queste ultime infatti il dominio è un semplice insieme finito di n {\displaystyle n} ennuple ordinate, mentre le strategie miste sono definite su un sottoinsieme dello spazio vettoriale di dimensione n {\displaystyle n} costituito da tutte le combinazioni lineari convesse delle n {\displaystyle n} strategie pure e come tale risulta convesso ed avente dimensione finita pari a n + 1 {\displaystyle n+1} . L’inviluppo convesso è compatto perché è costruito sull’insieme compatto delle strategie pure. Se f 1 ( , s ~ 2 ) {\displaystyle f_{1}(\cdot ,{\tilde {s}}_{2})} risulta essere convessa rispetto a s ~ 1 {\displaystyle {\tilde {s}}_{1}} per s ~ 2 {\displaystyle {\tilde {s}}_{2}} fissato e poiché f 1 = f 2 {\displaystyle f_{1}=-f_{2}} , allora f 2 ( s ~ 1 , ) {\displaystyle f_{2}({\tilde {s}}_{1},\cdot )} risulta essere concava rispetto a s ~ 2 {\displaystyle {\tilde {s}}_{2}} per s ~ 1 {\displaystyle {\tilde {s}}_{1}} fissato, sicché le condizioni del teorema del minimax risultano soddisfatte.
  • Il valore di un gioco simmetrico a somma zero a due giocatori esteso a strategie miste presenta valore pari a zero[3]. Il valore di un gioco per definizione è
min s ~ 1 max s ~ 2 f ( s ~ 1 , s ~ 2 ) = v = max s ~ 2 min s ~ 1 f ( s ~ 1 , s ~ 2 ) {\displaystyle \min _{{\tilde {s}}_{1}}\max _{{\tilde {s}}_{2}}f({\tilde {s}}_{1},{\tilde {s}}_{2})=v^{*}=\max _{{\tilde {s}}_{2}}\min _{{\tilde {s}}_{1}}f({\tilde {s}}_{1},{\tilde {s}}_{2})}
Si consideri dapprima la parte sinistra delle due eguaglianze appena scritte v = min s ~ 1 max s ~ 2 f ( s ~ 1 , s ~ 2 ) {\displaystyle v*=\min _{{\tilde {s}}_{1}}\max _{{\tilde {s}}_{2}}f({\tilde {s}}_{1},{\tilde {s}}_{2})} , per ipotesi è f ( s ~ 1 , s ~ 2 ) = f ( s ~ 2 , s ~ 1 ) {\displaystyle f({\tilde {s}}_{1},{\tilde {s}}_{2})=-f({\tilde {s}}_{2},{\tilde {s}}_{1})} dunque
v = min s ~ 1 max s ~ 2 f ( s ~ 1 , s ~ 2 ) = min s ~ 1 max s ~ 2 [ f ( s ~ 2 , s ~ 1 ) ] = max s ~ 1 min s ~ 2 f ( s ~ 2 , s ~ 1 ) {\displaystyle v^{*}=\min _{{\tilde {s}}_{1}}\max _{{\tilde {s}}_{2}}f({\tilde {s}}_{1},{\tilde {s}}_{2})=\min _{{\tilde {s}}_{1}}\max _{{\tilde {s}}_{2}}[-f({\tilde {s}}_{2},{\tilde {s}}_{1})]=-\max _{{\tilde {s}}_{1}}\min _{{\tilde {s}}_{2}}f({\tilde {s}}_{2},{\tilde {s}}_{1})} .
Poiché l'insieme delle strategie per i due giocatori sono identiche S 1 = S 2 {\displaystyle S_{1}=S_{2}} , scambiando s ~ 1 {\displaystyle {\tilde {s}}_{1}} con s ~ 2 {\displaystyle {\tilde {s}}_{2}} si ottiene
max s ~ 1 min s ~ 2 f ( s ~ 2 , s ~ 1 ) = max s ~ 2 min s ~ 1 f ( s ~ 1 , s ~ 2 ) = v {\displaystyle -\max _{{\tilde {s}}_{1}}\min _{{\tilde {s}}_{2}}f({\tilde {s}}_{2},{\tilde {s}}_{1})=-\max _{{\tilde {s}}_{2}}\min _{{\tilde {s}}_{1}}f({\tilde {s}}_{1},{\tilde {s}}_{2})=-v^{*}} .
Per confronto risulta v = v {\displaystyle v^{*}=-v^{*}} e quindi necessariamente il valore del gioco è v = 0 {\displaystyle v^{*}=0} .
  • La matrice associata alla funzione dei pagamenti f {\displaystyle f} è una matrice antisimmetrica e presenta quali elementi della diagonale principale solo zeri in quanto da f ( s 1 , s 2 ) = f ( s 2 , s 1 ) {\displaystyle f(s_{1},s_{2})=-f(s_{2},s_{1})} per ogni s 1 {\displaystyle s_{1}} , s 2 {\displaystyle s_{2}} segue immediatamente che è f ( s 1 , s 1 ) = 0 {\displaystyle f(s_{1},s_{1})=0} per ogni s 1 {\displaystyle s_{1}} una volta scelto s 1 = s 2 {\displaystyle s_{1}=s_{2}} .

Il teorema del min-max e la programmazione convessa

Il teorema alla base dei giochi antagonisti può essere preso come punto di unione tra la teoria della dualità ed i problemi di programmazione convessa, in particolare quelli di programmazione lineare. Le coppie di problemi constitute dal problema primale e dal suo problema duale sono infatti strettamente legate al problema di determinare i punti di sella ( x , y ) {\displaystyle (\mathbf {x} ^{\ast },\mathbf {y} ^{\ast })} della funzione lagrangiana L ( x , y ) {\displaystyle {\mathcal {L}}(\mathbf {x} ,\mathbf {y} )} . Se x {\displaystyle \mathbf {x} ^{\ast }} è soluzione del problema primale di massimizzazione e se y {\displaystyle \mathbf {y} ^{\ast }} è soluzione del problema duale di minimizzazione allora il valore all'ottimo della funzione lagrangiana del problema primale, m a x m i n L {\displaystyle maxmin{\mathcal {L}}} , coincide con il valore all'ottimo della funzione lagrangiana del problema duale, m i n m a x L {\displaystyle minmax{\mathcal {L}}} . In altri termini vale la relazione di dualità:

max x K 1 min y K 2 L ( x , y ) = L ( x , y ) = min y K 2 max x K 1 L ( x , y ) {\displaystyle \max _{x\in {\mathit {K_{1}}}}\min _{y\in {\mathit {K_{2}}}}{\mathcal {L}}(\mathbf {x} ,\mathbf {y} )={\mathcal {L}}(\mathbf {x} ^{\ast },\mathbf {y} ^{\ast })=\min _{y\in {\mathit {K_{2}}}}\max _{x\in {\mathit {K_{1}}}}{\mathcal {L}}(\mathbf {x} ,\mathbf {y} )}

In generale almeno uno dei due insiemi K 1 {\displaystyle {\mathit {K_{1}}}} o K 2 {\displaystyle {\mathit {K_{2}}}} è un insieme illimitato, dunque non è compatto: ciò costituisce il motivo per cui il teorema di von Neumann non è largamente applicato nella programmazione convessa[4].

Esempio

In un generico gioco a somma zero a due persone per il giocatore massimizzante si ha il problema primale seguente:

max x K 1 v {\displaystyle \max _{x\in {\mathit {K_{1}}}}v}

soggetto ai vincoli:

{ j = 1 n a i , j x j v i = 1 , . . . , m j = 1 n x j = 1 x j 0 j = 1 , . . . , n {\displaystyle \left\{{\begin{array}{l}{\begin{matrix}\sum _{j=1}^{n}a_{i,j}\cdot x_{j}\end{matrix}}\geq v\quad \forall i=1,...,m\\{\begin{matrix}\sum _{j=1}^{n}x_{j}\end{matrix}}=1\\x_{j}\geq 0\quad \forall j=1,...,n\\\end{array}}\right.}

La funzione lagrangiana associata a questo problema è:

L ( x , y ) = v + y , A x v {\displaystyle {\mathcal {L}}(\mathbf {x} ,\mathbf {y} )=v+\left\langle \mathbf {y} ,A\mathbf {x} -\mathbf {v} \right\rangle }

dove v = ( v , , v ) {\displaystyle \mathbf {v} =\left(v,\cdots ,v\right)} , mentre y = ( y 1 , , y m ) {\displaystyle \mathbf {y} =(y_{1},\cdots ,y_{m})} rappresentano i moltiplicatori di lagrange e costituiscono le strategie miste del giocatore avversario.

Osservato che la funzione lagrangiana L ( x , y ) = v + y , A x v {\displaystyle {\mathcal {L}}(\mathbf {x} ,\mathbf {y} )=v+\left\langle \mathbf {y} ,A\mathbf {x} -\mathbf {v} \right\rangle } risulta essere una funzione convessa nella variabile x {\displaystyle \mathbf {x} } sull'insieme K 1 = { x R n | j = 1 n x j α j | α j = 1 , j = 1 n x j = 1 , x j 0 j } {\displaystyle {\mathit {K_{1}}}=\left\{x\in \mathbb {R} ^{n}|\sum _{j=1}^{n}x_{j}\cdot \alpha _{j}\quad |\quad \alpha _{j}=1,\quad \sum _{j=1}^{n}x_{j}=1,\quad x_{j}\geq 0\quad \forall j\right\}} , che la lagrangiana L ( x , y ) {\displaystyle {\mathcal {L}}(\mathbf {x} ,\mathbf {y} )} è chiaramente una funzione lineare in y {\displaystyle \mathbf {y} } , dunque risulta essere banalmente concava in y {\displaystyle \mathbf {y} } in quanto ogni funzione lineare è sia concava che convessa e che i due insiemi K 1 {\displaystyle {\mathit {K_{1}}}} e K 2 {\displaystyle {\mathit {K_{2}}}} sono compatti, si deduce che la relazione di dualità

max x K 1 min y K 2 L ( x , y ) = min y K 2 max x K 1 L ( x , y ) {\displaystyle \max _{x\in {\mathit {K_{1}}}}\min _{y\in {\mathit {K_{2}}}}{\mathcal {L}}(\mathbf {x} ,\mathbf {y} )=\min _{y\in {\mathit {K_{2}}}}\max _{x\in {\mathit {K_{1}}}}{\mathcal {L}}(\mathbf {x} ,\mathbf {y} )}

è diretta conseguenza del teorema del minimax.

La formulazione esplicita del problema duale si ottiene considerando

min y K 2 max x K 1 L ( x , y ) {\displaystyle \min _{y\in {\mathit {K_{2}}}}\max _{x\in {\mathit {K_{1}}}}{\mathcal {L}}(\mathbf {x} ,\mathbf {y} )}

Dapprima si massimizza la lagrangiana per y {\displaystyle \mathbf {y} } fisso e x {\displaystyle \mathbf {x} } variabile in K 1 {\displaystyle {\mathit {K_{1}}}}

max x K 1 L ( x , y ) = max x K 1 [ v y , v + y , A x ] {\displaystyle \max _{x\in {\mathit {K_{1}}}}{\mathcal {L}}(\mathbf {x} ,\mathbf {y} )=\max _{x\in {\mathit {K_{1}}}}\left[v-\left\langle \mathbf {y} ,\mathbf {v} \right\rangle +\left\langle \mathbf {y} ,A\mathbf {x} \right\rangle \right]}

Essendo j = 1 n x j = 1 {\displaystyle \sum _{j=1}^{n}x_{j}=1} si può scrivere v = v 1 = v ( j = 1 n x j ) ˙ = v x 1 + + v x n = v , x {\displaystyle v=v\cdot 1=v{\dot {\left(\sum _{j=1}^{n}x_{j}\right)}}=vx_{1}+\cdots +vx_{n}=\left\langle \mathbf {v} ,\mathbf {x} \right\rangle } dove v = ( v , , v ) {\displaystyle \mathbf {v} =\left(v,\cdots ,v\right)} . Ricordato che y , A x = A t y , x {\displaystyle \left\langle \mathbf {y} ,A\mathbf {x} \right\rangle =\left\langle A^{t}\mathbf {y} ,\mathbf {x} \right\rangle } si ottiene

max x K 1 [ y , v + v , x + A t y , x ] = y , v + max x K 1 [ v + A t y , x ] {\displaystyle \max _{x\in {\mathit {K_{1}}}}\left[-\left\langle \mathbf {y} ,\mathbf {v} \right\rangle +\left\langle \mathbf {v} ,\mathbf {x} \right\rangle +\left\langle A^{t}\mathbf {y} ,\mathbf {x} \right\rangle \right]=-\left\langle \mathbf {y} ,\mathbf {v} \right\rangle +\max _{x\in {\mathit {K_{1}}}}\left[\left\langle \mathbf {v} +A^{t}\mathbf {y} ,\mathbf {x} \right\rangle \right]} .

Poiché x j 0 {\displaystyle x_{j}\geq 0} per tutti i j da 1 {\displaystyle 1} a m {\displaystyle m} , si avrà v + A t y , x > 0 {\displaystyle \left\langle \mathbf {v} +A^{t}\mathbf {y} ,\mathbf {x} \right\rangle >0} se v + A t y > 0 {\displaystyle \mathbf {v} +A^{t}\mathbf {y} >0} oppure v + A t y , x 0 {\displaystyle \left\langle \mathbf {v} +A^{t}\mathbf {y} ,\mathbf {x} \right\rangle \leq 0} se v + A t y 0 {\displaystyle \mathbf {v} +A^{t}\mathbf {y} \leq 0} .

Dunque si ha:

min y K 2 max x K 1 L ( x , y ) = min y K 2 [ y , v ] = min y K 2 v {\displaystyle \min _{y\in {\mathit {K_{2}}}}\max _{x\in {\mathit {K_{1}}}}{\mathcal {L}}(\mathbf {x} ,\mathbf {y} )=-\min _{y\in {\mathit {K_{2}}}}\left[\left\langle \mathbf {y} ,\mathbf {v} \right\rangle \right]=\min _{y\in {\mathit {K_{2}}}}-v} per v + A t y 0 {\displaystyle \mathbf {v} +A^{t}\mathbf {y} \leq 0}

ed il problema duale presenta la formulazione seguente:

min y K 2 v {\displaystyle \min _{y\in {\mathit {K_{2}}}}-v}

soggetto ai vincoli:

{ i = 1 m a i , j y i v j = 1 , . . . , n i = 1 m y i = 1 y i 0 i = 1 , . . . , m {\displaystyle \left\{{\begin{array}{l}{\begin{matrix}\sum _{i=1}^{m}a_{i,j}\cdot y_{i}\end{matrix}}\leq -v\quad \forall j=1,...,n\\{\begin{matrix}\sum _{i=1}^{m}y_{i}\end{matrix}}=1\\y_{i}\geq 0\quad \forall i=1,...,m\\\end{array}}\right.}

Posto v ~ = v {\displaystyle {\tilde {v}}=-v} si ha

min y K 2 v ~ {\displaystyle \min _{y\in {\mathit {K_{2}}}}{\tilde {v}}}
{ A t y v ~ i = 1 m y i = 1 y i 0 i = 1 , . . . , m {\displaystyle \left\{{\begin{array}{l}{\begin{matrix}-A^{t}\cdot \mathbf {y} \mathbf {} \end{matrix}}\geq -{\tilde {v}}\\{\begin{matrix}\sum _{i=1}^{m}y_{i}\end{matrix}}=1\\y_{i}\geq 0\quad \forall i=1,...,m\\\end{array}}\right.}

Note

  1. ^ J. von Neumann, Zur Theorie der Gesselschaftsspiele, Math. Ann. 100, 1928, p. 295-320.
  2. ^ J. von Neumann, Contributions to the theory of games. Vol. IV, Annals. of Mathematics Studies, no.40, Princeton Univ. Press, 1959, p. 13-42.
  3. ^ E. Burger, Introduction to the Theory of Games, Prentice-Hall, Inc., 1959, p. 74.
  4. ^ E. G. Goldstein, Theory of Convex Programming, Providence, U.S., American Mathematical Society, 1972, p. 7.
  Portale Matematica: accedi alle voci di Wikipedia che trattano di Matematica