matlab线性规划实验报告
MATLAB解决线性规划问题

运行环境:Windows+MATLAB解决问题:线性规划问题(特定题目)实验简述:MATLAB 可以高效、方便地解决线性规划问题。
线性规划是合理利用、调配资源的一种应用数学的方法。
它的基本思路就是在满足一定的约束条件下,使预定的目标达到最优。
它的研究内容可归纳为两个方面:一是系统的任务已定,如何合理筹划,精细安排,用最少的资源去实现这个任务:二是资源的数量已定,如何利用、分配,使任务完成得最多。
前者是求极小,后者是求极大。
线性规划是在满足企业内、外部的条件下,实现管理目标和极值问题,就是要以尽少的资源输入来实现更多的社会需要的产品的产出。
现在通过专门的数学MATLAB 软件,只要将模型中的目标函数系数、约束条件系数、不等关系输入计算机,就会很快算出结果。
在生活实践中,很多重要的实际问题都是线性的(至少能够用线性函数很好的近似表示),所以我们一般把这些问题化为线性的目标函数和约束条件进行分析,通常将目标函数和约束都是线性表达式的规划问题称为线性规划。
它的一般形式是:),,2,1(0..min 221122222121112121112211n i x b x a x a x a b x a x a x a b x a x a x a t s x c x c x c f i m n mn m m n n n n nn=>=⎪⎪⎩⎪⎪⎨⎧<=+++<=+++<=++++++= 也可以用矩阵形式来表示:0,..min>=<==x b Ax t s x c f T线性规划的可行解是满足约束条件的解;线性规划的最优解是使目标函数达到最优的可行解。
线性规划关于解的情况可以是:1、无可行解,即不存在满足约束条件的解;2、有唯一最优解,即在可行解中有唯一的最有解;3、有无穷最优解,即在可行解中有无穷个解都可使目标函数达到最优;4、有可行解,但由于目标函数值无界而无最优解。
一般求解线性规划的常用方法是单纯形法和改进的单纯形法,这类方法的基本思路是先求得一个可行解,检验是否为最优解;若不是,可用迭代的方法找到另一个更优的可行解,经过有限次迭代后,可以找到可行解中的最优解或者判定无最优解。
线性规划模型 实验报告

M文件:
c=-[190,90,244,193,261,199,170,110,260,150,280,165,140,80,186,103]';
L=zeros(16,1);
H=[31,52,22,41,10,60,25,33,20,31,8,41,34,59,13,15];
烤制部有10座大烤炉,每座烤炉的容量是每天出140台,每台可容纳10个唐师面包或5个更大的宋赐面包。可以在一台上同时放两种面包,只需注意宋赐面包所占的空间是唐师面包的两倍。
调配部每天可以调配最多8000个唐师面包和5000个宋赐面包。有两个自动调配器分别用于两种面包的调配而不至于发生冲突。
田园公司决定找出这两种面包产品的最佳产量配比,即确定两种面包的日产量,使得在公司面包厂的现有生产条件下利润最高。
L=zeros(5,1);
[x,fmin]=linprog(c,[],[],Aeq,Beq,L,H);
Min=fmin+10400
X=[x(1) x(2) x(3) x(4) x(5)]
求解结果
Min =
7.5500e+003
X =
600.0000 270.0167 220.0167 350.0000 300.0000
所以
从Toronto和Detroit到Chicago运输的货物为 600 和 270
从从Toronto和Detroit到Buffalo运输的货物为 0 和 230
从Chicago运输到NewYork、Phila.和St.louis的货物为分别 220 、350 、300
剩余的将从Buffalo运往。
X =
Columns 1 through 12
用matlab求解线性规划问题

用m a t l a b求解线性规划问题Company number:【0089WT-8898YT-W8CCB-BUUT-202108】实验四 用M A T L A B 求解线性规划问题一、实验目的: 了解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这里nn x f x f x f z +++= 2211称为目标函数,j f 称为价值系数,T n f f f f ),,,(21 =称为价值向量,j x 为求解的变量,由系数ij a 组成的矩阵 称为不等式约束矩阵,由系数ij c 组成的矩阵 称为等式约束矩阵,列向量T n 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实验之线性规划问题求解

封面作者:PanHongliang仅供个人学习桂林电子科技大学数学与计算科学学院实验报告实验室:实验日期:年月日x附录Ⅱ综合性、设计性实验报告格式桂林电子科技大学数学与计算科学学院综合性、设计性实验报告版权申明本文部分内容,包括文字、图片、以及设计等在网上搜集整理。
版权为潘宏亮个人所有This article includes some parts, including text, pictures, and design. Copyright is Pan Hongliang's personal ownership.用户可将本文的内容或服务用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯本网站及相关权利人的合法权利。
除此以外,将本文任何内容或服务用于其他用途时,须征得本人及相关权利人的书面许可,并支付报酬。
Users may use the contents or services of thisarticle for personal study, research or appreciation, andother non-commercial or non-profit purposes, but at the same time, they shall abide by the provisions of copyright law and other relevant laws, and shall not infringe upon the legitimate rights of this website and its relevant obligees. In addition, when any content or service of this article is used for other purposes, written permission and remuneration shall be obtained from the person concerned and the relevant obligee.转载或引用本文内容必须是以新闻性或资料性公共免费信息为使用目的的合理、善意引用,不得对本文内容原意进行曲解、修改,并自负版权等法律责任。
MATLAB应用实验线性规划

A15
500
A14
A13
210
A12
S1~S7 钢管厂 铁路
火车站 公路 管道
450里程(km)
s1
s2 … si
…
s7
C1j
C1,15
A1
A2 …
Aj
… A15
—单位运费; —在第 厂提供的量; —第 地需要量; 求从运多少钢管到, 可使总运费最少. 决策变量: —从运到的钢管数量
a1
a2
…
ai
范例
加工奶制品的生产计划 程序
)<
() ?
)<
)<
范例
)
) ) ) .
桶牛奶生产, 桶生产,利润元。
)
) ) ) .
三
原料无剩余
“资源” 剩余为零的
种 资
时间无剩余
约束为紧约束(有 效约束)
源 加工能力剩余
结果解释 影子价格 最优解下“资源”增加单位时“效益”的 原)料增加单位, 利润增增量长 时间增加单位, 利润增长 加工能力增长不影响利润
课堂延伸
•大陆航空公司乘务组快速补救计划
运筹学解决方案: 大陆航空公司采用技术,研发了 决策支持系统,生成全局最优 或接近最优的乘务组补救方案.
效果:大陆航空公司自实施此计划以来,在每一次严重的 突发事件中,都能实现乘务组快速补救,取得价值数百万 美元的效益。 公司估计,在年系统帮助它节省约了万美 元。由于该系统,使美国航空业自年月日后开始复苏,从 那时起,五家航空公司已采用了类似的基于运筹学的软 件用于突发事件后航班时刻表、飞行员安排等的补救计 划。
70 30
20 20
S6
110
最优化方法实验

