优化模型

30
优优优优 优优优优 教教教教1.优优优优优优优优优优优优优优优优优优优优优优优优优优优优2.优优优优优优优优优 , 优优优优 优优优优优优优优优 一。 教教教教 : 1.优优优优优优优优优优优优优优优优优优2.优优优优优优优优优优优优优优优优3.优优优优优优优优优优优优优优优优4.优优优优优优优优优优优优优优优

description

优化模型. 教学目的: 初步认识优化模型的基本形式及掌握线性规划模型的建模及求解。 通过实例建模并求解 , 熟练掌握一些数学软件的使用。. 教学内容 : 简单介绍优化模型的基本概念和基本类型。 重点介绍优化模型中的线性规划模型。 线性规划模型建模实例及求解的实现。 布置本次课的练习与上机实验内容。. - PowerPoint PPT Presentation

Transcript of 优化模型

Page 1: 优化模型

优化模型优化模型教学目的:

1.初步认识优化模型的基本形式及掌握线性规划模型的建模及求解。

2.通过实例建模并求解 , 熟练掌握一些数学软件的使用。

教学内容 :

1.简单介绍优化模型的基本概念和基本类型。

2.重点介绍优化模型中的线性规划模型。

3.线性规划模型建模实例及求解的实现。

4.布置本次课的练习与上机实验内容。

Page 2: 优化模型

1. 引言 在工程技术、经济管理、科学研究和日常生活等诸多领域中,人们经常遇到的一类决策问题:在一系列客观或主观限制条件下,寻求所关注的某个或多个指标达到最大(或最小)的决策。例如,生产计划要按照产品工艺流程和顾客需求,制定原料、零件、部件等订购、投产的日程和数量,尽量降低成本使利润最高;运输方案要在满足物资需求和装载条件下安排从各供应点到各需求点的运量和路线,使运输总费用最低。

它们的特点就是:在若干可能的方案中寻求某种意义下的最优方案。数学上称为最优化问题 , 而研究处理这种问题的方法叫最优化的方法。

Page 3: 优化模型

优化模型是一类既重要又特殊的数学模型,而优化建模方法是也一种特殊的数学建模方法。优化模型一般有下面三个要素:

(1) 决策变量,它通常是该问题要求解的那些未知量。

( 2 )目标函数,通常是该问题要优化(最大或最小)的那个目标的数学表达式,它是决策变量的函数。

( 3 )约束条件,由该问题对决策变量的限制条件给出。

Page 4: 优化模型

优化模型从数学上可表示成如下一般形式:

opt (opt 表示最优化 (optimize) 的意思 )

s.t. ( )Ⅰ

( )Ⅱ

如果 均为线性函数,则上述模型称为线性规划

( Linear Programming, 简记为 LP ),否则称为非线性规划 (NLP)

( )z f x

( ) 0ih x

( ) 0jg x

1,2,3, , ei m

1, 2, ,e e ej m m m m

( ), ( ), ( )i jf x h x g x

Page 5: 优化模型

问题求解的难度增加

上图是优化模型的简单分类和求解难度

2. 优化模型的基本类型

Page 6: 优化模型

3.1 线性规划问题几个概念:

线性规划问题有解:指能找出一组满足约束条件的向量,并称这组为问题的可行解。

线性规划问题无解:指不存在可行解或最优趋向无限大。

可行域:指全部可行解组成的集合。

最优解:指可行域中使目标函数值达到最优的可行解。

3. 线性规划 ( 目标函数和约束条件都是线性函数 )

Page 7: 优化模型

3.2 线性规划模型的解的几种情况

线性规划问题

有可行解 无可行解

有最优解 无最优解

Page 8: 优化模型

3.3 求解一般方法: (1) 图解法:对于只含 2 个变量的线性规划问题,可通过在平面上作图的方法求解。步骤如下:

①在平面上建立直角坐标系;

②图示约束条件,找出可行域;

③图示目标函数,即为一直线;

④将目标函数直线沿着其法线方向向可行解域边界平移,直至与可行解域第一次相切为止,这个切点就为最优点

