清华大学数学实验_实验8 线性规划1
实验八线性规划
目标函数: c1 x1 c2 x2 ... cn xn Z max(Z min)
数学实验
求解线性规划数学模型就是在满足约束条件和非负条件之下,使得目标函数为 称变量 xn1 , xn2 ,...,xnm 松弛变量(或附加变量)
最大(或最小),确定 变量
食品P 食品Q
6 2
2 4
2 2
min z=8x1+7x2 s.t. 6x1+2x2≥12 2x1+4x2≥10 2x1+2x2≥8 x1,x2≥0
解 设所需食品P的重量是x1 kg,所 需食品Q的重量是x2 kg,总成本为 z元,并且设人体吸收食品P、Q中 的所有维生素B1、B2、B3,则:
数学实验
执行过程:>>shy805
x=
0 15.0000 3.0000 z= -78.0000
结果分析:所以最优解x=(0,15,3), 最大值z=-78
数学实验
例4求解 Max z=2x1+3x2-5x3 s.t. 2x1-5x2+x3≥10 x1+x2+x3=7 x1,x2,x3≥0 程序:shy806.m文件
产品 甲 乙 电耗/吨(kW) 煤耗/吨(吨) 4 5 9 4 劳动力(人) 3 10 产值(万元) 7 12
已知该厂劳动力最多只有300个,按计划煤耗每天不超过360吨, 电耗每天不超过200kW。问每天如何按排生产,可使产值最大。 分析:首先,设工厂设备 运转正常、平稳,且也不 存在其他外来干扰;甲、 乙两产品每天各生产x吨、 y吨,每天产值为S。则由 已知条件可得: Max S=7x+12y s.t. 9x+4y≤360 4x+5y≤200 3x+10y≤300 x≥0,y≥0
数学实验教学大纲
数学试验教学大纲[课程的定位和目的]数学试验是清华大学在数学教学体系和内容改革中为非数学类专业创立的课,是四门数学主干课程的最终一门,起着承上启下的作用,承上是使微积分、代数与几何、随机数学中的原理得以应用,方法得以实现,启下是为后续课、争论生课程中数学问题的建模和求解供给思路,激发同学进一步学习数学、应用数学的意识和力量。
课程对象主要是本科二年级学生。
数学试验是一门重组课程,它集数值计算、优化方法、数理统计、数学建模以及数学软件于一体,以“应用数学根本原理、了解主要数值算法、借助数学软件实现、培育数学建模力量”为根本要求。
数学试验课的目的是,在教师指导下以学生在计算机上自己动手、动眼、动脑为主,通过用数学软件编程做试验,学习解决实际问题常用的数学方法,并在此根底上分析、解决经过简化的实际问题,提高学数学、用数学的兴趣、意识、方法和力量,促成数学教学的良性循环。
[课程的根本内容和根本要求]依据课程的目的和学时的限制,从必要性和可行性动身,我们设计数学试验课内容的根本原则是:1.介绍一些最常用的解决实际问题的数学方法,包括数值计算、优化方法、数理统计的根本原理和主要算法,一般不讲定理的证明,根本不做笔头练习;2.选择一两个适宜的数学软件平台,如 MATLAB 和LINGO,根本上能够便利地实现上述内容的有效算法;3.用数学建模为线索贯穿整个课程,从建模初步练习开头,以建模综合练习完毕,对上述每一局部内容也尽量从实际问题引入,并落实于这些问题的解决;4.最主要的是细心安排学生的试验,每个试验的内容除了为把握数学方法设计的纯计算题目外,要有足够的、经过简化的实际题目。
这样的内容设计既保证本科生学到比较广泛、有应用意义的数学学问,以及初步的分析、解决实际问题的思路与方法,又为那些要求把握更深入的数学理论和方法的学生,供给了很多实际背景,也刺激了他们再学习的愿望。
这样做还特别有利于争论型大学实行的“本硕贯穿”,数学试验课既为争论生的数学课〔如数值分析、数学规划、高等数值分析、高等统计等〕做了根本学问和实际背景的铺垫,又与这些课程在内容和要求上有较大的区分,形成明显的阶梯。
线性规划
矿物质(g)
维生素(mg)
0.1
0.05
0.05
0.1
0.02
0.02
0.2
0.2
0.05
0.08
希望建立数学模型,既能满足动物需要,又使总成 本最低的饲料配方
模型
饲料 符号 A1 x1 A2 x2 A3 x3 A4 x4 A5 x5
约 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
线性规划问题的数学模型的一般形式
( 1)列出约束条件及目标函数 (2)画出约束条件所表示的可行域 (3)在可行域内求目标函数的最优解及最优值
线性规划问题的标准形式
{
max y=cTx s.t. Ax=b x≥0
求解方法: (1)单纯形法 (2)软件求解:Lindo, Lingo, matlab,sas
RANGES IN WHICH THE BASIS IS UNCHANGED: OBJ COEFFICIENT RANGES VARIABLE CURRENT ALLOWABLE ALLOWABLE COEF INCREASE DECREASE X1 X2 ROW 72.000000 24.000000 8.000000
Max z 72x1 64x2
z=c (常数) ~等值线
0
l5
Z=0
x1 D Z=2400
LINGO实验项目
实验项目一线性规划实验学时:2实验目的:线性规划(Linear Programming,简写LP)是运筹学中最成熟的一个分枝,而且是应用最为广泛的一个运筹学分枝,是解决最优化问题的重要工具。
而目前 Lindo/lingo 是求解线性规划比较成熟的一个软件,通过本实验,掌握线性规划模型在 Lindo/lingo 中的求解,并能达到灵活运用。
实验要求:1.掌握线性规划的建模步骤及方法;2.掌握Lindo/lingo 的初步使用;3.掌握线性规划模型在Lindo/lingo 建模及求解;4.掌握线性规划的灵敏度分析实验内容及步骤:例:美佳公司计划制造I、II 两种家电产品。
已知各制造一件时分别占用设备A、B 的台时、调试时间、调试工序每天可用于这种家电的能力、各售出一件时的获利情况,如表1-1 所示。
1.问该公司应制造两种家电各多少件,使其获取的利润最大。
2. 如果资源出租,资源出租的最低价格至少是多少(即每种资源的影子价格是多少)。
3.若家电I 的利润不变,家电II 的利润在什么范围内变化时,则该公司的最优生产计划将不发生变化。
4. 若设备A 和B 每天可用能力不变,则调试工序能力在什么范围内变化时,问题的最优基不变。
解:设x1表示产品I 的生产量; x2表示产品II 的生产量,所在该线性规划的模型为:从此线性规划的模型中可以看出,第一个小问是典型的生产计划问题,第二小问是相应资源的影子价格,第三和第四个小问则是此问题的灵敏度分析。
现在我们利用lingo8.0 来教你求解线性规划问题。
第一步,启动lingo 进入初始界面如下图1-1 和图1-2 所示:第二步,在进行线性规划模型求解时,先要对初始求解方法及参数要进行设置,首先选择lingo 菜单下的Option 菜单项,并切换在general solver(通用求解器)页面下,如下图1-3 所示:general solver 选项卡上的各项设置意义如下表格1-1 所示:表格1-1 general solver 选项卡上的各项设置意义接下来再对Linear Solver(线性求解器)选项卡进行设置,切换界面如所示:其各项设置意义如下表格1-2 所示:表格1-2 Linear Solver 选项卡各项设置意义因为这个线性规划模型较为简单,数字也是比较小的,而且需要进行灵敏度分析,所以对general solver 选项卡上的Dual Computations(对偶计算)项设为“Prices and Ranges(计算对偶价格并分析敏感性)”。
【清华】实验8-约束优化-2007011861
实验8 约束优化化学工程系 化71 李骥聪 2007011861【实验目的】1. 掌握用MATLAB 优化工具箱解线性规划和非线性规划的方法; 2. 练习建立实际问题的线性规划和非线性规划模型。
【实验内容】 1.题目6.某市有甲、乙、丙、丁四个居民区,自来水由A,B,C 三个水库供应。
四个区每天必须得到保证的基本生活用水量分别为30kt,70kt,10kt,10kt ,由于水源紧张,三个水库每天最多只能分别供应50kt,60kt,50kt 自来水。
由于地理位置的差别,自来水公司从各水库向各区送水所需付出的引水管理费不同(见表1,其中C 水库与丁区间没有输水管道),其它管理费用都是450元/kt 。
根据公司规定,各区用户按照统一标准900元/kt 收费。
此外,4个区都向公司申请了额外用水量,分别为每天50kt,70kt,20kt,40kt 。
该公司应如何分配供水量,才能获利最多?为了增加供水量,自来水公司正在考虑进行水库改造,使三个水库每天的最大供水量都提高一倍,问那时供水方案应如何改变?公司利润可增加到多少?表1.引水管理费/元/kt甲乙丙丁A 160 130 220 170B 140 130 190 150C 190 200 230 /模型及其求解 (1)本题是一个有约束的优化问题。
决策变量是自来水公司由A 、B 、C 三个水库向甲乙丙丁四区分别送多少水,记由A 地送到甲乙丙丁四区的水量为1234,,,x x x x ,由B 地送到甲乙丙丁四区的水量为5678,,,x x x x ,送到甲乙丙丁四区的水量为9101112,,,x x x x 。
目标函数是公司的总利润,记为f ,则有:max 900(450)(450)i i i i i iiif x a x a x =−+=−∑∑∑,其中i a 是对应的引水管理费,所以本题是一个有约束的线性优化问题。
为了方便用MATLAB 计算,化为求极小:min()(450)i i if a x −=−∑约束条件:1.保证基本生活用水量:15926103711481230701010x x x x x x x x x x x x ++≥⎧⎪++≥⎪⎨++≥⎪⎪++≥⎩,化为15926103711481230701010x x x x x x x x x x x x −−−≤−⎧⎪−−−≤−⎪⎨−−−≤−⎪⎪−−−≤−⎩; 2.受最大供应量约束:123456789101112506050x x x x x x x x x x x x +++≤⎧⎪+++≤⎨⎪+++≤⎩;3.为了节约水资源,多出基本生活用水的供水量最好不要超过额外申请量:159261037114812801403050x x x x x x x x x x x x ++≤⎧⎪++≤⎪⎨++≤⎪⎪++≤⎩; 4.非负约束:,0i i x ∀≥。
线性规划实验报告
一、实验目的通过本次实验,了解线性规划的基本原理和方法,掌握线性规划模型的建立和求解过程,提高解决实际问题的能力。
二、实验内容1. 线性规划模型的建立2. 利用Lingo软件进行线性规划模型的求解3. 分析求解结果,进行灵敏度分析三、实验步骤1. 建立线性规划模型以某公司生产问题为例,建立线性规划模型。
设该公司有三种产品A、B、C,每种产品分别需要原材料X1、X2、X3,且原材料的价格分别为p1、p2、p3。
公司拥有一定的生产设备,每种产品的生产需要消耗一定的设备时间,设备时间的价格为p4。
设A、B、C产品的生产量分别为x1、x2、x3,原材料消耗量分别为y1、y2、y3,设备使用量分别为z1、z2、z3。
目标函数:最大化利润Z = p1x1 + p2x2 + p3x3 - p4(z1 + z2 + z3)约束条件:(1)原材料消耗限制:y1 ≤ 10x1,y2 ≤ 8x2,y3 ≤ 5x3(2)设备使用限制:z1 ≤ 6x1,z2 ≤ 4x2,z3 ≤ 3x3(3)非负限制:x1 ≥ 0,x2 ≥ 0,x3 ≥ 0,y1 ≥ 0,y2 ≥ 0,y3 ≥ 0,z1 ≥ 0,z2 ≥ 0,z3 ≥ 02. 利用Lingo软件进行线性规划模型的求解打开Lingo软件,按照以下步骤输入模型:① 在“Model”菜单中选择“Enter Model”;② 输入目标函数:@max = p1x1 + p2x2 + p3x3 - p4(z1 + z2 + z3);③ 输入约束条件:@and(y1 <= 10x1, y2 <= 8x2, y3 <= 5x3);@and(z1 <= 6x1, z2 <= 4x2, z3 <= 3x3);@and(x1 >= 0, x2 >= 0, x3 >= 0, y1 >= 0, y2 >= 0, y3 >= 0, z1 >= 0, z2 >= 0, z3 >= 0);④ 在“Model”菜单中选择“Solve”进行求解。
最优化方法-线性规划
引言
对线性规划贡献最大的是美国数学家G.B.Dantig(丹捷格),他 在1947年提出了求解线性规划的单纯形法(Simple Method),并同时给出了许多很有价值的理论,为线性规划 奠定了理论基础。在1953年,丹捷格又提出了改进单纯形法, 1954年Lemke(兰母凯)提出了对偶单纯形法(dual simplex method)。 在1976年, R. G. Bland 提出避免出现循环的方法后,使线 性规划的理论更加完善。但在1972年,V. Klee和G .Minmty 构造了一个例子,发现单纯形法的迭代次数是指数次运算,不 是好方法——并不是多项式算法(多项式算法被认为是好算 法),这对单纯形法提出了挑战。
min Ζ ’=-Ζ =-(c1x1+c2x2+…+cnxn)
(三)若xj<0,令xj=xj’-xj”,xj’≥0,xj”≥0 利用矩阵和向量的符号,线性规划问题可以写为
minΖ =CX s.t. AX=b X≥0 minΖ =CX s.t. Σ xjPj=b C=(c1,c2, …,cn)
a11 a12 …a1n A= ┆ ┆ ┆ am1 am2 …amn b1 b2 ┆ bm x1 x2 X= ┆ xn
化一般问题为标准形式: (一)若ak1x1+ak2x2+…aknxn≤bk 加一变量xn+k≥0(松驰变量),改写为 ak1x1+ak2x2+…aknxn+xn+k=bk 若ak1x1+ak2x2+…aknxn≥bk 减一变量xn+k≥0(剩余变量),改写为 ak1x1+ak2x2+…aknxn-xn+k=bk (二) 若目标函数为maxΖ =c1x1+c2x2+…+cnxn
清华大学运筹学-1.1线性规划数学模型
, ci 为
8
例3、合理下料问题 、 2.9m 钢筋架子100 钢筋架子 2.1m 1.5m Ⅰ 2.9m 2.1m 1.5m 合计 料头 1 0 3 7.4 0 Ⅱ 2 0 1 7.3 0.1 Ⅲ 0 2 2 7.2 0.2 Ⅳ 1 2 0 7.1 0.3 Ⅴ 0 1 3 6.6 0.8
9
各1,原料长 ,原料长7.4m
方案 2.9m 2.1m 1.5m 合计 1 2 0 1 2 1 2 0 3 1 1 1 4 1 0 3 5 0 3 0 6 0 2 2 7 0 1 3 8 0 0 4 6.0 1.4
12
7.3 7.1 6.5 7.4 6.3 7.2 6.6 1.1 0.2 0.8
剩余料头 0.1 0.3 0.9 0
2
例2
原料 1 2 3 4
每单位添 加剂中维生 素最低含量
A 4 6 1 2
B 1 1 7 5
C 每单位成本 0 2 1 3 2 5 6 8
12
14
8
求:最低成本的原料混合方案
3
的用量为x 解:设每单位添加剂中原料i的用量为 i(i =1,2,3,4) 设每单位添加剂中原料 的用量为 minZ= 2x1 + 5x2 +6x3+8x4 4x1 + 6x2 + x3+2x4 ≥12 x1 + x2 +7x3+5x4 ≥14 2x2 + x3+3x4 ≥ 8 xi ≥ 0 (i =1,…,4)
4
线性规划模型特点
• 决策变量:向量(x1… xn)T 决策人要考 决策变量:向量 虑和控制的因素, 虑和控制的因素,非负 • 约束条件:线性等式或不等式 约束条件: • 目标函数:Z=ƒ(x1 … xn) 线性式,求Z极 目标函数: 线性式, 极 大或极小
线性规划综合性实验报告
《线性规划综合性实验》报告一、实验目的与要求掌握线性规划建模的方法以及至少掌握一种线性规划软件的使用,提高应用线性规划方法解决实际问题的实践动手能力。
通过实验,更深入、直观地理解和掌握线性规划的基本概念及基本理论和方法。
要求能对一般的线性规划问题建立正确的线性规划数学模型,掌握运筹学软件包WinQSB中Linear and Integer Programming模块的操作方法与步骤,能对求解结果进行简单的应用分析。
二、实验内容与步骤1.确定线性规划问题(写出线性规划问题)2.建立线性规划模型(写出线性规划数学模型)3.用WinQSB中Linear and Integer Programming模块求解线性规划模型(写出求解的具体步骤)4.对求解结果进行应用分析(指出最优方案并作出一定的分析)三、实验题目、实验具体步骤及实验结论(一)线性规划问题某集团摩托车公司产品年度生产计划的优化研究1)问题的提出某集团摩托车公司是生产各种类型摩托车的专业厂家,有30多年从事摩托车生产的丰富经验。
近年来,随着国内摩托车行业的发展,市场竞争日趋激烈,该集团原有的优势逐渐丧失,摩托车公司的生存和发展面临严峻的挑战。
为此公司决策层决心顺应市场,狠抓管理,挖潜创新,从市场调查入手,紧密结合公司实际,运用科学方法对其进行优化组合,制定出1999年度总体经济效益最优的生产计划方案。
2)市场调查与生产状况分析1998年,受东南亚金融风暴的影响,国内摩托车市场出现疲软,供给远大于需求,该集团的摩托车生产经营也出现开工不足、库存增加和资金周转困难等问题。
该集团共有三个专业厂,分别生产轻便摩托车、普通两轮车和三轮摩托车三大系列产品。
在市场调查的基础上,从企业实际出发普遍下调整车出厂价和目标利润率,有关数据如下表1资金占用情况如下表2由于发动机改型生产的限制,改型车M3和M6两种车1999年的生产量预测数分别为20000辆和22000辆。
实验8-线性规划
实验八 线性规划的基本原理和解法姓名:芦琛璘 班级:化33 学号:2013011934实验目的:1、学会用MATLAB工具箱或者LINGO求解线性规划的方法;2、学习建立联系实际问题的线性规划模型;实验内容:【问题1】某银行经理计划用一笔资金进行证券投资,可供购进的证券以及其信用等级,到期年限、收益如下表所示,按照规定,市政证券的收益可以免税,其他证券的收益需按50%的税率纳税,此外还有以下限制:①政府及代办机构的证券总共至少要购进400万元;②所购证券的平均信用等级不超过1.4(信用等级数字越小,信用程度越高);③所购证券的平均到期年限不超过5年。
证券名称 证券种类 信用等级 到期年限/年 到期税前收益/%A 市政 2 9 4.3B 代办机构 2 15 5.4C 政府 1 4 5.0D 政府 1 3 4.4E 市政 5 2 4.5试问:①若该经理有1000万元资金,应如何投资?②如果能够以2.75%的利率借到不超过100万元资金,该经理应如何操作?并考虑利率在什么范围内变化时,投资方案不改变?③在1000万元资金情况下,若证券A的税前收益增加为4.5%,投资应否改变?若证券C的税前收益减少为4.8%,投资应否改变?【模型建立】设该经理向A,B,C,D,E五种证券分别投资了XA,XB.XC,XD,XE(万元),收益为Z万元,则原问题可以描述为:MAX Z XA∗0.043 XB∗0.027 XC∗0.025 XD∗0.022 XE∗0.045;XA XB XC XD XE 1000;XB XC XD 400;XA∗2 XB∗2 XC∗1 XD∗1 XE∗5 / XA XB XC XD XE 1.4;XA∗9 XB∗15 XC∗4 XD∗3 XE∗2 / XA XB XC XD XE 5;【模型求解】(1)根据题目中所给的数据,利用LINGO编写程序如下:MAX=XA*0.043+XB*0.027+XC*0.025+XD*0.022+XE*0.045;XA+XB+XC+XD+XE<=1000;XB+XC+XD>=400;(XA*2+XB*2+XC*1+XD*1+XE*5)/(XA+XB+XC+XD+XE)<=1.4;(XA*9+XB*15+XC*4+XD*3+XE*2)/(XA+XB+XC+XD+XE)<=5;【结果如下】Local optimal solution found.Objective value: 29.83636Infeasibilities: 0.000000Extended solver steps: 5Total solver iterations: 81Elapsed runtime seconds: 0.35Model Class: NLPTotal variables: 5Nonlinear variables: 5Integer variables: 0Total constraints: 5Nonlinear constraints: 2Total nonzeros: 23Nonlinear nonzeros: 10Variable Value Reduced Cost XA 218.1818 0.000000XB 0.000000 0.3018182E-01 XC 736.3636 0.000000XD 0.000000 0.6363636E-03 XE 45.45455 0.000000Row Slack or Surplus Dual Price1 29.83636 1.0000002 0.000000 0.2983636E-013 336.3636 0.0000004 0.000000 6.1818185 0.000000 2.363636即当该经理有1000万元资金时,应分别向A,B,C,D,E证券投资:XA 218.1818XB 0.000000XC 736.3636XD 0.000000XE 45.45455此时最大利润 .(2) 设该经理向A,B,C,D,E五种证券分别投资了XA,XB.XC,XD,XE(万元),收益为Z万元,则原问题可以描述为:MAX Z XA∗0.043 XB∗0.027 XC∗0.025 XD∗0.022 XE∗0.045 100∗0.0275 XB XC XD XE 100;XB XC XD 400;XA∗2 XB∗2 XC∗1 XD∗1 XE∗5 / XA XB XC XD XE 1.4;XA∗9 XB∗15 XC∗4 XD∗3 XE∗2 / XA XB XC XD XE 5;用LINGO编写如下程序:MAX=XA*0.043+XB*0.027+XC*0.025+XD*0.022+XE*0.045-100*0.0275;XA+XB+XC+XD+XE<=1100;XB+XC+XD>=400;(XA*2+XB*2+XC*1+XD*1+XE*5)/(XA+XB+XC+XD+XE)<=1.4;(XA*9+XB*15+XC*4+XD*3+XE*2)/(XA+XB+XC+XD+XE)<=5;【结果如下】Local optimal solution found.Objective value: 30.07000Infeasibilities: 0.000000Extended solver steps: 5Total solver iterations: 72Elapsed runtime seconds: 0.33Model Class: NLPTotal variables: 5Nonlinear variables: 5Integer variables: 0Total constraints: 5Nonlinear constraints: 2Total nonzeros: 23Nonlinear nonzeros: 10Variable Value Reduced Cost XA 240.0000 0.000000XB 0.000000 0.3018182E-01 XC 810.0000 0.000000XD 0.000000 0.6363636E-03 XE 50.00000 0.000000Row Slack or Surplus Dual Price1 30.07000 1.0000002 0.000000 0.2983636E-013 410.0000 0.0000004 0.000000 6.8000005 0.000000 2.600000即应分别向A,B,C,D,E证券投资:XA 240XB 0.000000XC 810XD 0.000000XE 50此时最大利润 .(3) 设该经理向A,B,C,D,E五种证券分别投资了XA,XB.XC,XD,XE(万元),收益为Z万元,则原问题可以描述为MAX Z XA∗0.045 XB∗0.027 XC∗0.025 XD∗0.022 XE∗0.045;XA XB XC XD XE 1000;XB XC XD 400;XA∗2 XB∗2 XC∗1 XD∗1 XE∗5 / XA XB XC XD XE 1.4;XA∗9 XB∗15 XC∗4 XD∗3 XE∗2 / XA XB XC XD XE 5;用LINGO编写如下程序:MAX=XA*0.045+XB*0.027+XC*0.025+XD*0.022+XE*0.045;XA+XB+XC+XD+XE<=1000;XB+XC+XD>=400;(XA*2+XB*2+XC*1+XD*1+XE*5)/(XA+XB+XC+XD+XE)<=1.4;(XA*9+XB*15+XC*4+XD*3+XE*2)/(XA+XB+XC+XD+XE)<=5;【结果如下】Local optimal solution found.Objective value: 30.27273Infeasibilities: 0.000000Extended solver steps: 5Total solver iterations: 81Elapsed runtime seconds: 0.31Model Class: NLPTotal variables: 5Nonlinear variables: 5Integer variables: 0Total constraints: 5Nonlinear constraints: 2Total nonzeros: 23Nonlinear nonzeros: 10Variable Value Reduced Cost XA 218.1818 0.000000XB 0.000000 0.3436364E-01 XC 736.3636 0.000000XD 0.000000 0.2727273E-03 XE 45.45455 0.000000Row Slack or Surplus Dual Price1 30.27273 1.0000002 0.000000 0.3027273E-013 336.3636 0.0000004 0.000000 6.3636365 0.000000 2.727273即应分别向A,B,C,D,E证券投资:XA 218.1818XB 0.000000XC 736.3636XD 0.000000XE 45.45455投资不变但是总的收益增加,Z=30.27273,相应的减少费用和松弛变量有变化。
运筹学 第一章 线性规划 清华
① ② ③
x2
②
Q3 Q2
Q4
③
3
①
o
4 Q1
x1
*
6
首先取z = 0,然后,使z逐 渐增大,直至找到最优解所对 应的点。
x2
②
Q3
Q4
③
Q2(4,2)
3
①
*
4 Q1
x1
可见,在Q2点z取到最大值。 因此, Q2点所对应的解为最优解。 Q2点坐标为(4,2)。 即: x1 = 4,x2 = 2
5
1.2 图解法 eg. eg. [eg.3]用图解法求eg.1。 max z = 2x1 + 3x2 1x1 + 2x2 ≤ 8 4x1 ≤ 16 4x2 ≤ 12 x1 ,x2 ≥ 0 解: (1)建立x1 - x2坐标; x (2)约束条件的几何表示; (3)目标函数的几何表示; z = 2x1 + 3x2
15
1.4 线性规划解的概念 设线性规划为 max z = CX ① AX = b ② X≥0 ③ 矩阵, (A为行满秩矩阵) A为m × n矩阵, n > m, Rank A = m (A为行满秩矩阵) 为行满秩矩阵 1、可行解:满足条件②、③的X; 可行解:满足条件② 2、最优解:满足条件①的可行解; 最优解:满足条件①的可行解; 条件 子矩阵, 则称B 3、基:取B为A中的m × m子矩阵,Rank B = m,则称B为线性 中的m 规划问题的一个基。 规划问题的一个基。 取B = (P1,P2,,Pm) ,P Pj = (a1j,a2j,,amj)T ,a 则称x1,x2,,xm为基变量,其它为非基变量。 则称x ,x 为基变量,其它为非基变量。
实验8线性规划-陈雨-2010012199
Value 295.0000 194.5000 0.000000 41.00000 1.000000 21.10000 1.000000 50.00000 0.8433498
Reduced
Slack or Surplus 489.5000 0.000000 0.000000 0.000000 0.000000 0.000000 0.1566502 0.000000 0.000000 0.000000 295.0000 194.5000 0.000000
c0 : 上游污染程度 ci1 : 工厂i产生污水浓度 ci 2 : 工厂i经处理后污水浓度 ci : 从处理站i流出的污水与江水混合之后的浓度 v0 : 江水上游流量 vi : 工厂i产生的污水流量 bi : 工厂i的污水处理系数 a12 : 工厂1、 2间江面自净系数 a23 : 工厂2、 3间江面自净系数 zi : 工厂i的处理费
0<=f<=100; y=0.043a+(0.054b+0.05c+0.044d)*0.5+0.045e-0.0275f; 程序代码如下:
clear all;clc; c=-0.01*[4.3 2.7 2.5 2.2 4.5 -2.75]; A1=[0 -1 -1 -1 0 0;0.6 0.6 -0.4 -0.4 3.6 0;4 10 -1 -2 -3 0;1 1 1 1 1 0]; A2=[1 1 1 1 1 -1]; b1=[-400;0;0;1100]; b2=1000; v1=[0 0 0 0 0 0]; [x,fv,ef,out,lambda]=linprog(c,A1,b1,A2,b2,v1)
Variable Cost Z1 0.000000 Z2 0.000000 Z3 1.000000 C12 0.000000 C1 0.000000 C22 0.000000 C2 0.000000 C32 0.000000 C3 0.000000 Row Price 1 1.000000 2 1.000000 3 1.000000 4 0.000000 5 100.5000 6 1010.000 7 0.000000 8 1.000000 9 1.000000 10 0.000000 11 0.000000 12 0.000000 13
数学实验线性规划
32
第32页,本讲稿共67页
加工奶制品的生产计划
1桶 牛奶 或
12小时 8小时
3公斤A1 4公斤A2
获利24元/公斤 获利16元/公斤
决策变量 目标函数
约束条件
x1桶牛奶生产A1 获利 24×3x1
x2桶牛奶生产A2
获利 16×4 x2
每天获利
Mz a7 xx1 26x4 2
原料供应 劳动时间 加工能力 非负约束
2、运输问题;
特点:从若干可能的计划(方案)中寻求某种意义下的
最优方案,数学上将这种问题称为最优化问题( optimization).
2002.5.
12
第12页,本讲稿共67页
优化问题的表述
最优化是企业运作、科技研发和工程设计中常见的问题。 要表述一个最优化问题(即建立数学模型),应明
明确三样东西:决策变量、约束条件 和目标函数. 决策变量:它们是决策者(你)所控制的那些数量,它们取什么数值需要 决策者来决策,最优化问题的求解就是找出决策变量的最优取值。
a1
a2
…
ai
…
a7
s1
s2
si
s7
C11
C12
Ci,j
C1j
C1,15
…
…
A1
A2
Aj
A15
b1
b2
bj
b15
7 15
min
cij xij
i1 j 1
15
s.t.
xij ai, i1,2,...,7
j1
7
xij bj
i1
j1,2,...,15
2002.5.
x ij 0 ,i 1 , 7 , j 1 , ,1 5
线性规划(《数值计算方法》清华大学出版社)
列向量线性无关, 已知 r ( Am × n ) = m , 不妨设 A的前 m 列向量线性无关,则可 取 B = ( P1 , P2 ,⋯ , Pm ) 为基,则 x1 ,⋯ , x m 为基变量。 为基, 为基变量。
(1 ) 一组决策变量; 一组决策变量; ( 2 ) 一个线性目标函数; 一个线性目标函数; ( 3 ) 一组线性的约束条件。 一组线性的约束条件。
的一般形式: 线性规划模型 ( LP )的一般形式:
min (max)
∑c x
i i =1
n
i
a11 x1 + a12 x 2 + ⋯ + a1n x n ≥ ( = , ≤ )b1 a x + a x + ⋯ + a x ≥ ( = , ≤ )b 22 2 2n n 2 21 1 ⋯ s .t . a x + a x + ⋯ + a x ≥ ( = , ≤ )b m2 2 mn n m m1 1 x i ≥ ( = , ≤ )0 , i = 1 , 2 ,⋯ , n
可行解
基本可行解
基本解
m 基本解数量 ≤ C n
定存在最优解? 是否在基本可行解中一 定存在最优解?
2 . 线性规划解的性质
定理 线性规划问题 ( LP )的解 x 是基本可行解的充分必 要条件 的顶点。 是 x 是 可行域 D 的顶点。
清华大学数学实验08讲
约束优化基本内容:LP,QP,NLP
1. 问题与模型 2. 基本原理 3. 算法和MATLAB实现
实例1: 奶制品生产销售计划
1桶 牛奶 或
12小时
3千克A1 获利12元/千克
1千克
2小时,1.5元
0.8千克B1
获利22元/千克
8小时 4千克A2
获利8元/千克
50桶牛奶, 480小时
1千克
2小时,1.5元
原料 供应
x1 + x5 + x2 + x6 ≤ 50 加工能力
3
4
附加约束
x1 + x5 ≤ 100 x3 = 0.8x5
劳动 4(x1 + x5 ) + 2(x2 + x6 )
x4 = 0.75x6
时间 + 2x5 + 2x6 ≤ 480 非负约束 x1,L x6 ≥ 0
实例2:投资组合问题
50万元基金用于投资三种股票A、B、C: A每股年期望收益5元(标准差2元),目前市价20元; B每股年期望收益8元(标准差6元),目前市价25元; C每股年期望收益10元(标准差10元),目前市价30元; 股票A、B收益的相关系数为5/24; 股票A、C收益的相关系数为–0.5; 股票B、C收益的相关系数为–0.25。
求解LP的特殊情形 max z = 3 x + x
1
2
x2 L1
L3
s.t . −x1x−1 +x2x≥2 ≤−22 ~L1
L2
0
x1
x − 2x
1
2
≤2
~L2
3 x + 2 x ≤ 14 ~L3
1
2
数学实验线性规划实验内容
数学实验线性规划实验内容数学实验线性规划应⽤题从下⾯各题中选做⼀题,要求写⼀篇论⽂,包括问题重述、问题分析、模型假设、模型建⽴和求解、结果及其分析。
1.炼油⼚将A, B, C三种原油加⼯成甲、⼄、丙三种汽油。
⼀桶原油加⼯成⼀桶汽油的费⽤为4元,每天⾄多能加⼯汽油14000桶。
原油的买⼊价、买⼊量、⾟烷值、硫含量,及汽油的卖出价、需求量、⾟烷值、硫含量由下表给出。
问如何安排⽣产计划,在满⾜需求的条件下使利润最⼤?⼀般说来,作⼴告可以增加销售,估计⼀天向⼀种汽油投⼊⼀元⼴告费,可使这种汽油⽇销量增加10桶,问如何安排⽣产和⼴告计划使利润最⼤?2.Inter-Trade公司由中国⼤陆、菲律宾购买⽆商标的纺织品,运到⾹港或台湾地区进⾏封装和标签后,再运到美国和法国销售。
已知两地间的运费如下(美元现Inter-Trade公司从中国⼤陆和菲律宾分别购得90吨和45吨⽆标品。
假设封装与标签不改变纺织品的重量,台湾只有封装和标签65吨的能⼒,A. 若美国市场需要有标品80吨,法国市场需要有标品55吨,试给该公司制订⼀个运费最少的运输⽅案。
B. 若美国市场的需求量增⾄100吨,法国市场的需求量增⾄60吨,已知美国市场和法国市场的基本售价分别为每吨4000美元和6000美元,⽽当供应量不能满⾜需求时,其售价为基本售价加上短缺费⽤,设短缺费⽤为每吨2000美元乘以k,其中k为当地短缺量(市场需求量减去供应量)占市场需求量的⽐例。
试为该公司制订⼀个盈利最⼤的运输⽅案,并给出盈利额(假设从中国⼤陆和菲律宾购买⽆标品的价格均为2000美元/吨,在⾹港和台湾地区封装和标签的费⽤均为500美元/吨)。
3. 奶制品加⼯⼀奶制品加⼯⼚⽤⽜奶⽣产A1, A2两种初级奶制品,它们可以直接出售,也可以分别深加⼯成B1, B2两种⾼级奶制品再出售。
按⽬前技术每桶⽜奶可加⼯成2公⽄A1和3公⽄A2,每桶⽜奶的买⼊价为10元,加⼯费为5元,加⼯时间为15⼩时。
线性规划实验
MatlAB 优化工具箱中采用的是投影法,它是单纯形法的一种变种, 不符合标准型首先转换成标准型。
在matlab 工具箱中,可用linprog 函数求解线性规划问题 假设数学模型为x f T xmin⎪⎩⎪⎨⎧≤≤=∙≤∙ub x lb beq x Aeq b x A 式中ub lb beq x f ,,,,为矢量,Aeq A ,为矩阵 Linprog 函数的调用格式如下:),,(b A f linprog x =,求解x f T xmin ,约束条件为b x A ≤∙。
),,,,(beq Aeq b A f linprog x =,求解上面的问题,但增加等式约束,及beq x Aeq =∙。
若没有不等式存在,则令[][],==b A 。
),,,,,,(ub lb beq Aeq b A f linprog x =,定义设计变量x 的上界和下界,使得x始终在该范围内,若没有等式约束,令[][],==beq Aeq 。
)0,,,,,,,(x ub lb beq Aeq b A f linprog x =,设置初值为x0.该选项适用于中型问题,默认时大型算法将忽略初值。
)(],[ linprog fval x =,返回解x 处的目标函数值fval 。
exitflag 参数表示算法终止的原因,下面列出不同值对应的退出原因 1 函数在解x 处收敛0 迭代次数超过opinion 。
MaxIter -2 没有找到可行点 -3 问题无界-4 执行算法时遇到NaN-5 原问题和对偶问题都不可行 -7 搜索方向太小,不能继续前进 应用实例例题一 工作人员计划安排问题,某昼夜服务的公交系统每天各时间段(每四个小时为一个时间段)所需的值班人数如表所示,这些人员在某一时间段后开始上班后要连续工作8个小时(包括轮流用膳时间),问该公交系统至少需要多少名工作人员才能满足值班的需要。
设i x 为第i 个时间段开始上班人员数,根据题意建立数学模型654321min x x x x x x z +++++= ⎪⎪⎪⎪⎩⎪⎪⎪⎪⎨⎧=≥≥+≥+≥+≥+≥+≥+6,,2,1,0302050607060655443322116 j x x x x x x x x x x x x x i首先输入下列系数f=[1;1;1;1;1;1];A=[-1 0 0 0 0 -1-1 -1 0 0 0 00 -1 -1 0 0 00 0 -1 -1 0 00 0 0 -1 -1 00 0 0 0 -1 -1]b=[-60;-70;-60;-50;-20;-30]; lb=zeros(6,1);然后调用linprog 函数b,[lbAfxfvallinprog([],)[],,,,]x =41.917628.082435.049414.95069.860620.1394fval =150.0000练习题1投资问题,某单位有一批资金用于4个工程项目的投资,各工程项目所得到净收益(投入资金的百分比)如下表所示表1 工程项目收益表由于某种原因,决定用于项目A的投资不大于其他各项投资之和,而用于项目B和C的投资要大于D的投资,确定使单位收益最大的投资分配方案。
数学实验——线性规划
实验5 线性规划分1 黄浩 43一、实验目的1.掌握用MATLAB工具箱求解线性规划的方法2.练习建立实际问题的线性规划模型二、实验内容1.《数学实验》第二版(问题6)问题叙述:某银行经理计划用一笔资金进行有价证券的投资,可供购进的证券以及其信用等级、到期年限、收益如下表所示。
按照规定,市政证券的收益可以免税,其他证券的收益需按50%的税率纳税。
此外还有如下限制:(1).政府及代办机构的证券总共至少要购进400万元;(2).所购证券的平均信用等级不超过1.4(信用等级数字越小,信用程度越高);(3).所购证券的平均到期年限不超过5年I.若该经理有1000万元资金,该如何投资?II.如果能够以2.75%的利率借到不超过100万元资金,该经理应如何操作?III.在1000万元资金情况下,若证券A的税前收益增加为4.5%,投资应否改变?若证券C的税前收益减少为4.8%,投资应否改变?模型转换及实验过程:I.设经理对于上述五种证券A 、B 、C 、D 、E 的投资额分别为:x 1、x 2、x 3、x 4、x 5(万元),全部到期后的总收益为z 万元。
由题目中的已知条件,可以列出约束条件为:{ x 2+x 3+x 4≥4002x 1+2x 2+x 3+x 4+5x 5≤1.4(x 1+x 2+x 3+x 4+x 5)9x 1+15x 2+4x 3+3x 4+2x 5≤5(x 1+x 2+x 3+x 4+x 5)x 1+x 2+x 3+x 4+x 5≤1000}而决策变量x =(x 1,x 2,x 3,x 4,x 5)T 的上下界约束为:x i ∈[0,1000]目标函数z =0.043x 1+0.027x 2+0.025x 3+0.022x 4+0.045x 5 将上述条件转变为matlab 的要求形式:使用matlab 解上述的线性规划问题(程序见四.1),并整理成表格:得出结论:当经理对A 、B 、C 、D 、E 五种证券分别投资218.18、0、736.36、0、45.45万元时,在全部收回时可得到29.836万元的税后收益,而且这种投资方式所得收益是最大的。
实验1 线性规划
实验一线性规划一、实验目的:1.安装WinQSB,LINDO,LINGO软件,了解WinQSB,LINDO,LINGO软件在Windows环境下的文件管理操作,熟悉软件界面内容,掌握操作命令。
2.用WinQSB,LINDO,LINGO软件求解线性规划。
3.掌握WinQSB软件写对偶规划,用灵敏度分析和参数分析的操作方法。
二、内容和要求:(一)安装并启动软件,建立新问题,输入模型,求解模型,结果的简单分析。
操作步骤:1.将WinQSB,LINDO,LINGO的安装文件复制到本地硬盘,再进行安装。
2.熟悉WinQSB,LINDO,LINGO软件子菜单内容及其功能,掌握操作命令。
3.用WinQSB求解线性规划。
启动程序,点击开始→程序→WinQSB→Linear and IntegerProgramming。
4.观赏例题。
点击File→Load problem→lp.lpp,点击菜单栏Solve and Analyze或点击工具栏中的图标用单纯形法求解,观赏一下软件用单纯形法迭代步骤。
用图解法求解,显示可行域,点击菜单栏点击菜单栏Option →Change XY Ranges and Colors,改变X1、X2的取值区域(坐标轴的比例),单击颜色区域改变背景、可行域等8种颜色,满足你的个性选择。
(二)求解线性规划的对偶问题,并用WinQSB软件进行检验。
用WinQSB,LINDO,LINGO 进行灵敏度分析和参数分析。
操作步骤:1.先自己求出下面线性规划的对偶问题,目标函数用w表示,变量用y表示。
max z = 4x1+2x2+3x3利润s.t.2x1+2x2+4x3≤100 材料1约束3x1+x2+6x3≤100 材料2约束3x1+x2+2x3≤120 材料3约束x1,x2,x3≥02.用WinQSB软件求出上题的对偶问题,变量用y表示,检验自己在第1问的结果。
具体方法是:启动线性规划与整数规划程序(Linear and Integer Programming),建立新问题,输入数据并存盘,文件名为or101.LPP,。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验8 线性规划
实验目的:
1)掌握用matlab优化工具箱解线性规划的方法
2)练习建立实际问题的线性规划模型
实验内容:
6,信息如下表所示。
市政证券的收益可以免税,其他证券的收益需按50%的税率纳税。
此
(1)政府及代办机构的证券总共至少要购进400万元;
(2)所购证券的平均信用等级不超过1.4
(3)所购证券的平均到期年限不超过5年。
①若该经理有1000万元资金,应该如何投资?
②如果能够以2.75%的李律借到不超过100万元资金,该经理应如何操作?
③在1000万元资金的情况下,若证券A的税前收益增加为4.5%,投资应否改变?若证券C的税前收益减少为4.8%,投资应否改变?
解:
①
问题的建模:
令总收益为z,每项投资各为x1,x2,x3,x4,x5
则有:
z=0.043x1+0.054*0.5x2+0.050*0.5x3+0.044*0.5x4+0.045x5
约束为:
x2+x3+x4≥400
0.6x1+0.6x2-0.4x3-0.4x4+3.6x5≤0 (平均信用等级不超过1.4)
4x1+10x2-x3-2x4-3x5≤0 (平均到期年限不超过5年)
x1+x2+x3+x4+x5=1000
x1,x2,x3,x4,x5≥0
模型的求解:
matlab代码如下:
c=[0.043 0.054*0.5 0.050*0.5 0.044*0.5 0.045];
A1=[0 -1 -1 -1 0;0.6 0.6 -0.4 -0.4 3.6;4 10 -1 -2 -3];
b1=[-400 0 0]
A2=[1 1 1 1 1];
b2=[1000];
v1=[0 0 0 0 0];
opt=optimset(‘LargeScale’,’off’,’simplex’,’on’); %选用单纯形法求解
[x,z0,ef,out,lag]=linprog(-c,A1,b1,A2,b2,v1,[],[],opt)
lag.ineqlin, lag.eqlin
结果是:
x =
218.1818
736.3636
45.4545
z0 =
-29.8364
lag =
ineqlin: [3x1 double]
eqlin: 0.0298
upper: [5x1 double]
lower: [5x1 double]
ans =
0.0062
0.0024
ans =
0.0298
因此:该经理应购入A 218.18万元,C 736.3636万元,E 45.4545万元。
最大收益是
29.8364万元。
②如果能够以2.75%的李律借到不超过100万元资金
问题的建模:
则z=0.043x1+0.054*0.5x2+0.050*0.5x3+0.044*0.5x4+0.045x5-(x1+x2+x3+x4+x5-1000)*0.0275
1000≤x1+x2+x3+x4+x5≤1100
其余不变。
模型的求解:
Matlab代码如下:
c=[0.043 0.054*0.5 0.050*0.5 0.044*0.5 0.045]-[1 1 1 1 1]*0.0275;
A1=[0 -1 -1 -1 0;0.6 0.6 -0.4 -0.4 3.6;4 10 -1 -2 -3;1 1 1 1 1;-1 -1 -1 -1 -1]; b1=[-400 0 0 1100 -1000]
v1=[0 0 0 0 0];
opt=optimset(‘LargeScale’,’off’,’simplex’,’on’); %选用单纯形法求解[x,z0,ef,out,lag]=linprog(-c,A1,b1,[],[],v1,[],[],opt)
lag.ineqlin, lag.lower
结果是:
x =
240.0000
810.0000
50.0000
z0 =
-2.5700
lag =
ineqlin: [5x1 double]
eqlin: [0x1 double]
upper: [5x1 double]
lower: [5x1 double]
ans =
0.0062
0.0024
0.0023
ans =
0.0302
0.0006
因此:该经理应购入A 240万元,C 810万元,E 50万元。
最大收益是2.57+1000*0.0275=30.07万元。
③修改matlab代码如下:
A税前收益增加为4.5%
c=[0.045 0.054*0.5 0.050*0.5 0.044*0.5 0.045];
A1=[0 -1 -1 -1 0;0.6 0.6 -0.4 -0.4 3.6;4 10 -1 -2 -3];
b1=[-400 0 0]
A2=[1 1 1 1 1];
b2=[1000];
v1=[0 0 0 0 0];
opt=optimset('LargeScale','off','simplex','on'); %选用单纯形法求解[x,z0,ef,out,lag]=linprog(-c,A1,b1,A2,b2,v1,[],[],opt)
lag.ineqlin,lag.eqlin
算得x =
218.1818
736.3636
45.4545
与①相同,所以说不应该改变投资计划。
C税前收益减少为4.8%:
c=[0.043 0.054*0.5 0.048*0.5 0.044*0.5 0.045];
A1=[0 -1 -1 -1 0;0.6 0.6 -0.4 -0.4 3.6;4 10 -1 -2 -3];
b1=[-400 0 0]
A2=[1 1 1 1 1];
b2=[1000];
v1=[0 0 0 0 0];
opt=optimset('LargeScale','off','simplex','on'); %选用单纯形法求解[x,z0,ef,out,lag]=linprog(-c,A1,b1,A2,b2,v1,[],[],opt)
lag.ineqlin,lag.eqlin
算得x =
336.0000
648.0000
16.0000
所以说投资方案有变化,应改为:A 336万元,D 648万元,E 16万元,其余不购入。