面向车联网的边缘计算服务器部署方法、装置及设备

文档序号:26899321发布日期:2021-10-09 12:59阅读:465来源:国知局
面向车联网的边缘计算服务器部署方法、装置及设备

1.本公开涉及通信技术领域,尤其涉及边缘计算服务器的部署技术。


背景技术:

2.随着移动网络的应用场景不断拓展,应用服务也日益多样化,智能终端(手机、平板电脑等)作为承载移动应用的载体,由于受到体积小、质量轻、电池有限等约束,其自身并不能满足需要生成、处理和存储大量数据以及计算增强型的应用需求。云计算由集中放置的服务器组成。移动用户可以通过计算卸载等方式将本地的任务通过核心网卸载到远程云中执行,执行的结果将再由核心网传回给用户。但远程云往往集中部署在距离用户较远的位置。在进行数据传输时,需要经由核心网,加剧了核心网的压力,对原本紧张的带宽资源提出了更高的需求。同时,远距离、多参与者的传输过程,必然会存在通信的不稳定性且导致较长的时间延迟,将进一步影响网络应用的服务质量,限制网络的发展。
3.作为云计算的补充,移动边缘计算在靠近用户的网络节点部署具有一定数量的计算、存储等资源的服务器,通过计算卸载和数据卸载等的方式,使用户可以充分利用边缘资源,强化了网络边缘的支撑力量,避免了大量数据从移动设备经由核心网至远端云的传输,缓解了核心网的带宽压力,减少了网络的不确定性和服务响应延迟,实现更好的网络服务质量。移动边缘计算(mobile edge computing,mec)服务器部署是移动边缘计算中的关键技术问题之一。与mec服务器联合部署的网络节点选择将会直接影响用户终端到mec服务器距离和服务器承载的用户任务请求数量,进而影响任务的响应时间即端到端延迟和mec服务器的能耗。
4.而车联网环境下的mce服务器部署问题,在现有技术中并没有被有针对性地提出。现有的mec服务器部署策略在面向车辆应用场景时,不能很好地贴合车辆行驶轨迹,可能会因远距离传输造成过长的时间延迟,降低车辆应用的请求成功率。


技术实现要素:

5.有鉴于此,本公开的目的在于提出一种面向车联网的边缘计算服务器部署方法。
6.基于上述目的,根据本公开的第一方面,提供了一种面向车联网的边缘计算服务器部署方法,包括:
7.获取所述车联网下待部署区域的网络接入节点的位置和预设历史时间段的历史服务请求数量;
8.基于所述网络接入节点的所述位置和所述历史服务请求数量进行初步筛选,得到候选网络节点;
9.基于粒子群优化算法对边缘计算服务器的部署和用户调度策略进行优化,得到目标数量的边缘计算服务器在所述候选网络节点中的部署结果和用户分配方法,其中,所述部署结果和用户分配方法使得所述边缘计算服务器的能耗和所提供边缘服务的端到端时延最小化。
10.可选地,所述基于所述网络接入节点的所述位置和所述历史服务请求数量进行初步筛选,得到候选网络节点,包括:
11.初始化候选网络节点的候选集合;
12.根据所述历史服务请求数量的大小顺序依次选取所述网络接入节点;
13.对于选取的每个当前所述网络接入节点,基于当前所述网络接入节点的所述位置计算当前所述网络接入节点与当前所述候选集合中各个节点元素之间的至少一个距离;
14.基于所述至少一个距离和预设距离确定当前所述网络接入节点是否为所述候选网络节点。
15.可选地,基于所述至少一个距离和预设距离确定当前所述网络接入节点是否为所述候选网络节点,包括:
16.判断所述至少一个距离中是否存在小于所述预设距离的距离;
17.响应于不存在所述距离小于所述预设距离,确定当前所述网络接入节点为所述候选网络节点。
18.可选地,基于粒子群优化算法对边缘计算服务器的部署和用户调度策略进行优化,得到目标数量的边缘计算服务器在所述候选网络节点中的部署结果,包括:
19.初始化粒子种群,得到所述粒子种群中每个所述粒子的当前局部最优解和所有粒子的当前全局最优解;其中,所述粒子的位置表示为粒子位置矩阵,所述粒子位置矩阵表示所述边缘计算服务器与所述候选网络节点的映射关系;
20.基于所述粒子的当前位置和当前速度进行迭代计算;
21.当迭代次数未达到预设次数时,
22.基于速度更新公式和位置更新公式更新所述粒子的当前位置和当前速度;
23.基于适应度函数和所述粒子的当前位置计算所述粒子的当前适应度;
24.基于所述当前适应度更新每个所述粒子的当前局部最优解和所有粒子的当前全局最优解;
25.当迭代次数达到所述预设次数时,将当前全局最优解作为所述部署结果。
26.可选地,所述初始化粒子种群包括:
27.对于每个粒子,
28.在所述候选网络节点中随机生成边缘计算服务器的部署位置;
29.基于所述部署位置划分所述候选网络节点,直至所述候选网络节点均分配至唯一的所述边缘计算服务器,得到粒子的初始位置;
30.随机初始化粒子速度,并基于所述初始化粒子速度更新所述粒子的初始位置,得到所述粒子的当前位置;
31.根据适应度函数和所述粒子的当前位置计算得到每个所述粒子的当前适应度;
32.基于所述粒子的当前适应度确定每个所述粒子的局部最优解和所有粒子的当前全局最优解。
33.可选地,所述适应度函数包括:f=ε
×
e

