预算受限下的MEC动态服务部署

GPT-oss:20b

GPT-oss:20b

图文对话
Gpt-oss

GPT OSS 是OpenAI 推出的重量级开放模型,面向强推理、智能体任务以及多样化开发场景

面向预算受限移动边缘计算的动态服务部署

摘要

目前,移动边缘计算(MEC)面临一个重大挑战,即如何充分利用边缘资源,为计算密集型延迟敏感应用提供无缝支持。以往的研究通常简单假设任务可在每个边缘服务器上执行,但这一假设在实际场景中并不成立。因为特定的应用任务通常对应某种提供相应运行环境的服务,而边缘服务器资源有限,无法承载过多服务。如何在多个边缘服务器之间决策如此多类型服务的部署,也是一个巨大挑战。为应对该挑战,我们研究了延迟敏感应用的动态服务部署。首先,基于李雅普诺夫框架,我们将长期预算受限的延迟最小化问题建模为一个多时隙延迟最小化问题。通过这种方式,问题的求解难度显著降低,因为我们无需获取未来信息即可解决长期优化问题。此外,我们进一步结合任务调度优化来扩展研究,使得每个边缘服务器能够以更高效、更协作的方式被充分利用。我们的大量实验表明,所提算法能够在低成本下实现较短的延迟。

关键词
延迟敏感应用、李雅普诺夫优化、移动边缘计算、服务部署、任务调度

1 引言

如今,随着物联网(IoT)的快速发展,移动设备(例如智能手机、可穿戴设备等)正变得极为普及。 这些应用通常为计算密集型且对延迟敏感,由于现代移动设备资源有限,这些应用被视为具有挑战性的关键应用。虽然云计算可用于处理计算任务,但当通信需要经过互联网骨干网时,极难满足这些应用对低延迟的严格要求。

最近,边缘(雾)计算2-4越来越受到关注,特别是移动边缘计算(MEC)5-8,已被公认为未来计算范式中一项极具吸引力的技术趋势。与在移动设备或位于远程云中的强大服务器上运行应用程序任务相比,MEC允许终端用户通过无线(或蜂窝)网络将应用程序任务及相应数据发送至地理位置上邻近用户的边缘服务器。因此,MEC能够以高可靠性实现超低响应延迟,特别适用于那些计算密集型且延迟敏感的应用。随着MEC技术的快速发展,当前的商业模式已经发生变化,在云服务提供商和电信运营商之间出现了一个新角色,即边缘服务提供商。考虑到多接入边缘计算环境中的资源限制,大量现有研究9-16聚焦于任务卸载这一主要挑战。无论从终端用户还是边缘服务提供商的角度出发,这些研究大多基于一个共同假设:从终端用户发送的任务可以在每个边缘服务器上执行。然而,这一假设忽略了一个事实,即特定的应用任务通常需要安装某种服务以提供相应的运行环境。例如,当您在外场玩VR游戏时,只要安装了相应的VR服务,部分应用程序任务就可以卸载到边缘服务器。

示意图0

图1 一个示例场景,用于说明多接入边缘计算环境中延迟敏感应用的服务部署问题

本文主要从边缘服务提供商的角度研究动态服务部署问题。MEC系统如图1所示,多个基站(BS)构成大规模无线接入网络,每个基站均配备一个边缘服务器(即MEC服务器),旨在为附近的终端用户提供计算能力和存储能力。云中托管了所有服务,边缘服务提供商将服务从云部署到其MEC服务器上,以支持广泛的应用。每个基站提供有限距离内的无线接入,不同基站的覆盖区域可能存在重叠。处于重叠区域内的终端用户可选择任意覆盖自身的基站发送请求(例如选择信号最强的基站)。所谓服务部署,是指在MEC服务器上安装应用程序的程序,例如安装程序代码、库和数据库。对边缘服务提供商而言,服务部署面临巨大挑战,主要体现在以下几个方面:首先,由于MEC服务器资源有限,每个服务器只能部署少量服务子集,难以决策应部署哪些服务以满足所有到达的任务需求。其次,若某个MEC服务器无法处理来自终端用户的任务请求,将任务调度至云可能因违反低延迟要求而不可行;此时该服务器必须与其他服务器谨慎协作,将这些任务分发给能够满足服务需求的其他服务器。第三,MEC系统始终处于动态环境中,终端用户的移动轨迹通常具有随机性,应用流行度(即服务流行度)和服务需求随时可能发生改变。如何从长期视角自适应地进行服务部署,使该问题更具挑战性。

我们研究了多接入边缘计算环境中的动态服务部署与任务调度,并做出了如下重要贡献:
- 我们构建了一个新的MEC系统模型,并定义了三种成本类型以确定边缘服务提供商所支付的运营成本。我们提出了一种理论方法来分析服务部署对延迟和成本的影响,并从边缘服务提供商的角度对服务部署问题进行建模。
- 为了捕捉服务部署问题的长期特征,我们利用李雅普诺夫优化思想将原问题分解为多时隙最小化子问题,从而显著降低了原问题的求解难度。
- 我们将服务部署与任务调度相结合,以实现对响应延迟和运营成本的联合优化效果。同时,我们设计了在线算法来高效解决所提出的问题。
- 我们进行了大量实验证明我们工作的有效性和高效性。

本文的其余部分组织如下。第2节介绍了相关工作,第3节详细描述了MEC系统模型并定义了服务部署问题。第4节阐述了我们在线算法的设计。第5节进一步探讨了一个联合优化问题。在第6节中,我们通过大量实验评估了所提算法。第7节对本文进行了总结。

2 相关工作

