数学建模实验指导书⒈目的计算机的应用在数学建模的教学中占有重要地位,在为解决实际问题而建立数学模型的过程中、对所建模型的检验以及大量的数值计算中,都必需用到计算机。《数学建模与实验》的实验课的目的和任务是通过实验培养并提高学生的数学建模能力和计算机应用能力。⒉实验任务分解通过一些实例初步掌握建立数学模型的方法,实验任务可分解为:初等建模,确定性连续模型,确定性离散模型,随机性模型。在各个具体任务中,练习运用数值计算软件Matlab、Lingo进行数学实验,对问题中的各有关变量进行分析、计算,给出分析和预测结果。⒊实验环境介绍计算机房⒋实验时数34学时实验一Matlab程序设计一、实验目的熟悉Matlab软件环境,掌握Matlab软件编程;二、实验内容与要求1.MATLAB工作环境;2.变量、数组与矩阵;3.程序设计;4.内部函数与自定义函数;5.一般二维图形绘制;6.一般三维图形绘制;7.特殊二、三维图形绘制;8.处理图形。三、实验习题1.建立矩阵A,然后找出大于4的元素的位置。2.产生5阶随机方阵A,其元素为[10,90]区间的随机整数,然后判断A的元素是否能被3整除。3.某商场对顾客所购买的商品实行打折销售,标准如下(商品价格用price来表示):price200没有折扣200≤price5003%折扣500≤price10005%折扣1000≤price25008%折扣2500≤price500010%折扣5000≤price14%折扣输入所售商品的价格,求其实际销售价格。4.利用函数文件,实现直角坐标(x,y)与极坐标(ρ,θ)之间的转换。5.猜数游戏。首先由计算机产生[1,100]之间的随机整数,然后由用户猜测所产生的随机数。根据用户猜测的情况给出不同提示,如猜测的数大于产生的数,则显示High,小于则显示Low,等于则显示Youwon,同时退出游戏。用户最多可以猜7次。6.Fibonacci数列定义如下:f1=1;f2=1;fn=fn-1+fn-2(n2)。求Fibonacci数列的第20项。7.在同一坐标内,分别用不同线型和颜色绘制曲线y1=0.2e-0.5xcos(4πx)和y2=2e-0.5xcos(πx),标记两曲线交叉点。8.绘制三维曲面图z=sin(x+sin(y))-x/10。9.绘制三维曲面图,并进行插值着色处理,裁掉图中x和y都小于0部分。10.分别以条形图、阶梯图、杆图和填充图形式绘制曲线y=2sin(x)。四、实验要求1.完成布置的实验习题;2.完成实验报告。实验二Lingo程序设计一、实验目的1.熟悉Lingo软件环境;2.熟悉Lingo设计方法;3.掌握利用Lingo软件求解优化问题的方法。二、实验内容与要求1.上机练习Lingo的基本命令;2.上机练习Lingo模型设计及求解;三、实验习题1.求解线性规划:,2.求解整数规划:3.用Lingo软件求解:4.求解二次规划,5.求解非线性规划问题四、实验要求1.完成布置的实验习题;2.完成实验报告。实验三初等建模方法一、实验目的通过对具体实例的分析,学会运用初等数学建立数学模型的方法,进一步掌握Matlab的基本使用方法和Matlab中编程方法及M文件的编写。二、实验内容与要求初等代数建模,图形法建模,量纲分析法建模等。学习和练习数值计算软件Matlab的基本方法。三、实验习题1.在超市购物时你注意到大包装商品比小包装商品便宜这种现象了吗。比如洁银牙膏50g装的每支1.50元,120g装的每支3.00元,二者单位重量的价格比是1.2:1。试用比例方法构造模型解释这个现象。2.原子弹爆炸的速度v与空气密度r、粘滞系数m和重力加速度g有关,其中粘滞系数的定义是:运动物体在流体中受的摩擦力与速度梯度和接触面积的乘积成正比,比例系数为粘滞系数。用量纲分析方法给出速度v的表达式。3.掌握Matlab的基本使用方法,并试解以下问题:(1)至少用3种方法解线性方程组Ax=b,如矩阵除法、求逆矩阵法、矩阵三角分解法等。(2)用几种方法画简单函数的图形,并练习:考虑如何画坐标轴;在一个坐标系中画多条函数曲线;用subplot画多幅图形;图上加注各种标记等。(3)建立M-文件来计算:自然数n的阶乘;n中取m的组合数;已知两个多项式(不一定同阶)的系数,求这两个多项式的和。四、实验要求1.完成布置的实验习题;2.完成实验报告。实验四微分方程建模一、实验目的通过对具体实例的分析,学会运用微分方程、变分法等数学方法建立确定性连续模型的方法。二、实验内容与要求微分法建模,微分方程建模,稳定性方法建模,变分法建模。学习和练习Matlab在微分方程等连续性模型中的应用。三、实验习题1.在鱼塘中投放n0尾鱼苗,随着时间的增长,尾数将减少而每尾的重量将增加。(1)设尾数n(t)的(相对)减少率为常数;由于喂养引起的每尾鱼重量的增加率与鱼的表面积成正比,由于消耗引起的每尾鱼重量的减少率与重量本省成正比。分别建立尾数和每尾鱼重的微分方程,并求解。(2)用控制网眼的办法不捕小鱼,到时刻T才开始捕捞,捕捞能力用尾数的相对减少量表示,记作E,即单位时间捕获量是En(t)。问如何选择T和E,使从T开始的捕获量最大。2.药物动力学中的Michaelis-Menton模型为表示人体内药物在时刻t的浓度。研究这个方程的解的性质。(1)对于很多药物(如可卡因),a比x(t)大得多,Michailis-Menton方程及其解如何简化。(2)对于另一些药物(如酒精),x(t)比a大得多,Michailis-Menton方程及其解如何简化。3.用Matlab求解以下问题:(1)用一台带记数器的录音机,实测一组时间t和转数n的数据,确定模型中的系数a,b。(2)一椭球的三个半轴分别长4、3、2,求其表面积。(3)用欧拉方法和龙格-库塔方法求解以下微分方程,画出解的图形,并将结果与精确解进行比较:(i),精确解;(ii),精确解。四、实验要求1.完成布置的实验习题;2.完成实验报告。实验五简单离散模型一、实验目的通过对具体实例的分析,学会运用差分方程、图论方法、函数逼近方法等数学方法建立确定性离散模型的方法。二、实验内容与要求差分方程建模,层次分明分析法建模,图论方法建模,函数逼近方法建模。学习和练习Matlab中优化工具箱及Lingo软件的应用。三、实验习题1.用层次分析法解决一两个实际问题,例如:(1)学校评选优秀学生或优秀班级,试给出若干准则,构造层次结构模型。可分为相对评价和绝对评价两种情况讨论。(2)你要购买一台个人电脑,考虑功能、价格等因素,如何作出决策。(3)为大学毕业的青年建立一个选择志愿的层次结构模型。(4)你的家乡准备集资兴办一座小型饲养场,是养猪,还是养鸡、养鸭、养兔,用层次分析法进行决策。2.食肉动物C、食草动物H和草P组成生态系统,因为草地有限,草过密会使草的成长减慢。用带符号的有向图建立这个系统的冲量过程模型,并证明冲量过程是不稳定的。3.某实验对一根长10米的钢轨进行热源的温度传播测试。用x表示测量点0:2.5:10(米),用h表示测量时间0:30:60(秒),用T表示测试所得各点的温度(℃)。试用线性插值求出在一分钟内每隔20秒、钢轨每隔1米处的温度TI。4.某观测站测得某日6:00时至18:00时之间每隔2小时的室内外温度(℃),用3次样条插值分别求得该日室内外6:30至17:30时之间每隔2小时各点的近似温度(℃)。设时间变量h为一行向量,温度变量t为一个两列矩阵,其中第一列存放室内温度,第二列储存室外温度。四、实验要求1.完成布置的实验习题;2.完成实验报告。实验六简单随机模型一、实验目的通过对具体实例的分析,学会运用概率分布方法、随机过程方法等数学方法建立随机性模型的方法。二、实验内容与要求概率分布方法建模,马氏链模型,随机服务模型。学习和练习Matlab中的概率统计工具箱的应用。三、实验习题1.某商店要订购一批商品零售,设购进价c1,售出价c2,订购费c0(与数量无关),随机需求量r的概率密度为p(r),每件商品的贮存费为c3(与时间无关)。问如何确定订购量才能使商店的平均利润最大,这个平均利润是多少。为使这个平均利润为正值,需要对订购费c0加什么限制?2.考察一种既不同于指数模型、也不同于阻滞增长模型的情况:人口为x(t),最大允许人口为xm,t到时间内人口增长量与成正比。(1)建立确定性模型,将结果作图,与指数模型和阻滞增长模型的结果进行比较。(2)作出适当的假设,建立相应的随机模型,求出人口的期望,并解释其与(1)中的x(t)在形式上完全一致的意义。3.在酶促反应中,如果用指数增长模型代替Michaelis-Menton模型对经过嘌呤霉素处理的实验数据作非线性回归分析,其结果将如何。更进一步,若选用模型来拟合相同的数据,其结果是否比指数增长模型有所改进。试作出模型的残差图进行比较。4.Matlab在方差分析和回归分析中的应用:(1)6种农药在相同的条件下进行灭虫试验,结果如下表(灭虫率以%计),问它们的效果有无显著差异,需要作进一步比较吗。农药A1878580农药A290888794农药A35662农药A45548农药A592999591农药A6757281(2)在一丘陵地带测量高程,x和y方向每隔100米测一个点,得高程如下表,试拟合一曲面,确定合适的模型,并由此找出最高点和该点的高程。xy100200300400100636697624478200698712630478300680674598412400662626552334四、实验要求1.完成布置的实验习题;2.完成实验报告。实验七数据拟合建模综合实验一、实验目的1.加强对数据拟合模型的认识;2.提高对数据拟合模型求解算法的认识;3.进一步熟悉数据拟合模型的求解过程。4.较能熟练应用Matlab工具箱去求解常规的数据拟合模型;5.强化算法的分析和设计能力;6.提高Matlab的编程应用技能。二、实验内容(选一)1.黄河小浪底调水调沙问题。2.雨量预报问题。3.人口增长预测下面是六十年代世界人口的增长数据(单位:亿):年份196019611962196319641965196619671968人口29.7230.6131.5132.1332.3432.8533.5634.2034.83(1)请你仔细分析数据,绘出数据散布图并选择合适的函数形式对数据进行拟合;(2)用你的经验回归模型试计算:以1960年为基准,人口增长一倍需要多少年?世界人口何时将达到100亿?(3)用你的模型估计2002年的世界人口数,请分析它与现在的实际人口数的差别的成因。四、实验要求1.完成布置的实验习题;2.完成实验报告。实验八最优化建模综合实验一、实验目的1.加强对最优化模型的认识;2.提高对最优化模型求解算法的认识;3.进一步熟悉最优化模型的求解过程;4.较能熟练应用Matlab工具箱去求解常规的最优化模型;5.强化算法的分析和设计能力;6.提高Matlab的编程应用技能。二、实验内容(选一)1.南水北调水指标的分配问题。2.招聘公务员问题。3.奶制品的加工计划问题。三、实验要求1.完成布置的实验习题;2.完成实验报告。实验九概率统计建模综合实验一、实验目的通过对具体实例的分析,学会运用概率统计方法建立数学模型并进行求解。1.学会运用概率统计方法建立数学模型;2.练习模拟模型的建立过程;3.进一步熟悉模拟算法的设计、编程问题;4.熟练应用Matlab的概率统计工具箱;5.加强离散系统模拟算法的分析和设计训练;6.提高Matlab的编程应用技能。二、实验内容(选一)1.足球门的危险区域问题。2.最优评卷问题。3.沼气生成问题。三、实验要求1.完成布置的实验习题;2.完成实验报告。实验十图论建模综合实验一、实验目的1.学会运用图论等方法建立数学模型;2.加强离散系统模拟算法的分析和设计训练;3.提高Matlab的编程应用技能。二、实验内容(选一)1.灾情巡视问题;2.婚配问题;3.锁具装箱问题;4.