+(1

ε)
×
d

,其中,e

为所述边缘计算服务器所提供边缘服务的端到端时延的归一化值,d

为所述边缘计算服务器的能耗的归一化值;
34.所述速度更新公式包括:其中,表示k粒子在t次迭代时的个体最优值,表示t次迭代的全局最优值,c1、c2、c3为给定的学习步长;
35.所述位置更新公式包括:其中,表示粒子k在t次迭代时的位置,表示粒子k在t+1次迭代时的速度。
36.可选地,所述网络接入节点包括位于交叉路口的路侧单元。
37.根据本公开的第二方面,提供了一种面向车联网的边缘计算服务器部署装置,包括:
38.获取模块,用于获取所述车联网下待部署区域的网络接入节点的位置和预设历史时间段的历史服务请求数量;
39.初步筛选模块,用于基于所述网络接入节点的所述位置和所述历史服务请求数量进行初步筛选,得到候选网络节点;
40.计算模块,用于基于粒子群优化算法对边缘计算服务器的部署和用户调度策略进行优化,得到目标数量的边缘计算服务器在所述候选网络节点中的部署结果和用户分配方法,其中,所述部署结果和所述用户分配方法使得所述边缘计算服务器的能耗和所提供边缘服务的端到端时延最小化。
41.根据本公开的第三方面,提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如第一方面所述的方法。
42.根据本公开的第四方面,提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使计算机执行第一方面任一所述方法。
43.从上面所述可以看出,本公开提供的面向车联网的边缘计算服务器部署方法、装置、设备及存储介质,通过网络接入节点的历史服务请求数据,使用基于粒子群优化的边缘计算服务器部署算法,以边缘计算服务器的部署和用户调度策略为目标进行优化,从而确定更合适的边缘计算服务器部署位置和用户分配方法,以达到系统端到端时延和边缘计算服务器能量消耗最小化的优化目标。能够解决车联网大范围边缘计算服务器部署问题,在系统端到端时延和边缘计算服务器能量消耗方面都具有很好的性能优势,同时平衡了边缘服务运营商和用户的利益。
附图说明
44.为了更清楚地说明本公开或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
45.图1为根据本公开实施例的面向车联网的边缘计算服务器部署方法的示意性流程图;
46.图2为根据本公开实施例的候选网络节点的算法的示意性流程图;
47.图3为根据本公开实施例的粒子群优化算法的示意性流程图;
48.图4为根据本公开实施例的面向车联网的边缘计算服务器部署装置的示意性框图;
49.图5为根据本公开实施例的一种更为具体的电子设备硬件结构示意图。
具体实施方式
50.为使本公开的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本公开进一步详细说明。
51.需要说明的是,除非另外定义,本公开实施例使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本公开实施例中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
52.车联网环境作为5g的重要应用场景之一,丰富多样的车联网应用在时延、可靠性、数据速率等方面提出了严格的性能要求。其中,端到端延迟是道路安全、智能驾驶等应用非常重要的非功能性需求之一。如车辆编队最小端到端延迟要求为10

25ms,辅助驾驶最小端到端延迟要求为10

100ms。
53.在车联网架构中选择合适的网络接入节点部署边缘计算,可以在靠近车辆的位置为车辆提供一定数量的计算、存储和通信资源,进一步降低端到端时延,以满足车联网应用的严格需求。因此,边缘计算服务器的部署对车联网场景下的移动网络和应用具有重大意义。车联网有其独特的网络特点,移动边缘计算若想更好地与v2x(vehicle to everything)融合,就必须在部署的阶段就充分贴近车辆应用的特点和需求。首先,v2x场景下主要的用户终端为车辆。而一般情况下车辆的行驶轨迹都与道路贴合。因此车辆和任务请求分布具有一定的时空特性。其次,车辆应用大多以辅助驾驶目的为主,对端到端延迟有严格的硬性要求。要选择合适的部署地点尽可能的满足车辆应用的服务质量需求。
54.目前现有的边缘计算服务器部署策略的研究在车联网场景下,仍存在以下几个问题:
55.(1)优化目标角度单一:大多数的研究都以最小化用户任务的完成时间为优化目标。此外,还有一些研究以最小化边缘计算服务器能耗、平衡边缘计算服务器负载均衡为优化目标。但在实际的应用中,如何平衡运营商和用户的利益也是重要的考量。
56.(2)只考虑基站部署:现有的研究只考虑将边缘计算服务器与基站进行联合部署,但可以部署mec服务器的网络接入点有很多,如基站、路侧装置、wifi接入点等。只考虑基站部署尤其是面向车联网场景会有一定的局限性。
57.(3)不考虑车辆和应用独特的分布特点:车联网场景下,车辆有独有的具有时空分布规律特性的轨迹。且车辆任务请求的分布情况根据应用种类的不同也有一定特点。
58.(4)地理区域划分方式不足:现有的研究中大多以网格来进行地理区域的划分,这种地理区域划分的方式无法清楚的体现道路拓扑的特点。
59.基于上述考虑,本公开实施例提供了一种面向车联网的边缘计算服务器部署方法。基于任务响应时间和边缘计算服务器的能耗感知,考虑到车辆用户和应用请求分布的特点,采用基于粒子群优化算法改进的启发式算法得到可以平衡运营商和用户利益的最优的路侧装置作为边缘计算服务器的部署位置。
60.参见图1,图1示出了根据本公开实施例的面向车联网的边缘计算服务器部署方法的示意性流程图。如图1所示,面向车联网的边缘计算服务器部署方法,包括:
61.步骤s110,获取所述车联网下待部署区域的网络接入节点的位置和预设历史时间段的历史服务请求数量;
62.步骤s120,基于所述网络接入节点的所述位置和所述历史服务请求数量进行初步筛选,得到候选网络节点;
63.步骤s130,基于粒子群优化算法对边缘计算服务器的部署和用户调度策略进行优化,得到目标数量的边缘计算服务器在所述候选网络节点中的部署结果和用户分配方法,其中,所述部署结果和所述用户分配方法使得所述边缘计算服务器的端到端时延和能耗最小化。
64.其中,边缘计算服务器部署可以指边缘计算服务器(硬件)的选址。车联网下的各个网络接入节点的服务请求数量可以反映出车辆用户的轨迹和服务请求分布规律,本公开实施例通过分析车联网下网络接入节点及其服务请求分布规律,以达到系统端到端时延和边缘计算服务器能量消耗最小化的优化目标,根据网络接入节点的历史服务请求数据,使用基于粒子群优化的边缘计算服务器部署算法确定边缘计算服务器部署位置和用户分配方法。根据本公开实施例,详尽的分析和考虑了车辆轨迹分布情况和应用服务请求分布情况,算法的收敛速度快,能适应车联网大范围边缘计算服务器部署问题的求解,可以一次性部署所有边缘计算服务器的位置,无论是边缘计算服务器所提供边缘服务的端到端时延还是边缘计算服务器能量消耗都具有很好的性能优势,同时平衡了边缘服务运营商和用户的利益。适合广泛应用于车联网等领域。
65.根据本公开实施例,在步骤s110中,获取所述车联网下待部署区域的网络接入节点的位置和预设历史时间段的历史服务请求数量。
66.可选地,所述网络接入节点包括但不限于基站、所述车联网中的路侧单元(rsu,road side unit)、wi