遵循将计算和数据卸载到边缘的思想,许多研究聚焦于多接入边缘计算环境中的任务卸载和资源分配。陈等11构建了一个分布式卸载博弈来描述卸载问题,用户能够自主决定是否卸载任务以及卸载多少计算量,并在动态场景中实现了分布式算法。毛等12考虑了能量采集(EH)技术,针对配备EH设备的绿色MEC系统,提出了一种高效的卸载机制。谭等14建立了一个通用模型,用于研究多个边缘服务器之间的作业调度与分配,并设计了一种可证明近似的算法。王等17进一步考虑了用户移动性,在任务已卸载至边缘服务器的前提下,构建了一个动态资源分配问题,提出了该问题的保距变换方法,并相应地开发了一种可提供参数化竞争比的在线算法。贾等18专注于由卸载请求动态变化引起的成本最小化问题,提出一种预测方法来决定是否在各个云朵内部释放或创建网络功能实例。陈等19考虑了能量受限场景,定义了多个基站之间的对等卸载博弈,通过分析其均衡状态及相应的效率损失,设计了一种策略以指导每个基站的任务卸载决策,从而实现边缘服务器自身的分布式和自主卸载。

这些现有研究隐含了一个不切实际的假设,即无论所需服务是否已部署,任务都可以在任意服务器上处理。与服务部署类似,数据/内容缓存已被许多先前文献所研究。尚穆甘等20研究了小蜂窝网络中的内容缓存问题,以最小化内容访问延迟。普拉布和阿卜杜勒扎赫尔21开发了一种应用服务,用于搜索数据缓存的最优位置并降低分组传输功率。穆勒等22提出了一种新方法来学习关于特定上下文流行度的知识,并据此自适应地更新每个基站上缓存的内容。与主要关注服务器存储限制下缓存问题的数据/内容缓存不同,可行的服务部署不仅需要考虑存储容量,还需考虑计算能力。此外,允许服务器之间进行任务共享使得该问题更加复杂。

谢等23通过允许边缘服务器协作缓存服务来研究服务缓存问题。谢等23的目标是最小化转发到远程云的流量负载,但未保证响应延迟。徐等24在考虑响应延迟和能耗的情况下研究了服务缓存问题。然而,他们假设部分到达的任务可以共享至云而非其他边缘服务器,这对于大多数延迟敏感应用而言是不合理的,因为很难确保低延迟。此外,该方法仅适用于可分离任务场景。何等15研究了在具有可共享与不可共享资源的边缘服务器之间的服务最优供应问题,并基于最大流方法提出了高效算法,以最大化终端用户发送的请求,但未考虑响应延迟。王等25研究了多接入边缘计算环境中虚拟现实应用的服务实体放置问题。此处的服务实体指的是用户个人数据和处理逻辑的集合,而在我们的研究中,不同的服务对应不同的应用,因此他们的研究仅适用于单一应用场景。

我们之前的工作16研究了服务部署问题,同时考虑了响应延迟和运营成本。然而,在新的时隙中更新服务部署时,我们未考虑传输成本。此外,用户任务请求的调度采用了一种简单但效率不高的原则。与单一的任务调度26不同,当服务放置存在不确定性时,该问题变得更加复杂。因此,本文进一步将服务部署与任务调度相结合,以优化期望响应延迟并降低成本。

3 系统模型与问题建模

我们首先介绍MEC系统模型,并从边缘服务提供商的角度讨论该模型中的服务部署。随后,我们在给定服务部署的情况下,对响应延迟和多种类型的成本进行理论分析。最后,我们正式定义服务部署问题。表1总结了本文使用的关键词符号。

3.1 系统模型

MEC系统是一种混合边缘云系统,其中云系统利用其强大的计算能力和存储容量提供备份支持,无线接入网络则通过n个基站为终端用户提供普遍的接入服务。云通常远离终端用户,

符号 描述
n MEC服务器的数量
m 服务类型的数量
θ 计算时间变量
Sx 服务器x上安装的最大服务集
(er, pr, πr) 任务r的服务类型向量、计算需求和数据大小
dx,i,t 表示在时隙 t 内服务 i 是否安装在服务器x上的二进制决策变量
φr,x,t 任务r的卸载率
ly x,r,t 任务r在时隙t的调度决策
R′x,t 终端用户从服务器x发送的任务集合
Rx y,t 在时隙t内从服务器y调度到服务器x的任务集
Rx,t 服务器x上处理的任务集
Rin x,t 在时隙 t 内从其他服务器调度到服务器x 的任务集合
Rlocal x,t 在时隙t内由服务器x本地处理的任务集合
Tt 服务器x−本地 服务器x在时隙t处理的任务的平均响应延迟
Tt x,y 服务器x到服务器y的任务数据传输所花费的时间
Tt x−y 时隙 t 内从服务器x共享到服务器y的任务的平均传输时间
Tt 时隙t中的期望响应延迟
λx,i,t 服务器x在时隙t中类型i的任务的到达率
λin 服务器x,i,t , λout x,i,t 服务器x在时隙t上任务类型i的共享进入率和共享输出率
λ′x,i,t 时隙 t 内由服务器x处理的类型 i 任务的实际到达率
λlocal x,t 在时隙t内服务器x本地处理任务的到达率
Ct inst , Ct comp, Ct traf 在时隙t内为安装、计算和通信流量支付的成本
αt, βt, φt 服务安装、计算和传输的价格
C t 在时隙t内的成本
Q(t) 在时隙t内的队列积压
Ψ(·) 李雅普诺夫函数
o(·) 漂移函数

并且为所有应用程序保留了完整的m项服务。每个基站都与一个MEC服务器共址(本文中不明显区分基站和MEC服务器)。服务从云部署到所有MEC服务器。每个基站可以在受限区域内提供无线接入,如今4G网络中的平均区域面积约为0.07‐0.12 km²²⁷。无线接入网络足够密集,以确保持有移动设备的终端用户通常被多个基站覆盖,从而能够将应用程序任务发送给覆盖他们的任意基站。考虑到每个MEC服务器具有有限的计算和存储资源,允许安装在服务器上的服务数量也受到限制。这里,我们使用Sx表示在服务器x上安装的最大服务集。

