reference: https://www.tau.ac.il/~mansour/course_games/scribe/lecture4.pdf
双人零和博弈是指两个参与者的支付在任意情况下和为0的博弈。假设行玩家的策略为x,列玩家的策略为y,那么行玩家的目标应为max_x(xRy),而列玩家的目标为max_y (x-Ry),即min_y(xRy),因此,零和博弈的本质是优化的minmax问题
双人零和博弈的纳什均衡有下列若干性质:
-
可交换性:假设博弈 ⟨ G , π ⟩ \lang G,\pi\rang ⟨G,π⟩有NE: ( γ 1 , γ 2 ) (\gamma_1,\gamma_2) (γ1,γ2)和 ( σ 1 , σ 2 ) (\sigma_1,\sigma_2) (σ1,σ2),那么 ( γ 1 , σ 2 ) , ( σ 1 , γ 2 ) (\gamma_1,\sigma_2),(\sigma_1,\gamma_2) (γ1,σ2),(σ1,γ2)也是NE,且 π ( γ 1 , γ 2 ) = π ( σ 1 , σ 2 ) = π ( γ 1 , σ 2 ) = π ( σ 1 , γ 2 ) \pi(\gamma_1,\gamma_2)=\pi(\sigma_1,\sigma_2)=\pi(\gamma_1,\sigma_2)=\pi(\sigma_1,\gamma_2) π(γ1,γ2)=π(σ1,σ2)=π(γ1,σ2)=π(σ1,γ2)
证明:根据NE的性质: π ( γ 1 , γ 2 ) ≥ π ( σ 1 , γ 2 ) ≥ π ( σ 1 , σ 2 ) \pi(\gamma_1,\gamma_2)\geq\pi(\sigma_1,\gamma_2)\geq \pi(\sigma_1,\sigma_2) π(γ1,γ2)≥π(σ1,γ2)≥π(σ1,σ2),同理, π ( γ 1 , γ 2 ) ≤ π ( γ 1 , σ 2 ) ≤ π ( σ 1 , σ 2 ) \pi(\gamma_1,\gamma_2)\leq\pi(\gamma_1,\sigma_2)\leq \pi(\sigma_1,\sigma_2) π(γ1,γ2)≤π(γ1,σ2)≤π(σ1,σ2),从而可知这些策略的payoff是一样的,从而由NE的定义, ( γ 1 , σ 2 ) , ( σ 1 , γ 2 ) (\gamma_1,\sigma_2),(\sigma_1,\gamma_2) (γ1,σ2),(σ1,γ2)同样使得两人不会偏离当前策略,因此也是NE。
推论:如果定义行玩家的均衡策略集合为 S 1 = { σ 1 ∈ A 1 ∣ ∃ σ 2 ∈ A 2 , ( σ 1 , σ 2 ) is an eq. pt. } S_1=\{\sigma_1\in A_1|\exists \sigma_2\in A_2,(\sigma_1,\sigma_2)\text{is an eq. pt.}\} S1={σ1∈A1∣∃σ2∈A2,(σ1,σ2)is an eq. pt.},那么该博弈的所有NE可以表示为 S 1 × S 2 S_1\times S_2 S1×S2,并且任意两个NE的payoff均相同。下一个定理刻画了应当如何求这个payoff
-
上下界统一保证:如果博弈为normal form,行玩家的支付由矩阵A表示,则显然行玩家的收益的下界为 max x min y x T A y = max x min j ∑ x i a i j \max_x \min_yx^TAy=\max_x \min_j\sum x_ia_{ij} maxxminyxTAy=maxxminj∑xiaij,上界为 min y max i ∑ y j a i j \min_y \max_i \sum y_j a_{ij} minymaxi∑yjaij. 根据Minmax Theorem,事实上可以证明这两个界的值是相等的,进而提示我们使用线性规划求解NE的方法:
证明:引理:凸集分离定理:假设 convex set B ⊂ R d , x ⃗ ∉ B \text{convex set }B\subset R^d,\vec{x}\notin B convex set B⊂Rd,x∈/B,则存在 α ∈ R d \alpha\in R^d α∈Rd和 a a a,使得 α ⃗ ⋅ x ⃗ = a < α ⃗ ⋅ y ⃗ , ∀ y ⃗ ∈ B \vec{\alpha}\cdot\vec{x}=a<\vec{\alpha}\cdot \vec{y},\forall \vec{y}\in B α⋅x=a<α⋅y,∀y∈B,亦即,凸集B和 x ⃗ \vec{x} x被超平面 α ⃗ ⋅ t ⃗ = a \vec{\alpha}\cdot \vec{t}=a α⋅t=a分离
引理:A为m*n维矩阵,m个n维行向量记为 a i ⃗ \vec{a_i} ai,则下列二者之一成立:
- 0 ⃗ \vec{0} 0位于 a i ⃗ ∪ e i ⃗ \vec{a_i}\cup \vec{e_i} ai∪ei共n+m个n维向量构成的凸包中 2. 存在一个向量 x ⃗ ∈ Δ n \vec{x}\in \Delta^n x∈Δn,使得 a i ⃗ ⋅ x ⃗ > 0 \vec{a_i}\cdot \vec{x}>0 ai⋅x>0
Pf:对0和这些向量的凸包使用凸集分离定理即可
回原:考虑上面引理的两种情况:
情况1:则存在和为1的非负实数 s 1 , . . . , s n + m s_1,...,s_{n+m} s1,...,sn+m,使得 ∑ j = 1 n a i j s j + s n + i = 0 , ∀ 1 ≤ i ≤ m \sum_{j=1}^n a_{ij}s_j+s_{n+i}=0,\forall 1\leq i\leq m ∑j=1naijsj+sn+i=0,∀1≤i≤m. 显然, s 1 , . . . , s n s_1,...,s_n s1,...,sn不全为0,从而定义n维向量 y ˉ \bar{y} yˉ: y ˉ i = s i / ∑ i = 1 n s i \bar{y}_i=s_i/\sum_{i=1}^ns_i yˉi=si/∑i=1nsi,则 y ⃗ ∈ Δ n \vec{y}\in \Delta^n y∈Δn,且 ∑ j a i j y ˉ j ≤ 0 , ∀ i \sum_j a_{ij}\bar{y}_j\leq 0,\forall i ∑jaijyˉj≤0,∀i,从而,结果的上界 min y max i ∑ y j a i j ≤ max i ∑ y ˉ j a i j ≤ 0 \min_y \max_i \sum y_j a_{ij}\leq \max_i \sum \bar{y}_ja_{ij}\leq 0 minymaxi∑yjaij≤maxi∑yˉjaij≤0,从而有算法结果的上下界结果均小于等于0
情况2:同理,可以存在 x ˉ ⃗ \vec{\bar{x}} xˉ,使得结果的下界大于等于0,从而上下界结果均大于等于0
从而, 我们证明了对于0,算法的上下界在其同侧。同理,对任意的常数c,定义矩阵B=A-c,使用上面的结论,则显然算法的上下界对任意常数c也在同侧,从而上下界的值必须相等,命题得证!
推论:由上,显然这个博弈的任意NE的值必须等于这个上下界的值,称为value of the game,简记为V
-
算法:行玩家的任意策略x若满足 ∀ j , ∑ i x i a i j ≥ V \forall j, \sum_i x_i a_{ij}\geq V ∀j,∑ixiaij≥V,则其对行玩家是最优的,因为根据V的定义,这保证了行玩家在面对列玩家的任意策略组合时都能获得大于等于V的收益;而且由于V的上界性,不可能存在更好的界了;同理,列玩家的任何策略y若满足 ∀ i , ∑ i y j a i j ≤ V \forall i, \sum_i y_j a_{ij}\leq V ∀i,∑iyjaij≤V,则也是最优的。这样的策略(x,y)显然满足 x T A y = V x^T Ay=V xTAy=V并且构成一个NE,并且推导出一个计算行玩家策略的算法:
∀ 1 ≤ j ≤ n , ∑ i = 1 m x i a i j − V ≥ 0 ∀ 1 ≤ i ≤ m x i ≥ 0 ∑ i = 1 m x i = 1 Maximize target function V \begin{array}{lcl} \forall 1 \leq j \leq n, & \sum_{i=1}^{m} x_{i} a_{i j}-V & \geq 0 \\ \forall 1 \leq i \leq m & x_{i} & \geq 0 \\ & \sum_{i=1}^{m} x_{i} & =1 \\ & \text { Maximize target function } & V \end{array} ∀1≤j≤n,∀1≤i≤m∑i=1mxiaij−Vxi∑i=1mxi Maximize target function ≥0≥0=1V
由上,其对偶算法计算了列玩家的策略:
∀ 1 ≤ j ≤ m , ∑ i = 1 n y i a j i − V ≤ 0 ∀ 1 ≤ i ≤ n y i ≥ 0 ∑ i = 1 n y i = 1 Minimize target function V \begin{array}{lcl} \forall 1 \leq j \leq m, & \sum_{i=1}^{n} y_{i} a_{j i}-V & \leq 0 \\ \forall 1 \leq i \leq n & y_{i} & \geq 0 \\ & \sum_{i=1}^n y_{i} & =1 \\ & \text { Minimize target function } & V \end{array} ∀1≤j≤m,∀1≤i≤n∑i=1nyiaji−Vyi∑i=1nyi Minimize target function ≤0≥0=1V
显然,由于线性规划是多项式时间的算法,因此计算零和博弈的NE也是多项式时间的。