fi接入点(如无线接入点ap,access point)。
67.在一些实施例中,所述网络接入节点可以是所述车联网中的路侧单元。
68.其中,由于边缘计算服务器的部署并没有特定的部署位置规定,其可以与各类网络接入节点联合部署。然而,相比于传统方法中的在网络中部署计算、存储节点,或在移动网络中基站位置部署边缘计算服务器,本公开实施例采用移动网络中的路侧单元部署,可以面向未来车联网环境下联合组网,更贴合车辆应用的需求,以支撑车联网应用的网络通信需求。
69.进一步地,在一些实施例中,所述车联网中的路侧单元可以是位于交叉路口的路侧单元。
70.其中,位于交叉路口的路侧单元的平均服务请求较多,因为考虑到车辆沿道路行
驶的轨迹特点,选择沿道路部署的路侧单元作为边缘计算服务器的载体会更加贴近用户。现有研究中都以基站为边缘计算服务器部署的载体,但事实上,基站的部署位置受到地理区域和人口密度等因素的限制,并不一定是靠近道路的,这对车联网场景来说意味着在基站部署并不是最靠近用户的位置。而路侧单元的设备则是专为车辆部署的,其部署位置都是沿道路的,靠近用户车辆的。此外,考虑到基站型路侧单元的提出和未来部署,5g基站与rsu的融合推进了c

