IP Library › Granted Patent US 12,641,144
Granted Patent B2
US 12,641,144 · App. 17/990,944 · Granted May 26, 2026

Computation offloading method and communication apparatus

Inventors: Zhicheng Liu (Tianjin, CN); Jinduo Song (Tianjin, CN); Mingyu Zhao (Shanghai, CN); Xueqiang Yan (Shanghai, CN)
Assignee: HUAWEI TECHNOLOGIES CO., LTD.
H04L67/08G06F9/5077G06F9/5083G06F9/5094G06F18/217H04L67/10
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,641,144
App. No.
17/990,944
Granted
May 26, 2026
Kind
B2
Abstract

A computation offloading method and an apparatus. In network edge computation offloading, an edge node receives states of computational tasks sent by one or more served terminal devices and determines allocation of computing resources based on received states of one or more computational tasks. Then, the edge node broadcasts the allocation of the computing resources to the served terminal devices, and the terminal devices each determine, based on the resource allocation, whether to offload the computational task to the edge node for computing. Therefore, the edge node and the terminal device each can have a wider capability of sensing an environment in actual decision-making, thereby effectively improving decision-making benefits of the edge node and the terminal device.

Claims (65)

1 . A computation offloading method, comprising:

sending, by a first terminal device, a first state of a first computational task to a first edge node, wherein the first edge node is an edge node from which the first terminal device obtains computing resources, and the first state comprises at least one of a length of a data stream for transmitting the first computational task, a quantity of clock cycles that need to be consumed for computing the first computational task, or a penalty value of the first computational task;

receiving, by the first terminal device, a second offloading decision sent by the first edge node, wherein the second offloading decision is determined based on the first state, the second offloading decision comprises computing resource allocation information of one or more second terminal devices, the second terminal device is a terminal device that obtains computing resources from the first edge node, and the first terminal device is one of the one or more second terminal devices; and

determining, by the first terminal device using a multi-agent deep reinforcement learning (MADRL) algorithm that optimizes and weighs both delay and energy consumption, a first offloading decision of the first computational task according to the second offloading decision, wherein the energy consumption comprises a switching energy consumed by the first terminal device for switching from sleep power P sleep to a first operating power P 1 and the delay comprises a switching delay of switching the first terminal device from the sleep power P sleep to the first operating power P 1 , wherein the sleep power P sleep indicates operating power of the first terminal device to offload the first computational task to the first edge node for computing and the first operating power P 1 indicates operating power of the first computational task executed at the first terminal device; and

offloading, based upon the first offloading decision, the first terminal device offloads the first computational task from the first terminal device to the first edge node for computing.

2 . The computation offloading method according to claim 1 , further comprising:

when the first offloading decision indicates the first terminal device to offload the first computational task to the first edge node for computing,

sending, by the first terminal device, the first computational task to the first edge node; and

receiving, by the first terminal device, a computation result that is of the first computational task and that is sent by the first edge node; or

when the first offloading decision indicates the first terminal device not to offload the first computational task,

locally determining, by the first terminal device, a computation result of the first computational task.

3 . The computation offloading method according to claim 1 , wherein determining, by the first terminal device, the first offloading decision of the first computational task according to the second offloading decision further comprises:

updating, by the first terminal device, a parameter in the first state of the first computational task according to the second offloading decision, to obtain a second state of the first computational task;

computing, by the first terminal device, a cost value of the first computational task based on the second state, wherein the cost value of the first computational task comprises a local overhead and an offloading overhead of the first computational task; and

determining, by the first terminal device, the first offloading decision of the first computational task based on the cost value of the first computational task.

4 . The computation offloading method according to claim 3 , wherein

computing, by the first terminal device, the cost value of the first computational task based on the second state further comprises:

determining, by the first terminal device, the cost value of the first computational task based on the second state by using a first cost function in the MADRL algorithm, wherein the first cost function comprises an offload overhead function and a local computation overhead function, the offload overhead function is used to determine the offloading overhead of the first computational task, and the local computation overhead function is used to determine the local overhead of the first computational task; and

determining, by the first terminal device, the first offloading decision of the first computational task based on the cost value of the first computational task further comprises:

determining, by the first terminal device, the first offloading decision of the first computational task based on an iterative learning process using the MADRL algorithm.

5 . The computation offloading method according to claim 4 , wherein the offloading overhead of the first computational task comprises a first energy consumption overhead and a first delay overhead; the first energy consumption overhead comprises energy consumed by the first terminal device to offload the first computational task to the first edge node; and the first delay overhead comprises a delay of offloading, by the first terminal device, the first computational task to the first edge node and a delay of computing, by the first edge node, the computation result of the first computational task.

6 . The computation offloading method according to claim 4 , wherein the local overhead of the first computational task comprises a second energy consumption overhead and a second delay overhead; the second energy consumption overhead comprises energy consumed by the first terminal device for locally computing the first computational task and the switching energy; the second delay overhead comprises a delay of locally computing the first computational task by the first terminal device and the switching delay.