(2) 用 EXCEL—Solver,Matlab,LINDO/LINGO 软件实现

Page 9: 优化模型

3.4 线性规划模型的实例

例 1 家具生产的安排 家具公司生产桌子和椅子,用于生产的劳力共计 450 个工时,木材共有 4 立方米 , 每张桌子要使用 15 个工时, 0.2 立方木材售价 80 元。每张椅子使用 10 个工时, 0.05 立方木材售价 45 元。问为达到最大的收益,应如何安排生产? 分析:

1. 求什么? 生产多少桌子? x1 生产多少椅子? x2 2. 优化什么? 收益最大 Max f=80 x1+45 x2 3. 限制条件? 原料总量 0.2 x1 +0.05 x2 ≤4 劳力总数 15 x1 +10 x2 ≤450

Page 10: 优化模型

模型:以产值为目标取得最大收益 .

设:生产桌子 x1 张 , 椅子 x2 张 ,( 决策变量 ) 将目标优化为: max f=80x1+45x2

对决策变量的约束:

0.2x1+0.05x2≤4 (Ⅰ)

15x1+10x2 ≤ 450, (Ⅱ)

x1 ≥ 0, x2 ≥ 0,

Page 11: 优化模型

模型求解:( 1 )图解法(用于决策变量是 2 维)

15x1+10x2=450

x1

x2

0.2x1+0.05x2=4

Page 12: 优化模型

线性规划问题的目标函数 ( 关于不同的目标值是一族平行直线 ) 目标值的大小描述了直线离原点的远近 , 并且最优解一定在可行解集的某个极点上达到( 穿过可行域的目标直线组中最远离 ( 或接近 ) 原点的直线所穿过的凸多边形的顶点 ).

Page 13: 优化模型

( 2 )用 EXCEL—Solver 实现

①模型中的数据直接输入 EXCEL 工作表中。其中决策变量初始的值可以任意给出,它们是可变的,软件最后将给出最优解的值。 SUMPRODUCT 是 EXCEL 的一个内置函数,表示两个向量或矩阵对应元素乘积的和。

Page 14: 优化模型
Page 15: 优化模型
Page 16: 优化模型

② 引用工具——规划求解(需要工具—加载宏安装)

Page 17: 优化模型
Page 18: 优化模型
Page 19: 优化模型

( 3 )用 Matlab 实现 ------- lp 线性优化函数

线性优化问题即目标函数和约束条件均为线性函数的问题。其标准形式为:

Min

Sub.to: Ax=b

其中 (通常 ), , 均为数值矩阵。

c x nx R

0x

,m nA R m n m n ,n nb R c R

Page 20: 优化模型

max f=80 X1+45 X2

sub.to

0.2 X1+0.05 X2≤4 15 X1+10 X2 ≤ 450

X1 ≥ 0, X2 ≥ 0

化为 min f=- 80 X1- 45 X2

sub.to

0.2 X1+0.05 X2≤4 15 X1+10 X2 ≤ 450

X1 ≥ 0, X2 ≥ 0

Page 21: 优化模型

程序如下:c=[-80,-45];a=[0.2,0.05;15,10];b=[4,450];vlb=[0,0];vub=[];[x,lam]=lp(c,a,b,vlb,vub) (参数 vlb,vub 给出变量的上下边界的约束)x = 14.0000 24.0000lam = 100.0000 4.0000 0 0说明: x 解为最优解, lam 说明约束条件发挥了作用。

Page 22: 优化模型

( 4 )用 LINDO/LINGO 实现我们可以直接在下面的窗口输入 LP 模型(图( 4 )— 1 )

图( 4 )— 1 输入简单的优化模型

输入后,用鼠标单击 LINDO 软件工具栏中的图标 ,或从菜单中选择 Solve│Solve(Ctrsl+S) 命令,则 LINDO 开始编译这个模型,编译没错误马上开始求解,求解时会显示如图( 4 )— 2 所示 LINDO 求解器运行状态窗口(里面的“ Objective” 就是最优解,即: 2200 )。

Page 23: 优化模型