v2x与5g的联合组网,将蜂窝基站和路侧单元相结合,有利于实现多样化车联网通信方式的融合。选择路侧单元作为边缘计算服务器部署位置将更有利于网络架构的未来演进。此外,考虑到车辆任务请求的分布情况,选择平均任务请求较多的交叉路口部署边缘计算服务器将会在更大程度上减少端到端时延,保证车辆应用的服务质量。车辆任务的请求分布主要集中在交叉路口主要有以下两方面的原因:一方面从车辆应用的种类分析,车辆应用可以分为周期性需求应用和非周期性需求应用。对于周期性需求来说,车辆在行驶的全路段都会周期性的发出任务请求,如编队控制中编队间的控制信息共享、车辆驾驶信息实时监控等。而对非周期性需求应用来说,其在交叉路口产生任务请求的情况更多,如匝道合流辅助、智慧交叉路口等。因此,从整体来说,在交叉路口位置车辆的任务请求数量将会明显高于普通路段。另一方面从车辆停留时间分析,由于交叉路口的红绿灯设置以及车道复杂程度高,车辆在交叉路口停留的时间会高于在某路段的停留时间。另外,在红灯阶段,多媒体应用需求将更可能被请求。因此,在用户密集的交叉路口的rsu上部署mec服务器将会更靠近大多数用户并且贴合大部分车辆应用请求分布。
71.可选地,预设历史时间段的历史服务请求数量可以指在网络接入节点在该预设历史时间段接收到的服务请求数量。
72.其中,本公开考虑到实际场景中,用户密集的地方并不一定是服务请求密集的地方,因此,本公开实施例在对边缘计算服务器进行部署时,将各网络节点接入用户的服务请求数量作为考虑因素之一,以保证部署更加合理有效,能够满足车联网用户的需求。例如,本公开实施例可以将各节点历史单位时间(包括但不限于一个月或一个季度)内各节点接入用户的请求数量作为各节点的负载。
73.在一些实施例中,可以通过直接从所述网络接入点获取或从其他数据源获取所述网络接入节点的位置和预设历史时间段的历史服务请求数量。
74.根据本公开实施例,在步骤s120中,基于所述网络接入节点的所述位置和所述历史服务请求数量进行初步筛选,得到候选网络节点。
75.其中,边缘计算服务器放置的网络接入节点可以是在交叉路口部署的路侧单元。车辆可以与路侧单元通过uu(若为基站型rsu)或pc5(若为非基站型rsu)接口进行通信。考虑到实际场景中,城区内的交叉路口数量庞大,部署路侧单元的交叉路口分布也比较密集,因此,本公开实施例基于用户密度和距离对所有交叉路口基站性路侧单元进行初步筛选,确定潜在的边缘计算服务器部署位置。这样,可以进一步加快后续边缘计算服务器部署位置的选择和确定。
76.可选地,所述基于所述网络接入节点的所述位置和所述历史服务请求数量进行初步筛选,得到候选网络节点,可以包括:
77.初始化候选网络节点的候选集合;
78.根据所述历史服务请求数量的大小顺序依次选取所述网络接入节点;
79.对于选取的每个当前所述网络接入节点,基于当前所述网络接入节点的所述位置计算当前所述网络接入节点与当前所述候选集合中各个节点元素之间的至少一个距离;
80.基于所述至少一个距离和预设距离确定当前所述网络接入节点是否为所述候选网络节点。
81.在一些实施例中,根据所述历史服务请求数量的大小顺序可以包括按照所述历史服务请求数量由大到小的顺序。
82.在一些实施例中,基于所述至少一个距离和预设距离确定当前所述网络接入节点是否为所述候选网络节点,可以包括:
83.判断所述至少一个距离中是否存在小于所述预设距离的距离;
84.响应于不存在所述距离小于所述预设距离,确定当前所述网络接入节点为所述候选网络节点。
85.进一步地,在一些实施例中,当确定当前所述网络接入节点为所述候选网络节点时,将所述候选网络节点加入所述候选集合得到当前所述候选集合。
86.在一些实施例中,基于所述至少一个距离和预设距离确定当前所述网络接入节点是否为所述候选网络节点,还可以包括:
87.响应于所述距离大于或等于所述预设距离,确定当前选取的所述网络接入节点不为所述候选网络节点。
88.具体来说,首先将所有部署在交叉路口的路侧单元依据所在节点的历史工作负载即历史服务请求数量进行排序,然后按照排序顺序,依次选择请求数量大但与已选择的路侧单元距离超过预设距离(如300米)的路侧单元作为边缘计算服务器的潜在部署位置的集合。那么,后续对系统内端到端时延和路侧单元能耗的计算都将使用上述过滤后的候选网络节点集合,候选网络节点的集合的能耗包括每个网络节点元素(如路侧单元)的能耗与其自身负载与其周边并入路侧单元的负载之和。
89.在一些实施例中,参见图2,图2示出根据本公开实施例的候选网络节点的算法的示意性流程图。如图2所示,基于所述网络接入节点的所述位置和所述历史服务请求数量进行初步筛选,得到候选网络节点,可以具体包括:
90.步骤s210,开始;执行步骤s220;
91.步骤s220,初始化候选网络节点(可以是候选rsu)的集合u,此时集合u为空集;执行步骤s230;
92.步骤s230,将网络接入节点的集合r按照历史服务请求数量由大到小进行排序;执行步骤s240;
93.步骤s240,判断网络接入节点的集合r中是否存在元素;如果存在,则执行步骤s250;如果不存在,则执行步骤s290;
94.步骤s250,取第一个元素,如网络接入节点a,计算该网络接入节点a与初始候选网络节点的集合u中的初始候选网络节点的距离,此时,当该步骤s250第一次执行时,集合u为空集,可以将集合r中的第一个元素即集合r中历史服务请求数量最大的网络接入节点直接加入集合u;等到第二次执行该步骤时,即计算r集合中的当前的第一个元素与集合u中的元素的距离,依次类推;执行步骤s260;
95.步骤s260,判断集合u中是否存在与该网络接入节点a的距离小于预设距离(如
300m)的候选网络节点;如果存在,则执行步骤s270;如果不存在,执行步骤s280;
96.步骤s270,在集合r中删除该网络接入节点a;返回步骤s240;
97.步骤s280,将该网络节点a加入集合u,并删除集合r中网络节点a;返回步骤s240;
98.步骤s290,结束。
99.在一些实施例中,步骤s120可以基于算法实现。具体来说,如表1所示,可以包括:
[0100][0101]
表1
[0102]
可见,根据上述步骤s120,本公开实施例将原本密集部署的网络接入节点(如路侧单元)进行筛取,筛去了在预设距离(如300米)半径范围内密集部署的冗余网络接入节点,只保留其中用户接入量较大的网络接入节点。经此操作,可以大量简化后续部署算法的复杂度,提高部署算法的收敛速度。
[0103]
根据本公开实施例,在步骤s130中,基于粒子群优化算法对边缘计算服务器的部署和用户调度策略进行优化,得到目标数量的边缘计算服务器在所述候选网络节点中的部署结果和用户分配方法,其中,所述部署结果和所述用户分配方法使得所述边缘计算服务器的能耗和所提供边缘服务端到端时延最小化。
[0104]
其中,粒子群优化算法主要是通过个体粒子的简单行为,实现群体内的信息交互,利用群体的智能型找到问题的最优解。由于粒子群优化算法的易操作、快收敛特性,适合大规模计算场景,因此本公开实施例以粒子群优化算法为基础,提出了面向端对端时延和能耗感知的边缘计算服务器部署和用户调度优化算法。根据本公开实施例的粒子群优化算法作为基于粒子群优化算法改进的mec服务器部署和用户调度优化算法,能够同时解决边缘计算服务器部署和用户调度即用户分配的协同问题,能在保证用户服务端到端时延较低的
同时,最小化边缘计算服务器的能量消耗。
[0105]
粒子群优化算法具体到本公开实施例中,每一个粒子的位置可以代表一种边缘服务器部署和用户调度的可行解,粒子群代表多个可行解的集合。通过粒子之间的信息交互,对每一个粒子依据其速度进行位置更新操作,调整边缘计算服务器部署位置和用户分配方法,从而得到最小化边缘计算服务器所提供的边缘服务的端到端时延和边缘计算服务器能量消耗的近似最优解。
[0106]
具体来说,根据本公开实施例,以网络接入节点为rsu为例进行说明,假设网络系统模型中,选择在交叉路口部署的rsu作为边缘计算服务器即mec服务器的候选部署节点。由各网络节点构成的网络可以被定义为无向图g=(v,e),其中v表示可以联合部署mec服务器的候选网络节点,e代表各节点之间的有线连接,即网络各节点间有连接可达。假设网络边缘层包括n个交叉路口部署的rsu和m个需要部署的mec服务器。对于rsu集合r{r1,...,r
i
,...,r
n
)中的每个rsur
i
(i=1,2,...,n),l(r
i
)表示它的位置,使用ω(r
i
)表示rsur
i
的工作负载,即单位时间内到达r
i
的用户请求数量。对于mec服务器集合{s1,...,s
j
,...,s
m
}中的每个mec服务器s
j
(j=1,2,...,m),l(s
j
)表示它的位置,使用ω(s
j
)表示s
j
的工作负载,即单位时间内到达mec服务器s
j
的任务请求数量。c(s
j
)表示划分在服务器s
j
服务范围内的rsu集合,用于描述服务器s
j
的服务范围,即位于c(s
j
)集合中的rsu覆盖范围内的车辆,由服务器sj提供移动边缘计算服务。最后本公开实施例需要得到一个关于mec服务器部署和用户调度的组合t=(l,c),其中,l={l(s1),...,l(s
j
),...,l(s
m
)}代表所有mec服务器部署位置的集合,c={c(s1),...,c(s
j
),...,c(s
m
)}代表各mec服务器服务范围的集合。
[0107]
在实际应用中,mec服务器部署和用户调度策略的优化目标包括最小化mec服务器的能耗和mec服务器所提供服务的端到端时延。
[0108]
mec服务器的能耗与很多因素相关,如cpu、内存、硬盘、网卡等状态。其中,最能影响耗能的因素为cpu的利用率,可以用cpu利用率间接的表示mec服务器的能量消耗。mec服务器的能耗与服务器的cpu的利用率之间呈线性关系。在现有对mec服务器能耗的研究中,空闲状态下的服务器消耗的能量可以是满载状态下消耗能量的60%以上,也就是说,由于服务器运转的基础能耗相对稳定,服务器负载低或零负载的情况下会浪费更多的能耗。因此,应尽量提高mec服务器的利用率,减少由于mec服务器负载低引起的能源浪费。另外,mec服务器的cpu利用率与服务器的负载可以近似的认为呈线性的关系,即mec服务器负载较高时,cpu利用率也随之提高。综上所述,根据本公开实施例,mec服务器的能耗模型可以包括:
[0109][0110][0111]
其中,e
j
是mec服务器s
j
的能量消耗,p
j
(t)是mec服务器s
j
在t时刻的功率。p
idle
表示mec服务器在空闲状态下的功率,p
max
表示mec服务器在满负载状态下的功率。ω
max
表示边缘服务器的最大工作负载,即单位时间内其能处理的最大任务请求数量。整个系统的能量消耗总和可以表示为:
[0112][0113]
而端到端时延指用户的任务请求发出到结果传回用户终端的时间,主要包括传输时延(round

trip time,rtt)和任务处理时延(service process time,spt)。传输时延指任务请求从用户发出到用户接收任务处理结果完成的时间。从任务请求发出到处理结果接收完成的时间包括用户终端发出任务请求达到mec服务器的时间与mec服务器将执行结果发出至用户终端接收到结果的时间之和,即上行传输和下行传输时延之和。由于传输时延与rsu到mec服务器的距离有关,因此,定义路侧单元r
i
到mec服务器s
j
的距离为:
[0114][0115]
应了解,上述路侧单元r
i
到mec服务器s
j
的距离的计算仅为示例,并不旨在对二者距离的计算方式进行限制,在此不做限制。
[0116]
由于mec服务器部署的位置主要影响mec服务器与用户接入的rsu之间的有线传输距离,则可以得到用户发出任务请求经路侧单元r
i
到mec服务器s
j
至用户接收返回结果的传输时延为:
[0117][0118]
其中,t
wireless
表示数据在车辆(或用户)与rsu之间无线传输的时间,表示路侧单元r
i
接收到并需要转发给mec服务器的用户任务请求数据包大小,表示mec服务器s
j
发出的执行结果数据包大小。可以用b表示数据传输速度,α表示信号在电缆中传播的延迟速度。
[0119]
任务处理时间指任务到达mec服务器后,等待、处理和执行的时间。假设mec服务器对任务请求的处理遵循排队论的m/m/1模型,本公开实施例假设任务的到达成泊松分布,任务的到达率为mec服务器服务范围内rsu负载的总和,任务的处理效率为负指数分布,即服务的处理效率为mec服务器的最大负载。因此路侧单元r
i
发出的任务请求在mec服务器s
j
上平均处理的时间为:
[0120][0121][0122]
其中,ω
max
表示mec服务器的最大负载。
[0123]
综上所述,本公开实施例中在mec服务器上执行的全部任务的端到端时延之和为:
[0124][0125]
根据本公开实施例,在众多网络接入节点中放置数量一定的mec服务器以及如何
进行用户调度,以达到系统服务端到端时延和mec服务器能耗最小化的目的,需要与用户调度策略一同优化,默认用户选择其最近的rsu接入网络,而通过每个rsu接入的任务分配到哪一个mec服务器执行也是部署方案需要考量的因素。本公开实施例可以选择分布在车辆用户密集的交叉路口的rsu作为mec服务器的接入节点,且一个服务器只能被部署在一个rsu上,一个rsu只能被分配给一个mec服务器。由于优化目标是在优化端到端时延的同时最小化mec服务器的能量消耗,因此,本问题是一个多目标优化问题。问题的具体定义如下:
[0126]
mine
total
ꢀꢀ
(9)
[0127]
min d
total
[0128][0129][0130]
其中,m代表需要部署的mec服务器个数,q代表经过筛选后候选rsu数量。表示rsur
i
是否被分配给mec服务器s
j
,若值为1则表示rsur
i
被分配给mec服务器s
j
,值为0反之。类似的,表示mec服务器s
j
是否部署在rsur
i