7 . The computation offloading method according to claim 6 , wherein the first offloading decision further comprises evaluating a second operating power corresponding to a minimum cost value of the first computational task when the MADRL algorithm meets a termination condition.

8 . The computation offloading method according to claim 6 , wherein when the first offloading decision indicates the first terminal device to offload the first computational task to the first edge node for computing, the first terminal device operates at the sleep power.

9 . The computation offloading method according to claim 5 , further comprising:

dynamically adjusting, by the first terminal device, the first delay overhead by using a first parameter, and the first parameter indicates a difference between processing a computational task by the first terminal device and processing a computational task by the first edge node.

10 . The computation offloading method according to claim 6 , further comprising:

dynamically adjusting, by the first terminal device, the first energy consumption overhead and the second energy consumption overhead by using a second parameter, and the second parameter indicates sensitivity of the first terminal device to an energy consumption overhead.

11 . A computation offloading method, comprising:

receiving, by a first edge node, states of one or more tasks, wherein the states of the one or more tasks comprise a first state of a first computational task sent by a first terminal device, the first edge node is an edge node that provides computing resources for one or more second terminal devices, and the first terminal device is one of the one or more second terminal devices;

determining, by the first edge node using a multi-agent deep reinforcement learning (MADRL) algorithm that optimizes and weights both delay and energy consumption, a second offloading decision based on the states of the one or more tasks, wherein the second offloading decision comprises computing resource allocation information of the first edge node for the one or more second terminal devices, wherein the energy consumption comprises a switching energy consumed by the first terminal device for switching from sleep power P sleep to a first operating power P 1 and the delay comprises a switching delay of switching the first terminal device from the sleep power P sleep to the first operating power P 1 , wherein the sleep power P sleep indicates operating power of the first terminal device to offload the first computational task to the first edge node for computing and the first operating power P 1 indicates operating power of the first computational task executed at the first terminal device;

broadcasting, by the first edge node, the second offloading decision to the one or more second terminal devices;

offloading the first computational task from first terminal device to the first edge node.

12 . The computation offloading method according to claim 11 , further comprising:

receiving, by the first edge node, the first computational task sent by the first terminal device;

determining, by the first edge node, a computation result of the first computational task; and

sending, by the first edge node, the computation result of the first computational task to the first terminal device.

13 . The computation offloading method according to claim 11 , wherein determining, by the first edge node, the second offloading decision based on the states of one or more tasks further comprises:

updating, by the first edge node, a third state of the first edge node based on the states of the one or more tasks to obtain a fourth state of the first edge node, wherein the third state is a state before the first edge node receives the states of the one or more tasks;

determining, by the first edge node, a cost value of the first edge node based on the fourth state, wherein the cost value of the first edge node is an overhead for allocating the computing resources by the first edge node to the one or more computational tasks; and

determining, by the first edge node, the second offloading decision based on the cost value of the first edge node.

14 . The computation offloading method according to claim 13 ,

wherein the determining, by the first edge node, the cost value of the first edge node based on the fourth state further comprises:

determining, by the first edge node, the cost value of the first edge node based on the fourth state by using a first cost function and a second cost function in the MADRL algorithm, wherein the first cost function comprises an offload overhead function and a local computation overhead function, the offload overhead function is used to determine offloading overheads of the one or more tasks, and the local computation overhead function is used to compute local overheads of the one or more tasks; the second cost function comprises an average cost function and a fair cost function, the average cost function is used to determine an average overhead of the one or more tasks based on the offloading overheads and the local overheads of the one or more tasks, and the fair cost function is used to determine a fair cost of the first edge node based on a quantity of second terminal devices that use computing resources of the first edge node; and

determining, by the first edge node, the cost value of the first edge node based on the average overhead of the one or more tasks and the fair cost of the first edge node.

15 . The computation offloading method according to claim 14 , wherein determining, by the first edge node, the second offloading decision based on the cost value of the first edge node further comprises:

when the MADRL algorithm meets a termination condition, determining, by the first edge node, the second offloading decision based on an iterative learning process using the MADRL algorithm.

16 . A communication apparatus, comprising at least one processor, wherein the at least one processor is coupled to at least one memory storing a computer program or instructions, which when configure the at least one processor to:

send a first state of a first computational task to a first edge node, wherein the first edge node is an edge node from which the apparatus obtains computing resources, and the first state comprises at least one of a length of a data stream for transmitting the first computational task, a quantity of clock cycles that need to be consumed for computing the first computational task, and a penalty value of the first computational task;

receive a second offloading decision sent by the first edge node, wherein the second offloading decision is determined based on the first state, the second offloading decision comprises computing resource allocation information of one or more second terminal devices, the second terminal device is a terminal device that obtains computing resources from the first edge node, and the communication apparatus is one of the one or more second terminal devices; and