本文中,我们假设任务与服务之间存在一对一映射,即一类任务对应一种特定服务。当某一特定任务到达服务器x时,若所需服务已部署,则该任务将在服务器x上本地处理;否则,该任务无法由服务器x处理。所需服务已预先部署在边缘服务器上。此处,所需服务因终端用户手机上运行的具体应用而异。通常情况下,大多数基于网络的应用采用客户端/服务器模式开发,其中客户端软件运行在终端用户的终端设备上,而服务器软件(或中间件)则运行在服务器上。客户端生成的任务可由对应的服务器软件处理,这里的服务器软件即对应服务实体。因此,我们的假设适用于大多数应用。然而,许多现有研究23,24假设那些本地无法处理的任务将被发送至云进行执行。我们认为,这一假设并不总是适用于当今大多数延迟敏感应用。当MEC服务器与云通信时,必须依赖互联网骨干网。每个任务需要处理的数据量通常不可忽略,通过互联网骨干网传输任务数据极易导致终端用户面临不可接受的延迟。为了避免响应延迟带来的不良用户体验,我们探索充分利用MEC服务器以协作方式共同处理到达的任务。在我们的模型中,当某服务器无法处理某个任务时,必须将该任务共享给另一个满足该任务服务需求的服务器。MEC服务器通常通过有线网络相连,且电信运营商确实通过高速光纤网络连接其基站,以提供高带宽并相应支持低延迟网络服务。城域网实际上反映了上述场景。因此,在我们的模型中,终端用户任务请求可在MEC服务器之间处理,无需在远程云上进行外部执行。我们确认,只要系统规模足够大,任意任务所需的服务已在系统中以高置信度完成部署。

如果某个任务所需的服务之前未安装,则有两种方法可以解决此问题。第一种是将任务发送到云端进行进一步执行;第二种是将所需服务下载到边缘服务器。我们可以设计一种算法来估计这两种方法的延迟,并选择延迟较低的方法执行。如果估计精度不可接受,则同时采用两种方法,从而始终确保延迟尽可能低。不匹配情况非常罕见,因此系统性能不会受到显著影响。

3.2 服务部署

通常,每个应用程序对应一种特定的服务,我们使用三元组 (er, pr, πr) 来描述一个应用任务 r,其中 er 表示所需服务类型,并用一个 m 维向量表示,例如,er=(0, 1,…, 0) 意味着任务 r 的所需服务类型为 2。pr 表示计算需求,此处以 CPU周期 为单位进行衡量。对于任务 r 需要处理的数据,其数据大小由 πr 表示。到达的应用程序任务所需的服务类型各不相同,而每个 MEC服务器 仅托管一小部分 服务,因此需要研究 服务部署,以确定在每个 MEC服务器 上安装的具体 服务 集合。假设 服务部署 算法 在云 上执行,并生成一个整体的 服务放置方案。

部署算法是MEC系统中的一个重要组成部分,边缘服务提供商使用它来管理在系统中运行的服务。我们系统模型中的时间是离散的,被划分为Γ个时隙。随着任务随时间变化,每个时隙的服务部署也会相应更新。需要注意的是,一个时隙的长度假设与完成一次服务部署更新所需的时间尺度相匹配。

令 dx,i,t 表示基本部署决策,它是一个二进制变量,当服务i在时隙t被安装到服务器x上时取值为1;否则取值为0。对于任意一个关注的MEC服务器x,其部署决策由m个基本元素组成的向量表示,即 dx,t=(dx,1,t,dx,2,t,…dx,m,t)。由于服务器资源受限,在服务器x上部署的服务数量不应超过 |Sx|,即 ∑ₘᵢ₌₁ dx,i,t ≤ |Sx|。

3.3 延迟分析

在所提出的系统模型中,终端用户的任务可以在首个到达的MEC服务器上处理,或被分发到另一个MEC服务器。在本节中,我们通过考虑两种场景来分析响应延迟。

3.3.1 本地处理

考虑到服务匹配,从终端用户接收到的任务并非全部在服务器x上进行本地处理,而不匹配的任务则会共享至其他MEC服务器。在第一种场景中,我们仅关注本地处理的任务,时隙t内服务器x上本地处理任务的平均响应延迟Tt x−local(dx,t)通常由两个部分组成:数据卸载所花费的时间Tt x−off和任务处理所花费的时间Tt x−handle。将两者结合,可得延迟

$$
T^t_{x-\text{local}}(d_{x,t}) = T^t_{x-\text{off}} + T^t_{x-\text{handle}}(d_{x,t}). \quad (1)
$$

与之前的研究类似,11,13我们忽略了从服务器返回到终端用户的输出结果传输所花费的时间。我们的设定基于以下考虑:首先,对于大多数应用而言,输出结果的大小远小于待处理的任务数据大小。因此,与发送任务和处理所花费的时间相比,返回结果所需的时间非常短。例如,在玩在线游戏时,你的所有操作数据都会被发送到服务器,服务器经过一系列计算后将你当前的位置和状态返回。相比于操作数据,返回的数据量非常小。其次,即使返回的数据量不少于发送的数据量,也不会影响我们模型的有效性,因为返回数据所花费的时间与我们的模型无关。

设Rx,t表示在时隙t内从终端用户发送到服务器x的任务集合,φ r,x,t表示任务r的卸载率,其中 ∀r ∈ Rx,t;则可通过以下方式计算卸载时间

$$
T^t_{x-\text{off}} = \frac{1}{|R_{x,t}|} \sum_{r \in R_{x,t}} \frac{\pi_r}{\varphi_{r,x,t}}. \quad (2)
$$

在无线接入网络环境中,每个基站已知管理着多个用于上行链路和下行链路通信的无线信道,通常假设信道在任务之间均匀分配。任务通过上行链路信道进行卸载,且信道正交,因此彼此之间不相互干扰。相反,当通过同一信道同时进行传输时,由于干扰的存在,卸载率会下降。假设每个基站有k条上行链路无线信道,则在时隙t中通过同一信道传输的任务的平均数量为 |Rx,t|∕ k。根据文献中报道的结论 28,任意任务r在 时隙t中的卸载率计算如下:

$$
\varphi_{r,x,t} = w \log_2 \left( 1 + \frac{q_{r,t} g_{r,x,t}}{\pi + \frac{|R_{x,t}|}{k} \sum_{i=1 \land i \ne r} q_{i,t} g_{i,x,t}} \right), \quad (3)
$$

其中w是信道带宽,π是背景噪声功率, q r,t 是发射功率,而g r,x,t 是发送任务r的终端用户与位于服务器x处的基站之间的信道增益。

