数学建模遗传算法与优化问题

数学建模遗传算法与优化问题
数学建模遗传算法与优化问题

实验十遗传算法与优化问题

一、问题背景与实验目的

遗传算法(Genetic Algorithm—GA),是模拟达尔文的遗传选择和自然淘汰的生物进化过程的计算模型,它是由美国Michigan大学的J.Holland教授于1975年首先提出的.遗传算法作为一种新的全局优化搜索算法,以其简单通用、鲁棒性强、适于并行处理及应用范围广等显著特点,奠定了它作为21世纪关键智能计算之一的地位.

本实验将首先介绍一下遗传算法的基本理论,然后用其解决几个简单的函数最值问题,使读者能够学会利用遗传算法进行初步的优化计算.1.遗传算法的基本原理

遗传算法的基本思想正是基于模仿生物界遗传学的遗传过程.它把问题的参数用基因代表,把问题的解用染色体代表(在计算机里用二进制码表示),从而得到一个由具有不同染色体的个体组成的群体.这个群体在问题特定的环境里生存竞争,适者有最好的机会生存和产生后代.后代随机化地继承了父代的最好特征,并也在生存环境的控制支配下继续这一过程.群体的染色体都将逐渐适应环境,不断进化,最后收敛到一族最适应环境的类似个体,即得到问题最优的解.值得注意的一点是,现在的遗传算法是受生物进化论学说的启发提出的,这种学说对我们用计算机解决复杂问题很有用,而它本身是否完全正确并不重要(目前生物界对此学说尚有争议).

(1)遗传算法中的生物遗传学概念

由于遗传算法是由进化论和遗传学机理而产生的直接搜索优化方法;故而在这个算法中要用到各种进化和遗传学的概念.

首先给出遗传学概念、遗传算法概念和相应的数学概念三者之间的对应关系.这些概念如下:

序号遗传学概念遗传算法概念数学概念

1 个体要处理的基本对象、结构也就是可行解

2 群体个体的集合被选定的一组可行解

3 染色体个体的表现形式可行解的编码

4 基因染色体中的元素编码中的元素

5 基因位某一基因在染色体中的位置元素在编码中的位置

6 适应值个体对于环境的适应程度,

或在环境压力下的生存能力可行解所对应的适应函数值

7 种群被选定的一组染色体或个体根据入选概率定出的一组

可行解

8 选择从群体中选择优胜的个体,

淘汰劣质个体的操作保留或复制适应值大的可行解,去掉小的可行解

9 交叉一组染色体上对应基因段的

交换根据交叉原则产生的一组新解

10 交叉概率染色体对应基因段交换的概

率(可能性大小)闭区间[0,1]上的一个值,一般为0.65~0.90

11 变异染色体水平上基因变化编码的某些元素被改变

12 变异概率

染色体上基因变化的概率(可能性大小) 开区间(0,1)内的一个值,

一般为0.001~0.01

13 进化、 适者生存 个体进行优胜劣汰的进化,一代又一代地优化 目标函数取到最大值,最

优的可行解

(2)遗传算法的步骤

遗传算法计算优化的操作过程就如同生物学上生物遗传进化的过程,主要有三个基本操作(或称为算子):选择(Selection )、交叉(Crossover )、变异(Mutation ).

遗传算法基本步骤主要是:先把问题的解表示成“染色体”,在算法中也就是以二进制编码的串,在执行遗传算法之前,给出一群“染色体”,也就是假设的可行解.然后,把这些假设的可行解置于问题的“环境”中,并按适者生存的原则,从中选择出较适应环境的“染色体”进行复制,再通过交叉、变异过程产生更适应环境的新一代“染色体”群.经过这样的一代一代地进化,最后就会收敛到最适应环境的一个“染色体”上,它就是问题的最优解.

下面给出遗传算法的具体步骤,流程图参见图1:

第一步:选择编码策略,把参数集合(可行解集合)转换染色体结构空间; 第二步:定义适应函数,便于计算适应值;

第三步:确定遗传策略,包括选择群体大小,选择、交叉、变异方法以及确定交叉概率、变异概率等遗传参数;

第四步:随机产生初始化群体;

第五步:计算群体中的个体或染色体解码后的适应值;

第六步:按照遗传策略,运用选择、交叉和变异算子作用于群体,形成下一代群体; 第七步:判断群体性能是否满足某一指标、或者是否已完成预定的迭代次数,不满足则返回第五步、或者修改遗传策略再返回第六步.

图1 一个遗传算法的具体步骤

产生初始群体 是否满足终止条件

得到结果 结束程序 是 否

计算每个个体的适应值

以概率选择遗传算子

选择一个个体

复制到新群体 选择两个个体进行交叉插入到新群体 选择一个个体进行变异插入到新群体

得到新群体

遗传算法有很多种具体的不同实现过程,以上介绍的是标准遗传算法的主要步骤,此算法会一直运行直到找到满足条件的最优解为止.

2.遗传算法的实际应用

例1:设2()20.5f x x x =-++,求 max (), [1,2]f x x ∈-.

注:这是一个非常简单的二次函数求极值的问题,相信大家都会做.在此我们要研究的不是问题本身,而是借此来说明如何通过遗传算法分析和解决问题.

在此将细化地给出遗传算法的整个过程.

(1)编码和产生初始群体

首先第一步要确定编码的策略,也就是说如何把1-到2这个区间内的数用计算机语言表示出来.

编码就是表现型到基因型的映射,编码时要注意以下三个原则:

完备性:问题空间中所有点(潜在解)都能成为GA 编码空间中的点(染色体位串)的表现型;

健全性:GA 编码空间中的染色体位串必须对应问题空间中的某一潜在解; 非冗余性:染色体和潜在解必须一一对应.

这里我们通过采用二进制的形式来解决编码问题,将某个变量值代表的个体表示为一个{0,1}二进制串.当然,串长取决于求解的精度.如果要设定求解精度到六位小数,由于区间长度为2(1)3--=,则必须将闭区间 [1,2]-分为6310?等分.因为216222097152231024194304=

将一个二进制串(b 21b 20b 19…b 1b 0)转化为区间[1,2]-内对应的实数值很简单,只需采取以下两步(Matlab 程序参见附录4):

1)将一个二进制串(b 21b 20b 19…b 1b 0)代表的二进制数化为10进制数:

21

212019102100()(2)'i i i b b b b b b x =?=?=∑

2)'x 对应的区间[1,2]-内的实数:

12)

