第 1 章 绪论
1.1 研究背景和意
社会成本的迅猛发展和信息技术的突飞猛进加速了物联网(IoT)的发展,移动设备例如智能手机、智能穿戴设备、平板电脑等快速普及。根据思科(Cisco)全球网络流量预测分析,到 2023 年,全球超过 70%的人口将拥有移动联网设备[1,2]。全球移动用户的总数量将从 2018 年的 51 亿(约占全球总人口数量的 66%)增长到 2023 年的 57 亿(约占全球总人口数量的 71%)[3]。近年来,物联网在智能家居、智能交通、智慧城市以及工业生产等领域的迅速发展及应用,物联网接入设备数量急剧增长,如图 1.1 所示,预计 2025 年物联网设备数量将达到 750 亿[4]。一些新兴应用比如在线游戏、人工智能和虚拟现实等对时延要求比较高,且需要大量的计算资源[5,6]。然而,移动设备因为体积限制,导致移动终端计算能力和电池容量受限,无法为这些应用提供充足的计算能力,运行这些应用会带来较高的计算延迟并增加移动终端的能量消耗。
软件工程论文参考
1.2 移动边缘计算相关背景知识介绍
1.2.1 移动边缘计算概述
本节针对移动边缘计算和移动边缘计算中卸载技术进行系统化分类,使读者能够详尽了解移动边缘计算技术和卸载技术的不同分类的主要特征,最后通过介绍新型应用案例简单介绍边缘计算的应用前景。
移动边缘计算(MEC)最初于 2013 年在 IBM 和 Nokia Siemens 共同推出的一款计算平台上出现。之后,各大电信标准组织开始推动移动边缘计算的规范化工作[12]。根据欧洲电信标准协会(ETSI)的定义,移动边缘计算侧重在移动网边缘提供 IT 服务环境和云计算中心能力,强调靠近移动用户以减少网络操作和服务交付的时延[13]。
为了进一步推动工业物联网边缘服务的普及,2018 年 12 月边缘计算产业联盟(Edge Computing Consortium,ECC)发布《边缘计算白皮书 3.0》,并提出了移动边缘计算参考架构 3.0[14] 。该结构基于模型驱动的方法(Model-Driven Engineering,MDE),可以基于实际在数字世界进行仿真,实现现实世界和数字世界进行交互;建立可以重用的知识模型来实现跨部门的生态协作;减少各系统接口的异构性,实现软件接口和语言、平台和协议等的耦合。从而简化系统跨平台的迁移,可以有效支持系统生命周期活动。
根据以上理念,ECC 提出了如图 1.2 所示的移动边缘计算架构。架构总共分为云层、边缘层和现场设备层。边缘层位于云和设备层之间,主要包括边缘管理器和边缘节点。其中边缘节点表示移动边缘计算服务核心硬件,具有计算、存储等功能。边缘管理器核心就是软件,其功能是管理各边缘节点。移动边缘计算系统使用两种方式管理这些资源:用户可以直接将计算和存储等资源封装,提供 API 接口,边缘管理器可以使用边缘节点的资源提供比如代码下载,计算卸载和数据库等操作。
..............................
第 2 章 计算卸载相关技术和研究现状概述
2.1 计算卸载概述及研究现状
移动边缘计算技术是将云计算中心服务的部分功能下沉到网路的边缘,MEC 服务器集成了计算资源和存储资源等,通过计算卸载将用户产生的任务卸载至 MEC 服务器,可以大大提高用户的 QoE。本小节详细介绍了计算卸载的概念、计算卸载技术的分类和目前国内外研究现状。
2.1.1 计算卸载模型和方案分类
(1)计算卸载一般模型
通过将计算任务卸载至 MEC 服务器,可以有效增强网络设备的计算能力,因为将计算任务迁移到 MEC 服务器,可以减少任务在本地执行的能量消耗,同时,由于服务器的计算能力大大优于本地设备,因此通过计算卸载模式可以有效降低设备运行所产生的能量消耗和任务的完成时延。那么实际系统中是如何管理计算卸载系统呢?在移动设备端,应用程序包括代码分析器、系统分析器和决策引擎三个组件组成,其中代码分析器的功能是决定哪些计算任务可以迁移以及哪些代码部分可以迁移,这些取决于计算任务的不同特征;系统分析器的功能是负责监控系统中的各种参数,比如当前可用带宽,计算任务的数据量大小,计算任务所需计算量大小和当前任务在本地执行所将消耗的能量大小;决策引擎的功能是根据任务卸载决策算法决定任务卸载的具体方式,比如用户产生的任务是在本地或者 MEC 服务器执行,或者是在其他位置执行,还有任务卸载功率的分配,计算和无线资源的分配等,每个任务的调度顺序等[21]。如图 2.1 所示为移动边缘计算中计算卸载的一般模型。
软件工程论文怎么写
2.2 强化学习及算法分类
机器学习(Machine Learning,ML)是目前最热门研究领域之一,应用前景非常广阔,其中基于学习方式分类可分为监督学习、无监督学习和强化学习三种[38]。强化学习的目标就是最大化长期收益,计算卸载的目标是最小化所有任务执行的总消耗(包括时延能耗等),所以可以使用强化学习的技术来解决计算卸载问题。本小节详细的阐述了强化学习和强化学习的算法分类。
2.2.1 强化学习概述
强化学习与监督学习和非监督学习不同,监督学习和非监督学习都是通过已经标记过的标签数据进行学习,而强化学习是一种试错学习,智能体在环境中不断探索,然后根据探索经验进行学习[39]。强化学习根据环境的回报不断调整策略,目的是得到最大的长期奖励。如图 2.3 所示为强化学习的学习模式。
在人工智能领域,一般使用智能体(agent)来表示具备行为能力的物体,比如智能机、机器人、无人机、人和智能汽车等等。强化学习考虑问题就是智能体和环境如何进行交互。比如智能体自己玩迷宫游戏,在探索过程中,迷宫地图就是环境(environment),玩家角色就是智能体,角色在探索地图的时候,需要采取不同的方向动作(action),地图环境会根据动作给出回报(reward),如果角色进入陷阱,回报为负,如果找到迷宫出口,环境则会给出正的回报。强化学习的目标就是尽可能获得更高的回报。没有具体的目标,强化学习就没有了具体的学习方向,其中获得多少回报就是一个量化的标准,回报越多,说明动作策略越好。在每一个时间片内,智能体根据当前状态来确定下一步的动作。每一次观测的结果作为智能体(agent)当前所处状态(state),所以,状态(state)和动作(action)之间存在印射关系,也就是状态和动作是对应的,可以是一个状态对应一个动作,也可以是一个状态对应不同的动作的概率。从初始状态如何执行动作达到设定目标的过程称为一个策略(policy)。初始我们不知道最优策略是什么,因此初始智能体随机探索得到一系列的状态、动作和回报。强化学习的算法就是根据这些经验不断改进策略,从而使得智能体更快的接近最优目标。
............................
第 3 章 结合任务缓存的移动边缘计算卸载策略 ............................ 14
3.1 引言 .......................................... 14
3.2 系统模型 .......................................... 15
第 4 章 移动边缘计算中基于任务优先级的边缘协作卸载策略 ....................... 28
4.1 引言 ................................. 28
4.2 系统模型 ............................ 29
第 5 章 总结与展望 ............................ 46
5.1 总结 .................................. 46
5.2 展望 ...................................... 46
第 4 章 移动边缘计算中基于任务优先级的边缘协作卸载策略
4.1 引言
移动边缘计算通过将服务下沉到网络边缘,从而减少网络传输时延,满足低时延业务的需求。然而热点小区由于用户密集 MEC 服务器负载可能过重(比如商场,学校,密集小区等),但是有些小区 MEC 服务器有可能有较大的空闲资源,目前也有一些学者研究如何均衡各小区之间的资源来缓解热点小区的计算资源压力。
Chen 等[26]为了减轻负载较高的服务器压力,利用边缘节点间的协作来实现负载均衡。首先建模出计算、通信和卸载模型,在任务最大容忍时延的约束下最小化所有任务的平均完成时延。文中将资源分配问题建模成马尔科夫模型。将边缘服务器计算能力、无线带宽资源和任务请求情况建模为状态,将任务的拆分比例、服务器的资源分配和带宽的分配建模为动作,使用基于 MCTS+DNN 的方法来确定资源分配策略。但是文中假设任务可以按百分比拆分且没有考虑到任务的调度模型。现实场景中的任务卸载分为整体卸载或者分为具有任务依赖关系的部分卸载,按百分比拆分是一种理想情况。Dai 等[46] 在车联网场景中将用户任务建模为 M/M/1 队列模型,对卸载任务采取先到先处理原则。但是不同类型的任务拥有不同的计算需求,比如一些图像识别的任务但忽略了任务优先级对卸载性能的影响,实际场景中,不同任务可能拥有不同的完成时延要求。比如工厂控制系统的容忍时延为10ms,智能电网任务容忍时延为 50ms,流程自动化任务的容忍时延为 100ms 等。将容忍时延较高的任务设置较高的优先级,可以保证 MEC 优先处理这些任务。Zhao 等[47]在车联网场景中将任务按照时延类型分为三种处理级别,但是相同级别的任务划分还不够细致,若同时出现大量的同级任务,MEC 无法按照级别划分并处理任务。Zhu 等[48]在远程医疗场景中,提出一种基于任务优先级的任务迁移时延优化算法,通过在任务迁移模型中加入任务优先级机制,将任务分为 5 个紧急程度,基于排队论和逆向拍卖算法优化远程医疗中移动设备处理的任务完成时延。然而,上述文献没有根据任务自身属性来确定任务优先级,任务的复杂度(包括空间复杂度和时间复杂度)对卸载性能都有一定的影响,考虑任务的执行时延属性可能无法保证卸载的成功率。
..........................
第 5 章 总结与展望
5.1 总结 随着无线通信技术、物联网技术和 5G 技术的迅猛发展,移动设备快速普及,数据流量急剧增长。一些新兴应用比如在线游戏、人工智能和虚拟现实等对时延要求比较高,且需要大量的计算资源。然而,移动终端计算能力和电池容量有限,运行这些应用会带来较高的计算延迟并增加移动终端的能量消耗。而基于云计算中心的服务模式因为较长的传输距离所导致的传输时延常常难以满足实时应用的需要。通过移动边缘计算将服务下沉到网络边缘,从而减少网络传输时延,满足低时延业务的需求。通过计算卸载,可以大大降低任务的完成时延,本文分别研究了单基站和多基站场景下的计算任务卸载策略。具体如下:
(1)基于任务缓存的计算卸载问题进行研究。提出了一种联合卸载和任务缓存策略(Joint Offloading and Caching, JORC)。JORC 机制综合考虑了任务卸载,通信和带宽资源分配的方案,对于任务缓存,基于任务的多种属性定义缓存价值。首先,建模出卸载、资源分配和任务缓存模型。其次,将计算卸载和资源分配问题形式化,将其建模成马尔科夫模型,以最小化任务完成系统成本总开销为评价指标,最后通过基于 Q-Learning 的算法求解。将本算法与其他基准方案仿真对比,证明该算法可以有效降低系统成本总开销。
(2)对热点小区资源受限且异构任务优先级难以确定的问题,设计一个主从 MEC 协作计算卸载和资源分配策略,结合任务优先级及时延约束,在边缘协作的场景下提出了基于任务优先级的调度算法。首先,对网络虚拟化,建立通信模型、卸载模型、协作模型和任务优先级模型。其次,提出了基于深度强化学习的卸载调度算法。在算法中,将系统中用户的完成时延设计为深度强化学习的奖励和损失,并通过神经网络训练,算法在探索中学习可以获取最高奖励的卸载和资源分配方式,保证主从小区 MEC 服务器的负载均衡,最小化所有用户任务完成时延,同时提高任务的计算成功率。最后通过仿真对比多种基准算法和训练模型,证明所提出的模型可以获取较高的系统收益。
参考文献(略)