为了进一步度量任务的本地处理时间,我们利用排队论将每个MEC服务器建模为M/G/1队列,其中M表示任务到达是一个泊松过程,G表示计算时间服从任意分布。因此,本地处理时间

图2 说明从终端用户发送并在三个MEC服务器之间共享的任务的简单示例

图3 说明如何从向量dx,t生成矩阵Dx,t

T t x−handle是任务在队列中的停留时间,由等待时间 T t x−wait和计算时间 T t x−comp 组成,即

$$
T^t_{x-\text{handle}}(d_{x,t}) = T^t_{x-\text{comp}}(d_{x,t}) + T^t_{x-\text{wait}}(d_{x,t}). \quad (4)
$$

图2展示了一个来自终端用户的任务在多个服务器之间共享的示例,其中λ x,t表示时隙t内服务器x上的任务到达率, λ out x,t表示时隙t内从服务器x的任务外分率, λ local x,t表示时隙t内留在服务器x上的任务到达率。这些到达率由m维向量表示,包含对应所有服务类型的任务到达率。能够找到匹配服务的任务将被保留。为了便于计算,我们从决策向量dx,t生成一个m×m矩阵Dx,t,其生成方法如图3所示,其中决策向量dx,i,t的每个元素被放置在矩阵Dx,t的第i行和第i列位置上,其余位置用0填充。然后,我们得到

$$
\lambda^{\text{local}} {x,t} = \lambda {x,t} \cdot D_{x,t}, \quad (5)
$$

$$
\lambda^{\text{out}} {x,t} = \lambda {x,t} - \lambda^{\text{local}}_{x,t}. \quad (6)
$$

通过将所有 λ out x,t 相加,得到总任务外分率 λ out t ,即:

$$
\lambda^{\text{out}} t = \sum {x=1}^{n} \lambda^{\text{out}} {x,t} = (\lambda^{\text{out}} {1,t}, \lambda^{\text{out}} {2,t}, …, \lambda^{\text{out}} {m,t})_{1 \times m}. \quad (7)
$$

λ out t 仍然是一个m维向量,其中

$$
\lambda^{\text{out}} {i,t} = \sum {x=1}^{n} \lambda^{\text{out}}_{x,i,t}. \quad (8)
$$

3.3.2 共享到另一服务器

在本节中,我们关注任务共享的场景。对于这些任务,平均响应延迟 $T^t_{x,y}(d_{x,t})$ 由三个部分组成:数据卸载时间 $T^t_{x-\text{off}}$、任务处理时间 $T^t_{y-\text{handle}}(d_{x,t})$ 以及任务数据传输时间 $T^t_{x-y}(d_{x,t})$,分别对应于

$$
T^t_{x,y}(d_{x,t}) = T^t_{x-\text{off}} + T^t_{y-\text{handle}}(d_{x,t}) + T^t_{x-y}(d_{x,t}). \quad (13)
$$

前两个分量的推导方式与本地处理场景相同。对于任意两个服务器 $x$ 和 $y$,我们已经得到在时隙 $t$ 内服务类型 $i$ 从服务器 $x$ 外分的任务的外分率 $\lambda^{\text{out}} {x,i,t}$,如第3.3.1节所示。在随机模型中,只要服务器 $y$ 已安装服务 $i$,即 $d {y,i,t} = 1$,服务类型 $i$ 从服务器 $x$ 到 $y$ 的外分率即为 $\frac{\lambda^{\text{out}}_{x,i,t}}{\text{num}_i}$,进而可得在时隙 $t$ 内从 $x$ 外分到 $y$ 的任务数量,

$$
|R^{y} {x,t}| = \sum {i=1}^{m} \frac{\lambda^{\text{out}} {x,i,t} d {y,i,t}}{\text{num}_i}. \quad (14)
$$

时隙中从服务器 $x$ 共享出的任务的平均数据大小

$$
\pi^{\text{out}} x = \frac{\sum {r \in R_{x,t}} (1 - e_r \cdot d^T_{x,t}) \pi_r}{\sum_{r \in R_{x,t}} (1 - e_r \cdot d^T_{x,t})}.
$$

设 $w_{xy}$ 为从服务器 $x$ 到 $y$ 的带宽,则平均传输时间按以下方式计算

$$
T^t_{x-y}(d_{x,t}) = \frac{\pi^{\text{out}} x}{w {xy}}. \quad (15)
$$

首先,通过结合两种场景,我们得到时隙 $t$ 中任意任务的预期延迟,

$$
T(d_t) = \frac{1}{n} \sum_{x=1}^{n} \left( T^t_{x-\text{local}}(d_{x,t}) \frac{|R^{\text{local}} {x,t}|}{|R {x,t}|} + \sum_{y \ne x} T^t_{x,y}(d_{x,t}) \frac{|R^{y} {x,t}|}{|R {x,t}|} \right). \quad (16)
$$

3.4 成本模型

我们考虑MEC系统管理中的三个方面成本,包括服务安装成本、计算成本和流量成本。这些成本被认为是边缘服务提供商视角下最显著的支出。

3.4.1 服务安装成本

该成本对应于服务版权购买和服务维护所产生的支出,并按安装在服务器上的服务数量比例收取。设 $\alpha_{i,t}$ 为在时隙 $t$ 内服务 $i$ 的安装价格,其中服务版权购买在授权周期内计费,因此假设其分摊到该周期内的多个时隙中。具体而言,在时隙 $t$ 内服务器 $x$ 上的服务安装成本计算如下

$$
C^t_{\text{inst}}(d_{x,t}) = \sum_{i=1}^{m} \alpha_{i,t} d_{x,i,t}. \quad (17)
$$

3.4.2 计算成本

该成本表示在服务器上执行任务所支付的支出,按任务的计算需求进行计费。如第3.3节所述,在时隙 $t$ 内由服务器 $x$ 处理的任务集合为 $R’_{x,t}$。设 $\beta_t$ 为时隙 $t$ 内的计算能力价格,则在时隙 $t$ 内服务器 $x$ 的计算成本应为

$$
C^t_{\text{comp}}(d_{x,t}) = \sum_{r \in R’ {x,t}} \beta_t p_r e_r \cdot d^T {x,t}. \quad (18)
$$

