«上一篇 下一篇»
  计算机工程  2022, Vol. 48 Issue (1): 135-141, 148  DOI: 10.19678/j.issn.1000-3428.0059963
0

引用本文  

冯浩, 郭彩丽. 车联网中视频内容理解任务的计算卸载决策研究[J]. 计算机工程, 2022, 48(1), 135-141, 148. DOI: 10.19678/j.issn.1000-3428.0059963.
FENG Hao, GUO Caili. Research on Computing Offloading Decision for Video Content Understanding Tasks in Internet of Vehicles[J]. Computer Engineering, 2022, 48(1), 135-141, 148. DOI: 10.19678/j.issn.1000-3428.0059963.

基金项目

北京市自然科学基金(4202049)

作者简介

冯浩(1996-), 男, 硕士, 主研方向为边缘计算、车联网;
郭彩丽, 教授、博士

文章历史

收稿日期:2020-11-10
修回日期:2021-01-11
车联网中视频内容理解任务的计算卸载决策研究
冯浩 , 郭彩丽     
北京邮电大学 信息与通信工程学院, 北京 100876
摘要:视频数据能够为车辆的智能网联化提供丰富的信息,为了更好地提取视频内容并使卸载后的视频中包含更多的有效信息,在时延约束条件下,设计一种内容驱动的计算卸载指导方式并提出基于改进蒙特卡洛树搜索的计算卸载决策算法。在车辆端通过关键帧提取来对视频内容进行预处理,以有效分析视频内容理解任务的重要性,使得更重要的任务能够获得更多的计算资源。采用基于强化学习的启发式搜索算法完成计算卸载决策,并引入深度神经网络预训练先验转移概率,从而优化算法的收敛速度并降低计算复杂度。实验结果表明,该算法能够在时延约束下有效降低能耗并提升视频内容理解精度,相比基于Q-learning、基于模拟退火的算法,其收敛速度更快,计算复杂度更低,在700 ms时延约束下系统总效用达到37%。
关键词蒙特卡洛树搜索    视频内容理解    计算卸载决策    边缘计算    车联网    
Research on Computing Offloading Decision for Video Content Understanding Tasks in Internet of Vehicles
FENG Hao , GUO Caili     
School of Information and Communication Engineering, Beijing University of Post and Telecommunication, Beijing 100876, China
Abstract: Video data provides ample information for intelligent networking of vehicles.To improve the quality of video content extraction and keep more valid information in offloaded videos, this paper presents a content-driven method for instructing computation offloading, and a decision-making algorithm based on improved Monte Carlo Tree Search(MCTS) under delay constraints.The video content is pre-processed through key frame extraction at the vehicle end, which helps to analyze the importance of content analysis tasks, making important tasks obtain more computation resources.Then a heuristic search algorithm based on reinforcement learning is adopted for offloading decision making, and a DNN is adopted to pre-train the priori transition probability.So the convergence speed of the algorithm can be optimized and the computational complexity is reduced.Experimental results show that the proposed algorithm can effectively reduce energy consumption and improve the accuracy of video content understanding under the delay constraints.Compared with the algorithms based on Q-learning and simulated annealing, the proposed algorithm displays a higher convergence speed and lower computational complexity.Its overall system utility reaches 37% when constrained by a delay of 700 ms.
Key words: Monte Carlo Tree Search(MCTS)    video content understanding    computing offloading decision    edge computing    Internet of vehicles    

开放科学(资源服务)标志码(OSID):

0 概述

目前,多数车辆上都安装了摄像头,用以采集海量的视频数据,这些视频数据可以帮助车辆感知周围的环境信息,也可以通过对视频数据进行分析从而完成车辆轨迹预测、协作驾驶、车辆检测与跟踪、VR(Virtual Reality)、AR(Augmented Reality)等业务[1]。视觉传感器能够为智能车辆提供最主要的信息,视觉感知不仅是环境感知与建模的基础,也是实现SLAM(Simultaneous Localization and Mapping)的有力保障。此外,视觉传感器因其检测信息量大、可完成多类别任务、价格低廉等优势而受到用户的青睐,视觉感知逐渐成为环境感知与建模最主要的发展方向[2]。视频信号以一种高度间接的方式包含相关信息,且视觉感知需要复杂的机器视觉和图像理解技术,因此,对视频内容进行理解具有重要的现实意义[3]

视频内容理解任务是计算密集型任务,车辆端计算能力受限使得必须将视频卸载到边缘服务器或云服务器中进行处理,然后将分析结果返回车辆端。目前,计算卸载的优化目标主要包括设备能耗[4]、时延以及用户体验质量(Quality of Experience,QoE)[5-6],指导方式主要基于服务质量(Quality of Service,QoS)以及用户体验质量[7-8],而并未优化视频内容理解的精度。

在车联网计算卸载决策算法的研究中:文献[9]采用基于Lyapunov优化的动态计算卸载决策与资源分配联合优化方法,其能够最大化系统效用;文献[10]考虑联合车辆、多计算卸载节点、多任务场景下的计算卸载决策问题,设计基于改进遗传算法与贪心策略的近似求解方法,该方法可以满足用户对于效用的需求;文献[11]设计一种车联网场景下基于内容感知分类的卸载决策算法,其利用拉格朗日松弛法将构造的非凸问题转化为凸问题,结合次梯度投影法和贪婪算法获得系统的最优解;文献[7]采用车联网场景下基于MEC(Mobile Edge Computing)的LTE-V网络,定性分析各种车辆通信模式对任务卸载性能的影响,采用Q-learning的方法,提出一种在给定时延约束下以卸载系统效用最大化为优化目标的MEC服务器确定和传输模式选择方案。上述算法虽然能够在一定程度上对系统的整体效用进行优化,但是在任务量较大时存在复杂度过高以及收敛速度较慢的问题。

