数学建模 第四章PPT课件
数学建模第四章运筹和优化

4-4 变分法模型(6)
4-4 变分法模型(7)
4-4 变分法模型(8)
4-4 变分法模型(9)
4-4 变分法模型(10)
4-4 变分法模型(11)
4-4 变分法模型(12)
然科学,开始了对无穷小算法的研究,独立地创立了微积
分的基本概念与算法,和牛顿并蒂双辉共同奠定了微积分
学。1676年,他到汉诺威公爵府担任法律顾问兼图书馆馆
长。1700年被选为巴黎科学院院士,促成建立了柏林科学
院并任首任院长。
•
1716年11月14日,莱布尼兹在汉诺威逝世,终年70岁。
4-4 变分法模型(5)
4-1 线性规划模型(21)
4-1 线性规划模型(22)
4-41-1 线线性性规规划划模模型型((232)3)
4-1 线性规划模型(24)
4-1 线性规划模型(25)
4-1 线性规划模型(26)
4-1 线性规划模型(27)
பைடு நூலகம் 4-1 线性规划模型(28)
4-1 线性规划模型(29)
4-1 线性规划模型(30)
期的数学,并获得了哲学硕士学位。
•
20岁时,莱布尼兹转入阿尔特道夫大学。这一年,他发表了第一
篇数学论文《论组合的艺术》。这是一篇关于数理逻辑的文章,其基
本思想是出于想把理论的真理性论证归结于一种计算的结果。这篇论
文虽不够成熟,但却闪耀着创新的智慧和数学才华。
莱布尼兹(3)
•
莱布尼兹在阿尔特道夫大学获得博士学位后便投身外
纳什2
纳什3
• 简介 约翰•纳什(JOHN
F.NASH)美国人 (1928- )由 于他与另外两位数学家在非 合作博弈的均衡分析理论方 面做出了开创性的贡献,对 博弈论和经济学产生了重大 影响,而获得1994年诺贝尔 经济奖。
数学建模课堂PPT(部分例题分析)

在解决实际问题时,概率论与数 理统计可以帮助我们描述和预测 随机事件,例如股票价格波动、
市场需求等。
概率论中的随机过程和数理统计 中的回归分析在金融、保险等领
域有广泛应用。
概率论与数理统计
概率论与数理统计是研究随机现 象的数学分支,用于对不确定性
和风险进行量化分析。
在解决实际问题时,概率论与数 理统计可以帮助我们描述和预测 随机事件,例如股票价格波动、
例题三:股票价格预测模型
要点一
总结词
要点二
详细描述
描述如何预测股票价格的走势
股票价格预测模型旨在通过分析历史数据和市场信息,来 预测股票价格的走势。该模型通常采用时间序列分析、回 归分析、机器学习等方法,来建立股票价格与相关因素之 间的数学关系。例如,可以使用ARIMA模型或神经网络模 型来预测股票价格的走势。
总结词
模型的复杂度
详细描述
在选择数学模型时,需要考虑模型的复杂度。如果数据量 较小,应选择简单模型以避免过拟合;如果数据量较大, 可以选择复杂模型以提高预测精度。
详细描述
在选择数学模型时,需要考虑模型的适用范围。例如,逻 辑回归模型适用于二分类问题,而K均值聚类模型则适用 于无监督学习中的聚类问题。
总结词
模型的复杂度
详细描述
在选择数学模型时,需要考虑模型的复杂度。如果数据量 较小,应选择简单模型以避免过拟合;如果数据量较大, 可以选择复杂模型以提高预测精度。
例题三:股票价格预测模型
总结词
分析模型的假设条件和局限性
详细描述
股票价格预测模型通常基于一些假设条件,如假设股票 价格是随机的或遵循一定的规律。然而,在实际情况下 ,股票价格受到多种因素的影响,如公司业绩、宏观经 济状况、市场情绪等。因此,这些模型可能存在局限性 ,不能完全准确地预测股票价格的走势。
《数学模型电子教案》课件

《数学模型电子教案》PPT课件第一章:数学模型概述1.1 数学模型的定义与分类1.2 数学模型的构建步骤1.3 数学模型在实际应用中的重要性1.4 数学模型与数学建模的区别与联系第二章:数学模型建立的基本方法2.1 直观建模法2.2 解析建模法2.3 统计建模法2.4 计算机模拟建模法第三章:线性方程组与线性规划模型3.1 线性方程组的求解方法3.2 线性规划的基本概念与方法3.3 线性规划模型的应用案例3.4 线性规划模型的求解算法第四章:微分方程与差分方程模型4.1 微分方程的基本概念与分类4.2 微分方程的求解方法4.3 差分方程的基本概念与分类4.4 差分方程的求解方法与应用第五章:概率论与统计模型5.1 概率论基本概念与随机变量5.2 概率分布与数学期望5.3 统计学基本概念与推断方法5.4 统计模型的应用案例第六章:最优化方法与应用6.1 无约束最优化问题6.2 约束最优化问题6.3 最优化方法的应用案例6.4 遗传算法与优化问题第七章:概率图与贝叶斯模型7.1 概率图的基本概念7.2 贝叶斯定理及其应用7.3 贝叶斯网络与推理方法7.4 贝叶斯模型在实际应用中的案例分析第八章:时间序列分析与预测模型8.1 时间序列的基本概念与分析方法8.2 自回归模型(AR)与移动平均模型(MA)8.3 自回归移动平均模型(ARMA)与自回归积分滑动平均模型(ARIMA)8.4 时间序列预测模型的应用案例第九章:排队论与网络流量模型9.1 排队论的基本概念与模型构建9.2 排队论在服务系统优化中的应用9.3 网络流量模型的基本概念与方法9.4 网络流量模型的应用案例第十章:随机过程与排队网络模型10.1 随机过程的基本概念与分类10.2 泊松过程与Poisson 排队网络10.3 马克威茨过程与随机最优控制10.4 排队网络模型的应用案例第十一章:生态学与种群动力学模型11.1 生态学中的基本概念11.2 种群动力学模型的构建11.3 差分方程在种群动力学中的应用11.4 种群动力学模型的案例分析第十二章:金融数学模型12.1 金融市场的基本概念12.2 金融数学模型概述12.3 定价模型与风险管理12.4 金融数学模型在实际应用中的案例分析第十三章:社会经济模型13.1 社会经济系统的基本特征13.2 经济数学模型的构建方法13.3 宏观经济模型与微观经济模型13.4 社会经济模型的应用案例第十四章:神经网络与深度学习模型14.1 人工神经网络的基本概念14.2 深度学习模型的构建与训练14.3 神经网络在数学建模中的应用案例14.4 当前神经网络与深度学习的发展趋势第十五章:数学模型在工程中的应用15.1 工程问题中的数学建模方法15.2 数学模型在结构工程中的应用15.3 数学模型在流体力学中的应用15.4 数学模型在其他工程领域中的应用案例重点和难点解析本《数学模型电子教案》PPT课件涵盖了数学模型概述、建模方法、线性方程组与线性规划、微分方程与差分方程、概率论与统计、最优化方法、概率图与贝叶斯模型、时间序列分析、排队论与网络流量模型、随机过程、生态学与种群动力学模型、金融数学模型、社会经济模型、神经网络与深度学习模型以及数学模型在工程中的应用等多个领域。
《数学建模》PPT课件

