MATLAB在数学建模中的应用PPT教学课件
合集下载
MATLAB建模课件(全课件)
Matlab : 1) Matlab 主包:数百个核心内部函数; 2) 各种可选Toolbox”工具包‛: 功能性工具包:扩充Matlab的符号计算功能、图示 建模仿真功能、文字处理功能、硬件适时交互功 能;学科性工具包:Control toolbox,Optimization toolbox…..
4. 语法限制不严格,程序设计自由度大;
5. 图形功能强大;
6. 功能强大的工具箱; 7. 源程序的开放性; 优点:功能强大;界面友善,语言自然;开放性强。 编程效率高、易学易用.
二
Matlab 工作环境
运行Matlab的可执行文件,自动创建Matlab指令 窗(Command Window)。 初学者可在命令窗键入: >>demo 或 intro(入门演示) 发现指令不知如何使用时, help 命令将告诉你使 用。例: >>help sin SIN Sine. SIN(X) is the sine of the elements of X.
MATLAB
数学建模教研组
一 Matlab 简介
Matlab:矩阵实验室 MATrix + LABoratory 。 主要用于方便矩阵的存取,其基本元素是无须定义 维数的矩阵。
20世纪70年代,时任美国新墨西哥州大学计算机科学 系主任Cleve Moler教授出于减轻学生编成负担的动机, 为学生设计了一组调用LINPACK 和EISPACK库程序 的‚通俗易用‛的接口,此即用FORTRAN编写的萌 芽状态的MATLAB 1984年,Steve Bangert, Cleve Moler & John Little 成立MathWorks公司,正是把Matlab推向市 场。
数学建模MATLAB程序设计专题ppt课件
全局变量
全局变量(Global Variables)是可以在不同的函数工作空间和MATALB工作空间中共享使用的变量。 用 global定义, 而且每个要共享全局变量的函数和工作空间,都必须逐个定义, 先定义后使用. 注意:由于全局变量在任何定义过的函数中都可以修改,因此不提倡使用全局变量;使用时应十分小心,建议把全局变量的定义放在函数体的开始,全局变量用大写字符命名。
M函数文件的基本格式
函数声明行
function [输出变量列表] = 函数名(输入变量列表)
H1行(用%开头的注释行) 在线帮助文本 (用%开头) 编写和修改记录(用%开头)
函数体
创建M函数文件并调用的步骤
编写函数代码 将函数文件保存为“函数名.m”。 在命令窗口输入命令调用程序
利用泛函命令求极小值
2. fminsearch函数 :求多变量无约束非线性最小值。 x=fminsearch(h_fun,x0) x=fminsearch(‘funname’,x0) x0是最小值点的初始猜测值。
其它泛函命令
3 .fzero函数:求一维函数的零点,即求f(x)=0的根。 x=fzero(h_fun, x0, tol, trace) x=fzero(‘funname’, x0, tol, trace) x0有两个作用:预定待搜索零点的大致位置和搜索起始点;tol用来控制结果的相对精度,默认值为eps;trace指定迭代信息是否在运算中显示。
其它泛函命令
4. 数值积分:quad和quad8是基于数学上的正方形概念来计算函数的面积。 5. 微分方程的数值解:MATLAB提供ode23、ode45和ode113等多个函数求解微分方程的数值解。
泛函命令
在MATLAB中,所有以函数为输入变量的命令,都称为泛函命令。
MATLAB在数学建模中的应用ppt课件
y=
x^10+10^x+log(x)
>> diff(y) ans =
求 dy dx
Difference:差分 Differential:微分的
10*x^9+10^x*log(10)+1/x
可编辑课件PPT
17
例5 设 yln(1x), 求 d 2 y
>> syms x;
d x 2 x1
>> y=log(1+x); >> a=diff(y,x,2) a=
可编辑课件PPT
12
MATLAB操作窗口
双击桌面快捷键,启动软件。
可编辑课件PPT
接受命令的窗口
13
MATLAB在《微积分》中的应用 1、求函数值
例1 在命令窗口中键入表达式 zx2exyylnx3, 并求 x2,y4 时的函数值。
>> x=2,y=4 >>z=x^2+exp(x+y)-y*log(x)-3
可编辑课件PPT
11
MATLAB的环境
➢ 菜单项; ➢ 工具栏; ➢ 【Command Window】命令窗口; ➢ 【Launch Pad】分类帮助窗口; ➢ 【Workspace】工作区窗口; ➢ 【Command History】指令历史记录窗口; ➢ 【Current Directory】当前目录选择窗口;
0
>> int(exp(-x^2/2),0,1)
ans =
erf (x) 2 xet2dt
0
1/2*erf(1/2*2^(1/2))*2^(1/2)*pi^(1/2)
ans 2 2 2et2dt
MATLAB数学建模PPT课件
h(x,y,z),[x,y,z])
f f f
x
y
z
g g g
x
y
z
h h h
x
y
z
第27页/共68页
七、积分运算 表2.3 符号积分的函数格式
函数格式
说明
int(s)
求表达式s对默认自变量的不定积分
int(s,x)
求表达式s对自变量x的不定积分
int(s,a,b)
求表达式s对默认自变量从a到b的定积分
功能键 ↑,Ctrl-p ↓,Ctrl-N ←,Ctrl-B →,Ctrl-F Home,Ctrl-A End,Ctrl-E Esc Del,Ctrl-D Backspace Ctrl-K
功能 重新调入上一命令行 重新调入下一命令行 光标左移一个字符 光标右移一个字符 光标移到行首 光标移到行尾 清除命令行 删除光标处字符 删除光标左边字符 删除至行尾
int(s,x,a,b)
求表达式s对自变量x从a到b的定积分
第28页/共68页
八、级数
表3.3 泰勒级数的函数格式
函数格式
说明
taylor(s)
表达式s在默认自变量等于0处的5阶taylor展式
taylor(s,n)
表达式s在默认自变量等于0处的n-1阶taylor展式
taylor(s,n,a) 表达式s在默认自变量等于a处的n-1阶taylor展式
3、数字变量的运算及显示格式 运算符号:+、-、*、/、\、^
四种显示格式: short 小数点后4位(默认) long 小数点后14位 short e 5位指数形式 long e 15位指数形式
4、数据的输入输出函数
数学建模培训——Matlab ppt课件
用作数值表示中的小数点 用作不显示计算结果指令的“结尾”标志;用作不显示计算结果指令与其后 指令的分隔;用作数组的行间分隔符; 用以生成一维数组;用作单下标援引时,表示全部元素构成的长列;用作多 下标援引时,表示那维上的全部 由它“启首”后的所有物理行部分被看作非执行的注释 字符串记述符 在数组援引时用;函数指令输入宗量列表时用 输入数组时用;函数指令输出宗量列表时用 元胞数组记述符 (为使人易读)用作一个变量、函数或文件名中的连字符 由三个以上连续黑点构成。它把其下的物理行看作该行的“逻辑”继续,以 构成一个“较长”的完整指令 放在函数名前,形成函数句柄;放在目录名前,形成用户对象类目录 ppt课件
2001年,推出MATLAB6.1 (克服6.0不支持P4,Win me,汉字等)。
2002年,推出MATLAB6.5R13(速度更快、性能更优越等)。
2004年,推出MATLAB7版本R14 2006年,推出MATLAB R2006a、 R2006b版本, 每年2个版本 2017年,9月14日正式推出MATLAB R201AB主要操作有:
运行函数和输入变量;控制输入和输出;执行程序, 包括M文件和外部程序。 MATLAB在命令窗口中的语句形式为: >>变量=表达式;
命令窗口中可直 接运行MATLAB 函数,而这些函 数往往又和 MATLAB命令直 接联系。
ppt课件
运行函数和键入变量
ppt课件
1.1 MATLAB简介-特点
1、运算功能强大 2、人机界面友好,编程效率高 是一个 3、强大而简易的作图功能
4、强劲的工具箱
5、动态仿真功能
强大的 功能演 算性草 稿纸
难点:函数较多,仅基本部分就有700多个。
ppt课件
2001年,推出MATLAB6.1 (克服6.0不支持P4,Win me,汉字等)。
2002年,推出MATLAB6.5R13(速度更快、性能更优越等)。
2004年,推出MATLAB7版本R14 2006年,推出MATLAB R2006a、 R2006b版本, 每年2个版本 2017年,9月14日正式推出MATLAB R201AB主要操作有:
运行函数和输入变量;控制输入和输出;执行程序, 包括M文件和外部程序。 MATLAB在命令窗口中的语句形式为: >>变量=表达式;
命令窗口中可直 接运行MATLAB 函数,而这些函 数往往又和 MATLAB命令直 接联系。
ppt课件
运行函数和键入变量
ppt课件
1.1 MATLAB简介-特点
1、运算功能强大 2、人机界面友好,编程效率高 是一个 3、强大而简易的作图功能
4、强劲的工具箱
5、动态仿真功能
强大的 功能演 算性草 稿纸
难点:函数较多,仅基本部分就有700多个。
ppt课件
数学建模matlab学习PPT课件
Saturday, 2009-3- 21, 22:00:11
第10页/共39页
双精度数据结构
• 矩阵的表示
• 矩阵简单分析 F=inv(A) • 复数矩阵的表示
Saturday, 2009-3- 21, 22:00:11
第11页/共39页
特殊矩阵的输入
• 单位矩阵 A=eye(m,n) • 零矩阵 A=zeros(n,m) • 对角矩阵 A=diag([1,3,5,7,2]) • 均匀分布随机数矩阵 A=rand(n,m) • 多项式
Saturday, 2009-3- 21, 22:00:11
第4页/共39页
其他“高级”语言(如C)的局限性
• 语句繁杂 • 没有基本数学运算求解工具 • 程序冗长,容易出错,得出结果难以令人相信 • 各种各样的隐患 • 结果可视化效果不佳
Saturday, 2009-3- 21, 22:00:11
第5页/共39页
例1 矩阵特征值求解
• 用数学库EISPACK
• 用MATL AB: eig(A)
Saturday, 2009-3- 21, 22:00:11
第6页/共39页
例2 可能的隐患 Fibonacci数列
• 数学描述 • C语言实现
• 存在问题:数据结构的预定义 • MATL AB实现
第28页/共39页
• 函数 • MATL AB命令
• 检验 • 数据存储 • 导入
Saturday, 2009-3- 21, 22:00:11
第29页/共39页
极坐标图形绘制
• 绘制极坐标函数 • 仍然首先生成q 向量,再用点运算计算r • 调用polar函数绘图
• 绘制曲线
• 注意周期检验
MATLAB入门与作图实用数学建模为例ppt课件
幂运算可按元素对元素方式进行,不同大小或维数 的数组是不能进行运算的.
设:a=[a1,a2,…,an], b=[b1,b2,…,bn] 则:a+b= [a1+b1,a2+b2,…,an+bn]
a.*b= [a1*b1,a2*b2,…,an*bn]
a./b= [a1/b1,a2/b2,…,an/bn]
MATLAB(fun)
返回
二、数 组
MATLAB(shuzu1)
1. 创建简单的数组 x=[a b c d e f]创建包含指定元素的行向量.
x=first:last
创建从first开始,加1计数,到last结束的行向量.
x=first:increment:last
创建从first开始,加increment计数,到last结束的 行向量.
while (expression) {commands}
end
只要在表达式(expression)里的所有元素为真,就执行 while和end语句之间的命令串{commands}.
例 设银行年利率为11.25%.将10000元钱存入银行,问 多长时间会连本带利翻一番?
MATLAB(while1)
3. if-else-end结构 (1)有一个选择的一般形式是:
MATLAB(shuzu2)
3. 数组的方向
前面例子中的数组都是一行数列,是行方向分布的. 称之为行向量. 数组也可以是列向量,它的数组操作和运 算与行向量是一样的,唯一的区别是结果以列形式显示.
产生列向量有两种方法: 直接产生 例 c=[1;2;3;4] 转置产生 例 b=[1 2 3 4]; c=b′
后将该点集的坐标传给MATLAB函数画图.
设:a=[a1,a2,…,an], b=[b1,b2,…,bn] 则:a+b= [a1+b1,a2+b2,…,an+bn]
a.*b= [a1*b1,a2*b2,…,an*bn]
a./b= [a1/b1,a2/b2,…,an/bn]
MATLAB(fun)
返回
二、数 组
MATLAB(shuzu1)
1. 创建简单的数组 x=[a b c d e f]创建包含指定元素的行向量.
x=first:last
创建从first开始,加1计数,到last结束的行向量.
x=first:increment:last
创建从first开始,加increment计数,到last结束的 行向量.
while (expression) {commands}
end
只要在表达式(expression)里的所有元素为真,就执行 while和end语句之间的命令串{commands}.
例 设银行年利率为11.25%.将10000元钱存入银行,问 多长时间会连本带利翻一番?
MATLAB(while1)
3. if-else-end结构 (1)有一个选择的一般形式是:
MATLAB(shuzu2)
3. 数组的方向
前面例子中的数组都是一行数列,是行方向分布的. 称之为行向量. 数组也可以是列向量,它的数组操作和运 算与行向量是一样的,唯一的区别是结果以列形式显示.
产生列向量有两种方法: 直接产生 例 c=[1;2;3;4] 转置产生 例 b=[1 2 3 4]; c=b′
后将该点集的坐标传给MATLAB函数画图.
六讲MATLAB在数学建模中的应用市公开课金奖市赛课一等奖课件
第4页
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=y; y=A*x; y1=d1*x; k=k+1; end x,k
第17页
可知当k=285时, 有结论 X(k1) 1 X(k)
进一步思考
x0=[1000;1000;1000];d1=1.5; A=[0 4 3;0.5 0 0;0 0.25 0]; x1=A*x0,x2=A*x1,x3=A*x2,x4=A*x3
同理, 依据第一年龄组和第二年龄组 存活率, 可得等式
X2(k+1)=0.5x1(k)
X3(k+1)=0.25x2(k)
第13页
可得数学模型下列:
x1( kx1(2)k
1)
4x
(k 2
)
3x
0.5x1(k )
(k 3
)
x ( k 1) 3
0.25x
(k 2
)
K=0,1,2,3
或写成矩阵形式: X (k+1)=LX(k)
2.线性规划MATLAB求解:linprog函数
数学模型beq
lb u ub
第3页
其中: f,x,b,beq,lb,ub为向量,A, Aeq为矩阵。
使用形式: x=linprog(f,A,b) 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=y; y=A*x; y1=d1*x; k=k+1; end x,k
第17页
可知当k=285时, 有结论 X(k1) 1 X(k)
进一步思考
x0=[1000;1000;1000];d1=1.5; A=[0 4 3;0.5 0 0;0 0.25 0]; x1=A*x0,x2=A*x1,x3=A*x2,x4=A*x3
同理, 依据第一年龄组和第二年龄组 存活率, 可得等式
X2(k+1)=0.5x1(k)
X3(k+1)=0.25x2(k)
第13页
可得数学模型下列:
x1( kx1(2)k
1)
4x
(k 2
)
3x
0.5x1(k )
(k 3
)
x ( k 1) 3
0.25x
(k 2
)
K=0,1,2,3
或写成矩阵形式: X (k+1)=LX(k)
2.线性规划MATLAB求解:linprog函数
数学模型beq
lb u ub
第3页
其中: f,x,b,beq,lb,ub为向量,A, Aeq为矩阵。
使用形式: x=linprog(f,A,b) x=linprog(f,A,b,Aeq,beq,lb,ub) x=linprog(f,A,b,Aeq,beq,lb,ub,x0)
数学建模Matlab基础ppt课件-PPT文档资料
当前目录窗口
工作间管理窗口
演示工具
命令窗口
Figure1-1 MATLAB桌面平台 启动菜单 命令历史窗口
(2)MATLAB的帮助系统 有三种方式获得MATLAB帮助: ①通过使用帮助浏览器(Figure1-2) ②命令窗口help系列。使用方式是在命令 行输入help,help+函数名,Helpwin或者 helpdesk。 ③使用lookfor函数。若要查找一个不知其 确切名称的函数名时使用。 其他常用查询辅助命令: exist 变量检验函数,检验变量是否存在。 Figure1-2 帮助浏览器
ans eps pi inf NaN i 或 j nargin nargout realmax realmin flops
预设的计算结果的变量名 MATLAB定义的正的极小值=2.2204e-16 内建的π 值 ∞值,无限大 无法定义一个数目 虚数单位i=j=√-1 函数输入参数个数 函数输出参数个数 最大的正实数 21023 最小的正实数2-1022 浮点运算次数
命令
hold disp path save load diary quit
说明
图形保持开关 显示变量或文字内容 显示搜索路径 保存内存变量到指定文件 加载指定文件的变量 日志文件命令 退出MATLAB
标点
: ; , () [] {}
定义
具有多种应用功能 区分行及取消运行显示等 区分列及函数参数分隔符 指定运算过程的先后顺序 矩阵定义的标志等 构成单元数组等
在定义变量时要尽量与避免与这些名字相同,以免改变它们的值,如果已经改 变,可以通过clear + 变量名 来恢复它的初始值,也可以通过重新启动MATLAB 恢复这些值。
2、数字变量
建模培训matlab使用PPT课件
在信号处理中的应用
信号滤波
MATLAB提供了丰富的信号滤波频谱分析
利用MATLAB的FFT(快速傅里叶 变换)函数,可以对信号进行频谱 分析,提取信号的特征信息。
信号调制与解调
MATLAB可以用于信号的调制与解 调过程,实现信号的传输与处理。
在控制系统中的应用
系统建模
利用MATLAB的Simulink工具箱,可以对控制系 统进行建模,并进行仿真分析。
控制算法设计
MATLAB提供了多种控制算法,如PID控制、模糊 控制等,可用于设计控制系统。
系统稳定性分析
通过MATLAB的稳定性分析工具,可以对控制系 统进行稳定性评估和优化。
在机器学习中的应用
数据预处理
实时仿真
通过MATLAB与Simulink的集成,可以实现实时仿真和测试,提高开发效率。
与C/C的交互
MATLAB Coder
使用MATLAB Coder,可以将MATLAB代码转换为C/C代码,以便 在嵌入式系统或高性能计算环境中运行。
调用C/C代码
通过MATLAB的MEX函数或MATLAB引擎API,可以在MATLAB中 调用C/C代码,实现混合编程。
编写单元测试用例,对代码进行测试和验证,确保代码的正确
性和稳定性。
性能分析和优化
分析代码性能
使用MATLAB的性能分析工具,如Profiler,分析代码运行时间、 内存占用等性能指标。
优化算法
根据性能分析结果,优化算法和数据结构,提高代码执行效率。
并行计算
利用MATLAB的并行计算工具箱,实现多核处理器上的并行计算, 加速代码运行。
1980年代中
推出MATLAB 1.0,成为商业 化的数学软件。
数学建模与MATLABppt课件
16
plot(x,y)
• 该命令中的 x 和 y 可以为向量和矩阵,当x和y的 结构不同时,有不同的绘制方式。 – x、y 均为 n 维向量时,以 x 的元素为横坐标, y 的元素为纵坐标绘制图形。 – x 为 n 维向量,y 为 m×n 或 n×m 矩阵时,以 x 的元素为横坐标,绘制 y 的 m 个 n 维向量。 – x、y 均为 m×n 矩阵时,以 x 的各列为横坐标 ,y 的对应列为纵坐标绘制图形。
fprintf('有%d个男人,%de个nd女人,%d个孩子!\n',x,y,(30-x-y));
end
fprintf('一共运算了%d次!\n',k);
fprintf('一共有%d组解!\n',total);
end
end
精选编辑pptMATLAB
11
fprintf('一共运算了%d次!\n',i);
精选编辑pptMATLAB
14
plot 函数
plot 函数的调用格式为: • plot(Y) • plot(X1,Y1,...) • plot(X1,Y1,LineSpec,...) • plot(...,'PropertyName',PropertyValue,...) • plot(axes_handle,...) • h = plot(...) • hlines = plot('v6',...)
精选编辑பைடு நூலகம்ptMATLAB
17
例7.2.2
• 在0≤X≤2π区间内,绘制曲线y=2e-0.5xsin(2πx)。 • 程序如下:
x=0:pi/100:2*pi; y=2*exp(-0.5*x).*sin(2*pi*x); plot(x,y)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
b1
aam211xx11aam222xx22 aa2mnnxxnn bb2m
xj 0, j 1,2,3n
min z CX
AX b
X 0
2020/12/09
2
线性规划的标准形式要求目标函数最小化, 约束条件取等式,变量非负,不符合这几个 条件的线性规划要首先转化为标准形式。
线性规划的求解方法主要是单纯形法(simple Method),此法由Dantzig于1947年提出,以后经 过多次改进,
第二个年龄组的动物在其中年龄段平均繁殖4个后 代,第三年龄组的动物在其年龄段平均繁殖3个后 代。第一年龄组和第二年龄组的动物能顺利进入 下一年龄组的成活率分别为0.5和0.25.假设农场现 有的三个年龄组的动物各1000头,
2020/12/09
10
计算5年后、10年后、15年后各年龄段的动 物数量。20年后农场三个年龄段的动物情况 会怎样?
其中
0 4 3 L 0.5 0 0
0 0.25 0
是莱斯利矩阵
2020/12/09
14
由此得
X(k+1)=Lk+1X(0)
程序和计算
X0=[1000;1000;1000] A=[0 4 3;0.5 0 0;0 0.25 0] X1=A*X0 X2=A*X1 X3=A*X2 X4=A*X3
x1x2x3x4 1
xj 0,j1,2,3,4
2020/12/09
7
把它转化为标准形式为
minz0.15x10.1x20.08x30.12x4
x1x2 x3x4 0 x2 x3x4 0
x1x2x3x4 1
xj 0,j1,2,3,4
首先输入下列系数:
2020/12/09
8
f=[-0.15;-0.1;-0.08;-0.12]; A=[1 -1 -1 -1;0 -1 -1 1]; b=[0;0]; Aeq=[1 1 1 1]; beq=[1]; lb=zeros(4,1);
2020/12/09
4
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(…)
根据有关生物学研究结果,对于足够大的时间值
k,有
X (k 1) 1X (k)
其中 是莱斯利矩阵L的唯一的正特值
请检验这一结果是否正确,如果正确给出适当的k 值
2020/12/09
11
如果每五年平均向市场供应动物数 c=[s s s]T,在20年后农场动物不至 于灭绝的前提下,c为多少为好?
问题分析:由题设,在初始时刻0~5岁、6~10 岁、11~15岁的三个年龄段动物数量分别为 x1(0)=1000,x2(0)=1000,x3(0)=1000
调用linprog函数 [x,fval,exitflag,output,lambda]=linprog(f,A,b,Aeq,beq,lb)
结论:4个项目的投资百分数分别为0.50、0.25、0.00 和0.25时可获得最大的收益,最大收益为13%
2020/12/09
9
二、其它应用
动物的繁殖的规律问题:某农场饲养的某 种动物能达到的最大年龄为15岁,将其分 为三个年龄组:第一组0~5岁,第二组 6~10岁,第三组11~15岁。动物从第二个 年龄组开始繁殖后代
同理,根据第一年龄组和第二年龄 组的存活率,可得等式
X2(k+1)=0.5x1(k) X3(k+1)=0.25可得数学模型如下:
x1(kx1(2)k1)4x0(2k.)5x13(kx) 3(k)
x(k1) 3
0.25x(2k)
K=0,1,2,3
或写成矩阵形式:X(k+1)=LX(k)
2020/12/09
6
分析问题建立模型:用x1,x2,x3,x4分别代表 用于项目A、B、C、D的投资百分数,由于 各项目的投资百分数之和为100%,所以
x1+x2+x3+x4=1
根据题意可建立下面的数学模型:
mazx0.15x10.1x20.08x30.12x4
x1x2x3x4 0 x2x3x4 0
注:以上几种形式在使用时根据具体的模型 适当选用。每一种形式都有特定的涵义。可 查有关书籍
2020/12/09
5
3、实例
例1. 投资问题:某单位有一批资金用于4个 工程项目的投资,用于各个工程项目得到 的净收益(投入资金的百分比)如表所示:
工程项目 A
B
收益(%) 15 10
CD 8 12
由于某种原因用项目A的总投资不大于其他各各项 目的和,用用项目B和C的投资要大于项目D的投 资。试确定使该单位收益最大的投资分配方案。
2、线性规划的MATLAB求解:linprog函数
数学模型:
min f T X
AX b
Aeq X beq
lb u ub
2020/12/09
3
其中:f,x,b,beq,lb,ub为向量, A,Aeq为矩阵。
使用形式: x=linprog(f,A,b) x=linprog(f,A,b,Aeq,beq,lb,ub) x=linprog(f,A,b,Aeq,beq,lb,ub,x0)
以五年为一个年龄段,则某一时刻三个年龄段的动 物数量可以用一个向量X(k)=[x1(k) x2(K) x3(k)]T为第 k个时间段动物数分布向量。
2020/12/09
12
当k=0,1,2,3时, X(k)表示现在、五年后、十年后、 十五年后的动物数分布向量。根据第二年龄段和 第三年龄段的繁殖能力,在第k个时间段,第二 年龄组动物在其年龄段平均繁殖4个后代,第三 年龄组动物在其年龄段平均繁殖3个后代。由此 得第一个年龄组在第k+1个时间段的数量如下: x1(k+1)=4x2(k)+3x3(k)
第六讲 MATLAB在数学建模中的应用
一、在线性规划中的应用
1、数学原理:
线性规划是处理线性目标函数和线性约束的一种较为 成熟的方法,目前已经广泛应用于军事、经济、工业、 教育、商业和社会科学等许多方面。
线性规划的标准形式是
2020/12/09
1
minz c1x1 c2x2 cnxn
a11x1 a12x2 a1nxn