当前课程知识点:算法设计与分析 > 10 Local Search > 10.3 Nash Equilibria > Nash Equilibria
Nash平衡是博弈论中一个核心概念
近年来
围绕Nash平衡产生了许多算法问题
是一个热点的研究方向
先来介绍一下组播传输问题
给定一个有向图G=(V,E)
边e有非负的费用c_e
再给定源s和k个代理
每个代理有一个对应的终点
代理j必须构建一条
从s到它的终点tj的路Pj
代理需要对它从源到终点的路上
所使用的边付费
我们希望付费的方式是公平的
如果有x个代理用了边e
那么每人付费c_e/x
比如下例中
有两个代理
网络情况如图所示
如果两个代理分别用左右两条边
那么分别付费4和8
如果代理1用左边的边
代理2用中间的路线
那么分别付费4
和5+1=6
如果代理1用中间的路线
代理2用右边的边
那么分别付费5+1=6和8
如果两个代理都用中间的路线
边(s,v)被他们公用
各付费5/2
总计分别付费5/2+1
假设每个代理都会对当前局面
做出动态的最优反应
即 如果存在一条付费更少的路线
他就会切换到这条路线
如果一个状态下
任何代理都不能够通过它单方面的改变
得到改善的目标值
我们称这个状态是一个Nash平衡
一个基本的问题
何时存在Nash平衡呢
还来看刚才的例子
假设两个代理开始的时候
分别选择左右两条边
代理1没有意愿改变状况
因为选择另一条路
s-v-t1
对应的目标值为5
大于当前的目标值4
而代理2会选择另一条路s-v-t2
目标值为6
好于当前的目标值8
然后 代理1也会选择中间的路
因为此时的目标值变为5/2+1=3.5
好于当前的目标值4
这时
任何一个代理都不会通过单方的改变
再提高它的目标值
两人都选择中间的路
得到一个Nash平衡
我们用局部搜索算法来求一个Nash平衡
在每一步
一个代理如果能通过单方行动
改善其目标值
那么就进行相应的行动
我们可以做一个对照
Nash平衡对应局部最优解
动态的最优反应行为对应局部搜索算法
一个代理的单方移动
对应从一个状态到邻近状态的改变
这不是一个单目标的优化问题
动态的最优反应算法也不保证有限步终止
为了刻画Nash平衡解的质量
我们考虑社会最优
它定义为所有代理总花费的最小值
我们发现
一般而言
一个实例可能存在许多Nash平衡
即使它是唯一的
也不一定是社会最优
比如下面的例子
左例中有k个代理
他们都可以选择左右两条边从s到达t
这里有2个Nash平衡
都选择左边的边
每人付费(1+ε)/k
或者都选右边的边
每人付费1
注意到 这也是一个Nash平衡
因为如果有人选择另一条路的话
将付费1+ε
超过当前的付费
社会最优显然是都选择左边的边
总的付费是1+ε
再来看右边的例子
这里有两个代理
这个图有唯一的Nash平衡
两个代理各自选择左右两条边
费用的总和为8
而这个问题的社会最优解是
他们都走中间的路
对应的社会最优为7
-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