( x2
x1)
f
f (x2 ) (x2 ) f
2 1 ( x1) 22
1
f
( x1 )
f
(x2 )
3
f
( x1 ) x1
f (x2 ) x2
2 (12 f (x1)f (x2 ))1/2
如函数的导数容易求得,一般首先考虑使用三次插值
法,因为它具有较高效率。对于只需要计算函数值的方
法中,二次插值法是一个很好的方法,它的收敛速度较
优化模型
(2)多项式近似法 该法用于目标函数比较复杂的情 况。此时寻找一个与它近似的函数代替目标函数,并用 近似函数的极小点作为原函数极小点的近似。常用的近 似函数为二次和三次多项式。
二次内插涉及到形如下式的二次函数数据拟合问题:
mq() a2 b c
其中步长极值为:
b
2a
完整版课件ppt
求解单变量最优化问题的方法有很多种,根据目标函 数是否需要求导,可以分为两类,即直接法和间接法。 直接法不需要对目标函数进行求导,而间接法则需要用 到目标函数的导数。
完整版课件ppt
4
优化模型
1、直接法 常用的一维直接法主要有消去法和近似法两种: (1)消去法 该法利用单峰函数具有的消去性质进行
反复迭代,逐渐消去不包含极小点的区间,缩小搜索区 间,直到搜索区间缩小到给定允许精度为止。一种典型 的消去法为黄金分割法(Golden Section Search)。黄金 分割法的基本思想是在单峰区间内适当插入两点,将区 间分为三段,然后通过比较这两点函数值的大小来确定 是删去最左段还是最右段,或同时删去左右两段保留中 间段。重复该过程使区间无限缩小。插入点的位置放在 区间的黄金分割点及其对称点上,所以该法称为黄金分 割法。该法的优点是完整算版课法件p简pt 单,效率较高,稳定性好5 。
北师版高中数学选择性必修第一册精品课件 第4章 数学建模活动(三) 1 自主数学建模的结题报告

本专题在必修课程和选择性必修课程的基础上,通过具体实例,建立一些基
于数学表达的经济模型和社会模型,包括存款贷款模型、投入产出模型、
经济增长模型、凯恩斯模型、生产函数模型、等级评价模型、人口增长
模型、信度评价模型等.在教学活动中,要让学生知道这些模型形成的背景、
数学表达的道理、模型参数的意义、模型适用的范围,提升数学建模、数
【数学建模】
数学建模活动的基本过程如下:
数学探究活动是围绕某个具体的数学问题,开展自主探究、合作研究并最
终解决问题的过程.具体表现为:发现和提出有意义的数学问题,猜测合理
的数学结论,提出解决问题的思路和方案,通过自主探索、合作研究论证数
学结论.数学探究活动是运用数学知识解决数学问题的一类综合实践活动,
a
220
225
230
235
240
245
250
255
260
265
b
34
35
36
37
38
39
40
41
42
43
然后建立关系式b=0.2a-10.
(2)令b=30,代入公式b=0.2a-10,得a=200,脚的长度为200 mm.
(3)当a=282时,代入公式b=0.2a-10,解得b=46.4,所以分两种情况:如果简单
脚长a/mm
220
225
230
235
240
245
250
255
260
265
鞋号b
34
35
请解决下面的问题:
36
37
38
39
40
41
42
数学建模第4讲线性规划

解 编写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=[];
8 4 x1 8 3 x2 32 x1 24 x2
因检验员错检而造成的损失为:
(8 25 2% x1 8 15 5% x2 ) 2 8x1 12 x2
2024/8/3
数学建模
故目标函数为:
min z (32 x1 24 x2) (8x1 12 x2 ) 40 x1 36 x2
0 0 0 0.5 1.2 1.3];
b = [800; 900];
Aeq=[1 0 0 1 0 0
010010
0 0 1 0 0 1]; beq=[400 600 500];
To MATLAB (xxgh3)
vlb = zeros(6,1);
vub=[];
[x,fval] = linprog(f,A,b,Aeq,beq,vlb,vub)
解: 编写M文件xxgh2.m如下:
x1
min z (6
3
4)
x2
x3
s.t.
1
0
1 1
1 0
x1 x2 x3
120
50
30 0 20
x1 x2 x3
c=[6 3 4];
A=[0 1 0];
b=[50];
Aeq=[1 1 1];
beq=[120]; vlb=[30,0,20];
《数学建模》课件

第一章课程概述§1.1 数学模型与数学建模一.基本概念数学是研究现实世界中数量关系和空间形式的科学。
其产生以及许多重大发展都是和现实世界的生产活动和其他相应学科的需要密切相关的;同时,作为认识和改造世界的强有力的工具,又促进了科学技术和生产建设的发展。
特别在当今时代,由于计算机软硬件的迅速发展和普及,数学方法被广泛应用于生产实践、社会管理的各个领域和层面。
对具体的应用问题或问题类进行合理的简化假设以及适当的抽象并最终表述为某种数学结构,即我们在这里讨论的数学模型,是现代生产实践与社会生活实现优化决策和科学管理的必要环节。
而数学建模则是指根据实际需要或最终管理目标,对现实问题构建数学模型,对模型进行分析求解,并最终将模型解翻译为决策方案应用于实际的一个由诸多环节组成的一个完整过程。
为理解现实对象与数学模型的关系,以下给出数学建模的一个流程图:二.(引例1)椅子的平稳放置问题将(四脚)椅子置于不平的地面,通常只有三只脚着地,放不稳;然而只需稍挪动几次,就可以使四只脚同时着地,放稳了——这是我们在日常生活中遇到的一件很普通的事实。
这一现象是偶然的呢,还是有其必然性呢?三.(引例2)商人过河设有三名商人,各带一个随从,欲乘一小船渡河,小船只能容纳两人,须由他们自己划行。
随从们密约,在河的任何一岸,一旦随从的人数比商人多,就杀人越货。
而如何乘船渡河的大权掌握在商人们的手中。
商人们怎样才能安全渡河呢?椅子的平稳放置问题将(四脚)椅子置于不平的地面,通常只有三只脚着地,放不稳;然而只需稍挪动几次,就可以使四只脚同时着地,放稳了——这是我们在日常生活中遇到的一件很普通的事实。
这一现象是偶然的呢,还是有其必然性呢?以下的模型给出了肯定的回答。
一.模型假设:1.椅子四条腿一样长,椅脚与地面接触处可视为一点,四脚的连线呈正方形;2.地面高度是连续变化的,沿任何方向都不会出现间断(没台阶)。
即地面可视为数学上的连续曲面;3.对于椅脚的间距和椅腿的长度而言,地面是相对平坦的,使椅子在任何位置上至少有三只脚同时着地。
数学建模简明教程课件-第4章-线性代数模型

第4章 线性代数模型4.1 行列式与矩阵本节案例主要涉及线性代数中矩阵与方阵的行列式等概念,通过案例建立数学模型,加深对行列式、矩阵及矩阵运算等相关知识的进一步理解以及了解这些概念的实际应用。
4.1.1 过定点的多项式方程的行列式1.问题提出求通过空间中三个点(1,2,3),(3,5,6),(2,2,4)的平面方程。
2.模型建立与求解已知三个点可以确定一个平面,设平面方程为+0ax by cz d ++=,而三个点在这个平面上,所以它们均满足这个平面方程,因而有0,230,3560,2240.ax by cz d a b c d a b c d a b c d +++=⎧⎪+++=⎪⎨+++=⎪⎪+++=⎩ 这是一个以,,,a b c d 为未知量的齐次线性方程组,且,,,a b c d 不全为0,说明该齐次线性方程组必有非零解,于是系数行列式等于零,即11231035612241x y z =,从而得到平面方程为3340x y z +-+=。
计算的MATLAB 程序如下: clc, clear, syms x y zD=[x,y,z,1;1,2,3,1;3,5,6,1;2,2,4,1]; s=det(D) 3.模型拓展对于n 次多项式2012n n y a a x a x a x =++++L ,其系数为011,,,n a a a +L ,可由其曲线上1n +个横坐标互不相同的点112211(,),(,),,(,)n n x y x y x y ++L 所唯一确定。
因为1n +个点满足这个多项式,则有201121112012222220112111,,.n n nn n n n n n n a a x a x a x y a a x a x a x y a a x a x a x y ++++⎧++++=⎪++++=⎪⎨⎪⎪++++=⎩L L L L L L L L L L L L L L L L 这是一个含有1n +个方程,以011,,,n a a a +L 为1n +个未知量的线性方程组,其系数行列式为21112222221111111nn nnn n n n n n x x x x x x D x x x x x x +++=L L M MMM LL .(4.1)这是一个范德蒙行列式。
数学建模第4章

