数学建模国赛 常考赛题类型(模拟退火算法、粒子群算法、遗传算法)

不知小伙伴们有没有发现,在1992~2020年历年国赛赛题中,优化类赛题所占的比例非常大,如在近五年的题目中:

  1. 2016A:系泊系统的设计;
  2. 2017B:“拍照赚钱”的任务定价
  3. 2018B:智能GRV的动态调度策略;
  4. 2019B:“同心协力”策略研究以及
  5. 2019A:高压油管的压力控制
  6. 2020B:穿越沙漠游戏

上述赛题均可归类在优化类范畴,即便在往前推十年也会发现基本每年都有优化类赛题的影子,据此可以推断优化类赛题是每年国赛必出的点之一。

在解决优化类问题中,有三种智能优化模型是较为常见的:遗传算法、粒子群算法和模拟退火算法,这三种算法在近五年的优秀论文中也均有涉及,目前也逐渐成为解决优化类赛题常见的方法之一。

图片

如上,作者在第三问利用模拟退火算法计算出在使得超过217ºC到峰值温度所覆盖的面积最小时最优的炉温曲线,以及各温区的设定温度和传送带的过炉速度等。

加下来就让小编带大家了解一下这三个智能优化算法,注意,每个算法末尾均有福利。

目录

模拟退火算法 原理与编程

1、算法基本原理

2、算法基本思想

3、算法的步骤

粒子群算法 原理与编程

1、算法基本原理

2、算法基本思想

3、算法的步骤

遗传算法 原理与编程

1、算法基本原理

2、算法基本思想

3、算法的步骤


模拟退火算法 原理与编程

1、算法基本原理

模拟退火算法来源于固体退火原理,是一种基于概率的算法,将固体加温至充分高,再让其慢慢冷却,加温时,固体内部粒子随温升变为无序状,内能增大,而徐徐冷却时粒子渐趋有序,在每个温度都达到平衡态,最后在常温时达到基态,内能减为最小。

2、算法基本思想

(1) 初始化:初始温度T(充分大),初始解状态S(是算法迭代的起点),每个T值的迭代次数L。

(2) 对k=1, …, L做第(3)至第6步:

(3) 产生新解S′

(4) 计算增量ΔT=C(S′)-C(S),其中C(S)为评价函数

(5) 若ΔT<0则接受S′作为新的当前解,否则以概率exp(-ΔT/T)接受S′作为新的当前解.

(6) 如果满足终止条件则输出当前解作为最优解,结束程序。

终止条件通常取为连续若干个新解都没有被接受时终止算法。

(7) T逐渐减少,且T->0,然后转第2步。

3、算法的步骤

图片

为了方便大家更好的学习模拟退火算法,工作室为大家整理了模拟退火算法的学习资料,工具箱、代码和优秀论文等,大家可以免费获取。

图片
 后台回复[智能算法]即可免费领取

粒子群算法 原理与编程

1、算法基本原理

粒子群优化(PSO)算法是Kennedy和Eberhart于1995年提出的一种新的群智能优化算法。大概的意思就是一片森林里有一群鸟在找一块食物,它们不知道食物具体在哪,但是可以通过感官(例如嗅觉)去察觉到自己当前位置距离食物的远近。鸟可以记住自己走过的位置并且知道自己做过的最优位置。这一群鸟的运动都是随机的,这类似于一种穷举法。

2、算法基本思想

粒子群算法一般用来找一个函数的最优值。这个函数一般就是适应度函数。函数中未知量的个数就是这个查找的空间维度。

假设有N个粒子组成一个种群S。

Xi是代表粒子i所在的位置,i=1,2,…,N

Vi代表粒子i在位置Xi处的速度,i=1,2,…,N

pi是记录粒子i到走过的最优位置,i=1,2,…,N

pg是所有粒子走过的最优的位置,i=1,2,…,N

w 为惯性权重

c1 、 c2 为学习因子

r1,r2为[0,1]之间均匀分布的参数

接下来种群中每个粒子按照公式更新速度和位置:

图片

PS:这里的r1、r2是每一步迭代都需要更新的随机数

c1、c2和w =则是一开始给定的一些参数,至于参数的给定取决于你自己每次测试这个程序所得到的经验–即哪些参数你跑出的结果比较好就选择哪些参数。

3、算法的步骤

图片

模拟退火算法的学习资料,工具箱、代码和优秀论文等,大家可以免费获取。

图片

遗传算法 原理与编程

1、算法基本原理

遗传算法的首次提出是在1967年,Holland教授的学生Bagley在其博士论文中提到"GeneticAlgorithm" ,即GA;1975年Holland教授出版了第一本系统叙述其内容的专著,奠定理论基础。今天,遗传算法已经成为十分流行的算法,在组合优化,自动控制,图像处理,机器学习等领域都有很广泛的运用。

2、算法基本思想

① 种群初始化:在可行域内随机产生若干个解,称其为初始种群。

② 对种群内的每个解进行适应度评估,评价每个个体对环境的适应程度强弱。

③ 适者生存,不适者淘汰,运用随机数等方式,将不适合的个体淘汰,适合的保留。

④ 通过交叉互换、变异等方式对中云进行扰动,实质上就是在可行域内进行搜索,搜索出最适合环境的解。

上述的环境是指目标函数,需要求解最优值的函数,每个个体就是每个可行解,适应度评估就是将可行解带入函数进行计算然后对比其大小,如果可行解代入函数的结果最优,那这个解就是最优解。优胜劣汰是对优秀解的保留,较差解的淘汰,交叉和变异就是对解进行扰动,以进一步提高解的优度。

3、算法的步骤

 

遗传算法的学习资料,工具箱、代码和优秀论文等,大家可以免费获取。

图片

需要以上智能优化算法资料的小伙伴可以关注公众号【科研交流】后台回复【智能算法】即可免费领取哈~

猜你喜欢

转载自blog.csdn.net/weixin_44949135/article/details/119848882