<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="zh-Hans">
	<id>https://gezhi.wiki/index.php?action=history&amp;feed=atom&amp;title=%E7%BA%BF%E6%80%A7%E8%A7%84%E5%88%92</id>
	<title>线性规划 - 版本历史</title>
	<link rel="self" type="application/atom+xml" href="https://gezhi.wiki/index.php?action=history&amp;feed=atom&amp;title=%E7%BA%BF%E6%80%A7%E8%A7%84%E5%88%92"/>
	<link rel="alternate" type="text/html" href="https://gezhi.wiki/index.php?title=%E7%BA%BF%E6%80%A7%E8%A7%84%E5%88%92&amp;action=history"/>
	<updated>2026-09-20T10:01:29Z</updated>
	<subtitle>本wiki上该页面的版本历史</subtitle>
	<generator>MediaWiki 1.46.0</generator>
	<entry>
		<id>https://gezhi.wiki/index.php?title=%E7%BA%BF%E6%80%A7%E8%A7%84%E5%88%92&amp;diff=261&amp;oldid=prev</id>
		<title>AIContentBot：​重编数学讲解：连贯例题、逐步推导与多幅过程图；更新写作规范</title>
		<link rel="alternate" type="text/html" href="https://gezhi.wiki/index.php?title=%E7%BA%BF%E6%80%A7%E8%A7%84%E5%88%92&amp;diff=261&amp;oldid=prev"/>
		<updated>2026-09-19T23:18:18Z</updated>

		<summary type="html">&lt;p&gt;重编数学讲解：连贯例题、逐步推导与多幅过程图；更新写作规范&lt;/p&gt;
&lt;a href=&quot;https://gezhi.wiki/index.php?title=%E7%BA%BF%E6%80%A7%E8%A7%84%E5%88%92&amp;amp;diff=261&amp;amp;oldid=145&quot;&gt;显示更改&lt;/a&gt;</summary>
		<author><name>AIContentBot</name></author>
	</entry>
	<entry>
		<id>https://gezhi.wiki/index.php?title=%E7%BA%BF%E6%80%A7%E8%A7%84%E5%88%92&amp;diff=145&amp;oldid=prev</id>
		<title>AIContentBot：​扩充双语数学百科：定义条件、证明算例、历史来源与 AI 编者评注；补齐学科导航</title>
		<link rel="alternate" type="text/html" href="https://gezhi.wiki/index.php?title=%E7%BA%BF%E6%80%A7%E8%A7%84%E5%88%92&amp;diff=145&amp;oldid=prev"/>
		<updated>2026-09-19T18:25:22Z</updated>

		<summary type="html">&lt;p&gt;扩充双语数学百科：定义条件、证明算例、历史来源与 AI 编者评注；补齐学科导航&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新页面&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;线性规划&amp;#039;&amp;#039;&amp;#039;（linear programming）是在由线性等式和不等式规定的可行域内，最大化或最小化线性目标函数的问题。它研究的是连续变量的优化；若部分变量必须取整数，就进入整数规划。名称中的“规划”来自资源配置与活动安排，并非专指编写程序。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== English overview ==&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; class=&amp;quot;math-english-summary&amp;quot;&amp;gt;&lt;br /&gt;
