Upload
callum-rocha
View
166
Download
10
Embed Size (px)
DESCRIPTION
西南科技大学网络教育系列课程. 数学建模与数学实验. 第 4 讲 线性规划. 主讲教师 : 彭煜 鲜大权 杨学南. 西南科技大学理学院数学系. 两个引例. 问题一 : 任务分配问题:某车间有甲、乙两台机床,可用于加工三种工件。假定这两台车床的可用台时数分别为 800 和 900 ,三种工件的数量分别为 400 、 600 和 500 ,且已知用三种不同车床加工单位数量不同工件所需的台时数和加工费用如下表。问怎样分配车床的加工任务,才能既满足加工工件的要求,又使加工费用最低?. - PowerPoint PPT Presentation
Citation preview
西南科技大学网络教育
第 4讲 线性规划
数学建模与数学实验
西南科技大学理学院数学系
主讲教师 : 彭煜 鲜大权 杨学南
西南科技大学网络教育系列课程
西南科技大学网络教育
问题一 : 任务分配问题:某车间有甲、乙两台机床,可用于加工三种工件。假定这两台车床的可用台时数分别为 800和 900 ,三种工件的数量分别为 400 、 600 和 500 ,且已知用三种不同车床加工单位数量不同工件所需的台时数和加工费用如下表。问怎样分配车床的加工任务,才能既满足加工工件的要求,又使加工费用最低?
单位工件所需加工台时数 单位工件的加工费用 车床类 型 工件 1 工件 2 工件 3 工件 1 工件 2 工件 3
可用台时数
甲 0.4 1.1 1.0 13 9 10 800
乙 0.5 1.2 1.3 11 12 8 900
两个引例
西南科技大学网络教育
解 设在甲车床上加工工件 1 、 2 、 3 的数量分别为 x1 、 x2
、 x3 ,在乙车床上加工工件 1 、 2 、 3 的数量分别为 x4 、 x5
、 x6 。可建立以下线性规划模型:
654321 8121110913min xxxxxxz
6,,2,1,0
9003.12.15.0
8001.14.0
500
600
400x
..
654
321
63
52
41
ix
xxx
xxx
xx
xx
x
ts
i
解答
西南科技大学网络教育
问题二: 某厂每日 8 小时的产量不低于 1800 件。为了进行质量控制,计划聘请两种不同水平的检验员。一级检验员的标准为:速度 25 件 / 小时,正确率 98% ,计时工资 4 元 / 小时;二级检验员的标准为:速度 15 小时 / 件,正确率 95% ,计时工资 3 元 / 小时。检验员每错检一次,工厂要损失 2 元。为使总检验费用最省,该工厂应聘一级、二级检验员各几名?
解 设需要一级和二级检验员的人数分别为 x1 、 x2 人 ,则应付检验员的工资为:
2121 24323848 xxxx 因检验员错检而造成的损失为:
2121 1282)%5158%2258( xxxx
西南科技大学网络教育
故目标函数为:212121 3640)128()2432(min xxxxxxz
约束条件为:
0,0
1800158
1800258
1800158258
21
2
1
21
xx
x
x
xx
西南科技大学网络教育
线性规划模型:21 3640min xxz
0,0
15
9
4535
..
21
2
1
21
xx
x
x
xx
ts
解答
西南科技大学网络教育
1. 线性规划的标准形式:
xminz= )(xf
..ts )(xgi 0 ( ),,2,1 mi
其中目标函数)(xf和约束条件中)(xgi都是线性函数
mi n f = c x
s. t . A x = b ( 1) x 0
这 里 A = ( ija ) m, n , x = T 21 nxxx
b = T 21 nbbb , c = nccc 21
用单纯法求解时,常将标准形式化为:
2. 线性规划的基本算法——单纯形法
线性规划的基本算法——单纯形法
西南科技大学网络教育
例 min z = 10x1 + 9x2
s.t.6x1 + 5x2 ≤ 60 10x1 + 20x2 ≥ 150 x1 ≤ 8 x1, x2 ≥ 0
引入松弛变量 x3, x4, x5, 将不等式化为等式 , 即单纯形标准形 : min z = 10x1 + 9x2
s.t.6x1 + 5x2 + x3 = 60 10x1 + 20x2 - x4 = 150 x1 + x5 = 8
xi≥ 0 (i = 1,2,3,4,5)
系数矩阵为: 6 5 1 0 0 A = 10 20 0 -1 0 = (P1 P2 P3 P4 P5) 1 0 0 0 1 b = (60, 150, 8 ) T
显然 A的秩 ran(A)=3, 任取 3个线性无关的列向量 ,如 P3 P4 P5称为一组基 , 记为 B. 其余列向量称为非基 , 记为 N .
西南科技大学网络教育
于是 f = cBxB + cNxN , Ax = BxB + NxN = b, 则 xB = B-1b-B-1NxN , f = cBB-1b + (cN – cBB-1N)xN
令非基变量xN = 0, 解得基变量xB = B1b, 称(xB, xN)为基解.基解的所有变量的值都非负,则称为基可行解,此时的基称为可行基.
若可行基进一步满足 : cN – cBB-1N≥0, 即 : cBB-1N - cN≤0则对一切可行解 x, 必有 f(x) ≥ cBB-1b, 此时称基可行解 x = (B-1b, 0) T
为最优解 . 3. 最优解的存在性定理
将 A的列向量重排次序成 A = (B, N), 相应 x = (xB, xN) T, c = (cB, cN)基对应的变量 xB称为基变量 , 非基对应的变量 xN称为非基变量 .
定理 1 如果线性规划 (1)有可行解,那么一定有基可行解 .
定理 2 如果线性规划 (1)有最优解,那么一定存在一个基可行解 是最优解 .
西南科技大学网络教育
4. 基可行解是最优解的判定准则因为 f = cBB-1b + (cN – cBB-1N)xN,即 f - 0•xB + (cBB-1N- cN )xN = cBB-1b若基B=(1P,2P,,mP), 非基N=( 1mP, 2mP,,nP),
令j=Bc1BjP-jc,j=m+1,m+2, ,n ,则 (1) 可写成
min f
s.t. Bx + 1BNNx =
1Bb
f + 0· Bx +
n
mjjjx
1
= Bc1Bb
x 0称为(1)式的典式.定理3 设(1x,2x,,mx)是规划 (1) 的一个可行基,B是对应的基阵,如果典式中的1,2,,m都不大于零,即对应的1m0,2m0,,n0,则基(1x,2x,,mx)对应的基可行解0X =
0
1bB 是最优解.
西南科技大学网络教育
令1Bb =
m
2
1
,1BN=
nmmmmm
nmm
nmm
,2,1,
,22,21,2
,12,11,1
5. 基可行解的改进
线性规划(1)的典式变为:min f
s.t. ix +
n
mjjijx
1
= i i=1,2, ,mf + 0·Bx +
n
mjjjx
1
=Bc1Bb
x 0
西南科技大学网络教育
定理4 设(1x, 2x,, mx)是规划 (1) 的一个可行基,
B是对应的基阵,如果存在 km >0,使
1) km,1 , km,2 ,, kmm, 中至少有一个大于零;2) 所有的i>0,i=1,2, ,m
则一定存在另一个可行基,它对应的基可行解使目标函数值更小.
令0=
kmi
i
kmi ,0,
min = kml
l
,,则把lx从原有的基中取出来,
把kmx加进后得到的(1x,2x,,lx ,kmx,1lx,,mx)仍是基,即是所要找的新基.
改进方法:
西南科技大学网络教育
用 MATLAB 优化工具箱解线性规划
min z=cX bAXts ..
1 、模型:
命令: x=linprog ( c , A, b )
2 、模型: min z=cX
bAXts ..
beqXAeq
命令: x=linprog ( c , A , b , Aeq,beq)注意:若没有不等式: 存在,则令 A=[ ] , b=[ ].bAX
西南科技大学网络教育
3 、模型: min z=cX
bAXts ..
beqXAeq VLB≤X≤VUB
命令: [1] x=linprog ( c , A , b , Aeq,beq, VLB , VUB )
[2] x=linprog ( c , A , b , Aeq,beq, VLB , VUB, X0 )
注意: [1] 若没有等式约束 : , 则令 Aeq=[ ], beq=[ ].
[2] 其中 X0 表示初始点
beqXAeq
4 、命令: [x,fval]=linprog(…)
返回最优解x及x处的目标函数值 fval.
西南科技大学网络教育
解 编写 M 文件 xxgh1.m 如下:
c=[-0.4 -0.28 -0.32 -0.72 -0.64 -0.6];
A=[0.01 0.01 0.01 0.03 0.03 0.03;0.02 0 0 0.05 0 0;0 0.02 0 0 0.05 0;0 0 0.03 0 0 0.08];
b=[850;700;100;900];
Aeq=[]; beq=[];
vlb=[0;0;0;0;0;0]; vub=[];
[x,fval]=linprog(c,A,b,Aeq,beq,vlb,vub)
例 1 m a x 654321 6.064.072.032.028.04.0 xxxxxxz 85003.003.003.001.001.001.0.. 654321 xxxxxxts
70005.002.0 41 xx
10005.002.0 52 xx
90008.003.0 63 xx
6,2,10 jx j
西南科技大学网络教育
x = 1.0e+004 *
3.5000
0.5000
3.0000
0.0000
0.0000
0.0000
fval = -2.5000e+004
西南科技大学网络教育
例2 321 436min xxxz 120.. 321 xxxts
301x 500 2x 203x
解 : 编写 M 文件 xxgh2.m 如下: c=[6 3 4]; A=[0 1 0]; b=[50]; Aeq=[1 1 1]; beq=[120]; vlb=[30,0,20]; vub=[]; [x,fval]=linprog(c,A,b,Aeq,beq,vlb,vub)
3
2
1
)436(minxxx
z
3
2
1
200
30
xxx
50
120
010
111 ..
3
2
1
x
x
x
ts
x = 30.0000
50.0000
40.0000fval = 490.0000
西南科技大学网络教育
S.t.
Xz 8121110913min
900
800
3.12.15.0000
00011.14.0X
500
600
400
100100
010010
001001
X , 0
6
5
4
3
2
1
x
x
x
x
x
x
X
改写为:
例 3 问题一的解答 问题
西南科技大学网络教育
编写 M 文件 xxgh3.m 如下 :
f = [13 9 10 11 12 8];A = [0.4 1.1 1 0 0 0 0 0 0 0.5 1.2 1.3];b = [800; 900];Aeq=[1 0 0 1 0 0 0 1 0 0 1 0 0 0 1 0 0 1];beq=[400 600 500];vlb = zeros(6,1);vub=[];[x,fval] = linprog(f,A,b,Aeq,beq,vlb,vub)
西南科技大学网络教育
结果 :x = 0.0000 600.0000 0.0000 400.0000 0.0000 500.0000fval =1.3800e+004
即在甲机床上加工 600 个工件 2, 在乙机床上加工 400 个工件1 、 500 个工件 3 ,可在满足条件的情况下使总加工费最小为 13800 。
西南科技大学网络教育
例 2 问题二的解答 问题
2
13640minx
xz
s.t. )45(352
1
x
x
改写为:
西南科技大学网络教育
编写 M 文件 xxgh4.m 如下:
c = [40;36];A=[-5 -3];b=[-45];Aeq=[];beq=[];vlb = zeros(2,1);vub=[9;15]; % 调用 linprog 函数:[x,fval] = linprog(c,A,b,Aeq,beq,vlb,vub)
西南科技大学网络教育
结果为:x = 9.0000 0.0000fval =360
即只需聘用 9 个一级检验员。 注:本问题应还有一个约束条件: x1 、 x2 取整数。故
它是一个整数线性规划问题。这里把它当成一个线性规划来解,求得其最优解刚好是整数: x1=9 , x2=0 ,故它就是该整数规划的最优解。若用线性规划解法求得的最优解不是整数,将其取整后不一定是相应整数规划的最优解,这样的整数规划应用专门的方法求解。
西南科技大学网络教育
投资的收益和风险一、问题提出 市场上有n种资产is(i=1,2……n)可以选择,现用数额为M的相当大的资金作一个时期的投资。这n种资产在这一时期内购买is的平均收益率为ir,风险损失率为iq,投资越分散,总的风险越小,总体风险可用投资的is中最大的一个风险来度量。 购买is时要付交易费,(费率ip),当购买额不超过给定值iu时,交易费按购买iu计算。另外,假定同期银行存款利率是0r,既无交易费又无风险。(0r=5%)已知n=4时相关数据如下:
is ir(%) iq(%) ip(%) iu(元)S1 28 2.5 1 103
S2 21 1.5 2 198
S3 23 5.5 4.5 52
S4 25 2.6 6.5 40
试给该公司设计一种投资组合方案,即用给定达到资金M,有选择地购买若干种资产或存银行生息,使净收益尽可能大,使总体风险尽可能小。
西南科技大学网络教育
基本假设:1. 投资数额M相当大,为了便于计算,假设M=1;2.投资越分散,总的风险越小;
3.总体风险用投资项目is中最大的一个风险来度量;4.n种资产Si之间是相互独立的;
5.在投资的这一时期内, ri,pi,qi,r0为定值,不受意外因素影响;6.净收益和总体风险只受 ri,pi,qi影响,不受其他因素干扰。
二、基本假设和符号规定
符号规定:Si ——第i种投资项目,如股票,债券ri,pi,qi ----分别为Si的平均收益率,风险损失率,交易费率
ui ----Si的交易定额 0r -------同期银行利率xi -------投资项目Si的资金 a -----投资风险度Q ----总体收益 ΔQ ----总体收益的增量
西南科技大学网络教育
三、模型的建立与分析1. 总体风险用所投资的 Si 中最大的一个风险来衡量 , 即 max{ qixi|i=1 , 2,…n}2.购买 Si所付交易费是一个分段函数,即 pixi xi>ui
交易费 = piui xi≤ ui
而题目所给定的定值 ui(单位:元)相对总投资M很小, piui更小,可以忽略不计,这样购买 Si的净收益为(ri-pi)xi
3.要使净收益尽可能大,总体风险尽可能小,这是一个多目标规划模型:
目标函数 MAX
n
iiii xpr
0
)(
MINmax{ qixi}
约束条件
n
i
ii xp0
)1( =M
xi≥0 i=0,1,…n
4. 模型简化:
西南科技大学网络教育
c.投资者在权衡资产风险和预期收益两方面时,希望选择一个令自己满意的投资组合。因此对风险、收益赋予权重s(0<s≤1),s称为投资偏好系数.
模型3 目标函数:min s{max{qixi}} -(1-s)
n
i
iii xpr0
)(
约束条件
n
iiixp
0
)1( =M, xi≥0 i=0,1,2,…n
b. 若 投 资 者 希 望 总 盈 利 至 少 达 到 水 平 k 以 上 , 在 风 险 最 小 的 情 况 下 寻 找 相 应 的 投 资 组 合 。模 型 2 固 定 盈 利 水 平 , 极 小 化 风 险 目 标 函 数 : R = m in { m a x { q ix i} }
约 束 条 件 :
n
i
iii xpr0
)( ≥ k,
Mxp ii )1( , x i≥ 0 i= 0, 1, … n
a. 在 实 际 投 资 中 , 投 资 者 承 受 风 险 的 程 度 不 一 样 , 若 给 定 风 险 一 个 界 限 a, 使 最 大 的 一 个风 险 q ix i/M ≤ a, 可 找 到 相 应 的 投 资 方 案 。 这 样 把 多 目 标 规 划 变 成 一 个 目 标 的 线 性 规 划 。模 型 1 固 定 风 险 水 平 , 优 化 收 益
目 标 函 数 : Q=MAX
1
1
)(n
iiii xpr
约 束 条 件 : M
xq ii ≤ a
Mxp ii )1( , x i≥ 0 i= 0, 1, … n
西南科技大学网络教育
四、模型 1 的求解 模型 1为: minf = (-0.05, -0.27, -0.19, -0.185, -0.185) (x0 x1 x2 x3 x 4 )
T
x0 + 1.01x1 + 1.02x2 +1.045x3 +1.065x4 =1s.t. 0.025x1 ≤ a
0.015x2 ≤ a 0.055x3 ≤ a 0.026x4≤ a
xi ≥ 0 (i = 0,1,…..4)
由于 a 是任意给定的风险度,到底怎样给定没有一个准则,不同的投资者有不同的风险度。我们从 a=0 开始,以步长△ a=0.001 进行循环搜索,编制程序如下:
西南科技大学网络教育
a=0;
while(1.1-a)>1
c=[-0.05 -0.27 -0.19 -0.185 -0.185];
Aeq=[1 1.01 1.02 1.045 1.065]; beq=[1];
A=[0 0.025 0 0 0;0 0 0.015 0 0;0 0 0 0.055 0;0 0 0 0 0.026];
b=[a;a;a;a];
vlb=[0,0,0,0,0];vub=[];
[x,val]=linprog(c,A,b,Aeq,beq,vlb,vub);
a
x=x'
Q=-val
plot(a,Q,'.') , axis([0 0.1 0 0.5]) , hold on
a=a+0.001;
end
xlabel('a'),ylabel('Q')
西南科技大学网络教育
a = 0.0030 x = 0.4949 0.1200 0.2000 0.0545 0.1154 Q = 0.1266a = 0.0060 x = 0 0.2400 0.4000 0.1091 0.2212 Q = 0.2019a = 0.0080 x = 0.0000 0.3200 0.5333 0.1271 0.0000 Q = 0.2112a = 0.0100 x = 0 0.4000 0.5843 0 0 Q =0.2190a = 0.0200 x = 0 0.8000 0.1882 0 0 Q =0.2518
a = 0.0400 x = 0.0000 0.9901 0.0000 0 0 Q =0.2673
计算结果:
西南科技大学网络教育
五、 结果分析
4. 在 a=0.006 附近有一个转折点,在这一点左边,风险增加很少时,利润增长 很快。在这一点右边,风险增加很大时,利润增长很缓慢,所以对于风险和 收益没有特殊偏好的投资者来说,应该选择曲线的拐点作为最优投资组合, 大约是 a*=0.6%, Q*=20% ,所对应投资方案为 : 风险度 收益 x0 x1 x2 x3 x4
0.0060 0.2019 0 0.2400 0.4000 0.1091 0.2212
3.曲线上的任一点都表示该风险水平的最大可能收益和该收益要求的最小风险。对于不同风险的承受能力,选择该风险水平下的最优投资组合。
2. 当投资越分散时,投资者承担的风险越小,这与题意一致。即 : 冒险的投资者会出现集中投资的情况,保守的投资者则尽量分散投资。
1. 风险大,收益也大。
西南科技大学网络教育
实验作业
某厂生产甲乙两种口味的饮料 , 每百箱甲饮料需用原料 6千克 , 工人 10 名 , 可获利 10万元 ; 每百箱乙饮料需用原料 5千克 , 工人 20 名 , 可获利 9万元 .今工厂共有原料 60千克 , 工人 150 名 , 又由于其他条件所限甲饮料产量不超过 8百箱 . 问如何安排生产计划 , 即两种饮料各生产多少使获利最大 . 进一步讨论 : 1) 若投资 0.8万元可增加原料 1千克 , 问应否作这项投资. 2) 若每百箱甲饮料获利可增加 1万元 , 问应否改变生产计划 .