为了能够更好地提取视频内容信息,并使卸载后的视频中包含更多的有效信息,本文考虑在车辆端利用关键帧的提取来预处理视频内容,根据处理结果进行计算卸载决策,以优化计算卸载决策系统的视频内容理解精度与系统效用。具体地,本文提出一种内容驱动的QoC计算卸载指导方式,通过对所采集视频进行基于关键帧的预处理,使得更重要的任务获得更优的计算资源以及MEC,进而提高视频内容理解任务的整体精度。同时,提出一种基于改进蒙特卡洛树搜索(Monte Carlo Tree Search,MCTS)的计算卸载决策算法,并引入深度神经网络(Deep Neural Network,DNN)预训练先验转移概率,以提升算法的收敛速度并降低计算复杂度。

1 系统模型 1.1 车联网计算卸载场景

本文采用的车联网计算卸载场景如图 1所示,其由车辆端、路边单元RSU、多个MEC以及集中的云计算平台组成:车辆端负责视频信息的采集与预处理以及部分任务的计算,对于需要卸载的任务,通过无线通信链路将视频数据进行卸载;路边单元负责其覆盖范围内的车辆计算卸载决策,并在接收到任务后按照一定的卸载决策将视频分析业务经过有线传输的方式传输到边缘服务器或相应的云服务器中,在服务器处理后将结果回传到车辆端;MEC与云数据平台负责提供计算资源以对任务进行处理。由于单个MEC服务器在为大量卸载用户提供服务时可能超载,因此本文引导一些用户从MEC服务器卸载到相邻服务器,以减轻该服务器的负担[12]

Download:
图 1 车联网计算卸载场景 Fig. 1 Internet of vehicles computing offloading scenario

为了简化问题,本文视频分析业务无论是在MEC服务器上执行还是在车辆端进行处理,所需要的计算资源始终不变,并且假设每个视频分析业务不能被拆分成多个子任务上传到多个MEC服务器进行处理,因此,单个视频内容理解任务在处理过程中只能选择在本地或上传到某个边缘服务器中进行处理。

1.2 时延模型

在车联网环境下,视频内容理解任务的处理时延$ {T}_{n}^{e} $主要分为2个部分[13],即计算卸载过程中的时延$ {T}_{n, t}^{e} $以及服务器计算过程中产生的时延$ {T}_{n, c}^{e} $

$ {T}_{n}^{e}={T}_{n, t}^{e}+{T}_{n, c}^{e}=\frac{{B}_{n}}{\overline{{R}_{\mathrm{u}\mathrm{p}}}}+\frac{{D}_{n}}{{f}_{n}^{e}} $ (1)

其中:$ {D}_{n} $表示边缘服务器处理的任务数据量;$ {f}_{n}^{e} $表示边缘服务器的处理频率;$ {B}_{n} $为需要传输的视频内容理解任务数据量;$ \overline{{R}_{\mathrm{u}\mathrm{p}}} $为上传过程中的平均传输速率。

在车联网环境下,上传过程中的速率随着车辆与RSU之间的位置关系而不断变化,本文假设车辆在行进过程中的到达率满足泊松分布,用$ {v}_{i} $来表示,车辆的移动性使得车辆与RSU之间的距离在逐渐变化,变化规律为:

$ d=\sqrt{{l}^{2}+{\left(\frac{r}{2}-{v}_{i}t\right)}^{2}} $ (2)

其中:$ l $表示车辆水平行驶过程中RSU服务器与行驶水平线之间的垂直距离;$ r $表示路边服务器RSU的覆盖范围。车辆和RSU之间的通信方式为LTE-V2I的直连无线通信,通信链路是平坦型快衰落的瑞利信道[14],因此,根据香农公式,车辆在某一时刻的传输速率为:

$ {R}_{\mathrm{u}\mathrm{p}}=B\; \mathrm{l}\mathrm{b}\left(1+\frac{{P}_{v}{d}^{-\delta }{h}^{2}}{{\sigma }^{2}}\right) $ (3)

其中:$ B $表示上行传输信道带宽;$ {P}_{v} $表示车辆通信设备的发射功率;$ {d}^{-\delta } $表示车辆与RSU之间的路径损耗;$ d $表示车辆与RSU覆盖范围中心之间的距离;$ \delta $表示路径损耗因子[14]$ h $表示上行链路的信道衰落因子;$ {\sigma }^{2} $为高斯白噪声功率。为了对问题进行简化,本文采用平均传输速率来代替变化的传输速率:

$ \overline{{R}_{\mathrm{u}\mathrm{p}}}=\frac{\underset{0}{\overset{{t}_{i}}{\int }}{R}_{\mathrm{u}\mathrm{p}}\left(t\right)\mathrm{d}t}{{t}_{i}} $ (4)

其中:$ {t}_{i} $为车辆通过RSU的时间。

1.3 能耗模型

计算卸载系统的运行能耗分为2个部分:一部分为边缘节点在通信过程中的能耗,其与传输功率有关;另一部分为计算过程中产生的能耗,其与分配的计算资源成二次相关[15]。因此,边缘服务器的能耗$ {e}_{n}^{e} $的计算公式如下:

$ {e}_{n}^{e}=\xi {T}_{n}{U}_{c}\left({H}_{n}^{2}\right) $ (5)

