- 在线时间
- 1630 小时
- 最后登录
- 2024-1-29
- 注册时间
- 2017-5-16
- 听众数
- 82
- 收听数
- 1
- 能力
- 120 分
- 体力
- 564663 点
- 威望
- 12 点
- 阅读权限
- 255
- 积分
- 174622
- 相册
- 1
- 日志
- 0
- 记录
- 0
- 帖子
- 5313
- 主题
- 5273
- 精华
- 3
- 分享
- 0
- 好友
- 163
TA的每日心情 | 开心 2021-8-11 17:59 |
|---|
签到天数: 17 天 [LV.4]偶尔看看III 网络挑战赛参赛者 网络挑战赛参赛者 - 自我介绍
- 本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。
 群组: 2018美赛大象算法课程 群组: 2018美赛护航培训课程 群组: 2019年 数学中国站长建 群组: 2019年数据分析师课程 群组: 2018年大象老师国赛优 |
数学建模:优化算法
* ~; D' ^$ k8 A' d/ ]6 i# P数学建模问题总共分为四类: * D; h# f5 g3 ]# F# R, \
1. 分类问题 2. 优化问题 3. 评价问题 4. 预测问题
; v3 I1 v' t( B) s" Z# |+ B- p8 |2 Z2 }5 [8 w$ a
一、粒子群算法(PSO)
* |# G. a9 C- s$ r, E) ^
, U/ j2 g$ R9 @5 g- u算法对于Hepper的模拟鸟群(鱼群)的模型进行修正,同遗传算法类似,也是一种基于群体叠代的,但并没有遗传算法用的交叉以及变异,而是粒子在解空间追随最优的粒子进行搜索。 # M9 p+ W* u E" h
PSO的优势在于简单,容易实现,无需梯度信息,参数少,特别是其天然的实数编码特点特别适合于处理实优化问题。同时又有深刻的智能背景,既适合科学研究,又特别适合工程应用。
6 G: n4 r0 t0 D% l' m( E- g6 {. R
基本PSO算法
( K1 N' Y! l5 U3 I0 s" U
$ l( M5 T' l/ {9 u* R5 z1 z. nD维空间中,有m个粒子;
) d; b# P, d' R Q粒子i位置:xi=(xi1,xi2,…xiD)
) ^0 _8 v9 G# c" _, b% \3 d' M粒子i速度:vi=(vi1,vi2,…viD),1≤i≤m,1 ≤d ≤D 0 N9 e1 s8 q' Y
粒子i经历过的历史最好位置:pi=(pi1,pi2,…piD) ) ^ g) ]5 ~: \, }1 V
群体内(或领域内)所有粒子所经历过的最好位置: pg =(pg1,pg2,…pgD) % t; a" e3 ]* }9 Q) H- d
0 Z: P7 e5 G4 T# X3 r. V+ M9 {0 n" q4 \0 u' l0 r
二、模拟退火算法(SA)$ g# t# q1 ]* G2 @
2 n/ ?. T; a" o% H模拟退火过程: 9 e$ Y* x* P: B" \; d6 x2 ]
设定初始高温,相当于物理退火的加温过程。初始温度要足够高,在实际应用中,要根据以往的经验,通过反复实验来确定T0的值。
+ P8 {5 [8 E) b; {热平衡达到,相当于物理退火的等温过程。是指在一个给定温度下,SA用特殊的抽样策略进行随机搜索,最终达到平衡状态的过程。这是SA算法的内循环过程。
t7 M7 e% s) v5 q' z2 m3 h9 M5 U降温函数,相当于物理退火的冷却过程。用来控制温度的下降方式,这是SA算法的外循环过程。常用的降温函数有Tk+1=Tk-DT,Tk+1=Tk*r,其中r∈(0.95,0.99)。
) Z8 ~5 z6 K$ y( E6 O, A3 A4 a1 G6 t: x: S
三、遗传算法: ]7 F: L- D' Y; h @
9 Y$ I" u& f# v* T1 J9 h
产生一个初始种群 ' W" T" s! k7 ?8 k. J% _9 y
根据问题的目标函数构造适值函数 3 {* K; U- [8 ]& W
根据适应值的好坏不断选择和繁殖
# N2 J2 }3 B8 |, {若干代后得到适应值最好的个体即为最优解% E1 G+ y/ I7 q ]3 O
5 l9 l3 h! S. `6 _2 o6 v5 Y
四、算法步骤
5 L4 S5 _5 }5 r: U, u" w+ a初始种群
) H" X; Z- D' o( P% s+ n8 H2 a编码方法—二进制编码,可以对多个编码进行组合。 * W9 ~6 W* y6 b3 l
适值函数,往往就是目标函数,以值得大小为依据 4 l8 {+ B6 ^+ O4 U
遗传运算,交叉和变异 5 s4 T; A$ `. a" f! R/ v# b
选择策略,算出适应度,根据比例采用转盘模型
$ j/ M% D+ E. @0 E; B! S停止准则$ O$ u* W2 B$ t( V3 ~ r
* |6 O- |5 l& P) E+ ~9 w
参考:https://blog.csdn.net/zuochao_2013/article/details/71435105
$ G+ C& W! _" D3 L% A. _* T# g; g* n i- L/ G2 N
四、神经网络算法+ ~0 ?9 j+ ~' J9 w; E
. D5 R9 W. E& T5 I c/ K. E
和机器学习模型中的神经网络一样,用来分类或预测
1 v5 _. g: E; G. W! `8 t( l* `2 e; q- }5 o8 Z7 ?& K
五、禁忌搜索算法 (Tabu Search)+ B. S) Y) t# k, ?, G$ y2 g
& K0 K% k q' S0 C
又称爬山启发式算法,从当前的节点开始,和周围的邻居节点的值进行比较。如果当前节点是最大的,那么返回当前节点,作为最大值(即山峰最高点);反之就用最高的邻居节点替换当前节点,从而实现向山峰的高处攀爬的目的。它是禁忌搜索的基础,TS算法是在其上改进而来。
$ `) a* a! H3 _5 P. g2 r优点: 2 r( j1 c* C# B# A. s: T6 @
1、容易理解,容易实现,具有较强的通用性; 1 K3 b! ?1 C+ D
2、局部开发能力强,收敛速度很快。 * [0 ~9 T/ d) {( Z
缺点:
- F, k1 A/ c7 L' G9 z1、全局开发能力弱,只能搜索到局部最优解; 2 ]; L A3 s8 I7 w, A
2、搜索结果完全依赖于初始解和邻域的映射关系。
( [$ O; D s- D+ y- b0 b/ l% b8 y5 |: D/ K5 h. ?+ w" I! Y4 t
将不相同的n件物品分为m组,可以用的编码:
0 j! c* G6 d2 R" |5 y. d: Ga、带分隔符的顺序编码,以自然数1~n分别代表n件物品如:1-3-4-0-2-6-7-5-0-8-9 $ f" M# p! e4 W/ }
b、自然数编码,每一位分别代表一件物品,而每一位的值代表该物品所在的分组。如:1-2-1-1-2-2-2-3-3 ( p' a4 V. S; D, R! K; _
(2)初始解的获取 - J4 u% K9 F! O1 W8 J
可以随机给出初始解,也可以事先使用其他启发式等算法给出一个较好的初始解。 $ m5 @ L3 B1 m8 u% m! R
(3)移动邻域 8 l( I7 _- g$ e' o1 b
移动是从当前解产生新解的途径,例如上述问题中用移动s产生新解s(x)。
6 U0 @8 r% b* [' D( f从当前解可以进行的所有移动构成邻域,也可以理解为从当前解经过“一步”可以到达的区域。
5 } I2 w- s& N9 X+ P; T4 ~- W(4)禁忌表
8 w ~$ V! V* Q! t2 l& L2 H& }0 [禁忌表的作用:防止搜索出现循环 * V. r$ k, G% o4 K0 R
(5)渴望水平函数
2 u* ~4 R1 Y$ M1 HA(x,s)一般为历史上曾经达到的最好目标值,若有C(s(x))
4 @& j0 N4 `2 k! R
- t/ P, t" B7 y+ T2 c六、蚁群算法(AS)5 P1 Q7 N/ n+ m5 }/ W" N
& N5 g# k" t% N- Y/ e* p
+ ~' ?$ j1 V } D3 m+ a参考:http://www.cnblogs.com/asxinyu/p/Path_Optimization_Tsp_Problem_Ant_System_CSharp.html#_labelTop6 D1 C: N& R* N! y0 S
---------------------
{% o3 |- m5 s
( Y4 [( @( B, X# E1 _1 ~
5 E1 c8 ~" P/ f3 E. Q9 A% P( ~% S M3 E1 C
' u0 e. t5 f! Z6 ^ z- F7 b
|
zan
|