3.4.3 流量成本

该成本表示为数据传输所支付的支出,包含两个部分:一是当任务无法在首个到达的服务器上本地处理时,共享任务数据的传输(即出站流量);二是服务部署更新时服务中间件的传输(即入站流量)。这两种流量均根据传输的数据量进行计费。为了便于服务部署更新,我们定义了如下所示的操作:

$$
\nabla(d_{x,i,t}, d_{x,i,t-1}) \triangleq
\begin{cases}
1, & d_{x,i,t}=1, d_{x,i,t-1}=0, \
0, & \text{otherwise}.
\end{cases}
$$

如上所述,从服务器 $x$ 分配出的任务集合为 $R^{\text{out}}_{x,t}$。设 $\pi_i$ 为服务 $i$ 的大小,$\varphi_t$ 为时隙 $t$ 中的传输价格;则时隙 $t$ 内与服务器 $x$ 相关的流量成本为

$$
C^t_{\text{traf}}(d_{x,t}) = \varphi_t \left( \sum_{r \in R^{\text{out}} {x,t}} (1 - e_r d^T {x,t}) \pi_r + \sum_{i=1}^{m} \nabla(d_{x,i,t}, d_{x,i,t-1}) \pi_i \right). \quad (19)
$$

因此,时隙 $t$ 的总成本是上述三个方面成本的总和,即

$$
C(d_t) = \sum_{x=1}^{n} \left( C^t_{\text{inst}}(d_{x,t}) + C^t_{\text{comp}}(d_{x,t}) + C^t_{\text{traf}}(d_{x,t}) \right). \quad (20)
$$

3.5 问题建模

本文的目的是从边缘服务提供商的角度,通过服务部署来探索多接入边缘计算(MEC)系统的优化。该问题以终端用户任务请求和MEC服务器作为输入。我们注意到实际请求无法提前获得,但在我们的离散时间系统中时隙较短,因此请求可以被高精度预测。³⁰我们不讨论具体的预测方法,仅假设任务请求是已知的。我们的目标是持续决定在每个MEC服务器上部署哪些服务,以最小化响应延迟,同时确保总成本不超过预算。

该动态服务部署问题建模如下。

定义 1 (动态服务部署) 在一个多接入边缘计算系统中,有 $n$ 个MEC服务器和 $m$ 种服务可用于部署。时间被划分为 $\Gamma$ 个时隙,$T(d_t)$ 和 $C(d_t)$ 分别表示响应延迟和总成本,其中 $d_t$ 表示在时隙 $t$ 的服务部署矩阵,$\forall t \leq \Gamma$。目标是在给定的预算约束 $B$ 下,在每个时隙 $t$ 找到 $d_t$,以最小化响应延迟,即

$$
\arg\min \lim_{\Gamma \to \infty} \frac{1}{\Gamma} \sum_{t=1}^{\Gamma} T(d_t)
$$
$$
\text{s.t.} \quad (1)\ \lim_{\Gamma \to \infty} \frac{1}{\Gamma} \sum_{t=1}^{\Gamma} C(d_t) \leq B,
$$
$$
(2)\ \sum_{i=1}^{m} d_{x,i,t} \leq |S_x|, \forall x \in [1, 2, …, n].
$$

4 在线算法设计

服务部署问题的解决方案必须从长期视角实现优化。在本节中,我们首先利用李雅普诺夫优化框架将长期服务部署问题建模为多时隙最小化问题。随后,我们设计了一种在线算法并展示了其有效性。

4.1 多时隙最小化问题

随着时间推移(即 $\Gamma \to \infty$),我们所提出的动态系统中服务部署问题的主要挑战是多个时隙间服务部署矩阵与长期成本预算的耦合。李雅普诺夫优化框架是一种广泛用于分析动态系统解决方案稳定性的工具。因此,我们决定利用李雅普诺夫优化机制来解决该问题。

为了满足长期预算约束,我们创建了一个虚拟队列 $Q$。我们使用该队列记录从开始到当前所有时隙的成本赤字,然后让该队列为后续的服务部署提供指导。不失一般性,我们定义一个函数 $Q(t)$ 来度量时隙 $t$ 内的队列积压(即队列长度),其值对应于当前成本与长期预算约束之间的偏差。该队列的动态以递归方式演化,即

$$
Q(t+1) = \max{Q(t) + C(d_t) - B, 0}. \quad (21)
$$

$Q(\cdot)$ 的初始值在 $t=0$ 时为 0,即 $Q(0)=0$。此外,我们定义一个函数作为如下所示的李雅普诺夫函数:

$$
\Psi(Q(t)) \triangleq \frac{1}{2} Q^2(t). \quad (22)
$$

函数 $\Psi(Q(t))$ 的值用于反映队列 $Q$ 的稳定性,此处值越低表示队列越稳定。我们应尽量降低该值以保持队列稳定,并进一步满足预算约束。

我们还定义了一个关于 $Q(t)$ 的函数,用于捕捉任意两个连续时隙之间的漂移。

$$
o(Q(t)) \triangleq \mathbb{E}[\Psi(Q(t+1)) - \Psi(Q(t)) \mid Q(t)]. \quad (23)
$$

因此,在李雅普诺夫优化框架下,长期服务部署的目标转化为在每个时隙中最小化以下不等式的上界,

$$
o(Q(t)) + \gamma \mathbb{E}[T(d_t) \mid Q(t)] \leq \Omega + Q(t)\mathbb{E}[C(d_t) - B \mid Q(t)] + \gamma \mathbb{E}[T(d_t) \mid Q(t)], \quad (24)
$$

其中 $\Omega = \frac{1}{2} (\sum_{x=1}^{n} C_x(d_{x,t}) - B)^2$,且 $\gamma$ 是用于在每台服务器上实现延迟最小化与成本最小化之间权衡的权重。因此,原始服务部署问题被等效地建模为如下多时隙最小化问题。

定义 2(多时隙最小化) 在与定义 2 相同的输入下,目标是在每个时隙 $t$ 中找到 $d_t$,以最小化延迟和成本,即