determine a first offloading decision of the first computational task according to the second offloading decision using a multi-agent deep reinforcement learning (MADRL) algorithm that optimizes and weighs both delay and energy consumption, wherein the energy consumption comprises a switching energy consumed by the first terminal device for switching from sleep power P sleep to a first operating power P 1 and the delay comprises a switching delay of switching the first terminal device from the sleep power P sleep to the first operating power P 1 , wherein the sleep power P sleep indicates operating power of the first terminal device to offload the first computational task to the first edge node for computing and the first operating power P 1 indicates operating power of the first computational task executed at the first terminal device; and

offloading, based upon the first offloading decision, the first computational task from the one or more second terminal devices to the first edge node for computing.

17 . The communication apparatus according to claim 16 , wherein the computer program or instructions further configure the at least one processor to:

send, in response to the first offloading decision indicates apparatus to offload the first computational task to the first edge node for computing, the first computational task to the first edge node; and

receive a computation result that is of the first computational task and that is sent by the first edge node; or

locally determine, in response to the first offloading decision indicates apparatus not to offload the first computational task, a computation result of the first computational task.

18 . The communication apparatus according to claim 16 , wherein the computer program or instructions further configure the at least one processor to:

update a parameter in the first state of the first computational task according to the second offloading decision, to obtain a second state of the first computational task;

compute a cost value of the first computational task based on the second state, wherein the cost value of the first computational task comprises a local overhead and an offloading overhead of the first computational task; and

determine the first offloading decision of the first computational task based on the cost value of the first computational task.

19 . The communication apparatus according to claim 18 , wherein the computer program or instructions further configure the at least one processor to:

determine the cost value of the first computational task based on the second state by using a first cost function in the MADRL algorithm, wherein the first cost function comprises an offload overhead function and a local computation overhead function, the offload overhead function is used to determine the offloading overhead of the first computational task, and the local computation overhead function is used to determine the local overhead of the first computational task; and

iteratively update a state of the first computational task and the cost value of the first computational task of the apparatus based on the MADRL algorithm; and

determine, in response to the MADRL algorithm meeting a termination condition, the first offloading decision of the first computational task based on an iterative learning process using the MADRL algorithm.

20 . The communication apparatus according to claim 19 , wherein the offloading overhead of the first computational task comprises a first energy consumption overhead and a first delay overhead; the first energy consumption overhead comprises energy consumed by the apparatus to offload the first computational task to the first edge node; and the first delay overhead comprises a delay of offloading, by the apparatus, the first computational task to the first edge node and a delay of computing, by the first edge node, the computation result of the first computational task.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 6, 2023
From: LIU, ZHICHENG; SONG, JINDUO; ZHAO, MINGYU; YAN, XUEQIANG
To: HUAWEI TECHNOLOGIES CO., LTD.
Reel/Frame 062295/0896 →
Priority Claims (1)
CN 202010438782.2 · May 22, 2020 · national
Continuity (2)
Continuation PCTCN2021088860 · Apr 22, 2021
Related Publication 20230081937A1 · Mar 16, 2023
References Cited (24)
US 20160162004A1 · Ljubuncic · 2016 [cited by examiner]
US 20180183855A1 · Sabella et al. · 2018 [cited by applicant]
US 20190208007A1 · Khalid · 2019 [cited by examiner]
US 20200026575A1 · Guim Bernat et al. · 2020 [cited by applicant]
US 20210019194A1 · Bahl · 2021 [cited by examiner]
US 20210136785A1 · Elsayed · 2021 [cited by examiner]
US 20210174205A1 · Rosa · 2021 [cited by examiner]
US 20220360645A1 · Badic · 2022 [cited by examiner]
US 20220385536A1 · Suzuki · 2022 [cited by examiner]
CN 106534333A · 2017 [cited by applicant]
CN 106899026A · 2017 [cited by examiner]
CN 108540406A · 2018 [cited by examiner]
CN 108632861A · 2018 [cited by applicant]
CN 109684075A · 2019 [cited by applicant]
CN 109803292A · 2019 [cited by applicant]
CN 110351309A · 2019 [cited by applicant]
CN 110418416A · 2019 [cited by examiner]
CN 110418418A · 2019 [cited by applicant]
CN 110427261A · 2019 [cited by examiner]
CN 110958680A · 2020 [cited by examiner]
Author: Cao et al., Title: Multiagent Deep Reinforcement Learning for Joint Multichannel Access and Task Offloading of Mobile-Edge Computing in Industry 4.0, publication date: Mar. 16, 2020, Publisher: IEEE, Edition or … [cited by examiner]
Chen, “Decentralized Computation Offloading Game For Mobile Cloud Computing”, IEEE Transactions on Parallel and Distributed Systems, Apr. 11, 2014, 10 pages. [cited by applicant]
Chen et al., “Decentralized Computation Offloading for Multi-User Mobile Edge Computing: A Deep Reinforcement Learning Approach”, IEEE, Dec. 16, 2018, 27 pages. [cited by applicant]
Ren et al., “Federated Learning-based Computation Offloading Optimization in Edge Computing-supported Internet of Things”, IEEE Access, Jun. 3, 2019, 8 pages. [cited by applicant]