[0131]
由于需要对多目标优化问题进行求解,本公开实施例将多目标优化问题转化为单目标优化问题,为系统端到端时延和mec服务器能量消耗分别做归一化,得到所述边缘计算服务器所提供边缘服务的端到端时延的归一化值e

和所述边缘计算服务器的能耗的归一化值d

。例如,可以采用max

min标准化的方法:
[0132][0133][0134]
应了解,还可以采用其他归一化方法对边缘计算服务器所提供边缘服务的端到端时延和能耗进行归一化,在此不再赘述。
[0135]
为系统服务端到端时延和mec服务器能量消耗分别加上权重值ε和1

ε,其中ε∈(0,1)。转化后的单目标优化问题如下:
[0136]
minε
×
e

+(1

ε)
×
d
′ꢀꢀ
(12)
[0137][0138][0139]
可选地,基于粒子群优化算法对边缘计算服务器的部署和用户调度策略进行优化,得到目标数量的边缘计算服务器在所述候选网络节点中的部署结果和用户分配方法,
可以包括:
[0140]
初始化粒子种群,得到所述粒子种群中每个所述粒子的当前局部最优解和所有粒子的当前全局最优解;其中,所述粒子的位置表示为粒子位置矩阵,所述粒子位置矩阵表示所述边缘计算服务器与所述候选网络节点的映射关系;
[0141]
基于所述粒子的当前位置和当前速度进行迭代计算;
[0142]
当迭代次数未达到预设次数时,
[0143]
基于速度更新函数和位置更新函数更新所述粒子的当前位置和当前速度;
[0144]
基于适应度函数和所述粒子的当前位置计算所述粒子的当前适应度;
[0145]
基于所述当前适应度更新每个所述粒子的当前局部最优解和所有粒子的当前全局最优解;
[0146]
当迭代次数达到所述预设次数时,基于当前全局最优解得到所述部署结果和所述用户分配方法。
[0147]
在一些实施例中,所述粒子位置矩阵的行表示所述候选网络节点,列表示所述边缘计算服务器。
[0148]
具体地,根据本公开实施例,可以将mec服务器与rsu的部署和分配问题进行编码为粒子种群中粒子的位置,可以采用粒子位置矩阵表示,即使用q
×
q的矩阵来体现mec服务器与rsu的对应关系。矩阵的每一行代表一个候选rsu,每一列代表mec服务器的候选部署位置。矩阵中只有二进制取值0和1,其中1意味着该位置对应行的rsu被分配给部署在该位置对应行数的mec服务器,0不做标记作用。如可以表示rsu1和rsu2接收到的用户任务请求将在rsu2上部署的mec服务器上执行。因此,粒子位置矩阵有两点约束:矩阵的每一行有且只能有一个1,即每一个rsu必须且只能被分配给一个mec服务器;如果矩阵的第x列有一个或多个1,那么第x行第x列也必须为1。
[0149]
在一些实施例中,所述适应度函数包括:
[0150]
f=ε
×
e

