论文笔记:Software-Defined Networks with Mobile Edge Computing and Caching for Smart Cities

Software-Defined Networks with Mobile Edge Computing and Caching for Smart Cities: A Big Data Deep Reinforcement Learning Approach

文章基本概况

作者:Ying He, F. Richard Yu, Nan Zhao, Victor C.M. Leung, and Hongxi Yin

来源:IEEE Communications Magezine

日期:2017年

链接: https://ieeexplore.ieee.org/abstract/document/8198798

背景与目的

伴随着科技的发展,网络技术,缓存技术,计算技术(包括云计算和边缘计算)的水平在不断的提高,但是之前的研究都是对上述三种技术分开进行研究,但是在现实场景中,特别是智慧城市的兴起,这些技术往往是在一起同时使用的。在本文中,作者提出了一种将上述技术整合的方法,运用深度强化学习的方法,提高这些技术的使用效率。

作者把网络技术,缓存技术,计算技术在智慧城市中的使用场景抽象成了一个资源分配的优化问题,具体这个问题是如何抽象的后面会细说,使用Deep Q-learning的手段来求解这个问题,达到提高效率的目的。

相关知识

 software-defined networking (SDN) :按照百度百科的定义,软件定义网络(Software Defined Network,SDN)是由美国斯坦福大学CLean State课题研究组提出的一种新型网络创新架构,是网络虚拟化的一种实现方式。其核心技术OpenFlow通过将网络设备的控制面数据面分离开来,从而实现了网络流量的灵活控制,使网络作为管道变得更加智能,为核心网络及应用的创新提供了良好的平台。再详细一些的内容可以看这篇博文——Software-defined networking。按照我的理解,既然是软件定义的网络,那么其核心就在于其可编程性,软件定义网络将交通系统决定在哪里发送(控制平面)从底层系统转发到选定的目的地(数据平面)。实现网络可编程性。

network functions virtualization (NFV):这个概念有点难理解啊,百度百科是这么说的——NFV,即网络功能虚拟化,Network Function Virtualization。通过使用x86等通用性硬件以及虚拟化技术,来承载很多功能的软件处理。从而降低网络昂贵的设备成本。可以通过软硬件解耦及功能抽象,使网络设备功能不再依赖于专用硬件,资源可以充分灵活共享,实现新业务的快速开发和部署,并基于实际业务需求进行自动部署、弹性伸缩、故障隔离和自愈等。但是这个概念实在是太抽象了,说了和没说一样,还是看这篇博文——NFV。最核心的点——“网络功能不再是像原先那样,是由供应商将软件和硬件组合在一起,网络功能由软件实现,并且可以部署在一系列标准的服务器设备”。

Deep Q-learning Network:这个应该是全文中最复杂的一个东西了,虽然本文只是简单的应用,但是背后涉及的知识有点多。直接看这个吧——https://blog.csdn.net/asd136912/article/details/79333312

方法

框架描述

在大多数智能城市的现有工作中,网络、缓存和计算是分开研究的。然而,从智能城市应用程序的角度来看,网络、缓存和计算是支持智能城市应用程序的基础资源。如何提取、分配和优化这些资源,将对智能城市应用程序的性能产生重大影响。在本文中,我们提出了一个新的框架,以系统的方式为智能城市集成网络、缓存和计算。图1显示了这个框架。基于SDN的可编程控制原理,结合ICN的信息中心思想。这种集成框架可以实现网络、缓存和计算资源的动态协调,以满足不同智能城市应用程序的需求。

在该框架中,通过无线网络虚拟化,物理无线网络可以通过图1所示的管理程序虚拟化为多个虚拟网络。虚拟网络是逻辑建立的。每个虚拟网络包括BSS、RSU、APS、MEC服务器和内容缓存,可以为智能城市应用程序提供内容缓存和高速计算功能。每个设备最终将根据其QoS要求访问其中一个设备。因此,具有不同网络服务的多个虚拟网络可以体现在同一平台中。图1中的虚拟化管理程序是一个重要组件。通常,管理程序负责划分和调度资源。此外,管理程序将虚拟资源分配给不同的移动虚拟网络运营商(MVNOS)。

