- 在线时间
- 1630 小时
- 最后登录
- 2024-1-29
- 注册时间
- 2017-5-16
- 听众数
- 82
- 收听数
- 1
- 能力
- 120 分
- 体力
- 563317 点
- 威望
- 12 点
- 阅读权限
- 255
- 积分
- 174218
- 相册
- 1
- 日志
- 0
- 记录
- 0
- 帖子
- 5313
- 主题
- 5273
- 精华
- 3
- 分享
- 0
- 好友
- 163
TA的每日心情 | 开心 2021-8-11 17:59 |
|---|
签到天数: 17 天 [LV.4]偶尔看看III 网络挑战赛参赛者 网络挑战赛参赛者 - 自我介绍
- 本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。
 群组: 2018美赛大象算法课程 群组: 2018美赛护航培训课程 群组: 2019年 数学中国站长建 群组: 2019年数据分析师课程 群组: 2018年大象老师国赛优 |
数学建模:优化算法
: E1 \" s' X7 V数学建模问题总共分为四类:
. U( J2 f- w" B" c5 B$ C1. 分类问题 2. 优化问题 3. 评价问题 4. 预测问题
2 A# V5 C7 k: A f. i" n
* z4 k H6 Q, @! Y一、粒子群算法(PSO); l" m9 j6 c/ N
+ T4 O9 K2 T& [" u, r% d算法对于Hepper的模拟鸟群(鱼群)的模型进行修正,同遗传算法类似,也是一种基于群体叠代的,但并没有遗传算法用的交叉以及变异,而是粒子在解空间追随最优的粒子进行搜索。 5 o, T) C7 y/ d6 r% G
PSO的优势在于简单,容易实现,无需梯度信息,参数少,特别是其天然的实数编码特点特别适合于处理实优化问题。同时又有深刻的智能背景,既适合科学研究,又特别适合工程应用。
* { W) p" _0 Z; _/ C) z0 J! K% j+ }3 s, c
基本PSO算法
: f5 A' u: v4 R$ U
7 W) S9 }1 X4 c) K: g9 K% sD维空间中,有m个粒子;
$ E' I, Q) f' m粒子i位置:xi=(xi1,xi2,…xiD)
- `) { d0 K! i/ \9 ]粒子i速度:vi=(vi1,vi2,…viD),1≤i≤m,1 ≤d ≤D
0 f& C* t6 V8 k$ T6 a2 @粒子i经历过的历史最好位置:pi=(pi1,pi2,…piD) + }+ o2 g' n0 @1 T6 B
群体内(或领域内)所有粒子所经历过的最好位置: pg =(pg1,pg2,…pgD)
7 o, }) b# E* q
/ v6 e$ o4 `4 B7 j
6 x9 n; b% V* V$ r* H二、模拟退火算法(SA)) l* A% v) d/ Z! m* G
* I! P* p2 O! q7 |& ~1 n模拟退火过程:
# ]: V3 t9 R/ o7 ^* f设定初始高温,相当于物理退火的加温过程。初始温度要足够高,在实际应用中,要根据以往的经验,通过反复实验来确定T0的值。
2 g( ]- r5 Z& ]9 b热平衡达到,相当于物理退火的等温过程。是指在一个给定温度下,SA用特殊的抽样策略进行随机搜索,最终达到平衡状态的过程。这是SA算法的内循环过程。 + Z- n1 P3 z( `% Q4 O( Z
降温函数,相当于物理退火的冷却过程。用来控制温度的下降方式,这是SA算法的外循环过程。常用的降温函数有Tk+1=Tk-DT,Tk+1=Tk*r,其中r∈(0.95,0.99)。. U5 q9 R' b+ J5 s+ N
+ S" G) M6 z+ O8 C三、遗传算法, R0 Q) o3 [! z9 k
) O R4 E/ s: s2 s, z" ^5 a( [
产生一个初始种群
6 j8 m/ O* P+ g B* P" T根据问题的目标函数构造适值函数 ; D# ?8 J- G* c9 _6 ^
根据适应值的好坏不断选择和繁殖
" {3 f/ t1 S* w2 f% J( @若干代后得到适应值最好的个体即为最优解- Z& N$ U6 @; t" _1 a( o( ^8 _0 q2 ?
0 p# N9 s! \4 @) p9 n& w四、算法步骤
2 e$ o$ r" h- |, _) W初始种群 % V: n5 Y8 j- c0 c/ L0 j+ W# ?) o
编码方法—二进制编码,可以对多个编码进行组合。
; e) m/ _! u! s4 d5 N! c' V9 j适值函数,往往就是目标函数,以值得大小为依据 + G2 r {" b, f" H
遗传运算,交叉和变异
# r( e, O" X$ e' @5 x7 ]选择策略,算出适应度,根据比例采用转盘模型
, T2 U) }/ V I( F9 @4 P停止准则
2 V/ \; | j% f) r
5 T9 J: A, D( S2 [参考:https://blog.csdn.net/zuochao_2013/article/details/71435105& B: w' c6 Z7 U, \- s/ d- h
! _ i$ f; \; F4 @
四、神经网络算法! [. M" X3 _9 t$ @4 X
; H* [, G3 y b2 c7 |; y$ i和机器学习模型中的神经网络一样,用来分类或预测+ w1 ^* `# c! q! J1 v1 V0 H! x
( i p; {: O* _/ q0 D, f& T五、禁忌搜索算法 (Tabu Search)& j) }' {% s# J2 E G
# ?' s4 r& q. x; D9 r9 n' c又称爬山启发式算法,从当前的节点开始,和周围的邻居节点的值进行比较。如果当前节点是最大的,那么返回当前节点,作为最大值(即山峰最高点);反之就用最高的邻居节点替换当前节点,从而实现向山峰的高处攀爬的目的。它是禁忌搜索的基础,TS算法是在其上改进而来。 ; J( X3 P$ i* h# f r
优点:
0 ]2 B; \& |) z1、容易理解,容易实现,具有较强的通用性; # ]& t3 _: _( s+ o+ `) e& t) y
2、局部开发能力强,收敛速度很快。 7 G( ~' U4 @% I. ]# X, i/ s) o
缺点:
6 }' S8 ]+ `' z7 [) K$ D |, C1、全局开发能力弱,只能搜索到局部最优解; 4 ?) y) W# p' K
2、搜索结果完全依赖于初始解和邻域的映射关系。" Z# N/ ~7 d0 B) }7 i0 @
; E8 b' b8 j! J4 e0 [0 ?' z6 g
将不相同的n件物品分为m组,可以用的编码: t5 r3 g, g* x9 S
a、带分隔符的顺序编码,以自然数1~n分别代表n件物品如:1-3-4-0-2-6-7-5-0-8-9 7 [& w! W @& } c3 s$ j
b、自然数编码,每一位分别代表一件物品,而每一位的值代表该物品所在的分组。如:1-2-1-1-2-2-2-3-3 9 W2 r w# c9 [5 u
(2)初始解的获取
& V( r9 O2 X+ a4 B5 D; s可以随机给出初始解,也可以事先使用其他启发式等算法给出一个较好的初始解。
. f( T8 V6 r( l& O- u9 f3 a(3)移动邻域 7 K1 l& A3 o; e4 F; a
移动是从当前解产生新解的途径,例如上述问题中用移动s产生新解s(x)。
* Q$ W" w2 `4 F8 m2 ~' c从当前解可以进行的所有移动构成邻域,也可以理解为从当前解经过“一步”可以到达的区域。 B& R2 n/ w3 w- `
(4)禁忌表 " v5 V$ h f) J* O4 o7 Q
禁忌表的作用:防止搜索出现循环 `' Y0 h, J7 r
(5)渴望水平函数 5 D Z* U0 Q5 V3 t9 l' g; P
A(x,s)一般为历史上曾经达到的最好目标值,若有C(s(x))
: q3 ~5 Y" u3 d+ m8 a* m' _: j* E* ?( A$ b
六、蚁群算法(AS)
6 O! g4 A5 N" {8 }, W) f, p: ~% l5 r8 q3 s4 w/ Y0 W6 x
/ M# h2 {: u H# V) R
参考:http://www.cnblogs.com/asxinyu/p/Path_Optimization_Tsp_Problem_Ant_System_CSharp.html#_labelTop, Y. Q' `( W& I$ e- J
---------------------
b; j+ Y7 {* p! i1 [$ b( U& H
+ C7 D" Q! A7 |) b* t* j
7 {! z4 Y8 A5 C' t1 W0 J- D s
5 k$ Z8 i: b9 S! _/ x( M1 A( o7 D6 F& T1 p7 M$ @5 ^, v# t
|
zan
|