1、蒙特卡洛算法算法
又称随机抽样或统计模拟方法,以是一种以几率统计理论为指导的一类很是重要的数值计算方法。此方法使用随机数(或最多见的伪随机数)来解决不少计算问题的方法。因为传统的经验方法不能逼近真实的物理过程,很可贵到满意的结果,而蒙特卡洛方法因为可以真实的模拟实际物理过程,故解决问题与实际很是符合,能够获得很满意的结果。编程
基本原理及思想:当所求解问题是某种随机事件出现的几率,或者是某个随机变量的指望值时,经过某种“实验”的方法,以这种事件出现的频率估计这一随机事件的几率,或者获得这个随机变量的某些数字特征,并将其做为问题的解。网络
2、数据拟合、参数估计、插值等数据处理方法函数
咱们一般会遇到大量的数据须要处理, 而处理数据的关键就在于这些算法,一般使用Matlab做为工具。数据拟合在数学建模比赛中中有应用,与图形处理有关的问题不少与拟合有关系,一个例子就是98年数学建模美国赛A题,生物组织切片的三维插值处理,94年A题逢山开路,山体海拔高度的插值计算,还有吵的沸沸扬扬可能会考的“非典”问题也要用到数据拟合算法,观察数据的走向进行处理。 工具
此类问题在 MATLAB 中有不少现成的函数能够调用,熟悉MATLAB,这些方法都能游刃有余的用好。优化
3、线性规划、整数规划、多元规划、二次规划等规划类问题spa
数学建模竞赛中不少问题都和数学规划有关,能够说很多的模型均可以归结为一组不等式做为约束条件、几个函数表达式做为目标函数的问题,遇到这类问题,求解就是关键了,列举规划后用Lingo、Lindo等软件来进行解决比较方便。事件
4、图论算法图片
Dijkstra 、 Floyd 、 Prim 、 Bellman-Ford ,最大流,二分匹配等问题。
数学
5、动态规划、回溯搜索、分治算法、分支定界等计算机算法
6、最优化理论的三大经典算法:模糊退火法、神经网络、遗传算法
遗传算法是计算数学中用于解决最优化的搜索算法,是进化算法的一种。进化算法最初是借鉴了进化生物学中的一些现象而发展起来的,这些现象包括遗传、突变、天然选择和杂交等。
遗传算法一般实现方式是一种计算机模拟。对于一个最优化问题,必定数量的候选解(称为个体)的抽象表示(称为染色体)的种群向更好的解进化。传统上,解用二进制表示,但也能够用其余表示方法。进化从彻底随机个体的种群开始,以后一代一代发生。在每一代中,整个种群的适应度被评价,从当前种群中随机的选择多个个体(基于他们的适应度),经过天然选择和突变产生新的生命种群,该种群在算法的下一次迭代中成为当前种群。
7、网络算法和穷举法
网格算法和穷举法同样,只是网格法是连续问题的穷举。
好比要求在N个变量状况下的最优化问题,那么对这些变量可取的空间进行采点。
好比在 [ a; b ] 区间内取 M +1 个点,就是 a; a +( b ? a ) =M; a +2 ¢ ( b ? a ) =M ; …;b
那么这样循环就须要进行 ( M + 1) N 次运算,因此计算量很大。
8、一些连续离散化方法
大部分物理问题的编程解决,都和这种方法有必定的联系。物理问题是反映咱们生活在一个连续的世界中,计算机只能处理离散的量,因此须要对连续量进行离散处理。
这种方法应用很广,并且和上面的不少算法有关。事实上,网络算法、蒙特卡洛算法、模拟退火都用了这个思想。
9、数值分析方法
数值分析是数学的一个分支,主要研究连续数学问题的算法。
若是在比赛中采用高级语言进行编程的话,那一些数值分析中经常使用的算法比 如方程组求解、矩阵运算、函数积分等算法就须要额外编写库函数进行调用。
这类算法是针对高级语言而专门设的,若是你用的是 MATLAB 、 Mathematica ,大可没必要准备,由于像数值分析中有不少函数通常的数学软件是具有的。
10、图像处理算法
在数学建模竞赛中:好比01 年 A 题中须要你会读 BMP 图象、美国赛 98 年 A 题须要你知道三维插值计算, 03 年 B 题要求更高,不但须要编程计算还要进行处理,而数模论文中也有不少图片须要展现,所以图象处理就是关键。作好这类问题,重要的是把MATLAB 学好,特别是图象处理的部分