Apparatus and method using a decentralized game approach for radio and computing resource allocation in co-located edge computing
11470481 · 2022-10-11
Assignee
Inventors
Cpc classification
H04W16/14
ELECTRICITY
International classification
Abstract
The present disclosure relates to a technical idea for managing radio and computing resources in coexistence edge computing. A method of allocating radio and computing resources in coexistence edge computing according to one embodiment may include a step of formulating a resource allocation problem for two different entities with conflicting relationships in minimizing latency as a generalized Nash equilibrium problem (GNEP), a step of converting the formulated GNEP into a Nash equilibrium problem (NEP), and a step of allocating resources on a penalty basis for the converted NEP.
Claims
1. A method of allocating resources in coexistence edge computing, wherein the method uses a distributed game approach and comprises: selecting an initial penalty parameter and resource allocation by two different entities with conflicting relationships in minimizing latency; solving, by each of the two different entities, a predefined self-optimization problem according to the selected initial penalty parameter and resource allocation; determining, by each of the two different entities, whether a coupling constraint for resource allocation has been satisfied in relation to the self-optimization problem to determine whether the self-optimization problem has been solved; and searching, by each of the two different entities, for a generalized Nash equilibrium (GNE) for terminating an algorithm when determining that the self-optimization problem has been solved based on the determination result, or updating an initial penalty parameter when determining that the self-optimization problem has not been solved based on the determination result.
2. The method according to claim 1, wherein one of the two different entities is a computing resource provider (CRP), and the self-optimization problem for the CRP is defined by:
3. The method according to claim 1, wherein one of the two different entities is a mobile network operator (MNO), and the self-optimization problem for the MNO is defined by:
4. The method according to claim 1, wherein the self-optimization problem is predefined using at least one of objective function which is an end-to-end delay time of all users, uplink resource allocation vector, stability of a computing resource queue related to uplink and computing resource allocation, strategy of a computing resource provider (CRP) to determine limit of a computing resource of the CRP, index of a player, wherein a CRP is 0 and a mobile network operator (MNO) is 1, . . . , N.
5. A system comprising a first entity and a second entity, the first entity and the second entity each comprising a hardware processor that executes instructions that cause the hardware processor: to select an initial penalty parameter and resource allocation, wherein the first entity and the second entity have conflicting relationships in minimizing latency, to solve a predefined self-optimization problem according to the selected initial penalty parameter and resource allocation, to determine whether a coupling constraint for resource allocation has been satisfied in relation to the self-optimization problem to determine whether the self-optimization problem has been solved, and to search for a generalized Nash equilibrium (GNE) for terminating an algorithm when determining that the self-optimization problem has been solved based on the determination result, or updating an initial penalty parameter when determining that the self-optimization problem has not been solved based on the determination result.
6. The system according to claim 5, wherein the first entity or the second entity is a computer resource provider (CRP) and the self-optimization problem is defined by:
7. The system according to claim 5, wherein the first entity or the second entity is a mobile network operator (MNO) and the self-optimization problem is defined by:
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1) The above and other objects, features and other advantages of the present disclosure will be more clearly understood from the following detailed description taken in conjunction with the accompanying drawings, in which:
(2)
(3)
(4)
(5)
DETAILED DESCRIPTION OF THE DISCLOSURE
(6) Specific structural and functional descriptions of embodiments according to the concept of the present disclosure disclosed herein are merely illustrative for the purpose of explaining the embodiments according to the concept of the present disclosure. Furthermore, the embodiments according to the concept of the present disclosure can be implemented in various forms and the present disclosure is not limited to the embodiments described herein.
(7) The embodiments according to the concept of the present disclosure may be implemented in various forms as various modifications may be made. The embodiments will be described in detail herein with reference to the drawings. However, it should be understood that the present disclosure is not limited to the embodiments according to the concept of the present disclosure, but includes changes, equivalents, or alternatives falling within the spirit and scope of the present disclosure.
(8) The terms such as “first” and “second” are used herein merely to describe a variety of constituent elements, but the constituent elements are not limited by the terms. The terms are used only for the purpose of distinguishing one constituent element from another constituent element. For example, a first element may be termed a second element and a second element may be termed a first element without departing from the teachings of the present disclosure.
(9) It should be understood that when an element is referred to as being “connected to” or “coupled to” another element, the element may be directly connected or coupled to the other element or intervening elements may be present. In contrast, when an element is referred to as being “directly connected to” or “directly coupled to” another element, there are no intervening elements present. Other words used to describe the relationship between elements or layers should be interpreted in a like fashion (e.g., “between,” versus “directly between,” “adjacent,” versus “directly adjacent,” etc.).
(10) The terms used in the present specification are used to explain a specific exemplary embodiment and not to limit the present inventive concept. Thus, the expression of singularity in the present specification includes the expression of plurality unless clearly specified otherwise in context. Also, terms such as “include” or “comprise” should be construed as denoting that a certain characteristic, number, step, operation, constituent element, component or a combination thereof exists and not as excluding the existence of or a possibility of an addition of one or more other characteristics, numbers, steps, operations, constituent elements, components or combinations thereof.
(11) Unless otherwise defined, all terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this disclosure belongs. It will be further understood that terms, such as those defined in commonly used dictionaries, should be interpreted as having a meaning that is consistent with their meaning in the context of the relevant art and will not be interpreted in an idealized or overly formal sense unless expressly so defined herein.
(12) Hereinafter, preferred embodiments of the present disclosure will be described in detail with reference to the accompanying drawings. However, the scope of the present disclosure is not limited by these embodiments. Like reference numerals in the drawings denote like elements.
(13)
(14) The system model 100 according to one embodiment may be molded using a Poisson process that takes into account the upper delay limit in radio transmission and cloud execution.
(15) Since a generalized Nash equilibrium problem (GNEP) captures coupling between two players, the GNEP may be a prominent approach to solve resource allocation problems. Formulation of service provision in a multi-cloud environment using the GNEP may be confirmed in the system model 100 according to one embodiment.
(16) In the system model 100 according to one embodiment, a GNEP-based algorithm may be used to reserve a user to resolve offloading decision. For this purpose, a GNEP and a solution approach may be discussed, and a penalty-based algorithm may be studied to efficiently solve the GNEP.
(17) To offload tasks to an MEC server, the radio resource of an MNO for transmitting and receiving data and the computing resource of a CRP for treating tasks are required. Such strong coupling between providers may make a resource allocation problem difficult, but the system model 100 according to one embodiment formulates a resource allocation problem as a GNEP and operates as a penalty-based algorithm for solving the formulated GNEP.
(18) The system model 100 according to one embodiment may represent a system model of a co-located mobile edge computing system.
(19) For this purpose, reference number 110 denotes a plurality of mobile network operators (MNOs), and reference number 120 denotes a computing resource provider (CRP).
(20) According to the system model 100, a mobile network operator (MNO) and a computing resource provider (CRP) may be placed in the same tower station 130.
(21) The MNO of the system model 100 owns a radio resource and a physical apparatus that are required to transmit and receive radio signals.
(22) However, a space of the tower station 130 and other facilities, such as cooling facilities and electrical facilities, of a tower provider may be leased. The CRP leases a space and facilities from the tower provider and distributes servers to a tower.
(23) When a user offloads tasks to an MEC server, i.e., to use services provided by a CRP, radio resources managed by an MNO and computing resources owned by a CRP are required. This offloading requires three steps: an upload step, a computing step, and a download step. In this case, each step may be modeled as a queue.
(24) User u may create a task of speed λ.sub.u that follows a homogeneous Poisson process. In addition, the input file size of this task follows an exponential distribution having mean b.sub.u.
(25) That is, the service speed of an uplink queue, which is a user queue, is
(26)
which is the data rate of uplink transmission divided by an input file size.
(27) Offloaded tasks arrive at an MEC server pool at a rate of
(28)
which is a sum of the service rates of all user queues. The essential CPU cycles of these tasks follow an exponential distribution using mean cu.
(29) The MEC server pool calculates this as in a processor sharing approach. The service speed of the MEC server pool is
(30)
divided by CPU cycles required by CPU cycles per second.
(31) After the MEC server pool calculates user's tasks, the result arrives at the base station of a corresponding MNO at a rate of
(32)
This result follows an exponential distribution with mean o.sub.u. The corresponding base station j transmits the result back to the user at a rate of
(33)
which is the data rate of downlink transmission divided by a result file size.
(34)
(35) In the method of allocating radio and computing resources in coexistence edge computing according to one embodiment, a resource allocation problem for two different entities with conflicting relationships in minimizing latency may be formulated as a generalized Nash equilibrium problem (GNEP) (step 201).
(36) For example, two different entities may be interpreted as a mobile network operator (MNO) and a computing resource provider (CRP).
(37) In this case, for formulation into the GNEP, the resource allocation problem may be formulated as the GNEP considering the connection relationship between radio resource allocation of an MNO and computing resource allocation of a CRP.
(38) In addition, in the method of allocating radio and computing resources in coexistence edge computing according to one embodiment, the formulated GNEP may be converted into a Nash equilibrium problem (NEP) (step 202).
(39) In addition, in the method of allocating radio and computing resources in coexistence edge computing according to one embodiment, resources may be allocated on a penalty basis for the converted NEP (step 203).
(40) A method of allocating resources on a penalty basis will be described in detail with reference to
(41)
(42) In the method of allocating resources on a penalty basis according to one embodiment, to allocate resources on a penalty basis, an initial penalty parameter and resource allocation may be selected by two different entities (step 301).
(43) Next, in the method of allocating resources on a penalty basis according to one embodiment, each predefined self-optimization problem may be solved according to the selected initial penalty parameter and resource allocation (step 302).
(44) In addition, in the method of allocating resources on a penalty basis according to one embodiment, it is possible to determine whether the self-optimization problem has been solved (step 303).
(45) For example, to determine whether the self-optimization problem has been solved, in relation to the self-optimization problem, by determining whether a coupling constraint for resource allocation has been satisfied, it is possible to determine whether the self-optimization problem has been solved.
(46) Specifically, an optimization problem for the CRP of the self-optimization problems used in the method of allocating resources on a penalty basis according to one embodiment may be defined by Equation 1 below:
(47)
(48) In Equation 1, the components of a delay function may be calculated as follows:
(49)
(50) In addition, in Equation 1, the meaning of each variable is as follows.
(51) Θ.sub.CRP represents the objective function of a CRP, which is the end-to-end delay time of all users.
(52) W.sup.ul represents an uplink resource allocation vector.
(53) BS.sub.j represents base station j.
(54) g(W.sup.ul,m) represents the stability of a computing resource queue related to uplink and computing resource allocation.
(55) S.sub.0 represents the strategy of a CRP to determine the limit of the computing resource of the CRP.
(56) p may represent the index of a player, wherein a CRP is 0 and an MNO is 1, . . . , N.
(57) An optimization problem for an MNO of self-optimization problems used in the method of allocating resources on a penalty basis according to one embodiment may be defined by Equation 2 below.
(58) An optimization problem for the MNO among the self-optimization problems may be defined by Equation 2 below:
(59)
(60) In Equation 2, the components of a delay function may be calculated as follows:
(61)
(62) p may represent the index of a player, wherein a CRP is 0 and an MNO is 1, . . . , N.
(63) In the method of allocating resources on a penalty basis according to one embodiment, upon determining that the self-optimization problem has been solved based on the determination result, a step of searching for a GNE for terminating an algorithm may be performed, or upon determining that the self-optimization problem has not been solved based on the determination result, an initial penalty parameter may be updated (step 304).
(64)
(65) Each player, such as a CRP and an MNO, selects an initial penalty parameter and resource allocation. Based on the selected parameter, a self-optimization problem may be solved as defined in Equations 1 and 2.
(66) When a coupling constraint for optimal resource allocation is satisfied, a GNE that terminates an algorithm is found. Otherwise, the player has to update a penalty parameter and solve an optimization problem until a coupling constraint condition is satisfied.
(67) According to one embodiment of the present disclosure, resource allocation of mobile edge computing includes resource management for two different entities and multiple service providers with conflicting interests.
(68) By efficiently managing radio and computing resources, minimum latency having conflicting interests between a mobile network operator and a computing resource provider is provided to a service.
(69) As a commercialization example, a proposed method may be implemented for a novel business model of co-located mobile edge computing in which a mobile network operator is in charge of radio resource allocation and a computing resource provider controls computing resources.
(70) The algorithm of
(71) In addition, the algorithm may be divided into an operation 410 in a CRP and an operation 420 in an MNO, and the operation 410 in the CRP and the operation 420 in the MNO may be independent of each other and may be processed independently.
(72) For convenience of explanation, first looking at the operation in the CRP, the CRP may select an initial penalty parameter and resource allocation (411).
(73) For example, the initial penalty parameter may be expressed as follows:
κ.sub.p.sup.BS.sup.
(74) In addition, initial points for resource allocation may be denoted by m.sup.k, W.sup.ul,k, W.sup.dl,k.
(75) Next, the CRP may solve a penalty problem using an optimization problem for the CRP (412).
(76) For example, the optimization problem for the CRP may be defined through Equation 1 described above.
(77) In addition, a processor may determine whether a self-optimization problem has been solved through an algorithm (430).
(78) For this purpose, the processor may determine that the self-optimization problem has been solved when both conditions of Equation 3 are satisfied.
f.sub.j(W.sub.j.sup.*,dl,m.sub.j*)≤0,∀j
g(W.sup.*,ul,m*)≤0 [Equation 3]
(79) In Equation 3, f.sub.j(W.sub.j.sup.*,dl, m.sub.j*) represents the stability of a downlink communication resource queue for optimal downlink and computing resource allocation, and g(W.sup.*,ul,m*) represents the stability of a computing resource queue for optimal uplink and computing resource allocation.
(80) As a result of determination of reference number 430, upon determining that the self-optimization problem has not been solved, an initial penalty parameter may be updated (413).
(81) In addition, as a result of determination of reference number 430, upon determining that the self-optimization problem has been solved, a step of searching for a GNE for terminating an algorithm may be performed (440).
(82) When Equation 3 is satisfied, the GNE may be determined as [W.sup.*,ul,m*,W.sup.*,dl].
(83) Next, looking at operations in MNOs first, an initial penalty parameter and resource allocation may be selected by the MNO (421).
(84) Next, MNOs may use optimization problems for the MNOs to solve penalty problems (422).
(85) In addition, a processor may determine whether a self-optimization problem has been solved through an algorithm (430).
(86) Upon determining that the self-optimization problem has not been solved based on the determination result of reference number 430, an initial penalty parameter may be updated (423).
(87) Specifically, the CRP may update an initial penalty parameter as in Equation 4, and the MNO may update an initial penalty parameter as in Equation 5.
(88)
(89) In addition, as a result of determination of reference number 430, upon determining that the self-optimization problem has been solved, a step of searching for a GNE for terminating an algorithm may be performed (440). In addition, when Equation 3 is satisfied, a GNE may be determined as [W.sup.*,ul,m*,W.sup.*,dl].
(90) As a result, when the present disclosure is used, radio and computing resources owned by two different entities, a mobile network operator (MNO) and a computing resource provider (CRP), may be efficiently managed in a novel business model.
(91) According to one embodiment, radio and computing resources owned by two different entities, a mobile network operator (MNO) and a computing resource provider (CRP), can be efficiently managed in a novel business model.
(92) The apparatus described above may be implemented as a hardware component, a software component, and/or a combination of hardware components and software components. For example, the apparatus and components described in the embodiments may be achieved using one or more general purpose or special purpose computers, such as, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate array (FPGA), a programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions. The processing device may execute an operating system (OS) and one or more software applications executing on the operating system. In addition, the processing device may access, store, manipulate, process, and generate data in response to execution of the software. For ease of understanding, the processing apparatus may be described as being used singly, but those skilled in the art will recognize that the processing apparatus may include a plurality of processing elements and/or a plurality of types of processing elements. For example, the processing apparatus may include a plurality of processors or one processor and one controller. Other processing configurations, such as a parallel processor, are also possible.
(93) The software may include computer programs, code, instructions, or a combination of one or more of the foregoing, configure the processing apparatus to operate as desired, or command the processing apparatus, either independently or collectively. In order to be interpreted by a processing device or to provide instructions or data to a processing device, the software and/or data may be embodied permanently or temporarily in any type of a machine, a component, a physical device, a virtual device, a computer storage medium or device, or a transmission signal wave. The software may be distributed over a networked computer system and stored or executed in a distributed manner. The software and data may be stored in one or more computer-readable recording media.
(94) The methods according to the embodiments of the present disclosure may be implemented in the form of a program command that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium can store program commands, data files, data structures or combinations thereof. The program commands recorded in the medium may be specially designed and configured for the present disclosure or be known to those skilled in the field of computer software. Examples of a computer-readable recording medium include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, magneto-optical media such as floptical disks, or hardware devices such as ROMs, RAMs and flash memories, which are specially configured to store and execute program commands. Examples of the program commands include machine language code created by a compiler and high-level language code executable by a computer using an interpreter and the like. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.
(95) Although the present disclosure has been described with reference to limited embodiments and drawings, it should be understood by those skilled in the art that various changes and modifications may be made therein. For example, the described techniques may be performed in a different order than the described methods, and/or components of the described systems, structures, devices, circuits, etc., may be combined in a manner that is different from the described method, or appropriate results may be achieved even if replaced by other components or equivalents.
(96) Therefore, other embodiments, other examples, and equivalents to the claims are within the scope of the following claims.