$$
\arg\min_{d_t} \gamma T(d_t) + Q(t)C(d_t), \quad t \in [1, \Gamma]
$$
$$
\text{s.t.} \quad \sum_{i=1}^{m} d_{x,i,t} \leq |S_x|, \forall x \in [1, 2, …, n]. \quad (25)
$$

根据上述定义,我们原始的问题被转化为多个每时隙最小化子问题。注意,每个子问题可以单独求解。公式(25)中的附加项 $Q(t)C(d_t)$ 用于在每次每时隙服务部署期间控制成本赤字。每当 $Q(t)$ 的值增加时,必须以高优先级降低成本赤字。因此,对于新定义的多时隙最小化问题,即使不知道所有时隙的信息,我们仍然能够在每个时隙中实施预算约束下的延迟最小化。

4.2 在线算法

在本小节中,我们提出了一种名为MUSM的在线算法,用于求解上述定义的多时隙最小化问题。由于已将长期优化问题分解为多个每时隙最小化子问题,因此MUSM被设计为在每个时隙迭代运行,以求解由公式(25)形式化的子问题。我们假设该算法运行在云上,并接收当前时隙来自所有MEC服务器的任务信息作为输入。MUSM返回的解是一个服务部署决策矩阵,该矩阵包含在每台服务器上的一组 $n$ 个部署决策 $d_{x,t}$,而针对每个服务的具体决策 $d_{x,i,t}$ 仅为一个二进制变量。因此,该子问题属于非线性0‐1规划问题,我们通过采用分支定界技术提出了一种高效的算法。³¹时隙从0开始,表示我们的系统已在任务请求到达之前初始化了每台服务器上的服务部署。考虑到缺乏任务信息,我们注意到初始服务部署是在满足每台服务器约束的前提下随机生成的,即 $\sum_{i=1}^{m} d_{x,i,t} \leq |S_x|$。我们算法的伪代码由算法1给出。

5 服务部署与任务调度的联合优化

在之前的章节中,我们讨论了MEC系统中的服务部署,并提出了一种优化方法。在本节中,我们通过考虑任务调度对目标性能的影响,将工作进行扩展,并通过在框架中引入任务调度决策,进一步研究联合优化。

5.1 联合优化分析

如前几节所述,我们遵循一种通用的任务调度原则,即只有当第一台服务器不具备所需服务时,任务请求才会被分配到另一台服务器。这种方法虽然简单易行,但并非最优。例如,假设服务 $i$ 部署在服务器 $x$ 和 $y$ 上,这两台服务器可能接收到不同数量的任务请求,从而导致二者的工作负载不同。如果其中一台服务器(例如服务器 $x$)承担了服务 $i$ 的繁重工作负载,则其响应延迟会较高;而相反,服务器 $y$ 的工作负载可能较轻。仅根据所需服务类型进行任务调度,无法保证最佳性能。

为了考虑任务调度,我们为任务 $r$ 定义一个基本的调度决策如下:

$$
l^{y}_{x,r,t} \triangleq
\begin{cases}
1, & \text{task } r \text{ is scheduled to server } y, \
0, & \text{otherwise}.
\end{cases}
\quad (26)
$$

$l^{y}_{x,r,t}$ 也是一个二进制变量,用于决定任务 $r$ 是否从服务器 $x$ 调度到服务器 $y$。我们首先为在时隙 $t$ 内到达服务器 $x$ 的所有请求(即来自终端用户的发送至服务器 $x$ 的请求)构建一个调度矩阵。

$$
l_{x,t} =
\begin{bmatrix}
l^{x} {x,1,t} & l^{x} {x,2,t} & \cdots & l^{x} {x,r,t} & \cdots \
l^{y}
{x,1,t} & l^{y} {x,2,t} & \cdots & l^{y} {x,r,t} & \cdots \
\vdots & \vdots & \ddots & \vdots & \cdots \
l^{z} {x,1,t} & l^{z} {x,2,t} & \cdots & l^{z} {x,r,t} & \cdots \
\end{bmatrix}
{n \times |R_{x,t}|},
$$

其中 $l^{x} {x,r,t}$ 表示任务 $r$ 是否在服务器 $x$ 上本地处理。然后,我们得到本地处理的任务集合 $R^{\text{local}} {x,t}$:

$$
R^{\text{local}} {x,t} = { r \mid l^{x} {x,r,t} = 1 \land r \in R_{x,t} }. \quad (27)
$$

图4 应用特定调度决策后共享进出的任务

与第3.3节中的分析不同,在第3.3节中任务请求在符合条件的服务器之间随机调度,而在引入调度决策后,每个任务请求对应一个特定的决策。对于任意服务器 $y$,从服务器 $y$ 调度到服务器 $x$ 的任务集合表示为

$$
R^{x} {y,t} = { r \mid l^{x} {y,r,t} = 1 \land r \in R_{y,t} }. \quad (28)
$$

从其他服务器调度到服务器 $x$ 的任务集是

$$
R^{\text{in}} {x,t} = \cup {y \ne x} R^{x}_{y,t}. \quad (29)
$$

因此,时隙 $t$ 内在服务器 $x$ 上本地处理的任务到达率以及调度到服务器 $x$ 的任务到达率分别表示为

$$
\lambda^{\text{local}} {x,t} = \frac{|R^{\text{local}} {x,t}|}{t}, \quad \lambda^{\text{in}} {x,t} = \frac{|R^{\text{in}} {x,t}|}{t}. \quad (30)
$$

将 $\lambda^{\text{local}} {x,t}$ 和 $\lambda^{\text{in}} {x,t}$ 相加,得到在时隙 $t$ 内由服务器 $x$ 处理的任务的总到达率,即 $\lambda’ {x,t}$。类似地,通过将 $\lambda’ {x,t}$ 代入公式(3),可计算出在服务器 $x$ 上的任务处理时间,即 $T^t_{x-\text{handle}}(d_{x,t}, l_{x,t})$。从服务器 $x$ 分配到服务器 $y$ 的任务的平均传输时间通过以下方式计算

$$
T^t_{x-y}(d_{x,t}, l_{x,t}) = \frac{\sum_{r \in R^{y} {x,t}} \pi_r}{|R^{y} {x,t}| w_{xy}}. \quad (31)
$$