+(1

ε)
×
d
′ꢀꢀ
(13)
[0151]
具体地,对于粒子的适应度函数,由f表示,即按照该粒子当前位置所代表的mec服务器部署和用户调度方法,系统端到端时延和mec服务器能耗的加权和。
[0152]
在一些实施例中,所述速度更新公式包括:
[0153][0154]
其中,表示k粒子在t次迭代时的个体最优值,表示t次迭代的全局最优值,c1、c2,c3为给定的学习步长。其中,对于二进制的操作,
“‑”
操作代表通常意义上的xor操作。如(1,0,1,0)

(1,1,0,0)=(0,1,1,0);“+”操作:相同位不变,不同位根据随机数范围取值。如0.5*(1,1,0)+0.5*(1,0,0)=(1,*,0),其中,不确定的位
[0155]
具体地,对于粒子的速度,每一个粒子的速度代表当前可行解需要改变的位置。用表示粒子k在t轮迭代时的速度,如果速度矩阵中数字为1,意味着该位置对应的rsu状态
将会改变,反之,状态不变。
[0156]
在一些实施例中,所述位置更新公式包括:
[0157][0158]
其中,表示粒子k在t次迭代时的位置,表示粒子k在t+1次迭代时的速度。对于二进制操作,
“×”
操作:操作符前的向量依据操作符后向量的取值而改变。如(1,0,1,0)
×
(0,1,1,0)=(1,0,1,0),操作符后变量的第2,3位取值为1,操作符前变量的第2,3位取值将改变。
[0159]
具体地,每一个粒子的位置代表一个满足约束条件的可行解,表示粒子k在t轮迭代时的粒子位置。mec服务器部署的位置可以从粒子位置矩阵的对角线的编码中得到。而用户分配方法可以包括每个网络接入节点的用户被分配至哪个mec服务器进行相应的数据处理,可以从粒子位置矩阵中取值为1的元素所对应的行和列确定。
[0160]
在一些实施例中,所述初始化粒子种群可以包括:
[0161]
对于每个粒子,
[0162]
在所述候选网络节点中随机生成边缘计算服务器的部署位置;
[0163]
基于所述部署位置划分所述候选网络节点,直至所述候选网络节点均分配至唯一的所述边缘计算服务器,得到粒子的初始位置;
[0164]
随机初始化粒子速度,并基于所述初始化粒子速度更新所述粒子的初始位置,得到所述粒子的当前位置;
[0165]
根据适应度函数和所述粒子的当前位置计算得到每个所述粒子的当前适应度;
[0166]
基于所述粒子的当前适应度确定每个所述粒子的局部最优解和所有粒子的当前全局最优解。
[0167]
具体地,种群初始化包括:需要部署的mec服务器数量为m,候选rsu数量为q。随机初始化种群pop,粒子个数为p,最大迭代次数为i。对于每个粒子,随机产生m个mec服务器部署的位置,将剩余的rsu先初步划分至距离其最近的mec服务器。
[0168]
在一些实施例中,根据本公开实施例的粒子群优化算法可以如下表2所示:
[0169][0170]
表2
[0171]
在一些实施例中,参见图3,图3示出了根据本公开实施例的粒子群优化算法的示意性流程图。如图3所示,以网络接入节点为rsu为例,边缘计算服务器即mec服务器部署于rsu中,根据本公开实施例的粒子群优化算法包括:
[0172]
步骤s310,开始;执行步骤s320;
[0173]
步骤s320,初始化种群,包括粒子个数、迭代次数、各基础参数值(例如学习步长c1、c2、c3,权重值ε等)等;执行步骤s330;
[0174]
步骤s330,判断是否有粒子未被初始化;如果有,则执行步骤s340;如果没有,则执行步骤s350;
[0175]
步骤s340,判断是否存在mec服务器未被部署;如果存在,则执行步骤s341;如果不存在,可以执行步骤s342;
[0176]
步骤s341,随机产生mec服务器的部署位置;返回步骤s341;
[0177]
步骤s342,根据距离和mec服务器负载约束,将rsu分配给就近的mec服务器,可以具体包括:
[0178]
对于每个rsu,基于到mec服务器的距离由近及远对mec服务器进行排序,优先将该rsu分配给距离最近的mec服务器s1,如果此时该最近的mec服务器s1的负载没有超过mec服务器s1的第一预设负载阈值f1,则可以确定该rsu分配至最近的mec服务器s1;如果此时该最近的mec服务器的负载超过预设负载阈值f1,则将该rsu分配至次近的mec服务器s2(即与该rsu距离第二近的mec服务器),然后接着判断分配给该次近的mec服务器s2时,该次近的mec服务器s2的负载是否超过mec服务器s2的第二预设负载阈值f2,如果仍然超过,则可以将该rsu分配至第三近的mec服务器s3,以此类推,知道满足将该rsu分配至mec服务器时该mec服务器的负载未超过其自身的预设负载阈值,直至所有的rsu均分配完;执行步骤s343;
[0179]
步骤s343,更新粒子位置;执行步骤s344;
[0180]
步骤s344,随机产生粒子速度;执行步骤s345;
[0181]
步骤s345,计算粒子当前适应度;执行步骤s346;
[0182]
步骤s346,更新粒子个体最优解和适应度值;返回步骤s330;
[0183]
步骤s350,更新全局最优解;执行步骤s360;
[0184]
步骤s360,判断迭代次数是否达到阈值;如果是,则结束;如果否,则执行步骤s370;
[0185]
步骤s370,根据公式更新粒子的速度、位置;执行步骤s380;
[0186]
步骤s380,判断粒子适应度是否优于个体最优解;如果是,则执行步骤s381;如果否,则返回步骤s360;
[0187]
步骤s381,更新个体最优解;执行步骤s390;
[0188]
步骤s390,判断粒子适应度是否优于全局最优解;如果是,执行步骤s391;如果否,则返回步骤s360;
[0189]
步骤s391,更新全局最优解。
[0190]
在一些实施例中,基于具体实例对本公开实施例的面向车联网的边缘计算服务器部署方法进行说明。例如,网络中有10个rsu,待部署2个mec服务器。其中各rsu的历史服务请求数量即负载为{10,5,8,13,4,12,19,10,6,5},其中,rsu2、3、5与rsu4的距离分别为120,150,160,140m,rsu8与rsu9之间的距离为200m。本公开实施例的方法包括:
[0191]
首先进行候选rsu的选择,根据各rsu节点的负载,排序后的rsu集合为{7,4,6,1,8,3,9,2,10,5},执行候选rsu选择算法,得到候选rsu集合{7,4,6,1,8,10},其中各节点的负载为{19,30,12,10,16,5}
[0192]
接着使用基于粒子群优化的mec服务器部署算法,首先初始化粒子群,以一个粒子为例,粒子的位置可为:
[0193][0194]
其中,代表在该粒子当前所代表的部署方案中,mec服务器被部署在2和5号rsu,且2、3号rsu被分配给部署在2号rsu的mec服务器,1、4、5、6号rsu被分配给部署在6号rsu的mec服务器。
[0195]
随机初始化粒子的速度:
[0196][0197]
其中,表示1、2、6号rsu的分配状态将会改变,原来部署在2号rsu的mec服务器位置将会改变。由此位置和速度更新得到的粒子位置为:
[0198][0199]
此时,表示mec服务器被部署在1和5号rsu,1、2、6号rsu被分配给部署在1号rsu的mec服务器,3、4、5号rsu被分配给部署在5号rsu的mec服务器。根据新得到的粒子位置,计算其适应度函数的值,更新个体最优解和全局最优解。
[0200]
速度更新根据公式(12)假设其中c1=0.3,c2=0,3,c3=0.4,计算随机数rand值,得到
[0201][0202]
经以上位置和速度更新过程,过多次迭代后,得到适应度函数最小化的最佳部署位置。具体地,mec服务器的部署位置可以从粒子位置矩阵的对角线数值得到。
[0203]
综上所述,根据本公开实施例的面向车联网的边缘计算服务器部署方法、装置、设备及存储介质,通过分析车联网下网络接入节点及其服务请求分布规律,根据网络接入节点的历史服务请求数据,使用基于粒子群优化的边缘计算服务器部署算法确定边缘计算服务器部署位置,以达到边缘计算服务器所提供边缘服务的端到端时延和边缘计算服务器能量消耗最小化的优化目标。能适应车联网大范围边缘计算服务器部署问题的求解,可以一次性部署所有边缘计算服务器的位置,无论从所提供边缘服务的端到端时延还是边缘计算服务器能量消耗指标上,都具有很好的性能优势,同时平衡了边缘服务运营商和用户的利益。
[0204]
需要说明的是,本公开实施例的方法可以由单个设备执行,例如一台计算机或服务器等。本实施例的方法也可以应用于分布式场景下,由多台设备相互配合来完成。在这种分布式场景的情况下,这多台设备中的一台设备可以只执行本公开实施例的方法中的某一个或多个步骤,这多台设备相互之间会进行交互以完成所述的方法。
[0205]
需要说明的是,上述对本公开的一些实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于上述实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定
要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
[0206]
基于同一发明构思,与上述任意实施例方法相对应的,本公开还提供了一种面向车联网的边缘计算服务器部署装置。
[0207]
参考图4,所述面向车联网的边缘计算服务器部署装置,包括:
[0208]
获取模块,用于获取所述车联网下待部署区域的网络接入节点的位置和预设历史时间段的历史服务请求数量;
[0209]
初步筛选模块,用于基于所述网络接入节点的所述位置和所述历史服务请求数量进行初步筛选,得到候选网络节点;
[0210]
计算模块,用于基于粒子群优化算法对边缘计算服务器的部署和用户调度策略进行优化,得到目标数量的边缘计算服务器在所述候选网络节点中的部署结果,其中,所述部署结果使得所述边缘计算服务器的端到端时延和能耗最小化。
[0211]
为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本公开时可以把各模块的功能在同一个或多个软件和/或硬件中实现。
[0212]
上述实施例的装置用于实现前述任一实施例中相应的面向车联网的边缘计算服务器部署方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
[0213]
基于同一发明构思,与上述任意实施例方法相对应的,本公开还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上任意一实施例所述的面向车联网的边缘计算服务器部署方法。
[0214]
图5示出了本实施例所提供的一种更为具体的电子设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。
[0215]
处理器1010可以采用通用的cpu(central processing unit,中央处理器)、微处理器、应用专用集成电路(application specific integrated circuit,asic)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
[0216]
存储器1020可以采用rom(read only memory,只读存储器)、ram(random access memory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。
[0217]
输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
[0218]
通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如usb、网线等)实现通信,也可以通过无线方式(例如移动网络、wifi、蓝牙等)实现通信。
[0219]
总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输
出接口1030和通信接口1040)之间传输信息。
[0220]
需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
[0221]
上述实施例的电子设备用于实现前述任一实施例中相应的面向车联网的边缘计算服务器部署方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
[0222]
基于同一发明构思,与上述任意实施例方法相对应的,本公开还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行如上任一实施例所述的面向车联网的边缘计算服务器部署方法。
[0223]
本实施例的计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd

rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
[0224]
上述实施例的存储介质存储的计算机指令用于使所述计算机执行如上任一实施例所述的面向车联网的边缘计算服务器部署方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
[0225]
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本公开的范围(包括权利要求)被限于这些例子;在本公开的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本公开实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。
[0226]
另外,为简化说明和讨论,并且为了不会使本公开实施例难以理解,在所提供的附图中可以示出或可以不示出与集成电路(ic)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本公开实施例难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本公开实施例的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本公开的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本公开实施例。因此,这些描述应被认为是说明性的而不是限制性的。
[0227]
尽管已经结合了本公开的具体实施例对本公开进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态ram(dram))可以使用所讨论的实施例。
[0228]
本公开实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本公开实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本公开的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1