数学建模第4章(总27页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--欧拉方法和龙格-库塔方法求微分方程数值解,画出解的图形,对结果进行比较分析。
以下方程供选择:d) ''cos 0,(0)1,'(0)0,y y x y y +===幂级数解24681295512!4!6!8!y x x x x =-+-+-⋅⋅⋅解:原方程化为''cos ,(0)1,'(0)0y y x y y =-==记(1)(2)'x y x y =⎧⎨=⎩,并用t 代替x ,则原方程化为:(1)'(2)(2)'(1)cos x x x x t =⎧⎨=-⎩;且00(1)|1(2)|0t t x x ===⎧⎨=⎩;于是可以用龙格-库塔法求解。
【模型求解】:用Matlab 作龙格-库塔法求解:% chapter 4—%此函数是微分方程组function Xdot=ch41dfun(t,x)Xdot=[x(2),-cos(t)*x(1)]';%function I=ch41d(a)x0=[1,0]';[t,x]=ode45('ch41dfun',[0,a],x0);y=x(:,1);plot(t,y,'r');hold on;gtext('y');y1=1-1/jiecheng(2)*t.^2+2/jiecheng(4)*t.^4-9/jiecheng(6)*t.^6+55/jiecheng(8)*t.^8;plot(t,y1,'b');gtext('y1');[t,y,y1]hold off;运行程序可以得到图1 >> ch41d(10)图2 >> ch41d(15)图3>> ch41d(20)图4【结果分析】:由图1得:y(龙格-库塔方法)和y1(级数近似解)在0到大约的区间内是完全吻合的,从x=之后,两条曲线开始分离。
数学建模课件第四章

