matlab线性规划练习
MATLAB优化工具箱--线性规划-非线性规划
linprog输入参数说明: f, A, b, Aeq, beq lb,ub 边界设置 说明: 如果x(i)无边界,则 lb(i) = -inf, ub(i) = inf
6
linprog 输出参数说明: x 决策变量取值 fval 目标函数最优值
exitflag > 0 成功找到最优解 0 达到最大迭代次数也没有找到最优解 < 0 该线性规划问题不可行或者linprog计
10
fmincon函数求解形如下面的有约束非线性规 划模型
一般形式:
min f ( X ) s.t. AX b
Aeq X beq l X u c(X ) 0 ceq ( X ) 0
Matlab求解有约束非线性最小化 1.约束中可以有等式约束 2.可以含线性、非线性约束均可
数学实验
输入参数语法:
例子:某农场种植两种作物A、B,需要甲、乙两种化肥。种植 每亩作物A和作物B分别需用的化肥数,可得利润及农场现有化
肥数量如下表所示:
问在现有条件下,如何安排种植,才能使利润最大?
作物
每亩所需化肥 (百公斤)
现有化肥
AB (百公斤)
化肥
甲
23
100) 6 4
数学实验
例题建模
[x,fval,exitflag,output,lambda]=fmincon(fun,x0,...)
数学实验
输入参数的几点说明
模型中如果没有A,b,Aeq,beq,lb,ub的限制,则以空矩阵[ ]作为 参数传入; nonlcon:如果包含非线性等式或不等式约束,则将这些函数
编写为一个Matlab函数, nonlcon就是定义这些函数的程序文件名;
3
用Matlab软件求线性规划
Matlab软件
Matlab软件
结果输出如下: Optimization terminated successfully. x= 0.0000 50.0000 0.0000 f = -100.0000 当A、B、C产品的日产量分别为0件,50件,0件时, 总收益为100元/件
Matlab软件
例1
3 4
2
6 5
3
150h 200kg
每天供应原材料200kg,每天可供使用的劳动力为150h, 求各种产品的日产量为多少时,总收益最大?
Matlab软件
问题的求解:
产品A 劳动力(h/件) 7 原材料(kg/件) 4 利润 (元/kg) 4 产品B 3 4 2 产品C 资源限量 6 150h 5 200kg 3
目标函数:max(min)z=c1x1+c2x2+c3x3+…+cnxn 约束条件:a11x1+a12x2+a13x3+…+a1nxn ≤(= ≥)b1 a21x1+a22x2+a23x3+…+a2nxn ≤(=≥)b2 … … … … am1x1+am2x2+am3x3+…+amnxn ≤(= ≥)bn 非负性约束:x1 ≥0,x2 ≥0,…,xn ≥0
车床 类 型 甲 乙 单位工件所需加工台时 数 可用台 时数 800 900 单位工件的加工费用
工件1
0.4 0.5
工件2
1.1 1.2
工件3
1.0 1.3
工件1
13 11
工件2
9 12
工件3
10 8
Matlab软件
解
设在甲车床上加工工件1、2、3的数量分别为
matlab练习
《数学实验》在线习题1一、单项选择题(将选择答案写在答题纸上,每小题2分共20分)1.在MA TLAB 命令窗口中键入命令,Vname=prod(7:9)/prod(1:3),可计算组合数!6!3!939⨯=C ,如果省略了变量名Vname ,MA TLAB 表现计算结果将用下面的哪一变量名做缺省变量名AA )ans ;B )pi ;C )NaN ;D )eps2.宝石切割问题中,石料左右长度、前后长度、上下高度分别为a 1、a 2、a 3,即a 1×a 2×a 3(cm 3),而精品尺寸为b 1×b 2×b 3(cm 3)。
操作时,同向切割连续两次再旋转刀具。
某一切割方案的切割面积依次为:2a 1a 2→ 2a 1b 3 → 2b 2b 3,则这一切割方案为BA )左右→前后→上下;B )上下→前后→左右;C )前后→上下→左右;D )前后→ 左右→上下 3.机场指挥塔位置:北纬30度35.343分,东经104度2.441分,在MA TLAB 中用变量B=[30 35.343]表达纬度,L=[104 2.441]表达经度。
将数据转化为以度为单位的实数,下面正确的语句是A ) =B(1)+B(2)/60,Q=L(1)+L(2); B) P = 60*B(1) + B(2),Q=60*L(1)+L(2) C ) P = B(1) + B(2)/60,Q=L(1)+L(2)/60; D) P=B(1)+B(2),Q=L(1)+ L(2);。
4.用MA TLAB 随机产生60个1到365之间的正整数,应该使用下面的哪一条命令AA ) fix(365*rand(1,60));B )1+fix(366*rand(1,60));C )1+fix(364*rand(1,60));D )1+fix(365*rand(1,60))5.用A 、B 、C 表示三角形的三条边,用MA TLAB 表示条件“任意两条边之和大于第三条边”的逻辑表达式应该用下面哪一行语句AA ) A+B>C | A+C>B | B+C>A ; B ) A+B>=C | A+C>=B | B+C>=A ; C ) A+B>=C&A+C>=B&B+C>=A ;D ) A+B>C & A+C>B & B+C>A ; 6.在MA TLAB 命令窗口中,键入命令syms x ; y=int(6*x^4)。
7.1 用MATLAB求解线性规划
b=zeros(m,n) c=ones(m,n) d=eye(m,n)
产生一个m行、n列的零矩阵 产生一个m行、n列的元素 全为1的矩阵 产生一个m行、n列的单位矩阵
MATLAB (matrix1)
Page 35
2、矩阵中元素的操作
(1)矩阵A的第r行:A(r,:) (2)矩阵A的第r列:A(:,r) (3)取矩阵A的第i1~i2行、第j1~j2列构成新矩阵:A(i1:i2, j1:j2) (4)以逆序提取矩阵A的第i1~i2行,构成新矩阵:A(i2:-1:i1,:) (5)删除A的第i1~i2行,构成新矩阵:A(i1:i2,:)=[ ] (6)删除A的第j1~j2列,构成新矩阵:A(:, j1:j2)=[ ] (7)将矩阵A和B拼接成新矩阵:[A B];[A;B]
a.\b=[b1/a1,b2/a2,…,bn/an] a.^b=[a1^b1,a2^b2,…,an^bn]
Page 32
1、矩阵的建立 ( 1)将矩阵的元素用方括号括起来,按矩阵行的 顺序输入各元素,同一行的各元素之间用空格或逗 号分隔,不同行的元素之间用分号分隔。在输入矩 阵时,按Enter键也表示开始一新行. 例:键入命令: A=[1 2 3;4 5 6;7 8 9] A=[1,2,3;4,5,6;7,8,9] 输出结果: A = 1 2 3 4 5 6 7 8 9
主要内容
一、 变量与函数 二、 数组与矩阵 三、 举例 四、 线性规划求解
Page 14
一、变量与函数
Page 15
Matlab是以矩阵为基本运算单元的,它的大部分 运算或命令都是在矩阵运算的意义下执行的。而构
成矩阵的基本单元是数字。
258×369
一、变量与函数
1、变量 命名规则是:
(完整word版)用matlab解决线性规划问题的几道题
一、用MATLAB 求解线性规划问题(1)编写的M 文件为:f=[-1;-1]A=[1 -2;1 2]b=[4,8][x,feval]=linprog(f,A,b,[],[],zeros(2,1))所求解为:x 1=6,x 2=1;min f=-7(2) 编写的M 文件为:f=[-4;-3]A=[3 4;3 3;4 2]b=[12;10;8][x,feval]=linprog(f,A,b,[],[],zeros(1,2))所求得的解为:x 1=0.8,x 2=2.4;max f=10.4(3)(4) 编写的M 文件为:f=[-1;-3;3]Aeq=[1 1 2;-1 2 1]beq=[4;4][x,feval]=linprog(f,[],[],Aeq,beq,zeros(3,1))所求得的结果为:x 1=4/3,x 2=8/3,x 3=0;max f=28/3。
12121212min 24s.t.28,0f x x x x x x x x ì=--ïïïï-?镲íï+?ïïï³ïî121212121243max 3412..3310428,0f x x xx s t x x x x x x ì=+ïïïï+?ïïï+?íïïï+?ïïï³ïî12312312313min 3s.t.211423210(1,2,3)j f x x x x x xx xx x x x j =--ìïïïï-+?ïïïï-++?íïï-+=ïïïïï?ïî123123123max 3s.t.24240(1,2,3)j f x x x xx x x x x x j =+-ìïïïï++=ïïí-++=ïïïïï?ïî(5)(选做)先做如下转化:% x=u1-v1,,y=u2-v2,,z=u3-v3% min f=u1+u2+u3+v1+v2+v3% s.t. u1+u2-v1-v2<=1% 2*u1+u3-2*v1-v3=3则编写的M 文件为:f=[1;1;1;1;1;1]A=[1 1 0 -1 -1 0]b=1Aeq=[2 0 1 -2 0 -1]beq=3[x,feval]=linprog(f,A,b,Aeq,beq,zeros(6,1))所求得的结果为:u 1=1.0936,u 2=0,u 3=0.8192,v 1=0,v 2=0.9302,v 3=0Min f =2。
线性规划Matlab求解
结果为: x= 9.0000 0.0000 fval =360 即只需聘用9个一级检验员。
注:本问题应还有一个约束条件:x1、x2取整数。故它
是一个整数线性规划问题。这里把它当成一个线性规划来 解,求得其最优解刚好是整数:x1=9,x2=0,故它就是该 整数规划的最优解。若用线性规划解法求得的最优解不是 整数,将其取整后不一定是相应整数规划的最优解,这样 的整数规划应用专门的方法求解。
线性规划的基本算法——单纯形法
1.线性规划的标准形式:
min z = f (x)
x
s.t . g i (x ) 0 ( i 1,2,, m)
其中目标函数 f (x) 和约束条件中gi (x) 都是线性函数
2. 线性规划的基本算法——单纯形法
用单纯法求解时,常将标准形式化为:
c min f = x b s.t. Ax = x
x1 30 0 x2 50
x 3 20
s.t .
1 0
解: 编写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)
x1 1 x2 1 0 x 3 x1 3 0 0 x 2 2 0 x3 1
1 2 0 50
例3 问题一的解答
改写为: S.t.
min z 13 9 10 11 12 8X
引入松弛变量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
用MATLAB优化工具箱解线性规划11页
用MATLAB 优化工具箱解线性规划命令:x=linprog (c ,A ,b )2、模型:命令:x=linprog (c ,A ,b ,Aeq,beq )注意:若没有不等式:b AX ≤存在,则令A=[ ],b=[ ]. 若没有等式约束, 则令Aeq=[ ], beq=[ ].3、模型:命令:[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表示初始点4、命令:[x,fval]=linprog(…)返回最优解x及x处的目标函数值fval.例1 max 6543216.064.072.032.028.04.0x x x x x x z +++++=解 编写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)例2 321436m in x x x z ++=解: 编写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 (任务分配问题)某车间有甲、乙两台机床,可用于加工三种工件。
用MATLAB软件解线性规划范例
1
精选课件
2.5.3 用MATLAB软件解线性规划范例
2
精选课件
2.5.3 用MATLAB软件解线性规划范例
3
精选课件
2.5.3 用MATLAB软件解线性规划范例
4
精选课件
2.5.3 用MATLAB软件解线性规划范例
5
精选课件
2.5.3 用MATLAB软件解线性规划范例
24
精选课件
3.2.5 用MATLAB软件绘制函数图形
25
精选课件
3.2.5 用MATLAB软件绘制函数图形
26
精选课件
3.3 导数
27
精选课件
3.3.1 极限与连续概念
28
精选课件
3.3.1 极限与连续概念
29
精选课件
3.3.1 极限与连续概念
30
精选课件
3.3.1 极限与连续概念
31
46
精选课件
3.4.4 用MATLAB软件求极值和最值
47
精选课件
3.4.4 用MATLAB软件求极值和最值
48
精选课件
3.4.4 用MATLAB软件求极值和最值
49
精选课件
3.4.4 用MATLAB软件求极值和最值
50
精选课件
3.4.4 用MATLAB软件求极值和最值
51
精选课件
3.4.4 用MATLAB软件求极值和最值
3.2.2 初等函数
16
精选课件
3.2.2 初等函数
17
精选课件
3.2.2 初等函数
18
精选课件
3.2.3 分段函数
10.应用MATLAB软件求解线性规划
蔬菜
青豆 胡萝卜 花菜 卷心菜 甜菜 土豆 每周营养 最低需求量
铁(mg)
0.45 0.45 1.05 0.4 0.5 0.5
6.0
每份蔬菜所含营养成分
磷(mg)
VA(单位)
VC(mg )
10
415
8
28
9065
3
50
2550
53
25
75
27
22
15
5
75
235
8
325 17500 245
,x(k)都是线性规划问题(LP):max S cx, Ax b, x o的最优解,
则它们的任意凸组合也是(LP)的最优解。
6.如果x*是线性规划问题(LP):max S cx, Ax b, x o
的最优解,k 0为某个常数,分别讨论以下情况时最优解 的变化:
Optimization terminated successfully. x=
0.0000 12.0000 0.0000 30.0000 10.0000 z= 22.4000
习题1 1.建立下列线性规划问题的数学模型 (1)某工厂生产A、B、C三种产品,三种产品对于材 料费用、劳动力和电力的单位消耗系数,资源限量和 单位产品价格如表1.1所示。问应如何确定生产计划可 使得总产值达到最大?建立线性规划问题的数学模型。
• 一般线性规划问题的数学模型为
min z CX
AX b
s.t.
A1 X b1
(1)
lb X ub
• 其中C是目标函数的系数行向量(常数), X 是n维列 向量(决策变量),A, A1是常数矩阵,b,b1是常数 向量,lb,ub是n维列向量分别表示决策变量X的下界 与上界。
Matlab数学规划方法及实验题目
MATLAB数学规划问题(实验题目及答案在最后)一、线性规划线性规划问题是目标函数和约束条件均为线性函数的问题,MATLAB6.0及更高版本解决的线性规划问题的标准形式为:min n R',f∈xxsub.to:b⋅A≤x⋅Aeq=xbeq≤lb≤xub其中f、x、b、beq、lb、ub为向量,A、Aeq为矩阵。
其它形式的线性规划问题都可经过适当变换化为此标准形式。
在MATLAB6.0版中,线性规划问题(Linear Programming)已用函数linprog取代了MATLAB5.x版中的lp函数。
在6.0和7.0中依然可以使用lp 函数,但在更高版本中,就只能使用linprog函数了。
函数linprog调用格式:x=linprog(f,A,b)x=linprog(f,A,b,Aeq,beq)- 1 -- 1 -x=linprog(f,A,b,Aeq,beq,lb,ub) x=linprog(f,A,b,Aeq,beq,lb,ub,x0) x=linprog(f,A,b,Aeq,beq,lb,ub,x0,options) [x,fval]=linprog(…)[x, fval, exitflag]=linprog(…) [x, fval, exitflag, output]=linprog(…)[x, fval, exitflag, output, lambda]=linprog(…) 说明:x=linprog(f, A, b) %求min f ' *x, sub.to b x A ≤⋅线性规划的最优解。
返回值x 为最优解向量。
x=linprog(f, A, b, Aeq, beq) %含有等式约束beq x Aeq =⋅,若没有不等式约束b x A ≤⋅,则令A=[ ],b=[ ]。
x = linprog(f, A, b, Aeq, beq, lb, ub) %指定x 的范围ub x lb ≤≤ x=linprog(f, A, b, Aeq, beq, lb, ub, x0) %设置x0为初值点。
线性规划问题Matlab求解
线性规划问题Mat lab求解(总6页) '-CAL-FENGHAI.-(YICAI)-Company One 1・CAL・本页仅作为文档封面.傳用请直接删除用MATLAB优化匸具箱解线性规划命令:inprog (c・ A・ b)命令:x=linprog (c・ A・ b・ Aeq, beq)注总:若没冇不等式:存在.则令A=[ ]. b=[].若没冇尊式约束,则令Ae Q=[ ], be Q=[ J.命令:[1] x=linprog (c・ A・ b, Aeq, beq, VLB. VUB)x=linprog (c. A・ b・ Aeq, beq, VLB. WB, XO)注直[1]若没有等式约束,则令Aeq=〔], be Q=[].⑵其中X0表示初始点4、命令:[x, f\wl]=linDrog(…)返回股优昭$及x处的目标函数值fval.例1昭编写K文件小如卜•:c=[ ];A=[ :0 0 0 0:0 0 0 0:0 0 0 0 ]:b=[S50:700:100:900]:Aeq=[I: beQ=[]:vlb=[0:0:0;0:0:0]: vub=[]:[x, fval]=linprog(c, A, b, Aeq, beq, vlb, vub)例2解:編写M文件如卜•:c=[6 3 4]:A=[0 1 0]:b二[50::Aeq=[l 1 1]:beq=[120]:vlb=[30, 0, 20]:vub=[]:M,fval:=linprog(c. A, b, Aeq,beQ,vlb,vub例3 (任务分配问题)某车何有甲、乙两台机床.叩用干加工三种工件。
假定这两台车床的对用台时数分别为SO0和900・三种匸件的数敞分别为100.600 fil 500・且已知用三种不同车床加工单位数fit不同工件所需的台时数和加工费用如卜表.问怎样分配车床的加工任务.才能既满足加工工件的要求.又使加工费用说低解设在甲车床上加工工件1、2、3的数fit分别为xl、x2、x3.在乙车床上加工工件匚2、3的数H分别为x4、x5. x6o可建立以下统性规划模型:編写M文件如卜•:f = C13 9 10 11 12 S]:A = [ 10 0 00 0 0 ]:b = :SOO; 900]:AeQ=;l 001000 10 0 100 0 1 0 0 1]:beQ=I100 600 500;:vlb = zeros(6, 1):vub=:]:[x, fval] = 1 inprog (f, A, b, Aeq, beq, vlb, vub)例4・某厂毎日S小时的产纯不低于1SOO件。
用matlab求解线性规划问题
实验四 用MATLAB 求解线性规划问题一、实验目的:了解Matlab 的优化工具箱,能利用Matlab 求解线性规划问题。
二、实验内容:线性规划的数学模型有各种不同的形式,其一般形式可以写为:目标函数: n n x f x f x f z +++=Λ2211m in约束条件: s n sn s s n n b x a x a x a b x a x a x a ≤+++≤+++ΛΛΛΛΛ221111212111 s n tn t t n n d x c x c x c d x c x c x c =+++=+++ΛΛΛΛΛ2211112121110,,,21≥n x x x Λ 这里n n x f x f x f z +++=Λ2211称为目标函数,j f 称为价值系数,T n f f f f ),,,(21Λ=称为价值向量,j x 为求解的变量,由系数ij a 组成的矩阵⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=mn m n a a a a A ΛΛOΛΛ1111称为不等式约束矩阵,由系数ij c 组成的矩阵 ⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=sn s n c c c c C ΛΛOΛΛ1111称为等式约束矩阵,列向量Tn b b b b ),,,(21Λ=和T n d d d d ),,,(21Λ=为右端向量,条件0≥j x 称为非负约束。
一个向量Tn x x x x ),,,(21Λ=,满足约束条件,称为可行解或可行点,所有可行点的集合称为可行区域,达到目标函数值最大的可行解称为该线性规划的最优解,相应的目标函数值称为最优目标函数值,简称最优值。
我们这里介绍利用Matlab 来求解线性规划问题的求解。
在Matlab 中有一个专门的函数linprog()来解决这类问题,我们知道,极值有最大和最小两种,但求z 的极大就是求z -的极小,因此在Matlab 中以求极小为标准形式,函数linprog()的具体格式如下: X=linprog(f,A,b)[X,fval,exitflag,ouyput,lamnda]=linprog(f,A,b,Aeq,Beq,LB,UB,X0,options)这里X 是问题的解向量,f 是由目标函数的系数构成的向量,A 是一个矩阵,b 是一个向量,A ,b 和变量x={x1,x2,…,xn}一起,表示了线性规划中不等式约束条件,A ,b 是系数矩阵和右端向量。
实验十四用MATLAB求解线性规划问题.-实验一矩阵的基本运算
实验十四 用MATLAB 求解线性规划问题一、实验目的:了解Matlab 的优化工具箱,能利用Matlab 求解线性规划问题。
二、相关知识线性规划是运筹学中研究得比较早,理论上已趣于成熟,在方法上非常有效,并且应用广泛的一个重要分支。
线性规划的数学模型有各种不同的形式,其一般形式可以写为:目标函数: n n x f x f x f z +++= 2211m i n约束条件: s n sn s s n n b x a x a x a b x a x a x a ≤+++≤+++221111212111s n tn t t n n d x c x c x c d x c x c x c =+++=+++2211112121110,,,21≥n x x x这里n n x f x f x f z +++= 2211称为目标函数,j f 称为价值系数,T n f f f f ),,,(21 =称为价值向量,j x 为求解的变量,由系数ij a 组成的矩阵⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=mn m n a a a a A 1111称为不等式约束矩阵,由系数ij c 组成的矩阵⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=sn s n c c c c C 1111称为等式约束矩阵,列向量T n b b b b ),,,(21 =和T n d d d d ),,,(21 =为右端向量,条件0≥jx 称为非负约束。
一个向量T n x x x x ),,,(21 =,满足约束条件,称为可行解或可行点,所有可行点的集合称为可行区域,达到目标函数值最大的可行解称为该线性规划的最优解,相应的目标函数值称为最优目标函数值,简称最优值。
求解线性规划问题已有一些成熟的方法,我们这里介绍利用Matlab 来求解线性规划问题的求解。
在Matlab 中有一个专门的函数linprog()来解决这类问题,我们知道,极值有最大和最小两种,但求z 的极大就是求z -的极小,因此在Matlab 中以求极小为标准形式,函数linprog()的具体格式如下: X=linprog(f,A,b)[X,fval,exitflag,ouyput,lamnda]=linprog(f,A,b,Aeq,Beq,LB,UB,X0,options)这里X 是问题的解向量,f 是由目标函数的系数构成的向量,A 是一个矩阵,b 是一个向量,A ,b 和变量x={x 1,x 2,…,x n }一起,表示了线性规划中不等式约束条件,A ,b 是系数矩阵和右端向量。
用MATLAB求解线性规划
数额为 M 的相当大的资金作一个时期的投资。 这 n 种资产 在这一时期内购买 s 的平均收益率为 r ,风险损失率为 q ,
i i i
投资越分散,总的风险越小,总体风险可用投资的 s 中最
i
大的一个风险来度量。 购买 s 时要付交易费,(费率 p ),当购买额不超过给定值u
i
i
i
时,交易费按购买 u 计算。另外,假定同期银行存款利率
符号规定: Si ——第 i 种投资项目,如股票,债券 ri,pi,qi ----分别为 Si 的平均收益率,风险损失率,交易费率 ui ----Si 的交易定额 r -------同期银行利率 xi -------投资项目 Si 的资金 a -----投资风险度 Q ----总体收益 Δ Q ----总体收益的增量
m in z (6
3
x1 4) x2 x3
s.t .
1 0
解: 编写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)
二、基本假设和符号规定
基本假设: 1. 投资数额 M 相当大,为了便于计算,假设 M=1; 2.投资越分散,总的风险越小; 3.总体风险用投资项目 s i 中最大的一个风险来度量; 4.n 种资产 S i 之间是相互独立的; 5.在投资的这一时期内, ri,pi,qi,r0 为定值,不受意外因素 影响; 6.净收益和总体风险只受 ri,pi,qi 影响,不受其他因素干扰。
解 编写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];
matlab解决线性规划最优解和最优值
2010/2011学年第一学期"MATLAB 程序设计"大作业一、题目用MATLAB 求解线性规划最优解和最优值的问题。
二、问题描述和分析2.1: 线性规划(简记LP)是合理利用、调配资源的一种应用数学的方法,它的基本思路就是在满足一定的约束条件下,使预定的目标达到最优;它的研究内容可归纳为两个方面:一是系统的任务已定,如何合理筹划,精细安排,用最少的资源去实现这个任务;二是资源的数量已定,如何利用、分配,使任务完成得最多. 前者是求极小,后者是求极大. 线性规划是在满足企业内、外部的条件下,实现管理目标和极值问题,就是要以尽少的资源输入来实现更多的社会需要的产品的产出.2.2: 线性规划问题是目标函数和约束条件均为线性函数的问题,MATLAB7.0解决的线性规划问题的标准形式为:min n R x x f ∈'sub.to :b x A ≤⋅beq x Aeq =⋅ub x lb ≤≤其中f 、x 、b 、beq 、lb 、ub 为向量,A 、Aeq 为矩阵2.3:函数 linprog格式 x = linprog(f,A,b) %求min f ' *x sub.to b x A ≤⋅线性规划的最优解。
x = linprog(f,A,b,Aeq,beq) %等式约束beq x Aeq =⋅,若没有不等式约束b x A ≤⋅,则A=[ ],b=[ ]。
x = linprog(f,A,b,Aeq,beq,lb,ub) %指定x 的范围ub x lb ≤≤,若没有等式约束beq x Aeq =⋅ ,则Aeq=[ ],beq=[ ]x = linprog(f,A,b,Aeq,beq,lb,ub,x0) %设置初值x0x = linprog(f,A,b,Aeq,beq,lb,ub,x0,options) % options 为指定的优化参数[x,fval] = linprog(…) % 返回目标函数最优值,即fval= f ' *x 。
用MATLAB求解线性规划
模型 1 固定风险水平,优化收益
目标函数: 约束条件:
n 1
Q=MAX (ri pi )xi
i 1
qi xi ≤a
M
(1 p )x M , ii
xi≥ 0
i=0,1,…n
b.若投资者希望总盈利至少达到水平 k 以上,在风险最小的 情况下寻找相应的投资组合。
模型 2 固定盈利水平,极小化风险
从 a=0 开始,以步长△a=0.001对下列组合投资模型求解, 并绘图表示 a 与目 标函数最优值 Q 的对应关系:
max s.t.
Q = (-0.05, -0.27, -0.19, -0.185, -0.185) (x0,x1,x2,x3,x4) T
x0 + 1.01x1 + 1.02x2 +1.045x3 +1.065x4 =1
目标函数: R= min{max{ qixi}} 约束条件:
n
(r i
p )x
i
i
≥k,
i0
(1 pi )xi M , xi≥ 0
i=0,1,…n
c.投资者在权衡资产风险和预期收益两方面时,希望选择 一个令自己满意的投资组合。
因此对风险、收益赋予权重 s(0<s≤1),s 称为投资偏好 系数.
2.当投资越分散时,投资者承担的风险越小,这与题意一致。即: 冒险的投资者会出现集中投资的情况,保守的投资者则尽量分散投资。
3.曲线上的任一点都表示该风险水平的最大可能收益和该收益要求的最 小风险。对于不同风险的承受能力,选择该风险水平下的最优投资组合。
4.在a=0.006附近有一个转折点,在这一点左边,风险增加很少时,利润增长
符号规定:
Si
线性规划模型及matlab程序求解
§1 线性规划模型一、线性规划课题:实例1:生产计划问题假设某厂计划生产甲、乙两种产品,现库存主要材料有A类3600公斤,B类2000公斤,C类3000公斤。
每件甲产品需用材料A类9公斤,B类4公斤,C类3公斤。
每件乙产品,需用材料A类4公斤,B类5公斤,C类10公斤。
甲单位产品的利润70元,乙单位产品的利润120元。
问如何安排生产,才能使该厂所获的利润最大。
建立数学模型:设x1、x2分别为生产甲、乙产品的件数。
f为该厂所获总润。
max f=70x1+120x2s.t 9x1+4x2≤36004x1+5x2≤20003x1+10x2≤3000x1,x2≥0归结出规划问题:目标函数和约束条件都是变量x的线性函数。
形如: (1) min f T Xs.t A X≤bAeq X =beqlb≤X≤ub其中X为n维未知向量,f T=[f1,f2,…f n]为目标函数系数向量,小于等于约束系数矩阵A为m×n矩阵,b 为其右端m维列向量,Aeq为等式约束系数矩阵,beq为等式约束右端常数列向量。
l b,ub为自变量取值上界与下界约束的n维常数向量。
二.线性规划问题求最优解函数:调用格式: x=linprog(f,A,b)x=linpro g(f,A,b,Aeq,beq)x=linpro g(f,A,b,Aeq,beq,lb,ub)x=linpro g(f,A,b,Aeq,beq,lb,ub,x0)x=linpro g(f,A,b,Aeq,beq,lb,ub,x0,option s)[x,fval]=linpro g(…)[x, fval, exitfl ag]=linpro g(…)[x, fval, exitfl ag, output]=linpro g(…)[x, fval, exitfl ag, output, lambda]=linpro g(…)说明:x=linpro g(f,A,b)返回值x为最优解向量。
MATLAB实验之线性规划问题求解
一 ,实验目的 1. 掌握用 MATLAB 优化工具箱求解线性规划问题的方法; 2. 练习建立实际问题的线性规划模型并求解; 二,实验原理 线性规划(linear programming)是运筹学的一个重要的分支,它的应用十分广泛,不仅许多实 际问题属于线性规划问题, 而且运筹学的期货分支的一些问题也可以转化成线性规划问题, 因此, 线性规划瓿的求解在最优化中占据重要的地位。
vub = [] Optimization terminated. x = 5.2896
4.7104 12.3625 12.6375 9.4583 8.5417 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000
fval = 4.2400e+003 5. 某人有一笔 30 万元的资金,在今后三年内有以下投资项目: (1)三年内的每年年初均可投资,每年获利为投资额的 20%,其本利可一起用于下一年投资; (2)只允许第一年年初投入,第二年年末可收回,本利合计为投资额的 150%,但此类投资限额不超 过 15 万元; (3)于三年内第二年初允许投资,可于第三年末收回,本利合计为投资额的 160%,这类投资限额 20 万元; (4)于三年内的第三年初允许投资,一年收回,可获利 40%,投资限额为 10 万元。 试为该人确定一个使第三年末本利和为最大的投资计划。 设 xij 为第 i 年初投放到 j 项目的资金数 Maxz=1.2x31+1.6x23+1.4x34 X11+x12=300000 X21+x23=1.2x11 X31+x34=1.2x21+1.5x12 X12<=150000 X23<=200000 X34<=100000 X11,x12,x21,x23,x31,x34>=0 >> h Exiting: One or more of the residuals, duality gap, or total relative error has stalled: the primal appears to be infeasible and the dual unbounded since the dual objective > 1e+10 and the primal objective > -1e+6. x = 1.0e+006 *
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第11次课
(1)
某机床厂生产甲、乙两种机床,每台销售后的利润分别为 4000 元与 3000 元 。
生产甲机床需用A 、B 机器加工,加工时间分别为每台 2 小时和 1 小时; 生产乙机床 需用A 、B 、C 三种机器加工,加工时间为每台各一小时。
若每天可用于加工的机器 时数分别为A 机器 10 小时、 B 机器 8 小时和 C 机器 7 小时,问该厂应生产甲、乙机床 各 几台,才能使总利润最大?
(2)有两种农作物(大米和小麦),可用轮船和飞机两种方式运输,每天每艘轮船和每架飞机运输效果
如下:在一天内如何安排才能合理完成运输2000吨小麦和1500吨大米的任务?
(3)设422+-=x y z ,式中变量y x ,满足条件⎪⎩⎪⎨⎧≥-≤≤≤≤12201
0x y y x ,求z 的最小值和最大值.
(4)某家俱公司生产甲、乙两种型号的
组合柜,每种柜的制造白坯时间、油漆时间及有关数据如下:
问该公司如何安排甲、乙二种柜的日产量可获最大利润,并且最大利润是多少? (5)
某运输公司接受了向抗洪抢险地区每天至少送180t 支援物资的任务.该公司有8辆载重为6t 的A 型 卡车与4辆载重为10t 的B 型卡车,有10名驾驶员;每辆卡车每天往返的次数为A 型卡车4次,B 型
卡车3次;每辆卡车每天往返的成本费A 型车为320元,B 型车为504元.请你们为该公司安排一下应该如何调配车辆,才能使公司所花的成本费最低?若只调配A 型或B 型卡车,所花的成本费分别是多少?
(6)一家玩具公司制造三种桌上高尔夫玩具,每一种要求不同的制造技术。
高级的一种需要17小时加工装配劳动力,8小时检验,每台利润300元。
中级的需要10小时劳动力,4小时检验,利润200元。
低级的需要2小时劳动力,2小时检验,利润100元。
可供利用的加工劳动力为1000小时,检验500小时。
其次,有市场预测表明,对高级的需求量不超过50台,中级的不超过80台,低级的不超过150台。
问制造商如何决策才能得出使总利润为最大的最优生产计划。
(7)(任务分配问题)某车间有甲、乙两台机床,可用于加工三种工件。
假定这两台车床的可用台时数分别为800和900,三种工件的数量分别为400、600和500,且已知用三种不同车床加工单位数量不同工件所需的台时数和加工费用如下表。
问怎样分配车床的加工任务,才能既满足加工工件的要求,又使加工费用最低
(8)。