1. 蒙特卡罗算法。
该算法又称随机性模拟算法,也称统计实验方法。是通过计算机仿真来解决问题的算法,同时可以通过模拟来检验自己模型的正确性。
2. 数据拟合、参数估计、插值等数据处理算法。
比赛中通常会遇到大量的数据需要处理,而处理数据的关键就在于这些算法,通常使用matlab辅助,与图形结合时还可处理很多有关拟合的问题。
3. 规划类算法:线性规划、整数规划、多元规划、二次规划等。
竞赛中又很多问题都和规划有关,可以说不少的模型都可以归结为一组不等式作为约束条件,几个函数表达式作为目标函数的问题,这类问题,求解是关键。通常使用 Lindo 、 Lingo 软件求解。
4. 图论算法:最短路、网络流、二分图等算法等。
熟悉ACM的人来说,应该都比较熟悉。。
5. 动态规划、回溯搜索、分治算法、分支定界等计算机算法。
这些算法是算法设计中比较常用的方法。
6. 最优化理论的三大非经典算法:模拟退火算法(SA)、神经网络算法(NN)、遗传算法(GA)。
这些问题是用来解决一些较困难的最优化问题的,对于有些问题非常有帮助,但是算法的实现比较困难,需慎重使用。如2011年B题就可用模拟退火算法。
7. 网格算法和穷举法。
两者都是暴力搜索最优点的算法,当重点讨论模型本身而轻视算法的时候,可以使用这种暴力方案,最好使用一些高级语言作为编程工具。
8. 连续数据离散化方法:差分代替微分、求和代替积分等。
计算机只能处理离散化的问题,但是实际中数据大多是连续的,因此需要将连续问题离散化之后再用计算机求解。
9. 数值分析算法:函数的数值逼近、数值微分与数值积分、非线性返程的数值解法、数值代数、常微分方程数值解等。
主要研究各种求解数学问题的数值计算方法,特别是适用于计算机实现的方法与算法。比如方程组求解、矩阵运算、函数积分等算法就需要额外编写库函数进行调用。主要应用matlab进行求解。
10. 图象处理算法。
论文中也会需要图片来说明问题,通常使用 MATLAB 进行处理。