基于蚁群优化算法的云计算调度资源模型∗

2020-07-13 12:47孙雪莹
计算机与数字工程 2020年5期
关键词:客户端调度算法

王 勃 徐 静 孙雪莹

(1.陕西国防工业职业技术学院计算机与软件学院 西安 710300)(2.陕西国防工业职业技术学院经济管理学院 西安 710300)(3.西安电子科技大学物理与光电工程学院 西安 710071)

1 引言

随着计算机网络的快速发展,网络将遍布在各个地域,包括手机、电脑、物联网终端等各种信息终端设备连接在一起,形成高速运转的服务器端,由于终端设备不断增加,最终将导致运行速度、可靠性、高效性、灵活性不断降低[1]。云计算作为全新的网络构架,可以对网络资源重新计算,合理分配,满足客户端的不同需求,不断提高和改善网络服务质量,使客户获取最大的网络信息资源。以此为基础,对云计算调度资源技术和策略要求也不断调高,由于传统计算方式缺乏必要的准确性、安全性,提出基于蚁群优化的云计算调度资源模型,该模型中蚁群使用自适应搜索,具有较高的鲁棒性、协作性、安全性、易扩展性和并行性,能使云计算环境下的蚁群达到最佳的寻优能力,提高效率,达到资源利用的最大化。

2 蚁群优化算法

蚁群优化算法(Ant Colony Optimization,ACO)是一种仿生模拟蚁群外出寻觅食物的方式,在整个蚁群在运动过程中,[2]通过每个蚂蚁之间互相传递信息,完成整个问题的最佳解决方案。具有分布处理(Distributed Computing)、并行处理(Parallel Com⁃puting)和网格计算(Grid Computing)等计算特点,蚁群从觅食起点到回归终点,通过随机寻找最优路径,完成最短路径间完成建构,实现沿路信息及时更新,相互联系,显示出该算法的高效、安全[3]。

3 蚁群优化算法的云计算调度资源

3.1 算法原理

蚁群优化算法加强了蚁群在群体觅食过程中的互相联系的通讯过程,蚁群在觅食所经过的路径中不断存储服务信息,经过起点到终点的过程,获取沿路所有存储服务信息,经过优化算法收集、处理后,定义为该算法的服务信息量,该信息记录了蚁群本次觅食过程中所有状态,并且也为后继觅食蚁群提供重要的历史参考信息。[4]由于蚁群在每次觅食时都采取随机模式,因此蚁群可以不仅局限于前面蚁群所遗留的历史信息,可以不断更新服务信息点,发现更有效的新路径。其架构图如图1所示。

通过架构图可知网络服务器端是建构的中心,为蚁群提供网络服务。[5]侦伺蚁以网络服务器端为载体,搜寻到各种客户端,并且使用最短的时间获取最优的路径,并及时反馈给后继蚁群,蚁群将侦伺蚁留下的共享信息资源通过最优路径,最短时间传递给客户端,并将反馈信息及时回传给网络服务器端。

该算法为云计算调度资源构建起拥有网络服务端、客户端群、信息存储服务的三层服务保障体系。这三层体系即可单独成为服务子云端,也可成为相互关联、通讯,保证安全为一体的云端[6]。

图1 架构图

3.2 云计算调度资源模型

3.2.1 构建调度资源相关条件

在云计算调度资源中,其调度资源是重要的构成部分,在一般情况下,在云计算中其调度资源被有效分解为多个子任务。根据子任务数据量的大小合理调度分配资源,有效提高计算效率。其函数可用式(1)所示。

在式(1)中,P()tf为调度分配资源使用的总时长,Wb为云计算设置的虚拟机,其取值空间为W={W1,W2,…,Wb}。U为服务信息点,其取值空间为U={U1,U2,…,Ub}。C为子任务 dj在虚拟机Wb上的工作时间。j为云计算子任务工作量大小,其取值空间为j={j1,j2,…,jb}。 kju为调度资源的映射。Rjf为子任务在服务信息点Wb上调度关系。

3.2.2 调度模型

云计算调度资源使用蚁群Matlab优化算法,就是将大量的网络、服务器,客户端、共享资源等采取简化、分布、并行、简化、映射等方法,将大量信息和资源进行有效分解,产生了多任务系统,并对各任务系统加以标注,并随机获取共享信息服务点资源[7]。其模型如式(1)所示。

3.2.3 算法流程

根据式(2)可得出如下流程[10]:

1)蚁群从觅食起点m出发。

2)获取相关觅食初始参数。

3)判断是否在可经过路径表s中。

4)如在可运行路径中,则获取相关信息服务点位置,并搜集服务点信息资源。

5)如不在可运行路径中,则蚁群重新回到起点m,重新获取初始参数,重新运行判断。

6)蚁群搜集完当前经过路径中所有服务点信息资源后,判断是否完成本次搜集工作。如完成,则到觅食终点n,并输出结果。如未完成本次搜集任务,则跳回信息服务点,重新获取剩余共享资源量[11]。

其流程图如图2所示。

图2 流程图

4 仿真和数据分析

该仿真实验使用20台PC搭建云计算环境的模拟局域网,PC硬件配置如表1所示。

使用其中1台搭建为云服务平台,主要用来设置服务信息点,提供相关信息共享资源,具有数据挖掘、存储等功能[12]。为使该平台具有云计算的仿真环境,调度资源使用C#语言支持,结果分析、计算使用具有分布式架构的Matlab平台实现,该平台可以提供高效的数据采集功能。在仿真实验中,设置每台客户端有6个服务信息点作为数据采集点,各服务信息点之间建立通讯关联。使用调值参数g和p设置仿真数据,其中g代表信息服务点中共享信息量大小,设置取值区间为 0~100[13]。p为迭代反应频率,设置为200,400,600,800,1000,为体现实验数据的准确性,应采集相同条件下的20组仿真实验数据,并统计其平均值[14]。具体仿真实验数据如图3所示。

表1 PC硬件表

图3 迭代反应数据

由图3可知,随着信息量值不断增加,迭代反应频率也在不断增加,但震荡幅度在变小,变化相对较慢,其负载度较为均衡[15]。表明该算法在云计算调度资源上具有较强的寻优能力,特别是随着迭代次数的增加,蚁群数也对应增加,表示其收缩频率增加,也就加速了资源调度的速度。在总任务量不变的情况下,缩短了调度的时间,提高了调度的效率,在速度优化和寻优能力上得到最佳结果,该方法可完全满足大部分云计算调度资源中的相关问题。

5 结语

本文提出了基于蚁群优化算法的云计算调度资源模型的研究,通过仿真模拟,可以论证在云计算平台下,处理大量数据信息,采用该种算法具有缩短响应时间,提高运算效率,在云计算调度资源上提出了最优解决路径,充分显示出了其分布性、并行性、快速计算性等优势,具有一定的应用价值。

猜你喜欢
客户端调度算法
你的手机安装了多少个客户端
基于智慧高速的应急指挥调度系统
“人民网+客户端”推出数据新闻
——稳就业、惠民生,“数”读十年成绩单
哪种算法简便
基于增益调度与光滑切换的倾转旋翼机最优控制
基于强化学习的时间触发通信调度方法
Travellng thg World Full—time for Rree
进位加法的两种算法
根据问题 确定算法
媒体客户端的发展策略与推广模式