600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > 智能优化算法:社交网络搜索算法-附代码

智能优化算法:社交网络搜索算法-附代码

时间:2019-02-01 19:45:31

相关推荐

智能优化算法:社交网络搜索算法-附代码

智能优化算法:社交网络搜索算法

文章目录

智能优化算法:社交网络搜索算法1.算法原理1.1 种群初始化1.2 模仿1.3 对话1.4 争论1.5 创新2.实验结果3.参考文献4.Matlab代码

摘要:社交网络搜索算法(Social Network Search,SNS)是于提出的一种新型智能优化算法,算法主要模拟了用户表达意见时的行为:模仿、对话、争论和创新,这些是人们在进行社交时的真实行为。这些行为被用作优化操作符,并模拟用户如何受到影响并且被激励分享他们的新观点。具有寻优能力强,收敛速度快等特点。

1.算法原理

1.1 种群初始化

种群在搜索边界内随机初始化:

X0=LB+rand(UB−LB)(1)X_0=LB+rand(UB-LB)\tag{1} X0​=LB+rand(UB−LB)(1)

其中,LBLBLB和UBUBUB分别表示个体的上下边界,randrandrand是[0,1]之间的随机数。

1.2 模仿

对于大多数人而言,当被关注者发布一些新的活动时,我们通常会努力模仿他们,模仿行为可以表示为:

{Xinew=Xk+rand(−1,1)∗RR=rand(0,1)∗rr=Xj−Xi(2)\begin{cases} X_{inew}=X_{k}+rand(-1,1)*R\\ R=rand(0,1)*r\\ r=X_j-X_i \end{cases}\tag{2} ⎩⎪⎨⎪⎧​Xinew​=Xk​+rand(−1,1)∗RR=rand(0,1)∗rr=Xj​−Xi​​(2)

其中,这里XjX_jXj​ 为随机选择的一个交谈对象,RRR 是模仿效果。

1.3 对话

在社交网络中,用户可以进行虚拟交互,并就不同的问题进行交谈

{Xinew=Xk+RR=rand(0,1)∗DD=sign(fi−fj)∗(Xj−Xi)(3)\begin{cases} X_{inew}=X_{k}+R\\R=rand(0,1)*D\\D=sign(f_i-f_j)*(X_j-Xi)\end{cases}\tag{3} ⎩⎪⎨⎪⎧​Xinew​=Xk​+RR=rand(0,1)∗DD=sign(fi​−fj​)∗(Xj​−Xi)​(3)

其中,这里XkX_kXk​ 为随机选择的一个交谈对象,RRR 是聊天效果,基于不同的观点能产生不同的反馈效果。signsignsign即signsignsign函数,fi、fjf_i、f_jfi​、fj​ 分别对应个体iii个体jjj的适应度值。

1.4 争论

争论是一种状态,即用户向他人解释他们对事件的看法,并为自己的观点辩护。在这种情况下,用户会看到与其他人不同的观点,并且可能会受到所表达原因的影响。

{Xinew=Xi+rand(0,1)∗(M−AF∗Xi)M=∑rNrXtNrAF=1+round(fand)(4)\begin{cases} X_{inew}=X_i+rand(0,1)*(M-AF*X_i)\\ M=\frac{\sum_r^{N_r}X_t}{N_r}\\ AF=1+round(fand) \end{cases}\tag{4} ⎩⎪⎨⎪⎧​Xinew​=Xi​+rand(0,1)∗(M−AF∗Xi​)M=Nr​∑rNr​​Xt​​AF=1+round(fand)​(4)

式中MMM为评论区或粉丝后援群中的用户的位置平均值,AFAFAF 是许可因子,表示用户某一问题的赞同程度,其值为1或2。

1.5 创新

有时,用户在网络上分享的话题来自他们的新体验和想法。一个特定的主题可能有不同的特征,每个特征都会影响对问题的理解。因此,通过改变其中一个的观念,主体的一般概念将发生变化,从而实现一种新颖的观点。

{xi,newd=t∗xjd+(1−t)∗nnewdnnewd=lbd+rand1∗(ubd−lbd)t=rand2(5)\begin{cases} x_{i,new}^d=t*x_j^d+(1-t)*n_{new}^d\\ n_{new}^d=lb_d+rand_1*(ub_d-lb_d)\\ t=rand_2 \end{cases}\tag{5} ⎩⎪⎨⎪⎧​xi,newd​=t∗xjd​+(1−t)∗nnewd​nnewd​=lbd​+rand1​∗(ubd​−lbd​)t=rand2​​(5)

式中ddd为搜索空间中随机选取的某一维度,rand1,rand2rand_1,rand_2rand1​,rand2​ 均为[0,1]内一随机数,ubd,lbdub_d,lb_dubd​,lbd​分别对应当前维度的上、下限。

算法流程:

步骤1:初始种群,以及相关参数;

步骤2:计算适应度值,并记录全局最优解;

步骤3:随机选择行为模式(模仿,对话,争论,创新),进行种群更新

步骤4:判断是否满足停止条件,如果满足则输出最优解,否则重复步骤2-4。

2.实验结果

3.参考文献

[1] S. Talatahari, H. Bayzidi and M. Saraee, “Social Network Search for Global Optimization,” inIEEE Access, vol. 9, pp. 92815-92863, , doi: 10.1109/ACCESS..3091495.

4.Matlab代码

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。