1、数学建模简明教程国家精品课程国家精品课程第一章第一章 规划理论及模型规划理论及模型 一、一、引言引言 二、线性规划模型二、线性规划模型 三、整数线性规划模型三、整数线性规划模型 四、四、0-10-1整数规划模型整数规划模型 五、五、非线性规划模型非线性规划模型 六、六、多目标规划模型多目标规划模型目录下页返回上页结束 七、动态七、动态规划模型规划模型一、引言一、引言目录下页返回上页结束 我们从我们从2005年年“高教社杯高教社杯”全国大学生数模全国大学生数模竞竞赛的赛的B题题“DVD在线租赁在线租赁”问题的第二问和第三问问题的第二问和第三问 谈起谈起.其中第二个问题是一个如何来分配有限资源,其
2、中第二个问题是一个如何来分配有限资源,从而达到人们期望目标的优化分配数学模型从而达到人们期望目标的优化分配数学模型.它它在运筹学中处于中心的地位在运筹学中处于中心的地位.这类问题一般可以这类问题一般可以归结为归结为数学规划模型数学规划模型.目录下页返回上页结束 规划模型的应用极其广泛,其作用已为越来规划模型的应用极其广泛,其作用已为越来 来越急速地渗透于工农业生产、商业活动、军事来越急速地渗透于工农业生产、商业活动、军事 行为核科学研究的各个方面,为社会节省的财富、行为核科学研究的各个方面,为社会节省的财富、创造的价值无法估量创造的价值无法估量.特别是在数模竞赛过程中,规划模型是最常特别是在数
3、模竞赛过程中,规划模型是最常 见的一类数学模型见的一类数学模型.从从92-06年全国大学生数模竞年全国大学生数模竞 越多的人所重视越多的人所重视.随着计算机的逐渐普及,它越随着计算机的逐渐普及,它越 赛试题的解题方法统计结果来看,规划模型共出赛试题的解题方法统计结果来看,规划模型共出 现了现了15次,占到了次,占到了50%,也就是说每两道竞赛题,也就是说每两道竞赛题 中就有一道涉及到利用规划理论来分析、求解中就有一道涉及到利用规划理论来分析、求解.目录下页返回上页结束二、线性规划模型二、线性规划模型 线性规划模型是所有规划模型中最基本、最线性规划模型是所有规划模型中最基本、最例例1(食谱问题)
4、设有食谱问题)设有 n 种食物,各含种食物,各含 m 种营养种营养素,第素,第 j 种食物中第种食物中第 i 中营养素的含量为中营养素的含量为 aij,n 种种食物价格分别为食物价格分别为c1,c2,cn,请确定食谱中,请确定食谱中n 种食种食物的数量物的数量x1,x2,xn,要求在食谱中,要求在食谱中 m 种营养素种营养素简单的一种简单的一种.2.1 线性规划模型的标准形式线性规划模型的标准形式 的含量分别不低于的含量分别不低于b1,b2,bm 的情况下,使得总的情况下,使得总 的费用最低的费用最低.目录下页返回上页结束 首先根据食物数量及价格可写出食谱费用为首先根据食物数量及价格可写出食谱
5、费用为 1 122,nnc xc xc x1 122.iiinna xa xa x其次食谱中第其次食谱中第 i 种营养素的含量为种营养素的含量为 因此上述问题可表述为:因此上述问题可表述为:11221111221121122222112212min.0,0,0nnnnnnmmmnnmnc xc xc xaxaxaxbaxaxaxbs taxaxaxbxxx 解解目录下页返回上页结束 上述食谱问题就是一个典型的线性规划问题,上述食谱问题就是一个典型的线性规划问题,寻求以线性函数的最大(小)值为目标的数学模型寻求以线性函数的最大(小)值为目标的数学模型.它是指在一组线性的等式或不等式的约束条件下,
6、它是指在一组线性的等式或不等式的约束条件下,目录下页返回上页结束 线性规划模型的三种形式线性规划模型的三种形式 nqjxqjxmsibxaxaxaspibxaxaxapibxaxaxatsxcxczjjininiiininiiininiinn,1,0,1,0,1,1,1,.min(max)22112211221111系系数数矩矩阵阵 mnmmnnaaaaaaaaaA212222111211目标函数目标函数 价值向量价值向量 价值系数价值系数 决策变量决策变量Tnccc),(1 njcj,2,1,njxj,2,1,右端向量右端向量 mbbb1非负约束非负约束自由变量自由变量TiAjA 一般形式一
7、般形式目录下页返回上页结束 规范形式规范形式 标准形式标准形式 0.minxbAxtsxcT 0.minxbAxtsxcT 三种形式的三种形式的LP问题全都是等价的,即一种问题全都是等价的,即一种形式的形式的LP可以简单的变换为另一种形式的可以简单的变换为另一种形式的LP,且它们有相同的解且它们有相同的解.以下我们仅将一般形式化成规范形式和标准以下我们仅将一般形式化成规范形式和标准形式形式.目录下页返回上页结束目标函数的转化目标函数的转化 xoz-z)(minmaxzz 目录下页返回上页结束约束条件和变量的转化约束条件和变量的转化 为了把一般形式的为了把一般形式的LP问题变换为规范形式,问题变
8、换为规范形式,可用下述两个不等式约束去替代可用下述两个不等式约束去替代 njijijbxa1 njijijbxa1 njijijbxa1)()(我们必须消除等式约束和符号无限制变量我们必须消除等式约束和符号无限制变量.在一在一 般形式的般形式的LP中,一个等式约束中,一个等式约束目录下页返回上页结束 jjjxxx这样就把一般形式的这样就把一般形式的LP变换为规范形式变换为规范形式.变量变量 和和 ,并设,并设0 jx0 jx 对于一个无符号限制变量对于一个无符号限制变量 ,引进两个非负,引进两个非负jx目录下页返回上页结束对于一个不等式约束对于一个不等式约束 njijijbxa1 njiiij
9、ijsbsxa10,代替上述的不等式约束代替上述的不等式约束.对符号无限制变量的处理可按上述方法进行对符号无限制变量的处理可按上述方法进行.可引入一个可引入一个剩余变量剩余变量 ,is必须消除其不等式约束和符号无限制变量必须消除其不等式约束和符号无限制变量.为了把一般形式的为了把一般形式的LPLP问题变换为标准形式,问题变换为标准形式,目录下页返回上页结束 对于不等式约束对于不等式约束 njijijbxa1 njiiijijrbrxa10,代替上述的不等式约束代替上述的不等式约束.这样就把一般形式的这样就把一般形式的LP变换为标准形式变换为标准形式.可引入一个可引入一个松弛变量松弛变量ir,用
10、,用目录下页返回上页结束 针对标准形式的线性规划问题,其解的理论针对标准形式的线性规划问题,其解的理论分析已经很完备,在此基础上也提出了很好的算分析已经很完备,在此基础上也提出了很好的算 单纯形方法是线性规划问题的最为基础、也单纯形方法是线性规划问题的最为基础、也法法单纯形方法及其相应的变化形式(两阶段单纯形方法及其相应的变化形式(两阶段2.2 线性规划模型的求解线性规划模型的求解 法,对偶单纯形法等)法,对偶单纯形法等).是最核心的算法是最核心的算法.它是一个迭代算法,先从一个它是一个迭代算法,先从一个特殊的可行解(极点)出发,通过判别条件去判特殊的可行解(极点)出发,通过判别条件去判 断该
11、可行解是否为最优解(或问题无界),若不断该可行解是否为最优解(或问题无界),若不 目录下页返回上页结束是最优解,则根据相应规则,迭代到下一个更好是最优解,则根据相应规则,迭代到下一个更好的软件包的软件包有有LINGO和和LINDO.的可行解(极点),直到最优解(或问题无界)的可行解(极点),直到最优解(或问题无界).关于线性规划问题解的理论和单纯形法具体的求关于线性规划问题解的理论和单纯形法具体的求解过程可参见文献解过程可参见文献1.然后在实际应用中,特别是数学建模过程中,然后在实际应用中,特别是数学建模过程中,遇到线性规划问题的求解,我们一般都是利用现遇到线性规划问题的求解,我们一般都是利用
12、现 有的软件进行求解,此时通常并不要求线性规划有的软件进行求解,此时通常并不要求线性规划 问题问题是标准形式是标准形式.比较常用的求解线性规划模型比较常用的求解线性规划模型 目录下页返回上页结束运输问题运输问题例例2 2 设要从甲地调出物资设要从甲地调出物资20002000吨,从乙地调出物吨,从乙地调出物 资资1100吨,分别供给吨,分别供给A地地1700吨、吨、B地地1100吨、吨、C假定运费与运量成正比假定运费与运量成正比.在这种情况下,采用不在这种情况下,采用不地地200吨、吨、D地地100吨吨.已知每吨运费如表已知每吨运费如表1.1所示所示.同的调拨计划,运费就可能不一样同的调拨计划,
13、运费就可能不一样.现在问:怎现在问:怎样才能找出一个运费最省的调拨计划?样才能找出一个运费最省的调拨计划?目录下页返回上页结束1572521甲甲15375151乙乙DCBA表表 1.1销销地地运运费费产产地地目录下页返回上页结束2423222114131211153751511572521minxxxxxxxxf 解解乙乙11x21x22x23x24x2000411 jix1100412 jix1700211 iix1100212 iix200213 iix100214 iix甲甲DCBA)4,3,2,1;2,1(0 jixij12x13x14x目录下页返回上页结束s.t.1112131421
14、222324112112221323142420001100170011002001000,1,2;1,2,3,4ijxxxxxxxxxxxxxxxxxij 1112131421222324min212571551513715fxxxxxxxx目录下页返回上页结束一般的运输问题可以表述如下:一般的运输问题可以表述如下:,1,2,;1,2,ijximjn jB运一个单位的产品到运一个单位的产品到 nijmiiba11iA已知已知,从,从在满足供需要求的条件下,使总运输费用最省在满足供需要求的条件下,使总运输费用最省.个发点个发点mmiAi,2,1,要把某种物资从要把某种物资从 ,调运给需要这种物
15、资的调运给需要这种物资的 个收点个收点nnjBj,2,1,.的运价为的运价为ijc现在需要确定一个调运方案,即确现在需要确定一个调运方案,即确到到的运输量的运输量iAjB定由定由目录下页返回上页结束数学模型:数学模型:1111min,1,2,s.t.,1,2,0,1,2,;1,2,mnijijijnijijmijjiijzc xxa imxbjnxim jn 目录下页返回上页结束 类似与将一般的线性规划问题转化为其标准类似与将一般的线性规划问题转化为其标准否则,称为不平衡的运输问题,包括:否则,称为不平衡的运输问题,包括:即即 nijmiiba11,则称该问题为平衡的运输问题,则称该问题为平衡
16、的运输问题.总产量总产量总销量和总产量总销量和总产量总销量总销量.形式,我们总可以通过引入假想的销地或产地,形式,我们总可以通过引入假想的销地或产地,将不平衡的运输问题转化为平衡的运输问题将不平衡的运输问题转化为平衡的运输问题.从从而,我们的重点就是解决平衡运输问题的求解而,我们的重点就是解决平衡运输问题的求解.若其中各产地的总产量等于各销地的总销量,若其中各产地的总产量等于各销地的总销量,目录下页返回上页结束该方法将单纯形法与平衡的运输问题的特殊性质该方法将单纯形法与平衡的运输问题的特殊性质运输问题及其解法的进一步介绍参加文献运输问题及其解法的进一步介绍参加文献2.显然,运输问题是一个标准的
17、线性规划问题,显然,运输问题是一个标准的线性规划问题,因而当然可以运用单纯形方法求解因而当然可以运用单纯形方法求解.但由于平衡但由于平衡的运输问题的特殊性质,它还可以用其它的一些的运输问题的特殊性质,它还可以用其它的一些特殊方法求解,其中最常用的就是表上作业法,特殊方法求解,其中最常用的就是表上作业法,结合起来,很方便地实行了运输问题的求解结合起来,很方便地实行了运输问题的求解.关于关于目录下页返回上页结束 对于线性规划问题,如果要求其决策变量取对于线性规划问题,如果要求其决策变量取整数值,则称该问题为整数线性规划问题整数值,则称该问题为整数线性规划问题.平面法和分支定界法是两种常用的求解整数
18、线性平面法和分支定界法是两种常用的求解整数线性 对于整数线性规划问题的求解,其难度和运对于整数线性规划问题的求解,其难度和运三、整数线性规划模型三、整数线性规划模型算量远大于同规模的线性规划问题算量远大于同规模的线性规划问题.Gomory割割规划问题的方法(见文献规划问题的方法(见文献1).此外,同线性规此外,同线性规划模型一样,我们也可以运用划模型一样,我们也可以运用LINGO和和LINDO软软件包来求解整数线性规划模型件包来求解整数线性规划模型.目录下页返回上页结束如何求解整数线性规划模型如何求解整数线性规划模型.以以1988年美国大学生数学建模竞赛年美国大学生数学建模竞赛B题为例,题为例
19、,说明整数线性规划模型的建立及用说明整数线性规划模型的建立及用LINGO软件包软件包例例3 有七种规格的包装箱要装到两节铁路平板车有七种规格的包装箱要装到两节铁路平板车上去上去.包装箱的宽和高是一样的,但厚度(包装箱的宽和高是一样的,但厚度(t,以,以cm 计)及重量(计)及重量(w,以,以kg计)是不同的计)是不同的.表表1给出给出了每种包装箱的厚度、重量以及数量了每种包装箱的厚度、重量以及数量.每节平板每节平板车有车有10.2 m 长的地方可用来装包装箱(像面包片长的地方可用来装包装箱(像面包片那样),载重为那样),载重为40t.由于当地货运的限制,对于由于当地货运的限制,对于目录下页返回
20、上页结束C5,C6,C7 类包装箱的总数有一个特别的限制:这类包装箱的总数有一个特别的限制:这类箱子所占的空间(厚度)不能超过类箱子所占的空间(厚度)不能超过302.7cm.试试把包装箱装到平板车上,使得浪费的空间最小把包装箱装到平板车上,使得浪费的空间最小.种类种类C1C2C3C4C5C6 C7t/cm48.753.061.372.048.752.064.0w/kg2000 3000 10005004000 2000 1000n/件件8796648目录下页返回上页结束 为在第为在第 节车上装载第节车上装载第 件包装箱的件包装箱的,i jxji解解 令令种包装箱需要种包装箱需要);1,2,7;
21、1,2ij ini数量数量(为第为第 下面我们建立该问题的整数线性规划模型下面我们建立该问题的整数线性规划模型.节车的载重量;节车的载重量;jcwjs为第为第302.7s 为特殊限制为特殊限制().).装的件数;装的件数;iwi为第为第种包装箱的重量;种包装箱的重量;it为第为第i种种jclj包装箱的厚度;包装箱的厚度;为第为第 节车的长度节车的长度(1020jcl );目录下页返回上页结束1)约束条件约束条件两节车的装箱数不能超过需要装的件数,即:两节车的装箱数不能超过需要装的件数,即:每节车可装的长度不能超过车能提供的长度:每节车可装的长度不能超过车能提供的长度:12,1,2,7iiixx
22、ni 71,1,2iijjit xclj 每节车可装的重量不超过车能够承受的重量:每节车可装的重量不超过车能够承受的重量:71,1,2iijjiw xcwj 目录下页返回上页结束对于对于C5,C6,C7类包装箱的总数的特别限制:类包装箱的总数的特别限制:2)目标函数目标函数7125()iiiit xxs 浪费的空间最小,即包装箱的总厚度最大:浪费的空间最小,即包装箱的总厚度最大:7121max()()iiiif xtxx 目录下页返回上页结束3)整数线性规划模型整数线性规划模型 7121max()iiiitxx 1271717125 1,2,7 1,2 1,2s.t.()0 1,2,7;1,2
23、iiiiijjiiijjiiiiiijxxnit xcljw xcwjtxxsxij 取取 整整 数数目录下页返回上页结束4)模型求解模型求解运用运用LINGO软件求解得到:软件求解得到:*4191210,2039.44605120 xf5)最优解的分析说明最优解的分析说明优的装车方案,此时装箱的总长度为优的装车方案,此时装箱的总长度为1019.7cm,两节车共装箱的总长度为两节车共装箱的总长度为2039.4cm.由上一步中的求解结果可以看出,由上一步中的求解结果可以看出,*x即为最即为最 但是,上述求解结果只是其中一种最优的装但是,上述求解结果只是其中一种最优的装车方案,即此答案并不唯一车方
24、案,即此答案并不唯一.目录下页返回上页结束 0-1整数规划是整数规划的特殊情形,它要求整数规划是整数规划的特殊情形,它要求线性规划模型中的决策变量线性规划模型中的决策变量 xij 只能取值为只能取值为0或或1.单隐枚举法,该方法是一种基于判断条件(过滤单隐枚举法,该方法是一种基于判断条件(过滤 0-1整数规划模型的求解目前并没有非常好的整数规划模型的求解目前并没有非常好的四、四、0-10-1整数规划模型整数规划模型 算法,对于变量比较少的情形,我们可以采取简算法,对于变量比较少的情形,我们可以采取简条件)的穷举法条件)的穷举法.我们也可以利用我们也可以利用LINGO和和LINDO软件包来求软件
25、包来求解解0-1整数规划模型整数规划模型.目录下页返回上页结束例例4 4 有有 n 个物品,编号为个物品,编号为 1,2,n,第,第 i 件物品件物品重重 ai 千克,价值为千克,价值为 ci 元,现有一个载重量不超过元,现有一个载重量不超过大,应如何装载这些物品?大,应如何装载这些物品?a 千克的背包,为了使装入背包的物品总价值最千克的背包,为了使装入背包的物品总价值最用变量用变量 xi 表示物品表示物品 i 是否装包,是否装包,i=1,2,n,并令:并令:解解目录下页返回上页结束可得到背包问题的规划模型为:可得到背包问题的规划模型为:11maxs.t.011,2,niiiniiiifc x
26、a xaxin 或或,目录下页返回上页结束例例5 5 有有n 项任务,由项任务,由 n 个人来完成,每个人只能个人来完成,每个人只能做一件,做一件,第第 i 个人完成第个人完成第 j 项任务要项任务要 cij 小时,如小时,如何合理安排时间才能使总用时最小?何合理安排时间才能使总用时最小?引入状态变量引入状态变量 xij,并令:,并令:解解1,0,ijijijx 派派第第 人人完完成成第第 项项任任务务不不派派第第 人人完完成成第第 项项任任务务则总用时表达式为:则总用时表达式为:11nnijijijfc x 目录下页返回上页结束可得到指派问题的规划模型为:可得到指派问题的规划模型为:1111
27、min1,1,2,s.t.1,1,2,01nnijijijnijinijjijfc xxjnxinx 或或目录下页返回上页结束 上面介绍的指派问题称为指派问题的标准形上面介绍的指派问题称为指派问题的标准形式,还有许多其它的诸如人数与任务数不等、及式,还有许多其它的诸如人数与任务数不等、及但一般可以通过一些转化,将其变为标准形式但一般可以通过一些转化,将其变为标准形式.某人可以完成多个任务,某人不可以完成任务,某人可以完成多个任务,某人不可以完成任务,某任务必须由某人完成等特殊要求的指派问题某任务必须由某人完成等特殊要求的指派问题.对于标准形式的指派问题,我们可以利用匈对于标准形式的指派问题,我
28、们可以利用匈牙利算法实现求解牙利算法实现求解.它将指派问题中的系数构成它将指派问题中的系数构成一个矩阵,利用矩阵上简单的行和列变换,结合一个矩阵,利用矩阵上简单的行和列变换,结合 解的判定条件,实现求解(见文献解的判定条件,实现求解(见文献2).目录下页返回上页结束DVDDVD在线租赁第二个问题的求解在线租赁第二个问题的求解问题二的分析问题二的分析尽量小,会员满意度最大尽量小,会员满意度最大.经营成本和会员的满意度是被考虑的两个相互经营成本和会员的满意度是被考虑的两个相互制约的重要因素制约的重要因素.在忽略邮寄成本的前提下,经营在忽略邮寄成本的前提下,经营成本主要体现为成本主要体现为DVD的数
29、量的数量.我们主要考虑在会员我们主要考虑在会员向网站提供需求信息,且满足一定要求的前提下,向网站提供需求信息,且满足一定要求的前提下,对给定数量对给定数量DVD进行分配决策,使得进行分配决策,使得DVD的数量的数量目录下页返回上页结束DVD,否则不进行租赁,否则不进行租赁.没有预定的没有预定的DVD对其满意度的贡献为对其满意度的贡献为0.假设按照公历月份进行的租赁业务,即会员假设按照公历月份进行的租赁业务,即会员无论两次租赁还是一次租赁,必须在当月内完成无论两次租赁还是一次租赁,必须在当月内完成DVD的租与还的租与还.同时假设网站对其会员进行一次同时假设网站对其会员进行一次租赁业务时,只能向其
30、提供租赁业务时,只能向其提供3张该会员已经预定的张该会员已经预定的 经观察,可以认为在线订单中每个会员的预定经观察,可以认为在线订单中每个会员的预定DVD的表示偏好程度的数字反映了会员对所预定的表示偏好程度的数字反映了会员对所预定不同不同DVD的满意程度,且当会员租到其预定排序的满意程度,且当会员租到其预定排序为为1,2,3的三张的三张DVD时,满意度达到时,满意度达到100%.会员会员目录下页返回上页结束 利用层次分析法,对此满意指数的合理性进利用层次分析法,对此满意指数的合理性进行了简单分析行了简单分析.进行求解进行求解.该问题要求根据现有的该问题要求根据现有的100种种DVD的数量和的数
31、量和当前需要处理的当前需要处理的1000位会员的在线订单,制定分位会员的在线订单,制定分配策略,使得会员达到最大的满意度配策略,使得会员达到最大的满意度.因而我们因而我们认为只需对这些认为只需对这些DVD进行一次性分配,使得会员进行一次性分配,使得会员的总体满意度达到最大的总体满意度达到最大.为此考虑建立优化模型为此考虑建立优化模型,目录下页返回上页结束0,1,ijjixji 将将第第 种种DVDDVD不不分分配配给给第第 个个会会员员将将第第 种种DVDDVD分分配配给给第第 个个会会员员 如下:如下:(1 21000;1,2,100)ijxij ,我们定义我们定义.即即jn不超过相应的现有
32、数量不超过相应的现有数量个会员对第个会员对第表示第表示第1000 100ijCc ij令令种种DVD问题二的模型及求解问题二的模型及求解的满意指数矩阵的满意指数矩阵.(1,2,100)jnj 表示第表示第 j 种种DVD的现有数量的现有数量.显然,对每种显然,对每种DVD,要求分配的总量要求分配的总量目录下页返回上页结束10001,1,2,.,ijjixnj 100100,1,2,.,1,2,.,100ijijxcij 1 10 00 00 0,100130,1,2,.,1000ijjxi 或或又根据假设,网站只向会员提供其预定的又根据假设,网站只向会员提供其预定的DVDDVD,进行分配进行分
33、配.故引入约束故引入约束进一步,对每个会员每次租赁只能获得进一步,对每个会员每次租赁只能获得3 3张其张其不为不为0时,才可能进行时,才可能进行ijc即只有当满意指数即只有当满意指数预定的预定的DVD或不能得到,有或不能得到,有目录下页返回上页结束在上述约束的前提下,我们追求会员的总体在上述约束的前提下,我们追求会员的总体会员的最大满意指数为会员的最大满意指数为10+9+827,1000个个为了更好地表示满意度,我们将目标转化为为了更好地表示满意度,我们将目标转化为1000 10011ijijijc x满意指数和满意指数和 达到最大,显然每个达到最大,显然每个10002727000.会员最大的
34、满意指数和为会员最大的满意指数和为用百分数表示的满意度为:用百分数表示的满意度为:1000 100111max27000ijijijwc x,目录下页返回上页结束由此,可得问题二的由此,可得问题二的0-1整数线性规划模型如下:整数线性规划模型如下:1000 100111001100011max2700030,1,2,.,1000,1,2,.,.,1,2,.,1,2,.,10001,1,2,.,1,ijijijijijijjiijijijwc xxzixnjs txcijxij 1 10 00 0 1 10 00 00 0,或或1 10 00 00 0,2,.,10001,1,2,.,izi 或
35、或 1 10 00 00 0,目录下页返回上页结束配方案(见表配方案(见表3).会员全都得到了会员全都得到了3张预定的张预定的DVD.根据所得的根据所得的0-1整数线性规划模型,利用整数线性规划模型,利用LINGO软件进行求解,我们得到了一组最优分软件进行求解,我们得到了一组最优分该组最优解其目标函数会员总体最大满意该组最优解其目标函数会员总体最大满意度为度为91.56%,只有,只有6人未成功租赁(如:前人未成功租赁(如:前30名会员中名会员中C0008被分配到被分配到DVD),其余),其余994个个目录下页返回上页结束五、非线性规划模型五、非线性规划模型即非线性规划问题即非线性规划问题.前面
36、介绍了线性规划问题,即目标函数和约束条前面介绍了线性规划问题,即目标函数和约束条件都是线性函数的规划问题,但在实际工作中,还件都是线性函数的规划问题,但在实际工作中,还常常会遇到另一类更一般的规划问题,即目标函数常常会遇到另一类更一般的规划问题,即目标函数和约束条件中至少有一个是非线性函数的规划问题和约束条件中至少有一个是非线性函数的规划问题,目录下页返回上页结束事实上,客观世界中的问题许多是非线性事实上,客观世界中的问题许多是非线性的,给予线性大多是近似的,是在作了科学的,给予线性大多是近似的,是在作了科学的假设和简化后得到的的假设和简化后得到的.为了利用线性的为了利用线性的知识,许多非线性
37、问题常进行线性化处理知识,许多非线性问题常进行线性化处理.但在实际问题中,有一些是不能进行线性化但在实际问题中,有一些是不能进行线性化处理的,否则将严重影响模型对实际问题处理的,否则将严重影响模型对实际问题近似的可依赖型近似的可依赖型.目录下页返回上页结束由于非线性规划问题在计算上常是困难的,由于非线性规划问题在计算上常是困难的,理论上的讨论也不能像线性规划那样给出简洁理论上的讨论也不能像线性规划那样给出简洁的结果形式和全面透彻的结论的结果形式和全面透彻的结论.这点又限制了非这点又限制了非线性规划的应用,所以,在数学建模时,要进线性规划的应用,所以,在数学建模时,要进行认真的分析,对实际问题进
38、行合理的假设、行认真的分析,对实际问题进行合理的假设、简化,首先考虑用线性规划模型,若线性近似简化,首先考虑用线性规划模型,若线性近似误差较大时,则考虑用非线性规划误差较大时,则考虑用非线性规划.目录下页返回上页结束非线性规划问题的标准形式为:非线性规划问题的标准形式为:min ()()0,1,2,.()0,1,2,ijf xgxims thxjr其中,其中,为为 维欧式空间维欧式空间 中的向量,中的向量,nx()f xnR为目标函数,为目标函数,为约束条件为约束条件.且且(),()ijg x h x()f x(),()ijg x h x中至少有一个是非线性函数中至少有一个是非线性函数.目录下
39、页返回上页结束非线性规划模型按约束条件可分为以下三类:非线性规划模型按约束条件可分为以下三类:等式约束非线性规划模型等式约束非线性规划模型:min()nf xxR min()s.t.()0,1,2,jf xh xjr 无约束非线性规划模型:无约束非线性规划模型:目录下页返回上页结束 不等式约束非线性规划模型:不等式约束非线性规划模型:针对上述三类非线性规划模型,其常用求解的基针对上述三类非线性规划模型,其常用求解的基min()s.t.()0,1,2,if xg xim 本思路可归纳如下:本思路可归纳如下:目录下页返回上页结束但求解但求解 往往是很困难的往往是很困难的.求出最优解求出最优解 ,x
40、()f x(下降迭代法)寻找,该方法的基本步骤如下:(下降迭代法)寻找,该方法的基本步骤如下:所以往往根据目标函数的特征采用搜索的方法所以往往根据目标函数的特征采用搜索的方法1)无约束的非线性规划问题无约束的非线性规划问题()f x若目标函数若目标函数的形式简单,可以通过的形式简单,可以通过0()f x 求解方程求解方程(表示函数的梯度)表示函数的梯度)()f x 目录下页返回上页结束止迭代,用止迭代,用 来近似问题的最优解,否则转至来近似问题的最优解,否则转至.kx从从 出发,沿方向出发,沿方向 ,按某种方法确定步长按某种方法确定步长 ,kxkdk()()kkkkf xdf x令令 ,然后置
41、,然后置 ,返回,返回1kkkkxxd1kk0 x0k 适当选取初始点适当选取初始点,令,令kx按某种规则确定按某种规则确定处的搜索方向处的搜索方向.使得:使得:kx检验检验 是否满足停止迭代的条件,如是,则停是否满足停止迭代的条件,如是,则停目录下页返回上页结束线性规划可以用一维搜索方法求得最优解,一维搜线性规划可以用一维搜索方法求得最优解,一维搜最常用的搜索方法就是最速下降法最常用的搜索方法就是最速下降法.在下降迭代算法中,搜索方向起着关键的作在下降迭代算法中,搜索方向起着关键的作用,而当搜索方向确定后,步长又是决定算法好坏用,而当搜索方向确定后,步长又是决定算法好坏的重要因素的重要因素.
42、非线性规划只含一个变量,即一维非非线性规划只含一个变量,即一维非索方法主要有进退法和黄金分割法索方法主要有进退法和黄金分割法.二维的非线性二维的非线性规划也可以像解线性规划那样用图形求解规划也可以像解线性规划那样用图形求解.对于二对于二维非线性规划,使用搜索方法是要用到梯度的概念,维非线性规划,使用搜索方法是要用到梯度的概念,目录下页返回上页结束约束问题求解约束问题求解.近的方法将非线性规划问题化为线性规划问题近的方法将非线性规划问题化为线性规划问题.2)2)只有等式约束的非线性规划问题通常可用消只有等式约束的非线性规划问题通常可用消元法、拉格朗日乘子法或反函数法,将其化为无元法、拉格朗日乘子
43、法或反函数法,将其化为无3)3)具有不等式约束的非线性规划问题解起来很具有不等式约束的非线性规划问题解起来很复杂,求解这一类问题,通常将不等式化为等式复杂,求解这一类问题,通常将不等式化为等式约束,再将约束问题化为无约束问题,用线性逼约束,再将约束问题化为无约束问题,用线性逼规划问题可用拉格朗日方法求解规划问题可用拉格朗日方法求解.下面介绍一个简单的非线性规划问题的例下面介绍一个简单的非线性规划问题的例子,其中的一些约束条件是等式,这类非线性子,其中的一些约束条件是等式,这类非线性目录下页返回上页结束客户的速度客户的速度.例例7 7 (石油最优储存方法)有一石油运输公(石油最优储存方法)有一石
44、油运输公司,为了减少开支,希望作了节省石油的存储司,为了减少开支,希望作了节省石油的存储空间空间.但要求存储的石油能满足客户的要求但要求存储的石油能满足客户的要求.为为简化问题,假设只经营两种油,各种符号表示简化问题,假设只经营两种油,各种符号表示的意义如表的意义如表4 4所示所示.其中供给率指石油公司供给其中供给率指石油公司供给目录下页返回上页结束表表4 各种符号表示意义表各种符号表示意义表第第i种油的存储量种油的存储量第第i种油的价格种油的价格第第i种油的供给率种油的供给率第第i种油的每单位的存储费用种油的每单位的存储费用第第i种油的每单位的存储空间种油的每单位的存储空间总存储公式总存储公
45、式iaibihitTix目录下页返回上页结束由由历史数据得到的经验公式为历史数据得到的经验公式为 :且提供数据如表且提供数据如表5 5所示:所示:1 11 12 2221212121 122min(,)22s.t.(,)abhxabh xf x xxxg x xt xt xT 目录下页返回上页结束表表5 数据表数据表已知总存储空间已知总存储空间24T,石油的石油的种类种类1930.5022450.24ibihiti目录下页返回上页结束代入数据后得到的模型为:代入数据后得到的模型为:121212122720min(,)0.250.10s.t.2424f x xxxxxxx 121212(,)(,
46、)(,)L xxf xxg xxT 拉格朗日函数的形式为:拉格朗日函数的形式为:模型求解:模型求解:目录下页返回上页结束即即:121212122720(,)0.250.102424L x xxxxxxx 21122212270.2520200.104024240LxxLxxLxx 对对 求各个变量的偏导数,并令它们求各个变量的偏导数,并令它们12(,)L x x等于零,得等于零,得:目录下页返回上页结束 解这个线性方程组得:解这个线性方程组得:12125.0968,3.4516,0.3947,(,)12.71xxf x x 从而可得最小值是从而可得最小值是12.71.12 710 394713
47、 10间由间由24变为变为25时,最优值会由时,最优值会由12.71变为变为表示当约束条件右边的值增大一个单位后,相表示当约束条件右边的值增大一个单位后,相应目标函数值的增加值。比如说:如总存储空应目标函数值的增加值。比如说:如总存储空目录下页返回上页结束六、多目标规划模型六、多目标规划模型 许多实际问题中,衡量一个方案的好坏标准许多实际问题中,衡量一个方案的好坏标准往往不止一个往往不止一个.例如设计一个导弹,既要射程例如设计一个导弹,既要射程最远,又要燃料最省,还要精度最高最远,又要燃料最省,还要精度最高.这一类这一类问题统称为多目标最优化问题或多目标规划问题统称为多目标最优化问题或多目标规
48、划问问题题.我们先来看一个生产计划的例子我们先来看一个生产计划的例子.目录下页返回上页结束能耗不得超过能耗不得超过160t标准煤标准煤其它数据如下表其它数据如下表:布料布料生产数量生产数量(m/h)利润利润(元(元/m)最大销售量最大销售量(m/周)周)能耗能耗(t/km)A14004000.150.1540000400001.21.2A25105100.130.1351000510001.31.3A33603600.200.2030000300001.41.4问每周应生产三种布料各多少问每周应生产三种布料各多少m,才能使该厂,才能使该厂的利润最高,而能源消耗最少?的利润最高,而能源消耗最少?
49、,该厂两班生产,每周生产时间为,该厂两班生产,每周生产时间为80h,23A A,例例8 8 (生产计划问题)某厂生产三种布料(生产计划问题)某厂生产三种布料1A,目录下页返回上页结束解解 设该厂每周生产布料设该厂每周生产布料 的小时数为的小时数为123,A A A ,总利润为,总利润为 (元),总能耗为(元),总能耗为123,x x x11()yf x(t标准煤),其中标准煤),其中 ,22()yfx123(,)Tx x xx=1122123123123min()min()80.1.2 0.41.3 0.511.4 0.361600100,0100,0250/3yfxyfxxxxs txxxx
50、xx 则上述问题的数学模型为则上述问题的数学模型为目录下页返回上页结束1112322123()0.15 4000.13 5100.20 360()1.2 0.41.3 0.510.36 1.4yfxxxyfxxx xx12min()min()min().()0,1,2,pifffst gimxxxx其中,其中,.12(,)Tnmx xxx=R2p 有有显然这是一个多目标线性规划问题显然这是一个多目标线性规划问题.一般的多目一般的多目 标规划问题都可写成如下的形式:标规划问题都可写成如下的形式:目录下页返回上页结束从从而得到满意解的方法而得到满意解的方法.主要区别在于:目标函数不止一个,而是主要