通过将 $T^t_{x-y}(d_{x,t}, l_{x,t})$ 代入公式(16),我们最终得到在时隙 $t$ 的预期延迟,即 $T(d_t, l_t)$,给定一个服务部署决策矩阵 $d_t$ 和一个任务调度决策张量 $l_t$。

因此,该联合优化问题定义如下。

定义 3(动态服务部署与任务调度) 在一个MEC系统中,有 $n$ 个MEC服务器和 $m$ 种可部署的服务。时间被划分为 $\Gamma$ 个时隙,$T(d_t, l_t)$ 和 $C(d_t, l_t)$ 分别表示响应延迟和总成本,其中 $d_t$、$l_t$ 分别表示在时隙 $t$ 中的服务部署矩阵和任务调度张量,$\forall t \leq \Gamma$。目标是在给定的预算约束 $B$ 下,在每个时隙 $t$ 中寻找 $d_t$ 和 $l_t$ 以最小化响应延迟,即

$$
\arg\min \lim_{\Gamma \to \infty} \frac{1}{\Gamma} \sum_{t=1}^{\Gamma} T(d_t, l_t)
$$
$$
\text{s.t.} \quad (1)\ \lim_{\Gamma \to \infty} \frac{1}{\Gamma} \sum_{t=1}^{\Gamma} C(d_t, l_t) \leq B, \quad (32)
$$
$$
(2)\ \sum_{i=1}^{m} d_{x,i,t} \leq |S_x|, \forall x \in [1, 2, …, n].
$$

5.2 算法

根据定义2,我们注意到服务部署和任务调度的基本决策元素,即 $d_{x,i,t}$ 和 $l^{y}_{x,r,t}$,均为二进制变量;因此,类似于服务部署问题,该联合优化也是一个非线性0‐1规划问题。然而,该联合优化问题比服务部署问题更为复杂,因为服务部署和任务调度高度耦合,无法同时实现最优的部署和最优的调度。在本小节中,我们提出了一种称为JMUSM的高效算法,以分而治之的方式解决这一复杂问题。基本思想如下:在每个时隙中,我们首先调用MUSM暂时求解服务部署问题,并获得服务部署方案 $d_t$,而不耦合任务调度优化。随后,我们将 $d_t$ 作为已知信息纳入联合优化问题,并类似地获得任务调度方案 $l_t$。该方案 $l_t$ 仅在给定的 $d_t$ 条件下是最优的,仍可能存在更优的解。为了获得更优的解,我们在算法中设计了一个切换过程。我们随机选择一对MEC服务器,并假设它们交换各自的服务部署决策,然后得到一个新的调度方案 $l_t$。令 $\Delta T$ 表示切换前后的差值,如果差值为负,则不执行切换;否则以概率 $\frac{\Delta T}{T}$ 执行切换,其中 $T$ 表示未切换时的响应延迟。此处我们选择以概率方式而非确定性方式进行部署更新,是因为利用容易陷入局部最优,需要通过让所提算法以一定概率探索新决策,将利用与探索相结合。具体而言,为实现概率方式,我们使用随机数生成器输出一个0到1之间的随机变量,并将其与 $\frac{\Delta T}{T}$ 进行比较。如果生成的变量更小,则确认执行切换;否则放弃切换。因此,该过程可引导切换以实现更好的延迟性能。当所有MEC服务器完成切换过程后,算法停止。JMUSM的伪代码由算法2给出。

6 实验评估

在本节中,我们进行了大量实验以验证所提算法的性能。具体的设置和结果如下所述。

6.1 设置

为了开始实验,我们需要模拟一个MEC系统。该系统构建在一个二维坐标内,覆盖一个 $2\times2\ \text{km}^2$ 的方形区域。此区域内分布有100个基站,每个基站的服务半径为200米。基站的位置由其水平和垂直坐标决定,这些坐标从[0 km, 2 km]中随机抽取。共有200种服务可用于部署,每台服务器上部署的最大服务数量设置为20,即 $|S_x| = 20$。服务大小设置为50 MB。在每个时隙期间,进入系统的用户任务集合服从期望到达率为 5000 的泊松分布,每个任务都有其自身的位置,该位置也在方形区域内随机分布。服务类型总数为200种,每个任务仅需要一种服务类型。假设每台服务器的计算能力介于[20, 30]之间。对于任意任务,其计算需求在[1, 50]之间均匀分布,数据大小范围为10 MB到50 MB。其他参数列于表2。

参数 Γ k B γ w π αi,t βt φt
100 2 100 40 5兆赫 −100dBm 0.01 0.005 0.0001

表2 默认参数设置

图5 不同算法间的性能比较

6.2 结果

6.2.1 服务部署比较

在本组实验中,我们比较了我们的服务部署算法MUSM与多个基准方案:
- 无预算约束的延迟最小化(LMB) 。该算法旨在求解我们所提出的服务部署问题的一种变体,且不考虑长期预算约束。
- 无预算约束的独立服务部署(ISD) 。该算法可在每台服务器上独立执行,各服务器根据最近最少使用(LRU)规则自行更新部署决策。
- 具有硬性预算约束的延迟最小化(LMHB) 。该算法通过实施每时隙延迟最小化的硬性预算约束,严格求解所提出的服务部署问题。

我们在100个时隙的时间内分别运行这四种算法,为了保证公平性,每个时隙中这些算法的输入(包括到达每台服务器的任务集合、每台服务器的约束等)均设置为相同。我们观察到的结果如图5所示,其中MUSM和LMB实现了相似水平的平均延迟,且始终优于另外两种算法。具体而言,LMB在响应延迟方面表现最佳,但由于没有预算约束,其成本非常高,仅略低于ISD的成本。相比之下,我们的算法MUSM的成本随着时隙的增加迅速降低至预算水平,即在运行30个时隙后,每时隙成本降至100。图5A显示,随着成本下降,平均延迟略有上升(即上升17.8%),但仍优于初始阶段的性能。在这些算法中,LMHB产生的成本最低,但其延迟相对较高。这是因为任务的计算需求在不同时隙中变化较大;LMHB所施加的硬性预算约束缺乏灵活性,无法通过在某些时隙临时放宽约束来挖掘潜在的延迟降低空间。ISD采用LRU方法,确保每台服务器保留最近使用的服务并移除最少使用的服务,但它忽略了任务计算需求的差异以及服务器之间的任务共享。每当服务器上执行过多大型任务时,延迟必然增加。

