智能优化算法:社交网络搜索算法
摘要:社交网络搜索算法(Social Network Search,SNS)是于2021年提出的一种新型智能优化算法,算法主要模拟了用户表达意见时的行为:模仿、对话、争论和创新,这些是人们在进行社交时的真实行为。这些行为被用作优化操作符,并模拟用户如何受到影响并且被激励分享他们的新观点。具有寻优能力强,收敛速度快等特点。
1.算法原理
1.1 种群初始化
种群在搜索边界内随机初始化:
X
0
=
L
B
+
r
a
n
d
(
U
B
−
L
B
)
(1)
X_0=LB+rand(UB-LB)\tag{1}
X0=LB+rand(UB−LB)(1)
其中,
L
B
LB
LB和
U
B
UB
UB分别表示个体的上下边界,
r
a
n
d
rand
rand是[0,1]之间的随机数。
1.2 模仿
对于大多数人而言,当被关注者发布一些新的活动时,我们通常会努力模仿他们,模仿行为可以表示为:
{
X
i
n
e
w
=
X
k
+
r
a
n
d
(
−
1
,
1
)
∗
R
R
=
r
a
n
d
(
0
,
1
)
∗
r
r
=
X
j
−
X
i
(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)
其中,这里
X
j
X_j
Xj 为随机选择的一个交谈对象,
R
R
R 是模仿效果。
1.3 对话
在社交网络中,用户可以进行虚拟交互,并就不同的问题进行交谈
{
X
i
n
e
w
=
X
k
+
R
R
=
r
a
n
d
(
0
,
1
)
∗
D
D
=
s
i
g
n
(
f
i
−
f
j
)
∗
(
X
j
−
X
i
)
(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)
其中,这里
X
k
X_k
Xk 为随机选择的一个交谈对象,
R
R
R 是聊天效果,基于不同的观点能产生不同的反馈效果。
s
i
g
n
sign
sign即
s
i
g
n
sign
sign函数,
f
i
、
f
j
f_i、f_j
fi、fj 分别对应个体
i
i
i个体
j
j
j的适应度值。
1.4 争论
争论是一种状态,即用户向他人解释他们对事件的看法,并为自己的观点辩护。在这种情况下,用户会看到与其他人不同的观点,并且可能会受到所表达原因的影响。
{
X
i
n
e
w
=
X
i
+
r
a
n
d
(
0
,
1
)
∗
(
M
−
A
F
∗
X
i
)
M
=
∑
r
N
r
X
t
N
r
A
F
=
1
+
r
o
u
n
d
(
f
a
n
d
)
(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∑rNrXtAF=1+round(fand)(4)
式中
M
M
M为评论区或粉丝后援群中的用户的位置平均值,
A
F
AF
AF 是许可因子,表示用户某一问题的赞同程度,其值为1或2。
1.5 创新
有时,用户在网络上分享的话题来自他们的新体验和想法。一个特定的主题可能有不同的特征,每个特征都会影响对问题的理解。因此,通过改变其中一个的观念,主体的一般概念将发生变化,从而实现一种新颖的观点。
{
x
i
,
n
e
w
d
=
t
∗
x
j
d
+
(
1
−
t
)
∗
n
n
e
w
d
n
n
e
w
d
=
l
b
d
+
r
a
n
d
1
∗
(
u
b
d
−
l
b
d
)
t
=
r
a
n
d
2
(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)∗nnewdnnewd=lbd+rand1∗(ubd−lbd)t=rand2(5)
式中
d
d
d为搜索空间中随机选取的某一维度,
r
a
n
d
1
,
r
a
n
d
2
rand_1,rand_2
rand1,rand2 均为[0,1]内一随机数,
u
b
d
,
l
b
d
ub_d,lb_d
ubd,lbd分别对应当前维度的上、下限。
算法流程:
步骤1:初始种群,以及相关参数;
步骤2:计算适应度值,并记录全局最优解;
步骤3:随机选择行为模式(模仿,对话,争论,创新),进行种群更新
步骤4:判断是否满足停止条件,如果满足则输出最优解,否则重复步骤2-4。
2.实验结果
3.参考文献
[1] S. Talatahari, H. Bayzidi and M. Saraee, “Social Network Search for Global Optimization,” in IEEE Access, vol. 9, pp. 92815-92863, 2021, doi: 10.1109/ACCESS.2021.3091495.