MATLAB在简单数学建模中的应用._第1页
MATLAB在简单数学建模中的应用._第2页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、MATLAB 语言课程论文MATLAB 在简单数学建模中的应用姓名:马辉学号:12010245354专业:通信工程班级:1 班指导老师:汤全武学院:物理电气信息学院MATLAB 在简单数学建模中的应用(马辉 12010245354 2010 级 1 班摘要通过对实际问题的抽象和简化,引入一些数学符号、变量和参数,运用 某些规律,用数学语言和 数学方法建立变量、参数间的内在联系,得出一个数学结 构,该数学结构是实现的一个近似刻画,称之为数学模型。建立和求解数学模型的 全过程就是数学建模,它包括模型的建立、求解、分析、检验循环往返的全过程,MATLAB 语言正是处理此类问题的很好工具,既能进行数值

2、求解,又能绘制有关曲线 非常方便实用。关键词MATLAB 语言数学建模数学模型一、问题的提出应用数学去解决各类实际问题时,建立数学模型是十分关键的一步,同时也是十 分困难的一步。建立教学模型的过程,是把错综复杂的实际问题简化、抽象为合理 的数学结构的过程。要通过调查、收集数据资料,观察和研究实际对象的固有特征和内在规律,抓住问题的主要矛盾,建立起反映实际问题的数量关系,然后利用数学的 理论和方法去分析和解决问题。这就需要深厚扎实的数学基础,敏锐的洞察力和想象力,对实际问题的浓厚兴趣和广博的知识面。数学建模是联系数学与实际问题的 桥梁,是数学在各个领域广泛应用的媒介,是数学科学技术转化的主要途径

3、,数学建模 在科学技术发展中的重要作用越来越受到数学界和工程界的普遍重视,它已成为现 代科技工作者必备的重要能力之 一。Matlab 软件能将数值分析、矩阵计算、科 学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于 使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学 领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语 言(如 C、Fortran 的编辑模式,代表了当今国际科学计算软件的先进水平。1.数学建模的基础理论(1 对数学模型的介绍我们可以对数学模型做如下定义:数学模型是关于部分现实世界和为一种特殊 目的而作的一个抽象的、

4、简化的结构。”具体来说,数学模型就是为了某种目的,用字母、数学 及其它数学符号建立起来的等式或不等式以及图表、图象、框图等 描述客观事物的特征及 其内在联系的数学结构表达。数学模型的类别主要有:1 按照人们对原形的认识过程分,可分为描述性的和解释性的数学模型。描述性的型是从特殊到一般,它是从分析具体客观事物及其状态开始,最终得到一个数 学模型。客观事物之间量的关系,通过数学模型被概括在一个具体的抽象的数学结 构之中。解释性的模型是由一般到特殊,它是从一般的公理系统出发,借助于数学 客体,对公理系统给出正确解释的一种数学模型。2 按照模型的应用领域分,可分为人口模型、交通模型、电气系统模型、通

5、信系统模型、机电系统模型、环境模型、生态模型、水资源模型、再生资源利用 模型、传染病模型和污染模型等。3 按照建立模型的数学方法分,可分为几何模型,代数模型,图论模型,规划论模型, 微分方程模型,最优化控制模型,信息模型,随机模型,决策与对策模型,模拟模型等。4 按照模型的特征分,可分为静态和动态模、确定和随机模型、离散和连续模型、线 性和非线性模型等。5 按照对模型结构了解的程度分,有所谓白箱模型、灰箱模型和黑箱模型,它们 分别意味着人们对原型的内在机理了解清楚、不太清楚和不清楚。2.对数学建模的介绍数学建模是指对现实世界的一特定对象,为了某特定目的,做出一些重要的简 化和假设,运用适当的数

6、学工具得到一个数学结构,用它来解释特定现象的现实性 态,预测对象的 未来状况,提供处理对象的优化决策和控制,设计满足某种需要的 产品等。数学建模的一般过程如下:1 明确问题明确问题即建模的准备阶段,要建立现实问题的数学模型,第一步是要对解决 的问题有一个明确清晰的的提法,通常我们遇到的某个实际问题,在开始阶段是比 较模糊的,又带实际背景,因此在建模前必须对问题进行全面深入细致的了解和调 查,查阅有关的文献,同时要着手收集有关的数据,收集数据时事先应考好数据的整理形式,例如利用表格或图形等。在这期间还应仔细分析已有 的数据和条 件,使问题进一步明确化,使我们要更好地抓住问题的本质及特征!为 数学

7、建模打下好良好 的基础。2 进行合理的假设作为课题的原型都是复杂的,具体的,是质和量、现象和本质、偶然和必然的 统一体。这样的原型如果不抽象和简化,人们对其认识是困难的,也是很难把握它 的本质属性,而建模 假设就是根据建模的目的对模型进行抽象,简化。把那些反映 问题本质属性的形态,量及其关系抽象出来,简化掉那些非本质的因素,使之摆脱原型的具体复杂形态!,形成对建模有用的信息资源和前提条件。一般模型假设遵从以下原则:目的性原则:从原型中抽象出与建模目的有关的因素,简化掉无关的因素或关系不大的因素。简明性原则:所给的假设条件要简单,精确,有利于构造模型。真实性原则:设条款要符合情理,简化带来的误差

8、应满足实际问题所允许的范围内。全面性原则:在对事物原型本身作出的假设的同时,还要给出原型所处的环境条件。3 构造模型在建模的假设的基础上,进一步分析建模的假设的条款,首先区分那些是常量 哪些是变量,哪些已知,然后查出各种量所处的位置、作用和它们之间的关系,选择恰当的数学工 具和构造模型的方法对其进行表征,构造出刻划实际问题的数学模 型,这里要注意两点:其一.构造一具体的问题的模型是要尽可能地简单的模型,然后把它与实际问题进行比较,再把其次要的因素加进去,逐渐逼近现实来修改模 型,使之趋于完善。其二:要善于借鉴已有 的数学模型,许多的实际问题,尽管现 象和背景都不同却有相同的模型。4 模型求解不

9、同的模型要用到不同数学工具求解,如可以采用解方程,画图形证明定理、逻 辑运算、数值运算等传统的方法和近代的数学方法,建模发展到现代多数场合的模 型必须依靠电子计算机的数值求解。5 模型的检验与修正建立数学模型的目的在于解决实际问题。因此必须把模型解得的结果返回到实际问题,如果模型的结果与实际问题状况相符合,表明模型经检验是符合实际问题 的,相反则不行,它就不能直接应用于实际问题。这时数学模型建立如果没有问题,就需要考虑建模时关于所假设的是否合理,检验是否忽略了不应该忽略的因素或还保留了不应 该保留的因素。对假设给出必要的修正,重复前面的建模过程,直到使模型能够反 映所给的实际问题。3.数学建模

10、的一般方法1 机理分析法从基本物理定律以及系统的结构数据来推导出模型。比例分析法-建立变量之间函数关系的最基本最常用的方法。弋数方法-求解离散问题(离散的数据、符号、图形的主要方法。逻辑方法-是数学理论研究的重要方法,对社会学和经济学等域的实际问题,在决策,对策等学科中得到广泛应用。常微分方程-解决两个变量之间的变化规律,关键是建立”瞬时变化率”的表达式。偏微分方程-解决因变量与两个以上自变量之间的变化规律。2 数据分析法从大量的观测数据利用统计方法建立数学模型回归分析法-用于对函数 f(x 的一组观测值(xi,fii=1,2, ,n,确定函数的表达 式,由于处理的是静态的独立数据,故称为数理

11、统计方法。寸序分析法-处理的是动态的相关数据,又称为过程统计方法。回归分析法-用于对函数 f(x 的一组观测值(xi,fii=1,2, ,n,确定函数的表达 式,由于处理的是静态的独立数据,故称为数理统计方法。寸序分析法-处理的是动态的相关数据,又称为过程统计方法。3 仿真和其他方法计算机仿真(模拟-实质上是统计估计方法,等效于抽样试验。1离散系统 仿真-有一组状态变量。2.连续系统仿真-有解析表达式或系统结构图。因子试 验法-在系统上作局部试验,再根据试验结果进行不断分析修改,求得所需的模型 结构。人工现实法-基于对系统过去行为的了解和对未来希望达到的目标,并考虑到系统有关因素的可能变化,人

12、为地组成一个系统。4.应用 MATLAB 进行数学建模数学是在实际应用的需求中产生的,我们把遇到的实际问题进行分析,发现其 中的可以用数学语言来描述的关系或规律,把这个实际问题转化成一个数学问题 建立了数学模型!。但数学模型迫切需要一个方便、快捷且功能强大的工具去实 现并解决,特别是随着科 技的进步,人们在解决问题的时候常常要用到许多比较复 杂的数学知识和大量的数据计算,这无疑加大了人们解决问题的难度,也要耗费更 长的时间。而 MATLBA 正是在数学计算和大 量数据处理方面具备其它软件所不具 备的优势,且操作简单,运算速度快,所以应用 MATLBA 进行数学建模也就大大提 高了人们的效率。

13、而且MATLBA 还有很强的绘图功能,这就可以使 得模型图象 化,使得研究人员对建模成果的优劣一目了然,容易进行修正与改进。、简单数据作多子图建模问题问题:根据表 1 数据作一个多子图要求:第一个图各类网井产油量与年份曲线图,第二个图为 0105 年各类网井产 油量的对 比直方图,第三个图为 03 年各类网井产油量的饼图,第四个图为七五井和 十五井产油量年 份的双座标图。年份199719981999200020012002200320042005产油舉类熨井500.611Z 4428.6370, 1 343. 1井351.318.0280. 724& 6 229. 0儿五” 幷197+

14、1 297. 7 112.8547, Q579. 8517. 5527.019Z 3 137. 0井72. 3218.2297, 1416.1508. 7MATLAB 语言来对此例题做以下解析:figure(positi on ,50,50,800,650 %在图形窗口左下角建立横纵坐标都为50 的,宽度800 高度 650 的窗t1=1997:2005;%产生行向量 t1t2=2001:2005;%产生行向量 t2y1= 500.6 442.4 428.6 370.1 343.1;%建立一个行矩阵 y1y2= 354.7 318.0 280.7 246.6 229.0;%建立一个行矩阵 y2

15、y3=197.4 297 412.8 547.0 579.8 547.5 527.0 492.3 437.0;%t 立一个行矩阵 y3y4= 72.3 218.2 297.1 416.1 508.7%建立一个行矩阵 y4subplot(2,2,1%2*2 个区中的 1 号区Plot(t2,y1,t2,y2,t1,y3,t2,y4;% 绘制二维图像title(各类网井产油量与年份曲线图;标题为各类网井产油量与年份曲线图lege nd(七五井,八五井,九五井,十五井,1; %列出图标t2=2001:2005;%产生行向量 t2y2=500.6 354.7 579.8 72.3 442.4 318.

16、0 547.5 218.2 428.6 280.7 527.0 297.1 370.1 246.6 492.3437.0 343.1 229.0 437.0 508.4;%t 立一个行矩阵 y2subplot(2,2,2%2*2 个区中的 2 号区bar(t2,y2title(0105 年各类网井产油量的对比直方图;%标题为 0105 年各类网井产油 量的对比直方图lege nd(七五井,八五井,九五井,十五井,1; %列出图标t3=343.1 229.0 437.0 508.7;%产生行向量 t3subplot(2,2,3%2*2 个区中的 3 号区6pie(t3;title(03 年各类网

17、井产油量的饼图;%标题03 年各类网井产油量的饼图lege nd(七五井,八五井,九五井,十五井,1; %列出图标t4=2001:1:2005;%产生行向量 t4y1=354.7 318.0 280.7 246.6 229.0;y2=72.3 218.2 297.1 416.1 508.7;%建立一个行矩阵 y1subplot(2,2,4;%2*2 个区中的 4 号区plotyy(t4,y1,t4,y2;% 绘制二维图像title(七五井和十五井产油量与年份的双座标图;标题七五井和十五井产油量与年份的双座标图 lege nd(七五井,十五井;列出图标6005004M)300001002COC币

18、 hM5 hH十右斗20042006600600400300200too0-皿年各尖御幷产油鼻的阳比克芳 圏200120022Q0320042059*3x 1 +10 x2三、计划问题问题一 假设某厂计划生产甲、乙两种产品,现库存主要材料有 A 类 3600 公斤, B类 2000 公斤,C 类 3000 公斤。每件甲产品需用材料 A 类 9 公斤,B 类 4 公斤,C 类 3 公斤。每件乙产品,需用材料 A 类 4 公斤,B 类 5 公斤,C 类 10 公斤。甲单位产 品的利润 70 元,乙单位产品的利润 120 元。问如何安排生产,才能使该厂所获的利 润最大。建立数学模型:设 x 1、x2

19、分别为生产甲、乙产品的件数。f 为该厂所获总润。max f=70 x 1 +120 x 2s.t 9x 1 +4x236004x 1 +5x220001 0MATLAB 程序如下:f=-70 -120;% 建立矩阵 fA=9 4 ;4 5;3 10 ;%建立矩阵 Ab=3600;2000;3000;% 建立向量 blb=0 0;%建立矩阵ub=;x,fval,exitflag=linprog(f,A,b,lb,ub% 判断语句 maxf=-fval%给最大值赋值运行结果如图所示。200.0000240.0000fval =-4.2800e+004exitflag =1maxf =+0.08 x

20、34.2800e+004问题二某公司有一批资金用于 4 个工程项目的投资,其投资各项目时所得的净 收益(投入资金锪百分比如下表:工程 项口ABCD收益(%)1510812B 和 C 的投资要大于项目 D 的投资。试确定全文该公司收益最大的投资分配。建立数学模型:设 X 1、x2、X3、x4分别代表用于项目 A、B、C、D 的投资百分数。max f=0.15x 1 +0.1x2+0.12 x 4s.t x 1 -x2-x3-x 4 0 j=1,2,3,4 将其转换为标准形式+x3min z=-0.15x 1 -0.1x2-0.08 x3-0.12 x 4s.t x 1 -x2-x3-x 4 0-

21、x 2 - x3+ x 4 0 j=1,2,3,4MATLAB 程序如下:f =卜 0.15;-0.1;-0.08;-0.12;% 建立矩阵A = 1 -1 -1 -10 -1-1 1;%建立矩阵b = 0; 0;%建立向量Aeq=1 1 1 1;%建立矩阵beq=1;%建立向量lb = zeros(4,1;%建立矩阵x,fval,exitflag = linprog(f,A,b,Aeq,beq,lb% 判断语句 f=-fval% 给最大值赋值运行结果如图所示:x =0.50000.25000.0000 0.2500fval =-0.1300exitflag = 10.1300问题三.运输问题

22、一I市场I建立数学模型:设 a i j 为由工厂 i 运到市场 j 的费用,x i j 是由工厂 i 运到市场 j 的箱数。b i 是 工厂i1.nrABc生产数604050i:厂ABC空产数604050一匚厂ABC生产数604050市场甲乙内丁需求鼠20353334有 A、B、C 三个食品加工厂,负责供给甲、乙、丙、丁四个市场。三个厂每天生产食 品箱数上限如下表:的产量,d j 是市场 j 的需求量。? =114312312312A? ? =343332312423222114131211x x x x x x x x x x x x X b= ( 60 40 50 Td= ( 20 35

23、33 34T3,2, 141=w=i b xij ij4,3, 2, 131=E=j d xi jijx i j 0MATLAB 程序如下:A=2 1 3 2;1 3 2 1;3 4 1 1;% 建立矩阵f=A(:;%建立矩阵x =刀刀=3 1 41i j ijijx a fB= 1 0 0 1 0 0 1 0 0 1 0 00 1 0 01 0 0 1 0 0 100 0 1 00 1 0 0 10 01;%建 立矩阵D=1 1 1 0 0 0 0 0 0 0 0 00 0 0 11 1 0 0 0 0 000 0 0 00 0 1 1 1 0 000 0 0 00 0 0 0 01 11;

24、%建 立矩阵b=60;40;50;% 建立向量d=20;35;33;34;% 建立矩阵lb=zeros(12,1;%建立矩阵x,fval,exitflag=linprog(f,B,b,D,d,lb % 用于 LP 的求解函数结果:x =0.0000min f(x= x 1 -3x20.00000.000035.00000.00000.00000.00000.000033.00000.000018.468215.5318fval =122.0000exitflag =1四、二次规划模型问题一.求解:二次规划问题+3x12+4x22-2x 1 x 2s.t 2x 1 +x 22-x 1 +4x 2

25、 3MATLAB 程序如下:f=1;-3%建立矩阵H=6 -2;-2 8%建立矩阵A=2 1;-1 4%建立矩阵b=2;3 %建立向量X,fval,exitflag=quadprog(H,f,A,b % 使用 quadprog 函数来求值 结果:X =-0.04550.36360 x 1 , 0 x 2fval =-0.5682 exitflag =1问题二.求解:二次规划问题min +x 1 2+2x22-2x1x2-4x 1-12x 2x 1 +x 2 2-x 1 +2x 2 22x 1 +x 2 3MATLAB 程序如下:0 x 1 , 0 x 2H=2 -2;-2 4;% 建立矩阵f=

26、-4;-12;%建立矩阵A=1 1;-1 2;2 1;% 建立矩阵b=2;2;3;%建立向量lb=zeros(2,1;%建立矩阵x,fval,exitflag=quadprog(H,f,A,b,lb% 使用 quadprog 函数来求值结果:x =0.66671.3333fval =-16.4444exitflag =1五、多目标规划模型问题一.某钢铁厂准备用 5000 万用于 A、B 两个项目的技术改造投资。设 x1、 x分别表22+0.04(x 1示分配给项目 A、 B 的投资。 据专家预估计,投资项目 A、 B 的年收益分别 为 70%和 66%。同时,投资后总的风险损失将随着总投资和单项投资的增加而增加 已知总的风险损失为0.02x 1 2+0.01X2+0.04(x+x22,问应如何分配资金才能使期望的收益最大,同时使风险损失 为最小建立数学模型max f 1 (x=70 x 1+66x 2min f 2 (x= 0.02x12+0.01x+x 2 2x 1 +x2 50000 x1,0 憑性加权构造目标函数max f=0.5f 1 (x -0.5f 2(x化最小值问题:min (-f=- 0.5f 1 (x +0.5f 2(x首先编辑目标函数 M 文件 ffll.mfunction f=ff11(x % 建立函数f=-0.5*(70*

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论