CN114466023B - 面向大规模边缘计算系统的计算服务动态定价方法及系统 - Google Patents
面向大规模边缘计算系统的计算服务动态定价方法及系统 Download PDFInfo
- Publication number
- CN114466023B CN114466023B CN202210216002.9A CN202210216002A CN114466023B CN 114466023 B CN114466023 B CN 114466023B CN 202210216002 A CN202210216002 A CN 202210216002A CN 114466023 B CN114466023 B CN 114466023B
- Authority
- CN
- China
- Prior art keywords
- edge computing
- task
- time slot
- server
- edge
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 31
- 238000004364 calculation method Methods 0.000 claims abstract description 47
- 230000002787 reinforcement Effects 0.000 claims abstract description 47
- 230000008901 benefit Effects 0.000 claims abstract description 22
- 230000007774 longterm Effects 0.000 claims abstract description 6
- 239000003795 chemical substances by application Substances 0.000 claims description 35
- 238000004422 calculation algorithm Methods 0.000 claims description 18
- 239000013598 vector Substances 0.000 claims description 12
- 230000009471 action Effects 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 6
- 238000011156 evaluation Methods 0.000 claims description 3
- 230000006399 behavior Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000012549 training Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000035755 proliferation Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000003064 k means clustering Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1023—Server selection for load balancing based on a hash applied to IP addresses or costs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/505—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5072—Grid computing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0201—Market modelling; Market analysis; Collecting market data
- G06Q30/0206—Price or cost determination based on market factors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1008—Server selection for load balancing based on parameters of servers, e.g. available memory or workload
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/502—Proximity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/508—Monitor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/509—Offload
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Accounting & Taxation (AREA)
- Development Economics (AREA)
- Finance (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Entrepreneurship & Innovation (AREA)
- General Business, Economics & Management (AREA)
- Game Theory and Decision Science (AREA)
- Economics (AREA)
- Marketing (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种面向大规模边缘计算系统的计算服务动态定价方法及系统,包括步骤:边缘计算服务器训练一个动态定价强化学习智能体;每台边缘计算服务器根据动态定价强化学习智能体的输出在每个时隙开始时发布新的任务卸载的服务定价,通过无线网络连接到该边缘计算服务器的用户移动设备对发布的服务定价进行反馈,反馈包括时隙内用户移动设备卸载给该边缘计算服务器的任务计算量;在该时隙结束时,将时隙内的边缘计算服务器的负载数据、服务定价和定价带来的收益输入动态定价强化学习智能体进行学习,以最大化每个时隙的长期收益作为学习目标,优化动态定价强化学习智能体。本发明可仅通过与用户交互迭代就可以不断学习改进动态定价策略。
Description
技术领域
本发明涉及边缘计算领域,尤其涉及面向大规模边缘计算系统的计算服务动态定价方法及系统。
背景技术
移动计算设备(例如智能手机和智能汽车)的迅猛发展带来了移动计算的繁荣,移动计算设备上涌现出了多种新型应用,例如图像处理、增强现实、云游戏等,这些新型应用大多属于计算密集和实时型应用,对计算和通信资源的需求较高,使得移动计算设备在计算能力、存储容量和电池寿命方面面临着巨大的挑战。云计算作为当前最流行的网络计算模式,具有计算能力强、覆盖范围大的优点,可以解决移动设备计算能力差、存储容量小和电池寿命短的问题。然而,由于负责执行计算任务的云计算数据中心往往部署在离终端设备较远的位置,带来了较高的通信时间开销,这一缺点对于时效性要求较高的新型应用来说尤为致命。
为了克服移动计算设备自身算力不足和云计算中延迟高的问题,人们提出了移动边缘计算和任务卸载技术。移动边缘计算将原来置于云计算数据中心的功能和服务下放至移动网络的边缘,并在移动边缘网络中部署移动边缘计算服务器,提供处理云计算功能和服务所需要的通信、存储和计算资源,从而使用户可以获得高带宽与超低时延的高质量网络服务。任务卸载技术是移动边缘计算的关键技术之一,是指终端设备将全部或者部分计算任务上传给边缘计算环境执行的技术。任务卸载技术将执行计算密集型、实时响应型等重负荷应用时所需的资源提供给资源受限的终端设备,达到加快应用程序的运行,减少设备能源消耗的目的,解决了移动计算设备在计算、存储及能效等多方面的不足。
移动边缘计算服务器的计算资源属于稀缺资源,然而使用任务卸载服务的用户是自私的,当大量用户短时间内不受限制地向移动边缘计算服务器卸载任务时,会造成移动边缘计算服务器负载过重,降低了所有用户的服务体验,移动边缘计算服务器处于不必要的拥堵中,降低了整个系统的资源分配效率。因此,在移动边缘计算资源分配相关研究中,价格作为控制供需的手段被用来调整移动边缘计算系统的资源分配情况。一方面,合理的价格可以控制终端设备的任务卸载决策,筛选出最需要移动边缘计算服务的终端设备,以减少服务端不必要的负载;另一方面,定价带来的收益可以填补移动边缘计算服务运营商的成本,较高的利润还可以激励服务商对系统进行持续维护,未来为用户提供更好的服务体验。
在较长的时间段中的不同时刻,由于用户移动和网络情况的动态变化,移动边缘计算服务器的负载也会不断变化,为了最大化计算资源的利用率,边缘计算服务的定价也应当是根据负载状况动态调整的,以吸引或者避免更多的用户卸载计算任务。为了应对真实世界中的随机情况(用户的随机移动和网络情况的波动),需要研究设计自适应的智能动态定价算法,以增加边缘计算服务商的收益,提高用户服务体验。
一个大型移动边缘计算系统由在系统内不同地理位置部署的许多移动边缘计算服务器组成。不同地理位置的用户密度及移动趋势差异会造成不同服务器间负载水平和负载变化规律的差异。可以尝试利用服务器之间的负载差异,将计算任务在服务器之间合理调度,缓解热门位置服务器的拥堵,利用冷门位置服务器的空闲资源,从而进一步增加服务商的收益。为了实现这个目标,需要设计相应的智能任务调度算法,根据系统内各服务器的负载情况智能调度任务。
在实际情况中,作为服务定价方的服务提供商追求最大化收益,作为服务购买方的用户追求最小化支出,双方实质上是博弈的关系,因此服务器在进行定价决策时无法提前得知用户的精确成本信息和移动情况作为参考,而传统方法解决此类问题时多采用对场景进行理论建模然后进行数学优化的解法,这种解法得到的结果往往只适用于理论建模的场景,面对实际情况下用户的随机移动、计算任务的随机到达无能为力。
为了解决用户的任务卸载行为(包括用户的移动趋势和成本函数)无法得知的问题,本发明提出了基于深度强化学习和数据分析的动态定价算法和动态任务调度算法。
发明内容
本发明提供了一种面向大规模边缘计算系统的计算服务动态定价方法及系统,用以解决边缘计算系统中由于用户行为随机变化导致的计算资源利用率不足、利用不均衡和获利能力不足的问题的技术问题。
为解决上述技术问题,本发明提出的技术方案为:
一种面向大规模边缘计算系统的计算服务动态定价方法,包括以下步骤:
边缘计算服务器训练一个动态定价强化学习智能体;
每台边缘计算服务器根据动态定价强化学习智能体的输出在每个时隙开始时发布新的任务卸载的服务定价,通过无线网络连接到该边缘计算服务器的用户移动设备对发布的服务定价进行反馈,反馈包括时隙内用户移动设备卸载给该边缘计算服务器的任务计算量;
在该时隙结束时,将时隙内的边缘计算服务器的负载数据、服务定价和定价带来的收益输入动态定价强化学习智能体进行学习,以最大化每个时隙的长期收益作为学习目标,优化动态定价强化学习智能体。
优选地,用户移动设备根据以下条件决定是否卸载任务:
用户移动设备根据边缘计算成本信息将边缘计算的成本和本地计算的成本进行比较,如果边缘计算成本较低,则将计算任务通过无线网络卸载给边缘计算服务器执行,否则在用户本地完成计算任务。
优选地,用户移动设备的边缘计算成本和本地计算的成本计算如下:
优选地,在边缘计算服务器训练一个动态定价强化学习智能体之前,方法还包括:
收集历史一段时间内产生的连接数据集;
根据连接数据集内统计的历史负载数据计算每个边缘计算服务器的负载规律特性,根据负载规律特性将所有边缘计算服务器分成多个小组;
分组后,同一小组内的边缘计算服务器共同训练一个动态定价强化学习智能体。
优选地,根据负载规律特性将所有边缘计算服务器分成多个小组,是将负载规律特性相似的边缘计算服务器分到一个小组里,包括:
分析每个边缘计算服务器的历史负载情况数据,将每个边缘计算服务器的负载情况归纳为一个特征向量,特征向量表示如下:
使用聚类算法根据特征向量将边缘计算服务器分成多个小组。
优选地,设置一个用于在不同的小组之间进行任务调度的任务调度控制器;
在每个时隙最开始时,任务调度控制器选择一个小组作为本时隙的任务调度目的小组,在每个时隙末,任务调度控制器计算本时隙的任务调度指数,作为本时隙任务调度决策优劣的评价标准;然后将本时隙的负载数据、任务调度决策和任务调度指数提交给任务调度控制器进行学习;
下一时隙开始时,任务调度控制器根据各个小组的负载状况重新指定该时隙的任务调度目的小组,重复上述步骤以循环迭代。
优选地,当一个边缘计算服务器从用户处收到卸载来的计算任务时,向任务调度控制器发起调度请求,任务调度控制器将该任务转发给调度目的小组,在调度目的小组内,将任务分配给负载最轻的边缘计算服务器。
优选地,任务调度控制器的学习方案的状态、动作和奖励值如下:
动作:为当前时隙的任务调度目的小组的编号;
奖励值:奖励值为本时隙内发生的所有任务调度的服务器对的价格差:
本发明还提供一种计算机系统,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述方法的步骤。
本发明具有以下有益效果:
1、本发明的面向大规模边缘计算系统的计算服务动态定价方法及系统,边缘计算服务器不需要得知用户任务卸载行为的预设信息,仅仅通过与用户交互迭代就可以不断学习改进动态定价策略。
2、在优选方案中,本发明在动态定价算法的基础上,还实现了任务在边缘计算服务器间的动态调度算法,不仅考虑了每台边缘计算服务器的实际负载状况,还结合了其负载变化趋势进行综合研判,将计算任务在不同负载特征的边缘计算服务器之间进行调度。
除了上面所描述的目的、特征和优点之外,本发明还有其它的目的、特征和优点。下面将参照附图,对本发明作进一步详细的说明。
附图说明
构成本申请的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是本发明优选实施例的面向大规模边缘计算系统的计算服务动态定价方法的流程示意图;
图2是本发明优选实施例的边缘计算服务器分组示例的示意图;
图3是本发明优选实施例的任务调度控制器的工作的流程图;
图4是本发明优选实施例的分组后的边缘计算系统的架构示意图。
具体实施方式
以下结合附图对本发明的实施例进行详细说明,但是本发明可以由权利要求限定和覆盖的多种不同方式实施。
参见图1,本发明的面向大规模边缘计算系统的计算服务动态定价方法,包括以下步骤:
边缘计算服务器训练一个动态定价强化学习智能体;
每台边缘计算服务器根据动态定价强化学习智能体的输出在每个时隙开始时发布新的任务卸载的服务定价,通过无线网络连接到该边缘计算服务器的用户移动设备对发布的服务定价进行反馈,反馈包括时隙内用户移动设备卸载给该边缘计算服务器的任务计算量;
在该时隙结束时,将时隙内的边缘计算服务器的负载数据、服务定价和定价带来的收益输入动态定价强化学习智能体进行学习,以最大化每个时隙的长期收益作为学习目标,优化动态定价强化学习智能体。
通过上述步骤,边缘计算服务器不需要得知用户任务卸载行为的预设信息,仅仅通过与用户交互迭代就可以不断学习改进动态定价策略。
在一些实施方式中,面向大规模边缘计算系统的计算服务动态定价方法,可依照以下步骤进行:
(1)边缘计算场景初始化:本实施例适用的场景中包含分布在不同地理位置的多个边缘计算服务器和多个用户移动设备,其中用户移动设备数量远大于设置的边缘计算服务器的个数。根据所运行的应用的不同,每个用户移动设备有其独特的任务到达概率p,发明场景将时间离散化为时隙,每个时隙开始时,每个用户移动设备产生一个随机数p’,如果p’小于任务到达概率p,则一个计算任务到达该设备,如果p’大于任务产生概率p,则没有计算任务到达。
参见图1,计算任务到达后,用户移动设备向其连接的边缘计算服务器询问边缘计算成本信息,包括:1)边缘计算服务器能否在规定时限内完成计算任务和2)边缘计算服务的单价。
用户移动设备根据边缘计算成本信息将边缘计算的成本和本地计算的成本进行比较,如果边缘计算成本较低,则将计算任务通过无线网络卸载给边缘计算服务器执行,否则在用户本地完成计算任务。
(2)动态定价流程:服务价格由边缘计算服务商预先设置为固定的若干个档位。每个时隙开始时,边缘计算服务器会选择其中一个档位作为本时隙内的服务定价。
在每个时隙末,边缘计算服务器统计该时隙内所有用户移动设备卸载来的任务计算总量(以所有计算任务所需的CPU周期数计),作为用户移动设备对所发布的服务价格的反馈。每个时隙内,通过无线网络连接到该边缘计算服务器的用户移动设备对发布的服务定价进行反馈,反馈包括时隙内用户移动设备卸载给该边缘计算服务器的任务计算量。
在一个时隙结束时,边缘计算服务器将本时隙的边缘计算服务器的负载数据(用户的反馈情况)、发布的服务定价和定价带来的收益提交给动态定价强化学习智能体进行学习。下一时隙刚开始时,边缘计算服务器将自身负载大小输入给动态定价强化学习智能体,得到本时隙应发布的服务定价。动态定价强化学习智能体的学习目标被设置为最大化每个时隙的长期收益。本实施例中,收益就是在一个特定负载状态下的收益(未充分优化);长期收益就是针对这个特定的负载,算法充分优化收敛之后的收益。动态定价强化学习智能体通过发布不同的价格并收集用户反馈情况和获利情况(收益)不断改进其定价策略,提高获利能力。
实现智能动态定价的核心是动态定价强化学习智能体学习方案,强化学习算法采用D3QN深度强化学习算法。其中状态、动作、奖励值设计如下:
状态:状态是动态定价强化学习智能体从环境中观察到的主要信息,动态定价强化学习智能体依据观察到的状态做出决策。定义为一台边缘计算服务器当前任务队列的长度(以任务队列内所有计算任务所需的CPU周期总数计)。
动作:动作是动态定价强化学习智能体和环境的交互行为。定义为当前时隙边缘计算服务器发布的边缘计算服务价格。
奖励值:动态定价的目的是最大化边缘计算服务商的收益。定义为本时隙中边缘计算服务器的总收益。
在一些实施方式中,为了加速算法的收敛速度,还可以在边缘计算服务器小组之间进行任务调度,步骤如下:
(3)任务调度流程:任务调度是在不同的边缘计算服务器小组之间进行,小组的分组依据是各边缘计算服务器的历史负载情况,将负载规律相似的边缘计算服务器分到一个小组里。
分组时首先收集历史一段时间内产生的连接数据集;例如,本实施例收集了一个大学校园的校园Wi-Fi系统一个月内产生的连接数据集,数据集刻画了移动计算设备用户的移动趋势。实施时,还可以适用于其它具有大量移动用户和边缘计算节点的场景:港口,工厂,商圈等。
根据连接数据集内统计的历史负载数据计算每个边缘计算服务器的负载规律特性,分析每个边缘计算服务器的历史负载情况数据,将每个边缘计算服务器的负载情况归纳为一个特征向量,特征向量表示如下:
然后使用K-means聚类算法将依照特征向量将边缘计算服务器分组,参见图2。
分组后,不同的小组间做任务调度,充分利用不同小组的负载规律差别。需要说明的是,上述的面向大规模边缘计算系统的计算服务动态定价方法既适用于没有分组的场景,也适用于分组的场景,在分组后,而同一小组内的边缘计算服务器共享样本数据训练同一个动态定价强化学习智能体。
分组后的边缘计算系统的架构如图4所示,其中,最底层是用户(表示用户移动设备),有需求时将任务卸载给服务器(边缘计算服务器)层执行,多个负载规律相似的边缘计算服务器组成一个小组,小组内的边缘计算服务器共享动态定价强化学习样本,训练同一个动态定价强化学习智能体。图4中,最上层是任务调度控制器,其监控各个小组的负载状况,训练任务调度强化学习智能体,做出任务调度决策。
参见图3,为了监控每个小组的负载状况,另设置一个任务调度控制器(即任务调度强化学习智能体),同时其也负责训练强任务调度强化学习智能体,做出任务调度决策。
在每个时隙最开始时,任务调度控制器会选择一个小组作为本时隙的任务调度目的小组,在每个时隙末,任务调度控制器计算本时隙的任务调度指数,作为本时隙任务调度决策优劣的评价标准,然后将本时隙的负载数据、任务调度决策和任务调度指数提交给任务调度控制器进行学习。下一时隙开始时,任务调度控制器根据各个小组的负载状况重新指定该时隙的任务调度目的地小组,重复上述步骤以循环迭代。
当一个边缘计算服务器从用户处收到卸载来的计算任务时,向任务调度控制器发起调度请求,任务调度控制器将该任务转发给调度目的小组,在调度目的小组内,任务将会被分配给负载最轻的边缘计算服务器。
实现动态任务调度的核心是强化学习智能体学习方案,强化学习算法采用D3QN深度强化学习算法。其状态、动作、奖励值设计如下:
动作:定义为当前时隙的任务调度目的小组的编号。
奖励值:设置任务调度系统的目的是利用闲置边缘计算服务器的计算资源超售热门边缘计算服务器的计算资源,因此鼓励任务从高价的热门服务器转发到低价的闲置服务器,在一次任务调度中,调度源服务器的服务价格表示为,而目的服务器的服务价格表示为/>。奖励值被定义为本时隙内发生的所有任务调度的服务器对的价格差:
可见,本实施例鼓励价格相差较多的两个边缘计算服务器之间发生任务调度。
本发明实施例还提供一种计算机系统,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述任一实施例的步骤。
综上可知,本发明通过对边缘计算服务定价的交互过程进行建模,设计了一种基于深度强化学习的动态定价算法,解决了用户情况波动较大时静态定价算法导致的边缘计算资源利用率不足问题。另外利用了聚类算法对边缘计算服务器进行分组,分组后,同一小组内的边缘计算服务器利用收集到的样本共同训练一个动态定价强化学习智能体,加速了动态定价强化学习模型训练收敛速度的同时也提高了模型的泛化性。分组后,同一小组内的边缘计算服务器共同训练一个动态定价强化学习智能体,每台边缘计算服务器在每个时隙都会发布新的任务卸载服务定价,通过无线网络连接到该边缘计算服务器的用户对发布的服务定价进行反馈,在该时隙结束时,动态定价强化学习智能体根据该时段的服务器的负载情况(状态),服务定价(动作)和定价带来的收益(奖励值)进行学习,优化动态定价策略。
在优选实施方式中,为了监视每个小组的负载状况,做出最优的任务调度决策,还设置了负责训练任务调度强化学习智能体的任务调度控制器。动态任务调度在服务器小组之间进行,每个时隙都会指定一个服务器小组作为调度目的小组,系统内所有用户卸载的计算任务都会被转发到该目的小组,时隙结束后,任务调度强化学习智能体根据各小组负载情况(状态)、目的小组选择(动作)和任务调度带来的收益(奖励值)进行学习,优化动态任务调度策略。可以实时根据当前的环境状况作出最优决策,并不断从历史数据中学习优化,满足了动态变化场景要求的实时性和可扩展性,解决了大规模边缘计算场景下的计算资源利用率不足和获利不足的问题。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (7)
1.一种面向大规模边缘计算系统的计算服务动态定价方法,其特征在于,包括以下步骤:
收集历史一段时间内产生的连接数据集;
根据连接数据集内统计的历史负载数据计算每个边缘计算服务器的负载规律特性,根据负载规律特性将所有边缘计算服务器分成多个小组;
边缘计算服务器训练一个动态定价强化学习智能体;分组后,同一小组内的边缘计算服务器共同训练一个动态定价强化学习智能体;
每台边缘计算服务器根据动态定价强化学习智能体的输出在每个时隙开始时发布新的任务卸载的服务定价,通过无线网络连接到该边缘计算服务器的用户移动设备对发布的服务定价进行反馈,所述反馈包括所述时隙内用户移动设备卸载给该边缘计算服务器的任务计算量;
在该时隙结束时,将所述时隙内的边缘计算服务器的负载数据、服务定价和定价带来的收益输入所述动态定价强化学习智能体进行学习,以最大化每个时隙的长期收益作为学习目标,优化所述动态定价强化学习智能体;
还包括:设置一个用于在不同的小组之间进行任务调度的任务调度控制器;
在每个时隙最开始时,任务调度控制器选择一个小组作为本时隙的任务调度目的小组,在每个时隙末,任务调度控制器计算本时隙的任务调度指数,作为本时隙任务调度决策优劣的评价标准;然后将本时隙的负载数据、任务调度决策和任务调度指数提交给任务调度控制器进行学习;
下一时隙开始时,任务调度控制器根据各个小组的负载状况重新指定该时隙的任务调度目的小组,重复上述步骤以循环迭代。
2.根据权利要求1所述的面向大规模边缘计算系统的计算服务动态定价方法,其特征在于,用户移动设备根据以下条件决定是否卸载任务:
用户移动设备根据边缘计算成本信息将边缘计算的成本和本地计算的成本进行比较,如果边缘计算成本较低,则将计算任务通过无线网络卸载给边缘计算服务器执行,否则在用户本地完成计算任务。
4.根据权利要求1所述的面向大规模边缘计算系统的计算服务动态定价方法,其特征在于,所述根据负载规律特性将所有边缘计算服务器分成多个小组,是将负载规律特性相似的边缘计算服务器分到一个小组里,包括:
分析每个边缘计算服务器的历史负载情况数据,将每个边缘计算服务器的负载情况归纳为一个特征向量,特征向量表示如下:
[p1,p2,p3,…,p24,c]
其中,pi表示数据集中平均每天第i小时内产生的连接总数,c表示该数据集中平均每天在边缘计算服务器上产生的连接总数;
使用聚类算法根据特征向量将边缘计算服务器分成多个小组。
5.根据权利要求1所述的面向大规模边缘计算系统的计算服务动态定价方法,其特征在于,当一个边缘计算服务器从用户处收到卸载来的计算任务时,向任务调度控制器发起调度请求,任务调度控制器将该任务转发给调度目的小组,在调度目的小组内,将任务分配给负载最轻的边缘计算服务器。
6.根据权利要求1所述的面向大规模边缘计算系统的计算服务动态定价方法,其特征在于,所述任务调度控制器的学习方案的状态、动作和奖励值如下:
状态:设任务调度控制器监控了n个小组的负载状况,任务调度控制器的状态为一个维度为n的向量v,v的第i个分量等于编号为i的小组内所有边缘计算服务器的任务队列长度的平均值;
动作:为当前时隙的任务调度目的小组的编号;
奖励值:奖励值为本时隙内发生的所有任务调度的服务器对的价格差:
rt=∑(pd-ps)
其中,在一次任务调度中,ps为调度源服务器的服务价格,pd为调度的目的服务器的服务价格。
7.一种计算机系统,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现上述权利要求1至6任一所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210216002.9A CN114466023B (zh) | 2022-03-07 | 2022-03-07 | 面向大规模边缘计算系统的计算服务动态定价方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210216002.9A CN114466023B (zh) | 2022-03-07 | 2022-03-07 | 面向大规模边缘计算系统的计算服务动态定价方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114466023A CN114466023A (zh) | 2022-05-10 |
CN114466023B true CN114466023B (zh) | 2023-07-11 |
Family
ID=81418344
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210216002.9A Active CN114466023B (zh) | 2022-03-07 | 2022-03-07 | 面向大规模边缘计算系统的计算服务动态定价方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114466023B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115242838B (zh) * | 2022-07-20 | 2024-03-15 | 重庆交通大学 | 一种车载边缘计算中服务协同卸载的方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111756812A (zh) * | 2020-05-29 | 2020-10-09 | 华南理工大学 | 一种能耗感知的边云协同动态卸载调度方法 |
CN113993218A (zh) * | 2021-11-18 | 2022-01-28 | 国网福建省电力有限公司经济技术研究院 | 一种mec架构下基于多智能体drl的协作卸载和资源分配方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107547649A (zh) * | 2017-08-29 | 2018-01-05 | 中国民航大学 | 面向航空机场运行信息系统(aois)协同式的应急响应方法 |
CN109379727B (zh) * | 2018-10-16 | 2021-10-01 | 重庆邮电大学 | 车联网中基于mec的任务分布式卸载与协作执行方案 |
CN111147604B (zh) * | 2019-12-31 | 2022-03-29 | 重庆邮电大学 | 一种车联网边缘计算的负载均衡方法 |
CN111262944B (zh) * | 2020-01-20 | 2021-05-25 | 北京大学 | 异构移动边缘计算网络中分层任务卸载的方法与系统 |
CN111400001B (zh) * | 2020-03-09 | 2022-09-23 | 清华大学 | 一种面向边缘计算环境的在线计算任务卸载调度方法 |
CN112799833B (zh) * | 2021-01-26 | 2023-02-10 | 华南理工大学 | 面向边缘计算的车辆应用卸载的分布式定价方法与系统 |
CN112929915B (zh) * | 2021-02-20 | 2022-08-02 | 中南大学 | 一种移动边缘计算的动态数据卸载方法及系统 |
CN113766037B (zh) * | 2021-11-10 | 2022-02-11 | 中南大学 | 面向大规模边缘计算系统的任务卸载控制方法及系统 |
-
2022
- 2022-03-07 CN CN202210216002.9A patent/CN114466023B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111756812A (zh) * | 2020-05-29 | 2020-10-09 | 华南理工大学 | 一种能耗感知的边云协同动态卸载调度方法 |
CN113993218A (zh) * | 2021-11-18 | 2022-01-28 | 国网福建省电力有限公司经济技术研究院 | 一种mec架构下基于多智能体drl的协作卸载和资源分配方法 |
Also Published As
Publication number | Publication date |
---|---|
CN114466023A (zh) | 2022-05-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Chen et al. | Multiuser computation offloading and resource allocation for cloud–edge heterogeneous network | |
CN111866601B (zh) | 一种基于合作博弈的移动边缘场景中的视频码率决策方法 | |
CN111262944B (zh) | 异构移动边缘计算网络中分层任务卸载的方法与系统 | |
CN112804361B (zh) | 一种面向内容协作缓存的边缘联盟博弈方法 | |
Ke et al. | Adaptive computation offloading policy for multi-access edge computing in heterogeneous wireless networks | |
Siew et al. | Dynamic pricing for resource-quota sharing in multi-access edge computing | |
CN114938372B (zh) | 一种基于联邦学习的微网群请求动态迁移调度方法及装置 | |
CN114466023B (zh) | 面向大规模边缘计算系统的计算服务动态定价方法及系统 | |
Peng et al. | A decentralized collaborative approach to online edge user allocation in edge computing environments | |
Lyu et al. | Dynamic pricing scheme for edge computing services: A two-layer reinforcement learning approach | |
CN113573363A (zh) | 基于深度强化学习的mec计算卸载与资源分配方法 | |
Li et al. | DQN-enabled content caching and quantum ant colony-based computation offloading in MEC | |
Wang et al. | Joint service caching, resource allocation and computation offloading in three-tier cooperative mobile edge computing system | |
Zhang et al. | Quantified edge server placement with quantum encoding in internet of vehicles | |
Chen et al. | A game theoretic approach to task offloading for multi-data-source tasks in mobile edge computing | |
Wang | Edge artificial intelligence-based affinity task offloading under resource adjustment in a 5G network | |
Chen et al. | A pricing approach toward incentive mechanisms for participant mobile crowdsensing in edge computing | |
Nguyen et al. | EdgePV: collaborative edge computing framework for task offloading | |
KR20200068987A (ko) | 멀티 액세스 에지 컴퓨팅을 위한 딥 네크워크 방법 및 시스템 | |
Zhang et al. | Distributed pricing and bandwidth allocation in crowdsourced wireless community networks | |
Xu et al. | Basic: Distributed task assignment with auction incentive in uav-enabled crowdsensing system | |
CN117149351A (zh) | 一种基于预测的边缘协同计算迁移方法及系统 | |
CN117170839A (zh) | 基于云资源算力分配减少数据中心用能成本方法 | |
CN116321189A (zh) | 一种面向边缘计算中基于深度强化学习的服务器部署方法 | |
Busacca et al. | Drone-assisted edge computing: a game-theoretical approach |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |