当前课程知识点:算法设计与分析 > 10 Local Search > 10.4 Price of Stability > Price of Stability
为了刻画Nash平衡解偏离社会最优的程度
我们定义Price of stability
稳定的代价
定义为最好的Nash平衡对应的目标值
与社会最优解的目标值的比值
一个基本问题
如何确定稳定的代价
我们来看一个例子
下图中每个代理有2条路可以选择
代理i可以从s出发
经过ti到达t
费用为1/i
或者用右边的边直接到达t
这条边的费用为1+ε
社会最优为所有代理选择右边的边
总费用为1+ε
而这个例子有唯一的Nash平衡
每个代理都选择另外一条自己的路
总费用为1+1/2+…+1/k
令这个和为H(k)
那么其稳定的代价为H(k)/(1+ε)
我们先来回答
组播传输问题Nash平衡解的存在性问题
下面的动态的最优反应算法
可以求得组播传输问题的Nash平衡
首先令k个代理选择任意一条s-t的路
如果当前状态不是一个Nash平衡
那么有个代理j可以选择另外一条路
而花费更少的费用
那么就更新代理j的路线
最后 返回每个代理所选择的路线
证明 考虑路的集合P_1,…,P_k
令x_e为使用边e的路的数目
令Φ(P_1,…,P_k)=Σc_eH(x_e) 它是一个势函数
其中H函数定义为
H(0)=0
H(k)=i从1到k Σ1/i
因为只有有限多的路
那么我们只需要证明
Φ在算法中是严格下降的
那么算法执行过程中
不会回到已出现过的状态
必然有限步终止
考虑在算法的某一步中
代理j从路P_j转换到路P_j'
代理j进行路的转换
对于在P_j'中 而不在P_j中的边f
原有x_f个使用者
现在增加了一个使用者
共有x_f+1人
每人需要承担c_f/(x_f+1)的费用
那么代理j增加的费用为
对这些f对应的费用求和
对于在P_j中 而不在P_j'中的边e
原有x_e个使用者
代理j少承担了c_e/(x_e)的费用
那么代理j减少的费用为
对这些e对应的费用求和
代理j从路P_j转换到路P_j'
一定是费用增加的量小于费用减少的量
再来考虑势函数的变化
变化前后
对于在P_j'中 而不在P_j中的边f
Φ增加了H(x_f+1)-H(x_f)
经过计算
Φ增加的总量
恰为代理j增加的费用的总和
对于在P_j中 而不在P_j'中的边e
Φ减少了H(x_e)-H(x_e-1)
计算一下
Φ减少的总量
恰为代理j减少的费用的总和
由上面的讨论可知
Φ是严格下降的
下面我们来讨论稳定的代价
令C(P_1,…,P_k)为选择路P_1,…,P_k时的总费用
我们将证明
C(P_1,…,P_k)≤Φ(P_1,…,P_k)≤H(k)C(P_1,…,P_k)
证明 令x_e为这些路中使用边e的路的数目
令E^+为至少出现在一条路上的边的集合
那么C(P_1,…,P_k)=对E^+中边e
其费用c_e的总和
小于等于对E^+中的边e
其费用c_e乘以H(x_e)的总和
这是因为H(x_e)≥1
它又≤H(k)
因此 上式≤对E^+中的边e
其费用c_e乘以H(k)的总和=H(k)C(P_1,…,P_k)
下面来证明主定理
存在一个Nash平衡
其总费用至多是社会最优的H(k)倍
令(P_1^*,…,P_k^*)为社会最优所选择的路径
从这个状态开始
运行最优反应算法
得到一个Nash平衡(P_1,…,P_k)
因为Φ是严格单调递减的
所以Φ(P_1,…,P_k)≤Φ(P_1^*,…,P_k^*)
由之前所得的结果 我们有
C(P_1,…,P_k)≤Φ(P_1,…,P_k)≤ Φ(P_1^*,…,P_k^*)≤H(k)C(P_1^*,…,P_k^*)
因此 命题得证
总结一下我们得到的结果
对于k个代理的组播传输问题
如果边上的费用是平均承担的
总存在一个Nash平衡
对于稳定的代价
最好的Nash平衡的总费用
不超过社会最优的H(k)倍
一个基础性的问题
是否可以在多项式时间
找到一个Nash平衡呢
-1.1 Introduction
-1.2 A First Problem: Stable Matching
--A First Problem: Stable Matching
-1.3 Gale-Shapley Algorithm
-1.4 Understanding Gale-Shapley Algorithm
--Understanding Gale-Shapley Algorithm
-Homework1
-Lecture note 1
--Lecture note 1 Introduction of Algorithm
-2.1 Computational Tractability
-2.2 Asymptotic Order of Growth
-2.3 A Survey of Common Running Times
--A Survey of Common Running Times
-Homework2
-Lecture note 2
--Lecture note 2 Basics of Algorithm Analysis
-3.1 Basic Definitions and Applications
--Basic Definitions and Applications
-3.2 Graph Traversal
-3.3 Testing Bipartiteness
-3.4 Connectivity in Directed Graphs
--Connectivity in Directed Graphs
-3.5 DAG and Topological Ordering
--DAG and Topological Ordering
-Homework3
-Lecture note 3
-4.1 Coin Changing
-4.2 Interval Scheduling
-4.3 Interval Partitioning
-4.4 Scheduling to Minimize Lateness
--Scheduling to Minimize Lateness
-4.5 Optimal Caching
-4.6 Shortest Paths in a Graph
-4.7 Minimum Spanning Tree
-4.8 Correctness of Algorithms
-4.9 Clustering
-Homework4
-Lecture note 4
--Lecture note 4 Greedy Algorithms
-5.1 Mergesort
-5.2 Counting Inversions
-5.3 Closest Pair of Points
-5.4 Integer Multiplication
-5.5 Matrix Multiplication
--Video
-5.6 Convolution and FFT
-5.7 FFT
--FFT
-5.8 Inverse DFT
-Homework5
-Lecture note 5
--Lecture note 5 Divide and Conquer
-6.1 Weighted Interval Scheduling
--Weighted Interval Scheduling
-6.2 Segmented Least Squares
-6.3 Knapsack Problem
-6.4 RNA Secondary Structure
-6.5 Sequence Alignment
-6.6 Shortest Paths
-Homework6
-Lecture note 6
--Lecture note 6 Dynamic Programming
-7.1 Flows and Cuts
-7.2 Minimum Cut and Maximum Flow
--Minimum Cut and Maximum Flow
-7.3 Ford-Fulkerson Algorithm
-7.4 Choosing Good Augmenting Paths
--Choosing Good Augmenting Paths
-7.5 Bipartite Matching
-Homework7
-Lecture note 7
-8.1 Polynomial-Time Reductions
-8.2 Basic Reduction Strategies I
--Basic Reduction Strategies I
-8.3 Basic Reduction Strategies II
--Basic Reduction Strategies II
-8.4 Definition of NP
-8.5 Problems in NP
-8.6 NP-Completeness
-8.7 Sequencing Problems
-8.8 Numerical Problems
-8.9 co-NP and the Asymmetry of NP
--co-NP and the Asymmetry of NP
-Homework8
-Lecture note 8
--Lecture note 8 NP and Computational Intractability
-9.1 Load Balancing
-9.2 Center Selection
-9.3 The Pricing Method: Vertex Cover
--The Pricing Method: Vertex Cover
-9.4 LP Rounding: Vertex Cover
-9.5 Knapsack Problem
-Homework9
-Lecture note 9
--Lecture note 9 Approximation Algorithms
-10.1 Landscape of an Optimization Problem
--Landscape of an Optimization Problem
-10.2 Maximum Cut
-10.3 Nash Equilibria
-10.4 Price of Stability
-Homework10
-Lecture note 10
--Lecture note 10 Local Search
-11.1 Contention Resolution
-11.2 Linearity of Expectation
-11.3 MAX 3-SAT
-11.4 Chernoff Bounds
-Homework11
-Lecture note 11
--Lecture note 11 Randomized Algorithms
-Exam