其中:$ \xi $为芯片结构的有效电容系数;$ {H}_{n} $为当前可用计算资源;$ {U}_{c} $为单位比特数据量需要的计算周期;$ {T}_{n} $为视频内容理解任务量。

视频内容理解任务卸载到边缘节点时的传输能耗与传输速率成正比,如下:

$ {e}_{n}^{\mathrm{t}\mathrm{r}\mathrm{a}}={p}_{n}\overline{{R}_{\mathrm{u}\mathrm{p}}} $ (6)

其中:$ {p}_{n} $为传输功率。因此,视频内容理解任务计算卸载的总能耗为:

$ {E}_{n}={e}_{n}^{e}+{e}_{n}^{\mathrm{t}\mathrm{r}\mathrm{a}} $ (7)
2 优化问题构建 2.1 车联网计算卸载场景

视频内容理解任务的精度一方面受到视频处理算法的影响,另一方面也会受到边缘服务器状态的影响。本文主要考虑边缘服务器的状态对视频内容理解任务的影响,以使得不同的视频内容理解任务在不同的算法下都能获得较高的收益。边缘服务器的状态分为边缘服务器硬件的可靠性和边缘服务器的运行状态2个部分。

目前,视频内容理解任务主要基于DNN进行训练和推理,为了衡量边缘服务器基于DNN训练时硬件的有效性,文献[16]指出需要考虑的指标包括片外带宽(Off-chip Bandwidth,OB)、区域效率(Area Efficiency,AE)、吞吐量(Throughput,TH):OB包括每个非零MAC的访问和MAC的位宽区域效率;AE考虑内存(寄存器或SRAM)的尺寸、类型以及控制逻辑的量;TH分析多种DNN的运行时间,以考虑映射和内存带宽的影响,其能提供比峰值吞吐量更有效且信息更丰富的指标。由于DNN硬件性能对于服务器而言是静态的,为了能够表示这些因素对视频内容理解精度的影响,本文参考文献[17]中的基础量化指标,量化DNN训练模型的硬件性能,通过DNN拟合的方法获得拟合曲线$ H({h}_{\mathrm{o}\mathrm{p}}, {m}_{\mathrm{a}\mathrm{e}}, {n}_{\mathrm{t}\mathrm{h}}) $并作为指导,其中,$ H({h}_{\mathrm{o}\mathrm{p}}, {m}_{\mathrm{a}\mathrm{e}}, {n}_{\mathrm{t}\mathrm{h}}) $表示每比特视频内容理解任务在当前边缘服务器下DNN训练模型的量化精度。

为了衡量边缘服务器的运行状态,文献[18]主要考虑的指标包括服务器当前计算资源的可用量大小、边缘服务器的最大可用线程数与总线程数。其中,服务器的可用计算资源量可以通过CPU的转数来进行量化,服务器的可用线程数与总线程数可以通过服务器的动态监控来获得。由于在本文中各个任务的计算所需资源大小固定,因此在考虑服务器状态时,将计算资源的量作为约束条件,在考虑服务器并发线程数的影响时,服务器状态用$ {S}_{t} $来表示,由于并发线程数的影响符合边际减弱效用,因此本文采用对数构造法,其简化形式为:

$ {S}_{t}=\mathrm{l}\mathrm{b}(1+N) $ (8)

其中:$ N $表示服务器的并发线程数;$ \mathrm{l}\mathrm{b}(1+N) $表示边缘服务器运行状态的量化影响。

由于服务器硬件状态$ {S}_{t} $与服务器运行状态$ {T}_{n} $均能影响视频内容理解任务的最终精度,因此在考虑精度效用时,本文选择将2种没有耦合性的因素相乘作为计算卸载目标服务器的选择效用系数[15],再与视频内容理解任务的数据量$ {T}_{n} $相乘作为最终的计算卸载服务器选择产生的效用,即:

$ {Q}_{n}^{e}={S}_{t}H{T}_{n}=\mathrm{l}\mathrm{b}(1+N)H({h}_{\mathrm{o}\mathrm{p}}, {m}_{\mathrm{a}\mathrm{e}}, {n}_{\mathrm{t}\mathrm{h}}){T}_{n} $ (9)
2.2 优化目标

视频内容理解任务卸载决策的主要目标是决定视频内容理解任务卸载到当前车辆RSU的哪一个可用边缘服务器。本文中计算卸载决策的变量主要为卸载决策矩阵$ \mathit{\boldsymbol{J}} $,卸载决策$ {J}_{n, m}=1 $表示任务$ n $卸载到边缘服务器$ m $

为了能够在视频内容理解任务的时延要求下最大化最终视频内容理解精度并减少相应的能耗,在考虑计算卸载决策的系统效用时,本文针对计算密集型视频内容理解任务,将系统效用函数描述为能耗效用和计算卸载服务器选择效用的加权和[19],如下:

$ {U}_{n}^{e}=\alpha {E}_{n}^{e}+\beta {Q}_{n}^{e} $ (10)

其中:αβ分别表示能耗与精度2种效用的权衡因子,取值范围在0~1之间,并且满足$ \alpha +\beta =1 $,两者的具体取值根据不同场景对能耗和精度的侧重以及不同类型的任务而变化。参考文献[20],为了权衡能耗和精度的影响,本文$ \alpha $$ \beta $均取0.5。

为提高最终的视频内容理解精度,本文的优化目标为所有任务的计算卸载平均效用最大化:

$ {U}_{\mathrm{a}\mathrm{v}\mathrm{e}\mathrm{r}\mathrm{a}\mathrm{g}\mathrm{e}}=\frac{1}{N}\mathrm{m}\mathrm{a}\mathrm{x}\left(\sum\limits _{n=1}^{N}{U}_{n}{\lambda }_{n}\right) $ (11)

