文摘
移动云计算(MCC)为资源受限的移动设备提供了一个平台将自己的任务。MCC云计算的特点和自己的移动性和无线数据传输等特性,这对MCC卸载决定带来新的挑战。然而,大多数现有的卸载工作决定假设移动云计算环境是稳定的,只有专注于优化卸载应用程序的消费,但忽略卸载造成的消费决策算法。本文在动态运行时卸载决定移动云计算环境的考虑减少卸载的消费决策算法。合作运行时卸载决策算法,利用在线机器学习和合作的遗传算法进行卸载决策,提出了解决这一问题。仿真表明,该算法可以帮助卸载应用程序更能节约时间和能源消耗更少的计算资源。
1。介绍
与无线通信和计算机技术的迅速发展,使用移动设备(MDs)在日常生活中变得越来越普遍。思科预计,全球MDs的数量将从86亿年的2017人增长到123亿年的2022 (1]。与MDs的普及,移动互联网已经进入了一个快速发展阶段。例如,根据2018年互联网趋势报告》(2),中国的移动互联网用户数量已经超过7.53亿,同比增长率为8%,占总人口的一半以上。同时,刺激到移动互联网,大量的移动应用开发,为用户提供各种服务。人们花越来越多的时间在MDs基于这一想法,他们想做的一切的帮助下移动应用程序。近年来,随着半导体制造技术的进步,医学性能改善了高速cpu和大容量的记忆。然而,另一方面,快速的硬件消耗更多的能量,导致更多的散热。MDs通常由电池供电,其能力是有限的,因为他们的规模是有限的支持MDs的可移植性。与半导体技术、电池技术没有在短期内突破,和电池容量的年增长率仅为5% (3]。电池技术的发展远远落后于半导体技术开发的摩尔定律。此外,根据Andy-Bill定律(4马里兰州)操作系统(例如,Android和iOS)和应用程序将变得更加复杂,导致更多的能源消耗和缩短工作时间的MDs后进一步充电。另一方面,由于一系列因素,如建筑和体积,虽然医学处理能力已得到改进,它仍然是薄弱与普通的计算机相比,MDs花很多时间和精力去执行某些应用程序,甚至不能执行沉重的应用程序。因此,这些约束导致较差的用户体验和预防医学的进一步发展。
计算卸载是一个有效的方法来解决这个问题MDs的有限资源。MDs的任务可以迁移到外部机器计算卸载。云计算作为一种商业计算模型,可以提供强大的外部MDs的计算资源。使用率来云计算是一个模型,提供可用的,方便,按需网络访问共享的可配置的计算和存储资源池(5]。用户可以使用这些云资源通过网络就像他们消耗的水通过管道,通过电线,电力和天然气在天然气管道。企业和个人用户不再需要自己购买昂贵的高性能计算设备,因为他们可以通过云访问高性能计算和存储服务。移动云计算(MCC),这是一个云计算、移动计算、无线网络(6- - - - - -8通过云计算),提高医学性能。对于MDs,世纪挑战集团提供一个丰富的计算资源池,可以通过无线网络来访问的。MCC帮助MDs突破资源限制,使他们从当地沉重的工作量,使他们更负责连接用户和信息域。受益于MDs的可移植性,用户可以随时随地与资源丰富的云在MCC的便利和享受信息化更好。MCC吸引了来自工业和学术界的广泛关注,因为其巨大的潜力。已经有很多研究在MCC。例如,Cuervo博士等人实现了一个计算卸载建筑名叫“毛伊岛”(9],它免除了一些沉重的云基础设施节能的智能手机功能。Kosta等人提出了一种新的代码卸载框架命名“ThinkAir”[10),可以卸载应用到云计算和使用多个虚拟机映像并行化功能的执行。坎普等人实现了一个计算卸载框架命名“杜鹃”[11为Android智能手机,可以卸载任务到一个远程服务器来降低智能手机的功耗和提高速度。此外,有许多移动云应用电子商务(12),移动医疗13),和移动教育(14]。相信越来越多的类型的移动云应用程序将会出现与MCC的进一步发展。
在云计算的研究领域一个重要的问题是如何使卸载决策,确定应该执行任务,在本地或远程。卸载在MCC决策不同于网格计算和多处理器。在这些领域,把决策的优化目标是实现负载均衡,并减少边缘切割和迁移量(15]。在传统的云计算中,用户设备(如台式电脑)连接到云通过有线网络和由插头和插座充电,而抑制节能数据传输技术的必要性。在MCC, MDs通过无线链接,连接到云,有限的带宽和消耗大量的能源可用的手机电池。无线网络产生严重影响的节能和节省时间的影响计算卸载在MCC (16]。这个特性使得MCC的时间和能源消耗计算卸载卸载决策时考虑。此外,移动用户在不同环境中,移动和无线网络环境不断变化,在MCC动态卸载决策问题。如何卸载决策的问题通常是转换为应用程序分区问题。应用程序分区是NP完全问题,导致卸载算法决定消耗更多的计算资源。然而,大多数现有研究把决定专注于优化消费(能量或时间)卸载的应用程序,忽视决策算法的开销。
本文在动态运行时卸载决定移动云计算环境,提出了一种合作运行时卸载决定机器学习算法,它结合了在线(毫升)和遗传算法(GA)来实现两个目的:(i)动态卸载决策和(2)减少卸载的消费决策算法。的合作算法,卸载策略由遗传算法作为训练数据在线毫升和卸载策略预测的在线毫升用于加快遗传算法的收敛性。不同于现有的工作,把主要精力集中于减少卸载应用程序的消费,但忽略了卸载算法决定的消费,卸载应用程序的合作算法降低了消耗,同时减少自己的计算资源消耗的帮助下在线毫升和GA的合作。在计算卸载的过程中,很多卸载策略生成的数据。如果这些历史卸载策略数据不利用,大量的重复计算将消耗更多的计算资源。合作算法基于的移动应用程序有自己的卸载习惯和规则,可以从历史数据卸载策略的帮助下毫升技术。离线毫升,这需要大量的训练数据训练在批处理,单个移动用户是不切实际的,因为它是困难的为他/她收集足够多的训练数据。相反,在线毫升,学习使用一个实例一次一步一步预测和火车,适合一个移动用户。本文的主要贡献是双重的:(1)合作的运行时决策模型,旨在最小化加权总成本卸载应用程序的同时减少了计算资源消耗的卸载决策算法,建立了制定多点卸载动态移动云计算环境中的决策问题。(2)小说合作运行时卸载决定算法基于在线毫升和GA的合作,提出了使用卸载策略由GA的在线毫升和卸载策略的训练数据预测的在线毫升是用来加快遗传算法的收敛性。
本文的其余部分组织如下:在部分2,我们审查的相关工作。部分3介绍了计算卸载系统。运行时卸载决定算法基于在线毫升和GA的合作部分4。节5,我们评估算法。部分6本文总结道。
2。相关的工作
有三个基本问题(17MCC): (i)卸载,卸载(ii),(3)当卸载。第一和第二问题表明什么样的MCC架构是使用和用作卸载单元(例如,过程、类和函数),分别。第三个问题表明当卸载装置卸载到云上。在这篇文章中,我们主要关注第三个问题,我们审查的相关工作,关注卸载的决定。
正如上面提到的,出售的决定通常是转换为应用程序分区。例如,李等人构建一个成本图给定应用程序通过分析信息的计算时间和数据共享的过程调用,然后将应用程序分为服务器和客户端部分和算法的能量消耗最小化应用程序(18]。李等人还提出了一个任务划分和分配方案,将数据处理任务服务器和医学之间的优化任务的能源成本(19]。一些研究者关注多点卸载,可以将计算转移到多个云服务器。Goudarzi等人建立了加权模型多点卸载在MCC在执行时间方面,能源消耗,然后加权成本,提出了一个基于GA的卸载策略算法(20.]。他们使用一种储备人口除了最初的GA人口多样化染色体和修改遗传算子适应多点卸货问题。他们初始化遗传算子的多点卸货问题生成的概率减少无效染色体的交叉算子和优化当地的健身手段,近亲繁殖和杂交产生更好的染色体。制定Enzai和唐MCC的多点计算卸载问题等多目标组合优化问题,移动计算的执行时间,MD的能源消耗,使用云服务的成本最小化,然后把它转化为加权简略的优化问题(21]。为了解决这个优化问题,他们提出了一个基于贪婪启发式算法希尔攀登。妞妞等人制定了多路应用程序分区为整数线性规划问题(独立)问题,提出了一个节能卸载决策算法来解决它22]。Kumari等人被认为是完成时间与节能之间的权衡多点卸货的环境,提出了一种两步算法,包括cost-and-time-constrained任务分区和卸载算法,多点任务调度算法基于教学、上优于优化和节能上多点使用动态电压和频率缩放技术(23]。Sinha和Kulkarni提出了细粒度和多点应用程序分区方法减少计算成本(24]。他们应用程序分区问题转化为一个标记划分问题和使用两种启发式算法进行卸载的决定。Khoda等人把决定了会议的目标应用程序延迟需求,同时最大限度地节约能源和使用非线性优化方法基于拉格朗日乘子开发卸载策略25]。
目前,大多数研究(例如,18- - - - - -25)关注静态卸载决策算法,假设移动云环境不会改变。这些算法开发卸载策略通过程序分析在应用程序开发阶段,并完成后卸载策略是固定的应用程序开发。很少有研究动态卸载决策算法,开发卸载策略在运行时,而卸载策略变化不断适应动态移动云计算环境。Kovachev等人一个中间件实现名为“移动增强云服务”(mac),免除了Android应用程序的云自适应,转移成本最小化,内存成本和CPU成本(26]。mac电脑分区应用程序在运行时,使其能够适应动态移动云计算环境。在运行时,mac形成一个独立的问题,其解决方案是用作卸载策略。mac独立解决一个新问题,适应新环境在环境参数变化。杨等人设计了一个在线解决方案命名为“有先见之明的人,”重新分配应用程序在运行时动态移动云计算环境,缩短应用程序完成时间(27]。有先见之明的人预测网络状态定期到用户的历史流动信息,然后更新应用程序分区。金等人提出了一个运行时卸载决定算法基于自适应遗传算法优化加权成本基于内存的移民和探索并发的使用多个传输在计算卸载MCC打击造成的挑战无线通信(28]。加工等人提出了一种自适应调度算法基于移动卸载系统的离线毫升(29日]。在[30.),加工等人提出了一种自适应调度程序基于在线毫升。这个调度程序需要一个前锋的模块和执行计算任务在本地和远程单位提供反馈的在线培训阶段。
本文在动态运行时卸载决定移动云计算环境和考虑减少卸载的消费决策算法,它超越了现有的工作。优化消费卸载应用程序的同时减少卸载的消费决策算法,在线毫升和遗传算法的优点是通过他们的合作。不同的作品简单地使用ML,该算法不需要产生额外的训练数据。训练数据是来自历史卸载策略使用。此外,应用程序组件之间的关系和情况有多个云服务器也会考虑。
3所示。计算卸载系统
在本节中,介绍了计算卸载系统。首先,我们介绍了计算卸载架构,决定如何将计算和表示“在哪里出售。“然后,我们说明了应用程序模型,它决定了卸载单元和显示“卸载”。
3.1。计算卸载架构
计算卸载架构是MCC的基础和决定的方式计算卸载。体系结构,见图1的过程,有助于理解计算卸载。医学是通过互联网连接到云,这可以通过无线访问接入点。云中的服务器是通过有线网络连接。卸载决策算法在战略运行服务器,它可以是一个朵云(31日]或服务器访问点附近。许多现有卸载决定算法运行在MDs,忽视的消费决策算法本身。让我们以一个假设的例子:卸载决策算法的消费大于消费被计算卸载的应用程序。在这种情况下,应用程序消费减少,但MD总消费量也在不断增加。战略的要求和回答数据非常小和频繁。云的往返延迟大于传输所需的时间策略。与云相比,策略服务器非常接近医学博士更适合执行卸载决策算法,并允许卸载做出及时的决定。然而,相比之下,云计算的资源可以被认为是无限的,策略服务器的资源是有限的。因此,本文建立了一个合作的运行时决策模型,提出了一种合作运行时卸载算法决定减少卸载应用程序的消耗,同时减少计算资源消耗的帮助下把决策算法的在线毫升和GA的合作。
因为拟议的出售决策算法在战略运行服务器,有可能是MDs断开与策略服务器。在此体系结构中,应用程序组件部署在MDs和MD和云的云模式。有一些研究如何重构应用到医学和云模式。例如,张等人实施一个重构工具,名为“DPartner”,自动将Android应用程序的字节码转换成医学博士和云模式(32]。DPartner处理后的Android应用程序改造成两个文件。第一个是重构(Android应用程序文件。apk文件),这是医学模式文件和部署在MD。第二个是云模式文件,这是一个可执行jar文件和包含offloadable Java字节码文件克隆从重构应用程序。云模式文件部署在多个云服务器。如果医学博士从策略服务器断开连接,一个解决方案是使用一个超时重传机制重新连接到策略服务器和re-requesting超时后卸载策略。如果超时重传机制失败,当地执行策略将使用连接之前恢复。
典型的计算卸载过程描述如下:当应用程序组件执行,一个把请求发送到服务器的策略获得卸载策略。收到一个卸载请求后,服务器返回策略的卸载策略组件。该组件是根据返回的卸载策略执行的。如果卸载策略表明,该组件是在本地执行,它将执行。相反,如果卸载策略表明,该组件是远程执行,它将执行在云服务器分配的卸载策略。一些组件在执行之前需要输入的数据。将会有一个数据传输,如果数据没有在同一个地方作为组件的执行。例如,如果一个组件在MD执行,但其输入数据在云服务器,数据传输通过无线网络医学博士。如果一个组件在一个云服务器上执行,但其输入数据在另一个云服务器,通过有线网络传输的数据。
3.2。应用程序模型
由很多组件组成的应用程序(例如,流程、类和函数),卸载单元在计算卸载系统。一个应用程序由一个图形表示 (33)如图2。目标是在运行时应用程序分割成几部分根据优化目标。一个顶点( )代表一个组件,它被建模为r3 。 代表组件的数量的指令或CPU周期,这可以通过应用程序分析。这个应用程序模型是一个细粒度模型,情况有unoffloadable组件也被认为是。是一个二进制变量,表示是否组件offloadable。意味着该组件offloadable。意味着该组件在本地unoffloadable,必须执行。移动应用程序的一些组件unoffloadable因为他们经营MD硬件(例如,传感器和屏幕)。slash-filled圈图2代表unoffloadable组件。代表组件的执行序列 。例如,组件执行完成后的组件和组件c1,需要这两个组件的输出数据。一条边 ( )代表了组件之间的互动关系cu和组件 ,和它的重量表示的交互式数据量。如果两个组件没有互动关系,边缘权重设置为零。在某些情况下,最后一个组件输出数据,需要传递给第一个组件吗在应用程序的完成。在其他情况下,组件的应用程序完成后完成 。
4所示。运行时卸载决策算法
在本节中,我们说明了运行时卸载决定算法基于在线毫升和GA的合作。它决定当卸载单元应该卸载到云,回答了这个问题“当卸载。“我们首先描述了优化目标,然后详细描述合作运行时卸载决策算法。
4.1。优化目标
应用程序的卸载策略被建模为一个向量 ,在这( , )代表组件的卸载策略 ,和表示可用的云服务器的最大数量。显示组件执行的MD,( )显示组件在云服务器执行 。本文的优化目标是节省能源和时间。这两个优化目标转换为一个通过两个权重(和 , )基于线性加权和法。代表能量消耗的重量,代表了重量的时间成本。目标函数代表应用程序的加权总成本 ,被定义为方程(1),目标是最小化。和当应用程序代表能量和时间成本分别在本地执行。 和 当应用程序代表能量和时间成本根据执行卸载策略 ,分别。
和 ,见方程(2)和(3),分别代表了时间和精力成本当组件根据执行 。 和代表马里兰州的工作频率和工作能力,分别。当组件执行在云服务器,MD进入空闲状态,其权力是由闲置 。 代表了云服务器的工作频率代表之前的延迟在云服务器组件的执行 。延迟包含排队延迟和其他一些准备时间。代表这些云服务器之间的有线网络的吞吐量。云计算中的服务器由卸载系统 。
和 ,见方程(4)和(5),代表了时间和能源成本时造成数据传输组件根据执行和组件根据执行 ,分别。这也证实了在无线网络数据传输的消费已经严重影响计算卸载的效果。( )代表了上行(下行)云服务器之间的吞吐量和医学博士。( )代表相应的上行(下行)无线网络的力量。上行(下行)无线网络的力量被建模为 ,这是一个实际试验得到线性模型(34]。策略服务器,访问点附近,只有一个用户“一跳”的距离。同时,无线带宽足够大,要求和回答数据(只有组件序列号和组件包括战略)的策略非常小。因此,造成数据传输消耗获取策略将被忽略。
介绍了动态移动云计算环境中的目标函数,如图3。代表的组件造成的成本一直在执行时间 。每个组件是一个执行卸载策略和独特的环境参数时执行。的总和执行组件的成本,它是固定的。代表了正在执行的组件造成的成本。价值,因为环境是一个变化可能会改变在其执行。 代表了加权总成本的组件不执行时间 。
4.2。合作运行时卸载决策算法
合作运行时卸载决策算法的伪代码如图4。卸载决策算法在战略运行服务器并返回卸载策略获得从当前决策模块(DMM)在收到卸载策略请求(06-15行)。在这个算法中,在线ML-based DMM和遗传DMM相互合作把做决定。卸载策略开发的基于遗传DMM用于更新在线ML-based DMM(12行)。在线ML-based DMM提高遗传算法的收敛性和适应环境变化的能力取代GA最严重的染色体(29)行。同时,灵感来自于基于内存的移民方法(35),突变和替换操作也被用来进一步增强GA的能力(31 - 32)线。代表了卸载策略在线ML-based预测的价值。作为基地创建移民取代最糟糕染色体在乔治亚州的人口。代表了加权总成本预测的在线ML-based价值。意味着加权总成本预测的在线ML-based DMM足够好,在线ML-based DMM用作当前价值(日行)。否则,使用遗传DMM(21行)。代表阈值,代表经验加权计算总成本,根据方程(6),代表应用程序的完成和的数量代表的加权总成本 - - - - - -应用程序的执行。如果当前数字是遗传,运行时卸载决定算法找到最优运行卸载策略,消耗更多的计算资源(25 - 34行)。相反,如果当前数字在线ML-based DMM卸载策略是由其预测当收到卸载策略要求。在这种情况下,运行时卸载决策算法不需要运行和仍然闲置,可以节省更多的计算资源。因为在线ML-based DMM和遗传DMM是两个关键部分的算法,这两个数字多用表中详细说明下面的描述。
4.2.1。准备基于遗传决策模块
在本部分中,我们说明了遗传,这使得卸载使用GA的决定。为什么我们选择GA解释如下:卸载决策问题是一个动态的组合优化问题,遗传算法是一种经典的优化算法,容易实现,具有相对完整的理论。摘要卸载策略可以直接用于简单的映射后的染色体编码的遗传算法。此外,GA有很多优势,如发现全局最优解,是对目标函数(线性或非线性),和健壮。首先,我们介绍了编码和适应度函数。然后,我们介绍了遗传操作,包括选择、交叉和变异。
(1)编码和适应度函数。在遗传算法中,染色体是一个可能的解决方案的优化问题,通常是编码为一组二进制文件。因为多个云服务器是在计算卸载系统,基因是编码为0和之间的整数 。如前所述,一些应用程序组件不能被卸载,卸载策略总是零(本地执行)。没有必要对这些组件进行编码的卸载策略染色体。一个向量存储完整的卸载策略之间的映射关系和染色体的基因利用评估的染色体。例如,通过染色体 ( , ),在这代表offloadable组件的数量,就可以知道是组件的卸载策略序列号码是谁的 。映射函数将基因的序列号码offloadable组件的序列号。的卸载策略组件可从公式(7)。适应度函数,方程(所示8),用于评估染色体。
(2)遗传操作。GA有三个基本操作:选择、交叉和变异。选择操作选择染色体种群的其他操作。轮盘赌选择法是一种常用的选择方法,生成一个随机数在每一个选择,选择第一个染色体满足(代表着健康的染色体 ,和代表所有染色体的适应性)的总和。交叉操作的两条染色体基因重组部分生成新的染色体。在交叉操作中,交叉概率是一个关键参数,影响遗传算法性能严重。大量交叉概率生成更多的新染色体,但降低了遗传算法的收敛速度。相反,一个小交叉概率生成新的染色体较少,导致局部优化结果。然而,标准遗传算法中的交叉概率是一个常数。为了解决这个问题,自适应遗传算法(36)提出了生成和自适应交叉概率的变化。自适应交叉概率通过方程计算(9)。和是两个常数。较大的一个是两个父染色体的适应性。和人口的平均和最大的健身,分别。变异操作之间的选中的染色体基因0和变化生成一个新的染色体。类似地,太大或太小突变概率也会影响遗传算法的性能严重。大量突变概率保持较少的父染色体的基因,将遗传算法的随机搜索算法。相反,一个小突变概率防止生成新的染色体。自适应变异概率通过方程计算(10)。和是两个常数。是父染色体的适应性。与常数概率相比,下列方程计算概率的形式一个直角梯形,这减少了概率当父染色体的适应度非常大,因此有助于留住好的染色体:
4.2.2。在线ML-Based决策模块
属性用于在线ML-based DMM是一 - - - - - -元组 。 ( )代表时间的加权总成本 ,这是组件的成本一直在执行时间吗 。 出售的是一个全面的反映情况和环境在时间吗 。 和( )代表之间的上行和下行吞吐量MD和云服务器 ,分别。一些应用程序组件必须执行医学博士和他们的卸载策略是固定的(总是零),这样不需要卸载做决定。类似于编码的染色体遗传DMM,在线ML-based DMM由分类器。从在线ML-based DMM的角度,把决策问题是一个分类问题,需要分类的应用程序组件 类别。在这里,””表示,一个组件可以卸载云服务器,“1”代表一个组件可以执行本地(MD)。例如,( )意味着应用程序组件分为两个部分。云服务器组件执行的一部分,并在本地执行组件的另一部分。
在网络训练阶段(第12行图4),分类器的训练数据( )是一个向量 ,在这 是输入和( )是输出,使用学习。代表组件的序列号,在执行时间 ,和映射函数转换offloadable组件的序列号分类器的序列号。通过方程计算(11),代表了组件的加权总成本计算根据其卸载策略。 ,产生的遗传,代表的卸载策略组件的序列号 。
在我们的算法中,在线ML-based DMM需要预测卸载策略并计算加权总成本(第18行图4)。的卸载策略offloadable组件预测的分类器吗与输入属性向量 。 通过计算
5。模拟和分析
在本节中,一系列的模拟动态移动云计算环境中进行评估拟议的出售决策算法。首先,这些模拟的设置。然后,我们的算法的性能与不同的在线毫升技术比较。最后,我们评估我们的算法。
5.1。设置
默认的仿真参数配置表所示1。生成应用程序根据其参数表中列出1。 的概率是组件unoffloadable。基于流动模型生成的轨迹,如图5是用来模拟用户的移动路径。用户运动在不同的方块会导致网络参数的变化,用来模拟环境变化的动态移动云计算环境。包含 是用来模拟用户的移动性,代表方用户所在地,代表用户需要穿过一个广场,和代表用户的概率仍然保持在相同的广场 。 用户移动到相邻的概率是广场,然后呢是一个正方形的数量的相邻方格。( )代表之间的上行(下行)吞吐量MD和云服务器。医学博士是连接云服务器,上行(下行)吞吐量生成参数的分布()。为了简化网络环境,网络参数在一个广场是稳定的。网络参数的差异在不同的方块,因此网络参数变化当用户移动到另一个从一个广场。如果一些方块被认为构成一个区域,那么这种变化可以被视为一个从无线网络本身。这种变化可以被看作是由于用户的运动或无线信道本身的变化。用户在一个正方形有八个运动方向,广场上所示 ,和方向的数量减少边际广场,广场上所示 。用户的轨迹建模为一个数组 ,和一个简单的例子(从轨迹来 )图中给出了5。在这些模拟使用30分钟随机轨迹。在我们的算法,和代表人口遗传DMM的尺寸和精度要求,分别。
如图6一个基于java的数值模拟平台,建立了根据计算卸载系统中引入部分3,用于仿真实验。应用程序执行仿真模块(AESM)模拟应用程序的执行。它发送一个请求来获取组件的卸载策略,即将被执行。卸载决策算法模块(ODAM)模拟策略服务器和卸载决策算法评估运行。在收到卸载策略要求,ODAM返回AESM组件的卸载策略。接到卸载策略后,AESM执行组件根据卸载策略。随机轨迹生成模块(RTGM)生成随机用户的移动轨迹根据流动性模型中引入图5。环境监测模块(EMM)监测环境变化和通知ODAM AESM RTGM生成的轨迹。电解加工读取数组 代表用户的移动路径和发送网络参数的广场后等待( )。网络参数的差异在不同的方块,因此,环境不断变化在用户的运动。的变化可以模拟用户的运动造成的网络参数的变化以及网络本身的变化。动态移动云计算环境中模拟了这两个模块。接到通知环境变化后,卸载决策算法重新卸载与新的环境参数决定。同时,AESM调整组件执行时间和加权总成本是否有剩余的数据被转移。
5.2。性能比较不同的在线毫升技术
在线ML-based分类器有一个直接影响该算法的复杂性和准确性。因此,该算法的性能与常用的在线毫升技术实现Weka [37)相比,选择合适的在线毫升技术。加权总成本和时钟不同的在线毫升技术如表所示2。可以看出RacedIncrementalLogitBoost的加权总成本最小(66.96%)和加权DMNBtext的总成本是最大的(71.81%)。在本文中,我们专注于把决策算法的计算资源消耗,以单位的CPU时钟的滴答声。可以看出,时钟滴答声被NNge最少的(蜱虫)和时钟被NaiveBayesMultinomialUpdateable是最(蜱虫)。时钟节拍被低潮位被RacedIncrementalLogitBoost NaiveBayesMultinomialUpdateable大于,及其加权总成本也比RacedIncrementalLogitBoost,它显示了这两个技术消耗更多的计算资源,不达到良好的结果。时钟节拍被KStar、NNge NaiveBayesUpdateable, IB1,被RacedIncrementalLogitBoost DMNBtext都不到,但是他们的加权总成本大于RacedIncrementalLogitBoost,这表明这些技术消耗更少的计算资源但不达到良好的结果。卸载的决策算法,它首先需要保证加权总成本最优,然后考虑尽可能减少其计算资源消耗。因此,RacedIncrementalLogitBoost,最小加权总成本和消耗更少的钟表的滴答声,选择合作运行时卸载决策算法。
5.3。评估合作运行时卸载决策算法
评估算法,相对于其他运行时卸载决策算法。来表达他们在以下描述简洁,使用缩写。AO是传统的和直观的运行时卸载决策算法。选择AO的原因是我们想要卸载的性能评估决策算法没有考虑MCC的网络环境。把决策问题通常转换为应用程序分区的问题,这是一个组合优化问题。独立和进化算法通常用于解决应用程序分区问题。因此,独立和GA算法选择的比较。选择遗传算法的另一个原因是,我们需要确认该算法,依靠在线毫升和GA的合作工作。(1)AO:瘦客户机的算法总是可以卸载offloadable云服务器和组件选择云服务器随机场景中有超过一个云服务器(2)ILP1:算法,解决了独立问题检测环境变化和使用本地执行策略为默认(3)ILP2:算法,解决了独立问题定期和使用本地执行策略作为违约(4)遗传算法:该算法重播遗传算法当探测环境变化(5)OMLGA:该算法基于的合作在线毫升和遗传算法
图7显示了五个算法的加权总成本在不同的应用程序。在这个模拟过程中,这些应用程序有不同的组件的数量。这些应用程序的组件的数量是20岁,40岁,60岁,80年和100年,分别。可以看出,加权总成本OMLGA小于其他算法。加权总成本比GA和OMLGA AO更大,这意味着AO节省消费低于GA和OMLGA。当环境变化时,一些组件变得不适合被卸载。AO分流所有offloadable组件到云服务器没有考虑环境变化和组件之间的关系,导致多少额外的消费造成的数据传输。加权总成本的独立(ILP1: 48.71%, ILP2: 48.85%)接近,但比GA(48.60%)和OMLGA Application1 (48.52%)。然而,随着组件的数量增加,独立的性能变坏,甚至比AO Application4 Application5。运行时间独立需要找到最优的解决方案是指数变量的数量,导致独立花很多时间划分有大量的组件的应用程序。 Long running time makes ILPs unable to adapt to environmental changes timely and hence provides wrong offloading strategies. Weighted total costs of GA (48.60% and 53.56%) are close to those of OMLGA (48.52% and 53.42%) in Application1 and Application2. The reason is that Application1 and Application2 have relatively few components so that GA can find the optimal solution timely to adapt to environmental changes. Weighted total costs of GA are larger than those of OMLGA in Application3, Application4, and Application5, which results from that these applications’ numbers of components are large such that GA cannot find the optimal solutions timely, but OMLGA can.
图8说明了钟表的滴答声在不同的应用程序。Application1,时钟滴答OMLGA小于ILP2和较大的比ILP1,这说明ILP1消耗更少的计算资源在小规模的应用程序中。在其他应用程序中,时钟滴答OMLGA小于独立。值得注意的是,时钟滴答OMLGA小于GA。这是因为在网上ML-based DMM OMLGA有助于保存卸载决策时计算资源的一部分。GA的时钟节拍(蜱虫)更比独立(ILP1:蜱虫和ILP2:Application1蜱虫),这说明GA消耗更多的计算资源比小规模的独立应用程序。然而,Application2 Application3、Application4 Application5,时钟滴答的GA明显小于独立,这说明遗传算法计算资源消耗少于在大型应用程序中独立。独立的时钟滴答的增加越来越多的应用程序组件,然后保持稳定。Application1 Application2,时钟滴答ILP1小于ILP2。原因是ILP2在小型应用程序需要做更多的重复计算。独立的时钟滴答Application3接近稳定,Application4, Application5,结果,独立充分利用计算资源在这些大规模应用程序卸载决策。值得注意的是,时钟滴答AO需要相当多。原因是AO几乎不消耗计算资源卸载做决定。
在本文中,我们专注于多点计算卸载。因此,在下面的模拟中,我们评估我们的算法在不同的云服务器的数量。图9说明了加权总成本在不同的云服务器的数量。值得注意的是,OMLGA加权总成本最小的,这意味着OMLGA中减少消费最高达到测试算法。加权总成本OMLGA减少(从81.27%到59.27%)越来越多的云服务器。原因是描述如下:在多点计算卸载,可以将组件转移到云服务器。一方面,当一些无线通道条件不好,OMLGA继续卸载其他云服务器组件,由高质量的无线网络连接。另一方面,云服务器连接有线网络,其消费相当小,减少数据传输造成的消费。相比于单计算卸载,只有一个单一的云服务器,多点计算卸载为用户提供了更多的选择。例如,当一个极端,如果两个云服务器之一多点计算卸载总是由高质量的无线网络连接,另一个总是由低质量的无线网络连接,组件将被卸载到云服务器连接的高质量的无线网络,和多点计算卸载可以堕落到单计算卸载。正如另一个极端,如果只有一个云服务器的单计算卸载总是由低质量的无线网络连接,本地组件将被执行,并计算卸载不工作。独立的加权总成本比OMLGA和GA,成为很大当云服务器的数量是5。 This is because that the solution space becomes larger when the number of cloud servers is so large that ILPs cannot find the optimal solution in time. AO’s weighted total costs are large, which illustrates that the commonly used thin client mode is not suitable for MCC. This simulation shows that advantages of the multisite computation offloading cannot be exploited or even lead to worse results if the offloading decision algorithm is not effective.
图10说明了钟表的滴答声在不同数量的云服务器。值得注意的是,时钟滴答的OMLGA小于独立和GA。独立和GA相比,OMLGA消耗更少的计算资源在线ML-based DMM的帮助下,这几个计算资源消耗使卸载的决定。可以看出,时钟滴答的AO仍然相当少。钟表的滴答声的独立增加越来越多的云服务器,结果从解空间变得大与越来越多的云服务器,独立计算资源消耗多卸载做决定。类似于图所示8,因为ILP2需要更多的小规模卸载决策问题中重复计算,钟表的滴答声比ILP1 ILP2更大的云服务器的数字是1和2。当云服务器的数量很大,独立充分利用计算资源进行卸载决策,导致独立的时钟滴答作响时大而稳定的云服务器的数字3、4和5。
图11说明了加权总成本在不同速度下的用户。在这个模拟中,相同的轨迹(移动路径)与不同的用户使用速度。代表了时间系数( )用户需要穿过一个广场,也就是说,(默认为1)。一个更大的意味着用户需要更多的时间来过广场,用户的速度慢,和环境的变化较慢。可以看出OMLGA执行比其他算法在不同的速度。当用户的速度变得缓慢,GA可以找到优秀的解决方案及时适应环境变化,反映在图11GA的加权总成本(69.52%和69.89%)接近但比OMLGA(68.98%和69.43%)和 。缓慢的速度会导致更少的环境变化。可以看出,独立的加权总成本降低(ILP1:从103.46%到86.45%,ILP2:从105.17%到88.28%)逐渐减少 。原因是独立有更多的时间和更少的环境变化,把做决定的独立“卸载策略在一定程度上适应环境。此外,它可以看到,一些独立的加权总成本和AO超过100%,这意味着这些算法的卸载策略造成的消费大于消费造成的地方执行策略。
图12说明了钟表的滴答声在不同速度下的用户。正如上面提到的,在这个模拟中,用户传播速度不同,相同的轨迹,因此,用户需要的总时间旅行是不同的。评估这些算法的性能,比较每分钟钟表的滴答声。ILP1和GA重新检测环境变化时,和一个大导致更少的环境变化。它可以看到时钟的滴答声ILP1(从2983年蜱虫/分钟2876蜱虫/分钟)和遗传算法(从2326年蜱虫/分钟1788蜱虫/分钟)与增加减少 。与独立相比,遗传DMM OMLGA也有助于减少钟表的滴答声。此外,OMLGA使得卸载决策基于在线毫升和GA的合作。当环境是稳定的,OMLGA更决定出售在线ML-based DMM的帮助下,计算资源消耗是寥寥无几。这两个数字多用表做钟表的滴答声OMLGA最小,减少蜱虫(从1971 /分钟1558蜱虫/分钟)的增加 。AO仍相当一些时钟,时钟滴答AO和ILP2是稳定的。AO使卸载决策时接收策略请求和在其他时间仍然闲置。定期ILP2使卸载的决定。因此,用户的速度对这两个算法没有影响。
独立是一个经典的算法用于开发精确的最优解在静态环境中,这些独立的加权总成本在静态环境中作为标准来衡量OMLGA的准确性。十模拟,保持静态环境参数,进行评估OMLGA的准确性。保持环境参数静态和模拟静态环境中,每平方的参数设置是一样的。换句话说,当用户移动到另一个从一个广场,参数不变。通过这种方式,静态模拟环境。加权总成本如表所示3,他们的箱线图如图13。如图13,OMLGA加权总成本接近最优的。通过统计数据表3的最大和最小相对误差OMLGA 1.612%(7号)和0.329%(2号),分别。OMLGA的平均相对误差为0.896%。
6。结论
资源约束阻止MDs和移动应用的进一步发展。MCC,作为一种有效的方法提高医学性能,提供了一个很好的机会来促进它。本文研究了MCC的运行时把决策问题,提出了一个运行时卸载决定算法基于在线毫升和GA的合作。一方面,借助遗传算法,该算法得到的数据训练预测在线毫升。另一方面,在线毫升的帮助下,该算法能节省更多的计算资源,提高遗传算法的能力开发卸载策略。本文的结果表明,常用的瘦客户端模式,分流所有offloadable组件到云,不适合MCC。ILP-based卸载决策算法适用于小规模问题,但导致坏的结果和消耗更多的计算资源在大规模问题。合作运行时卸载决策算法,最小化加权总成本卸载的应用程序,同时减少计算资源消耗和性能更好的大规模问题,能有效地解决运行时把决策问题。建立的模型和算法可以扩展到更一般的运行时决策问题在动态环境中。这项研究提供了一种可行的方法来设计一个合作的运行时决策算法,并结合在线毫升和GA优化目标函数,同时减少计算资源消耗。在本文中,我们假设只有一个应用程序中执行。在未来,我们将研究把决策问题与多个应用程序基于合作运行时卸载决策算法。 In that problem, we need to consider the interaction among applications and add ML’s attributes to combat the changing parameters of the MD.
数据可用性
使用的数据来支持本研究的发现可以从相应的作者。
的利益冲突
作者宣称没有利益冲突。
确认
这项工作得到了陕西省的特殊教育部门的科学研究项目(项目号19 jk0806),青年教师研究基金会的西安邮电大学和重点学科建设专项资金在大学在陕西。