1 简介
在本文中,开发了一种称为社交网络搜索 (SNS) 的新型元启发式算法来解决优化问题。 SNS 算法通过对用户表达意见的情绪进行建模,模拟用户在社交网络中获得更多人气的尝试。这些情绪被命名为模仿、对话、争论和创新,它们是用户在社交网络中的真实行为。这些情绪被用作优化操作符,并模拟用户如何受到影响和激励以分享他们的新观点。为了评估 SNS 算法的性能,进行了两项具有不同属性的比较研究。第一步,选择了 210 个数学函数,其中包括 120 个固定维度、60 个 N 维度和 30 个 CEC 2014 问题。从文献中选取了7个元启发式算法,对这些方法的统计结果进行了计算和分析。此外,为了对新算法的性能做出有效判断,使用了四个非参数统计测试。在下一步中,在处理 CEC 2017 问题时,将所提出算法的性能与一些最先进的算法进行比较。根据算法的性能,SNS 方法在 101 例 (48%) 中与其他元启发式算法相比能够获得更好的结果,并且在处理其他问题时表现相同或相对。
Human beings are a social species, which always tries to communicate with each other. Social networks are virtual tools that created for this goal with the advent of technology. The proposed SNS algorithm simulates the interactive behavior among users in social networks to achieve more popularity. In this section, we first discuss how to model an optimization algorithm from the behavior of users in the social networks, and then the implementation of the algorithm is presented.
A. Basic Principles of Behavior in Social Networks
Social networks are platforms where users can interact virtually with other users. In social networks, users can follow their favorite persons and get to know their thoughts and views. So, interacting with other users of the network may affect their opinions. The process of interacting with and influencing other users of the network goes through an optimal process so that users are always trying to increase their level of popularity on the network. This optimization process is the base of the current algorithm. Fig. 2 shows a general model for a social network.
2
In recent years, various social networks such as Researchgate, Facebook, Twitter, Instagram, and so on, have been developed. Each of these networks is designed for a specific purpose, but it can be said that the behavior of users on these networks is more or less the same. During the interactions between users, they will become familiar with other views from network users. Now, if known views are better than the current one, they will accept new views and improve their own. Then, by sharing the improved views on the network, they will strive to improve their position in the network.
B. Decision Moods and Mathematical Model
The user’s viewpoint can be affected by other views in different moods containing: Imitation, Conversation, Disputation, and Innovation. Imitation means that the views of other users are attractive, and usually, users try to imitate each other in expressing their opinions. Conversation says that users can communicate with each other and use the other views. In the Disputation, users can dispute with a group of users and talk about their opinions. Finally, Innovation indicates that sometimes a topic that users share on the networks comes from their new experiences and thoughts. Almost all metaheuristic algorithms apply a set of operations to generate new solutions. In the SNS algorithm, the new solution is achieving by one of the four moods that are look like real-world social behavior. Description and mathematical modeling of these operators (moods) are described as follows:
1) Mood 1: Imitation
The main property of social networks is that users can follow each other and if a person shares a new post, followers of that person may be informed about the shared topic. This feature (propagation of views) has turned networks into powerful tools for promoting information and ideas.
Users in social networks follow their relatives and some famous person, which they like. Then they will get notified with the opinions of the people who have followed the new events. Now, if the new event has challenging concepts, they will strive to post a topic about it by imitating the view of another person. The mathematical formulation of this mood can be expressed as:
部分代码
clearclose all
clc
Solution_no=20; % 种群数量
F_name='F7'; % 测试函数名称
M_Iter=100; % 最大迭代次数
[LB,UB,Dim,F_obj]=Get_F(F_name); % 获取基准测试函数的信息
[Best_FF,Conv_curve]=sns(Solution_no,M_Iter,LB,UB,Dim,F_obj); % 调用sns算法寻优
% 作图分析优化效果
figure('Position',[454 445 694 297]);
subplot(1,2,1);
func_plot(F_name);
title('Parameter space')
xlabel('x_1');
ylabel('x_2');
zlabel([F_name,'( x_1 , x_2 )'])
subplot(1,2,2);
semilogy(Conv_curve,'Color','r','LineWidth',2)
title('Convergence curve')
xlabel('Iteration#');
ylabel('Best fitness function');
axis tight
legend('SNS')
grid on
3 仿真结果
4 参考文献
Hadi Bayzidi, Siamak Talatahari, Meysam Saraee, Charles-Philippe Lamarche, "Social Network Search for Solving Engineering Optimization Problems", Computational Intelligence and Neuroscience, vol. 2021, Article ID 8548639, 32 pages, 2021.