-
2024-07-02
18/539,186
2023-12-13
US 12,027,055 B1
2024-07-02
-
-
Shon G Foley
2043-12-13
An unmanned aerial vehicle assisted task offloading and resource allocation method based on service caching is provided. The unmanned aerial vehicles are capable to cache a portion of programs to perform computation tasks for offloading of ground terminal devices, while a local terminal device is capable to cache a small number of programs. Under the constraints of task completion delay requirements for all devices and UAVs, as well as limited energy of UAVs, an optimization problem of minimizing the total time delay of request tasks of all ground terminal devices are established. This problem is a mixed integer nonlinear programming problem, which is decoupled into three sub-problems: task offloading decision, UAV resource allocation, and UAV trajectory. Slack variables, Lagrange multiplier method, and Taylor expansion method are used to iteratively solve the three sub-problems, and the optimal solutions for task offloading decision, UAV resource allocation, and UAV trajectory are obtained.
Get notified when new applications in this technology area are published.
G08G5/0026 » CPC main
Traffic control systems for aircraft, e.g. air-traffic control [ATC]; Arrangements for implementing traffic-related aircraft activities, e.g. arrangements for generating, displaying, acquiring or managing traffic information located on the ground
G08G5/0013 » CPC further
Traffic control systems for aircraft, e.g. air-traffic control [ATC]; Transmission of traffic-related information to or from an aircraft with a ground station
G08G5/00 IPC
Traffic control systems for aircraft, e.g. air-traffic control [ATC]
This application is a continuation of International Application No. PCT/CN2023/120756 with a filling date of Sep. 22, 2023, designating the United states, now pending, and further claims to the benefit of priority from Chinese Application No. 202310433665.0 with a filing date of Apr. 21, 2022. The content of the aforementioned applications, including any intervening amendments thereto, are incorporated herein by reference.
The present disclosure relates to the field of communication technology, in particular to an unmanned aerial vehicle assisted task offloading and resource allocation method based on service caching.
With the development of information technology, many intelligent disclosures are constantly emerging, such as facial recognition, interactive games, and virtual reality. These disclosures usually have the characteristics of computationally intensive and time delay-sensitive. The emergence of mobile edge computing (MEC) provides convenience for the implementation of these computing tasks. In practical disclosures, due to shadow fading and multipath effect, the signal attenuation in ground communication is severe. Therefore, unmanned aerial vehicle (UAV) assisted MEC systems are valued for their flexible maneuverability and low cost. In the mobile edge computing system, the edge service caching refers to the pre-storage of the programs needed to perform computing tasks on the MEC server. When computing tasks are offloaded to the MEC server the server must have corresponding service programs to complete the corresponding computing tasks. Service caching effectively reduces real-time time delay and communication costs for obtaining and initializing service disclosures.
The objective of the present disclosure is to provide an unmanned aerial vehicle assisted task offloading and resource allocation method based on service caching. This method addresses the competitive interests of users in the collaborative computing process. The unmanned aerial vehicle can cache some programs to perform the computing task of ground terminal devices offloading, while the local ground terminal devices can cache a small number of programs to perform some computing tasks.
To achieve the above function, the present disclosure provides an unmanned aerial vehicle assisted task offloading and resource allocation method based on service caching. Under the constraints of task completion delay requirements for all devices and unmanned aerial vehicles and limited energy of unmanned aerial vehicles, the optimization problem of minimizing the total time delay of request tasks of all ground terminal devices are established. This problem is a mixed integer nonlinear programming problem, which is decoupled into three sub-problems: task offloading decision, UAV resource allocation, and UAV trajectory. Slack variable, Lagrange multiplier method and Taylor expansion method are use to perform iterative solving of the three sub-problems respectively, so that the optimal solutions of task offloading decision, UAV resource allocation and UAV trajectory are obtained.
Technical solution: to solve the above technical problems, the technical solution adopted by the present disclosure is:
In the first aspect, an unmanned aerial vehicle assisted task offloading and resource allocation method based on service caching is provided by the present disclosure, which includes:
In some embodiments, the step S4 includes:
In some embodiments, step S4 includes:
In some embodiments, step S1 includes:
P = ( p 11 ⋯ p 1 S ⋮ ⋱ ⋮ p M 1 ⋯ p MS )
p s k = ∑ m ∈ M k p ms ❘ "\[LeftBracketingBar]" M k ❘ "\[RightBracketingBar]"
In some embodiments, in step S3, a optimization problem P1 of minimizing the total time delay of request tasks of all ground terminal devices includes:
P 1 : min B , F , C , Q ∑ m = 1 M T m s . t . C 1 : T m ≤ D m max , ∀ m ∈ M , C 2 : E m ≤ E m max , ∀ m ∈ M , C 3 : E k ≤ E k max , ∀ k ∈ K , C 4 : ∑ m = 1 M f k , m ≤ F k max , ∀ m ∈ M , ∀ k ∈ K , C 5 : c m , k ≤ b m , k , ∀ m ∈ M , ∀ k ∈ K , C 6 : ∑ k = 1 K b m , k = 1 , ∀ m ∈ M , ∀ k ∈ K , C 7 : ∑ m = 1 M b m , k ≤ N k max , ∀ m ∈ M , ∀ k ∈ K , C 8 : Q k - Q l 2 ≤ d m 2 , ∀ k ∈ K , k ≠ l , C 9 : b m , k ( R k , m ) ≤ R k max , ∀ m ∈ M , ∀ k ∈ K , C 10 : c m , k , a k , s , b m , k , e m , s ∈ { 0 , 1 } , ∀ m ∈ M , ∀ k ∈ K ,
Wherein, C1 denotes the time delay limit; Tm denotes a total time delay for completing tasks requested by the ground terminal devices m; K={1, 2, . . . , K} and M={1, 2, . . . , M} denote sets of the unmanned aerial vehicles and the ground terminal devices, respectively; B=(bm,k∈{0,1}: m∈M, k∈K) denotes a set of whether the ground terminal devices m are accessed to the unmanned aerial vehicles k; F=(fk,m: m∈M, k∈K) denotes a set of computing capabilities of the unmanned aerial vehicles k on the ground terminal devices m; c=(cm,k∈{0,1}: m∈M, k∈K) denotes a set of whether the computing tasks of the ground terminal devices m are offloaded to the unmanned aerial vehicles; Q=(Qk: k∈K) denotes horizontal position coordinates of the unmanned aerial vehicles k; Dmmax denotes a maximum time delay of the tasks of the ground terminal devices m, ∀ denotes any mathematical symbol; C2 denotes an user energy consumption limit, Em denotes total energy consumption of the ground terminal devices m, Emmax denotes maximum energy consumption of the ground terminal devices m; C3 denotes an energy consumption limit of the unmanned aerial vehicles, Ek denotes total energy consumption of the unmanned aerial vehicles k, Ekmax denotes maximum energy consumption of the unmanned aerial vehicles; C4 denotes resource limitation allocated to the unmanned aerial vehicles; fk,m denotes computing capabilities of the unmanned aerial vehicles k towards the ground terminal devices m; Fkmax denotes the maximum computing capabilities of the unmanned aerial vehicles k; C5 denotes a causality constraint, namely offloading computation is performed after the ground terminal devices are accessed to the unmanned aerial vehicles; cm,k∈{0,1} denotes whether the computing tasks of the ground terminal devices m are offloaded onto the unmanned aerial vehicles, wherein 1 indicates offloading and 0 indicates not offloading; bm,k∈{0,1} denotes whether the ground terminal devices m are accessed to the unmanned aerial vehicles k, wherein 1 indicates connection, and 0 indicates no connection; C6 specifies that one ground terminal device is only capable to access to one unmanned aerial vehicle; C7 denotes a maximum number of the ground terminal devices that the unmanned aerial vehicles are capable to access; Nkmax is a maximum number of the ground terminal devices being capable to access; C8 is a maximum distance limit between the unmanned aerial vehicles, horizontal position coordinates of the unmanned aerial vehicles k is Qk=(xk, yk); Ql is horizontal position coordinates of the unmanned aerial vehicles l; dm is a maximum distance between the unmanned aerial vehicles; C9 specifies that the ground terminal devices are only capable to be connected to the unmanned aerial vehicles within the maximum range of the unmanned aerial vehicles; Rk,m is distance between the ground terminal devices m and the unmanned aerial vehicles k; Rkmax is a maximum communication range of the unmanned aerial vehicles; C10 indicates that cm,k, ak,s, bm,k, em,s are binary variables; ak,s∈{0,1} indicates whether the unmanned aerial vehicles are caching services s wherein 1 indicates caching, 0 indicates no caching; em,s∈{0,1} denotes whether the ground terminal devices m are caching services s, wherein 1 denotes caching, and 0 denotes no caching.
In some embodiments, the method for building the optimization problem of minimizing the total time delay of request tasks of all ground terminal devices includes:
Due to a covering problem of the base station, the ground terminal devices in a coverage area are not capable to directly communicate with the base station (BS); the base station is connected to a cloud center through a wired fiber-optic link, while the unmanned aerial vehicles communicate with the base station through a wireless backhaul link; assuming that a front-end and a backhaul link operate on different frequency bands, the wireless backhaul link capacity from each unmanned aerial vehicle to the base station is Rb, for the front-end link, the ground terminal devices within the coverage range of each unmanned aerial vehicle adopts orthogonal frequency division multiple access, and the bandwidth is evenly distributed among a plurality of ground terminal devices; assuming that the total bandwidth of uplink/downlink communication is B, the bidirectional wireless communication spectrum bandwidth from the unmanned aerial vehicles k to the ground terminal devices are B/|Mk|, wherein Mk is the total number of users served by the unmanned aerial vehicle k;
The horizontal position coordinates of the unmanned aerial vehicles k is Qk=(xk, yk), the height is fixed, and the horizontal position coordinate of the ground terminal devices m is Qm=(xm, ym); distance between the ground terminal devices m and the unmanned aerial vehicles k is Rk,m=√{square root over ((xk−xm)2+(yk−ym)2)}, the channel gain between the ground terminal devices m and the unmanned aerial vehicle k is
h
k
,
m
=
h
0
H
2
+
R
k
,
m
2
,
h0 is the channel gain when the reference distance d0=1, and H is the flight altitude of each unmanned aerial vehicle; assuming that the bidirectional channel gains between the ground terminal devices m and the unmanned aerial vehicles k is the same, the uplink rate and downlink rate between the ground terminal devices m and the unmanned aerial vehicles k are rm,kup and rm,kdown, respectively:
{ r m , k up = B ❘ "\[LeftBracketingBar]" M k ❘ "\[RightBracketingBar]" log 2 ( 1 + h k , m p m N 0 ) r m , k down = B ❘ "\[LeftBracketingBar]" M k ❘ "\[RightBracketingBar]" log 2 ( 1 + h k , m p k N 0 )
Wherein, pm is the transmission power of the ground terminal devices m, pk is the transmission power allocated by the unmanned aerial vehicles k to the ground terminal devices m, and N0 is the noise power of the receiver;
The local computing time is
t
m
l
=
C
m
f
m
,
and the energy consumption of the ground terminal devices for local computing is Eml=κfm2Cm, wherein, κ is the coefficient that depends on the chip structure, fm is the computing power of the ground terminal devices, and Cm is the number of CPU cycles required for the computing task of the ground terminal devices;
The ground terminal devices are selectively offloaded onto the unmanned aerial vehicles for computation, and the time for task upload to the unmanned aerial vehicles is
t
m
,
k
u
=
l
m
r
m
,
k
up
;
the energy consumption for task upload is Em,ku=pmtm,ku, the time for task computation is
t
m
,
k
e
=
C
m
f
k
,
m
,
and the energy consumption for task computation is Em,ke=κ(fk,m)2Cm; wherein, lm is the size of the input data for the ground terminal devices m, fk,m is the computing power of the unmanned aerial vehicles k on the ground terminal devices m; if the maximum computing power of the unmanned aerial vehicles k is Fkmax, then
∑ m = 1 M f k , m ≤ F k max ;
When local computing is selected but the ground terminal devices has not cached the corresponding service, the download time of the ground terminal devices from the unmanned aerial vehicles to the corresponding service is
t
k
,
s
sfw
=
c
s
r
m
,
k
down
,
wherein cs is the size of the service s program; the energy consumption of the unmanned aerial vehicle k sending services s to the ground terminal devices m is Ek,m,ssfw=tk,ssfw·pk;
If there is no service program corresponding to the user request task in the unmanned aerial vehicles, then the corresponding service needs to be downloaded remotely through the base station, and the time for downloading the service s is
t b a c k = c s R b ;
If the ground terminal devices m selects local computing, the total time delay Tm,kl of the local computing is:
Tm,kl=em,stml(1−em,s)bm,k(tk,ssfw+tml)
Wherein, bm,k∈{0,1} is whether the ground terminal devices m are connected to the unmanned aerial vehicles k, 1 indicates in access, and 0 indicates not in access; em,s∈{0,1} denotes whether the ground terminal devices m are caching services s, 1 indicates caching, 0 indicates no caching;
The total energy consumption Em,kl for the local computing on the ground terminal devices m for the tasks is:
Em,kl=em,sEml+(1−em,s)bk,m(Eml+Ek,m,ssfw)
The total time Tm,ke,l for computing tasks of the ground terminal devices m to be executed on the unmanned aerial vehicle k is:
Tm,ke,l=(1−em,s)bk,m(1−ak,s)(tback+tk,ssfw)
Wherein, ak,s∈{0,1} indicates whether the unmanned aerial vehicles k are caching services, 1 indicates caching, and 0 indicates no caching;
The total energy consumption Em,ke,l of the computing tasks of the ground terminal devices m executed on the unmanned aerial vehicles k is:
Em,ke,l=(1−em,s)bk,mEk,m,ssfw
If the ground terminal devices m selects computation offloading, the computing time Tm,ke,uav of the computing tasks of the ground terminal devices m on the unmanned aerial vehicle k is:
Tm,ke,uav=bk,m[tm,ku+tm,ke+(1−ak,s)tback]
The energy consumption Em,ke,uav of the ground terminal devices m for computing tasks on the unmanned aerial vehicles k is:
Em,ke,uav=bk,mEm,ke
Wherein, cm,k∈{0,1} indicates whether the computing tasks of the ground terminal devices m are offloaded to the unmanned aerial vehicles;
The total time delay Tm of completing tasks requested by the ground terminal devices m:
T m = ∑ k = 1 K ( 1 - c m , k ) ( T m , k l + T m , k e , l ) + ∑ k = 1 K c m , k T m , k e , u a v
The total energy consumption Em of the ground terminal devices m:
E m = ∑ k = 1 K ( 1 - c m , k ) E m , k l + ∑ k = 1 K C m , k E m , k u
The total energy consumption Ek of the unmanned aerial vehicle k:
E k = ∑ m = 1 M ( 1 - c m , k ) E m , k e , l + ∑ m = 1 M c m , k E m , k e , u o v .
In some embodiments, in step S3, utilizing a pre built optimization problem that minimizes a total time delay of request tasks of all ground terminal devices to optimize to obtain a task offloading decision, an unmanned aerial vehicle resource allocation, and an unmanned aerial vehicle trajectory, including:
S31. solving the task offloading decision problem when the resource allocation and the unmanned aerial vehicle trajectory are determined to the optimization problem P1 transformed into P1.1:
P 1.1 : min C ∑ m = 1 M T m s . t . C 1 , C 2 , C 3 , C 5
T ˜ m = ∑ k = 1 K { ( 1 - c ˜ m , k ) [ e m , s t m l + ( 1 - e m , s ) b m , k a k , s ( t k , s sfw + t m l ) + ( 1 - e m , s ) ( 1 - a k , s ) b k , m ( t m , k u + t m , k e + t back ) ] + c ˜ m , k b k , m [ t m , k u + t m , k e + ( 1 - a k , s ) t b a c k ] } E ˜ m = ∑ k = 1 K ( 1 - c ˜ m , k ) { e m , s E m l + ( 1 - e m , s ) [ a k , s b k , m E m l + ( 1 - a k , s ) b k , m E m , k u ] } + ∑ k = 1 K c ˜ m , k p m , k t m , k u E ˜ k = ∑ m = 1 M ( 1 - c ˜ m , k ) { ( 1 - e m , s ) b k , m [ ( 1 - a k , s ) E m , k e + a k , s E k , m , s s f w ] } + ∑ m = 1 M c ˜ m , k b k , m E m , k e
P 1.2 min B , F , C , Q ∑ m = 1 M T ˜ m ( 18 ) s . t . T ˜ m ≤ D m max , ∀ m ∈ M , E ˜ m ≤ E m max , ∀ m ∈ M , E ˜ k ≤ E k max , ∀ k ∈ K , c ˜ m , k ≤ b m , k , ∀ m ∈ M , ∀ k ∈ K ,
P 1.3 min F ∑ m = 1 M T m s . t . C 1 : T m ≤ D m max , ∀ m ∈ M , C 3 : E k ≤ E k max , ∀ k ∈ K , C 4 : ∑ m = 1 M f k , m ≤ F k max , ∀ m ∈ M , ∀ k ∈ K ,
L ( f k , m , λ m , v m ) = ∑ M m = 1 T m + ∑ M m = 1 λ m ( κ ( f k , m ) 2 C m - E k max ) + ∑ m = 1 M v m ( f k , m - F k max )
∂ ( L ( f k , m , λ m , v m ) ) ∂ f k , m = 0
λ m ( ∑ m = 1 M κ ( f k , m ) 2 C m - E k max ) = 0 , v m ( ∑ m = 1 M f k , m - F k max ) = 0 ;
f k , m * = E k max κ C m ;
P 1.4 min Q ∑ m = 1 M T m s . t . C 1 : T m ≤ D m max , ∀ m ∈ M , C 2 : E m ≤ E m max , ∀ m ∈ M , C 3 : E k ≤ E k max , ∀ k ∈ K , C 8 : Q k - Q l 2 ≤ d m 2 , ∀ k ∈ K , k ≠ l ,
r m , k u p = B ❘ "\[LeftBracketingBar]" M k ❘ "\[RightBracketingBar]" log 2 ( 1 + h k , m p m N 0 ) ≥ B ❘ "\[LeftBracketingBar]" M k ❘ "\[RightBracketingBar]" log 2 ( 1 + h 0 p m ( H 2 + Q k [ i ] - Q l 2 ) N 0 - Z m , k [ i ] ( Q k - Q l 2 - Q k [ i ] - Q l 2 ) = r k , m l b
Z m , k [ i ] = G m , k log 2 e ( G m , k + H 2 + Q k [ i ] - Q m 2 ) ( H 2 + Q k [ i ] - Q m 2 ) , G m , k = h 0 p k , m N 0 ;
In the second aspect, the present disclosure provides an unmanned aerial vehicle assisted task offloading and resource allocation device based on service caching, including a processor and a storage medium;
In the third aspect, the present disclosure provides a device including
In the fourth aspect, the present disclosure provides a storage medium on which a computer program is stored, and the method described in the first aspect is implemented when the computer program is executed by a processor.
Advantageous effects: Compared to prior art, the advantages of the present disclosure include:
FIG. 1 is a flow chart of the method provided according to an embodiment of the present disclosure;
FIG. 2 is a schematic diagram of the system model provided according to an embodiment of the present disclosure.
The present disclosure will be further described in conjunction with the accompanying drawings. The following embodiments are only intended to provide a clearer illustration of the technical solution of the present disclosure and should not be regarded as a limitation to the scope of the present disclosure.
In the description of the present disclosure, “several” refers to one or more, “a plurality of” refers to two or more, “greater than”, “less than”, “over”, etc. are understood as not including the number itself, and “above”, “below”, “within”, etc. are understood as including the number itself. If there is a description that the first and second, they are only for the purpose of distinguishing technical features, and cannot be understood as indicating or implying relative importance or implying the quantity or sequence of the indicated technical features.
In the description of the present disclosure, the reference terms “one embodiment”, “some embodiments”, “illustrative embodiments”, “examples”, “specific examples”, or “some examples”, etc. refer to specific features, structures, materials, or features described in conjunction with the embodiments or examples included in at least one embodiment or example of the present disclosure. In this disclosure, the illustrative expressions of the above terms may not necessarily refer to the same embodiments or examples. Moreover, the specific features, structures, materials, or features described can be combined in an appropriate manner in any one or more embodiments or examples.
In the first aspect, an unmanned aerial vehicle assisted task offloading and resource allocation method based on service caching is provided in the present embodiment, which includes:
In some embodiments, the step S4 includes:
In some embodiments, step S4 includes:
In some specific embodiments, referring to FIG. 1 and FIG. 2, this embodiment provides a multi UAV assisted mobile edge computing MEC system, which includes a base station, K of rotor UAVs and M of ground terminal devices, K={1, 2, . . . , K} and M={1, 2, . . . , M} are sets of UAVs and ground terminal devices, respectively. Each UAV is equipped with a small server that provides computing and caching services for ground terminal devices. The unmanned aerial vehicle cache services based on popularity, while terminal devices use random caching to cache services.
In some embodiments, step S1 includes:
P = ( p 11 ⋯ p 1 S ⋮ ⋱ ⋮ p M 1 ⋯ p MS )
p s k = ∑ m ∈ M k p ms ❘ "\[LeftBracketingBar]" M k ❘ "\[RightBracketingBar]"
In some embodiments, the method for building the optimization problem of minimizing the total time delay of request tasks of all ground terminal devices includes:
h k , m = h 0 H 2 + R k , m 2 ,
{ r m , k u p = B ❘ "\[LeftBracketingBar]" M k ❘ "\[RightBracketingBar]" log 2 ( 1 + h k , m p m N 0 ) r m , k d o w n = B ❘ "\[LeftBracketingBar]" M k ❘ "\[RightBracketingBar]" log 2 ( 1 + h k , m p k N 0 )
t m l = C m f m ,
t m , k u = l m r m , k up ;
t m , k e = C m f k , m ,
∑ m = 1 M f k , m ≤ F k max ;
t k , s sfw = c s r m , k down ,
t b a c k = c s R b ;
T m = ∑ K k = 1 ( 1 - c m , k ) ( T m , k l + T m , k e , l ) + ∑ K k = 1 c m , k T m , k e , u a v
E m = ∑ K k = 1 ( 1 - c m , k ) E m , k l + ∑ K k = 1 c m , k E m , k u
E k = ∑ m = 1 M ( 1 - c m , k ) E m , k e , l + ∑ m = 1 M c m , k E m , k e , uav .
In some embodiments, in step S3, a optimization problem P1 of minimizing the total time delay of request tasks of all ground terminal devices includes:
P 1 : min B , F , C , Q ∑ m = 1 M T m s . t . C 1 : T m ≤ D m max , ∀ m ∈ M , C 2 : E m ≤ E m max , ∀ m ∈ M , C 3 : E k ≤ E k max , ∀ k ∈ K , C 4 : ∑ m = 1 M f k , m ≤ F k max , ∀ m ∈ M , ∀ k ∈ K , C 5 : c m , k ≤ b m , k , ∀ m ∈ M , ∀ k ∈ K , C 6 : ∑ k = 1 K b m , k = 1 , ∀ m ∈ M , ∀ k ∈ K , C 7 : ∑ m = 1 M b m , k ≤ N k max , ∀ m ∈ M , ∀ k ∈ K , C 8 : Q k - Q l 2 ≤ d m 2 , ∀ k ∈ K , k ≠ l , C 9 : b m , k ( R k , m ) ≤ R k max , ∀ m ∈ M , ∀ k ∈ K , C 10 : c m , k , a k , s , b m , k , e m , s ∈ { 0 , 1 } , ∀ m ∈ M , ∀ k ∈ K ,
In some embodiments, in step S3, utilizing a pre built optimization problem that minimizes a total time delay of request tasks of all ground terminal devices to optimize to obtain a task offloading decision, an unmanned aerial vehicle resource allocation, and an unmanned aerial vehicle trajectory, including:
P 1.1 : min C ∑ m = 1 M T m s . t . C 1 , C 2 , C 3 , C 5
T ˜ m = ∑ k = 1 K { ( 1 - c ˜ m , k ) [ e m , s t m l + ( 1 - e m , s ) b m , k a k , s ( t k , s sfw + t m l ) + ( 1 - e m , s ) ( 1 - a k , s ) b k , m ( t m , k u + t m , k e + t back ) ] + c ˜ m , k b k , m [ t m , k u + t m , k e + ( 1 - a k , s ) t b a c k ] } E ˜ m = ∑ k = 1 K ( 1 - c ˜ m , k ) { e m , s E m l + ( 1 - e m , s ) [ a k , s b k , m E m l + ( 1 - a k , s ) b k , m E m , k u ] } + ∑ k = 1 K c ˜ m , k p m , k t m , k u E ˜ k = ∑ m = 1 M ( 1 - c ˜ m , k ) { ( 1 - e m , s ) b k , m [ ( 1 - a k , s ) E m , k e + a k , s E k , m , s sfw ] } + ∑ m = 1 M c ˜ m , k b k , m E m , k e
P 1.2 : min B , F , C , Q ∑ m = 1 M T ˜ m s . t . T ˜ m ≤ D m max , ∀ m ∈ M , E ˜ m ≤ E m max , ∀ m ∈ M E ˜ k ≤ E k max , ∀ k ∈ K , c ˜ m , k ≤ b m , k , ∀ m ∈ M , ∀ k ∈ K ,
P 1.3 : min F ∑ m = 1 M T m s . t . C 1 : T m ≤ D m max , ∀ m ∈ M , C 3 : E k ≤ E k max , ∀ k ∈ K , C 4 : ∑ m = 1 M f k , m ≤ F k max , ∀ m ∈ M , ∀ k ∈ K ,
L ( f k , m , λ m , V m ) = ∑ M m = 1 T m + ∑ M m = 1 λ m ( κ ( f k , m ) 2 C m - E k max ) + ∑ M m = 1 v m ( f k , m - F k max )
∂ ( L ( f k , m , λ m , v m ) ) ∂ f k , m = 0
λ m ( ∑ m = 1 M κ ( f k , m ) 2 C m - E k max ) = 0 , v m ( ∑ m = 1 M f k , m - F k max ) = 0 ;
f k , m * = E k max κ C m ;
P 1.4 : min Q ∑ m = 1 M T m s . t . C 1 : T m ≤ D m max , ∀ m ∈ M , C 2 : E m ≤ E m max , ∀ m ∈ M , C 3 : E k ≤ E k max , ∀ k ∈ K , C 8 : Q k - Q l 2 ≤ d m 2 , ∀ k ∈ K , k ≠ l ,
r m , k u p = B ❘ "\[LeftBracketingBar]" M k ❘ "\[RightBracketingBar]" log 2 ( 1 + h k , m p m N 0 ) ≥ B | M k | log 2 ( 1 + h 0 p m ( H 2 + Q k [ i ] - Q l 2 ) N 0 - Z m , k [ i ] ( Q k - Q l 2 - Q k [ i ] - Q l 2 ) = r k , m l b
Z m , k [ i ] = G m , k log 2 e ( G m , k + H 2 + Q k [ i ] - Q m 2 ) ( H 2 + Q k [ i ] - Q m 2 ) , G m , k = h 0 p k , m N 0 ;
S34. through iterative solving the three sub-problems P1.2, P1.3, and P1.4, and updating the corresponding solutions to obtain the solution for P1: task offloading decision, the unmanned aerial vehicle resource allocation, and the unmanned aerial vehicle trajectory.
Due to the fact that the object value of P1 does not increase after each iteration and the optimal value is also bounded, S34 ensures convergence after a finite number of iterations.
In the second aspect, based on Embodiment 1, this embodiment provides an unmanned aerial vehicle assisted task offloading and resource allocation device based on service caching, including a processor and a storage medium.
The storage medium is configured to store instructions.
The processor is configured to operate according to the instructions to execute the method according to Embodiment 1.
In the third aspect, based on Embodiment 1, this embodiment provides a device comprising:
In the fourth aspect, based on Embodiment 1, this embodiment provides a storage medium on which a computer program is stored, and the method described in Embodiment 1 is implemented when the computer program is executed by a processor.
The skilled person in the art should understand that embodiments of this disclosure may be provided as methods, systems, or computer program products. Therefore, this disclosure may take the form of a complete hardware embodiment, a complete software embodiment, or a embodiment in combination of software and hardware. Moreover, this disclosure may take the form of a computer program product implemented on one or more computer available storage media (including but not limited to magnetic disk memory, CD-ROM, optical storage, etc.) containing computer available program code.
This disclosure is described with reference to the flowchart and/or block diagram of the method, device (system), and computer program product according to the embodiments of this disclosure. It should be understood that each process and/or block in the flowchart and/or block diagram, and the combination of processes and/or blocks in the flowchart and/or block diagram are implemented by computer program instructions. These computer program instructions can be provided to processors of general-purpose computers, specialized computers, embedded processors, or other programmable data processing devices to generate a machine that generates instructions executed by processors of computers or other programmable data processing devices to implement the functions specified in one or more processes and/or blocks in a flowchart or block diagram.
These computer program instructions can also be stored in computer-readable memory that can guide computers or other programmable data processing devices to work in a specific way, so that the instructions stored in the computer-readable memory generate a manufacturing product including an instruction device that implements the functions specified in one or more processes and/or blocks of a flowchart or block diagram.
These computer program instructions can also be loaded onto computers or other programmable data processing devices to perform a series of operational steps on the computer or other programmable devices to generate computer-implemented processing. The instructions executed on the computer or other programmable devices provide steps for implementing the functions specified in one or more processes and/or blocks in a flowchart or block diagram.
The above is only a preferred embodiment of the present disclosure. It should be understood that for ordinary skilled person in the art, several improvements and modifications can be made without departing from the principles of the present disclosure, and these improvements and modifications should also be considered as the scope of the present disclosure.
1. An unmanned aerial vehicle assisted task offloading and resource allocation method based on service caching, comprising:
S1. obtaining local popularity based on historically required services of ground terminal devices, selectively caching the required services, by unmanned aerial vehicles, based on the local popularity to obtain a caching solution of the unmanned aerial vehicles;
S2. applying a random caching service to obtain a caching solution of the ground terminal devices;
S3. in response to task requests from the ground terminal devices, based on the caching solution of the unmanned aerial vehicles and the caching solution of the ground terminal devices, utilizing a pre built optimization problem that minimizes a total time delay of the request tasks of all ground terminal devices to optimize, so as to obtain a task offloading decision, an unmanned aerial vehicle resource allocation, and an unmanned aerial vehicle trajectory;
S4. determining, according to the optimized task offloading decision, tasks requested by the ground terminal devices to perform computation on a local terminal device, or offload the tasks to the corresponding unmanned aerial vehicles for computation; flying the unmanned aerial vehicles according to the optimized unmanned aerial vehicle trajectory; and allocating resources to the ground terminal devices based on the optimized unmanned aerial vehicle resource allocation.
2. The unmanned aerial vehicle assisted task offloading and resource allocation method based on service caching according to claim 1, wherein the step S4 comprises:
S41. performing computation to the tasks requested by the ground terminal devices on the local terminal device;
S411. if the required services has been cached in the ground terminal devices, performing task computation directly;
S412. if the ground terminal devices do not cache the required services, but there are services requested by the ground terminal devices cached on the unmanned aerial vehicles, then based on the optimized unmanned aerial vehicle trajectory and the optimized unmanned aerial vehicle resource allocation, downloading a corresponding service program from the unmanned aerial vehicles to the ground terminal devices, and performing computing services on the ground terminal devices directly;
S413. if the ground terminal devices do not cache the required services and the unmanned aerial vehicles do not cache the services requested by the ground terminal devices, using a wireless backhaul link to download the service program from a remote end to the unmanned aerial vehicles through a base station; based on the optimized unmanned aerial vehicle trajectory and the optimized unmanned aerial vehicle resource allocation, downloading the corresponding service program from the unmanned aerial vehicles to the ground terminal devices, and performing computing services on the ground terminal devices directly.
3. The unmanned aerial vehicle assisted task offloading and resource allocation method based on service caching according to claim 1, wherein step S4 comprises:
S42. offloading, by the ground terminal devices, the tasks to the corresponding unmanned aerial vehicles for computation;
S421. services requested by the ground terminal devices are cached in the unmanned aerial vehicles, performing computation directly on the unmanned aerial vehicles based on the optimized unmanned aerial vehicle trajectory and the optimized unmanned aerial vehicle resource allocation;
S422. if there is no cached services requested by ground terminal devices in the unmanned aerial vehicles, using a wireless backhaul link to download service programs from a remote end to the unmanned aerial vehicles through a base station, and performing computation based on the optimized unmanned aerial vehicle trajectory and the optimized unmanned aerial vehicle resource allocation on the unmanned aerial vehicles.
4. The unmanned aerial vehicle assisted task offloading and resource allocation method based on service caching according to claim 1, wherein step S1 comprises:
S11. an access method between the ground terminal devices and the unmanned aerial vehicles applies a closest distance access, when the ground terminal devices are within a coverage range of the unmanned aerial vehicles, the nearest unmanned aerial vehicle provides services; setting Mk as the number of the ground terminal devices served by the unmanned aerial vehicles k;
S12. a request probability of services from the ground terminal devices m is pms, and a request probability matrix p for all ground terminal devices are:
P = ( p 11 … p 1 S ⋮ ⋱ ⋮ p M 1 … p MS )
S13. obtaining local popularity psk based on the request probability pms of service s from the ground terminal devices m:
p s k = ∑ m ∈ M k p m s ❘ "\[LeftBracketingBar]" M k ❘ "\[RightBracketingBar]"
S14. caching service programs with high local popularity in the unmanned aerial vehicles, in order to improve a hit ratio of caching services of the unmanned aerial vehicles, since there is no coupling of content deployment between the unmanned aerial vehicles.
5. The unmanned aerial vehicle assisted task offloading and resource allocation method based on service caching according to claim 1, wherein, in step S3, a optimization problem P1 of minimizing the total time delay of request tasks of all ground terminal devices comprises:
P 1 : min B F , C , Q ∑ m = 1 M T m s . t . C 1 : T m ≤ D m max , ∀ m ∈ M , C 2 : E m ≤ E m max , ∀ m ∈ M , C 3 : E k ≤ E k max , ∀ k ∈ K , C 4 : ∑ m = 1 M f k , m ≤ F k max , ∀ m ∈ M , ∀ k ∈ K , C 5 : c m , k ≤ b m , k , ∀ m ∈ M , ∀ k ∈ K , C 6 : ∑ k = 1 K b m , k = 1 , ∀ m ∈ M , ∀ k ∈ K , C 7 : ∑ m = 1 M b m , k ≤ N k max , ∀ m ∈ M , ∀ k ∈ K , C 8 : Q k - Q l 2 ≤ d m 2 , ∀ k ∈ K , k ≠ l , C 9 : b m , k ( R k , m ) ≤ R k max , ∀ m ∈ M , ∀ k ∈ K , C 10 : c m , k , a k , s , b m , k , e m , s ∈ { 0 , 1 } , ∀ m ∈ M , ∀ k ∈ K ,
wherein, C1 denotes the time delay limit; Tm denotes a total time delay for completing tasks requested by the ground terminal devices m; K={1, 2, . . . , K} and M={1, 2, . . . , M} denote sets of the unmanned aerial vehicles (UAV) and the ground terminal devices, respectively; B=(bm,k∈{0,1}: m∈M, k∈K) denotes a set of whether the ground terminal devices m are accessed to the unmanned aerial vehicle k; F=(fk, m: m∈M, k∈K) denotes a set of computing capabilities of the unmanned aerial vehicles k on the ground terminal devices m c=(cm,k∈{0,1}: m∈M, k∈K) denotes a set of whether the computing tasks of the ground terminal devices m are offloaded to the unmanned aerial vehicles; Q=(Qk: k∈K) denotes horizontal position coordinates of the unmanned aerial vehicles k; Dmmax denotes a maximum time delay of the tasks of the ground terminal devices m, ∀ denotes any mathematical symbol; C2 denotes an user energy consumption limit, Em denotes total energy consumption of the ground terminal devices m, Emmax denotes maximum energy consumption of the ground terminal devices m; C3 denotes an energy consumption limit of the unmanned aerial vehicles, Ek denotes total energy consumption of the unmanned aerial vehicles k, Ekmax denotes maximum energy consumption of the unmanned aerial vehicles; C4 denotes resource limitation allocated to the unmanned aerial vehicles; fk,m denotes computing capabilities of the unmanned aerial vehicles k towards the ground terminal devices m; Fkmax denotes the maximum computing capabilities of the unmanned aerial vehicles k; C5 denotes a causality constraint, namely offloading computation is performed after the ground terminal devices are accessed to the unmanned aerial vehicles; cm,k∈{0,1} denotes whether the computing tasks of the ground terminal devices m are offloaded onto the unmanned aerial vehicles, wherein 1 indicates offloading and 0 indicates not offloading; bm,k∈{0,1} denotes whether the ground terminal devices m are accessed to the unmanned aerial vehicles k, wherein 1 indicates in access, and 0 indicates not in access; C6 specifies that one ground terminal device is only capable to access to one unmanned aerial vehicle; C7 denotes a maximum number of the ground terminal devices that the unmanned aerial vehicle is capable to access, Nkmax is a maximum number of the ground terminal devices being capable to access; C8 is a maximum distance limit between the unmanned aerial vehicles, horizontal position coordinates of the unmanned aerial vehicles k is Qk=(xk, yk); Ql is horizontal position coordinates of the unmanned aerial vehicles l; dm is a maximum distance between the unmanned aerial vehicles; C9 specifies that the ground terminal devices are only capable to be connected to the unmanned aerial vehicles within the maximum range of the unmanned aerial vehicles; Rk,m is distance between the ground terminal devices m and the unmanned aerial vehicle k; Rkmax is a maximum communication range of the unmanned aerial vehicles; C10 indicates that Cm,k, ak,s, bm,k, em,s are binary variables; ak,s∈{0,1} indicates whether the unmanned aerial vehicles are caching services s wherein 1 indicates caching, 0 indicates no caching; em,s∈{0,1} denotes whether the ground terminal devices m are caching services s, wherein 1 denotes caching, and 0 denotes no caching.
6. The unmanned aerial vehicle assisted task offloading and resource allocation method based on service caching according to claim 5, wherein the method for building the optimization problem of minimizing the total time delay of request tasks of all ground terminal devices comprises:
due to a covering problem of the base station, the ground terminal devices in a coverage area are not capable to directly communicate with the base station; the base station is connected to a cloud center through a wired fiber-optic link, while the unmanned aerial vehicles communicate with the base station through a wireless backhaul link; assuming that a front-end and a backhaul link operate on different frequency bands, a wireless backhaul link capacity from each unmanned aerial vehicle to the base station is Rb, for the front-end link, the ground terminal devices within a coverage range of each unmanned aerial vehicle adopts orthogonal frequency division multiple access, and the bandwidth is evenly distributed among a plurality of the ground terminal devices; assuming that a total bandwidth of uplink/downlink communication is B, then a bidirectional wireless communication spectrum bandwidth from the unmanned aerial vehicles k to the ground terminal devices are B/|Mk|, wherein Mk is a total number of users served by the unmanned aerial vehicles k;
horizontal position coordinates of the unmanned aerial vehicle k is Qk=(xk, yk), a height is fixed, and horizontal position coordinates of the ground terminal devices m is Qm=(xm, ym); the distance between the ground terminal devices m and the unmanned aerial vehicles k is Rk,m=√{square root over ((xk−xm)2+(yk−ym)2)}, a channel gain between the ground terminal devices m and the unmanned aerial vehicles k is
h k , m = h 0 H 2 + R k , m 2 ,
h0 is the channel gain when a reference distance d0=1, and H is a flight altitude of each unmanned aerial vehicle; assuming that bidirectional channel gains between the ground terminal devices m and the unmanned aerial vehicles k is the same, an uplink rate and a downlink rate between the ground terminal devices m and the unmanned aerial vehicles k are rm,kup and rm,kdown, respectively:
{ r m , k u p = B ❘ "\[LeftBracketingBar]" M k ❘ "\[RightBracketingBar]" log 2 ( 1 + h k , m p m N 0 ) r m , k d o w n = B ❘ "\[LeftBracketingBar]" M k ❘ "\[RightBracketingBar]" log 2 ( 1 + h k , m p k N 0 )
wherein, pm is transmission power of the ground terminal devices m, pk is transmission power allocated by the unmanned aerial vehicles k to the ground terminal devices m, and N0 is noise power of a receiver;
a time for local computing is
t m l = C m f m ,
and an energy consumption of the ground terminal devices for the local computing is Eml=κfm2Cm, wherein, κ is a coefficient that depends on a chip structure, fm is computing power of the ground terminal devices, and Cm is the number of CPU cycles required for the computing tasks of the ground terminal devices;
the ground terminal devices are selectively offloaded onto the unmanned aerial vehicle for computation, and a time for task upload to the unmanned aerial vehicle is
t m , k u = l m r m , k up ;
an energy consumption for the task upload is Em,ku=pmtm,ku, a time for task computation is
t m , k e = C m f k , m ,
and an energy consumption for the task computation is Em,ke=κ(fk,m)2Cm; wherein, lm is a size of input data for the ground terminal devices m, fk,m is computing power of the unmanned aerial vehicles k on the ground terminal devices m; if maximum computing power of the unmanned aerial vehicle k is Fkmax, then
∑ m = 1 M f k , m ≤ F k max ;
when the local computing is selected but the ground terminal devices has not cached corresponding service, a time for the ground terminal devices to download the corresponding service from the unmanned aerial vehicles is
t k , s sfw = c s r m , k down ,
wherein cs is a size of programs of the service s; the energy consumption of the unmanned aerial vehicle k sending service s to the ground terminal devices m is Ek,m,ssfw=tk,ssfw·pk;
if there is no service program corresponding to the user request task in the unmanned aerial vehicles, then the corresponding service needs to be downloaded remotely through the base station, and the time for downloading the service s is
t b a c k = c s R b ;
if the ground terminal devices m selects local computing, a total time delay Tm,kl of local computing is:
Tm,kl=em,stml+(1−em,s)bm,k(tk,ssfw+tml)
wherein, bm,k∈{0,1} is whether the ground terminal devices m is accessed to the unmanned aerial vehicle k, 1 indicates in access, and 0 indicates not in access; em,s∈{0,1} denotes whether the ground terminal devices m are caching services s, 1 indicates caching, 0 indicates no caching;
the total energy consumption Em,kl for the local computing on the ground terminal devices m for the tasks is:
Em,kl=em,sEml+(1−em,s)bk,m(Eml+Ek,m,ssfw)
the total time Tm,ke,l for the computing tasks of the ground terminal devices m to be executed on the unmanned aerial vehicle k is:
Tm,ke,l=(1−em,s)bk,m(1−ak,s)(tback+tk,ssfw)
wherein, ak,s∈{0, 1} indicates whether the unmanned aerial vehicles k are caching services, 1 indicates caching, and 0 indicates no caching;
the total energy consumption Em,ke,l of the computing tasks of the ground terminal devices m executed on the unmanned aerial vehicles k is:
Em,ke,l=(1−em,s)bk,mEk,m,ssfw
if the ground terminal devices m selects computation offloading, the computing time Tm,ke,uav of the computing tasks of the ground terminal devices m on the unmanned aerial vehicles k is:
Tm,ke,uav=bk,m[tm,ku+tm,ku+tm,ke+(1−ak,s)tback]
the energy consumption Em,ke,uav of the ground terminal devices m for computing tasks on the unmanned aerial vehicles k is:
Em,ke,uav=bk,mEm,ke
wherein, cm,k∈{0,1} indicates whether the computing tasks of the ground terminal devices m are offloaded to the unmanned aerial vehicles;
the total time delay Tm of completing tasks requested by the ground terminal devices m
T m = ∑ k = 1 K ( 1 - c m , k ) ( T m , k l + T m , k e , l ) + ∑ k = 1 K c m , k T m , k e , u a v
the total energy consumption Em of the ground terminal devices m:
E m = ∑ k = 1 K ( 1 - c m , k ) E m , k l + ∑ k = 1 K c m , k E m , k u
the total energy consumption Ek of the unmanned aerial vehicles k:
E k = ∑ m = 1 M ( 1 - c m , k ) E m , k e , l + ∑ m = 1 M c m , k E m , k e , u o v .
7. The unmanned aerial vehicle assisted task offloading and resource allocation method based on service caching according to claim 5, wherein in step S3, utilizing a pre built optimization problem that minimizes a total time delay of request tasks of all ground terminal devices to optimize to obtain a task offloading decision, an unmanned aerial vehicle resource allocation, and an unmanned aerial vehicle trajectory, comprising
S31. solving the task offloading decision problem when the resource allocation and the unmanned aerial vehicle trajectory are determined to the optimization problem P1 transformed into P1.1:
P 1.1 : min C ∑ m = 1 M T m s . t . C 1 , C 2 , C 3 , C 5
slacking binary variables cm,k into continuous variables {tilde over (c)}m,k, namely 0≤cm,k≤1, wherein:
T ˜ m = ∑ k = 1 K { ( 1 - c ˜ m , k ) [ e m , s t m l + ( 1 - e m , s ) b m , k a k s ( t k , s sfw + t m l ) + ( 1 - e m , s ) ( 1 - a k , s ) b k , m ( t m , k u + t m , k e + t b a c k ) ] + c ˜ m , k b k , m [ t m , k u + t m , k e + ( 1 - a k , s ) t b a c k ] } E ~ m = ∑ k = 1 K ( 1 - c ~ m , k ) { e m , s E m l + ( 1 - e m , s ) [ a k , s b k , m E m l + ( 1 - a k , s ) b k , m E m , k u ] } + ∑ k = 1 K c ~ m , k p m , k t m , k u E ~ k = ∑ m = 1 M ( 1 - c ~ m , k ) { ( 1 - e m , s ) b k , m [ ( 1 - a k , s ) E m , k e + a k , s E k , m , s sfw ] } + ∑ m = 1 M c ~ m , k b k , m E m , k e
wherein, {tilde over (T)}, {tilde over (E)}m and {tilde over (E)}k denote the total time delay of the completing tasks requested by the ground terminal devices m after slacking, the total energy consumption of the ground terminal devices m, and the total energy consumption of unmanned aerial vehicles k, respectively;
then, the optimization problem P1.1 is transformed into P1.2:
P 1.2 : min B , F , C , Q ∑ m = 1 M T ˜ m s . t . T ˜ m ≤ D m max , ∀ m ∈ M , E ˜ m ≤ E m max , ∀ m ∈ M , E ˜ k ≤ E k max , ∀ k ∈ K , c ˜ m , k ≤ b m , k , ∀ m ∈ M , ∀ k ∈ K ,
the optimization problem P1.2 is a linear programming problem with linear constraints, therefore, the optimization problem P1.2 is a convex problem, and using CVX in the MATLAB toolbox to solve to obtain an optimal solution Cm,k;
S32. in the case that the task offloading decision and the unmanned aerial vehicle trajectory are determined, solving the unmanned aerial vehicle resource allocation problem, based on this, the optimization problem P1 is transformed into P1.3:
P 1.3 : min F ∑ m = 1 M T m s . t . C 1 : T m ≤ D m max , ∀ m ∈ M , C 3 : E k ≤ E k max , ∀ k ∈ K , C 4 : ∑ m = 1 M f k , m ≤ F k max , ∀ m ∈ M , ∀ k ∈ K ,
using Lagrangian constraint condition and KKT constraint condition to solve, two constraint factors λm, vm are introduced, λm>0, vm>0, and the Lagrangian formula is defined as:
L ( f k , m , λ m , v m ) = ∑ m = 1 M T m + ∑ m = 1 M λ m ( κ ( f k , m ) 2 C m - E k max ) + ∑ m = 1 M v m ( f k , m - F k max )
since the optimization problem P1.3 is a convex problem, by applying the KKT condition,
∂ ( L ( f k , m λ m , v m ) ) ∂ f k , m = 0
is obtained, and
λ m ( ∑ m = 1 M κ ( f k , m ) 2 C m - E k max ) = 0 , v m ( ∑ m = 1 M f k , m - F k max ) = 0 ;
solving to obtain an optimal unmanned aerial vehicle resource allocations fk,m*:
f k , m * = E k max κ C m ;
S33. in the case that the task offloading decision and the unmanned aerial vehicle resource allocation are determined, solving the unmanned aerial vehicle trajectory problem, the optimization problem P1 is transformed into the optimization problem P1.4:
P 1.4 : min Q ∑ m = 1 M T m s . t . C 1 : T m ≤ D m max , ∀ m ∈ M , C 2 : E m ≤ E m max , ∀ m ∈ M , C 3 : E k ≤ E k max , ∀ k ∈ K , C 8 : Q k - Q l 2 ≤ d m 2 , ∀ k ∈ K , k ≠ l ,
the transmission time delay of the ground terminal devices in the objective function, the energy consumption of the unmanned aerial vehicle multicast software in the constraint, and the energy consumption of task upload are non convex, but for variable Qk, the formula ∥Qk−Ql∥2 is convex, thus, the continuous convex approximation method is applied; because the first-order Taylor expansion at any point of any convex function is a global lower bound of the convex function, the convex function is approximated by the first-order Taylor expansion; the transmission rate rm,kup from the ground terminal devices to the unmanned aerial vehicles is approximately:
r m , k u p = B ❘ "\[LeftBracketingBar]" M k ❘ "\[RightBracketingBar]" log 2 ( 1 + h k , m p m N 0 ) ≥ B ❘ "\[LeftBracketingBar]" M k ❘ "\[RightBracketingBar]" log 2 ( 1 + h 0 p m ( H 2 + Q k [ i ] - Q l 2 ) N 0 - Z m , k [ i ] ( Q k - Q l 2 - Q k [ i ] - Q l 2 ) = r k , m l b
wherein,
Z m , k [ i ] = G m , k log 2 e ( G m , k + H 2 + Q k [ i ] - Q m 2 ) ( H 2 + Q k [ i ] - Q m 2 ) , G m , k = h 0 p k , m N 0 ;
wherein, Qk[i] is the i-th Taylor expansion for the unmanned aerial vehicle trajectory, Zm,k [i] and Gm,k are intermediate parameters; when introducing intermediate parameters rk,mlb into the optimization problem P1.4, P1.4 is a standard convex optimization problem, using CVX in the MATLAB toolbox to solve to obtain an optimal solution Qk;
S34. through iterative solving the three sub-problems P1.2, P1.3, and P1.4, and updating the corresponding solutions to obtain the solution for P1: task offloading decision, the unmanned aerial vehicle resource allocation, and the unmanned aerial vehicle trajectory.
8. An unmanned aerial vehicle assisted task offloading and resource allocation device based on service caching, comprising a processor and a storage medium;
the storage medium is configured to store instructions; and
the processor is configured to operate according to the instructions to execute the method according to claim 1.
9. An electronic device, comprising:
a memory;
a processor;
and
a computer program;
wherein, the computer program is stored in the memory and configured to be executed by the processor to implement the method according to claim 1.
10. A non-transitory storage medium, wherein a computer program is stored on the storage medium, and the method according to claim 1 is implemented when the computer program is executed by a processor.