《最优化方法》实验报告实验序号:01 实验项目名称:线性规划及MATLAB应用《最优化方法》实验报告实验序号:02 实验项目名称:0.618黄金分割法的应用结果分析:根据以上结果可知,在区间[0,3]上,函数g(x)=x^3-2*x+1的最小值点在x=0.9271处,此时最小值为0。
第二题:P50 例题3.1程序:function [t,f]=golden3(a,b) %黄金分割函数的m文件t2=a+0.382*(b-a);f2=2*(t2)^2-(t2)-1;t1=a+0.618*(b-a); %按照黄金分割点赋值,更准确可直接算f1=2*(t1)^2-(t1)-1;while abs(t1-t2)>0.16; %判定是否满足精度if f1<f2a=t2;t2=t1;f2=f1;t1=a+0.618*(b-a);f1=2*(t1)^2-(t1)-1;elseb=t1;t1=t2;f1=f2;t2=a+0.382*(b-a);f2=2*(t2)^2-(t2)-1;endendt=(t1+t2)/2; %满足条件取区间中间值输出第四题:P64 T3程序:function [t,d]=newtow2(t0)t0=2.5;t=t0-(4*(t0)^3-12*(t0)^2-12*(t0)-16)/(12*(t0)^2-24*(t0)-12);k=1;T(1)=t;while abs(t-t0)>0.000005t0=t;t=t0-(4*(t0)^3-12*(t0)^2-12*(t0)-16)/(12*(t0)^2-24*(t0)-12); k=k+1;T(k)=t;endt1=t0;d=(t1)^4-4*(t1)^3-6*(t1)^2-16*(t1)+4;kTend运行结果:当x(0)=2.5当x(0)=3四.实验小结:1.通过这次实验,加深了对0.618法的理解。
2.在学习0.618法的过程中,又巩固了倒数、求解函数值等相关知识。
MATLAB数学实验报告

