1、蒙特卡罗算法
该算法又称随机性模拟算法,是通过计算机仿真来解决问题的算法,同时可以通过模拟可以来检验自己模型的正确性,是比赛时必用的方法。
![380dc90ed3d12888cb7f56a835f5a6cc.png](https://i-blog.csdnimg.cn/blog_migrate/1d415b4e9a4021cd5c0e447aeced1c89.jpeg)
2.数据拟合、参数估计、插值等数据处理算法
比赛中通常会遇到大量的数据需要处理,而处理数据的关键就在于这些算法,通常使用Matlab作为工具。
![bc54e05980c6e1517302f12f08038f4a.png](https://i-blog.csdnimg.cn/blog_migrate/ede158592b54fe3bf4253c978d7931eb.jpeg)
3.数学规划算法
线性规划、整数规划、多元规划、二次规划等规划类问题,建模竞赛大多数问题属于最优化问题,很多时候这些问题可以用数学规划算法来描述,通常使用Lindo、Lingo软件实现。
![24860506905f7dbba0c19553ecee9652.png](https://i-blog.csdnimg.cn/blog_migrate/35c1b96ce6477ef4c54dfab64a36bf65.jpeg)
4.图论算法
这类算法可以分为很多种,包括最短路、网络流、二分图等算法,涉及到图论的问题可以用这些方法解决,需要认真准备。
![784736c5f5fb417c315e6027ac872148.png](https://i-blog.csdnimg.cn/blog_migrate/adb3a38edcbd39ef772dad0f05285be2.jpeg)
5.动态规划、回溯搜索、分治算法、分支定界等计算机算法
这些算法是算法设计中比较常用的方法,很多场合可以用到竞赛中。
![e481656bb0fb53f92f115f1001191a37.png](https://i-blog.csdnimg.cn/blog_migrate/d19235ae781fd76451d8d93d8ed54332.jpeg)
6.最优化理论的三大非经典算法:模拟退火法、神经网络、遗传算法
这些问题是用来解决一些较困难的最优化问题的算法,对于有些问题非常有帮助,但是算法的实现比较困难,需慎重使用。
![64975aaa6d162aa0bdbf9ca7d43e6bfd.png](https://i-blog.csdnimg.cn/blog_migrate/43d3c799b55cb25a9135c94ec01514b1.jpeg)
7.网格算法和穷举法
网格算法和穷举法都是暴力搜索最优点的算法,在很多竞赛题中有应用,当重点讨论模型本身而轻视算法的时候,可以使用这种暴力方案,最好使用一些高级语言作为编程工具。
![b91795c9e2275645677f9b7dbd03dca5.png](https://i-blog.csdnimg.cn/blog_migrate/df49c5d903b5de83e3913f61150a8cba.jpeg)
8.连续问题离散化算法
很多问题都是实际来的,数据可以是连续的,而计算机只认的是离散的数据,因此将其离散化后进行差分代替微分、求和代替积分等思想是非常重要的。
![5b340e4c05c7b473dad30a05e5bc5978.png](https://i-blog.csdnimg.cn/blog_migrate/55a0a0623058638a48625cd076e5718d.jpeg)
9.数值分析算法
如果在比赛中采用高级语言进行编程的话,那一些数值分析中常用的算法比如方程组求解、矩阵运算、函数积分等算法就需要额外编写库函数进行调用。
![9d5bd410e02b4373603398384694be7d.png](https://i-blog.csdnimg.cn/blog_migrate/12904a80cea054af26942979635fa14e.jpeg)
10.图象处理算法
赛题中有一类问题与图形有关,即使与图形无关,论文中也应该要不乏图片的,这些图形如何展示以及如何处理就是需要解决的问题,通常使用Matlab进行处理。
![01e938081439a8afd6a78f0a9e6d29fa.png](https://i-blog.csdnimg.cn/blog_migrate/8e41763ade55f79fe1135e2955a9761f.jpeg)