群体智能与演化博弈
上QQ阅读APP看书,第一时间看更新

1.2.5 大数据分析

大数据分析是针对在一定时间范围内无法用传统计算机技术获取、管理和处理的规模巨大的数据,通过提取有用信息对现有数据加以详细研究和概括总结的过程。通过将大规模计算和机器学习相关算法(如监督学习、非监督学习、强化学习等)应用于大数据分析中,解决了数据的聚类、分类、搜索等问题。相较于传统智能算法,现代群体智能算法展现出了全局最优收敛快、适应性强的特点。在大数据背景下,群体智能在互联网上的新应用形式有:①利用群体智能来制造密钥生成器;②网络攻击源的定位并制定相应的分类规则;③基于融媒体系统,通过群体智能算法对信息数据进行整合、分析,对可视化数据进行信息跟踪。这里以数据迁移为例对相关算法进行介绍。

数据迁移是指在数据中心出现负载异常时,将数据流量向其他服务器迁移以实现负载均衡的过程,这一技术融合了离线和在线两种情况下的存储。数据迁移的效率决定了云计算的能力,在现代大数据分析中起重要作用。

人工鱼群算法是李晓磊等于2002年提出的,主要通过模拟鱼的聚群、追尾以及觅食行为构建起的一种群体智能算法。利用人工鱼群算法实现了对服务器I/O位置选择的优化和带宽利用率的提升,从而解决了大数据处理中的服务器节点负载不平衡和带宽问题。

具体的算法流程介绍如下[12]

步骤 1:随机初始化种群, 表示第 k代人工鱼i(i=1, 2,…,n)的位置,代表着第i条数据的存储位置。

步骤2:定义人工鱼i的适合度。式中,Ri分别表示第i个服务器的可支配资源、数据从服务器i迁移到服务器j的代价,且该代价可由单位时间迁移成本α和迁移时间表示。接着,每条鱼分别执行聚群和追尾行为。

步骤3:聚群行为。该行为指人工鱼会在可视范围S内向鱼群的中心位置xo聚集,如果适合度Eo>Ei,则人工鱼 i向鱼群中心移动,其代表的含义分别为:当前数据存储位置xi,服务器中随机分配的热门存储位置xo,数据可存储位置的最大范围S。人工鱼(数据位置)的更新规则为:

式中,rand(1)表示产生0~1之间的随机数,step为移动步长,||xoxi||为xo的邻域。

步骤4:追尾行为。该行为指人工鱼会在可视范围S内向有着最大适合度Emax (且Emax>Ei)的位置xmax移动,否则追尾失败。若在xmaxS范围内能感知到的人工鱼数量为m,且,则该位置为最优且宽松位置,同理为存储最优且非拥挤空间位置。人工鱼(数据位置)更新规则为:

步骤5:觅食行为。若解没有得到改善,则执行觅食行为,即人工鱼i在可视范围 S内找寻优于当前适合度的位置xj,并向其方向移动。人工鱼(数据位置)更新规则为:

若无更优位置,则在可视范围S内任意方向随机移动rand(1)×step的步长以更新位置。

步骤6:判断迭代结束并输出最优位置,即大数据迁移服务器节点,同时选取最后 N轮计算的最优解关联带宽目标函数,就可得到占用带宽最小的解。至此,大数据迁移流程结束。