博弈论 Game Theory
博弈论研究的是自利者(self-interested)的策略性互动。
经典场景之一:退避游戏(Backoff Game)
计算机网络中TCP协议的退避机制 (backoff mechanisn)
假设你在浏览器中看到了弹出窗口
当看到这个窗口时,大多数人都仅仅认为就是检测网速慢,会直接点下一步(next),而这可能会是一个病毒。但是有个问题,如果没有点下一步,则失去了是网速变快的机会,顾此失彼。
在这里,有必要说以TCP协议的相关知识,它是互联网的支柱之一 :
- 可以简要认为通信包会被分解成一些不同的数据包,理论上就像是将内含信息的信封(envelopes) 的消息顺着网络传输deliver 到收件人(recipient)那里。
- 当我说顺网络传输的时候,你的电脑与期望的收件人并没有直接联系,而是将消息从你那里一个接一个传到收件人那里。
- 顺着网络你将消息传到一些你连接的电脑上,它传到另一台电脑上,沿着链向下(down the chain),直至你的收件人。那时,你的收件人会看到。
- 它会传回一份回执(acknowledgement),告诉你它收到了消息。
问题来了:其中一台计算机遇到拥堵问题。它以一种非常奇葩的方式解决数据拥堵,它把接收到的部分数据扔掉,还不告诉别人,它直接删除这部分数据 。
为什么通过互联网通讯仍然可靠呢?
这是因为你的计算机在发送完一个数据包后会休息一定时间等待回执。如果没等到它就假设数据包没有被收到,然后减少数据量再发一遍直到它能够处理。
TCP协议中的退避机制(backoff mechanisn) 这就是为什么我们经常要花很多时间等待网络延迟,因为每台计算机都在平衡发送数据包的频率 。(balancing the speed that they send messages out)
问题:是否安装有些可疑的软件时,你会做何决策?也就是说当你使用TCP协议的正确版本,存在这样的退避机制时,你应该把你的数据包上传到你的网络连接上吗? 或者说 你是否在运行这个程序当中,转而采用一种有缺陷的方案,禁止上述的退避机制 ,让所有网络一拥而上,全然不考虑,它带给别人或你自己的拥堵?
-
像这样的问题 就是博弈论学家所说的博弈,一般来说 博弈就是两或多人间的互动:
-
其中互动的结果取决于每个人的行为,并且每个人对于不同的结果(outcome)都会有不同的愉悦度(happiness)
-
我们先思考一个两人版本的互动,博弈论学者称之为两人博弈
-
一个数学的评估方法,用于决定一个局中人对于特定情况的喜恶程度。
-
收益函数描述了他们对于某个时间的态度,比如说明天的温度将会是恰好25摄氏度,而实际上,收益函数还可以告诉我们他们对于一系列可能情况的概率分布的喜恶。
-
因此,收益函数描绘了他们对于不同事件不确定性的态度。比如说,如果明天的气温是25度的可能性是70%,24度的可能性是30%,
-
对于这种喜好的理论决定方法,就是现代博弈论的基础这个基础就是,每个人都试图将期望效益最大化。 。
博弈的基本概念和重要元素
最显而易见的元素就是博弈中的参与者 players ,行动actions, 和收益 payoffs
博弈中的两种基本形式
-
一种是是范式博弈。最简单,直接的表达形式。它用函数关系呈现了参与者收益和他们行为的关系。通常,所有参与者都同时采取行动对于参与者的策略。
-
另一种形式被称为展开形式的博弈,在这种形式下 我们会把时间这个因素考虑在内,博弈中谁会先采取行动,在什么时间点采取行动,我们常常用一个树把它们表示出来。