其中:$ {U}_{\mathrm{a}\mathrm{v}\mathrm{e}\mathrm{r}\mathrm{a}\mathrm{g}\mathrm{e}} $表示视频内容理解任务的平均效用。约束条件如下:

$ \begin{array}{l}\mathrm{s}.\mathrm{t}.{\mathrm{C}}_{1}:{a}_{ij}=\left\{\mathrm{0, 1}\right\}, \forall i\in D, \forall j\in C, j=r\mathrm{或}j=v\\ \;\;\;\;\;\;{\mathrm{C}}_{2}:{D}_{n}^{e}J\le {A}_{m}, 1\le m\le M\\ \;\;\;\;\;\;{\mathrm{C}}_{3}:{T}_{n}^{e}={T}_{n, t}^{e}+{T}_{n, c}^{e}\le {t}_{n}, \forall n\in (1, N)\\ \;\;\;\;\;\;{\mathrm{C}}_{4}:{E}_{n}\le {E}_{\mathrm{m}\mathrm{a}\mathrm{x}}, \forall n\in (1, N)\\ \;\;\;\;\;\;{\mathrm{C}}_{5}:{\lambda }_{n}\le {\lambda }_{\mathrm{m}\mathrm{a}\mathrm{x}}, \forall n\in (1, N)\end{array} $

其中:$ {\mathrm{C}}_{1} $为任务与边缘节点的卸载关系;$ {a}_{ij}=1 $表示视频内容理解任务$ i $可以卸载到边缘服务器$ j $$ {a}_{ij}=0 $表示无法将视频内容理解任务$ i $卸载到边缘服务器$ j $$ {\mathrm{C}}_{2} $为计算资源的相关限制,视频内容分析业务无法卸载到计算资源已经不足的边缘服务器上;$ {\mathrm{C}}_{3} $为计算卸载的总处理时延,其不能大于任务的时延要求;$ {\mathrm{C}}_{4} $为完成视频内容理解任务计算卸载的总能耗,其不能大于任务卸载过程中的能耗限制;$ {\mathrm{C}}_{5} $为车辆传输丢包率,其不能大于最大丢包率$ {\lambda }_{\mathrm{m}\mathrm{a}\mathrm{x}} $

上述所提计算卸载决策优化问题包含了整数类型的参数,因此,可以将该问题转化为混合整数线性规划问题。该问题的最优解需要涉及海量的状态决策,MCTS作为强化学习的一种算法,可以对多种状态下的动作进行选择,当系统的状态数和动作数较多时,能够高效地进行决策,因此,本文选用改进的MCTS算法作为计算卸载决策算法。

3 基于改进MCTS的计算卸载决策算法

相较于目前的强化学习方法,基于MCTS的计算卸载决策算法在状态选择时更高效,且本文在MCTS中引入上限置信区间(UCB)算法[21],其可以在探索-利用(exploration-exploitation)之间取得平衡,是一种较为成功的策略学习方法。目前的强化学习算法需要进行大量的训练才可以得到较优的决策,并且需要大量的采样,而基于MCTS的算法可以高效地进行相应的决策。

本文基于MCTS的计算卸载决策算法包括4个过程,即选择、扩展、评估、反向传播:首先,构建MCTS决策搜索树,以环境状态$ {Q}_{0} $作为MCTS的输入,$ {Q}_{0} $包含计算卸载任务集合T与边缘服务器资源占用情况集合$ E $T包括视频内容理解任务帧率、数据量大小以及处理时延,$ E $包括边缘服务器的可用计算资源量以及当前的可用线程总数;然后,重复执行展开和选择过程,直到搜索到达叶节点,从根节点到叶节点所选择的路径代表N个视频内容理解任务的卸载决策$ {A}_{0:N-1} $,其中,叶节点是尚未搜索的边缘服务器节点;接着,车辆根据卸载决策$ {A}_{0:N-1} $对视频内容分析任务进行卸载,当所有任务完成时,将计算卸载效用值作为奖励信号$ \gamma $返回到MCTS模块,以测量动作的执行情况[22];最后,MCTS备份奖励$ \gamma $以更新搜索策略。MCTS可以构建具有一定数量且迭代的完整蒙特卡洛树,经过一定次数的迭代,从中可以提取最佳策略作为最佳决策动作$ {A}_{0:N-1} $。基于MCTS的计算卸载决策算法流程如图 2所示。

Download:
图 2 基于MCTS的计算卸载决策算法流程 Fig. 2 Procedure of MCTS based computing offloading decision algorithm

基于MCTS的计算卸载决策算法描述如算法1所示。

算法1    基于MCTS的计算卸载决策算法

输入    计算卸载任务集合T,服务器状态集合E

输出    计算卸载决策结果矩阵$ \mathit{\boldsymbol{A}} $

1.function search(T,E)

2.create a root node $ {\mathrm{v}}_{0} $ with State $ {\mathrm{S}}_{0} $=(T,E)

3.while in max budget:

4.$ {\mathrm{v}}_{\mathrm{L}}, \mathrm{\gamma }=\mathrm{T}\mathrm{r}\mathrm{e}\mathrm{e}\mathrm{P}\mathrm{o}\mathrm{l}\mathrm{i}\mathrm{c}\mathrm{y}({\mathrm{v}}_{0}, {\mathrm{S}}_{0}) $