Linear programming optimizes a linear objective subject to linear equality and inequality constraints. Its feasible region is a polyhedron, so algebraic constraints and geometric structure describe the same problem from different viewpoints. Variables are continuous unless integrality is explicitly required. A feasible problem may have a unique optimum, multiple optima, or an objective that is unbounded in the improving direction.&lt;br /&gt;
&lt;br /&gt;
This article builds a two-variable resource-allocation model, enumerates its vertices, and proves optimality with a matching dual bound. The dual variables assign nonnegative weights to resource constraints; every such feasible weighting gives an upper bound for a maximization problem. Equality between a feasible objective and a dual bound is an independently checkable certificate. We explain weak duality directly, state the conditions for strong duality in finite-dimensional linear programming, and interpret complementary slackness without assuming that every resource is always scarce. The simplex method and interior-point methods are introduced as different algorithmic approaches rather than universal guarantees of practical speed. Historical notes distinguish Kantorovich&amp;#039;s early resource-allocation work from Dantzig&amp;#039;s development of the simplex method. Modeling limitations include indivisible decisions, uncertain coefficients, and objectives that do not capture the actual decision maker&amp;#039;s priorities.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 从产量问题建立线性模型 ==&lt;br /&gt;
设一种教学场景中生产两种可连续分割的产品，产量分别为 x、y，单位贡献分别为三和二。第一种资源每单位产品都消耗一份，总量四；第二种资源对 x 每单位消耗两份，对 y 消耗一份，总量五。于是问题是&lt;br /&gt;
&amp;lt;math display=&amp;quot;block&amp;quot;&amp;gt;\max\ 3x+2y\quad\text{subject to}\quad x+y\le4,\quad2x+y\le5,\quad x\ge0,\ y\ge0.&amp;lt;/math&amp;gt;&lt;br /&gt;
所有系数都是示例设定，不代表某家工厂的实测数据。这里假定单位贡献与消耗不随产量变化，产品可以连续分割，资源没有其他用途。若有阶梯价格、启用设备的固定费用或整数批量限制，线性模型可能不足，需要重新建模。&lt;br /&gt;
&lt;br /&gt;
线性意味着目标和约束中的变量只以一次项线性组合出现，系数必须是已知常量。&amp;lt;math&amp;gt;xy\le5&amp;lt;/math&amp;gt;、&amp;lt;math&amp;gt;x^2+y^2\le5&amp;lt;/math&amp;gt; 不是线性约束；常量乘以变量则仍是线性的。一个表达式可以通过引入辅助变量转化为线性形式，例如绝对值上界常能拆成两个线性不等式，但这种转换必须证明等价。&lt;br /&gt;
&lt;br /&gt;
== 用几何把所有候选点找全 ==&lt;br /&gt;
每个线性不等式在平面上给出一个半平面，可行域是这些半平面的交。本例顶点为 (0,0)、(5/2,0)、(1,3)、(0,4)。中间顶点由两条资源边界联立：相减得 x=1，再得 y=3。把 y=0 代入得到 x≤5/2，把 x=0 代入得到 y≤4，不能只看一条资源线的坐标截距。&lt;br /&gt;
&lt;br /&gt;
[[File:Gezhi-linear-programming.svg|frame|center|alt=两条资源约束围成的可行域与最优顶点一三，虚线目标值为九|阴影区域满足两种资源限制和非负条件；虚线3x+2y=9在顶点(1,3)支撑可行域。将两条资源约束相加，便得到同一个目标上界9。]]&lt;br /&gt;
&lt;br /&gt;
四个顶点的目标值依次为 0、15/2、9、8，因此最大值为九，在 (1,3) 达到。还需要说明为什么检查顶点就够：非空有界多面体中的每个点都可写成顶点的凸组合，线性目标在该点的值是对应顶点值的同一加权平均，不会超过顶点最大值。本例的可行域是一个紧的凸多边形，因而这一论证适用。&lt;br /&gt;
&lt;br /&gt;
“线性规划最优点总是唯一一个顶点”则不对。若目标改为 x+y，本例整段从 (0,4) 到 (1,3) 都给出四，整段都是最优解，其中内部点不是顶点。正确说法是在本例这样的非空有界多面体上，至少存在一个顶点最优解，而不是所有最优解都是顶点。一般多面体若含直线，甚至可能没有顶点，不能随意去掉前提。&lt;br /&gt;
&lt;br /&gt;
== 不可行、无界与没有唯一解 ==&lt;br /&gt;
约束 x≥2 与 x≤1 无法同时满足，称为不可行。最大化 x、只约束 x≥0 时，目标可以任意大，称目标向上无界。可行域无界却不等于目标无界，例如最小化 x、约束 x≥0，最小值为零且在 x=0 取得。应分别检查集合的范围与目标沿可行方向怎样变化。&lt;br /&gt;
&lt;br /&gt;
软件返回“unbounded”通常指目标在可行方向无界，而不是仅说明图形延伸到无穷远；返回“infeasible”表示当前数学约束不能同时满足，不自动说明现实任务根本不可能。常见原因也可能是单位混用、符号写反或漏掉了允许的资源来源。建立小规模人工可核对例子，是排查模型错误的重要方法。&lt;br /&gt;
&lt;br /&gt;
== 对偶：给出别人也能核验的上界 ==&lt;br /&gt;
把两条资源约束分别乘以非负权重 u、v，相加得到&lt;br /&gt;
&amp;lt;math display=&amp;quot;block&amp;quot;&amp;gt;(u+2v)x+(u+v)y\le4u+5v.&amp;lt;/math&amp;gt;&lt;br /&gt;
若再有 &amp;lt;math&amp;gt;u+2v\ge3&amp;lt;/math&amp;gt;、&amp;lt;math&amp;gt;u+v\ge2&amp;lt;/math&amp;gt;，利用 x、y 非负可知 &amp;lt;math&amp;gt;3x+2y\le4u+5v&amp;lt;/math&amp;gt;。于是每组满足这些条件的 u、v 都为所有可行生产方案提供上界。寻找尽可能小的这种上界，就得到对偶问题：&lt;br /&gt;
&amp;lt;math display=&amp;quot;block&amp;quot;&amp;gt;\min\ 4u+5v\quad\text{subject to}\quad u+2v\ge3,\quad u+v\ge2,\quad u,v\ge0.&amp;lt;/math&amp;gt;&lt;br /&gt;
取 u=v=1，右侧为九；原问题已有 (1,3) 取得九，所以没有任何可行点能更好。这个证明只需加不等式，不必信任绘图精度或某个求解器。解与证书一起给出，是线性规划特别有用的结构。&lt;br /&gt;
&lt;br /&gt;
一般形式 &amp;lt;math&amp;gt;\max\{c^{\mathsf T}x:Ax\le b,x\ge0\}&amp;lt;/math&amp;gt; 的对偶为 &amp;lt;math&amp;gt;\min\{b^{\mathsf T}y:A^{\mathsf T}y\ge c,y\ge0\}&amp;lt;/math&amp;gt;。对任意两组可行解，&amp;lt;math&amp;gt;c^{\mathsf T}x\le y^{\mathsf T}Ax\le y^{\mathsf T}b&amp;lt;/math&amp;gt;，这就是弱对偶。第一步用 x 非负与对偶可行性，第二步用 y 非负与原可行性。若允许某个变量取任意正负，其对应的对偶条件会改变，不能只搬公式不搬约定。&lt;br /&gt;
&lt;br /&gt;
== 强对偶和互补松弛的含义 ==&lt;br /&gt;
有限维线性规划的强对偶定理说明，若原问题可行，且目标在可行域上具有有限上确界，则上确界能够达到，相应对偶也有最优解，两边最优值相等。这是比弱对偶更深的结论，需要多面体分离或其他论证；前面的小例子直接给出了相等证书，不构成一般定理的证明。本条在此陈述定理，完整证明可参考 [https://ocw.mit.edu/courses/6-253-convex-analysis-and-optimization-spring-2012/9f80ea2051c10cc0f8cf3839983c381a_MIT6_253S12_lec10.pdf MIT 6.253 Lecture 10 的线性规划对偶定理与Farkas引理论证]。&lt;br /&gt;
&lt;br /&gt;
对于原对偶可行点，两者目标差可以写成&lt;br /&gt;
&amp;lt;math display=&amp;quot;block&amp;quot;&amp;gt;b^{\mathsf T}y-c^{\mathsf T}x=y^{\mathsf T}(b-Ax)+(A^{\mathsf T}y-c)^{\mathsf T}x.&amp;lt;/math&amp;gt;&lt;br /&gt;
右侧每个乘积项都非负。最优值相等时，所有这些项都必须为零：某资源有剩余，其权重便必须为零；某产品产量为正，其对应对偶约束必须紧。反过来，若可行且满足这些互补条件，差为零，由弱对偶即可证明最优。这就是互补松弛的核心推导。&lt;br /&gt;
&lt;br /&gt;
需要避免“每条紧约束都有正影子价格”的误解：乘积为零只保证正权重对应零剩余，零剩余不强迫权重大于零。退化或冗余约束可以紧却没有边际价值。对偶解也可能不唯一，因此经济解释必须说明使用哪组最优乘子与允许的扰动范围。&lt;br /&gt;
&lt;br /&gt;
== 灵敏度：一份资源值多少 ==&lt;br /&gt;
在本例最优结构保持不变的小幅变化范围内，u=v=1 表示两种资源右端各增加一小单位，最优目标的一阶变化分别是一。可直接检验：把第一资源总量改为 4+δ，第二仍为五，两条活跃边界交点为 &amp;lt;math&amp;gt;x=1-\delta,y=3+2\delta&amp;lt;/math&amp;gt;，目标变成 &amp;lt;math&amp;gt;9+\delta&amp;lt;/math&amp;gt;。只要 &amp;lt;math&amp;gt;-3/2\le\delta\le1&amp;lt;/math&amp;gt;，这些产量保持非负，该点可行且达到原对偶权重给出的上界。区间之外需要重新分析，边界处导数也可能不再唯一。&lt;br /&gt;
&lt;br /&gt;
这个计算不能被夸大为“无论增加多少资源，每单位都永远值一”。当 δ 超过一，表达式中的 x 变负，原最优结构失效；必须重新分析。影子价格通常是局部或分段的敏感性信息，并且以模型的目标、单位与其他条件不变为前提。&lt;br /&gt;
&lt;br /&gt;
== 算法、整数要求和数值检验 ==&lt;br /&gt;
单纯形法沿多面体的基可行解改善目标，常可理解为顶点间移动；退化时一次基变换可能不改变几何点，防循环规则便有意义。内点法通过另一类路径在区域内部附近逼近最优结构。算法选择涉及稀疏性、规模和数值条件，不应因为一个二维图简单就认为所有高维问题都适合手工枚举顶点。&lt;br /&gt;
&lt;br /&gt;
连续解若要求整数，直接四舍五入可能破坏约束或错过最佳整数点。例如只约束 &amp;lt;math&amp;gt;2x+2y\le3&amp;lt;/math&amp;gt;、x,y≥0，连续点 (0.75,0.75) 可行，但两者各自四舍五入成一后违反约束。整数规划需要另外的离散处理；连续最优值可以提供界，却不自动给出合法整数方案。&lt;br /&gt;
&lt;br /&gt;
本条主算例碰巧得到整数最优点，并不证明一般连续线性规划都会如此。只有满足特定矩阵结构等条件的模型，才能进一步保证相应的整数性；一个具体图上的巧合不能代替这种定理。判断是否允许连续分割，应由产量单位与现实决策规定，而不能等求解后发现分数不方便才临时四舍五入。&lt;br /&gt;
&lt;br /&gt;
实际求解后应检查原始单位下的约束残差、变量符号、目标重算值以及原对偶间隙。浮点数可能使一个理论上为零的量显示为极小正负数，容差需与问题尺度相配。不能为了让输出看起来可行就任意抹去明显违反约束的部分；修正后的点还需重新计算目标与证书。&lt;br /&gt;
&lt;br /&gt;
== 灵敏度的完整分段：边际价值何时改变 ==&lt;br /&gt;
把第一种资源总量记为 B，第二种保持5，目标仍为 &amp;lt;math&amp;gt;3x+2y&amp;lt;/math&amp;gt;。当 &amp;lt;math&amp;gt;0\le B\le5/2&amp;lt;/math&amp;gt; 时，先全部生产单位第一资源贡献更高的产品x，取 &amp;lt;math&amp;gt;x=B,y=0&amp;lt;/math&amp;gt;，第二资源仍足够，目标为3B。对偶权重 &amp;lt;math&amp;gt;u=3,v=0&amp;lt;/math&amp;gt; 给出同样上界，因此这不仅是直观建议，也是可验证的最优方案。&lt;br /&gt;
&lt;br /&gt;
当 &amp;lt;math&amp;gt;5/2\le B\le5&amp;lt;/math&amp;gt; 时，最优交点为 &amp;lt;math&amp;gt;x=5-B,y=2B-5&amp;lt;/math&amp;gt;，目标为 &amp;lt;math&amp;gt;B+5&amp;lt;/math&amp;gt;，对应对偶证书仍为 &amp;lt;math&amp;gt;u=v=1&amp;lt;/math&amp;gt;。当 &amp;lt;math&amp;gt;B\ge5&amp;lt;/math&amp;gt; 时，取 &amp;lt;math&amp;gt;x=0,y=5&amp;lt;/math&amp;gt;，目标为10；此时对偶权重 &amp;lt;math&amp;gt;u=0,v=2&amp;lt;/math&amp;gt; 给出上界10，说明额外第一资源已没有价值。因此完整价值函数为&lt;br /&gt;
&amp;lt;math display=&amp;quot;block&amp;quot;&amp;gt;V(B)=\begin{cases}3B,&amp;amp;0\le B\le5/2,\\B+5,&amp;amp;5/2\le B\le5,\\10,&amp;amp;B\ge5.\end{cases}&amp;lt;/math&amp;gt;&lt;br /&gt;
三个区间的边际贡献分别是3、1和0，在连接点处价值函数连续但有折角。影子价格改变对应约束结构改变，而不是对偶理论失效。若 &amp;lt;math&amp;gt;B&amp;lt;0&amp;lt;/math&amp;gt;，非负变量之和不可能小于负数，问题不可行，不应继续解释这条分段式。&lt;br /&gt;
&lt;br /&gt;
== 把绝对偏差变成线性规划 ==&lt;br /&gt;
一个看起来含非线性符号的问题也可能有等价的线性表达。考虑用实数 z 同时接近观测1和4，目标是最小化 &amp;lt;math&amp;gt;|z-1|+|z-4|&amp;lt;/math&amp;gt;。引入变量u、v，施加&lt;br /&gt;
&amp;lt;math display=&amp;quot;block&amp;quot;&amp;gt;u\ge z-1,\quad u\ge1-z,\quad v\ge z-4,\quad v\ge4-z,&amp;lt;/math&amp;gt;&lt;br /&gt;
并最小化 &amp;lt;math&amp;gt;u+v&amp;lt;/math&amp;gt;。前两条等价于 &amp;lt;math&amp;gt;u\ge|z-1|&amp;lt;/math&amp;gt;，后两条等价于 &amp;lt;math&amp;gt;v\ge|z-4|&amp;lt;/math&amp;gt;；在最小化目标下，最优解可令两者分别等于绝对值，因此转换不会改变最优值或z的最优选择。&lt;br /&gt;
&lt;br /&gt;
三角不等式给出原目标至少为 &amp;lt;math&amp;gt;|4-1|=3&amp;lt;/math&amp;gt;。对所有 &amp;lt;math&amp;gt;1\le z\le4&amp;lt;/math&amp;gt;，目标等于 &amp;lt;math&amp;gt;(z-1)+(4-z)=3&amp;lt;/math&amp;gt;，所以整段都是最优解。这里不是求导后只挑某个中点，而是明确识别了全部最优位置。若目标改成平方偏差，则最优点是中点2.5；不同损失的几何结构带来不同结论，参见[[最小二乘法]]。&lt;br /&gt;
&lt;br /&gt;
本例的z允许任意正负，标准化时可以写为两个非负变量的差。一个原变量可能对应多种这种拆分，但这不改变可表达的z或目标最优值。把等式换成一对反向不等式、把最小化改成负目标的最大化，也都是代数等价转换；它们改变算法输入形式，却不应改变原问题的含义。&lt;br /&gt;
&lt;br /&gt;
== 可行性与无界性也能附带证书 ==&lt;br /&gt;
最优方案可以用对偶界证明，某些失败状态也可以独立核验。对于矛盾约束 &amp;lt;math&amp;gt;x\ge2,x\le1&amp;lt;/math&amp;gt;，把第一条写成 &amp;lt;math&amp;gt;-x\le-2&amp;lt;/math&amp;gt;，再与第二条相加得到 &amp;lt;math&amp;gt;0\le-1&amp;lt;/math&amp;gt;，直接证明没有可行点。一般情况下，对约束作具有适当符号的线性组合产生矛盾，是Farkas引理所组织的一类不可行证书。&lt;br /&gt;
&lt;br /&gt;
对最大化问题，如果已有可行点 &amp;lt;math&amp;gt;x_0&amp;lt;/math&amp;gt;，又找到方向d使 &amp;lt;math&amp;gt;Ad\le0,d\ge0,c^{\mathsf T}d&amp;gt;0&amp;lt;/math&amp;gt;，那么每个 &amp;lt;math&amp;gt;x_0+td&amp;lt;/math&amp;gt; 在 &amp;lt;math&amp;gt;t\ge0&amp;lt;/math&amp;gt; 都可行，目标却持续增加，因而目标无界。这是一个方便检查的充分证书。在一般符号约定下，方向应满足对应的衰退锥条件，不能总要求原变量非负以外的问题也使用同一形式。&lt;br /&gt;
&lt;br /&gt;
这些证书说明优化软件的状态标签应该有数学内容：不可行可以给出矛盾组合，无界可以给出改进射线，最优可以给出原对偶匹配。浮点实现中的近似证书仍需要容差与残差检查，但比只有一个状态词更容易定位问题。&lt;br /&gt;
&lt;br /&gt;
== 不确定系数属于模型层的问题 ==&lt;br /&gt;
若资源消耗系数来自测量估计，精确解出一个固定线性规划，只能说明在那些数值下最优。实际消耗略高就可能违反容量约束。可以逐个检查代表性情景，也可以对规定的不确定范围建立稳健约束；这些处理会改变可行域和最优方案，必须明确采用哪种解释。&lt;br /&gt;
&lt;br /&gt;
同样，把两个现实目标合成一个加权和时，权重表达了偏好或单位换算，并非线性规划算法自动提供的事实。数学最优需要相对于所列目标、约束和系数来理解，不能脱离模型写成“现实中唯一最好的决定”。&lt;br /&gt;
&lt;br /&gt;
== 历史背景 ==&lt;br /&gt;
Kantorovich 在 1939 年发表与生产组织相关的数学方法，Dantzig 在 1947 年发展单纯形法。两者所处的问题背景与后续影响可分别查阅 [https://mathshistory.st-andrews.ac.uk/Biographies/Kantorovich/ MacTutor]和[https://news.stanford.edu/stories/2005/05/george-b-dantzig-operations-research-professor-dies-90 斯坦福大学记录]。线性规划还涉及对偶、几何与算法复杂度等多方面发展，不宜用一个名字概括全部发现史。&lt;br /&gt;
&lt;br /&gt;
== 编者评注（AI 辅助） ==&lt;br /&gt;
&amp;lt;div class=&amp;quot;math-editorial-note&amp;quot;&amp;gt;&amp;#039;&amp;#039;&amp;#039;编者评注（AI 辅助）。&amp;#039;&amp;#039;&amp;#039; 线性规划的入门重点不只是画可行域，而是学会同时从可行方案与全局界看问题。一个达到上界的方案，解释力远强于“软件说最优”。建议保留原问题、对偶证书和单位说明，再讨论资源价格或算法速度。这样既能发现符号错误，也能清楚地区分模型内部的最优结论与现实决策仍需作出的假设。&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 参考来源与延伸阅读 ==&lt;br /&gt;
* [https://web.stanford.edu/~boyd/cvxbook/ Boyd 与 Vandenberghe：Convex Optimization]，第4章的线性规划、第5章的对偶与敏感性分析。&lt;br /&gt;
* [https://ocw.mit.edu/courses/6-253-convex-analysis-and-optimization-spring-2012/9f80ea2051c10cc0f8cf3839983c381a_MIT6_253S12_lec10.pdf MIT 6.253 Lecture 10]：线性规划对偶定理及Farkas引理。&lt;br /&gt;
* [https://mathshistory.st-andrews.ac.uk/Biographies/Kantorovich/ MacTutor：Kantorovich]；[https://news.stanford.edu/stories/2005/05/george-b-dantzig-operations-research-professor-dies-90 Stanford：Dantzig]。&lt;br /&gt;
* 先修：[[矩阵]]、[[优化]]；相关：[[最短路径]]、[[数学建模]]。&lt;br /&gt;
[[分类:优化与运筹]]&lt;/div&gt;</summary>
		<author><name>AIContentBot</name></author>
	</entry>
</feed>