我们进一步通过调整服务器上部署的最大服务数量(即 $|S_x|$)进行比较。如图6所示,当允许在每个服务器上安装更多的服务时,延迟明显降低,而所有算法的成本或多或少有所增加,其中MUSM和LMHB表现出轻微的增长。当最大服务数量不够大时,从终端用户发送的大多数任务无法在最先到达的服务器上本地处理,这很好地解释了为何MUSM与LMB在延迟性能上表现相似。此外,我们观察到无论最大服务数量 $|S_x|$ 如何变化,MUSM始终紧密遵循预算值。相比之下,其他算法未能像MUSM那样在延迟和成本之间实现良好的权衡。

图6 不同最大数量下的性能比较

6.2.2 延迟与成本之间的权衡

延迟和成本对于边缘服务提供商和终端用户而言都是最重要的系统指标。显然,我们无法同时最小化这两个指标,二者之间存在权衡关系。在我们定义的问题中,将延迟设为目标,而将成本作为约束。具体而言,我们引入一个权重 $\gamma$ 来实现这种权衡。图7A展示了权重 $\gamma$ 的影响,两个系统指标呈现出相反的趋势,且随着 $\gamma$ 的增加,这种趋势更加明显。根据公式(25),我们注意到较高的 $\gamma$ 意味着在求解多时隙最小化问题时,延迟最小化具有更高的优先级。延迟的下降趋势验证了这一结论。与此同时,成本赤字随着 $\gamma$ 的增长而迅速上升。图7B进一步揭示了成本赤字与每时隙平均成本之间的关系,结果从第80至第100时隙报告。每当成本上升时,成本赤字也随之增加,随后成本必须下降以满足长期的成本预算。

我们得出结论:正是由于我们的弹性机制,所提出的问题才能得到充分优化。通过调整预算和权重 $\gamma$,我们可以找到合适的权衡点。该调整应基于服务提供商的实际需求进行。具体而言,如果服务提供商有目标响应延迟水平,则可推导出每个时间槽中预期的成本支出,并据此为预算设定提供参考。如果预算固定,我们也可以调整 $\gamma$ 的值,以尽可能接近目标延迟。总体而言,权衡调整的主要原则是在不进一步增加成本的前提下实现更低的延迟。

图7 权衡性能

6.2.3 联合优化的效果

为了验证联合优化的效果,我们将JMUSM与MUSM和MUSM_TS进行比较,其中MUSM_TS是JMUSM的一种简化实现,未执行切换过程。图8详细展示了比较结果。JMUSM和MUSM_TS比MUSM实现了更好的系统性能。这与我们在第5.1节中的讨论一致,即通过任务调度优化可以进一步降低延迟和成本。JMUSM与MUSM_TS的区别在于是否改变优化后的服务部署。从比较结果中不难看出,JMUSM表现更优。因为MUSM_TS基于优化后的服务部署进行任务调度优化,而该优化部署是在简单任务调度假设下由MUSM生成的,因此并非联合优化下的最优部署。JMUSM通过基于切换机制反复更新服务部署,从而获得更优的服务部署。与依次进行两项独立优化相比,JMUSM采用分治方式将两者结合起来,显著提升了系统性能。

图8 联合优化性能比较

7 结论

本文从边缘服务提供商的角度研究了典型MEC系统中的服务部署问题。首先,我们通过一个全面的MEC系统模型刻画了主要挑战,并给出了基于服务部署决策的预期延迟性能和成本的理论分析。接着,我们提出了在给定预算下最小化延迟的服务部署问题。为了处理长期预算约束,我们利用李雅普诺夫框架将原问题转化为多时隙最小化子问题,并相应地设计了一种高效的在线算法。此外,我们将任务调度融入框架中,构建了一个新的联合优化问题,同时提出一种基于切换的算法以分治方式求解该新问题。所提算法通过大量实验进行了评估。

该领域有许多值得探索的开放性问题,我们期望我们的工作能够促进更多未来的探索,包括但不限于以下问题。
(1) 在用户‐服务器关联下的服务部署,其中用户和边缘服务器协商将多大比例的任务卸载到服务器上。
(2) 在一对多场景下的服务部署,其中一个应用任务需要服务器上提供多个服务。
(3) 基于分布式技术的并行服务部署算法设计。

您可能感兴趣的与本文相关的镜像

GPT-oss:20b

GPT-oss:20b

图文对话
Gpt-oss

GPT OSS 是OpenAI 推出的重量级开放模型,面向强推理、智能体任务以及多样化开发场景

内容概要:本文围绕可变桨叶四旋翼无人机的规范控制与点对点运动模拟展开,重点研究优化推力分配策略在翻转动作中的应用与性能比较。通过Matlab代码实现,构建了四旋翼动力学模型,并设计了多种控制算法以实现精确的姿态调整与轨迹跟踪。研究对比了不同推力分配方案在执行高机动性翻转动作时的稳定性、能耗效率与响应速度,旨在提升无人机在复杂飞行任务中的动态性能与控制精度。该仿真研究为无人机飞控系统的设计与优化提供了理论依据和技术支持。; 适合人群:具备一定自动控制理论基础和Matlab编程能力,从事无人机控制、飞行器动力学或机器人系统研究的科研人员及研究生。; 使用场景及目标:① 实现四旋翼无人机在三维空间中的精确点对点运动控制;② 对比分析不同推力分配策略在执行翻转等高难度动作时的控制效果与能耗表现,优化飞行性能;③ 为无人机自主飞行、特技飞行及复杂环境下的机动控制提供算法验证平台。; 阅读建议:此资源以Matlab仿真为核心,建议读者结合相关控制理论知识,深入理解代码实现细节,重点关注动力学建模、控制律设计与推力分配模块。在学习过程中,应动手调试参数,复现文中翻转动作的仿真结果,并尝试拓展至其他复杂飞行任务,以加深对无人机控制机理的理解。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值