图( 4 )—2

Page 24: 优化模型

图( 4 )— 3

这个例子中的 LP 模型太小了,我们可能还没来得及看清( 4 )— 2 的界面,最优解就出来了,并马上弹出如图

( 4 )— 3 的对话框,这个对话框询问你是否需要作灵敏性分析,可以先选择“否 N” 按钮,这个窗口就回关闭,然后在关闭图( 4 )— 2 。如果你在屏幕上没有看到求解的结果,那么可以用鼠标选择 LINDO 的主菜单“ Window”,会发现有一个子菜单项“ Reports Window” ,这就是最终结果的报告窗口。用鼠标选择“ Window│Reports Window” ,就可以查看到窗口的内容(图( 4 )— 4 )

Page 25: 优化模型

图( 4 )— 4“LP OPTIMUM FOUND AT STEP 2” 表示单纯形法在两次迭代后得到最优解。“OBJECTIVE FUNCTION VALUE 1) 2200.000” 表示最优目标值为 2200.00

0 (在 LINDO 中目标函数所在的行总是被认为是第 1 行,这就是这里“ 1 )”的含义)。

Page 26: 优化模型

VALUE” 给出最优解中各变量的值: X1=14.000000 , X2=24.000000 “SLACK OR SURPLUS (松弛或剩余)”给出约束对应的松弛变量的值:第 2 、 3 行松弛变量均为 0 ,说明对于最优解来讲,两个约束均取等号,即都是紧约束。 “ DUAL PRICES” 给出对偶价格的值。“ NO. ITERATIONS=2” 表示用单纯形法进行了两次迭代(旋转)。

例 2 加工奶制品的生产计划( 例 1 )

例 3 服务员聘用问题(整数线性规划模型)

某服务部门一周中每天需要不同数目的雇员:周一到周四每天至少需要 50 人,周五至少需要 80 人,周六和周日至少需要 90 人,现规定应聘者需要连续工作 5 天,试确定聘用方案,即周一到周日每天聘用多少人,使在满足需要的条件下聘用总人数最少。

83p

Page 27: 优化模型

(通过例 3 主要想说明用 LINDO 求解时与例 1 的不同:一般的整数变量可用命令 GIN ( general integer 的缩写),对整数变量的说明只能放在模型的“ END” 语句之后,如图例 3—1)

图例 3—1

Page 28: 优化模型
Page 29: 优化模型

4. 学生练习与实验:1 、上机练习例 1 、 2 。2 、 ( 广告方式的选择 ) 中华家电公司推销一种新型洗衣机 ,有关数据见下表 . 销售部第一月的广告预算为 20000 元 , 要求至少有 8 电视商业节目 ,15 家报纸广告 / 电视广告费不得超过 12000 元 , 电台广播至少隔日有一次 . 现问该公司销售部应当采用怎样的广告宣传计划 , 才能取得最好的效果 ?

广告方式 广告费用 ( 元 / 次 ) 可用最高次数 / 月 期望的宣传效果 / 单位

电视台 a

( 白天 ,1 分钟 )

500 16 50

电视台 b ( 晚上 ,30 秒 )

1000 10 80

每日晨报 /( 半版 ) 100 24 30

星期日报 /( 半版 ) 300 4 40

广播电台 /(1 分钟 ) 80 25 15

Page 30: 优化模型

[参考文献][1] http://www.mathrs.net/data/upload/shuxuejianmo/kejian/14.ppt#3

[2] 边馥萍,侯文华,梁冯珍 . 数学模型方法与算法 [M].北京:高等教育出版社 .2005 , 5.

[3] 谢金星,薛毅 . 优化建模与 LINDO/LINGO 软件 [M].北京:清华大学出版社 .2005,7.[4] 王沫然 . MATLAB 5.X 与科学计算 [M].北京:清华大学出版社 .2000,5.

[5] 姜启源,谢金星,叶俊 . 数学模型(第三版) [M].北京:高等教育出版社 .2005,12.

[6] http://www.mathrs.net/data/upload/yunchouxuejiangzuo.ppt