<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Prisoners-Dilemma on TouchingFish.top</title><link>https://touchingfish.top/tags/prisoners-dilemma/</link><description>Recent content in Prisoners-Dilemma on TouchingFish.top</description><generator>Hugo</generator><language>zh-cn</language><lastBuildDate>Mon, 19 Jun 2023 00:00:00 +0000</lastBuildDate><atom:link href="https://touchingfish.top/tags/prisoners-dilemma/index.xml" rel="self" type="application/rss+xml"/><item><title>博弈的节律</title><link>https://touchingfish.top/2023/game-environment-feedback/</link><pubDate>Mon, 19 Jun 2023 00:00:00 +0000</pubDate><guid>https://touchingfish.top/2023/game-environment-feedback/</guid><description>&lt;p&gt;之前写过两个 ABM（Agent-Based Model）。网格上的 agents 随机配对，玩一局博弈，然后更新 action。唯一的变量是&amp;quot;看什么&amp;quot;——这一步的得分，还是历史上所有博弈的总分。微分方程我不会推（平均场近似抄的文献），但 ODE 的阶数我还是看得懂的：一个是一阶，一个是二阶。速度与加速度，无记忆与有惯性。微观设定只是一念之差。&lt;/p&gt;
&lt;p&gt;但那两个模型共享一个暗含的前提：支付矩阵是铁板一块。囚徒困境永远是囚徒困境。鹰鸽博弈永远是鹰鸽博弈。&lt;/p&gt;
&lt;p&gt;草不会疼。&lt;/p&gt;
&lt;p&gt;Weitz et al.（2016）让草活了过来——策略改变环境，环境重写收益结构，收益结构反过来重塑策略。闭环一旦形成，系统就开始呼吸。&lt;/p&gt;
&lt;p&gt;我想做的事更简单：不给环境开一个连续的反馈通道，只是给网格一个节律。&lt;/p&gt;
&lt;h2 id="给网格一个节律"&gt;给网格一个节律&lt;/h2&gt;
&lt;p&gt;在原来的 ABM 里加一个资源状态变量，初始值设为 $A$。每一步 agents 在网格上博弈，消耗 $1$ 单位资源。资源从 $A$ 一路降到 $0$，再隔固定步数，重置回 $A$。&lt;/p&gt;
&lt;p&gt;设 $b=1$，资源存量 $a \in \{0, 1, 2, 3, 4\}$。支付矩阵为：&lt;/p&gt;
$$
\begin{matrix}
 &amp; C &amp; D \\\\ \hline
C &amp; a/2 &amp; 0 \\\\
D &amp; a &amp; (a-1)/2
\end{matrix}
$$&lt;p&gt;$a=4$，桌子是这样的：&lt;/p&gt;
$$
\begin{matrix}
 &amp; C &amp; D \\\\ \hline
C &amp; 2 &amp; 0 \\\\
D &amp; 4 &amp; 1.5
\end{matrix}
$$&lt;p&gt;纯正的囚徒困境。$D$ 严格占优 $C$——不管对方选什么，背叛都比合作赚得多。Replicator dynamics 告诉你：关门，放背叛者，全图沦陷。&lt;/p&gt;</description></item><item><title>囚徒困境的终点</title><link>https://touchingfish.top/2023/replicator-dynamics-prisoners-dilemma/</link><pubDate>Sun, 15 Jan 2023 00:00:00 +0000</pubDate><guid>https://touchingfish.top/2023/replicator-dynamics-prisoners-dilemma/</guid><description>&lt;p&gt;我想搞清楚一件事——&lt;/p&gt;
&lt;p&gt;(D, D) 为什么既是均衡，又是终点？&lt;/p&gt;
&lt;p&gt;不是道德判断。是数学事实。复制子动力学 Replicator Dynamics 把这套逻辑说得非常清楚。&lt;/p&gt;
&lt;h2 id="收益矩阵"&gt;收益矩阵&lt;/h2&gt;
&lt;p&gt;两个人，两种策略：合作（记作 C）和背叛（记作 D）。&lt;/p&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;&lt;/th&gt;
 &lt;th&gt;对方 C&lt;/th&gt;
 &lt;th&gt;对方 D&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;我 C&lt;/td&gt;
 &lt;td&gt;3&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;我 D&lt;/td&gt;
 &lt;td&gt;5&lt;/td&gt;
 &lt;td&gt;1&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;含义很简单：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;双合作：各得 3&lt;/li&gt;