用户访问无线网络。SDN控制器可以管理具有缓存和计算能力的网络节点。缓存资源用于缓存海量内容,包括用户请求的热门内容和用户采集的数据。通过缓存功能,当用户想要访问内容或某些智能城市应用程序想要处理数据时,内容可能会命中网络内缓存。因此,这种方法将减少延迟,减轻流量冗余和网络负担。此外,集成计算资源对于处理海量内容或数据,大大减少传输延迟,保证应用的及时性是非常理想的。因此,该框架不仅提供了基本的网络能力,还提供了缓存能力和计算能力。

用例描述

下面这个图描述了一个用户请求视频资源的一个用例,当我们把各种因素都考虑进来的时候,这是一个极其复杂的问题,显然不能暴力求解。

问题抽象

在我们的系统模型中,有K个BS、M个MEC服务器和C个内容缓存器被虚拟化,由MVNO管理,并为智能城市提供服务。由于我们考虑了现实场景,其中BSS的下行信道条件、MEC服务器的计算能力和缓存的状态都是动态变化的,因此MVNO面临着大量的系统状态,必须决定虚拟化资源将是什么根据系统的当前状态分配给特定用户。用传统方法解决这个复杂的任务几乎是不可能的。

深度Q学习是最近的一项进步,它能够接收复杂的高维数据作为输入,并为每个输入数据生成一个最佳操作。利用深度Q网络,MVNO可以有效地管理系统。

求解问题

MVNO负责从每个BS、MEC服务器和内容缓存收集状态,然后将所有信息组装成一个系统状态。然后,mvno将构建的系统状态发送给代理(即深度Q网络),并获得为特定用户安排哪些资源的最佳策略的反馈。获取操作后,mvno将发送通知通知用户它可以访问哪个虚拟网络。在深度Q网络中,贪婪策略用于平衡探索和开发。深度Q代理试图采取随机行动,以p概率探索未知环境,并根据已经获得的知识,以概率1–p最大化回报。由于我们在算法中引入了双DQN,s表示目标网络向主网络更新的速率。算法1描述了深Q网络的训练算法。

为了获得最优策略,需要在我们的深度Q学习模型中识别系统状态、行为和奖励函数,如下所述。系统状态将包括可用的BS K∈ 1、2、…、K、可用MEC服务器M ∈1、2、…、M的状态以及可用缓存C∈ 1、2、…、C的状态(对于时间槽T 0、1、…、T–1)。对于操作,代理必须决定将哪个BS分配给用户,请求的内容是否应缓存在BS中,以及计算任务是否应卸载到MEC服务器。此外,系统奖励是MVNO的收入,它是根据接入无线链路的接收信噪比(SNR)、计算能力和缓存状态来制定的。我们将MVNO的综合收入作为我们系统的奖励。MVNO从信息提供商(INPS)租用无线频谱和回程带宽,并将其分配给虚拟服务提供商(SP)。mvno需要支付使用频谱到inps的费用。此外,只要在MEC服务器上执行计算任务,MVNO还需要支付计算费用。此外,MVNO还向用户收取访问虚拟网络的费用。已经支付费用的用户可以访问虚拟网络来卸载他们的计算任务。当用户调用已经缓存的内容时,MVNO支付的回程成本可以被节约。

下面的图显示了上述所说的算法:

实验结果

下面一张图显示了整体的可用性的对比图。可以看到,综合考虑各种因素的DQN的方法要好于只考虑某种因素的算法。

下面一张图显示了学习率对本论文使用的方法的影响,可以看到,如果学习率太大,就有可能会陷入局部极小值,如果学习率太小,收敛的可能会比较慢。

总结

我记得在阿尔法狗横空出世后,有人质疑这样一个下围棋的人工智能在现实生活中有什么用,DeepMind的创始人哈萨比斯说这项技术已经应用于谷歌的机房,可以节省大量的电费。本文也差不多是这个思路。仔细思考这个智慧城市的网络资源调度问题,和下围棋有很大的相似性。他的每个决策的搜索空间非常庞大,完全无法暴力求解,但是选择总归还是有限的,这一点和“星际争霸”有很大区别。这个场景也很好在计算机中进行模拟,目标也相对明确。因此deep Q learning可以取得比较好的效果,通过大量的模拟学习到一个能充分利用有效资源的行为。

发布了85 篇原创文章 · 获赞 100 · 访问量 13万+

猜你喜欢

转载自blog.csdn.net/caozixuan98724/article/details/97611209