4.1.5
模型求解
• 在(4.1.4)中两式,取初始值,我们可以得到: p k Fk F0 (1 r ) [(1 r ) k 1], k 0,1,2,.., N r q k N Fk FN (`1 r ) [(1 r ) k N 1], k N 1,..., M r • 再分别取,k=N和k=M,并利用FM=0可以求出: q q M M N (1 r ) (1 )(1 r ) 0 p p 它是一个非线性方程。
lim xk x* 为方程
例4.2.4 对例4.2.1中方程考查用迭代法求根
2 bk ak 1 x xk k b a 2 2
4.2.2
• 确定新的含根区间 [ak 1 , bk 1 ],即如果 f (ak ) f ( xk ) 0 , 则根必在 [ak 1 , bk 1 ][ak , xk ] 内,否则必 在 [ak 1 , bk 1 ] [ xk , bk ] 内,且有: 1 bk 1 ak 1 (b a ) 。总之,由上 k 2 述二分法得到序列 xk ,由(4.2.2) 有: lim xk x 。
代数方程求根问题是一个古老的数学问题。早在16 世纪就找到了三次、四次方程的求根公式。但直到19世 纪才证明了 n 5 次的一般代数方程式是不能用代数公 式求解的,因此需要研究用数值方法求得满足一定精度 的代数方程式的近似解。
在工程和科学技术中许多问题常归结为求解非线性方 程式问题。正因为非线性方程求根问题是如此重要和基 础,因此它的求根问题很早就引起了人们的兴趣,并得 到了许多成熟的求解方法。下面就让我们首先了解一下 非线性方程的基本概念。
• 定理4.2.2 设 f ( x) 在 a, b 连续,且 f (a) f (b) 0 ,则存 在 x a, b ,使得 f ( x ) 0 ,即 f x 在 a, b)内存在实零点。 (
数学模型第04章第五版ppt课件

1 MILK TIME
3360.000 0.000000 0.000000
1.000000 48.00000
原料增加1单位, 利润增长48
2.000000 时间增加1单位, 利润增长2
CPCT 40.00000 0.000000 加工能力增长不影响利润
• 35元可买到1桶牛奶,要买吗? 35 <48, 应该买! • 聘用临时工人付出的工资最多每小时几元? 2元!
函数 z=c (常数) ~等值线
100 l4
l5 : x2 0
O
c l5
l2 C z=3360 l3
D x1
z=0 z=2400
在B(20,30)点得到最优解.
目标函数和约束条件是线性函数 可行域为直线段围成的凸多边形 目标函数的等值线为直线
最优解一定在凸多边 形的某个顶点取得.
模型求解
软件实现
结果解释
Total solver iterations:
2
最优解下“资源”增加
Variable Value X1 20.00000
Reduced Cost 1单位“效益”的增量 0.000000
X2 30.00000
0.000000
Row Slack or Surplus Dual Price 影子价格
X2 168.0000
0.000000
X3 19.20000
0.000000
X4 0.000000
0.000000
X5 24.00000
0.000000
X6 0.000000
1.520000
Row Slack or Surplus Dual Price
1
3460.800
数学建模教材(第四章)

第4章数学规划模型本章研究数学规划模型,其中包括:线性规划、整数规划、非线性规划、多目标规划与动态规划等内容.线性规划模型线性规划是运筹学的一个重要分支,随着计算机技术的发展,线性规划不仅在理论上已趋向成熟,而且在实际应用中也日益广泛与深入.本节将借助Lingo数学软件对线性规划模型进行求解.4.1.1问题的提出在生产管理和经营活动中经常提出一类问题,即如何合理地利用有限的人力、物力、财力等资源,以便得到最好的经济效果.引例1 普通生产计划安排问题某工厂在计划期内要安排生产Ⅰ、Ⅱ两种产品,已知生产单位产品所需的设备台时及A、B两种原材料的消耗,如表4-1所示.该工厂每生产一件产品Ⅰ可获利2元,每生产一件产品Ⅱ可获利3元,问应该如何安排计划使该工厂获利最多表普通生产计划安排问题ⅠⅡ设备原材料A 原材料B利润1422438台时16kg12kg引例2 奶制品的生产计划问题一奶品加工厂用牛奶生产A、B两种奶制品,1桶牛奶可以在甲类设备上用12小时加工成3公斤A,或者在乙类设备上用8小时加工成4公斤B,根据市场需求,生产的A、B全部能售出,且每公斤A获利24元,每公斤B获利16元.现在加工厂每天能得到50桶牛奶的供应,每天正式工人总的劳动时间为480小时,并且甲类设备每天最多能加工100公斤A,乙类设备的加工能力没有限制.试为该厂制定一个生产计划,使每天获利最大,并进一步讨论以下3个附加问题:⑴若用35元可以买到1桶牛奶,应否做这项投资若投资,每天最多购买多少桶牛奶⑵若可以聘用临时工人以增加劳动时间,付给临时工人的工资最多是每小时几元⑶由于市场需求变化,每公斤A的获利增加到30元,应否改变生产计划4.1.2模型建立1.引例1普通生产计划安排问题的模型建立对于引例1,可以设x、y分别表示在计划期内产品Ⅰ、Ⅱ的产量.若用z表示利润,这时,23z x y =+.因为设备的有效台时为8,因此应有限制条件:28x y +≤;同理考虑原材料的不同限制,可得如下限制条件:416x ≤,412y ≤.综上所述,该计划问题可用数学模型表示为:目标函数:max 23z x y =+约束条件:28416412x y x y +≤⎧⎪≤⎨⎪≤⎩0,0x y ≥≥2.引例2奶制品生产计划问题的模型建立对于引例2,可以设每天用1x 桶牛奶生产A ,用2x 桶牛奶生产B .类似引例1可得奶制品生产计划问题的数学模型:目标函数:12max 7264z x x =+约束条件:12121501284803100x x x x x +≤⎧⎪+≤⎨⎪≤⎩120,0x x ≥≥从以上两例可以看出,他们都属于同一类优化问题,他们的共同特征: ⑴每一个问题都用一组决策变量12(,,,)n x x x 表示某一方案;这组决策变量的值就代表一个具体方案,一般这些变量取值都是非负的;⑵存在一定的约束条件,这些约束条件可以用一组线性等式或线性不等式来表示;⑶都有一个要求达到的目标,它可用决策变量的线性函数来表示,这个函数称为目标函数.满足以上三个条件的数学模型称为线性规划数学模型.其一般形式为:目标函数:1122max(min)n n z c x c x c x =+++约束条件:11112211211222221122(,)(,)(,)n n n n m m mn n ma x a x a xb a x a x a x b a x a x a x b ++≤=≥⎧⎪++≤=≥⎪⎨⎪⎪++≤=≥⎩120,0,0n x x x ≥≥≥4.1.3模型求解1.引例1普通生产计划安排问题的模型求解使用Lingo 数学软件对引例1进行求解,编写程序如下:max =2*x+3*y; x+2*y<8; 4*x<16; 4*y<12; end求解结果为:目标函数的最大值14z =,即可获得最大利润14元;最优生产计划方案是:生产产品Ⅰ4件,生产产品Ⅱ2件.2.引例2奶制品生产计划问题的模型求解使用Lingo 数学软件对引例2进行求解,编写程序如下:max =72*x1+64*x2;x1+x2<50;12*x1+8*x2<480; 3*x1<100; end求解结果为:每天用20桶牛奶生产A ,用30桶牛奶生产B ,最大利润是3360元.下面来回答三个附加问题:⑴针对附加问题1,可假设应投资购买x 桶牛奶,目标函数应修改为:12max 726435*z x x x =+-关于牛奶的约束条件也应作相应的修改:1250x x x +<+通过编程求解得:最大利润增加到3490元,因此,应作该项投资,每天最多购买10桶牛奶.⑵针对附加问题2,首先将劳动时间480小时增加1个小时,对原问题进行求解,可得最大利润由3360元增加到3362元,其中增加的2元就是劳动时间的影子价格.因此,若可以聘用临时工人以增加劳动时间,付给临时工人的工资最多是每小时2元.其次,若还想知道以低于每小时2元的价格增加劳动时间,最多可购买多少劳动时间可以对目标函数以及关于劳动时间的约束条件作类似的修改,然后进行求解.例如,若以每小时元的价格聘用临时工人,最多可购买小时.⑶针对附加问题3,只需改变目标函数中的系数即可.将原来的目标函数改为:12max 9064z x x =+,约束条件不变.通过求解可得:最大利润有所增加,由原来的3360元增加到3720元,但生产计划没有改变,仍然是每天用20桶牛奶生产A ,用30桶牛奶生产B . 4.1.4应用实例例1一个家庭有625英亩的土地可以用来种植农作物,这个家庭考虑种植的农作物有玉米、小麦和燕麦,预计可以有1000英亩-英尺的灌溉用水,农场工人每周可以投入的工作时间为300小时,其他的数据在表4-2中给出,为能够获得最大收益,每种作物应该种植多少表农场问题的有关数据玉 米 小 麦 燕 麦 现有量 灌溉用水(英亩-英尺) 劳力(人-小时/周) 收益(美元)4002002501000 300解 设应种植玉米1x 英亩,小麦2x 英亩和燕麦3x 英亩.可得如下线性规划模型:目标函数:123max 400200250z x x x =++约束条件:1231231233 1.510000.80.20.3300625x x x x x x x x x ++≤⎧⎪++≤⎨⎪++≤⎩1230,0,0x x x ≥≥≥使用Lingo 数学软件进行求解,编写程序如下:max =400*x1+200*x2+250*x3;x1+x2+x3<625; *x1+*x2+*x3<300; 3*x1+x2+*x3<1000; end程序运行结果为:应分别种植玉米187.5英亩,小麦437.5英亩和燕麦0英亩,获最大收益162500美元.例2 某市有甲、乙、丙、丁四个居民区,自来水由A 、B 、C 三个水库供应.四个区每天必须得到保证的基本生活用水量分别为30,70,10,10千吨,但由于水源紧张,三个水库每天最多只能供应50,60,50千吨自来水.由于地理位置的差别,自来水公式从各水库向各地区送水所需付出的引水管理费不同(见表4-3,其中C 水库与丁地区之间没有输水管道),其它管理费用都是450元/千吨.根据公司规定,各区用户按照统一标准900元/千吨收费.此外,四个区都向公司申请了额外用水量,分别为每天50,70,20,40千吨.该公司应如何分配供水量,才能获利最多为了增加供水量,自来水公司正在考虑进行水库改造,使三个水库每天的最大供水量都提高一倍,问那时供水方案应如何改变公司利润可增加多少表引水管理费引水管理费(元/千吨)甲 乙 丙 丁 A B C160 140 190130 130 200220 190 230170 150 /解 决策变量应为A 、B 、C 三个水库(1,2,3)i =分别向甲、乙、丙、丁四个区(1,2,3,4)j =的供水量.设i 水库向j 区的日供水量为ij x 千吨,由于C 水库与丁区之间没有输水管道,即340x =,因此只有11个决策变量.于是可得如下线性规划模型: 目标函数:11121314max (450160)(450130)(450220)(450170)z x x x x =-+-+-+-21222324313233(450140)(450130)(450190)(450150)(450190)(450200)(450230)x x x x x x x +-+-+-+-+-+-+-约束条件:水库供应量限制可以表示为:1112131421222324313233506050x x x x x x x x x x x +++≤+++≤++≤ 各区基本用水量与额外用水量限制为:11213111213111213111213130807014010301050x x x x x x x x x x x x ≤++≤≤++≤≤++≤≤++≤0,1,2,3;1,2,3,4ij x i j ≥==使用Lingo 数学软件进行求解,编写程序如下:max =(450-160)*x11+(450-130)*x12+(450-220)*x13+(450-170)*x14+(450-140)*x21+(450-130)*x22+(450-190)*x23+(450-150)*x24 +(450-190)*x31+(450-200)*x32+(450-230)*x33; x11+x12+x13+x14<50; x21+x22+x23+x24<60; x31+x32+x33<50; x11+x21+x31<80; x11+x21+x31>30; x12+x22+x32<140; x12+x22+x32>70; x13+x23+x33<30; x13+x23+x33>10; x14+x24<50; x14+x24>10; end程序运行结果为:A 水库向乙区供水50千吨;B 水库向乙、丁区分别供水50,10千吨;C 水库向甲、丙分别供水40,10千吨.最大利润为47600元.对于本例来说,无论是目标函数还是约束条件都显得比较麻烦,特别是目标函数为多项相加.随着水库与居民区个数的增加,程序会更加复杂.下面来研究更一般的编程方法.为此,需假定C 水库向丁地区的引入管理费用为无穷大,本例可用1000元/千吨来代替.使用Lingo 数学软件中的高级编程技巧进行求解,编写程序如下:model:sets:sk/1..3/:g;dq/1..4/:sl1,sl2;link(sk,dq):c,x;endsetsdata:c=160 130 220 170140 130 190 150190 200 230 1000;g=50 60 50;sl1=30 70 10 10;sl2=80 140 30 50;enddata[obj] max=@sum(link(i,j):x(i,j)*(450-c(i,j)));@for(sk(i):@sum(dq(j):x(i,j))<g(i));@for(dq(j):@sum(sk(i):x(i,j))>sl1(j));@for(dq(j):@sum(sk(i):x(i,j))<sl2(j));end程序运行结果完全相同.如果三个水库每天的最大供水量都提高一倍,只需将数据段中的供水量修改成:g=100 120 100;或者对第一个约束条件作简单修改,在小于号后面将供水量扩大2倍,其它条件不变.最后的运行结果为:A水库向乙区供水100千吨;B水库向甲、乙、丁区分别供水30,40,50千吨;C水库向甲、丙分别供水50,30千吨.总利润为88700元.评注:本例考虑的是将某种物资从若干供应点运往一些需求点,在供需量约束条件下使总费用最少,或总利润最大.这类问题一般称为运输问题.注意:本例目标函数采用的是最大利润,而非最小成本.一般来说,成本最小,未必利润最大.当总收入是常数时,最小成本与最大利润是等价的;若总收入随决策变量的改变而变化时,最小成本与最大利润并不等价.通常追求的目标应该是最大利润,而非最小成本.非线性规划在工程技术、经济管理、交通运输和日常生活等诸多领域中,很多实际问题可以归结为线性规划问题,其目标函数和约束条件都是自变量(决策变量)的一次函数(线性函数).但是,还有另外一些问题,其目标函数和(或)约束条件很难用线性函数表达.如果目标函数或约束条件中包含有非线性函数,就称这种规划问题为非线性规划问题.由于计算机技术的快速发展,使非线性规划的理论及其应用在近几十年来得以长驱进展.特别是Lingo数学软件的开发与应用,对非线性规划模型的求解提供了很大的帮助.4.2.1问题的提出1.引例1液体原料混合问题某公司将4种不同含硫量的液体原料(分别记为甲、乙、丙、丁)混合生产两种产品(分别记为A 、B ).按照生产工艺的要求,原料甲、乙、丁必须首先倒入混合池中混合,混合后的液体再分别与原料丙混合生产A 和B .已知原料甲、乙、丙、丁的含硫量分别是3,1,2,1(%),进货价格分别为6,16,10,15(千元/吨);产品A 、B 的含硫量分别不能超过,(%),售价分别为9,15(千元/吨).根据市场信息,原料甲、乙、丙的供应没有限制,原料丁的供应量最多为50吨;产品A 、B 的市场需求量分别为100、200(吨),问应如何安排生产2.引例2最佳选址问题某乡镇由12个主要的自然村组成,每个自然村的位置(用平面坐标x ,y 表示,距离单位:km )和自然村的人口数(R )如表4-4所示. 试根据需要解决如下问题:⑴ 目前准备在该乡镇建一个服务网点为各村提供各种服务,那么服务网点应该建在何处⑵ 假设各村人口增长了一倍,需要建两个服务网点,确定其位置.表最佳选址问题0 1234567 89101112X y R0 0 600 1000 800 1400 1200 700600800 1000 1200 1000 11004.2.2模型建立1.引例1液体原料混合问题的模型建立设11,y z 分别是产品A 中来自混合池和原料丙的吨数;22,y z 分别是产品B 中来自混合池和原料丙的吨数;混合池中原料甲、乙、丁所占的比例分别为124,,x x x ,优化目标是总利润(z )最大.目标函数为:11221212412max 9()15()10()(61615)()z y z y z z z x x x y y =+++-+-+++1241124212(961615)(1561615)(910)(1510)x x x y x x x y z z =---+---+-+-约束条件为:⑴原料最大供应限制:412()50x y y +≤⑵产品最大需求限制:1122100,200y z y z +≤+≤ ⑶产品最大含硫量限制:12411124221122(3)2(3)22.5, 1.5x x x y z x x x y z y z y z ++++++≤≤++⑷其它限制:12412411221,,,,,,,0x x x x x x y z y z ++=≥2.引例2最佳选址问题的模型建立 (1)模型一的建立设服务网点的坐标为:(,)a b ;自然村的位置坐标:(,),1,2,,12i i x y i =;自然村的人口数:,1,2,,12i r i =,服务网点到各自然村的距离为:,1,2,,12i d i =.以自然村的人口数作为距离的权重,优化的目标为总距离最小.目标函数为:121min i ii z rd==∑约束条件为:1,2,,12i d i ==(2)模型二的建立设两个服务网点的坐标分别为:(,),1,2i i a b i =;自然村的位置坐标:(,)j j x y ,1,2,,12j =;自然村的人口数:,1,2,,12j r i =;服务网点i 到自然村j 的距离为:,1,2;1,2,,12ij d i j ==;服务网点i 对自然村j 服务的人口数为:,1,2ij c i =;1,2,,12j =;(),1,2k i i =表示第i 个服务网点服务的人口数占人口总数的比例.以服务网点对自然村服务的人口数作为距离的权重,优化的目标为总距离最小.目标函数为:12211min (,)(,)j i z c i j d i j ===⋅∑∑约束条件:12112121(,)(,)()()=()2()(,)2()j j i d i j c i j e i e i k i r j c i j r j ===⎧=⎪⎪=⎪⎪⎪⎨⎪⎪⎪⎪≥⎪⎩∑∑∑从以上两个引例可以总结出非线性规划的一般模型: 目标函数:12max(min)(,,,)n z f x x x =约束条件:1212(,,,)0,1,2,,(,,,)0,1,2,,i n j n h x x x i mg x x x j l ==⎧⎨≥=⎩目标函数为一般非线性函数,约束条件为一般非线性等式或非线性不等式.一般来说,目标函数与约束条件中只要有非线性项存在,即为非线性规划.特别地,若某非线性规划的目标函数为决策变量的二次函数,约束条件又全是线性的,就称这种规划为二次规划.4.2.3模型求解1.引例1液体原料混合问题的模型求解使用Lingo 数学软件进行求解,编写程序如下:max =(9-6*x1-16*x2-15*x4)*y1+(15-6*x1-16*x2-15*x4)*y2+(1-10)*z1+(15-10)*z2; x4*(y1+y2)<50;y1+z1<100;y2+z2<200;((3*x1+x2+x4)*y1+2*z1)/(y1+z1)<; ((3*x1+x2+x4)*y2+2*z2)/(y2+z2)<; x1+x2+x4=1; end用Lingo 求解时,如果怀疑不是全局最优解,用"LINGO|OPTIONS "菜单命令启动"Global Solver "选项卡上的"Use Global Solver "选项,然后求解,可以得到全局最优解如下:24220.5,100x x y z ====,其余为0;目标函数值为450.如果将产品最大含硫量限制的约束条件作简单修改后,也可直接进行求解,并得到相同的结果.修改后的程序如下:max =(9-6*x1-16*x2-15*x4)*y1+(15-6*x1-16*x2-15*x4)*y2+(1-10)*z1+(15-10)*z2; x4*(y1+y2)<50;y1+z1<100;y2+z2<200;!((3*x1+x2+x4)*y1+2*z1)/(y1+z1)<; (3*x1+x2+**z1<0;!((3*x1+x2+x4)*y2+2*z2)/(y2+z2)<; (3*x1+x2+*y2+*z2<0; x1+x2+x4=1; end2.引例2最佳选址问题的模型求解针对模型一,使用Lingo 数学软件进行求解,编写程序如下: model :title :最佳选址(一); sets :point/1..12/:x,y,r,dis; endsets data :X=0 ; Y=0 ;r=600 1000 800 1400 1200 700 600 800 1000 1200 1000 1100; enddata@for (point(i): dis(i)=((x(i)-a)^2+(y(i)-b)^2)^(1/2)); min =@sum (point: dis*r); end用Lingo 求解得到结果为: 3.601, 6.514a b ==.针对模型二,若取(1)(2)0.5k k==,使用Lingo数学软件进行求解,编写程序如下:model:title:最佳选址(一);sets:point/1..12/:x,y,r;weizhi/1..2/:a,b,e;link(weizhi,point):c;endsetsdata:X=0 ;Y=0 ;r=600 1000 800 1400 1200 700 600 800 1000 1200 1000 1100;enddatasubmodel xuanzhi:min=@sum(link(i,j): c(i,j)*((a(i)-x(j))^2+(b(i)-y(j))^2)^(1/2));@for(weizhi(i): @sum(point(j):c(i,j))=e(i));@for(point(j): @sum(weizhi(i):c(i,j))) >2*r(j));endsubmodelcalc:e(1)=@sum(point:r);e(2)=@sum(point:r);@solve(xuanzhi);@ole('选址.xls','最佳位置a')=a;@ole('选址.xls','最佳位置b')=b;@ole('选址.xls','最优方案')=c;EndcalcEnd用Lingo求解得到结果为:两个服务网点的位置坐标为:(1.92,7.70);(5.70,5.00)各服务网点服务人数对照表见表4-5.表服务人数对照表(限制服务网点的服务人数相同)1 2 3 4 5 6 7 8 9 10 11 12 人口总数(千人)网点1 网点2 02 00 020 2针对模型二,若不考虑服务网点服务人数的限制,使用Lingo数学软件进行求解,编写程序如下:model:title:最佳选址(一);sets:point/1..12/:x,y,r;weizhi/1..2/:a,b,e;link(weizhi,point):c;endsets data :X=0 ; Y=0 ;r=600 1000 800 1400 1200 700 600 800 1000 1200 1000 1100; enddatasubmodel xuanzhi:min =@sum (link(i,j): c(i,j)*((a(i)-x(j))^2+(b(i)-y(j))^2)^(1/2)); !@for(weizhi(i): @sum(point(j):c(i,j))=e(i)); @for (point(j): @sum (weizhi(i):c(i,j))>2*r(j)); endsubmodel calc :!e(1)=@sum(point:r); !e(2)=@sum(point:r); @solve (xuanzhi);@ole ('选址.xls','最佳位置a')=a; @ole ('选址.xls','最佳位置b')=b; @ole ('选址.xls','最优方案')=c; endcalc用Lingo 求解得到结果为:两个服务网点的位置坐标为:(6.434,3.411);(2.540,7.936),各服务网点服务人数对照表见表4-6.表服务人数对照表(服务网点服务人数不限制)1 2 3 4 5 6 7 8 9 10 11 12 人口总数(千人)网点1 网点2 0 0 2 0 0 0 0 0 0 2 0 024.2.4应用实例例1求解二次规划:221212min 810z x x x x =+--12326x x +≤120,0x x ≥≥解 本例编写简单的Lingo 程序即可求解,编写Lingo 程序如下:max =8*x1+10*x2-x1^2-x2^2;3*x1+2*x2<6; 求解结果为:120.308, 2.538x x ==;目标函数值为:min 21.308z =例2 一个飞行管理问题在约10,000米高空的某边长160公里的正方形区域内,经常有若干架飞机作水平飞行.区域内每架飞机的位置和速度向量均由计算机记录其数据,以便进行飞行管理.当一架欲进入该区域的飞机到达区域边缘时,记录其数据后,要立即计算并判断是否会与区域内的飞机发生碰撞.如果会碰撞,则应计算如何调整各架(包括新进入的)飞机飞行的方向角,以避免碰撞.现假定条件如下:⑴不碰撞的标准为任意两架飞机的距离大于8公里;⑵飞机飞行方向角调整的幅度不应超过30度;⑶所有飞机飞行速度均为每小时800公里;⑷进入该区域的飞机在到达区域边缘时,与区域内飞机的距离应在60公里以上;⑸最多需考虑6架飞机;⑹不必考虑飞机离开此区域后的状况.请你对这个避免碰撞的飞行管理问题建立数学模型.列出计算步骤,对以下数据进行计算(方向角误差不超过度).要求飞机飞行方向角调整的幅度尽量小.设该区域4个顶点的座标为(0,0),(160,0),(160,160),(0,160).记录数据为:飞机编号横座标x 纵座标y 方向角(度)1 150 140 2432 85 85 2363 150 1554 145 50 1595 130 150 230新进入 0 0 52注:方向角指飞行方向与x轴正向的夹角.试根据实际应用背景对你的模型进行评价与推广.解模型一:圆状模型下面是本例圆状模型建模的全过程.1.问题分析根据题目的条件,可将飞机飞行的空域视为二维xoy平面中的一个正方形区域,顶点(0,0),(160,0),(160,160),(0,160).各架飞机的飞行方向角为飞行方向与x 轴正向夹角(转角).根据两飞机不碰撞的标准为二者距离大于8km,可将每架飞机视为一个以飞机坐标点为圆心、以4km为半径的圆状物体(每架飞机在空域中的状态由圆心的位置矢量和飞行速度矢量确定).这样两架飞机是否碰撞就化为两圆在运行过程中是否相交的问题.两圆是否相交只要讨论它们的相对运动即可.2.模型假设⑴飞机进入区域边缘时,立即作出计算,每架飞机按照计算后的指示立即作方向角改变;⑵每架飞机在整个过程中至多改变一次方向;⑶忽略飞机转向的影响(转弯半径和转弯时间的影响);⑷新飞机进入空域时,已在空域内部飞行的飞机的飞行方向已调合适,不会碰撞;⑸对每架飞机方向角的相同调整量的满意程度是一样的.3.模型的建立符号说明:i,j表示第i,第j架飞机的圆心;表示第i架飞机与第j架飞机的碰撞角,是两圆公切线的夹角中指向圆的那个ij角的一半,ij ji αα=;ij v 表示第i 架飞机相对于第j 架飞机的相对飞行速度; ij r 表示第i 架飞机与第j 架飞机的圆心距;ij β表示第i 架飞机对于第j 架飞机的相对速度与两架飞机圆心连线的夹角.规定以第i 架飞机为原点,i →j 连线从i 指向j 为正方向,逆时针旋转为正角,顺时针旋转为负角;AB ,CD 为两圆的公切线,//,//im AB in CD . 另外再引入记号:i θ表示第i 架飞机的飞行方向与x 轴正向的夹角(转角);(,)i i x y 表示第i 架飞机在坐标系中的位置矢量; i v 表示第i 架飞机的飞行速度矢量.由前面的分析将飞机作为圆状模型进行研究.两圆不相交,则表明不会发生碰撞事故;若两圆相交,则表明会发生碰撞事故.为了研究两飞机相撞问题,采用相对速度作为研究对象,因为飞机是否相撞的关键是相对速度,图4-1给出任意两架飞机间的关系.图4-1 第i 架飞机与第j 架飞机的碰撞角由图4-1中的关系得到两飞机不相撞(两圆不相交)的充要条件是||||ij ij βα>.当||||ij ij βα≤时,则通过调整两架飞机的方向角i θ,j θ,使飞机不相撞.首先讨论相对飞行速度的方向角ij β的改变量ij β∆与第i 、第j 架飞机方向角的改变量i θ∆, j θ∆的关系.由题目条件知,对于第i 架飞机:||800i v km A ==.设第i ,j 架飞机改变飞行方向前的速度分别为:i 1i i v Ae θ=,i 1j j v Ae θ=;改变飞行方向后的速度分别为:i()2i i i v Ae θθ+∆=,i()2j j j v Aeθθ+∆= .则飞行方向改变前后的相对速度分别为:i i 111()j i ij i j v v v A e e θθ=-=- i()i()222()j j i i ij i j v v v A e e θθθθ+∆+∆=-=-2i()i()i 1i ()()j j i i j i ijij v A e e v A e e θθθθθθ+∆+∆-=-cos()isin()cos()isin()cos isin cos isin i i i i j j j j i j j jθθθθθθθθθθθθ+∆++∆-+∆-+∆=+--2sin(sin i cos)222sin(sini cos)222i i j ji i j ji i j ji j i ji jθθθθθθθθθθθθθθθθθθ+∆--∆+∆++∆+∆++∆-=-++-i2sin 2sin 2i ji i j ji jeθθθθθθθθ∆+∆+∆--∆=-即2ij v 与1ijv 辐角相差2i jθθ∆+∆.将其归纳为:定理 对第i ,j 架飞机,其相对速度方向角的改变量ij β∆等于两飞机飞行方向角的改变量之和的一半2i jθθ∆+∆.由题目的要求调整飞行方向角时不能超过30°,即|i θ∆|≤30 , i=1,2,…,6. 要保证调整飞行方向后飞机不碰撞,应有: ||ij ij ij ββα+∆≥ 于是可得如下非线性规划模型: 目标函数:621min ||i i θ=∆∑约束条件:||,,1,2,,6,2||301,2,,6ij ij ij i j ij i i j i j i ββαθθβθ+∆≥=≠⎧⎪∆+∆⎪∆=⎨⎪∆≤=⎪⎩, 其中ij β,ij α可由题中已知的参数计算得到:=arcsin(8/)ij ji ij r αα=;ij r =22sin sin arctan arctan cos cos i j j i ij i jj iy y x x θθβθθ--=--()-(); 其中,2arctan b a ()与arctan b a ()的区别为:2arctan ba()表示取值位于π-到π之间的辐角:可根据点(,)a b 所在的象限确定.由此计算得到的ij β取值位于2π-到2π之间,还需要将它转换到π-到π之间(超过π时就减去2π;小于π-就加上2π).4.模型求解计算任两架飞机间的参数ij β,编写Matlab 指令如下: clear,clcx=[ 150 140 243;85 85 236;150 155 ;... 145 50 159;130 150 230;0 0 52]; x0=x(:,1); y0=x(:,2);xita=x(:,3)*pi/180; b=zeros(6); for i=1:6for j=i+1:6x11=cos(xita(i))-cos(xita(j)); x12=sin(xita(i))-sin(xita(j)); if x11>=0b(i,j)=atan(x12/x11); elseif x12>=0b(i,j)=pi+atan(x12/x11); elseif x12<0b(i,j)=-pi+atan(x12/x11); endx21=x0(j)-x0(i); x22=y0(j)-y0(i); if x21>=0b(i,j)=b(i,j)-atan(x22/x21); elseif x22>=0b(i,j)=b(i,j)-atan(x22/x21)-pi;elseif x22<0b(i,j)=b(i,j)-atan(x22/x21)+pi;endif b(i,j)>pib(i,j)=b(i,j)-2*pi;elseif b(i,j)<-pib(i,j)=b(i,j)+2*pi;endendendb=b*180/pi;save beta b计算结果见表4-7.β的值表使用Matlab计算得到的ij1 2 3 4 5 6123456α可以在Lingo中直接计算.编写求解该问题的Lingo程序如下:对于ijmodel:title:飞行管理问题的非线性规划模型一;sets:plane/1..6/:x0,y0,d_cita;! d_cita为调整的角度;link(plane,plane)|&1#lt#&2:alpha,beta;endsetsdata:x0,y0=150 14085 85150 155145 50130 1500 0 ;beta=; enddata !计算alpha;@for (link(i,j):@sin (alpha*3./180)=8/((x0(i)-x0(j))^2+(y0(i)-y0(j))^2)^.5); @for (link(i,j):@abs (beta(i,j)+*d_cita(i)+*d_cita(j))>alpha(i,j);); @for (link:@bnd (0,alpha,90));@for (plane:@bnd (-30,d_cita,30)); [obj]min =@sum (plane:(d_cita)^2); end5.结果检验对题目所给实例进行计算得如下调整方案:10θ∆=, 20θ∆=, 3 2.062465θ∆=, 4-0.4954514θ∆=, 50θ∆=, 6 1.567013θ∆=.各飞行方向角按此方案调整后,系统各架飞机均满足||ij ij βα>(即不会相撞).其中有些飞机对可能会有||0.01ij ij βα-<(°是题目要求的计算精度).如果希望||0.01ij ij βα≥+,只须将模型中的ij α用0.01ij ij αα=+代替即可.6.模型评价与改进此模型采用圆状模型分析碰撞问题是合理的,同时采用相对速度作为判断标准,既体现了碰撞的本质(相对运动),又简化了模型的计算.题目要求飞机飞行方向角调整的幅度尽量小,这个尽量小是针对每架飞机而言的,同时也要求整体满意程度(即对管理层而言,应使每架飞机的调整都尽量的小).因此构造目标函数时,也可以认为若对方向角调整量最大的飞机而言,其调整量可满意,则由假设(5)对其余飞机调整量均可满意.即要求每架飞机的调整量都小于某个数θ(0)θ≥.故目标函数也可取:min θ.于是可得如下线性规划模型:目标函数:min θ约束条件:||,,1,2,,6,2||301,2,,6||1,2,,6ij ij ij i j iji i i j i j i i ββαθθβθθθ+∆≥=≠⎧⎪∆+∆⎪∆=⎪⎨⎪∆≤=⎪∆≤=⎪⎩,, 模型二: 最短距离模型1.问题分析目标函数的选取与模型一相同.进入该区域的飞机在到达该区域边缘时,与区域内的飞机的距离应在60km 以内,很容易验证目前所给数据是满足的,因此,约束条件只需要限制任意两架位于该区域内的飞机的距离应大于8km .但这个问题的难点在于飞机是动态的,这个约束不好直接描述.为此,可以考虑在飞行过程中任意两架飞机的最短距离大于8km 即可.飞行时间可以只考虑一架飞机飞越该区域所需的最长时间,若超过这个时间,即使两架飞机的最短距离小于8km ,由于飞机已经离开该区域,因此不再予以考虑.2.模型假设 与模型一相同.3.模型的建立 符号说明:i θ表示第i 架飞机的飞行方向与x 轴正向的夹角(转角);00(,)i i x y 表示第i 架飞机在调整前的位置坐标; (,)t t i i x y 表示第i 架飞机t 时刻的位置坐标; t 表示飞机的飞行时间; v 表示飞机的飞行速度;i T 表示第i 架飞机飞出区域的时刻;max T 表示任意一架飞机在该区域内停留的最长时间; min{,}ij i j T T T =;*ijt 表示第i 架飞机与第j 架飞机距离最短的时刻; i θ表示第i 架飞机的飞行方ij r 表示第i 架飞机与第j 架飞机的距离;2()[]64ij ij f t r =-记飞机飞行速率为v ,以当前时刻为0时刻,设第i 架飞机在调整前的位置坐标为00(,)i i x y ,t 时刻的位置坐标(,)t t i i x y ,即00cos ,sin t t i i i i i i x x vt y y vt θθ=+=+如果要严格表示两架位于该区域内的飞机的距离应大于8km ,则需要考虑每架飞机在区域内到为飞行时间的长度.记i T 为第i 架飞机飞出区域的时刻,即00min{0:cos 0,160;sin 0,160}i i i i i T t x vt y vt θθ=>+=+=记t 时刻第i 架飞机与第j 架飞机的距离为ij r ,并记2()[]64ij ij f t r =-,这时在区域内飞机不相撞的约束条件就变成了2()[]640,(0)ij ij ij f t r t T =-≥≤≤ 其中min{,}ij i j T T T = 此外,经过计算可以得到:002002()(cos cos )(sin sin )64ij i i j j i i j j f t x vt x vt y vt y vt θθθθ=+--++---2ij ij ij ij z b z c =++其中2sin2i jij z vt θθ-=00002[()sin()cos22i ji jij i j i j b x x y y θθθθ++=--+-002002()()64ij i j i j c x x y y =-+--所以,()ij f t 是一个关于ij z 的二次函数,当2ij ij b z =-,即/4sin2i jij t b v θθ-=-(记为*ij t )时,函数()ij f t 取最小值2/4ij ij b c -+.若*0ij t <,只要初始时刻不相撞即可,此时满足条件,不需要限制; 若*ij ij t T ≥,只需要()0ij ij f T ≥即可;若*0ij ij t T <<,*2()/40ij ij ij ij f t b c =-+≥即可,即.实际上,()0ij ij f T ≥在*0ij ij t T <<时也成立,因此,可以不再附加*ij ij t T ≥的条件,于是可得如下非线性规划模型:目标函数:621min ||i i θ=∆∑约束条件:2*||301,2,,6()040,(0)i ij ij ijij ij ij i f T b c t T θ⎧∆≤=⎪≥⎨⎪-≤<<⎩,4.模型求解由于ij T 的计算相当复杂,求解时可进一步简化:不单独考虑每架飞机在区域内停留的时间,而以最大时间max 0.283()T h ==代替,此时所有max =ij T T .实际上强化了问题的要求,即考虑了有些飞机可能已经飞出区域,但仍不允许两架飞机的距离小于8km .这个简化的模型可以如下输入Lingo软件:model:title: 飞行管理问题的非线性规划模型二;sets:plane/1..6/:x0,y0,cita0,cita1,d_cita;!cita0表示初始角度,cita1为调整后的角度,d_cita为调整的角度;link(plane,plane)|&1#lt#&2:b,c;endsetsdata:x0,y0,cita0=150 140 24385 85 236150 155145 50 159130 150 2300 0 52;max_cita=30;t_max=;v=800;pi=3.;enddatainit:d_cita=0 0 0 0 0 0;endinit@for(plane:cita1-cita0=d_cita);@for(link(i,j):b(i,j)=-2*(x0(i)-x0(j))*@sin((cita1(i)+cita1(j))*pi/360)+2*(y0(i)-y0(j))*@cos((cita1(i)+cita1(j))*pi/360);c(i,j)=(x0(i)-x0(j))^2+(y0(i)-y0(j))^2-64;);!避免碰撞的条件;!右端点非负;@for(link(i,j):[right](2*v*t_max*@sin((cita1(i)-cita1(j))*pi/360))^2+b(i,j)*(2*v*t_max*@sin((cita1(i)-cita1(j))*pi/360))+c(i,j)>0);!左端点非负;@for(link(i,j):c(i,j)>0);!最小点非负;@for(link(i,j):[minimum]@if(-b(i,j)/4/v/@sin((cita1(i)-cita1(j))*pi/360)#g t#0#and#-b(i,j)/4/v/@sin((cita1(i)-cita1(j))*pi/360)#lt#t_max,b(i,j)^2-4*c(i,j),-1)<0);!@for(link(i,j):b(i,j)^2-4*c(i,j)<0);@for(link:@free(b));。
精品课件资料数学建模第四章(1)(微分方程)

limW
t
(t
)
0.要导致死亡.
3. 只吃不活动也不行,因为这时b=0,W (t) W0 at, limW (t) . 说明要得肥胖症,很危险,也要导致
t
死亡(当然体重不会无限变大).
4. 举重运动员控制体重数学问题:已知 W0,要
达到的值为 W1 ,其期限为t,求a,b的最佳组合,
使
W1
a b
即少吃,可以控制体重的增加(少吃热量大的食 物,如糖、冰淇淋等)
(2)增大 b C . 即增加运动量可减轻体重.
D
反之,通过增大 a 或减小b 可达增肥目的.即 “多吃少动,易肥胖”.
美国养牛场作法:安装电网,使牛不动,来增肥.
2. 只吃维持生命所需的那部分新陈代谢的热量是不
行的,因为A=B使得a=0,
V[x(t t) x(t)] (Km r)t
t t
Kx(s)ds
t
x(0) x0
于是,令 t 0 得
dx a bx, t 0 dt
x(0) x0
其中,a Km r ,b K 解为
V
V
x(t)
a b
(x0
a )ebt b
Km
r
x0
(Km
r)
Kt
eV
K
K
这就是t时刻空气中含CO2的百分比。 通常
牛顿冷却(加热)定律:将温度为T的物体 放入处于常温 m 的介质中时,T的变化速率正 比于T与周围介质的温度差.
分析:假设房间足够大,放入温度较低或较 高的物体时,室内温度基本不受影响,即室温 分布均衡,保持为m,采用牛顿冷却定律是一个 相当好的近似.
建立模型:设物体在冷却过程中的温度为 T(t),t≥0,
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
例 5 .求二元函数f(x,y)= 5-x4-y4+4xy在 原点附近的极大值。 解:max fmin(-f)
x x(1), y x(2)
注:在使用fsolve, fminsearch等指令时, 多变量必须合写成一个向量变量,如用 x(1), x(2),…。
4.2 最小二乘拟合MATLAB指令
• 假设已知经验公式y=f(c,x)(c和x均可为向量), 要求根 据一批有误差的数据(xi,yi), i=0,1,…,n, 确定参数c.这
4.1 预备知识:极值
4.2 函数零点MATLAB指令
• 多项式
y=polyval(p,x) 求得多项式p在x处的值y,x可以是一 个或多个点
p3=conv(p1,p2) 返回多项式p1和p2的乘积 [p3,r]=deconv(p1,p2) p3返回多项式p1除以p2的商,r
返回余项 x=roots(p) 求得多项式p的所有复根. p=polyfit(x,y,k)用k次多项式拟合向量数据(x, y),返回
min(y) max(y)
返回向量y的最小值 返回向量y的最大值
[x,f]=fminbnd(fun,a,b) x返回一元函数y=f(x)在[a,b]内的 局部极小值点,f返回局部极小值 fun为函数句柄或inline。
[x,f]=fminsearch(fun,x0) x返回多元函数y=f(x)在初始值x0 附近的局部极小值点,f返回局部极小值. x, x0均为向量。
多项式的降幂系数
MATLAB中一个多项式用系数降幂排 列向量来表示。
例1.求多项式x3 + 2 x2 - 5的根
»p=[1 2 0 -5]; x=roots(p) , polyval(p,x)
例2.用2次多项式拟合下列数据. x 0.1 0.2 0.15 0 -0.2 0.3 y 0.95 0.84 0.86 1.06 1.50 0.72
4.2 函数零点MATLAB指令
x=fzero(Fun, x0) 返回一元函数Fun的一 个零点,其中Fun为函数句柄、 内嵌函数或字符串表达方式。 x0为标量时, 返回函数在x0附近的零点; x0为向量[a, b]时, 返回在[a,b]中的零点
[x,f,h]=fsolve(Fun, x0) x返回一元或 多元函数Fun在x0附近的一个零点, 其中x0为迭代初值; f返回Fun在x的函数值, 应该接近0; h返回值如果大于0, 说明计算结果可靠, 否则计算结果不可靠。
1.根据数据散布图,可选择线性函数、指 数函数或其它合理的函数形式拟合数据, 建立经验模型; 2.分析你的经验模型预测的人口数与实际 人口数的差别的成因,一般有: (1)模型的函数形式选择不当; (2)根据较少的数据建立经验模型,外推 预测会产生较大误差; (3)是由于人口政策和生育观念的改变使 人口数增长规律发生较大的改变.
ex.(分析题目) 下面是六十年代世界人口的增长数据(单位:亿):
年份1960 1961 1962 1963 1964 1965 1966 1967 1968 人口29.72 30.61 31.51 32.13 32.34 32.85 33.56 34.20 34.83
(1)请你仔细分析数据,绘出数据散布图并选择合 适的函数形式对数据进行拟合; (2)用你的经验回归模型试计算:以1960年为基准, 人口增长一倍需要多少年?世界人口何时将达到100 亿? (3)用你的模型估计2002年的世界人口数,请分析 它与现在的实际人口数的差别的成因.
f2, …, fm)
4.1 预备知识:极值
设x为标量或向量,y=f(x)是xD上的标量值函数。
如果对于包含x=a的某个邻域 ,有 f(a)f(x) (f(a)f(x))对任意x成立, 则称a为f(x)的一个局 部极小(大)值点。
如果对任意xD,有f(a)f(x)(f(a)f(x))成立, 则称a为f(x)在区域D上的一个全局极小(大)值点。
4.2 非线性函数的MATLAB表达
Fun=inline(‘funstr’,’var’) 定义一个Inline 函数,其中funstr是函数的表达式, var是变量名
Fun=@Mfun 定义一个函数句柄,这里 Mfun是函数的M文件表达方式
Fun=@(var)funstr 定义匿名函数,其中var 是变量名, funstr是函数的表达式
MATLAB数学实验
第四章 函数和方程
第四章 函数和方程
4.1 预备知识:零点、极值和最小二乘法 4.2 函数零点、极值和最小二乘拟合的
MATLAB指令 4.3 计算实验:迭代法 4.4 建模实验:购房贷款的利率和最佳订货
量
4.1 预备知识:零点
非线性方程 f (x) = 0 • 若对于数有f () = 0, 则称为方程的解或根,也
样的问题称为数据拟合。
• 最小二乘法就是求c使得均方误差最小化
n
Q(c)=
(yi f (c, xi ))2
i0
• 当f关于c是线性函数,问题转化为一个线性方程组求解,
且其解存在唯一。
• 如果f关于c是非线性函数,问题转化为函数极值问题
c= lsqnonlin (Fun,c0) 使用迭代法搜索最 优参数c. 其中Fun是以参数c(可以是向量) 为自变量的函数,表示误差向量 y-f(c,x)(x, y为数据), c0为参数c的近似值,作为迭代初值
称为函数f (x)的零点 • 若f () = 0, f ’()0 则称为单根。 • 若有k >1, f () = f ’() = …= f (k-1)() = 0,但f
(k)()0 , 称为k重根 • 非线性(组)f (x) = 0, x=(x1, x2, …, xn), f=(f1,
例3 求函数y=xsin(x2-x-1)在(-2, -0.1)内的 零点
>> fun=inline('x*sin(x^2-x-1)','x')
>> fzero(fun,[-2 -0.1])
例4 求方程组在原点附近的解
4x
y
1 10
ex
1
x
4
y
1
x2
0
8
xx(1) y x(2)
4.2 函数极值MATLAB指令