▷ 展开 / 收起代码
viewof lex_x1 = Inputs.range([1.0, 4.0], {value: 2.5, step: 0.1, label: html`基准点 x₁ 坐标`})
viewof lex_x2 = Inputs.range([1.0, 4.0], {value: 2.2, step: 0.1, label: html`基准点 x₂ 坐标`})测试搭建阶段:本站内容主要由 AI 生成且未经逐一核实,可能存在错误,请谨慎甄别与参考。
Shawn
Gemini 3.8 Flash
2026年9月27日
第 1 章 · 偏好与选择 | 第 1.2 讲 | 前置:1.1 偏好关系与理性假设 | 预计阅读 45 分钟
在第 1.1 讲中,我们用二元关系 \(\succeq\) 刻画了个体在备择集 \(X\) 上的主观态度。然而,二元关系本质上只是一套定性的逻辑集合工具:面对拥有无穷多个消费束的连续空间 \(X = \mathbb{R}_{+}^{L}\),我们无法直接对二元关系求导数、列拉格朗日乘数或求解极值。
要释放微积分与凸分析的算力,必须实现从“逻辑次序”到“实数坐标”的跃迁。本讲聚焦于这一理论跃迁:效用函数的代数定义、序数性本质、不可表示的边界反例(字典序),以及保证效用函数必然存在的充分保障条件。
效用函数不是去测量人心理感受到的“主观快乐总量”,而是将二元偏好的序关系无损地编码进实数轴 \((\mathbb{R}, \ge)\) 中。
设 \(\succeq\) 为定义在备择集 \(X\) 上的偏好关系。若存在实值函数 \(u: X \to \mathbb{R}\),使得对任意 \(x, y \in X\),均满足:
\[x \succeq y \quad \Longleftrightarrow \quad u(x) \ge u(y)\]
则称函数 \(u(\cdot)\) 表示(represents)偏好关系 \(\succeq\)。
定义中的双向箭头具有根本意义:
由此,寻求最优决策的定性问题,被完全等价地转化为数学上的函数极值问题:
\[\max_{x \in B} \quad u(x)\]
这一转化使得连续变量优化理论能够无缝介入经济分析。
在现代微观经济学中,效用数值本身的大小(如 \(u(x)=10\) 还是 \(1000\))以及数值之间的差额没有任何绝对物理度量意义。
序数性最核心的数学定理是:效用函数的严格单调递增变换保持其表示的偏好关系完全不变。
若函数 \(u(x)\) 表示偏好关系 \(\succeq\),且函数 \(f: \mathbb{R} \to \mathbb{R}\) 为严格单调递增函数(即 \(t_1 > t_2 \iff f(t_1) > f(t_2)\)),则复合函数:
\[v(x) \equiv f(u(x))\]
同样表示偏好关系 \(\succeq\)。
根据定义,我们需要证明对任意 \(x, y \in X\),\(x \succeq y \iff v(x) \ge v(y)\)。
由 \(u(\cdot)\) 表示 \(\succeq\) 可知: \[x \succeq y \quad \Longleftrightarrow \quad u(x) \ge u(y)\]
由于函数 \(f(\cdot)\) 是严格单调递增的,实数不等式在应用 \(f\) 后保持等价: \[u(x) \ge u(y) \quad \Longleftrightarrow \quad f(u(x)) \ge f(u(y))\]
代入 \(v(x) = f(u(x))\) 与 \(v(y) = f(u(y))\),即得: \[x \succeq y \quad \Longleftrightarrow \quad v(x) \ge v(y)\]
这证明了 \(v(\cdot)\) 与 \(u(\cdot)\) 诱导出完全相同的一致排序。
例如,\(u(x_1, x_2) = x_1 x_2\)、其线性变换 \(3 x_1 x_2 + 5\)、以及对数变换 \(\ln x_1 + \ln x_2\) 所描绘的无差异曲线形状完全重合,其导出的需求行为完全一致。一切依赖具体函数凹凸弯曲幅度的概念(例如“边际效用递减”),都不是偏好的固有特征,而仅仅是特定函数形式的技术副产物。
是否只要偏好满足完备性与传递性,就一定能找到一个实值效用函数来表示它?答案是否定的。字典序偏好(lexicographic preferences)提供了最具启发性的理论反例。
在二维商品空间 \(X = \mathbb{R}_{+}^{2}\) 上,字典序偏好模拟了查字典的规则:第一维度具有绝对优先权,仅当第一维度无法区分时才看第二维度。
对任意两束 \(x = (x_1, x_2)\) 与 \(y = (y_1, y_2)\),\((x_1, x_2) \succeq (y_1, y_2)\) 当且仅当:
\[x_1 > y_1 \qquad \text{或} \qquad \bigl(x_1 = y_1 \ \text{且} \ x_2 \ge y_2\bigr)\]
容易验证,字典序偏好严格满足完备性(实数可以直接分量对比)和传递性(继承实数序的传递性)。
在几何直观上,字典序偏好对平面的划分极其决绝。下图完整重绘了讲义中字典序偏好的平面几何划分(课件 Slide 142):
Plot.plot({
height: 380,
x: { domain: [0, 5.5], label: "商品 1 数量 x₁ →" },
y: { domain: [0, 5.0], label: "↑ 商品 2 数量 x₂" },
marks: [
// 严格优于区域(右侧半平面 y1 > x1)
Plot.rect([{x1: lex_x1, x2: 5.5, y1: 0, y2: 5.0}], {
x1: "x1", x2: "x2", y1: "y1", y2: "y2",
fill: "#3b82f6", fillOpacity: 0.15
}),
// 严格劣于区域(左侧半平面 y1 < x1)
Plot.rect([{x1: 0, x2: lex_x1, y1: 0, y2: 5.0}], {
x1: "x1", x2: "x2", y1: "y1", y2: "y2",
fill: "#94a3b8", fillOpacity: 0.12
}),
// 垂直分界线 y1 = x1
Plot.line([[lex_x1, 0], [lex_x1, 5.0]], { stroke: "#64748b", strokeDasharray: "4,4", strokeWidth: 1.5 }),
// 分界线上方射线:y1 = x1 且 y2 > x2(属于严格更优)
Plot.line([[lex_x1, lex_x2], [lex_x1, 5.0]], { stroke: "#2563eb", strokeWidth: 3 }),
// 分界线下方射线:y1 = x1 且 y2 < x2(属于严格较劣)
Plot.line([[lex_x1, 0], [lex_x1, lex_x2]], { stroke: "#ef4444", strokeWidth: 2, strokeDasharray: "3,3" }),
// 水平辅助虚线穿过 x2
Plot.line([[0, lex_x2], [5.5, lex_x2]], { stroke: "#cbd5e1", strokeDasharray: "2,2" }),
// 基准点 x
Plot.dot([[lex_x1, lex_x2]], { r: 6, fill: "#0f172a" }),
Plot.text([[lex_x1, lex_x2]], { text: ["基准点 x = (x₁, x₂)"], dx: -18, dy: -14, fontSize: 12, fontWeight: "bold" }),
// 标注文本
Plot.text([[lex_x1 + 1.2, 3.8]], {
text: ["严格优于 x 的区域\n(y₁ > x₁,无论 y₂ 为何)"],
fill: "#1d4ed8", fontSize: 12, fontWeight: "bold", lineHeight: 1.3
}),
Plot.text([[Math.max(0.7, lex_x1 - 1.2), 1.2]], {
text: ["严格劣于 x 的区域\n(y₁ < x₁,无论 y₂ 为何)"],
fill: "#64748b", fontSize: 12, lineHeight: 1.3
}),
Plot.text([[lex_x1 + 0.15, lex_x2 + 1.2]], {
text: ["↑ y₁ = x₁ 且 y₂ > x₂ (y ≻ x)"],
fill: "#2563eb", fontSize: 10, textAnchor: "start"
}),
Plot.text([[lex_x1 + 0.15, Math.max(0.4, lex_x2 - 1.0)]], {
text: ["↓ y₁ = x₁ 且 y₂ < x₂ (y ≺ x)"],
fill: "#dc2626", fontSize: 10, textAnchor: "start"
})
]
})这一几何图景揭示了极其反常的数学结论: 寻找与基准束 \(x = (x_1, x_2)\) 带来相同评价的束 \(y\):
因此,对任意 \(x\),其无差异集是一个单元素集合(singleton):
\[\operatorname{IND}(x) \equiv \{y \in \mathbb{R}_{+}^{2} \mid y \sim x\} = \{x\}\]
在二维平面上根本无法画出一条具有几何宽度的连续无差异曲线!
若存在实值函数 \(u(x_1, x_2)\) 表示该偏好。固定任意 \(x_1 \ge 0\),考察两束 \((x_1, 0)\) 与 \((x_1, 1)\)。由定义知 \((x_1, 1) \succ (x_1, 0)\),因此必有 \(u(x_1, 1) > u(x_1, 0)\)。
由于实数稠密性,在开区间 \((u(x_1, 0), u(x_1, 1))\) 内必定存在一个有理数 \(q(x_1) \in \mathbb{Q}\)。对于每一个不同的 \(x_1 \in [0, \infty)\),由于任意两根垂直线之间都存在严格优劣排序,这些实数开区间彼此互不重叠。这意味着我们必须为每一个非负实数 \(x_1\) 赋予一个独一无二的有理数 \(q(x_1)\)。
然而,实数集合 \(\mathbb{R}_{+}\) 是不可数集(uncountable),而有理数集合 \(\mathbb{Q}\) 是可数集(countable)。实数轴容纳不下不可数个互不相交的非退化开区间,由此产生逻辑矛盾。这严格证明了:字典序偏好不存在任何实值效用函数表示。
字典序偏好无法被表示的深层数学根源在于它破坏了拓扑连续性。
定义在 \(X\) 上的偏好关系 \(\succeq\) 称为连续的,若对任意收敛序列对 \((x^n)_{n=1}^{\infty}\) 与 \((y^n)_{n=1}^{\infty}\)(即 \(x^n \to x\) 且 \(y^n \to y\)),只要对所有 \(n\) 均有 \(x^n \succeq y^n\),则在极限处必有:
\[x \succeq y\]
直观地说,连续性要求偏好关系在取极限时不会发生突然跳跃或反转。
构造如下序列:令 \(y^n = (0, 1)\) 为常数序列,令 \(x^n = (1/n, 0)\),其中 \(n = 1, 2, 3, \dots\)。
有限项处处满足 \(x^n \succ y^n\),但极限处却得到 \(x \prec y\)!这就是典型的偏好跳跃反转(preference reversal)。字典序偏好不满足连续性。
下面的交互图形重绘了讲义中字典序序列收敛与偏好反转过程:
Plot.plot({
height: 320,
x: { domain: [-0.1, 1.2], label: "商品 1 数量 x₁ →" },
y: { domain: [-0.2, 1.3], label: "↑ 商品 2 数量 x₂" },
marks: [
Plot.ruleX([0], { stroke: "#94a3b8" }),
Plot.ruleY([0], { stroke: "#94a3b8" }),
Plot.dot(pts, { x: "x", y: "y", fill: "#94a3b8", r: 3 }),
Plot.dot([[cur_x, 0]], { fill: "#2563eb", r: 6 }),
Plot.text([[cur_x, -0.1]], { text: [`x^${step_n} = (${cur_x.toFixed(2)}, 0)`], fontSize: 11, fill: "#2563eb" }),
Plot.dot([[0, 1]], { fill: "#dc2626", r: 6 }),
Plot.text([[0, 1]], { text: ["y = (0, 1)"], dx: 45, dy: -6, fontSize: 12, fontWeight: "bold", fill: "#dc2626" }),
Plot.dot([[0, 0]], { fill: "#15803d", r: 5 }),
Plot.text([[0, 0]], { text: ["极限点 (0, 0)"], dx: -45, dy: -10, fontSize: 11, fill: "#15803d" }),
Plot.arrow([[1, 0], [0.05, 0]], { stroke: "#2563eb", strokeWidth: 1.5, bend: false })
]
})当排除了类似字典序的断裂后,什么样的偏好一定能被效用函数表示?单调性与连续性共同构成了经典的存在性充分保障。
若定义在商品空间 \(X = \mathbb{R}_{+}^{L}\) 上的理性偏好关系 \(\succeq\) 同时满足单调性(Monotonicity)与连续性(Continuity),则必然存在一个连续实值函数 \(u: X \to \mathbb{R}\) 能够表示该偏好关系。
该定理的证明方法被称为对角线构造法(diagonal construction),其构造过程展示了如何巧妙地把一根射线的实数刻度转化为全平面的效用度量。
定义主对角线上的等比例基准向量 \(e = (1, 1, \dots, 1) \in \mathbb{R}_{+}^{L}\)。沿射线 \(t \cdot e = (t, t, \dots, t)\) 移动,其中标量刻度 \(t \ge 0\)。
第一步:夹逼上下界
任取消费束 \(x = (x_1, \dots, x_L) \ge 0\)。令 \(m \equiv \max\{x_1, \dots, x_L\}\) 为束中数量最多的分量。 构造对角线上的束 \(M = (m, m, \dots, m) = m \cdot e\) 以及原点束 \(0 = 0 \cdot e\)。 根据偏好单调性,显然 \(x \ge 0 \cdot e\) 且 \(m \cdot e \ge x\),故必然有: \[0 \cdot e \ \preceq \ x \ \preceq \ m \cdot e\]
第二步:连续性与连通性保证无差异交点存在
在闭区间 \([0, m]\) 上构造两个实数子集: \[\begin{aligned}
A &\equiv \{t \in [0, m] \mid t \cdot e \succeq x\} \\
B &\equiv \{t \in [0, m] \mid x \succeq t \cdot e\}
\end{aligned}\] - 由偏好连续性可知,弱偏好上轮廓集与下轮廓集在 \(\mathbb{R}_+^L\) 中均为闭集;由于映射 \(t \mapsto t \cdot e\) 是连续映射,其原像集合 \(A\) 与 \(B\) 均为实数闭区间 \([0, m]\) 中的闭集; - 由第一步夹逼可知,\(m \in A\)(非空)且 \(0 \in B\)(非空); - 根据完备性公理,对任意标量 \(t \in [0, m]\),必有 \(t \cdot e \succeq x\) 或 \(x \succeq t \cdot e\),因此 \(A \cup B = [0, m]\); - 由于实数闭区间 \([0, m]\) 是连通集(connected set),它绝不可能被拆分为两个非空且不相交的闭集之并。因此,交集必非空: \[A \cap B \neq \emptyset\] 任取 \(t^* \in A \cap B\),即同时满足 \(t^* \cdot e \succeq x\) 与 \(x \succeq t^* \cdot e\),由无差异定义即得: \[x \ \sim \ t^* \cdot e = \bigl(t^*, t^*, \dots, t^*\bigr)\]
第三步:单调性保证刻度唯一性
若存在两个不同的刻度 \(t_1 < t_2\) 使得 \(t_1 \cdot e \sim x\) 且 \(t_2 \cdot e \sim x\)。 由于 \(t_2 > t_1\),在主对角线上所有分量均严格增大,即 \(t_2 \cdot e \gg t_1 \cdot e\)。根据单调性定义中的严格增量条款,必有: \[t_2 \cdot e \ \succ \ t_1 \cdot e\] 由传递性将立即导致 \(x \succ x\),产生严重的自反性矛盾。因此,对任意消费束 \(x\),使其与对角线束无差异的标量刻度 \(t(x)\) 是存在且唯一的。
第四步:定义效用函数并验证等价性
直接将该唯一的对角线标量定义为消费束 \(x\) 的效用值: \[u(x) \equiv t(x)\]
现在验证该函数是否正确表示偏好:对任意两束 \(x, y \in \mathbb{R}_{+}^{L}\): \[x \sim t(x) \cdot e, \qquad y \sim t(y) \cdot e\] 根据传递性: \[x \succeq y \quad \Longleftrightarrow \quad t(x) \cdot e \ \succeq \ t(y) \cdot e\] 再由对角线上的单调性可知,等比例束的优劣直接等价于标量数值大小: \[t(x) \cdot e \ \succeq \ t(y) \cdot e \iff t(x) \ge t(y) \iff u(x) \ge u(y)\]
第五步:验证效用函数的连续性
需证明对任意实数 \(c \in \mathbb{R}\),原像集 \(\{x \in \mathbb{R}_{+}^{L} \mid u(x) \ge c\}\) 与 \(\{x \in \mathbb{R}_{+}^{L} \mid u(x) \le c\}\) 均为闭集。 由构造可知: \[\{x \in \mathbb{R}_{+}^{L} \mid u(x) \ge c\} = \{x \in \mathbb{R}_{+}^{L} \mid x \succeq c \cdot e\}\] 这恰好是消费束 \(c \cdot e\) 的上轮廓集 \(\operatorname{UCS}(c \cdot e)\)。同理,\(\{x \in \mathbb{R}_{+}^{L} \mid u(x) \le c\}\) 恰好是下轮廓集 \(\operatorname{LCS}(c \cdot e)\)。由偏好关系的连续性公理,所有上、下轮廓集均为闭集,因此函数 \(u(x)\) 是连续函数。
证毕。
下面的交互图形重现了讲义中的存在性几何证明:在平面上任意拖动消费束 \(x\),观察无差异曲线如何穿过主对角线,并将唯一的交点刻度 \(t(x)\) 确定为效用值:
Plot.plot({
height: 400,
x: { domain: [0, 4.2], label: "商品 1 数量 x₁ →" },
y: { domain: [0, 4.2], label: "↑ 商品 2 数量 x₂" },
marks: [
Plot.line([[0, 0], [4.2, 4.2]], { stroke: "#94a3b8", strokeDasharray: "4,4", strokeWidth: 1.5 }),
Plot.text([[3.8, 4.0]], { text: ["主对角线 e = (1, 1)"], fontSize: 11, fill: "#64748b" }),
Plot.line(ind_curve, { stroke: "#2563eb", strokeWidth: 2 }),
Plot.text([[0.6, Math.min(4.1, u_val / 0.6)]], { text: ["过 x 的无差异曲线"], fontSize: 11, fill: "#2563eb" }),
Plot.ruleX([px1], { y1: 0, y2: px2, stroke: "#cbd5e1", strokeDasharray: "2,2" }),
Plot.ruleY([px2], { x1: 0, x2: px1, stroke: "#cbd5e1", strokeDasharray: "2,2" }),
Plot.dot([[px1, px2]], { r: 6, fill: "#1d4ed8" }),
Plot.text([[px1, px2]], { text: ["x = (" + px1.toFixed(2) + ", " + px2.toFixed(2) + ")"], dy: -12, fontSize: 12, fontWeight: "bold" }),
Plot.dot([diag_pt], { r: 6, fill: "#dc2626" }),
Plot.text([diag_pt], { text: [`(t, t) = (${t_scale.toFixed(2)}, ${t_scale.toFixed(2)})`], dx: 50, dy: 10, fontSize: 12, fontWeight: "bold", fill: "#dc2626" }),
Plot.dot([m_pt], { r: 4, fill: "#475569" }),
Plot.text([m_pt], { text: [`上界 M = (${m_val.toFixed(2)}, ${m_val.toFixed(2)})`], dy: -10, fontSize: 11, fill: "#475569" })
]
})| 术语 | 符号表达 | 核心概念定义 |
|---|---|---|
| 效用表示 | \(x \succeq y \iff u(x) \ge u(y)\) | 将抽象二元排序映射为实数不等式 |
| 序数效用 | \(f(u(x)), f' > 0\) | 仅排名有效,单调递增变换下保持不变 |
| 字典序偏好 | 第一维严格优先 | 满足理性公理但无差异集退化为单点 |
| 偏好连续性 | 序列极限处次序不反转 | 保证偏好映射不会出现拓扑断裂 |
| 对角线构造法 | \(u(x) \equiv t(x)\) 使得 \(x \sim t(x) \cdot e\) | 证明效用函数存在性的几何核心构造 |