简介:这份运筹学期末练习试卷面向高校运筹学课程学习者与备考学生,用于系统检验建模与求解能力。试卷涵盖线性规划建模、整数规划建模、名词解释、网络分析与计算题等模块,具体涉及A、B产品生产计划建模、汽车厂三种车型的整数规划、织布机生产安排、定性与定量分析辨析、Pert图与CPM关键路径计算、决策树方法及表上作业法求解运输问题,并附有对偶问题与互补松弛性的综合题解答。资源包共1个doc文件,约1.09MB,内容完整、题型典型,适合作为期末复习与自测材料。已有571人学习下载,读者可借此熟悉运筹学常见题型的建模思路与解题技巧,对照答案查漏补缺,为应对考试和实际决策问题打下基础。
1. 运筹学到底在算什么:从一张期末练习卷说起
你有没有过这种经历:手里一堆资源,时间、人手、预算全都有上限,却要在几个方案里挑一个最划算的。小到周末怎么安排家务,大到工厂怎么排产,本质都是同一道题——在限制条件下,让某个目标尽可能好。运筹学就是专门研究这类问题的学科,它把“怎么选最划算”翻译成数学语言,再交给模型去算。这份运筹学期末练习试卷,恰好把这门课最核心的几类题型摆在一起:建模、名词解释、网络图、计算求解。搞懂它,你就搞懂了运筹学在现实里到底怎么用。
很多人第一次听到“运筹学”三个字,会觉得玄乎,像是某种高深算法。其实它更像一套“决策的记账本”:把每种选择消耗多少资源、带来多少收益,一笔一笔写清楚,然后让数学替你找出那本账最漂亮的那一页。试卷里的题目不要求你写代码,也不要求你跑软件,只要求你把现实问题“翻译”成变量、约束和目标函数。这个翻译过程,才是运筹学真正值钱的地方。
2. 线性规划:把“资源有限”写成不等式
2.1 一句话定义与生活类比
线性规划是运筹学里最基础、也最常用的一类模型。通俗地说,它处理的是这样一件事:你有一组决策变量(比如生产多少件产品),每个变量都消耗若干种资源,资源总量有上限,而你想让总利润最大或总成本最小。所有关系都是“线性”的——消耗按比例增加,利润也按比例增加,没有突然翻倍或打折的弯弯绕。
打个比方,你开一家小作坊,做两种点心。每种点心都要用面粉和工时,面粉就那么多,工时也就那么多,你想决定各做多少盒。线性规划就是帮你把“面粉够不够、工时够不够”写成一组不等式,再把“卖多少钱”写成一个求和式,然后找那个让求和式最大的组合。
试卷第一道建模题就是这个套路:A、B 两种产品都要经过前道和后道两道化学反应,前道总共 200 小时,后道总共 240 小时。每生产 1 个单位 B 还会顺带产出 2 个单位副产品 C,C 最多能卖 10 个单位,卖不掉的要花 1 元销毁。题目只要求建模,不要求求解,但建模本身已经把线性规划的核心骨架露出来了。
2.2 建模的三件套:变量、约束、目标
线性规划建模永远绕不开三样东西,试卷里的解法也是按这个顺序来的。
第一是决策变量。你要决定什么,就把什么设成变量。第一题设 A、B 的产量为 x1、x2,销毁的 C 为 x3。注意 x3 不是“生产量”,而是“销毁量”,这个区分很关键,因为销毁是要花钱的。
第二是约束条件。资源上限写成不等式:前道 2x1 + 3x2 ≤ 200,后道 3x1 + 4x2 ≤ 240。副产品 C 的产销平衡也要写成等式或不等式:B 产出 2x2 个 C,卖出去的最多 10 个,剩下的 x3 销毁,所以 2x2 = 销售量 + x3,且销售量 ≤ 10。这些式子把现实里的“够不够、卖不卖得掉”全部量化了。
第三是目标函数。利润 = 5x1 + 10x2 + 3×销售量 − 1×x3。把销售量用 2x2 − x3 替换掉,目标函数就只剩 x1、x2、x3 三个变量。到这里,一个完整的线性规划模型就立起来了。
提示:建模题不要求求解,但变量设错,后面全错。尤其是“销毁量”这种反向变量,初学者最容易漏。
2.3 第二道建模题:整数规划为什么多了一层
试卷第二题是汽车厂生产微型、中级、高级三种轿车,钢材和人工有总量上限,利润各不同。表面看还是线性规划,但多了一个条件:每种车要达到经济规模才能生产,微型车至少 1500 辆,中级车至少 1200 辆,高级车至少 1000 辆。产量不能是 1499.5 辆,必须是整数,而且要么不生产,要么至少达到门槛。
这就是整数规划。它和线性规划的关系,好比“可以切半块蛋糕”和“只能整块拿”的区别。线性规划允许变量取小数,整数规划要求变量取整数。多出来的这个整数约束,让求解难度上一个台阶,因为可行解不再是一个连续的区域,而是一堆离散的点。试卷只要求建模,所以解法里设了 x1、x2、x3 三个产量变量,再用 0-1 变量或者大 M 法来处理“要么为零、要么至少门槛”的逻辑。这部分不展开求解,但建模思路已经点明了整数规划的核心:在普通线性约束之外,再加一层“离散选择”的约束。
2.4 第三道建模题:自制还是外购的取舍
第三题更贴近真实生产:28 台织布机分 D 型和 R 型,要满足四种纺织品的需求,可以自己生产,也可以直接购买。自己生产有单位可变成本,购买有单位购买价,售价固定,所以每种产品“自己做”和“买来卖”的单位利润不一样。题目解法里直接给出了两组利润数:自己生产纺织品 1 到 4 的单位利润分别是 0.33、0.31、0.61、0.73,购买对应的单位利润是 0.19、0.16、0.5、0.54。
这道题的建模关键,是把“机器小时”作为资源约束,把“自制量 + 购买量 = 需求量”作为平衡约束,目标函数则是两组利润分别乘以自制量和购买量再求和。它和第一题的区别在于,决策变量分成了两类:生产决策和采购决策。现实里很多供应链问题都是这个结构——自己能做就做,做不过来就买,模型帮你算哪种组合最划算。
3. 对偶与敏感性:同一个问题的另一面
3.1 对偶问题不是“另一个问题”,是同一枚硬币的反面
试卷名词解释里提到“线性规划的对偶问题”,答案说“不唯一,可以给出一个具体线性规划和其标准型进行阐述”。这句话听起来绕,其实意思很简单:每一个线性规划问题,都对应着另一个线性规划问题,叫做它的对偶问题。原问题求利润最大,对偶问题就求资源的最小“影子价格”;原问题的约束是资源上限,对偶问题的变量就是这些资源的估价。
打个比方,你有一间铺面,原问题是“怎么安排经营让利润最大”,对偶问题就是“这间铺面如果租出去,最低该收多少租金才不亏”。两个问题的最优值是相等的,这就是对偶定理。试卷后面的综合题直接用了这个性质:已知原问题最优解,利用互补松弛性反推对偶问题最优解。互补松弛性说的是,如果某个资源在原问题里没用完,那它对偶变量的值就是零;如果对偶变量大于零,说明这个资源是紧俏的,一点都不能浪费。
3.2 影子价格:资源到底值多少钱
对偶变量在运筹学里有个更通俗的名字——影子价格。它不是市场上真实的价格,而是“多给你一单位这种资源,你的最优利润能增加多少”。试卷第一题里前道工序 200 小时、后道工序 240 小时,如果多给 1 小时前道时间,利润能涨多少,那个数就是前道时间的影子价格。
理解影子价格,你就理解了对偶问题为什么有用。企业做决策时,不光要知道“现在怎么安排最好”,还要知道“哪个资源最卡脖子、值不值得花钱去买”。影子价格高的资源,就是瓶颈资源,多投入它能换来更多利润;影子价格为零的资源,说明还有富余,再买也没用。这个信息比单纯一个最优产量方案更有战略价值。
3.3 互补松弛性:怎么从原问题推对偶解
试卷综合题给了一个线性规划,要求先写对偶问题,再求对偶最优解。解法里没有重新解一遍对偶问题,而是把原问题的最优解代入,利用互补松弛性直接推出对偶变量。具体逻辑是:原问题某个约束是严格不等式(资源没用完),对应的对偶变量必为零;原问题某个变量大于零,对应的对偶约束必取等号。这样一步步推下来,对偶最优解就出来了。
这个方法在考试里很实用,因为重新解一个对偶问题费时费力,而互补松弛性相当于给你一条捷径。但前提是你得先把原问题的最优解求对,否则后面全盘皆输。这也是运筹学里常见的“血泪经验”:对偶技巧再漂亮,原问题算错一个数,整道题就翻车。
4. 网络图与关键路径:项目进度的“黑匣子”
4.1 网络图是什么:把先后关系画出来
试卷第三部分是一道作图填空题,给了一张活动表:A 无紧前活动,5 天;B 无紧前活动,1 天;C 紧前是 B,2 天;D 紧前是 A 和 C,4 天;E 紧前是 A,6 天;F 紧前是 D 和 E,3 天。要求画网络图、找关键路线、算完工时间、算活动 B 和 E 的可推迟天数。
网络图就是把“谁必须在谁之前完成”画成一张有向图。节点代表事件,箭线代表活动,箭线的方向就是先后顺序。这张图的价值在于,它把项目里所有活动的依赖关系一次性摊开,让你一眼看出哪些活动串在一起、哪些可以并行。试卷里 A 和 B 可以同时开始,C 要等 B 做完,D 要等 A 和 C 都做完,E 只要等 A 做完,F 要等 D 和 E 都做完。画出来之后,整个项目的骨架就清楚了。
4.2 关键路线:决定工期的那个“最长链条”
关键路线是从起点到终点耗时最长的那条路径。试卷答案给的是 A-E-F,时间 5 + 6 + 3 = 14 天。为什么最长路径反而决定工期?因为项目里所有活动都得做完,最长的那条链卡在那里,其他短链早做完了也得等它。好比一群人约饭,最慢的那个人到了才能开席,关键路线就是那个最慢的人。
关键路线上的活动叫关键活动,它们的总时差为零,一天都不能拖。试卷填空题里问“活动 E 可以推迟几天而不延误工期”,答案就是 0,因为 E 在关键路线上。活动 B 可以推迟 4 天,因为 B 不在关键路线上,它后面接 C 和 D,D 又要等 A 和 C,B 稍微拖一拖不影响最终 14 天的工期。这个“可以推迟几天”就是活动的总时差,是网络分析里最实用的一个数。
4.3 总时差:项目管理的“后悔药”
总时差的计算逻辑是:一个活动最晚必须什么时候完成,减去它最早可能完成的时间,差值就是它能拖的最大天数。试卷里 B 的总时差是 4 天,意味着 B 哪怕拖到第 5 天完成(最早第 1 天完成,加 4 天),也不会让整个项目超过 14 天。
这个数在项目管理里就是“后悔药”。你知道哪些活动可以缓一缓,哪些活动一拖就出事。关键路线上的活动总时差为零,没有后悔药可吃;非关键活动有一定缓冲,资源紧张的时候可以先把人调去关键活动,让非关键活动稍微等一等。网络图的价值不在于画得好看,而在于它把“哪里能省、哪里不能省”算得明明白白。
5. 决策树与运输问题:不确定性和物流的两种解法
5.1 决策树:把“万一”画成树枝
试卷计算题第二题是一个典型的风险决策:新产品销路好的概率 0.7,获利 1200 万;销路差的概率 0.3,亏损 150 万。可以先建一个小型试验工厂试销,试销费用 5 万,试销结果会影响后续大批量投产时对销路的判断。题目要求用决策树方法决策。
决策树就是把每个决策点和每个自然状态画成树枝,从右往左算期望值。先算不试销直接投产的期望利润:0.7×1200 + 0.3×(−150) = 840 − 45 = 795 万。再算试销的情况:试销销路好的概率 0.8,这种情况下大批量投产销路好的概率变成 0.85;试销销路差的概率 0.2,这种情况下大批量投产销路好的概率只有 0.1。把每条分支的期望利润算出来,减去试销费用 5 万,再和 795 万比较,哪个大选哪个。
决策树的好处是把“不确定性”拆成一层一层的概率分支,让直觉上模糊的“要不要先试试”变成一个可以比较的数字。它不保证你选对,但保证你的选择逻辑是自洽的。
5.2 运输问题:表上作业法的适用场景
试卷计算题第三题是一个运输问题:三个产地 A1、A2、A3,四个销地 B1 到 B4,产量和销量都给定了,单位运价也给了,要求用表上作业法求解。运输问题的标准形式是:产地有供应量,销地有需求量,供需平衡,每一条运输路线有单位成本,目标是总运费最小。
表上作业法是手工求解运输问题的经典方法,步骤是先用最小元素法或西北角法找一个初始调运方案,再用位势法或闭回路法检验是否最优,不是最优就调整。试卷只给了题目和表格,没有展开求解过程,但这类题在运筹学期末卷里几乎必考,因为它把线性规划的特殊结构(供需平衡的等式约束)和手工算法结合得很紧。
运输问题和前面线性规划的区别在于,它的约束矩阵有特殊的“网络结构”,每个变量只出现在一行和一列里。这个结构让它可以不用单纯形法,而用更直观的表上作业法。现实里的物流调度、库存调拨,底层都是这个模型。
6. 什么时候该用运筹学,什么时候别硬套
运筹学不是万能钥匙。它最擅长的是那些“目标明确、资源可量化、关系近似线性”的问题。比如试卷第一题那种两种产品、两道工序的排产,变量少、约束清楚,建个线性规划模型几分钟就能把账算明白。第三题的自制外购决策也一样,利润数都给好了,模型只是帮你做组合优化。这类场景用运筹学,属于对症下药。
但有些情况硬套模型就会翻车。第一种是目标本身说不清。如果决策者自己都不知道要利润最大还是风险最小,或者多个目标互相打架又没法量化权重,那模型建出来也是空中楼阁。第二种是关系严重非线性。试卷里的题目全是线性关系,消耗按比例走,利润也按比例走。现实里很多问题有规模效应、有阈值突变,线性假设一崩,模型结论就不可信。第三种是数据质量太差。线性规划的对偶价格再漂亮,前提是那些成本系数、资源上限是准的。如果基础数据靠拍脑袋,模型算得再精也是垃圾进垃圾出。
我自己的习惯是,每次想上模型之前,先拿一张纸把三件事写清楚:我要决定的变量到底是什么,哪些约束是硬得不能再硬的,目标函数能不能用一个数衡量。这三件事写不顺,说明问题还没想清楚,这时候建模型只是把混乱数学化。反过来,这三件事能写顺,哪怕不用任何软件,手工列个式子也能把方向定个八九不离十。从那以后我每次遇到“资源有限怎么分配”的问题,都强制先走一遍这个三件套,再决定要不要动真格的模型。希望这个思路帮到你。
这份练习试卷的价值,不在于它有多少道题,而在于它把运筹学最常用的几类建模场景压缩在几页纸里:线性规划的资源分配、整数规划的门槛约束、对偶问题的影子价格、网络图的关键路线、决策树的风险分支、运输问题的表上作业。每一类都对应现实里的一类决策。想要把这几类题型从头到尾过一遍,这份资料里的题目和解答过程就是现成的参照。
本文还有配套的精品资源,点击获取