<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Evolutionary-Games on TouchingFish.top</title>
    <link>https://touchingfish.top/evolutionary-game/</link>
    <description>Recent content in Evolutionary-Games 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/evolutionary-game/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>博弈的胃</title>
      <link>https://touchingfish.top/evolutionary-game/2023-game-environment-feedback/</link>
      <pubDate>Mon, 19 Jun 2023 00:00:00 +0000</pubDate>
      <guid>https://touchingfish.top/evolutionary-game/2023-game-environment-feedback/</guid>
      <description>&lt;p&gt;之前写过两个 ABM（Agent-Based Model）。网格上的 agents 随机配对，玩一局博弈，然后更新 action。唯一的变量是&amp;quot;看什么&amp;quot;——这一步的得分，还是历史上所有博弈的总分。微分方程我不会推（平均场近似抄的文献），但 ODE 的阶数我还是看得懂的：一个是一阶，一个是二阶。速度与加速度，无记忆与有惯性。微观设定只是一念之差。&lt;/p&gt;&#xA;&lt;p&gt;但那两个模型共享一个暗含的前提：支付矩阵是铁板一块。囚徒困境永远是囚徒困境。鹰鸽博弈永远是鹰鸽博弈。&lt;/p&gt;&#xA;&lt;p&gt;草不会疼。&lt;/p&gt;&#xA;&lt;p&gt;Weitz et al.（2016）让草活了过来——策略改变环境，环境重写收益结构，收益结构反过来重塑策略。闭环一旦形成，系统就开始呼吸。&lt;/p&gt;&#xA;&lt;p&gt;我想做的事更简单：不给环境开一个连续的反馈通道，只是给网格一个胃。&lt;/p&gt;&#xA;&lt;h2 id=&#34;给网格一个胃&#34;&gt;给网格一个胃&lt;/h2&gt;&#xA;&lt;p&gt;在原来的 ABM 里加一个资源状态变量，初始值设为 $A$。每一步 agents 在网格上博弈，消耗 $1$ 单位资源。资源从 $A$ 一路降到 $0$，再隔固定步数，重置回 $A$。&lt;/p&gt;&#xA;&lt;p&gt;设 $b=1$，资源存量 $a \in \{0, 1, 2, 3, 4\}$。支付矩阵为：&lt;/p&gt;&#xA;$$&#xA;\begin{matrix}&#xA; &amp; C &amp; D \\\\ \hline&#xA;C &amp; a/2 &amp; 0 \\\\&#xA;D &amp; a &amp; (a-1)/2&#xA;\end{matrix}&#xA;$$&lt;p&gt;$a=4$，桌子是这样的：&lt;/p&gt;&#xA;$$&#xA;\begin{matrix}&#xA; &amp; C &amp; D \\\\ \hline&#xA;C &amp; 2 &amp; 0 \\\\&#xA;D &amp; 4 &amp; 1.5&#xA;\end{matrix}&#xA;$$&lt;p&gt;纯正的囚徒困境。$D$ 严格占优 $C$——不管对方选什么，背叛都比合作赚得多。Replicator dynamics 告诉你：关门，放背叛者，全图沦陷。&lt;/p&gt;</description>
    </item>
    <item>
      <title>当公地开始呼吸</title>
      <link>https://touchingfish.top/evolutionary-game/2023-oscillating-tragedy-of-the-commons/</link>
      <pubDate>Thu, 15 Jun 2023 00:00:00 +0000</pubDate>
      <guid>https://touchingfish.top/evolutionary-game/2023-oscillating-tragedy-of-the-commons/</guid>
      <description>&lt;p&gt;公地悲剧是一个老故事了。&lt;/p&gt;&#xA;&lt;p&gt;1968 年，Garrett Hardin 描述了这样一个场景：一片对所有人开放的草地，每个牧民都往上面多放一头牛。多放一头牛的收益全归自己，草地退化的代价由所有人分担。于是每个人都选择多放，草地最终被彻底毁掉。&lt;/p&gt;&#xA;&lt;p&gt;博弈论的翻译很简单：背叛（defect）是 dominant strategy。不管别人怎么做，背叛的 payoff 都比合作高。Replicator dynamics 告诉你，背叛者最终会吞掉整个群体。&lt;/p&gt;&#xA;&lt;p&gt;但这个模型有一个默认前提：草是死的东西。payoff 矩阵是固定的。&lt;/p&gt;&#xA;&lt;p&gt;你踩一脚，它不会疼。把它吃光了，它不会改变下一次博弈的规则。&lt;/p&gt;&#xA;&lt;p&gt;Weitz 等人在 2016 年 PNAS 上发表的这篇论文做了一件事：他们让草活过来了。&lt;/p&gt;&#xA;&lt;h2 id=&#34;让草活过来&#34;&gt;让草活过来&lt;/h2&gt;&#xA;&lt;p&gt;论文提出了一种叫做 &amp;ldquo;coevolutionary game theory&amp;rdquo; 的框架——博弈和环境的共同演化。核心改动只有一条：payoff 矩阵不再是固定的常数，而是环境的函数。环境好（replete），背叛占优。环境差（depleted），合作占优。&lt;/p&gt;&#xA;&lt;p&gt;直觉上很好理解。资源充裕的时候，搭便车是最划算的——别人出力，你享受。资源枯竭的时候，谁都没法搭便车——不合作就一起死。用论文的话说：&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;mutual cooperation is a Nash equilibrium when n = 0 and mutual defection is a Nash equilibrium when n = 1.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;$n$ 是环境状态，$n=0$ 代表 depleted，$n=1$ 代表 replete。payoff 矩阵 $A(n)$ 在这两个极值之间线性插值，合作和背叛的 Nash 均衡各自占据一端。&lt;/p&gt;&#xA;&lt;p&gt;但关键不在于&amp;quot;环境决定策略&amp;quot;。关键在于另一个方向：策略反过来也改变环境。&lt;/p&gt;&#xA;&lt;h2 id=&#34;闭环&#34;&gt;闭环&lt;/h2&gt;&#xA;&lt;p&gt;合作者改善环境——比如细菌分泌公共酶分解养分，植被固定水土。背叛者恶化环境——只消耗不生产。于是出现了一个闭环：&lt;/p&gt;&#xA;&lt;p&gt;合作者多了 → 环境变好 → 背叛者占优 → 环境变差 → 合作者又占优 →&lt;/p&gt;</description>
    </item>
    <item>
      <title>有限群体的波动——固定点与随机性的邂逅</title>
      <link>https://touchingfish.top/evolutionary-game/2023-finite-population-fluctuations/</link>
      <pubDate>Sun, 12 Mar 2023 00:00:00 +0000</pubDate>
      <guid>https://touchingfish.top/evolutionary-game/2023-finite-population-fluctuations/</guid>
      <description>&lt;p&gt;雪堆博弈里出现了内部固定点 $x^*$，对应混合纳什均衡。&lt;/p&gt;&#xA;&lt;p&gt;听起来很美好。&lt;/p&gt;&#xA;&lt;p&gt;但这只是在 ODE 的世界里。真实世界里，群体是有限的。有限意味着随机。&lt;/p&gt;&#xA;&lt;p&gt;当固定点遇上随机性，稳定分布和固定点到底是什么关系？&lt;/p&gt;&#xA;&lt;h2 id=&#34;随机与确定的根本区别&#34;&gt;随机与确定的根本区别&lt;/h2&gt;&#xA;&lt;p&gt;先回顾三个对象的定义：&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;固定点（ODE）：&lt;/strong&gt; $\frac{dx}{dt} = F(x)$，当 $F(x^*) = 0$ 时，$x^*$ 不再移动。&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;马尔可夫链稳定分布（stationary distribution）：&lt;/strong&gt; $\pi P = \pi$，长期后系统有多大概率在各状态。&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;纳什均衡：&lt;/strong&gt; 没人愿意单边改变策略。&lt;/p&gt;&#xA;&lt;p&gt;在囚徒困境里，因为有吸收态 $x = 0$，三者重合。&lt;/p&gt;&#xA;&lt;p&gt;但雪堆博弈的内部点 $x^*$ 不是吸收态。这就导致了根本性的差异。&lt;/p&gt;&#xA;&lt;h2 id=&#34;离散状态-vs-连续近似&#34;&gt;离散状态 vs 连续近似&lt;/h2&gt;&#xA;&lt;p&gt;在复制子 ODE 里，$x$ 是连续变量，$0 \leq x \leq 1$。&lt;/p&gt;&#xA;&lt;p&gt;但在真实随机群体里，状态是离散的：&lt;/p&gt;&#xA;$$k = 0, 1, 2, \ldots, N$$&lt;p&gt;其中 $k$ 是合作者数量，$x = k/N$。&lt;/p&gt;&#xA;&lt;p&gt;每次更新只能 $k \to k \pm 1$，不能直接跳到 $x^*$。&lt;/p&gt;&#xA;&lt;p&gt;假设 $N = 100$，$x^* = 0.4$。这意味着 40 个合作者。&lt;/p&gt;</description>
    </item>
    <item>
      <title>即时筛选与历史筛选</title>
      <link>https://touchingfish.top/evolutionary-game/2023-two-modes-of-natural-selection/</link>
      <pubDate>Thu, 09 Mar 2023 00:00:00 +0000</pubDate>
      <guid>https://touchingfish.top/evolutionary-game/2023-two-modes-of-natural-selection/</guid>
      <description>&lt;p&gt;考虑一个简单的 Agent-Based Model（ABM）。在一个网格上，一群 agents 各自带着一个 action（策略）随机移动，每一步找一个邻居配对，玩一把博弈，获得一个 payoff（收益），然后更新自己的 action。更新规则很简单——看看邻居的得分，谁的得分高，下一步就变成谁的策略。&lt;/p&gt;&#xA;&lt;p&gt;关键变量只有一个：&lt;strong&gt;比较什么得分？&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;模型一：比较&lt;strong&gt;这一步&lt;/strong&gt;的得分 $P_1$。谁这一轮赚得多，我就学谁。&lt;/p&gt;&#xA;&lt;p&gt;模型二：比较&lt;strong&gt;历史所有博弈&lt;/strong&gt;的累计得分 $P_2$。谁到目前为止总共赚得多，我就学谁。&lt;/p&gt;&#xA;&lt;p&gt;微观设定上，只是&amp;quot;看当前&amp;quot;和&amp;quot;看历史&amp;quot;的区别。但数学推导告诉我们，这两个模型对应着两种截然不同的动态系统——模型一是一阶常微分方程（Replicator Dynamics），收益差决定演化的&amp;quot;速度&amp;quot;；模型二是二阶积分微分方程（Inertial Dynamics），收益差决定演化的&amp;quot;加速度&amp;quot;。速度与加速度，一阶与二阶，无记忆与有惯性。数学上的区别是清楚的。&lt;/p&gt;&#xA;&lt;p&gt;但我想做另一件事：&lt;strong&gt;把这两个模型翻译成生物学的语言。&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;翻译的第一步&#34;&gt;翻译的第一步&lt;/h2&gt;&#xA;&lt;p&gt;这个 ABM 本身就是自然选择的模拟，翻译几乎是直译：&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Action = 表现型（phenotype）&lt;/li&gt;&#xA;&lt;li&gt;每一步 = 一代&lt;/li&gt;&#xA;&lt;li&gt;模仿更好的策略 = 更好的基因在代际之间被传播&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;那么 $P_1$ 和 $P_2$ 呢？它们都像是 fitness（适应度）。模型一依据当前 fitness 筛选，模型二依据累计 fitness 筛选。直觉上，模型一的自然选择反应快，模型二因为有&amp;quot;惯性&amp;quot;，反应慢，自然选择被减弱了。&lt;/p&gt;&#xA;&lt;p&gt;这个推理大方向是对的。但有三处需要修正。&lt;/p&gt;&#xA;&lt;h2 id=&#34;和--都是-fitness但不是同一种&#34;&gt;$P_1$ 和 $P_2$ 都是 fitness，但不是同一种&lt;/h2&gt;&#xA;&lt;p&gt;$P_1$ 更像 &lt;strong&gt;instantaneous fitness&lt;/strong&gt; 或 &lt;strong&gt;current realized fitness&lt;/strong&gt;——这一代在当前环境下的适应度表现。$P_2$ 更像 &lt;strong&gt;cumulative fitness&lt;/strong&gt; 或 &lt;strong&gt;lifetime reproductive success&lt;/strong&gt;——一个个体到目前为止的总表现。&lt;/p&gt;&#xA;&lt;p&gt;区别不只是&amp;quot;看一步&amp;quot;和&amp;quot;看多步&amp;quot;。$P_2$ 作为简单累加，会混入&amp;quot;活得更久、比较次数更多&amp;quot;这些因素。一个个体 $P_2$ 高，可能不是因为它的策略真的好，只是因为它参与博弈的次数多。也就是说，$P_2$ 比较的不纯粹是生物学意义上的适应度，还混入了&amp;quot;累计时间长度&amp;quot;。&lt;/p&gt;&#xA;&lt;p&gt;如果想要更干净的生物学解释，常见做法是把 $P_2$ 改成 &lt;strong&gt;average payoff per interaction&lt;/strong&gt;，或者按年龄、交互次数做归一化。这样比较的就是&amp;quot;平均每次博弈的表现&amp;quot;，而非&amp;quot;总表现&amp;quot;。&lt;/p&gt;</description>
    </item>
    <item>
      <title>雪堆博弈的第三条路</title>
      <link>https://touchingfish.top/evolutionary-game/2023-snowdrift-game-internal-equilibrium/</link>
      <pubDate>Sat, 25 Feb 2023 00:00:00 +0000</pubDate>
      <guid>https://touchingfish.top/evolutionary-game/2023-snowdrift-game-internal-equilibrium/</guid>
      <description>&lt;p&gt;囚徒困境是绝望的。&lt;/p&gt;&#xA;&lt;p&gt;背叛是严格占优策略。所有动力学、所有演化、所有重复博弈的尽头，都是纯背叛。教科书这么写，实验室这么验证，我们看着，心里大概也是这么想的。&lt;/p&gt;&#xA;&lt;p&gt;但雪堆博弈 Snowdrift Game 不一样。&lt;/p&gt;&#xA;&lt;p&gt;这里没有绝路。&lt;/p&gt;&#xA;&lt;h2 id=&#34;铲雪还是不铲&#34;&gt;铲雪，还是不铲？&lt;/h2&gt;&#xA;&lt;p&gt;两辆车被雪堵住了。&lt;/p&gt;&#xA;&lt;p&gt;这是经典故事。我第一次读到的时候，正在台北等一场永远不会来的雪。窗外只有雨，但脑子里全是那个场景：两个人，两把铲子，两个选择。&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;铲（合作 C）&lt;/li&gt;&#xA;&lt;li&gt;不铲（偷懒 D）&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;规则很简单：只要有一个人铲，路就能通。铲雪的人付出成本。不铲的人——搭便车 free rider。&lt;/p&gt;&#xA;&lt;p&gt;最舒服的局面：别人干活，我拿收益。&lt;/p&gt;&#xA;&lt;p&gt;最坏的结局：两个人都等着，谁都走不了。&lt;/p&gt;&#xA;&lt;p&gt;这和囚徒困境的绝望感不同。囚徒困境里，合作是傻子策略。这里不是。这里存在一种张力：合作和背叛都有各自的理由，取决于对方选了什么。&lt;/p&gt;&#xA;&lt;h2 id=&#34;收益矩阵&#34;&gt;收益矩阵&lt;/h2&gt;&#xA;&lt;p&gt;设通路收益为 $b$，铲雪成本为 $c$，$b &gt; c &gt; 0$。&lt;/p&gt;&#xA;&lt;table&gt;&#xA;  &lt;thead&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;th&gt;&lt;/th&gt;&#xA;          &lt;th&gt;对方 C&lt;/th&gt;&#xA;          &lt;th&gt;对方 D&lt;/th&gt;&#xA;      &lt;/tr&gt;&#xA;  &lt;/thead&gt;&#xA;  &lt;tbody&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;我 C&lt;/td&gt;&#xA;          &lt;td&gt;$b - c/2$&lt;/td&gt;&#xA;          &lt;td&gt;$b - c$&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;我 D&lt;/td&gt;&#xA;          &lt;td&gt;$b$&lt;/td&gt;&#xA;          &lt;td&gt;$0$&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;  &lt;/tbody&gt;&#xA;&lt;/table&gt;&#xA;&lt;p&gt;简单解释：&lt;/p&gt;&#xA;&lt;p&gt;双方合作——成本平摊，收益各得 $b - c/2$。&lt;/p&gt;&#xA;&lt;p&gt;我背叛对方合作——我不干活，但享受通路，收益 $b$。对方独自承担成本，收益 $b - c$。&lt;/p&gt;&#xA;&lt;p&gt;双方背叛——谁都不铲，困在原地，收益 $0$。&lt;/p&gt;&#xA;&lt;p&gt;我合作对方背叛——我一个人干活，收益 $b - c$。通了，但代价全是我一个人扛。&lt;/p&gt;&#xA;&lt;h2 id=&#34;不存在占优策略&#34;&gt;不存在占优策略&lt;/h2&gt;&#xA;&lt;p&gt;这是关键。&lt;/p&gt;&#xA;&lt;p&gt;看矩阵：&lt;/p&gt;&#xA;&lt;p&gt;对方合作时，我选 C 得 $b-c/2$，选 D 得 $b$。$b &gt; b - c/2$，背叛更香。&lt;/p&gt;</description>
    </item>
    <item>
      <title>固定点、稳定分布、纳什均衡——一个困惑的消解</title>
      <link>https://touchingfish.top/evolutionary-game/2023-fixed-point-stable-distribution-nash/</link>
      <pubDate>Fri, 10 Feb 2023 00:00:00 +0000</pubDate>
      <guid>https://touchingfish.top/evolutionary-game/2023-fixed-point-stable-distribution-nash/</guid>
      <description>&lt;p&gt;复制子动力学里的固定点、马尔可夫链的稳定分布、博弈论里的纳什均衡。&lt;/p&gt;&#xA;&lt;p&gt;这三个东西，我第一次看到的时候，是当同义词处理的。&lt;/p&gt;&#xA;&lt;p&gt;后来发现，不是。&lt;/p&gt;&#xA;&lt;h2 id=&#34;曾经的误解&#34;&gt;曾经的误解&lt;/h2&gt;&#xA;&lt;p&gt;Fixed Point、Stationary Distribution、Nash Equilibrium。&lt;/p&gt;&#xA;&lt;p&gt;三个术语，三个领域，三种直觉。听起来像是同一个数学对象的三个侧面。&lt;/p&gt;&#xA;&lt;p&gt;囚徒困境里，它们确实是同一个东西。&lt;/p&gt;&#xA;&lt;p&gt;但这不代表它们在任何情况下都等价。我花了点时间才把这个混淆搞清楚。&lt;/p&gt;&#xA;&lt;h2 id=&#34;三个数学对象的定义&#34;&gt;三个数学对象的定义&lt;/h2&gt;&#xA;&lt;h3 id=&#34;固定点fixed-point&#34;&gt;固定点（Fixed Point）&lt;/h3&gt;&#xA;&lt;p&gt;复制子动力学是一个常微分方程：&lt;/p&gt;&#xA;$$\frac{dx}{dt} = F(x)$$&lt;p&gt;固定点的定义很简单：&lt;/p&gt;&#xA;$$F(x^*) = 0$$&lt;p&gt;如果系统刚好到达 $x^*$，它就不再移动。&lt;/p&gt;&#xA;&lt;p&gt;&amp;ldquo;速度为零&amp;quot;的点。确定性的。&lt;/p&gt;&#xA;&lt;h3 id=&#34;马尔可夫链稳定分布stationary-distribution&#34;&gt;马尔可夫链稳定分布（Stationary Distribution）&lt;/h3&gt;&#xA;&lt;p&gt;随机过程里，系统永远在随机跳动。静止？不存在的。&lt;/p&gt;&#xA;&lt;p&gt;于是换了个问题：长期后系统有多大概率出现在各状态？&lt;/p&gt;&#xA;&lt;p&gt;这就是稳定分布。记作：&lt;/p&gt;&#xA;$$\pi P = \pi$$&lt;p&gt;这里 $P$ 是转移矩阵，$\pi$ 是概率分布。&lt;/p&gt;&#xA;&lt;p&gt;含义是：经过一步随机演化后，概率分布保持不变。&lt;/p&gt;&#xA;&lt;p&gt;本质上是特征值 $\lambda = 1$ 对应的特征向量。&lt;/p&gt;&#xA;&lt;h3 id=&#34;纳什均衡nash-equilibrium&#34;&gt;纳什均衡（Nash Equilibrium）&lt;/h3&gt;&#xA;&lt;p&gt;这是策略概念。&lt;/p&gt;&#xA;&lt;p&gt;没有人愿意单独改变策略。&lt;/p&gt;&#xA;&lt;p&gt;它甚至不一定涉及时间。&lt;/p&gt;&#xA;&lt;h2 id=&#34;用矩阵方程求稳定分布&#34;&gt;用矩阵方程求稳定分布&lt;/h2&gt;&#xA;&lt;p&gt;以最简单的两状态马尔可夫链为例。&lt;/p&gt;&#xA;&lt;p&gt;设群体只有两种状态：&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;状态 0：全体背叛&lt;/li&gt;&#xA;&lt;li&gt;状态 1：全体合作&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;状态向量：&lt;/p&gt;&#xA;$$p_t = \begin{pmatrix} P(\text{时刻 } t \text{ 在状态 0}) \\ P(\text{时刻 } t \text{ 在状态 1}) \end{pmatrix}$$&lt;p&gt;转移矩阵：&lt;/p&gt;</description>
    </item>
    <item>
      <title>演化的速度与加速度</title>
      <link>https://touchingfish.top/evolutionary-game/2023-evolutionary-game-dynamic/</link>
      <pubDate>Sat, 04 Feb 2023 00:00:00 +0000</pubDate>
      <guid>https://touchingfish.top/evolutionary-game/2023-evolutionary-game-dynamic/</guid>
      <description>&lt;p&gt;我不懂演化博弈的数学，Replicator Dynamics 对我来说只是个名词。但我会计算机模拟，Agent-Based Model（ABM）是我的语言。&lt;/p&gt;&#xA;&lt;p&gt;假如在一个 $n \times n$ 的网格上，按网格数量乘以 population density 生成一群 agents，每一步 agents 带着一个 action 在网格上移动，在 Von Neumann 邻域找另一个 agent 配对，玩一把经典博弈，然后更新 action，进入下一步。所有 agents 更新 action 的方式都一样。以上定义了模型的基本要素。&lt;/p&gt;&#xA;&lt;p&gt;现在考虑一个关键变量：agents 更新 action 的依据是什么？&lt;/p&gt;&#xA;&lt;p&gt;一、和邻居比较&lt;strong&gt;这一步&lt;/strong&gt;的得分 $P_1$，下一步变成得分 $P_1$ 高的 action。&lt;/p&gt;&#xA;&lt;p&gt;二、和邻居比较&lt;strong&gt;历史所有博弈&lt;/strong&gt;的得分 $P_2$，下一步变成得分 $P_2$ 高的 action。&lt;/p&gt;&#xA;&lt;p&gt;微观设定上，只是&amp;quot;看当前&amp;quot;和&amp;quot;看历史&amp;quot;的区别。但当我试图用数学去描述这两个模型时，发现它们对应着两种完全不同的物理动态：一阶系统与二阶系统，速度与加速度。&lt;/p&gt;&#xA;&lt;p&gt;下面一步步完成推导。&lt;/p&gt;&#xA;&lt;h2 id=&#34;从代码到方程平均场近似&#34;&gt;从代码到方程：平均场近似&lt;/h2&gt;&#xA;&lt;p&gt;在计算机模拟中，有一个 $n \times n$ 的网格，Agent 在上面走动并寻找邻居。数学家做了一个&amp;quot;偷懒&amp;quot;但极其有效的假设——&lt;strong&gt;平均场近似（Mean-Field Approximation）&lt;/strong&gt;：假设网格无限大，且所有人像气体分子一样充分混合，随机相遇。&lt;/p&gt;&#xA;&lt;p&gt;这意味着什么？假设当前全图有 $x$ 比例的人使用策略 $A$，有 $1-x$ 比例的人使用策略 $B$。在一个极小的时间步 $\Delta t$ 内，随机抓取一个 Agent，他是策略 $B$ 的概率是 $1-x$；他恰好撞见一个策略 $A$ 邻居的概率就是 $x$。所以，&lt;strong&gt;&amp;quot;$B$ 遇到 $A$&amp;ldquo;这个事件发生的联合概率就是 $x(1-x)$&lt;/strong&gt;。&lt;/p&gt;</description>
    </item>
    <item>
      <title>囚徒困境的终点</title>
      <link>https://touchingfish.top/evolutionary-game/2023-replicator-dynamics-prisoners-dilemma/</link>
      <pubDate>Sun, 15 Jan 2023 00:00:00 +0000</pubDate>
      <guid>https://touchingfish.top/evolutionary-game/2023-replicator-dynamics-prisoners-dilemma/</guid>
      <description>&lt;p&gt;我想搞清楚一件事——&lt;/p&gt;&#xA;&lt;p&gt;(D, D) 为什么既是均衡，又是终点？&lt;/p&gt;&#xA;&lt;p&gt;不是道德判断。是数学事实。复制子动力学 Replicator Dynamics 把这套逻辑说得非常清楚。&lt;/p&gt;&#xA;&lt;h2 id=&#34;收益矩阵&#34;&gt;收益矩阵&lt;/h2&gt;&#xA;&lt;p&gt;两个人，两种策略：合作（记作 C）和背叛（记作 D）。&lt;/p&gt;&#xA;&lt;table&gt;&#xA;  &lt;thead&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;th&gt;&lt;/th&gt;&#xA;          &lt;th&gt;对方 C&lt;/th&gt;&#xA;          &lt;th&gt;对方 D&lt;/th&gt;&#xA;      &lt;/tr&gt;&#xA;  &lt;/thead&gt;&#xA;  &lt;tbody&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;我 C&lt;/td&gt;&#xA;          &lt;td&gt;3&lt;/td&gt;&#xA;          &lt;td&gt;0&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;我 D&lt;/td&gt;&#xA;          &lt;td&gt;5&lt;/td&gt;&#xA;          &lt;td&gt;1&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;  &lt;/tbody&gt;&#xA;&lt;/table&gt;&#xA;&lt;p&gt;含义很简单：&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;双合作：各得 3&lt;/li&gt;&#xA;&lt;li&gt;我背叛、对方合作：我得 5（对方得 0）&lt;/li&gt;&#xA;&lt;li&gt;双背叛：各得 1&lt;/li&gt;&#xA;&lt;li&gt;我合作、对方背叛：我得 0&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;关键观察在这里。无论对方选什么，背叛的收益都不低于合作：&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;对方 C 时，背叛 5 &amp;gt; 合作 3&lt;/li&gt;&#xA;&lt;li&gt;对方 D 时，背叛 1 &amp;gt; 合作 0&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;D 是&lt;strong&gt;占优策略 dominant strategy&lt;/strong&gt;。理性人一定选 D。&lt;/p&gt;&#xA;&lt;p&gt;所以 (D, D) 是唯一纳什均衡。&lt;/p&gt;&#xA;&lt;p&gt;静态博弈已经告诉我们答案，不需要动力学。&lt;/p&gt;&#xA;&lt;p&gt;但——这个均衡是怎么&amp;quot;达到&amp;quot;的？如果一开始有人合作，系统会怎样演化？&lt;/p&gt;&#xA;&lt;p&gt;这才是复制子动力学要回答的。&lt;/p&gt;&#xA;&lt;h2 id=&#34;群体视角&#34;&gt;群体视角&lt;/h2&gt;&#xA;&lt;p&gt;不是两个人了。假设一个很大的群体，一部分人用 C，一部分人用 D。&lt;/p&gt;&#xA;&lt;p&gt;记时刻 $t$ 时，合作者比例为 $x(t)$，背叛者就是 $1 - x(t)$。&lt;/p&gt;</description>
    </item>
    <item>
      <title>从酵母细胞说起</title>
      <link>https://touchingfish.top/evolutionary-game/2022-yeast-prisoners-dilemma/</link>
      <pubDate>Tue, 15 Nov 2022 00:00:00 +0000</pubDate>
      <guid>https://touchingfish.top/evolutionary-game/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;&#xA;&lt;p&gt;酵母会分泌 invertase 到细胞外消化蔗糖，消化的糖大家都可以用——这就有意思了。一个细胞可以选择&amp;quot;作弊&amp;quot;：偷用邻居分泌的酶，自己却不分泌。研究者把有功能 SUC2 基因的酵母叫&amp;quot;合作者&amp;quot;，把删除了 SUC2 基因的叫&amp;quot;作弊者&amp;quot;，然后把它们放在一起竞争。&lt;/p&gt;&#xA;&lt;p&gt;结果很反直觉：&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;在稀疏的群体里（低社交密度），作弊者的 fitness 只有 0.87——比合作者差&lt;/li&gt;&#xA;&lt;li&gt;在密集的群体里（高社交密度），作弊者的 fitness 高达 1.19——比合作者强&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;为什么？社交密度越高，合作者越容易遇到其他合作者。大家一起分泌酶，公共池塘变大，每个人的收益都高。但这时候作弊者混进来，单方面享受公共成果还不付成本，收益爆炸。&lt;/p&gt;&#xA;&lt;p&gt;当密度极高时，作弊者几乎总能找到合作目标，偷到的比自己分泌的还多。合作者反而被拖累。&lt;/p&gt;&#xA;&lt;p&gt;这完美符合我的直觉。但我想自己做一遍——不是验证论文结论，而是想亲手&amp;quot;看见&amp;quot;这个过程，把方程写进格子，看数字跑起来。&lt;/p&gt;&#xA;&lt;h2 id=&#34;模型设定&#34;&gt;模型设定&lt;/h2&gt;&#xA;&lt;p&gt;$n \times n$ 的网格，population density 控制每格放置 agent 的概率。Agent 有两种策略：C（合作，分泌酶）和 D（作弊，不分泌）。&lt;/p&gt;&#xA;&lt;p&gt;两两相遇时玩标准囚徒困境，payoff 矩阵：&lt;/p&gt;&#xA;$$&#xA;\begin{pmatrix}&#xA;R=3 &amp; S=0 \\&#xA;T=5 &amp; P=1&#xA;\end{pmatrix}&#xA;$$&lt;p&gt;R 是合作-合作的奖励，T 是背叛的诱惑，S 是被背叛者的收益，P 是双双背叛的惩罚。按经典设定：$T &gt; R &gt; P &gt; S$，且 $2R &gt; T + S$（互惠合作优于反复背叛）。&lt;/p&gt;&#xA;&lt;p&gt;每一步：&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;Agent 在 Von Neumann 邻域（上下左右四格）找邻居&lt;/li&gt;&#xA;&lt;li&gt;两人玩一把博弈&lt;/li&gt;&#xA;&lt;li&gt;比较这一步的得分 $\pi$&lt;/li&gt;&#xA;&lt;li&gt;以正比于收益差的概率模仿邻居策略&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;只看&lt;strong&gt;当期得分&lt;/strong&gt;。不记历史，不做规划。&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