&lt;li&gt;我背叛、对方合作：我得 5（对方得 0）&lt;/li&gt;
&lt;li&gt;双背叛：各得 1&lt;/li&gt;
&lt;li&gt;我合作、对方背叛：我得 0&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;关键观察在这里。无论对方选什么，背叛的收益都不低于合作：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;对方 C 时，背叛 5 &amp;gt; 合作 3&lt;/li&gt;
&lt;li&gt;对方 D 时，背叛 1 &amp;gt; 合作 0&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;D 是&lt;strong&gt;占优策略 dominant strategy&lt;/strong&gt;。理性人一定选 D。&lt;/p&gt;
&lt;p&gt;所以 (D, D) 是唯一纳什均衡。&lt;/p&gt;
&lt;p&gt;静态博弈已经告诉我们答案，不需要动力学。&lt;/p&gt;
&lt;p&gt;但——这个均衡是怎么&amp;quot;达到&amp;quot;的？如果一开始有人合作，系统会怎样演化？&lt;/p&gt;
&lt;p&gt;这才是复制子动力学要回答的。&lt;/p&gt;
&lt;h2 id="群体视角"&gt;群体视角&lt;/h2&gt;
&lt;p&gt;不是两个人了。假设一个很大的群体，一部分人用 C，一部分人用 D。&lt;/p&gt;
&lt;p&gt;记时刻 $t$ 时，合作者比例为 $x(t)$，背叛者就是 $1 - x(t)$。&lt;/p&gt;</description></item><item><title>从酵母细胞说起</title><link>https://touchingfish.top/2022/yeast-prisoners-dilemma/</link><pubDate>Tue, 15 Nov 2022 00:00:00 +0000</pubDate><guid>https://touchingfish.top/2022/yeast-prisoners-dilemma/</guid><description>&lt;p&gt;读到一篇有意思的论文。Greig 和 Travisano 在 &lt;em&gt;Biology Letters&lt;/em&gt; 上发了篇文章，研究酵母的&amp;quot;作弊&amp;quot;行为。&lt;/p&gt;
&lt;p&gt;酵母会分泌 invertase 到细胞外消化蔗糖，消化的糖大家都可以用——这就有意思了。一个细胞可以选择&amp;quot;作弊&amp;quot;：偷用邻居分泌的酶，自己却不分泌。研究者把有功能 SUC2 基因的酵母叫&amp;quot;合作者&amp;quot;，把删除了 SUC2 基因的叫&amp;quot;作弊者&amp;quot;，然后把它们放在一起竞争。&lt;/p&gt;
&lt;p&gt;结果很反直觉：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;在稀疏的群体里（低社交密度），作弊者的 fitness 只有 0.87——比合作者差&lt;/li&gt;
&lt;li&gt;在密集的群体里（高社交密度），作弊者的 fitness 高达 1.19——比合作者强&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;为什么？社交密度越高，合作者越容易遇到其他合作者。大家一起分泌酶，公共池塘变大，每个人的收益都高。但这时候作弊者混进来，单方面享受公共成果还不付成本，收益爆炸。&lt;/p&gt;
&lt;p&gt;当密度极高时，作弊者几乎总能找到合作目标，偷到的比自己分泌的还多。合作者反而被拖累。&lt;/p&gt;
&lt;p&gt;这完美符合我的直觉。但我想自己做一遍——不是验证论文结论，而是想亲手&amp;quot;看见&amp;quot;这个过程，把方程写进格子，看数字跑起来。&lt;/p&gt;
&lt;h2 id="模型设定"&gt;模型设定&lt;/h2&gt;
&lt;p&gt;$n \times n$ 的网格，population density 控制每格放置 agent 的概率。Agent 有两种策略：C（合作，分泌酶）和 D（作弊，不分泌）。&lt;/p&gt;
&lt;p&gt;两两相遇时玩标准囚徒困境，payoff 矩阵：&lt;/p&gt;
$$
\begin{pmatrix}
R=3 &amp; S=0 \\
T=5 &amp; P=1
\end{pmatrix}
$$&lt;p&gt;R 是合作-合作的奖励，T 是背叛的诱惑，S 是被背叛者的收益，P 是双双背叛的惩罚。按经典设定：$T &gt; R &gt; P &gt; S$，且 $2R &gt; T + S$（互惠合作优于反复背叛）。&lt;/p&gt;
&lt;p&gt;每一步：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Agent 在 Von Neumann 邻域（上下左右四格）找邻居&lt;/li&gt;
&lt;li&gt;两人玩一把博弈&lt;/li&gt;
&lt;li&gt;比较这一步的得分 $\pi$&lt;/li&gt;
&lt;li&gt;以正比于收益差的概率模仿邻居策略&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;只看&lt;strong&gt;当期得分&lt;/strong&gt;。不记历史，不做规划。&lt;/p&gt;</description></item></channel></rss>