优化建模与LINGO第01章
优化建模与LINGO
0 ⋅ x1 + 2 ⋅ x2 ≤ 12
x1 ≥ 0 , x2 ≥ 0
产品 资源 设备/台时 设备 台时 原料A/吨 原料 吨 原料B/吨 原料 吨 单位赢利/万元 单位赢利 万元
甲 3 1 0 3
乙 2 0 2 5
资源量 18 4 12
ห้องสมุดไป่ตู้
相应的数学模型
max z = 3 x 1 + 5 x 2
3 x 1 + 2 x 2 ≤ x ≤ 1 2 x 2 x 1 ≥ 0 , x 2 18 4 ≤ 12 ≥ 0
表3
单位运价 销 地 产 地 甲 乙 销 量 21 51 1700 25 51 1100 7 37 200 2000 1000
A
B
C
产 量
确定调运方案就是确定从不同产地到各个销地的运输量 运输量。 分析 确定调运方案就是确定从不同产地到各个销地的运输量。 表示这些要找的运量。 设 x ij 表示这些要找的运量。 分别表示从甲地调往A、 、 三地的运量 三地的运量。 即x 11 、 x 12 、 x 13分别表示从甲地调往 、B、C三地的运量。 x 21 、 x 22 、 x 23分别表示从已地调往 、B、C三地的运量。 分别表示从已地调往A、 、 三地的运量 三地的运量。
定价问题的数学模型
max z = 3 x1 + 5 x2
s.t.
3 x 1 + 2 x 2 ≤ 18 x ≤4 1 2 x 2 ≤ 12 x1 ≥ 0, x 2 ≥ 0
min W = 18 y1 + 4 y 2 + 12 y3 3 y1 + y 2 ≥ 3 s.t .2 y1 + 2 y3 ≥ 5 y , y , y ≥ 0 1 2 3
优化模型讲解 附LINGO程序
数学建模培训讲义——优化模型与LINGO软件二○一一年七目录1 静态优化模型 (1)1.1 最优生产计划问题 (1)1.2 存贮模型 (2)2 线性规划模型 (2)2.1 LINGO简介 (2)2.2 配料问题 (3)2.3 练习:运输问题 (4)3 整数规划模型 (4)3.1 电影院广告问题 (4)3.2 练习:生产计划问题 (5)4 0-1规划 (5)4.1 背包问题 (5)4.2 矿井选址问题 (6)4.3 练习:混合泳接力队的选拔问题 (7)5 LINGO应用 (8)5.1 变量定界函数 (8)5.2 集合 (8)5.3 帆船生产问题 (9)5.4 派生集合 (11)5.5 通过电子表格(Excel)文件传递数据 (12)5.6 旅游问题 (13)优化模型与LINGO 软件优化问题是计划管理工作中经常要碰到的问题,比如,出门旅行就要考虑选择什么样的路线和交通工具,才能使旅行费用最省或使所花费的时间最少。
在工厂技术、经济管理和科学研究等领域中,最优化问题就更多,一个工厂要怎样安排产品的生产,才能获得最大利润?一个设计部门要考虑在满足结构强度的要求下怎样使得所用的材料的总重量最轻?比较有效的求解优化问题的一个方法使数学规划,它包括:线性规划、非线性规划、整数规划、动态规划和多目标规划等等。
用数学建模的方法来处理一个优化问题的时候,首先要确定优化的目标是什么,寻求的决策是什么,决策受到哪些条件的限制(如果有限制的话),然后用数学工具(变量、函数等)表示它们。
1 静态优化模型静态优化模型,归结为微积分中的函数极值问题,可以直接用微分法求解。
1.1 最优生产计划问题一计算机公司引进A 、B 两种类型的芯片技术,总耗资400000元,准备生产这两种类型的芯片出售。
生产一片A 芯片的成本为1950元,而市场售价为3390元,生产一片B 芯片的成本为2250元,而市场售价3990元。
由于市场存在竞争,每售出一片A 芯片,A 芯片就会降价0.1元,并且令B 芯片降低0.04元,每售出一片B 芯片,B 芯片就会降价0.1元,并且令A 芯片降价0.03元。
(外校培训课件)优化模型与LINGO软件求解——LINGO学习集全资料文档
NLP: 非线性规划
(2)最优状态 全局全优
(3)最优目标值: 10
约束条件情况最优解: (1)约束总个数X4=100,按方法4 (2)非线性个数X6=50, 按方法6
25
[例1] 下料(截割问题)及求解
❖ [模型-2]的求解结果:
最优目标函 数值:90
x1=40, 按方法1截割 x2=20, 按方法2截割 x6=30. 按方法6截割
26
[例1] 下料(截割问题)及求解
❖ 求解结果分析:
在追求“余料最少”目标时,“≥”约 束把条件放宽了。
修正方法:改为“=”约束
模型(1)的求解结果: 最优目标(余料)=10m
(x4,x6)=(100,50) 耗用原料 = 150根
是否符 合原问 题要求?
不符合。 (1)问题出在哪里? (2)如何修正?
2
一、竞赛题中的优化模型总结
❖ 2.优化类竞赛题小结 ❖ 在全国数模竞赛中,优化问题是出现频率最
高的一类竞赛题。 ❖ 从1992-20××年全国大学生数模竞赛试题
的解题方法统计结果来看,优化模型共出现 了17次以上,占到了50%。 ❖ 即每两道竞赛题中就有一道涉及到利用优化 理论来建模和求解。
3
一、竞赛题中的优化模型总结
题
13
(三) 典型数学规划问题及求解
❖ 例1 下料(截割)问题及求解 ❖ 例2 运输问题及求解 ❖ 例3 非线性规划问题及求解 ❖ 例4 分派(选址)问题及求解 ❖ 例5 动态规划问题及求解
14
[例1] 下料(截割)问题及求解
1. 问题提出 2. 建立数学模型 3. 编写LINGO求解程序 4. 执行程序 5. 获得计算结果并分析 6. 修正模型,重新求解 7.课后作业 8.编程小结
1Lingo优化软件及其应用-第一章 P20
1 走近Lingo
建立一个Lingo模型-(最大化利润)
简单的模型, 简单的求解!
来个复杂的!
Lingo求解模型的例子--运输问题 求解模型的例子--运输问题 求解模型的例子--
假设Wireless Widget公司有 个货栈向 个销售商供应货物, 公司有6个货栈向 个销售商供应货物, 假设 公司有 个货栈向8个销售商供应货物 每一个货栈的供应量是有限的, 每一个货栈的供应量是有限的,而每个销售商的需求量必须 得到满足. 得到满足.该公司要决定如何调运货栈的货物满足销售商以 使总运输最小. 使总运输最小.
Lingo系列优化软件包就给我们提供了理想的选择!
想在竞技型游戏中一展身手么? 想在竞技型游戏中一展身手么? 想找到游戏中各种道具的最优组 合么? 合么?
(星际争霸中的优化问题 星际争霸中的优化问题) 星际争霸中的优化问题
如此规模的模型,你如何轻松搞定? 如此规模的模型,你如何轻松搞定?
[目标]取得胜利(广义) 目标]取得胜利(广义) 星际中能源约束条件: 星际中能源约束条件: 能源约束条件 星际中的R(resource)分为两种,水晶矿和瓦斯气,只有取 分为两种, 星际中的 分为两种 水晶矿和瓦斯气, 得足够的这两种资源我们才能做到有米之炊, 得足够的这两种资源我们才能做到有米之炊,作为元帅的 我们才能扩展自己的领土, 我们才能扩展自己的领土,打造自己的科技建筑和生产自 己的部队. 己的部队. 星际中武装斗争约束条件 星际中武装斗争约束条件 武装斗争 星际中的取胜是通过摧毁对手的 有生力量和建筑来完成的, 有生力量和建筑来完成的,所以 星际中的战斗单位的建造就显得 尤为重要. 尤为重要.各个种族有自己的不 同的战斗单位.非常复杂, 同的战斗单位.非常复杂,下表 介绍了他们的攻击防御的特点
数学建模优化模型与Lingo Lindo软件
型
表二 :5名队员4中泳姿百米平均成绩
队员
甲
乙
丙
丁
戊
蝶泳 66.8 57.2
78
70
67.4
仰泳 75.6
66
67.8
74.2
71
蛙泳
87
66.4 84.6
69.6
83.8
自由泳 58.6
53
59.4
57.2
62.4
线 性 规
·划
模 型
决策变量:引入0-1变量xij 若选择队员 i 参加泳姿 j
例-1 某服务部门一周中每天需要不同数目的
雇员:周一到周四每天至少需要50人,周五
需要80人,周六和周日需要90人。现规定应
聘者需连续工作5天,试确定聘用方案,即周
线
一到周日每天聘用多少人,是5在满足需要的 前况下聘用总人数最少?
性
优化模型
规
决策变量:记周一到周日每天聘用的人数分别为X1,
划
X2,X3,X4,X5,X6 ,X7,这就是问题的决策变量。
的比赛,记 xij=1,否则记 xij=0.这就是问题的决策变量, 共20个。
目标函数:当队员队员 i 入选泳姿 j 的比赛时,
cij xij表示他的成绩,否则cij xij=0。于是接力队的成绩
可以表示为:
45
f
cij xij
j1 i1
约束条件:根据组成接力队的要求, xij 应该满足下面
方案。显然这不是解决问题的最好方法,随着问题
线
规模的变大,穷举法的计算量是无法接受的。
性
可以用0-1变量表示一个队员是否入选接力队, 从而建立这个问题的0-1规划模型.
优化建模与LINGO软件
无 约 束 优 化
线 性 规 划
非 线 性 规 划
整 数 规 划
组 合 优 化
不 确 定 规 划
多 目 标 规 划
目 标 规 划
网 络 优 化
动 态 规 划
2017/8/29
6
优化问题的一般形式
2017/8/29
18
LINDO和LINGO软件能求解的优化模型
优化模型
连续优化
整数规划(IP)
线性规划 (LP)
二次规划 (QP)
非线性规划 (NLP) LINGO
LINDO
2017/8/29
19
LINDO/LINGO软件的求解过程
LINDO/LINGO预处理程序
1. 确定常数 2. 识别类型
2017/8/29
7
无约束优化:最优解的分类和条件
给定一个函数 f(x),寻找 x* 使得 f(x*)最小,即
Min f ( x) 其中 x ( x1 , x2 ,, xn )T n x
局部最优解
全局最优解 x
f ( x* ) ( f x1 ,, f xn )T 0
2017/8/29
13
SAS(统计分析)软件的优化功能
Mathematical programming • Linear, mixed-integer and integer programming. • Network flow optimization: min- or max-cost flow with side constraints; maximum flow; shortest or longest path. • Simplex-based and interior-point methods available. • General nonlinear programming: unconstrained and constrained (boundary, linear and nonlinear constraints). • Solution of least squares minimization and linear complementarity problems. • Quadratic programming. • Post-optimality analysis (linear): right-hand-side and price sensitivity analysis, range analysis and parametric programming.
优化建模与LINGO
优化建模
集合及其属性
• QUARTERS集合的属性 • DEM • RP
• OP
•
INV
• 1
• 2
• 3
• 4
• QUARTERS集合
优化建模
集合元素及集合的属性确定的所有变量
优化建模
LINGO软件的安装
安装过程: 与LINDO for Windows类似. 安装文件20M多一点,需要接受安装协议、选择安装 目录(缺省C:\LINGO9)。 安装完成前,在出现的对话框(如图)中选择缺省的建
模(即编程)语言,系统推荐的是采用LINGO。安装后
可通过“LINGO|Options|File Format”命令修改缺省
优化建模
从LINDO 到 LINGO LINGO 9.0功能增强,性能稳定,解答结果可靠。与
LINDO相比,LINGO 软件主要具有两大优点:
• 除具有LINDO的全部功能外,还可用于求解非线
性规划问题,包括非线性整数规划问题;
• 内置建模语言,允许以简练、直观的方式描述较 大规模的优化问题,所需的数据可以以一定格式 保存在独立的文件中。
用DEM,RP,OP,INV分别表示需求量、正常生产的产量、 加班生产的产量、库存量,则DEM,RP,OP,INV对每个 季度都应该有一个对应的值,也就说他们都应该是一 个由4个元素组成的数组,其中DEM是已知的,而 RP,OP,INV是未知数。
优化建模
问题的模型(可以看出是LP模型 ) 目标函数是所有费用的和 约束条件主要有两个: 1)能力限制: RP ( I ) 40, I 1,2,3,4 2)产品数量的平衡方程:
•LINGO中模型以“MODEL:”开始,以“END” 结
Lingo教程(一)
NLP
IP
分枝定界管理程序
ILPBiblioteka INLPIQP线性优化求解程序
非线性优化求解程序
图 3-2 LINDO/LINGO 软件的求解过程
第 38 页 共 112 页
谢金星:MATLAB 优化工具箱和 LINDO/LINGO 优化软件
第 39 页 共 112 页
2、识别优化模型的类型:对等式约束的预处理完成后,预处理程序能自动识别优化模型 的类型,从而决定下一步采用什么求解程序。如果模型是连续线性规划,下一步直接调用线 性优化求解程序;如果模型是连续非线性规划,下一步直接调用非线性优化求解程序;如果 模型是整数规划,则下一步直接调用分枝定界管理程序。
优化模型
连续优化
整数规划
线性规划
二次规划
非线性规划
LINDO
LINGO
图 3-1 LINDO 和 LINGO 软件能求解的优化模型
第 37 页 共 112 页
谢金星:MATLAB 优化工具箱和 LINDO/LINGO 优化软件
第 38 页 共 112 页
此外,LINDO 系统公司还提供了 LINDO/LINGO 软件与其它开发工具(如 C++和 Java 等语言)的接口软件 LINDO API(Application Program Interface),因此使 LINDO 和 LINGO 软件还能方便地融入到用户应用软件的开发中去。
线性优化求解程序通常使用单纯形算法,对高级版本的 LINDO/LINGO 软件,为了能解 大规模问题,也可以使用内点算法。非线性优化求解程序采用的是顺序线性规划法(Sequential Linear Programming, 简称 SLP),即通过迭代求解一系列线性规划来达到求解非线性规划的 目的。非线性优化求解程序也可以使用其他算法,如广义既约梯度法(Generalized Reduced Gradient, 简称 GRG),并可以自动选用多个初始点开始进行迭代,以便增加找到全局最优解 的可能性。分枝定界管理程序用于管理整数规划问题的分枝定界算法,在运行中还要不断调 用线性优化求解程序和非线性优化求解程序进行定界处理。
优化建模与LINGO
建筑工地的位置(用平面坐标 表示 距离单位: 用平面坐标a, 表示, 例2 建筑工地的位置 用平面坐标 b表示,距离单位: 公里)及水泥日用量 及水泥日用量d(吨 下表给出 下表给出. 公里 及水泥日用量 吨)下表给出.有两个临时料场位 日储量各有20吨 于P (5,1), Q (2, 7),日储量各有 吨.从A, B两料场分别 日储量各有 两料场分别 向各工地运送多少吨水泥,使总的吨公里数最小. 向各工地运送多少吨水泥,使总的吨公里数最小.两个 新的料场应建在何处,节省的吨公里数有多大? 新的料场应建在何处,节省的吨公里数有多大? 1 1.25 1.25 3 2 8.75 0.75 5 3 0.5 4.75 4 4 5.75 5 7 5 3 6.5 6 6 7.25 7.75 11
开始, (3)数据段 )数据段(DATA):以 "DATA:" 开始 "ENDDATA" : 结束,对集合的属性(数组 输入必要的常数数据. 数组)输入必要的常数数据 结束,对集合的属性 数组 输入必要的常数数据. 属性) 常数列表);" 格式为: 属性 常数列表 格式为:"attribute(属性 = value_list(常数列表 常数列表(value_list)中数据之间可以用逗号","分开,也 中数据之间可以用逗号" 分开 分开, 常数列表 中数据之间可以用逗号 可以用空格分开(回车等价于一个空格 如上面对DEM的 回车等价于一个空格),如上面对 可以用空格分开 回车等价于一个空格 如上面对 的 赋值也可以写成" 赋值也可以写成"DEM=40 60 75 25;". ;
(1) (2) (3) (4)
每个语句 以 " ;" 结束
附录A 优化建模语言—LINGO使用基础
在集set1中定义了两个属性X和Y。
X的三个值是1、2和3,Y的三个 值是4、5和6。也可采用如下例
子中的复合数据声明(data
statement)实现同样的功能。
例A.7 sets:
set1/A,B,C/: X,Y;
endsets data: X,Y=1 4 25
LINGO在为对象指定值时,首先在n个对 象的第1个索引处依次分配数值列中的 前n个对象,然后在n个对象的第2个索
3 6;
enddata
引处依次分配数值列中紧接着的n个对
象,……,以此类推。
模型的数据部分—参数
在数据部分也可以指定一些标量变量(scalar variables)。当一个标量变 量在数据部分确定时,称之为参数。看一例,假设模型中用利率8.5%作 为一个参数,就可以象下面一样输入一个利率作为参数。 例8 data: interest_rate = .085; enddata 也可以同时指定多个参数。 例9 data:
当你在windows下开始运行LINGO系统时,会得到类似以下的一个窗口:
外层是主框架窗口, 包含了所有菜单命 令和工具条,其它 所有的窗口将被包 含在主窗口之下。 在主窗口内的标题 为LINGO Model – LINGO1的窗口是 LINGO的默认模型 窗口,建立的模型 都要在该窗口内编 码实现。
MonthYearM..MonthYearN
Oct2001..Jan2002
Oct2001,Nov2001,Dec2001,Jan2002
③ 集成员不放在集定义中,而在随后的数据部分来定义。 例A.3 !集部分; sets: students:sex,age; endsets !数据部分; data: students,sex,age= John 1 16 Jill 0 14 Rose 0 17 Mike 1 13; enddata
优化问题与LINGO软件1 PPT
距离 粮站
粮库
B1 B2 B3
A1
12 24 8
A2
30 12 24
解:设A1,A2调运到三个粮站的大米分别为x1, x2, x3, x4, x5, x6吨。
题设量可总到下表:
粮距库离及运量粮站 B1
B2
B3
库 存 量
A1
12
24
8
x1 x2 x3 4
A2
30
12
24
x4 x5 x6 8
需要量
245
【例4】 选址问题
某公司拟定在,汉 在口 武 ,汉昌阳建立专,拟 卖议 店中
有7个地址 :中商 (A1),亚贸 (A2),司门(口 A3),武广 (A4),步 行街 (A5),二十一世 (A6纪 ),汉商 (A7),并规定 :武昌至2多 个,汉 口 汉 阳1至 个,少 若 选 Ai ,投 资 bi元,每 年 可 获 ci元 利 , 总投资不b超 元,过 问如何选择地址的使年公利司润?最大
ci为 单 位 成 本 ,
4
3
j
j
mifn e c j x j j1
xi di
j 1 i1
i 1
j1
生4个产月成总本
j
j
xi di
i1
i 1
第共jj+31个个1月,月2的,3的库库存存费量 费
s.t.
0
xi
4
4
xi di
i1
i1
100且为正
整
数i
4到个本月月总总生生产产量量等 大于于等总于销销售售量量
100
【例6】阶段生产问题
某公司生产某产品,最大生产能力为100单位,每单位 存储费2元,预定的销售量与单位成本如下:
04-优化软件LINGO的使用
受到限制,总变量数不超过300个,整数变量数不超过30个,非线性变 量数不超过30个,总约束数不超过150个。这在我们目前的使用过程中, 基本上是足够。
22
LINDO 公司软件产品简要介绍
LINDO: Linear INteractive and Discrete Optimizer LINGO: Linear INteractive General Optimizer What’s Best!: (SpreadSheet e.g. EXCEL) (V6.1) (V8.0) (V7.0)
而且执行速度很快;Lingo实际上还是一种建模语言,即使对优
显然,人数应该是正整数,所以
xi 0
i
1 2,7 ,
问题归结为在以上约束条件下求解min z的整数规划模 型。由于目标函数和约束条件关于决策变量都是线性函数, 所以这是一个整数线行规划模型。
15
线 性 规 划 模 型
例2 某班准备从5名游泳队员中选择4人组成接力队,参加 学校的4*100混合泳接力比赛。5名队员4中泳姿的百米平均成 绩如下表所示,问应该如何选拔队员组成接力队?
纯整数规划(PIP), 混合整数规划(MIP) 一般整数规划,0-1(整数)规划
11
常 用 的 优 化 模 型 形 式
(1)线性规划(LP)的一般形式
目标函数和所有的约束条件都是变量的线性函数。
min f x ci xi , i 1, 2,...,n
i 1
n
ai xi bi , bi , bi , s.t. i 1 x 0 ,i 1, 2 ,...,n i
优化问题与LINGO软件1
在很多实际问题中,解题思想和运输问题同出一辙, 也就是说我们可以用运输模型解决其他问题.
9
2014-8-30
数学建模教案
Good good study, day day up !
优化问题与LINGO软件
【例3】 分派问题
变量xi只取0 设有n件工作B1, B2, … Bn,分派给n人A1, A2, … An去 和1,故建立 做,每人只做一件工作且每件工作只派一个人去做,设Ai 的模型也称 完成Bj的工时为cij,问应如何分派才能完成全部工作的 0-1规划. 总工时最少. 1 工作B j 分派给Ai 去做 解 : 设xij 否则 0 n n min f cij xij 每件工作只派1人 i 1 j 1
数学建模教案
Good good study, day day up !
优化问题与LINGO软件
优化问题与 LINGO软件
1
2014-8-30
数学建模教案
Good good study, day day up !
优化问题与LINGO软件
(一) 线性规划问题概述
2
2014-8-30
数学建模教案
Good good study, day day up !
产量限制
需量限制
运量非负
8
数学建模教案
Good good study, day day up !
优化问题与LINGO软件
假设产销平衡:
m n i 1 j 1
a b
i 1 i j 1
m
n
j
min f cij x ij n i 1,..., m x ij a i , 1 j m s .t . x ij b j j 1,..., n i 1 i 1,..., m; j 1,..., n x ij 0
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
优化建模
局部最优解与整体最优解
f(x)
x1
* o x2
x
• 局部最优解 (Local Optimal Solution, 如 x1 ) • 整体最优解 (Global Optimal Solution, 如 x2 )
优化建模
优化模型的 简单分类
数学规划 连 续 优 化 离 散 优 化
min s.t.
整数规划
模型(IP)
优化建模
0-1规划 -混合泳接力队的选拔
例1.5: 5名候选人的百米成绩
蝶泳 仰泳 蛙泳 自由泳 甲 1’06”8 1’15”6 1’27” 58”6 乙 57”2 1’06” 1’06”4 53” 丙 1’18” 1’07”8 1’24”6 59”4 丁 1’10” 1’14”2 1’09”6 57”2 戊 1’07”4 1’11” 1’23”8 1’02”4
min
j 1 i 1 2
2
6
cij [( x j ai ) 2 ( y j bi ) 2 ]1 / 2
s.t.
c
j 1 6 i 1
ij d i ,
i 1,...,6
c
ij e j ,
j 1,2
i ci1 (料场 A) c i 2 (料场 B)
1 3 0
2 5 0
聘用方案
优化建模
x1 x2 x5 x6 x7 50 xi Z , x1 x2 x3 x6 x7 50 即为非负整数 x1 x2 x3 x4 x7 50 x1 x2 x3 x4 x5 80 x2 x3 x4 x5 x6 90 x3 x4 x5 x6 x7 80
f ( x) hi ( x) 0, i 1,...,m g j ( x ) 0, j 1,...,l xD
n
• 线性规划(LP) 目标和约束均为线性函数 • 非线性规划(NLP) 目标或约束中存在非线性函数 二次规划(QP) 目标为二次函数、约束为线性 • 整数规划(IP) 决策变量(全部或部分)为整数 整数线性规划(ILP),整数非线性规划(INLP) 纯整数规划(PIP), 混合整数规划(MIP) 一般整数规划,0-1(整数)规划
p2 b2 a21 x1 a22 x2 , b2 , a21 , a22 0, a22 a21
优化建模
目标
x1 , x2
利润最大
max z( x1, x2 ) ( p1 q1) x1 ( p2 q2 ) x2
(100-x1-0.1 x2-2)x1 +(280-0.2x1-2x2-3)x2 =98 x1 + 277 x2 - x12 - 0.3 x1 x2 - 2x22 =
优化建模
整数规划问题对应的松弛问题
取消整数规划中决策变量为整数的限制(松弛),对 应的连续优化问题称为原问题的松弛问题 整数规划问题 最优解
目标函数
获利 24×3x1 获利 16×4 x2 每天获利 Max z 72x1 64x2 原料供应
x1 x2 50
12x1 8x2 480
约束条件
劳动时间 加工能力 非负约束
3x1 100 x1 , x2 0
线性 规划 模型 (LP)
优化建模
模型分析与假设
比 xi对目标函数的 例 “贡献”与xi取值 性 成正比 xi对约束条件的 “贡献”与xi取值 成正比 xi对目标函数的 可 “贡献”与xj取值 加 无关 性 xi对约束条件的 “贡献”与xj取值 无关 连续性 xi取值连续
解
优化建模
二次规划模型-例1.2:产销计划问题
某厂生产两个牌号的同一种产品,如何确定产量使利润最大
假设A 假设B
产销平衡
牌号 甲 乙
产量 x1 x2
成本 价格 q1 p1 q2 p2
p随x (两种牌号)增加而减小,呈线性关系
p1 b1 a11 x1 a12 x2 , b1 , a11 , a12 0, a11 a12
假设:料场 和工地之间 有直线道路
1)现有 2 料场,位于 A (5, 1), B (2, 7), 记(xj,yj),j=1,2, 日储量 ej 各有 20 吨。
目标:制定每天的供应计划,即从 A,
B 两料场分别 向各工地运送多少吨水泥,使总的吨公里数最小。
优化建模
决策变量:ci j (料场j到工地i的 运量)~12维 线性规划模型(LP) 用例中数 据计算, 最优解为
线性规划模型
A1,A2每公斤的获利是与各 自产量无关的常数 每桶牛奶加工出A1,A2的数量 和时间是与各自产量无关的常 数 A1,A2每公斤的获利是与相 互产量无关的常数 每桶牛奶加工出A1,A2的数量和 时间是与相互产量无关的常数 加工A1,A2的牛奶桶数是实数
优化建模
模型求解
x1 x2 50
决策变量:周一至周日每天(新)聘用人数 x1, x2,x7 目标函数:7天(新)聘用人数之和 约束条件:周一至周日每天需要人数
设系统已进入稳态(不是开始的几周) 连续工作5天 周一工作的应是(上)周四至周一聘用的 x4 x5 x6 x7 x1 50
min s.t. z x1 x2 x3 x4 x5 x6 x7 x1 x4 x5 x6 x7 50
有效集(Active Set)方法
• LP是QP的特例(只需令所有二次项为零即可) • 可以用QP的算法解QP(如: 有效集方法)
优化建模
线性规划模型的解的几种情况
线性规划问题
有可行解(Feasible)
无
可 行 解 (Infeasible)
有 最 优 解 ( Optimal )
无
最 优 (Unbounded)
图解法
约 l2 : 12x1 8x2 480 束 12x1 8x2 480 l4 条 3x1 100 l3 : 3x1 100 件 c l4 : x1 0, l5 : x2 0 x1 , x2 0 目标 函数
l1 : x1 x2 50
x2 A
l1 B l2 C Z=3600 l3
约束
x1 + x2 ≤100 x1 ≤ 2 x2 x1 , x2 ≥ 0
二次规划模型(QP)
若还要求产量为整数,则是整数二次规划模型(IQP)
优化建模
非线性规划模型-例1.3:选址问题
某公司有6个建筑工地,位置坐标为(ai, bi) (单位:公里), 水泥日用量di (单位:吨)
i a b d 1 1.25 1.25 3 2 8.75 0.75 5 3 0.5 4.75 4 4 5.75 5 7 5 3 6.5 6 6 7.25 7.75 11
优化建模
优化模型的简单分类和求解难度
优化
连续优化
整数规划
线性规划
二次规划
非线性规划
问题求解的难度增加
优化建模
2. 优化问题的建模实例
优化建模
线性规划模型-例1.1: 奶制品生产计划
1桶 牛奶 或 12小时 8小时 每天: 50桶牛奶 3公斤A1 获利24元/公斤
4公斤A2
获利16元/公斤
时间480小时 至多加工100公斤A1
如何选拔队员组成4100米混合泳接力队? 丁的蛙泳成绩退步到1’15”2;戊的自由泳成绩进 步到57”5, 组成接力队的方案是否应该调整? 穷举法:组成接力队的方案共有5!=120种。
优化建模
0-1规划模型 cij(秒)~队员i 第j 种泳姿的百米成绩
cij j=1 j=2 j=3 j=4 i=1 66.8 75.6 87 58.6 i=2 57.2 66 66.4 53 i=3 78 67.8 84.6 59.4 i=4 70 74.2 69.6 57.2 i=5 67.4 71 83.8 62.4
f ( x)
优化建模
s.t.
hi ( x) 0, i 1,...,m g j ( x) 0, j 1,...,l
整数规划问题的分类
• 整数线性规划(ILP) 目标和约束均为线性函数 • 整数非线性规划(NLP) 目标或约束中存在非线性函数 • 纯(全)整数规划(PIP) 决策变量均为整数 • 混合整数规划(MIP) 决策变量有整数,也有实数 • 0-1规划 决策变量只取0或1
最优解 凸多边形的某个顶点
求解LP的基本思想
凸多面体的某个顶点
思路:从可行域的某一顶点开始,只需在有限多个 顶点中一个一个找下去,一定能得到最优解。
LP的通常解法是单纯形法(G. B. Dantzig, 1947)
优化建模
LP其他算法
内点算法(Interior point method)
• 20世纪80年代人们提出的一类新的算法——内点算法 • 也是迭代法,但不再从可行域的一个顶点转换到另一个 顶点,而是直接从可行域的内部逼近最优解。
优化建模
优化问题的一般形式
优化问题三要素:决策变量;目标函数;约束条件 目标函数 约 束 条 件
min s.t.
决策变量
f ( x) hi ( x) 0, i 1,...,m g j ( x ) 0, j 1,...,l xD
n
• 无约束优化(没有约束)与约束优化(有约束) • 可行解(只满足约束)与最优解(取到最优值)
决策变量: ci j,(xj,yj)~16维
s.t.
c
j 1 6 i 1
ij d i ,
i 1,...,6
非线性规划模型
(NLP)
c
ij e j ,
j 1,2
优化建模
整数规划 - 例1.4: 聘用方案