MATLAB数学实验报告姓名:李帆班级:机械(硕)21学号:2120104008第一次数学实验报告——线性规划问题一,实验问题1,某饲养场饲养动物出售,设每头动物每天至少需要700g蛋白质,30g矿物质,100mg 维生素。
现有五种饲料可供选择,各种饲料的每千克营养成分含量和单价如下表。
是确定既能满足动物生长的营养需要,游客是费用最省的选用饲料方案。
2,某工厂生产甲、乙、丙三种产品,单位产品所需工时分别为2、3、1个;单位产品所需原料分别为3、1、5公斤;单位产品利润分别为2、3、5元。
工厂每天可利用的工时为12个,可供应的原料为15公斤。
为使总利润为最大,试确定日生产计划和最大利润。
二,问题分析1,1)该题属于采用线性规划的方式求出最优解的数学问题。
该题有以下特点,1.目标函数有线性,是求目标函数的最小值;2.约束条件为线性方程组;3.未知变量都有非负限制。
1,2)求解该类问题的方法有图解法,理论解法和软件解法。
图解法常用于解变量较少的线性规划问题。
理论解法要构建完整的理论体系。
目前用于解线性规划的理论解法有:单纯形法,椭球算法等。
在此,我们采用单纯形法的MATLAB软件解法来求解该问题。
1,3)此题中,要求既要满足动物生长的营养需要,又要使费用最省,则使每种饲料的选用量为变量,以总费用的最小值为所求量,同时每种饲料的使用量要符合营养成分的要求。
1,4)在此,首先确定建立线性规划模型。
设饲料i选用量为xi公斤,i=1,2,3,4,5.则有模型:Minz=0.2x1+0.7x2+0.4x3+0.3x4+0.8x5s.t. {3x1+2x2+6x4+18x5>=700;x1+0.5x2+0.2x3+2x4+0.5x5>=300.5x1+x2+0.2x3+2x4+0.8x5>=100Xj>=0,j=1,2,3,4,5解之得:x1=x2=x3=0X4=39.74359X5=25.14603Zmin=32.435902, 1)该问题与第一题分析步骤相似,故只在此写出其线性规划模型Z=2x+3y+5z2x+3y+z<=123x+y+5z<=15三,程序设计流程图第一题:c=[0.2,0.7,0.4,0.3,0.8]A=[3,2,1,6,18;1,0.5,0.2,2,0.5;0.5,1,0.2,2,0.8;1,0,0,0,0;0,1 ,0,0,0;0,0,1,0,0;0,0,0,1,0;0,0,0,0,1]b=[700,30,100,0,0,0,0,0][x,fval]=linprog(c,-A,-b)c =0.2000 0.7000 0.4000 0.3000 0.8000A =3.0000 2.0000 1.0000 6.0000 18.00001.0000 0.5000 0.20002.0000 0.50000.5000 1.0000 0.2000 2.0000 0.80001.0000 0 0 0 00 1.0000 0 0 00 0 1.0000 0 00 0 0 1.0000 00 0 0 0 1.0000b =700 30 100 0 0 0 0 0Optimization terminated.x =0.0000-0.00000.000039.743625.6410fval =32.4359第二题c=[-2 -3 -5]A=[2 3 1;3 1 5]b=[12;15]lb=[0 0 0][x,Z,exitflag,output]=linprog(c,A,b,[],[],lb,[])将上述程序输入matlab。
第十一章 MATLAB求解线性规划问题-2014120809203072

3.完成实验报告。
设生产A产品 x1 件,生产B产品 x2 件, z 为所获利 润,我们将问题归结为如下的线性规划问题:
min {(7000x1 10000 x2 )}
8 x1 6 x2 380 s.t. 4 x1 8 x2 300 4 x 6 x 220 2 1
接着写出MATLAB程序如下: clear f=-[7000,10000]; A=[8,6;4,8;4,6]; b=[380,300,220]; [X,fval]=linprog(f,A,b)
这里 z f1 x1 f 2 x2 f n xn 称为目标函数, f j 称为 价值系数,f ( f1 , f 2 ,, f n )T 称为价值向量, x j 为求 解的变量,由系数aij 组成的矩阵
a11 A a s1 a1n asn
解决上述问题的MATLAB程序为: clear f=-[5,4,6]; A=[1,-2,1;3,2,4;3,2,0]; b=[20,42,30]; LB=[0;0;0]; [X,fval,exitflag,output,lambda]=linprog(f,A,b,[],[ ],LB)
求解线性规划问题已有一些成熟的方法,我们这里 介绍利用MATLAB来求解线性规划问题的求解。
在MATLAB中有一个专门的函数linprog()来解决这 类问题,我们知道,极值有最大和最小两种,但求 z的极大就是求-z的极小,因此在MATLAB中以求 极小为标准形式,函数linprog()的具体格式如下: X=linprog(f,A,b) [X,fval,exitflag,output,lamnda]=linprog(f,A,b,Ae q,Beq,LB,UB,X0,options)