5.Backup($ {\mathrm{v}}_{\mathrm{L}}, \mathrm{\gamma } $

6.Get result A and $ \mathrm{\eta } $ from search

7.end while

8.return A and $ \mathrm{\eta } $

9.end function

10.function UpdatePolicy($ {\mathrm{v}}_{\mathrm{i}}, {\mathrm{S}}_{\mathrm{i}} $

11.if $ {\mathrm{v}}_{\mathrm{i}} $ is the end node:

12.Get A from $ {\mathrm{v}}_{0}, {\mathrm{v}}_{1}, ... $

13.Get reward $ \mathrm{\gamma } $ from A

14.return $ \mathrm{\gamma } $

15.if $ {\mathrm{v}}_{\mathrm{i}} $ is not the end node:

16.search all the other nodes $ {\mathrm{v}}_{\mathrm{i}}^{\mathrm{{'}}} $ based on $ \mathrm{p} $

17.UpdatePolicy($ {\mathrm{v}}_{\mathrm{i}}^{\mathrm{{'}}} $$ {\mathrm{s}}_{\mathrm{i}}^{\mathrm{{'}}} $

18.else

19.Select best child $ {\mathrm{v}}_{\mathrm{i}+1} $ on

20.updating $ {\mathrm{s}}_{\mathrm{i}} $ to $ {\mathrm{s}}_{\mathrm{i}+1} $ based on $ {\mathrm{v}}_{\mathrm{i}+1} $

21.UpdatePolicy($ {\mathrm{v}}_{\mathrm{i}+1} $$ {\mathrm{s}}_{\mathrm{i}+1} $

22.end function

23.function Backup($ {\mathrm{v}}_{\mathrm{L}}, \mathrm{\gamma } $

24.while $ \mathrm{v}\ne \mathrm{N}\mathrm{U}\mathrm{L}\mathrm{L} $

25.$ \mathrm{N}\left(\mathrm{v}\right)\leftarrow \mathrm{N}\left(\mathrm{v}\right)+1 $

26.$ \mathrm{M}\left(\mathrm{v}\right)\leftarrow \mathrm{M}\left(\mathrm{v}\right)+\mathrm{\gamma } $

27.end while

28.end function

首先,在Search函数中,将MCTS节点表示为$ v $,将节点状态表示为$ s $$ {v}_{0} $为初始系统状态,表示节点v的内部信息;环境状态$ {S}_{0} $是MCTS的输入,定义为$ {S}_{0}=\left(T, E\right) $。利用DNN生成的先验概率为$ p\left({v}_{0}^{{'}}\mid {s}_{0}\right) $,通过UpdatePolicy函数充分展开节点$ {v}_{0} $的子节点$ {v}_{0}^{{'}} $。随后,再次调用UpdatePolicy函数,根据式(12)从节点$ {v}_{0}^{{'}} $及其子节点中选择最佳卸载节点$ {v}_{1} $

$ {v}_{i+1}\leftarrow \underset{{v}_{i}^{{'}}}{\mathrm{a}\mathrm{r}\mathrm{g}\mathrm{m}\mathrm{a}\mathrm{x}}\left(\frac{M\left({v}_{i}^{{'}}\right)}{N\left({v}_{i}^{{'}}\right)}+C\cdot p\left({v}_{i}^{{'}}\left|{s}_{i}\right.\right)\sqrt{\frac{2\cdot \mathrm{l}\mathrm{n}\left(N\right({v}_{i}\left)\right)}{N\left({v}_{i}^{{'}}\right)}}\right) $ (12)

其中:$ M\left({v}_{i}\right) $是节点$ {v}_{i} $的累积奖励值;$ N\left({v}_{i}\right) $表示节点$ {v}_{i} $的访问次数;$ C $为比例因子,通过改变$ C $的值,可以改变搜索和决策MCTS的可能性。UpdatePolicy($ {v}_{i}, {M}_{i} $)函数将状态变化扩展到所有的可用节点,生成一组动作$ A $和相应的评估$ \gamma $,通过对评估值进行评价可以选择相应的动作,MCTS通过更新评估的累积奖励$ M\left(v\right) $和访问次数$ N\left(v\right) $来更新搜索策略。使用UpdatePolicy($ {v}_{i}, {M}_{i} $)函数,利用由DNN生成的先验概率$ p\left({v}_{0}\left|{s}_{0}\right.\right) $在节点$ {v}_{0} $的子节点中选择最优的节点$ {v}_{i} $进行扩展。通过Backup函数中的回溯,对$ M\left({v}_{i}\right) $$ N\left({v}_{i}\right) $进行更新:

$ N\left({v}_{i}\right)\leftarrow N\left({v}_{i}\right)+1 $
$ M\left({v}_{i}\right)\leftarrow M\left({v}_{i}\right)+\gamma $ (13)

其中:$ \gamma $表示选择节点$ {v}_{i} $作为计算卸载决策目标的效用值$ {U}_{i}({D}_{n}, {Q}_{n}^{l}) $。在效用最大化后,可以从树中得到状态空间的最佳动作$ {A}_{0:N-1} $以及空间的概率分布$ \pi =\left\{\pi \left({A}_{n}^{S}\mid {S}_{n}\right)\right\} $。其中,$ {A}_{n}^{S} $是任务$ n $状态$ {S}_{n} $的一组可行动作。为了加快MCTS的收敛速度,本文选用DNN对先验概率进行预训练[23],其中,位于第$ i $层的神经网络节点$ {v}_{i}={v}_{(n\cdot q+m)} $表示任务$ {T}_{n} $在MCTS中的第$ m $个子决策,任务$ {T}_{n} $对应的$ {A}_{n}=\left\{{a}_{n, m}\right\} $。边缘服务器状态变量$ {S}_{l}=\left({T}_{n}, {E}_{n}\right) $存储在MCTS树的$ {s}_{i}={s}_{(n\cdot q+m)} $,因此,所有子节点的先验概率为:

$ \left\{p\left({v}_{i}^{{'}}\mid {s}_{i}\right)\right\}=\left\{p\left({v}_{(n\cdot q+m)}^{{'}}\mid {s}_{(n\cdot q+m)}\right)\right\}=p\left({\mathit{\boldsymbol{a}}}_{n, m}^{s}\mid {S}_{n}\right) $ (14)

其中:$ {\mathit{\boldsymbol{a}}}_{n, m}^{s} $表示子动作$ {a}_{n, m} $的可行动作集合;$ p\left({\mathit{\boldsymbol{a}}}_{n, m}^{s}\mid {S}_{n}\right) $为DNN输出子动作的先验概率。

DNN以服务器状态以及卸载决策为输入,输出每个状态对应的子动作的先验概率。输入层包含2个神经元,输出层包含$ n $个神经元,隐藏层包含若干个神经元。一个输入层、$ l $个共享隐藏层以及$ q $个子层来生成每个子动作的可能性。每一个子层由$ m $个子隐藏层及其对应的输出层组成。

在训练阶段,DNN从MCTS中的输出状态空间$ \pi =\left\{\pi \left({A}_{n}^{S}\mid {S}_{n}\right)\right\} $的数据集中随机提取训练数据[24],损失函数定义如下:

$ {L}_{l}\left(\theta \right)=-\pi \left({A}_{n}^{S}\mid {S}_{n}\right)\mathrm{l}\mathrm{o}{\mathrm{g}}_{\mathrm{a}}p\left({A}_{n}^{S}\mid {S}_{n}\right)+\xi {‖\theta ‖}^{2} $ (15)

其中:$ \xi {‖\theta ‖}^{2} $为避免过度学习而采用的正则化。

4 性能仿真

本文通过Matlab工具来构建车联网环境下计算卸载系统的仿真环境,并验证基于改进MCTS的计算卸载决策算法的性能。

4.1 仿真环境

为了模拟车联网环境下的计算卸载场景,本文设定RSU的覆盖范围为$ r=1\mathrm{ }000\mathrm{ }\mathrm{m} $,车辆的行驶速度设定为$ v=40\mathrm{ }\mathrm{k}\mathrm{m}/\mathrm{h} $且匀速运动,任意车辆$ i $产生的视频内容理解任务$ {N}_{i} $不超过30个,每个视频内容理解任务包含300~1 000帧的视频,每个任务的时延要求为$ {t}_{i}\in (100\mathrm{ }\mathrm{m}\mathrm{s}, 2\mathrm{ }000\mathrm{ }\mathrm{m}\mathrm{s}) $

在通信模型中,车辆发射功率为26$ \mathrm{d}\mathrm{B}\mathrm{m} $,近地参考距离为$ d=5\mathrm{ }\mathrm{m} $,路径损失指数$ \delta =4 $。车联网无线通信的小尺度衰落模型借鉴文献[25]所提的零均值复高斯随机信道,其中,高斯白噪声功率为-174 dBm。车联网计算卸载场景下系统的总带宽为$ B $=10 $ \mathrm{M}\mathrm{H}\mathrm{z} $,丢包率上限$ {\lambda }_{\mathrm{m}\mathrm{a}\mathrm{x}} $为0.01,传输的能耗限制$ {E}_{\mathrm{m}\mathrm{a}\mathrm{x}} $为10 $ \mathrm{k}\mathrm{J}/\mathrm{m}\mathrm{s} $。在计算模型中,每比特视频内容理解任务所需的计算次数为1 000,每个RSU和车辆搭载多核CPU处理器,假设单核CPU的频率为2.5 GHz[26],计算调频因子$ \xi ={10}^{-28} $[27],各服务器的并发线程数分别为1、2、5、10,各服务器的计算资源占用情况随机设置,其中,系统的总任务量为10~100,每个任务的数据计算量平均为$ {T}_{i}= $3 $ \mathrm{M}\mathrm{b} $

4.2 视频预处理与计算卸载决策性能分析

首先对视频进行预处理,采用的仿真视频为加州理工大学行人数据集(Caltech Pedestrian Dataset)[28],通过对不同视频段中2帧图像进行差分,得到图像的平均像素强度,以衡量2帧图像的变化大小。随着视频帧的不断变化,帧间差值发生改变,在选取关键帧时,应当使得关键帧的选取具有代表性,不过分密集和稀疏,并将关键帧的帧率作为衡量视频内容信息重要程度的指标。表 1所示为节选出的视频片段的预处理结果。

下载CSV 表 1 视频预处理结果 Table 1 Video preprocessing results

本次实验选用行人目标识别场景,通过行人识别数量来衡量视频内容理解的精度。

图 3所示为时延约束下各指导方式的视频内容理解任务计算卸载平均效用对比。从图 3可以看出:随着时延约束的提高,3种指导方式下计算卸载平均效用均不断提高,而QoC指导方式下的系统总效用相较于QoE[29]与QoS[30]更高,在时延约束为$ 700\mathrm{ }\mathrm{m}\mathrm{s} $时约为37%。

Download:
图 3 时延约束下不同指导方式的系统效用对比 Fig. 3 Comparison of system effectiveness of different guidance modes under time delay constraints

图 4所示为不同时延约束下各指导方式的视频内容理解任务平均精度对比。从图 4可以看出,随着时延约束的提高,视频内容理解平均精度不断提高,在时延约束为$ 700\mathrm{ }\mathrm{m}\mathrm{s} $时,相较于QoS和QoE这2种计算卸载指导方式,QoC指导方式下的视频内容理解精度分别约提升5%和15%。

Download:
图 4 时延约束下不同指导方式的视频内容理解精度对比 Fig. 4 Comparison of video content understanding accuracy of different guidance modes under time delay constraints

图 5可以看出:基于Q-learning的计算卸载决策算法[7]在迭代50次时收敛,而本文算法在迭代40次时收敛,且本文算法的最终系统效用高于基于Q-learning的算法,提升约10%;本文算法的收敛速度明显大于基于模拟退火的算法,收敛速度提升约60%。因此,本文基于改进MCTS的计算卸载决策算法具有较好的收敛性并且在收敛后任务平均效用更高。

Download:
图 5 不同计算卸载决策算法的系统效用与收敛性对比 Fig. 5 Comparison of system utility and convergence of different computing offloading decision algorithms

图 6所示为任务数对视频内容理解任务能耗的影响情况,从图 6可以看出:随着任务数的不断增加,基于Q-learning的算法与本文算法的系统能耗均逐渐提升,在达到一定的任务数后,能耗增加趋于平缓,并且随着任务数的提升,由于计算资源的限制,能耗再次快速上升,在任务数大于120后,本文算法的能耗低于基于Q-learning的算法,在任务数为200时,降低约16%;基于模拟退火算法的计算卸载能耗随着任务数的提升而逐渐平稳上升,其能耗明显高于本文算法。

Download:
图 6 任务数对视频内容理解任务能耗的影响 Fig. 6 Effect of task number on energy consumption of video content understanding tasks

图 7所示为任务数对视频内容理解任务系统效用的影响情况,其中,MEC服务器的数量$ N $为10,每个任务的任务量大小$ {B}_{i} $为3 Mb。从图 7可以看出:随着任务数的增加,本文算法的卸载策略系统效用的下降幅度远小于基于Q-learning的算法以及传统搜索算法;基于Q-learning的卸载策略在任务数小于100时与本文算法的系统效用相差不大,但当任务数大于160后,基于Q-learning的算法系统效用迅速下降,远低于本文算法;基于模拟退火的传统搜索算法的卸载决策系统效用则一直低于本文算法。

Download:
图 7 任务数对视频内容理解任务系统效用的影响 Fig. 7 Effect of task number on system utility of video content understanding tasks
5 结束语

本文分析不同视频内容理解任务的优先级,根据任务内容以及服务器状态构建视频内容理解任务的效用函数,在此基础上,设计一种基于蒙特卡洛树搜索的计算卸载决策算法。实验结果表明,该算法能够在有限次的迭代后收敛,并在时延与能耗的约束下获得较优的系统效用,符合目前车联网场景对视频内容理解任务精度的需求。下一步将考虑通信资源的动态变化以及车联网场景下卸载方式的变化情况,采用DDPG等更适用于动态变化环境的深度强化学习方法,通过联合优化通信资源与缓存资源,以设计性能更优的视频内容理解任务计算卸载决策算法。

参考文献
[1]
RANFT B, STILLER C. The role of machine vision for intelligent vehicles[J]. IEEE Transactions on Intelligent Vehicles, 2016, 9: 8-19.
[2]
梁敏健. 智能车行车环境视觉感知关键技术研究[D]. 西安: 长安大学, 2017.
LIANG M J. Research on key technologies of visual perception of intelligent vehicle driving environment[D]. Xi'an: Chang'an University, 2017. (in Chinese)
[3]
CAGLIERO L, CANALE L, FARINETTI L. VISA: a supervised approach to indexing video lectures with semantic annotations[C]//Proceedings of 2019 IEEE Annual Computer Software and Applications Conference. Washington D.C., USA: IEEE Press, 2019: 226-235.
[4]
LIU X. A geographic opportunistic forwarding strategy for vehicular named data networking[M]. Berlin, Germany: Springer, 2016.
[5]
SHANG L, WANG X, WANG P, et al. Computation offloading management in vehicular edge network under imperfect CSI[C]//Proceedings of 2019 IEEE International Conference on Information Communication and Signal Processing. Washington D.C., USA: IEEE Press, 2019: 199-203.
[6]
GU B, ZHOU Z. Task offloading in vehicular mobile edge computing: a matching-theoretic framework[J]. Vehicular Technology Magazine, 2019, 14(3): 100-106. DOI:10.1109/MVT.2019.2902637
[7]
ZHANG K, ZHU Y, LING S, et al. Deep learning embowered task off-roading for mobile edge computing in urban information[J]. IEEE Internet of Things Journal, 2019, 6(5): 7635-7647. DOI:10.1109/JIOT.2019.2903191
[8]
CAO H, CAI J. Distributed multiuser computation offlooding for cludlet-based mobile computing: agame-theoretic machine leading approach[J]. IEEE Transactions on Vehicular Technology, 2017, 67(1): 752-764.
[9]
吕灵灵, 杨志鹏, 张磊. 基于合约设计的移动边缘计算任务卸载策略研究[J]. 控制与决策, 2019, 34(11): 97-105.
LÜ L L, YANG Z P, ZHANG L. Control theory based task offlooding stratage of mobile edge computing[J]. Control and Decision, 2019, 34(11): 97-105. (in Chinese)
[10]
HUANG X, XU K, LAI C, et al. Energy-efficient offloading decision-making for mobile edge computing in vehicular networks[J]. EURASIP Journal on Wireless Communi-cations and Networking, 2020(1): 35-39. DOI:10.1186/s13638-020-1652-5
[11]
赵海涛, 朱银阳, 丁仪, 等. 车联网中基于移动边缘计算的内容感知分类卸载算法研究[J]. 电子与信息学报, 2020, 42(1): 20-27.
ZHAO H T, ZHU Y Y, DING Y, et al. Research on content-aware classification offloading algorithm based on mobile edge calculation in the Internet of vehicles[J]. Journal of Electronics and Information Technology, 2020, 42(1): 20-27. (in Chinese)
[12]
LUO G Y, YUAN Q, ZHOU H B, et al. Cooperative vehicular content distribution in edge computing assisted 5G-VANET[J]. China Communications, 2018, 15(7): 1-17. DOI:10.1109/CC.2018.8424578
[13]
TAO X Y, OTA K, DONG M X, et al. Performance guaranteed computation offloading for mobile-edge cloud computing[J]. IEEE Wireless Communications Letters, 2017, 6(6): 774-777. DOI:10.1109/LWC.2017.2740927
[14]
MACHARDY Z, KHAN A, OBANA K, et al. V2X access technologies: regulation, research, and remaining challenges[J]. IEEE Communications Surveys & Tutorials, 2018, 20(3): 1858-1877.
[15]
SZE V, CHEN Y H, YANG T J, et al. Efficient processing of deep neural networks: a tutorial and survey[J]. Proceedings of the IEEE, 2017, 105(12): 2295-2329. DOI:10.1109/JPROC.2017.2761740
[16]
CHEN Y H, KRISHNA T, EMER J S, et al. Eyeriss: an energy-efficient reconfigurable accelerator for deep convolutional neural networks[EB/OL]. [2020-10-05]. https://www.rle.mit.edu/eems/wp-content/uploads/2016/02/eyeriss_isscc_2016.pdf.
[17]
JU M, JUNG H, CHE H. A performance analysis methodology for multicore, multithreaded processors[J]. IEEE Transactions on Computers, 2014, 63(2): 276-289. DOI:10.1109/TC.2012.223
[18]
张海波, 栾秋季, 朱江, 等. 车辆异构网中基于移动边缘计算的任务卸载与资源分配[J]. 物联网学报, 2018, 2(3): 36-43.
ZHANG H B, LUAN Q J, ZHU J, et al. Task unloading and resource allocation based on moving edge computing in heterogeneous vehicle networks[J]. Journal of Internet of Things, 2018, 2(3): 36-43. (in Chinese)
[19]
MAO Y, ZHANG J, LETAIEF K B. Dynamic computation offloading for mobile-edge computing with energe harvesting procedures[J]. IEEE Journal on Selected Areas in Communications, 2016, 34(12): 3590-3605. DOI:10.1109/JSAC.2016.2611964
[20]
HUANG X, XU K, LAI C, et al. Energy-efficient offloading decision-making for mobile edge computing in vehicular networks[EB/OL]. [2020-10-05]. https://jwcn-eurasipjournals.springeropen.com/track/pdf/10.1186/s13638-020-1652-5.pdf.
[21]
HUANG W, RIBEIRO A R. Hierarchical clustering given confidence intervals of metric distances[J]. IEEE Transactions on Signal Processing, 2018, 8: 2600-2615.
[22]
CHASLOT G M, WINANDS M H, HERIK H J. Parallel Monte-Carlo tree search[EB/OL]. [2020-10-05]. https://dke.maastrichtuniversity.nl/m.winands/documents/multithreadedMCTS2.pdf.
[23]
LIM E J, AHN S Y, WAN C. Accelerating training of DNN in distributed machine learning system with shared memory[C]//Proceedings of 2017 International Conference on Information and Communication Technology. Washington D.C., USA: IEEE Press, 2017: 1209-1212.
[24]
HUANG Y, SONG R, XU K, et al. Deep learning based inverse scattering with structural similarity loss functions[J]. IEEE Sensors Journal, 2021, 21(4): 4900-4907. DOI:10.1109/JSEN.2020.3030321
[25]
XUE X, YAN F, PAN B, et al. Performance assessment of OPSquare data center network with elastic allocation of WDM transceivers[C]//Proceedings of 2018 International Conference on Transparent Optical Networks. Washington D.C., USA: IEEE Press, 2018: 1-4.
[26]
GU H, DONG Y, CAO T. Data driven QoE-QoS association modeling of conversational video[C]//Proceedings of 2019 IEEE Global Conference on Signal and Information Processing. Washington D.C., USA: IEEE Press, 2019: 1-4.
[27]
MIETTINEN A P, NURMINEN J K. Energy efficiency of mobile clients in cloud computing[C]//Proceedings of USENIX Conference on Hot Topics in Cloud Computing. [S. l. ]: USENIX Association, 2010: 1-7.
[28]
ZHANG S, XIE Y, WAN J, et al. WiderPerson: a diverse dataset for dense pedestrian detection in the wild[J]. IEEE Transactions on Multimedia, 2019, 22(2): 380-393.
[29]
LIU Q, ZHOU S, HUI Y. Computation offloading scheme to improve QoE in vehicular networks with mobile edge computing[C]//Proceedings of 2018 International Conference on Wireless Communications and Signal Processing. Washington D.C., USA: IEEE Press, 2018: 1-5.
[30]
RAJA G, GANAPATHISUBRAMANIYAN A, ANBALAGAN S, et al. Intelligent reward-based data offloading in next-generation vehicular networks[J]. IEEE Internet of Things Journal, 2020, 7(5): 3747-3758. DOI:10.1109/JIOT.2020.2974631