1(2'122---?

+-=x x 例如,一个二进制串a=<1000101110110101000111>表示实数0.637197.

'x =(1000101110110101000111)2=2288967

637197.01232288967122=-?+-=x 二进制串<0000000000000000000000>,<1111111111111111111111>,则分别

表示区间的两个端点值-1和2.

利用这种方法我们就完成了遗传算法的第一步——编码,这种二进制编码的方法完全符合上述的编码的三个原则.

首先我们来随机的产生一个个体数为4个的初始群体如下:

pop(1)={

<1101011101001100011110>, %% a1

<1000011001010001000010>, %% a2

<0001100111010110000000>, %% a3

<0110101001101110010101>} %% a4(Matlab 程序参见附录2)

化成十进制的数分别为:

pop(1)={ 1.523032,0.574022 ,-0.697235 ,0.247238 }

接下来我们就要解决每个染色体个体的适应值问题了.

(2)定义适应函数和适应值

由于给定的目标函数2()20.5f x x x =-++在[1,2]-内的值有正有负,所以必须通过建立适应函数与目标函数的映射关系,保证映射后的适应值非负,而且目标函数的优化方向应对应于适应值增大的方向,也为以后计算各个体的入选概率打下基础.

对于本题中的最大化问题,定义适应函数()g x ,采用下述方法:

min min (), ()0()0,f x F f x F g x -->?=??

若其他 式中min F 既可以是特定的输入值,也可以是当前所有代或最近K 代中()f x 的最小值,这里为了便于计算,将采用了一个特定的输入值.

若取min 1F =-,则当()1f x =时适应函数()2g x =;当() 1.1f x =-时适应函数()0g x =.

由上述所随机产生的初始群体,我们可以先计算出目标函数值分别如下(Matlab 程序参见附录3):

f [pop(1)]={ 1.226437 , 1.318543 , -1.380607 , 0.933350 }

然后通过适应函数计算出适应值分别如下(Matlab 程序参见附录5、附录6): 取min 1F =-,

g[pop(1)]= { 2.226437 , 2.318543 , 0 , 1.933350 }

(3)确定选择标准

这里我们用到了适应值的比例来作为选择的标准,得到的每个个体的适应值比例叫作入选概率.其计算公式如下:

对于给定的规模为n 的群体pop={123,,,

,n a a a a },

个体i a 的适应值为()i g a ,则其入选概率为

1()(),1,2,3,,()i s i n i

i g a P a i n g a ===?∑

由上述给出的群体,我们可以计算出各个个体的入选概率.

首先可得 41() 6.47833

0i i g a

==∑, 然后分别用四个个体的适应值去除以4

1

()i i g a =∑,得:

P (a 1)=2.226437 / 6.478330 = 0.343675 %% a 1

P (a 2)=2.318543 / 6.478330 = 0.357892 %% a 2

P (a 3)= 0 / 6.478330 = 0 %% a 3

P (a 4)=1.933350 / 6.478330 = 0.298433 %% a 4(Matlab 程序参见附录7)

(4)产生种群

计算完了入选概率后,就将入选概率大的个体选入种群,淘汰概率小的个体,并用入选概率最大的个体补入种群,得到与原群体大小同样的种群(Matlab 程序参见附录8、附录11).

要说明的是:附录11的算法与这里不完全相同.为保证收敛性,附录11的算法作了修正,采用了最佳个体保存方法(elitist model),具体内容将在后面给出介绍.

由初始群体的入选概率我们淘汰掉a3,再加入a2补足成与群体同样大小的种群得到newpop(1)如下:

newpop(1)={

<1101011101001100011110>,%% a1

<1000011001010001000010>,%% a2

<1000011001010001000010>,%% a2

<0110101001101110010101>} %% a4

(5)交叉

交叉也就是将一组染色体上对应基因段的交换得到新的染色体,然后得到新的染色体组,组成新的群体(Matlab程序参见附录9).

我们把之前得到的newpop(1)的四个个体两两组成一对,重复的不配对,进行交叉.(可以在任一位进行交叉)

<110101110 1001100011110>,<1101011101010001000010>

交叉得:

<100001100 1010001000010>,<1000011001001100011110>

<10000110010100 01000010>,<1000011001010010010101>

交叉得:

<01101010011011 10010101>,<0110101001101101000010>

通过交叉得到了四个新个体,得到新的群体jchpop (1)如下:

jchpop(1)={

<1101011101010001000010>,

<1000011001001100011110>,

<1000011001010010010101>,

<0110101001101101000010>}

这里采用的是单点交叉的方法,当然还有多点交叉的方法,不过有些烦琐,这里就不着重介绍了.

(6)变异

变异也就是通过一个小概率改变染色体位串上的某个基因(Matlab程序参见附录10).

现把刚得到的jchpop(1)中第3个个体中的第9位改变,就产生了变异,得到了新的群体pop(2)如下:

pop(2)= {

<1101011101010001000010>,

<1000011001001100011110>,

<1000011011010010010101>,

<0110101001101101000010> }

然后重复上述的选择、交叉、变异直到满足终止条件为止.

(7)终止条件

MATLAB实验遗传算法和优化设计

实验六 遗传算法与优化设计 一、实验目的 1. 了解遗传算法的基本原理和基本操作(选择、交叉、变异); 2. 学习使用Matlab 中的遗传算法工具箱(gatool)来解决优化设计问题; 二、实验原理及遗传算法工具箱介绍 1. 一个优化设计例子 图1所示是用于传输微波信号的微带线(电极)的横截面结构示意图,上下两根黑条分别代表上电极和下电极,一般下电极接地,上电极接输入信号,电极之间是介质(如空气,陶瓷等)。微带电极的结构参数如图所示,W 、t 分别是上电极的宽度和厚度,D 是上下电极间距。当微波信号在微带线中传输时,由于趋肤效应,微带线中的电流集中在电极的表面,会产生较大的欧姆损耗。根据微带传输线理论,高频工作状态下(假定信号频率1GHz ),电极的欧姆损耗可以写成(简单起见,不考虑电极厚度造成电极宽度的增加): 图1 微带线横截面结构以及场分布示意图 {} 28.6821ln 5020.942ln 20.942S W R W D D D t D W D D W W t D W W D e D D παπππ=+++-+++?????? ? ??? ??????????? ??????? (1) 其中πρμ0=S R 为金属的表面电阻率, ρ为电阻率。可见电极的结构参数影响着电极损耗,通过合理设计这些参数可以使电极的欧姆损耗做到最小,这就是所谓的最优化问题或者称为规划设计问题。此处设计变量有3个:W 、D 、t ,它们组成决策向量[W, D ,t ] T ,待优化函数(,,)W D t α称为目标函数。 上述优化设计问题可以抽象为数学描述: ()()min .. 0,1,2,...,j f X s t g X j p ????≤=? (2)

什么是数学模型与数学建模

1. 什么是数学模型与数学建模 简单地说:数学模型就是对实际问题的一种数学表述。 具体一点说:数学模型是关于部分现实世界为某种目的的一个抽象的简化的数学结构。 更确切地说:数学模型就是对于一个特定的对象为了一个特定目标,根据特有的内在规律,做出一些必要的简化假设,运用适当的数学工具,得到的一个数学结构。数学结构可以是数学公式,算法、表格、图示等。 数学建模就是建立数学模型,建立数学模型的过程就是数学建模的过程(见数学建模过程流程图)。数学建模是一种数学的思考方法,是运用数学的语言和方法,通过抽象、简化建立能近似刻划并"解决"实际问题的一种强有力的数学手段。 2.美国大学生数学建模竞赛的由来: 1985年在美国出现了一种叫做MCM的一年一度大大学生数学模型(1987年全称为Mathematical Competition in Modeling,1988年改全称为Mathematical Contest in Modeling,其所写均为MCM)。这并不是偶然的。在1985年以前美国只有一种大学生数学竞赛(The william Lowell Putnam mathematial Competition,简称Putman(普特南)数学竞赛),这是由美国数学协会(MAA--即Mathematical Association of America的缩写)主持,于每年12月的第一个星期六分两试进行,每年一次。在国际上产生很大影响,现已成为国际性的大学生的一项著名赛事。该竞赛每年2月或3月进行。 我国自1989年首次参加这一竞赛,历届均取得优异成绩。经过数年参加美国赛表明,中国大学生在数学建模方面是有竞争力和创新联想能力的。为使这一赛事更广泛地展开,1990年先由中国工业与应用数学学会后与国家教委联合主办全国大学生数学建模竞赛(简称CMCM),该项赛事每年9月进行。

全国研究生数学建模竞赛-参赛队的参赛流程如图11所示。

全国研究生数学建模竞赛,参赛队的参赛流程如图1-1所示。图1-1 参赛队操作流程 其中: 若参赛队由培养单位缴费,则无需进行“缴费验证”操作。

1 注册报名 本章介绍参赛队如何在“全国研究生数学建模竞赛”网站中进行注册报名。 前提条件 您是本届“全国研究生数学建模竞赛”的参赛队员。 操作步骤 步骤1在浏览器地址栏中输入“全国研究生数学建模竞赛网站”网址。 网站地址:https://www.360docs.net/doc/9b627093.html,/ 支持浏览器类型:IE、Mozilla Firefox、Google浏览器 步骤2在登录区域中,选择“参赛队登录”页签,如图1-1所示。 图1-1 参赛队注册登录页面 步骤3参赛队注册。 1.单击“注册”,系统跳转至注册页面,如图1-2所示。

图1-2 注册页面 2.填写注册信息,单击“立即注册”。 3.在“注册成功”提示框中,单击“确定”完成注册。 步骤4参赛队登录网站完善参赛选手信息。 1.使用已注册账号登录数模网站。 系统进入参赛队信息管理页面,如图1-3所示。 -左侧为目录树,您可以单击选择您要操作的选项,例如“选手首页”。 -右侧展示“选手首页”页面,可查看参赛相关信息,如选手审核、缴费状态,竞赛日程安排等。

图1-3 参赛队信息维护 2.在“选手首页”单击“编辑资料”,或在左侧目录树中选择“选手资料> 编辑资料”。 系统进入选手资料上报页面,如图1-4所示。 图1-4 完成选手信息

3.在编辑页面如实填写队长、第一队员、第二队员信息。 4.单击“提交信息”,提交竞赛报名。 请如实填写选手信息,参赛选手信息审核通过后不能再编辑,如需修改请联系所在培养单位的负责 老师。 ----结束 后续处理 参赛队完成参赛信息提交后,需等待培养单位审核。审核通过,才完成参赛报名。 参赛队可在“选手中心 > 选手首页”菜单下查看资料审核状态: ●审核前: ●审核通过: ●未审核通过: 未审核通过,参赛队可单击“编辑资料”进入“参赛选手资料上报”页面,修改参赛选 手信息后重新提交审批。

数学建模算法分类

数学模型按照不同的分类标准有许多种类: 1.按照模型的数学方法分,有几何模型,图论模型,微分方程模型。概率模型,最优控制模型,规划论模型,马氏链模型。 2.按模型的特征分,有静态模型和动态模型,确定性模型和随机模型,离散模型和连续性模型,线性模型和非线性模型。 3.按模型的应用领域分,有人口模型,交通模型,经济模型,生态模型,资源模型。环境模型。 4.按建模的目的分,有预测模型,优化模型,决策模型,控制模型等。 5.按对模型结构的了解程度分,有白箱模型,灰箱模型,黑箱模型。 数学建模的十大算法: 蒙特卡洛算法(该算法又称随机性模拟算法,是通过计算机仿真来解决问题的算法,同时可以通过模拟可以来检验自己模型的正确性,比较好用的算法。) 数据拟合、参数估计、插值等数据处理算法(比赛中通常会遇到大量的数据需要处理,而处理数据的关键就在于这些算法,通常使用matlab作为工具。) 线性规划、整数规划、多元规划、二次规划等规划类问题(建模竞赛大多数问题属于最优化问题,很多时候这些问题可以用数学规划算法来描述,通常使用lingo、lingdo软件实现)图论算法(这类算法可以分为很多种,包括最短路、网络流、二分图等算法,涉及到图论的问题可以用这些方法解决,需要认真准备。) 动态规划、回溯搜索、分治算法、分支定界等计算机算法(这些算法是算法设计中比较常用的方法,很多场合可以用到竞赛中) 最优化理论的三大非经典算法:模拟退火法、神经网络、遗传算法(这些问题时用来解决一些较困难的最优化问题的算法,对于有些问题非常有帮助,但是算法的实现比较困难,需谨慎使用) 网格算法和穷举法(当重点讨论模型本身而情史算法的时候,可以使用这种暴力方案,最好使用一些高级语言作为编程工具) 一些连续离散化方法(很多问题都是从实际来的,数据可以是连续的,而计算机只认得是离散的数据,因此将其离散化后进行差分代替微分、求和代替积分等思想是非常重要的。 数值分析算法(如果在比赛中采用高级语言进行编程的话,那一些数值分析中常用的算法比如方程组求解、矩阵运算、函数积分等算法就需要额外编写库函数进行调用。) 图像处理算法(赛题中有一类问题与图形有关,即使与图形无关,论文中也应该要不乏图片的,这些图形如何展示以及如何处理就是需要解决的问题,通常使用matlab来处理问题。) 数学建模方法 统计:1.预测与预报2.评价与决策3.分类与判别4.关联与因果 优化:5.优化与控制 预测与预报 ①灰色预测模型(必须掌握) 满足两个条件可用: a数据样本点个数少,6-15个 b数据呈现指数或曲线的形式 ②微分方程预测(备用) 无法直接找到原始数据之间的关系,但可以找到原始数据变化速度之间的关系,通过公式

数学建模的作用意义

数学建模的背景: 人们在观察、分析和研究一个现实对象时经常使用模型,如展览馆里的飞机模型、水坝模型,实际上,照片、玩具、地图、电路图等都是模型,它们能概括地、集中地反映现实对象的某些特征,从而帮助人们迅速、有效地了解并掌握那个对象。数学模型不过是更抽象些的模型。 当需要从定量的角度分析和研究一个实际问题时,人们就要在深入调查研究、了解对象信息、作出简化假设、分析内在规律等工作的基础上,用数学的符号和语言,把它表述为数学式子(称为数学模型),然后用通过计算得到的模型结果来解释实际问题,并接受实际的检验。这个全过程就称为数学建模。 近半个多世纪以来, 随着计算机技术的迅速发展,数学的应用不仅在工程技术、自然科学等领域发挥着越来越重要的作用, 而且以空前的广度和深度向经济、金融、生物、医学、环境、地质、人口、交通等新的领域渗透,所谓数学技术已经成为当代高新技术的重要组成部分。 不论是用数学方法在科技和生产领域解决哪类实际问题,还是与其它学科相结合形成交叉学科,首要的和关键的一步是建立研究对象的数学模型,并计算求解。人们常常把数学建模和计算机技术在知识经济时代的作用比喻为如虎添翼。 数学建模日益显示其重要作用,已成为现代应用数学的一个重要领域。为培养高质量、高层次人才,对理工、经济、金融、管理科学等各专业的大学生都提出“数学建模技能和素质方面的要求”。 数学建模在现代社会的一些作用 (1)在一般工程技术领域,数学建模仍然大有用武之地。在以声、光、热、力、电这些物理学科为基础的诸如机械、电机、土木、水利等工程技术领域中,数学建模的普遍性和重要性不言而喻,虽然这里的基本模型是已有的,但是由于新技术、新工艺的不断涌现,提出了许多需要用数学方法解决的新问题;高速、大型计算机的飞速发展,使得过去即便有了数学模型也无法求解的课题(如大型水坝的应力计算,中长期天气预报等)迎刃而解;建立在数学模型和计算机模拟基础上的CAD技术,以其快速、经济、方便等优势,大量地替代了传统工程设计中的现场实验、物理模拟等手段。 (2)在高新技术领域,数学建模几乎是必不可少的工具。无论是发展通讯、航天、微电子、自动化等高新技术本身,还是将高新技术用于传统工业去创造新工艺、开发新产品,计算机技术支持下的建模和模拟都是经常使用的有效手段。数学建模、数值计算和计算机图形学等相结合形成的计算机软件,已经被固化于产品中,在许多高新技术领域起着核心作用,被认为是高新技术的特征之一。在这个意义上,数学不再仅仅作为一门科学,它是许多技术的基础,而且直接走向了技术的前台。国际上一位学者提出了“高技术本质上是一种数学技术”的观点。 (3)数学迅速进入一些新领域,为数学建模开拓了许多新的处女地。随着数学向诸如经济、人口、生态、地质等所谓非物理领域的渗透,一些交叉学科如计量经济学、人口控制论、数学生态学、数学地质学等应运而生。一般地说,不存在作为支配关系的物理定律,当用数学方法研究这些领域中的定量关系时,数学建模就成为首要的、关键的步骤和这些学科发展与应用的基础。在这些领域里建立不同类型、不同方法、不同深浅程度模型的余地相当大,为数学建模提供了广阔的新天地。马克思说过,一门科学只有成功地运用数学时,才

全国大学生数学建模竞赛论文

2009高教社杯全国大学生数学建模竞赛 承诺书 我们仔细阅读了中国大学生数学建模竞赛的竞赛规则. 我们完全明白,在竞赛开始后参赛队员不能以任何方式(包括电话、电子邮件、网上咨询等)与队外的任何人(包括指导教师)研究、讨论与赛题有关的问题。 我们知道,抄袭别人的成果是违反竞赛规则的,如果引用别人的成果或其他公开的资料(包括网上查到的资料),必须按照规定的参考文献的表述方式在正文引用处和参考文献中明确列出。 我们郑重承诺,严格遵守竞赛规则,以保证竞赛的公正、公平性。如有违反竞赛规则的行为,我们将受到严肃处理。 我们参赛选择的题号是(从A/B/C/D中选择一项填写): 我们的参赛报名号为(如果赛区设置报名号的话): 所属学校(请填写完整的全名): 参赛队员(打印并签名):1. 2. 3. 指导教师或指导教师组负责人(打印并签名):指导教师组 日期:年月日 赛区评阅编号(由赛区组委会评阅前进行编号):

2009高教社杯全国大学生数学建模竞赛 编号专用页 赛区评阅编号(由赛区组委会评阅前进行编号): 全国评阅编号(由全国组委会评阅前进行编号):

论文标题 摘要 摘要是论文内容不加注释和评论的简短陈述,其作用是使读者不阅读论文全文即能获得必要的信息。 一般说来,摘要应包含以下五个方面的内容: ①研究的主要问题; ②建立的什么模型; ③用的什么求解方法; ④主要结果(简单、主要的); ⑤自我评价和推广。 摘要中不要有关键字和数学表达式。 数学建模竞赛章程规定,对竞赛论文的评价应以: ①假设的合理性 ②建模的创造性 ③结果的正确性 ④文字表述的清晰性 为主要标准。 所以论文中应努力反映出这些特点。 注意:整个版式要完全按照《全国大学生数学建模竞赛论文格式规范》的要求书写,否则无法送全国评奖。

数学建模中常见的十大模型

数学建模常用的十大算法==转 (2011-07-24 16:13:14) 转载▼ 1. 蒙特卡罗算法。该算法又称随机性模拟算法,是通过计算机仿真来解决问题的算法,同时可以通过模拟来检验自己模型的正确性,几乎是比赛时必用的方法。 2. 数据拟合、参数估计、插值等数据处理算法。比赛中通常会遇到大量的数据需要处理,而处理数据的关键就在于这些算法,通常使用MA TLAB 作为工具。 3. 线性规划、整数规划、多元规划、二次规划等规划类算法。建模竞赛大多数问题属于最优化问题,很多时候这些问题可以用数学规划算法来描述,通常使用Lindo、Lingo 软件求解。 4. 图论算法。这类算法可以分为很多种,包括最短路、网络流、二分图等算法,涉及到图论的问题可以用这些方法解决,需要认真准备。 5. 动态规划、回溯搜索、分治算法、分支定界等计算机算法。这些算法是算法设计中比较常用的方法,竞赛中很多场合会用到。 6. 最优化理论的三大非经典算法:模拟退火算法、神经网络算法、遗传算法。这些问题是用来解决一些较困难的最优化问题的,对于有些问题非常有帮助,但是算法的实现比较困难,需慎重使用。 7. 网格算法和穷举法。两者都是暴力搜索最优点的算法,在很多竞赛题中有应用,当重点讨论模型本身而轻视算法的时候,可以使用这种暴力方案,最好使用一些高级语言作为编程工具。 8. 一些连续数据离散化方法。很多问题都是实际来的,数据可以是连续的,而计算机只能处理离散的数据,因此将其离散化后进行差分代替微分、求和代替积分等思想是非常重要的。 9. 数值分析算法。如果在比赛中采用高级语言进行编程的话,那些数值分析中常用的算法比如方程组求解、矩阵运算、函数积分等算法就需要额外编写库函数进行调用。 10. 图象处理算法。赛题中有一类问题与图形有关,即使问题与图形无关,论文中也会需要图片来说明问题,这些图形如何展示以及如何处理就是需要解决的问题,通常使用MA TLAB 进行处理。 以下将结合历年的竞赛题,对这十类算法进行详细地说明。 以下将结合历年的竞赛题,对这十类算法进行详细地说明。 2 十类算法的详细说明 2.1 蒙特卡罗算法 大多数建模赛题中都离不开计算机仿真,随机性模拟是非常常见的算法之一。 举个例子就是97 年的A 题,每个零件都有自己的标定值,也都有自己的容差等级,而求解最优的组合方案将要面对着的是一个极其复杂的公式和108 种容差选取方案,根本不可能去求解析解,那如何去找到最优的方案呢?随机性模拟搜索最优方案就是其中的一种方法,在每个零件可行的区间中按照正态分布随机的选取一个标定值和选取一个容差值作为一种方案,然后通过蒙特卡罗算法仿真出大量的方案,从中选取一个最佳的。另一个例子就是去年的彩票第二问,要求设计一种更好的方案,首先方案的优劣取决于很多复杂的因素,同样不可能刻画出一个模型进行求解,只能靠随机仿真模拟。 2.2 数据拟合、参数估计、插值等算法 数据拟合在很多赛题中有应用,与图形处理有关的问题很多与拟合有关系,一个例子就是98 年美国赛A 题,生物组织切片的三维插值处理,94 年A 题逢山开路,山体海拔高度的插值计算,还有吵的沸沸扬扬可能会考的“非典”问题也要用到数据拟合算法,观察数据的

数学建模常用的十种解题方法

数学建模常用的十种解题方法 摘要 当需要从定量的角度分析和研究一个实际问题时,人们就要在深入调查研究、了解对象信息、作出简化假设、分析内在规律等工作的基础上,用数学的符号和语言,把它表述为数学式子,也就是数学模型,然后用通过计算得到的模型结果来解释实际问题,并接受实际的检验。这个建立数学模型的全过程就称为数学建模。数学建模的十种常用方法有蒙特卡罗算法;数据拟合、参数估计、插值等数据处理算法;解决线性规划、整数规划、多元规划、二次规划等规划类问题的数学规划算法;图论算法;动态规划、回溯搜索、分治算法、分支定界等计算机算法;最优化理论的三大非经典算法:模拟退火法、神经网络、遗传算法;网格算法和穷举法;一些连续离散化方法;数值分析算法;图象处理算法。 关键词:数学建模;蒙特卡罗算法;数据处理算法;数学规划算法;图论算法 一、蒙特卡罗算法 蒙特卡罗算法又称随机性模拟算法,是通过计算机仿真来解决问题的算法,同时可以通过模拟可以来检验自己模型的正确性,是比赛时必用的方法。在工程、通讯、金融等技术问题中, 实验数据很难获取, 或实验数据的获取需耗费很多的人力、物力, 对此, 用计算机随机模拟就是最简单、经济、实用的方法; 此外, 对一些复杂的计算问题, 如非线性议程组求解、最优化、积分微分方程及一些偏微分方程的解⑿, 蒙特卡罗方法也是非常有效的。 一般情况下, 蒙特卜罗算法在二重积分中用均匀随机数计算积分比较简单, 但精度不太理想。通过方差分析, 论证了利用有利随机数, 可以使积分计算的精度达到最优。本文给出算例, 并用MA TA LA B 实现。 1蒙特卡罗计算重积分的最简算法-------均匀随机数法 二重积分的蒙特卡罗方法(均匀随机数) 实际计算中常常要遇到如()dxdy y x f D ??,的二重积分, 也常常发现许多时候被积函数的原函数很难求出, 或者原函数根本就不是初等函数, 对于这样的重积分, 可以设计一种蒙特卡罗的方法计算。 定理 1 )1( 设式()y x f ,区域 D 上的有界函数, 用均匀随机数计算()??D dxdy y x f ,的方法: (l) 取一个包含D 的矩形区域Ω,a ≦x ≦b, c ≦y ≦d , 其面积A =(b 一a) (d 一c) ; ()j i y x ,,i=1,…,n 在Ω上的均匀分布随机数列,不妨设()j i y x ,, j=1,…k 为落在D 中的k 个随机数, 则n 充分大时, 有

数学建模在经济学中的应用

数学建模在经济学中的应用 摘要:高校的经济学教学中经常会融入一些数学模型的思想,实际上数学模型的建立与经济学的教学和研究有着很大的内在联系,两者之间有着必然的关系,文本笔者将会从数学与经济学的关系出发,具体的介绍数学经济模型及其重要性,并对构建数学经济模型以及一些实例进行具体的论述。 关键词:数学模型;经济学;高校教学;应用 现如今的高校教学当中可以说数学建模与经济学之间有着密切的关系,任何一项经济学的研究和计算都离不开数学模型的建立,采用数学模型来辅助经济学的发展可以更加直观的让人们从中看出经济的发展形势。例如在经济学的宏观控制和价格控制中,都有数学建模的融入,利用数学建模可以有助于经济学实验的宏观经济分析,在一些实验和价格控制当中,都经常会涉及到数学问题在微观经济中数理统计的实验设计,这时候就体现出了数学建模对于经济学的促进性作用。下面笔者将会针对数学建模对于经济学的重要作用进行具体的分析。 1.数学经济模型对于经济学研究的重要性: 一般情况下,单独的依靠数学模型是不够解决所有的经济学问题,很多经济领域中的问题是需要从微观角度进行细致的分析才能够总结出其中的规律。要想利用数学知识来

解决经济学中所出现的问题,就一定要建立适当的经济学模型。运用数学建模来解决经济学中的问题并不是没有道理的,很多时候从经济学的角度仅仅能够知道问题的方向和目的,至于其中的过程并不能有着详细的分析,而利用数学模型就可以彻底的解决这一问题。数学建模可以通过自身在数字、图像以及框图等形式来更加真实地反映出现有经济的实际状况。 2.构建经济数学模型的一般步骤: 要想利用数学模型来更好的解决现有的经济学问题,主要分为两个步骤,第一先要分清楚问题发生的背景并且熟悉问题,然后要通过假设的形式来完善现有的经济学问题,通过抽象以及形象化的方式来构建一些合理的数学模型。运用数学知识和技巧来描述问题中变量参数之间的关系。这样可以得出一些有关经济类的数据,进而将建模中得到的数据与实际情况进行对比和分析,最终得出结果。 3.应用实例: 商品提价问题的数学模型: 3.1问题: 现如今经济学在很多的商场中都有所运用,例如同样的商品要想获得最大的经济效益,既要考虑到规定的售价,又要考虑到销售的数量,如果定价过低,则销售数量较多,如果定价较高,利润是大了,但是却影响了销售数量。怎样

TSP问题的遗传算法求解 优化设计小论文

TSP问题的遗传算法求解 摘要:遗传算法是模拟生物进化过程的一种新的全局优化搜索算法,本文简单介绍了遗传算法,并应用标准遗传算法对旅行包问题进行求解。 关键词:遗传算法、旅行包问题 一、旅行包问题描述: 旅行商问题,即TSP问题(Traveling Saleman Problem)是数学领域的一个著名问题,也称作货郎担问题,简单描述为:一个旅行商需要拜访n个城市(1,2,…,n),他必须选择所走的路径,每个城市只能拜访一次,最后回到原来出发的城市,使得所走的路径最短。其最早的描述是1759年欧拉研究的骑士周游问题,对于国际象棋棋盘中的64个方格,走访64个方格一次且最终返回起始点。 用图论解释为有一个图G=(V,E),其中V是顶点集,E是边集,设D=(d ij)是有顶点i和顶点j之间的距离所组成的距离矩阵,旅行商问题就是求出一条通过所有顶点且每个顶点只能通过一次的具有最短距离的回路。若对于城市V={v1,v2,v3,...,vn}的一个访问顺序为T=(t1,t2,t3,…,ti,…,tn),其中ti∈V(i=1,2,3,…,n),且记tn+1= t1,则旅行商问题的数学模型为:min L=Σd(t(i),t(i+1)) (i=1,…,n) 旅行商问题是一个典型组合优化的问题,是一个NP难问题,其可能的路径数为(n-1)!,随着城市数目的增加,路径数急剧增加,对与小规模的旅行商问题,可以采取穷举法得到最优路径,但对于大型旅行商问题,则很难采用穷举法进行计算。 在生活中TSP有着广泛的应用,在交通方面,如何规划合理高效的道路交通,以减少拥堵;在物流方面,更好的规划物流,减少运营成本;在互联网中,如何设置节点,更好的让信息流动。许多实际工程问题属于大规模TSP,Korte于1988年提出的VLSI芯片加工问题可以对应于1.2e6的城市TSP,Bland于1989年提出X-ray衍射问题对应于14000城市TSP,Litke于1984年提出电路板设计中钻孔问题对应于17000城市TSP,以及Grotschel1991年提出的对应于442城市TSP的PCB442问题。

美国大学生数学建模竞赛组队和比赛流程

数学模型的组队非常重要,三个人的团队一定要有分工明确而且互有合作,三个人都有其各自的特长,这样在某方面的问题的处理上才会保持高效率。 三个人的分工可以分为这几个方面: 数学员:学习过很多数模相关的方法、知识,无论是对实际问题还是数学理论都有着比较敏感的思维能力,知道一个问题该怎样一步步经过化简而变为数学问题,而在数学上又有哪些相关的方法能够求解,他可以不能熟练地编程,但是要精通算法,能够一定程度上帮助程序员想算法,总之,数学员要做到的是能够把一个问题清晰地用数学关系定义,然后给出求解的方向; 程序员:负责实现数学员的想法,因为作为数学员,要完成大部分的模型建立工作,因此调试程序这类工作就必须交给程序员来分担了,一些程序细节程序员必须非常明白,需要出图,出数据的地方必须能够非常迅速地给出;ACM的参赛选手是个不错的选择,他们的程序调试能力能够节约大量的时间,提高在有限时间内工作的工作效率; 写手:在全文的写作中,数学员负责搭建模型的框架结构,程序员负责计算结果并与数学员讨论,进而形成模型部分的全部内容,而写手要做的。就是在此基础之上,将所有的图表,文字以一定的结构形式予以表达,注意写手时刻要从评委,也就是论文阅读者的角度考虑问题,在全文中形成一个完整地逻辑框架。同时要做好排版的工作,最终能够把数学员建立的模型和程序员算出的结果以最清晰的方式体现在论文中。一个好的写手能够清晰地分辨出模型中重要和次要的部分,这样对成文是有非常大的意义的。因为论文是评委能够唯一看到的成果,所以写手的水平直接决定了获奖的高低,重要性也不言而喻了。 三个人至少都能够擅长一方面的工作,同时相互之间也有交叉,这样,不至于在任何一个环节卡壳而没有人能够解决。因为每一项工作的工作量都比较庞大,因此,在准备的过程中就应该按照这个分工去准备而不要想着通吃。这样才真正达到了团队协作的效果。 比赛流程:对于比赛流程,在三天的国赛里,我们应该用这样一种安排方式:第一天:定题+资

数学建模10种常用算法

数学建模10种常用算法 1、蒙特卡罗算法(该算法又称随机性模拟算法,是通过计算机仿真来解决问题的算法,同时可以通过模拟可以来检验自己模型的正确性,是比赛时必用的方法) 2、数据拟合、参数估计、插值等数据处理算法(比赛中通常会遇到大量的数据需要处理,而处理数据的关键就在于这些算法,通常使用Matlab作为工具) 3、线性规划、整数规划、多元规划、二次规划等规划类问 题(建模竞赛大多数问题属于最优化问题,很多时候这些问题可以用数学规划算法来描述,通常使用Lindo、Lingo软件实现) 4、图论算法(这类算法可以分为很多种,包括最短路、网络流、二分图等算法,涉及到图论的问题可以用这些方法解决,需要认真准备) 5、动态规划、回溯搜索、分治算法、分支定界等计算机算法(这些算法是算法设计中比较常用的方法,很多场合可以用到竞赛中) 6、最优化理论的三大非经典算法:模拟退火法、神经网络、遗传算法(这些问题是用来解决一些较困难的最优化问题的算法,对于有些问题非常有帮助,但是算法的实现比较困难,需慎重使用) 7、网格算法和穷举法(网格算法和穷举法都是暴力搜索最优点的算法,在很多竞赛题中有应用,当重点讨论模型本身而轻视算法的时候,可以使用这种暴力方案,最好使用一些高级语言作为编程工具) 8、一些连续离散化方法(很多问题都是实际来的,数据可以是连续的,而计算机只认的是离散的数据,因此将其离散化后进行差分代替微分、求和代替积分等思想是非常重要的) 9、数值分析算法(如果在比赛中采用高级语言进行

编程的话,那一些数值分析中常用的算法比如方程组 求解、矩阵运算、函数积分等算法就需要额外编写库 函数进行调用) 10、图象处理算法(赛题中有一类问题与图形有关, 即使与图形无关,论文中也应该要不乏图片的,这些 图形如何展示以及如何处理就是需要解决的问题,通 常使用Matlab进行处 参数估计 C.F. 20世纪60年代,随着电子计算机的 。参数估计有多种方法,有最小二乘法、极大似然法、极大验后法、最小风险法和极小化极大熵法等。在一定条件下,后面三个方法都与极大似然法相同。最基本的方法是最小二乘法和极大似然法. 基本介绍 参数估计(parameter 尽可能接近的参数 误差 平方和  θ,使已知数据Y 最大,这里P(Y│θ)是数据Y P(Y│θ)。在实践中这是困难的,一般可假设P(Y│θ

基于遗传算法的库位优化问题

Logistics Sci-Tech 2010.5 收稿日期:2010-02-07 作者简介:周兴建(1979-),男,湖北黄冈人,武汉科技学院经济管理学院,讲师,武汉理工大学交通学院博士研究生,研究方向:物流价值链、物流系统规划;刘元奇(1988-),男,甘肃天水人,武汉科技学院经济管理学院;李泉(1989-),男,湖北 武汉人,武汉科技学院经济管理学院。 文章编号:1002-3100(2010)05-0038-03 物流科技2010年第5期Logistics Sci-Tech No.5,2010 摘 要:应用遗传算法对邯运集团仓库库位进行优化。在充分考虑邯运集团仓库所存放的货物种类、货物数量、出入库频 率等因素的基础上进行库位预分区规划,建立了二次指派问题的数学模型。利用遗传算法对其求解,结合MATLAB 进行编程计算并得出最优划分方案。 关键词:遗传算法;预分区规划;库位优化中图分类号:F253.4 文献标识码:A Abstract:The paper optimize the storage position in warehouse of Hanyun Group based on genetic algorithm.With thinking of the factors such as goods categories,quantities and frequencies of I/O,etc,firstly,the storage district is planned.Then the model of quadratic assignment problems is build,and genetic algorithm is utilized to resolve the problem.The software MATLAB is used to program and figure out the best alternatives. Key words:genetic algorithm;district planning;storage position optimization 1 库位优化的提出 邯郸交通运输集团有限公司(简称“邯运集团”)是一家集多种业务为一体的大型综合性物流企业。邯运集团的主要业务板块有原料采购(天信运业及天昊、天诚、天恒等)、快递服务(飞马快运)、汽贸业务(天诚汽贸)及仓储配送(河北快运)等。其中,邯运集团的仓储配送业务由河北快运经营,现有仓库面积总共40000㎡,主要的业务范围为医药、日用百货、卷烟、陶瓷、化工产品的配送,其中以医药为主。邯运集团库存货物主要涉及两个方面:一个是大宗的供应商货物,如医药,化工产品等;另一方面主要是大规模的小件快递货物,如日用百货等[1]。经分析,邯运集团在仓储运作方面存在如下问题: (1)存储货物繁多而分拣速度低下。仓库每天到货近400箱,有近200多种规格,缺乏一套行之有效的仓储管理系统。(2)货架高度不当而货位分配混乱。现在采用的货架高度在2米以上,而且将整箱货物直接码垛在货架上,不严格按货位摆放。当需要往货架最上层码放货物需要借助梯子,增加操作难度且操作效率较低。货物在拣货区货架摆放是以件为单位的,分拣和搬运速度较慢。 (3)拣货货架设计不当而仓储效率低下。发货前装箱工作主要由人工协同完成,出库效率低,出错率难以控制。 (4)存储能力和分拣能力不能满足需求。根据邯运集团的业务发展现状及趋势,现有的仓库储存和分拣能力远远达不到集团公司对配送业务量的需求。 当前邯运集团的货位分配主要采用物理地址编码的方式,很少考虑货位分配对仓储管理员工作效率的影响。对其进行库位优化设计不仅直接影响到其库存量的大小、出入库的效率,还间接影响到邯运集团的整体经营效益。本文对邯运集团的仓库货位进行优化时,结合考虑仓库所存放的货物种类、货物数量、出入库频率等因素,对仓库货位进行规划,以提高仓储效率。 2库位预分区规划 在进行仓库货位规划时,作如下假设: (1)货物的存放种类已知; (2)货物每种类的单位时间内存放的数量己知; (3) 每一种货物的存取频率已知。 在仓库货位优化中一个重要的环节即预分区。所谓预分区,是指没有存放货物时的分区,分区时只考虑仓储作业人员的速基于遗传算法的库位优化问题 Optimization of Storage Position in Warehouse Based on Genetic Algorithm 周兴建1,2,刘元奇1,李泉1 ZHOU Xing-jian 1,2,LIU Yuan-qi 1,LI Quan 1 (1.武汉科技学院经济管理学院,湖北武汉430073;2.武汉理工大学交通学院,湖北武汉430063) (1.College of Economics &Management,Wuhan University of Science &Engineering,Wuhan 430073,China; 2.School of Transportation,Wuhan University of Technology,Wuhan 430063,China) !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 38

基于遗传算法的齿轮减速器优化设计

煤矿机械Coal Mine Machinery Vol.30No.12 Dec.2009 第30卷第12期2009年12月 0引言 工程机械中所用电动机的转速较高,为了满足工作机低转速的需要,一般在电动机和工作机之间安装减速器,用来降低电机的转速或增大转矩,减速器是一种机械传动装置,广泛地应用于运输机械、矿山机械和建筑机械等重型机械中。因此,减速器的设计非常重要。 遗传算法(GA)是模拟生物在自然界中优胜劣汰的自然进化过程而形成的一种具有全局范围内优化的启发式搜索算法。这种方法已在很多学科得到广泛的应用,为减速器的优化设计提供有力的保证。因此,本文采用遗传算法对两级齿轮减速器进行优化设计,并通过与惩罚函数法和模拟退火算法等优化方法计算结果进行比较,来探讨适合于减速器的优化设计方法。 1建立数学模型 两级齿轮传动减速器结构如图1所示。该减速器的总中心距 a∑=[m n1z1(1+i1)+m n2z3(1+i2)]/2cosβ(1)式中m n1、m n2—— —高速级与低速级的齿轮法面模 数; i1、i2—— —高速级与低速级传动比; z1、z3—— —高速级与低速级的小齿轮齿数: β—— —2组齿轮组的螺旋角。 1.1设计变量的确定 在进行两级齿轮传动减速器设计时,一般选择齿轮传动独立的基本参数或性能参数,如齿轮的齿数、模数、传动比、螺旋角等为设计变量。两级齿轮传动由4个齿轮组成,分别用z1、z2、z3、z4表示,高速级的传动比由i1表示,低速级传动比由i2表示,两组齿轮组的法面模数分别由m n1和m n2表示,2组齿轮的螺旋角用β表示,由于两级齿轮传动减速器的总传动比i0,在设计时会给出具体数据,并且满足i0=i1i2,可以得出i2=i0/i1,可以确定独立的参数有z1、z3、m n1、m n2、i1和β。因此,可以确定该设计变量X=[z1,z3,m n1,m n2,i1,β]T=[x1,x2,x3,x4,x5,x6]T。 图1减速器结构简图 1.2目标函数的建立 在对减速器进行优化设计时,首先要确定目标函数。确定目标函数的原则是在满足各种性能要求的前提下,使减速器的体积最小,这样设计的减速器既经济又实用,从而达到了优化的目的。要使减速器的体积最小,必须使减速器的总中心距最小。因此,以减速器的中心距最小建立目标函数为 a∑=[x3x1(1+x5)+x4x2(1+i0/x5)] 6 (2)1.3约束条件的确定 为使两级齿轮传动减速器满足强度、设计变量 基于遗传算法的齿轮减速器优化设计* 吴婷,张礼兵,黄磊 (安徽建筑工业学院机电学院,合肥230601) 摘要:对两级齿轮减速器优化设计进行了分析,建立了其优化设计的数学模型,确定了优化设计的约束条件,采用遗传算法对两级齿轮减速器进行优化设计,并通过实例说明,采用遗传算法对减速器进行优化,可以得到更加优化的设计结果。 关键词:减速器;遗传算法;优化设计 中图分类号:TH132文献标志码:A文章编号:1003-0794(2009)12-0009-03 Gear Reducer Optimal Design Based on Genetic Algorithm WU Ting,ZHANG Li-bing,HUANG Lei (School of Mechanical and Electrical Engineering,Anhui University of Architecture,Hefei230601,China)Abstract:T he optimal design of a gear reducer was analyzed,the mathematic model was established, and the restriction condition was confirmed.Design of the gear reducer was optimized with genetic algorithm and the examples showed that design of the gear reducer based on genetic algorithm can gain more optimized result. Key words:reducer;genetic algorithm;optimal design *安徽省教育厅自然基金项目(2006KJ015C) 轴1轴2轴3 z1z2 z3z4 9

数学模型的定义

一、数学模型的定义 现在数学模型还没有一个统一的准确的定义,因为站在不同的角度可以有不同的定义。不过我们可以给出如下定义:“数学模型是关于部分现实世界和为一种特殊目的而作的一个抽象的、简化的结构。”具体来说,数学模型就是为了某种目的,用字母、数学及其它数学符号建立起来的等式或不等式以及图表、图象、框图等描述客观事物的特征及其内在联系的数学结构表达式。一般来说数学建模过程可用如下框图来表明: 数学是在实际应用的需求中产生的,要解决实际问题就必需建立数学模型,从此意义上讲数学建模和数学一样有古老历史。例如,欧几里德几何就是一个古老的数学模型,牛顿万有引力定律也是数学建模的一个光辉典范。今天,数学以空前的广度和深度向其它科学技术领域渗透,过去很少应用数学的领域现在迅速走向定量化,数量化,需建立大量的数学模型。特别是新技术、新工艺蓬勃兴起,计算机的普及和广泛应用,数学在许多高新技术上起着十分关键的作用。因此数学建模被时代赋予更为重要的意义。 二、建立数学模型的方法和步骤 1. 模型准备 要了解问题的实际背景,明确建模目的,搜集必需的各种信息,尽量弄清对象的特征。 2. 模型假设 根据对象的特征和建模目的,对问题进行必要的、合理的简化,用精确的语言作出假设,是建模至关重要的一步。如果对问题的所有因素一概考虑,无疑是一种有勇气但方法欠佳的行为,所以高超的建模者能充分发挥想象力、洞察力和判断力,善于辨别主次,而且为了使处理方法简单,应尽量使问题线性化、均匀化。 3. 模型构成 根据所作的假设分析对象的因果关系,利用对象的内在规律和适当的数学工具,构造各个量间的等式关系或其它数学结构。这时,我们便会进入一个广阔的应用数学天地,这里在高数、概率老人的膝下,有许多可爱的孩子们,他们是图论、排队论、线性规划、对策论等许多许多,真是泱泱大国,别有洞天。不过我们应当牢记,建立数学模型是为了让更多的人明了并能加以应用,因此工具愈简单愈有价值。 4. 模型求解 可以采用解方程、画图形、证明定理、逻辑运算、数值运算等各种传统的和近代的数学方法,特别是计算机技术。一道实际问题的解决往往需要纷繁的计算,许多时候还得将系统运行情况用计算机模拟出来,因此编程和熟悉数学软件包能力便举足轻重。 5. 模型分析 对模型解答进行数学上的分析。“横看成岭侧成峰,远近高低各不同”,能否对模型结果

数学建模中常见的十大模型讲课稿

数学建模中常见的十 大模型

精品文档 数学建模常用的十大算法==转 (2011-07-24 16:13:14) 转载▼ 1. 蒙特卡罗算法。该算法又称随机性模拟算法,是通过计算机仿真来解决问题的算法,同时可以通过模拟来检验自己模型的正确性,几乎是比赛时必用的方法。 2. 数据拟合、参数估计、插值等数据处理算法。比赛中通常会遇到大量的数据需要处理,而处理数据的关键就在于这些算法,通常使用MA TLAB 作为工具。 3. 线性规划、整数规划、多元规划、二次规划等规划类算法。建模竞赛大多数问题属于最优化问题,很多时候这些问题可以用数学规划算法来描述,通常使用Lindo、Lingo 软件求解。 4. 图论算法。这类算法可以分为很多种,包括最短路、网络流、二分图等算法,涉及到图论的问题可以用这些方法解决,需要认真准备。 5. 动态规划、回溯搜索、分治算法、分支定界等计算机算法。这些算法是算法设计中比较常用的方法,竞赛中很多场合会用到。 6. 最优化理论的三大非经典算法:模拟退火算法、神经网络算法、遗传算法。这些问题是用来解决一些较困难的最优化问题的,对于有些问题非常有帮助,但是算法的实现比较困难,需慎重使用。 7. 网格算法和穷举法。两者都是暴力搜索最优点的算法,在很多竞赛题中有应用,当重点讨论模型本身而轻视算法的时候,可以使用这种暴力方案,最好使用一些高级语言作为编程工具。 8. 一些连续数据离散化方法。很多问题都是实际来的,数据可以是连续的,而计算机只能处理离散的数据,因此将其离散化后进行差分代替微分、求和代替积分等思想是非常重要的。 9. 数值分析算法。如果在比赛中采用高级语言进行编程的话,那些数值分析中常用的算法比如方程组求解、矩阵运算、函数积分等算法就需要额外编写库函数进行调用。 10. 图象处理算法。赛题中有一类问题与图形有关,即使问题与图形无关,论文中也会需要图片来说明问题,这些图形如何展示以及如何处理就是需要解决的问题,通常使用MATLAB 进行处理。 以下将结合历年的竞赛题,对这十类算法进行详细地说明。 以下将结合历年的竞赛题,对这十类算法进行详细地说明。 2 十类算法的详细说明 2.1 蒙特卡罗算法 大多数建模赛题中都离不开计算机仿真,随机性模拟是非常常见的算法之一。 举个例子就是97 年的A 题,每个零件都有自己的标定值,也都有自己的容差等级,而求解最优的组合方案将要面对着的是一个极其复杂的公式和108 种容差选取方案,根本不可能去求解析解,那如何去找到最优的方案呢?随机性模拟搜索最优方案就是其中的一种方法,在每个零件可行的区间中按照正态分布随机的选取一个标定值和选取一个容差值作为一种方案,然后通过蒙特卡罗算法仿真出大量的方案,从中选取一个最佳的。另一个例子就是去年的彩票第二问,要求设计一种更好的方案,首先方案的优劣取决于很多复杂的因素,同样不可能刻画出一个模型进行求解,只能靠随机仿真模拟。 2.2 数据拟合、参数估计、插值等算法 数据拟合在很多赛题中有应用,与图形处理有关的问题很多与拟合有关系,一个例子就是98 年美国赛A 题,生物组织切片的三维插值处理,94 年A 题逢山开路,山体海拔高度的 收集于网络,如有侵权请联系管理员删除

相关文档
最新文档