Energy-Efficient Resource Allocation For Multi-User
Energy-Efficient Resource Allocation For Multi-User
Abstract— Designing mobile edge computing (MEC) systems the drastic demands of applications with crucial computation
by jointly optimizing communication and computation resources, and latency requirements, finite battery lifetime and limited
which can help increase mobile batteries’ lifetime and improve communication and computation resources pose challenges for
quality of experience for computation-intensive and latency-
sensitive applications, has received significant interest. In this designing future energy-efficient MEC systems [1].
paper, we consider energy-efficient resource allocation schemes Designing energy-efficient MEC systems requires the joint
for a multi-user mobile edge computing system with inelastic allocation of communication and computation resources a-
computation tasks and non-negligible task execution durations. mong distributed mobiles and MEC servers. Emerging re-
First, we establish a mathematical model to characterize the search toward this direction considers optimal resource al-
offloading of a computation task from a mobile to the base
station (BS) equipped with MEC servers. This computation- location for various types of multi-task MEC systems [2]–
offloading model consists of three stages, i.e., task uploading, [10]. For example, [2]–[4] consider a single-user MEC system
task executing, and computation result downloading, and allows with one BS and multiple elastic tasks, and minimize the
parallel transmissions and executions for different tasks. Then, execution delay of all tasks under the transmission power
we formulate the weighted sum energy consumption minimization constraints. References [5]–[8], [10] study a multi-user MEC
problem to optimally allocate the task operation sequence, the
uploading and downloading time durations as well as the starting system with one BS and one inelastic task for each user,
times for uploading, executing and downloading, which is a and minimize the energy consumption under a hard deadline
challenging mixed discrete-continuous optimization problem and constraint for each task. In [9], the authors investigate a multi-
is NP-hard in general. We propose a method to obtain an optimal user MEC system with one BS and multiple independent
solution and develop a low-complexity algorithm to obtain a sub- elastic tasks for each user, and consider the minimization
optimal solution, by connecting the optimization problem to a
three-stage flow-shop scheduling problem and utilizing Johnson’s of the overall cost of energy, computation, and delay for all
algorithm as well as convex optimization techniques. Finally, users. In particular, the offloading scheduling [2], [3], [6]–[9],
numerical results show that the proposed sub-optimal solution task operation sequence selection [4], [6], storage resource
outperforms existing comparison schemes. allocation [10], and transmission time (or power) allocation
Index Terms— Mobile edge computing, computation offload- [2]–[10] are considered in the optimizations.
ing, resource allocation, optimization, flow-shop scheduling.
Note that [2]–[6], [8] assume that the size of the computa-
tion result of each task is negligible, and fail to take account of
I. I NTRODUCTION
the resource consumption for the BS to transmit computation
With the support of on-device cameras and embedded sen- results to mobiles. In addition, [3], [8], [10] assume that task
sors, new applications with advanced features, e.g., navigation, execution durations are negligible. Although [2], [4]–[7], [9]
augmented reality, interactive online gaming and multi-media consider non-negligible task execution durations, they ignore
transformation like Speech2Text, are emerging. These appli- the fact that the execution of one task can be conducted
cations are both computation-intensive and latency-sensitive. during the transmission of another task (i.e, transmissions and
Mobile edge computing (MEC) is a promising technology executions for different tasks can be conducted in parallel).
providing an IT service environment and cloud-computing Thus, [2], [3], [5], [7]–[10] do not consider the optimization
capabilities at the edge of the mobile network, within the of the task operation sequence, which significantly affects the
Radio Access Network and in close proximity to mobile users opportunities for parallel processing and hence leads to larger
to improve quality of experience. In an MEC system, compu- delay under power constraints or larger energy consumption
tation tasks of mobile users are uploaded to the base station under deadline constraints. Therefore, the obtained solutions
(BS) and executed at the attached MEC servers. Then, the in [2]–[10] are not suitable for the applications involving
computation results are transmitted back to the mobiles. With computation-intensive and latency-sensitive tasks with com-
putation results of large sizes, such as augmented reality,
Junfeng Guo is also with Science and Technology on Communication
Networks Laboratory. The work of Y. Cui was supported by NSFC grant interactive online gaming and multi-media transformation.
61401272 and grant 61521062, National 863 project 2015AA01A710 as In this paper, we shall address the above issues. We consider
well as Science and Technology on Communication Networks Laboratory energy-efficient resource allocation schemes for a multi-user
Foundation. The work of Z. Liu was supported by JSPS Kakenhi Grant
Numbers 16H02817 and 15K21599. The work of Y.Ji was supported in part MEC system with one BS of computing capability and mul-
by JSPS Kakenhi Project JP16H02817. tiple users, with inelastic computation tasks of non-negligible
6XESUREOHP
6WDQGDUGFRQYH[
RSWLPL]DWLRQ
2SWLPDO 3UREOHP 6XESUREOHP
VROXWLRQ 'XUDWLRQ$OORFDWLRQ
DOJRULWKPV
6XESUREOHP
&ORVHGIRUPPLQLPXP 3UREOHP 3UREOHP
2SWLPDO 3UREOHP 2SWLPDO
WRWDOFRPSOHWLRQWLPH 6HTXHQFH6HOHFWLRQDQG 7KUHH6WDJH)ORZ6KRS -RKQVRQÿVDOJRULWKP
VROXWLRQ 6WDUWLQJ7LPH$OORFDWLRQ VROXWLRQ
LQ 6WDUWLQJ7LPH$OORFDWLRQ 3UREOHP
transmission method for transmitting (Lu,k bits )in tu,k seconds duration allocation constraints. Specifically, we have the fol-
rk
(due to the fact that pk = |hnk0|2 2 B − 1 is a convex lowing optimization problem.
( x ) Problem 1 (Energy Minimization):
function of rk ) [5]. ) g(x) , n0 2 − 1 . Then, we
( Define
B
Lu,k
have pk = |h1k |2 g tu,k . Thus, the energy consumption at E∗ , min E(tu , td )
S∈S,su ,se ,sd ,tu ,td
mobile k for uploading task k to the BS is given by: s.t. (1), (3), (4), (5), (6), (7), (8),
( )
tu,k Lu,k
Eu,k (tu,k ) , pk tu,k = g . (11) where su , (su,k )k∈K , se , (se,k )k∈K and sd , (sd,k )k∈K .
|hk |2 tu,k Problem 1 is a mixed discrete-continuous optimization
Similarly, the energy consumption at the BS for transmitting problem with three types of variables, i.e., the task opera-
the computation result of task k to mobile k is given by: tion sequence (discrete variable), uploading and downloading
( ) durations (continuous variables), as well as starting times for
td,k Ld,k
Ed,k (td,k ) , g . (12) uploading, execution and downloading operations (continuous
|hk |2 td,k variables). It is NP-hard in general, which will be seen in the
Thus, the energy consumption at the BS for executing task k discussion in Section IV. By exploiting structural properties of
and transmitting the computation result of task k is given by: Problem 1, we propose an equivalent formulation, as shown in
Fig. 3. This formulation separates the three types of variables
EBS,k (td,k ) = Ee,k + Ed,k (td,k ). (13) and facilitates the optimization.
Problem 2 (Sequence Selection):
The weighted sum energy consumption corresponding to task
k is given by: E ∗ = min Eseq
∗
(S)
S
Ek (tu,k , td,k ) = Eu,k (tu,k ) + βEBS,k (td,k ), (14) s.t. S ∈ S.
where β ≥ 0 is the corresponding weight factor. Therefore, Let S∗ denote the optimal solution. Eseq
∗
(S) is given by the
the weighted sum energy consumption is given by: following sub-problem.
∑ Problem 3 (Duration Allocation for Given S): For all S ∈
E(tu , td ) = Ek (tu,k , td,k ). (15) S, we have
k∈K ∗
Eseq (S) , min E(tu , td )
Note that the weighted sum energy consumption is a convex tu ,td
function of the uploading and downloading time durations for s.t. TF (S, tu , td ) ≤ T,
all K tasks. (1), (3).
III. P ROBLEM F ORMULATION AND O PTIMAL S OLUTION Let (t∗u (S), t∗d (S)) denote the optimal solution. TF (S, tu , td )
is given by the following sub-problem.
In this section, we first formulate the energy minimization
Problem 4 (Starting Time Allocation for Given S, tu , td ):
problem for the multi-user MEC system with non-negligible
For given S ∈ S, tu and td , the minimum total completion
task execution durations. Then, we propose a method to obtain
time is given by:
an optimal solution.
We would like to minimize the weighted sum energy TF (S, tu , td ) , min cd,[K]
su ,se ,sd
consumption for the multi-user MEC with non-negligible task
execution durations under the uploading and downloading s.t. (4), (5), (7), (8).
{ {( ) ( )} }
∑
j
∑
j−1
∑
i ∑
i−1 ∑
K ∑
K
TF (S, tu , td ) = max max te,[k] − td,[k] + tu,[k] − te,[k] , tu,[k] + td,[k] . (16)
1≤i≤j≤K
k=1 k=1 k=1 k=1 k=1 k=1
{( ) ( )}
∑
j
∑
j−1
∑
i ∑
i−1 ∑
K
TeF (S, tu , td ) = max te,[k] − td,[k] + tu,[k] − te,[k] + td,[k] . (17)
1≤i≤j≤K
k=1 k=1 k=1 k=1 k=1
We can show the following result.3 Problem 6: (Sequence Selection and Starting Time Alloca-
Theorem 1: (Relationship between Problem 1 and Problem- tion): For any tu and td , we have
s 2-4): Problem 1 and Problems 2-4 are equivalent. TF∗ (tu , td ) , min cd,[K]
Based on Theorem 1, we propose a method to obtain an S∈S,su ,se ,sd
optimal solution to Problem 1, by solving Problems 2-4. This s.t. (4), (5), (7), (8).
method is illustrated in Fig. 3. First, we solve Problem 4 for In the following, we discuss Problem 6 and Problem 5, re-
given S ∈ S, tu and td . spectively, based on which we propose a low-complexity sub-
Lemma 1: (Minimum Total Completion Time): For given optimal solution, as illustrated in Fig. 3. Before interpreting
S ∈ S, tu and td , the minimum total completion time is given Problem 6, we introduce some background on M -stage flow-
by (16) (at the top of the this page). shop scheduling problems. In an M -stage flow-shop schedul-
Then, substituting TF (S, tu , td ) in (16) into Problem 3, ing problem, all tasks have to be processed on M machines
we have a convex optimization problem with 2K variables, following the same machine order. Each task requires certain
as TF (S, tu , td ) in (16) is convex (note that it is a positive fixed processing time on a machine. The objective is to find an
weighted sum of convex piecewise linear functions). This operation sequence for processing all tasks on each machine
problem can be solved using standard convex optimization so that a given criterion is optimal. The most commonly
techniques. Finally, we can solve Problem 2 by evaluating all studied criterion in literature is the total completion time.
possible choices for S ∈ S using exhaustive search. When M ≥ 3, an M -stage flow-shop scheduling problem is
NP-hard in general [14]. When M = 3, the three sequences
for processing the tasks on the three machines can be set to be
IV. S UB - OPTIMAL S OLUTION
the same without losing optimality, and the optimal sequence
Note that obtaining an optimal solution to Problem 2 can be efficiently obtained by Johnson’s algorithm in a special
requires solving Problem 3 and Problem 4 up to K! times. The case [14].
complexity is not acceptable when K is large. In this section, By treating tu , te (given in (2)) and td as the processing
we first propose an equivalent formulation for Problem 1 times for three separate machines (i.e., uploading machine,
related to a standard three-stage flow-shop scheduling problem executing machine and downloading machine), Problem 6 can
and a convex optimization problem. Then, we develop a low- be regarded as a three-stage flow-shop scheduling problem
complexity algorithm to obtain a sub-optimal solution by with an additional constraint in (8) (i.e., the uploading machine
utilizing Johnson’s algorithm [14] and convex optimization and the downloading machine cannot operate at the same
techniques. time). By relaxing the additional constraint in (8) and using
First, we propose an equivalent formulation for Problem 1, the expression of the minimum total completion time (without
i.e., Problem 5 and Problem 6, as illustrated in Fig. 3. Different the additional constraint in (8)), we can transform Problem 6
from Problems 2-4, this equivalent formulation divides the into a standard three-stage flow-shop scheduling problem [14].
three types of variables into two groups. One includes the up- Problem 7 (Three-Stage Flow-Shop Scheduling Problem):
loading and downloading durations, and the other includes the For any tu and td , we have
task operation sequence and the starting times for uploading, TeF∗ (tu , td ) , min TeF (S, tu , td ),
S∈S
execution and downloading operations.
Problem 5 (Duration Allocation): where the minimum total completion time (without the ad-
ditional constrain in (8)) TeF (S, tu , td ) is given by (17) (at
E ∗ = min E(tu , td ) the top of this page), and is obtained by optimizing su , se , sd
tu ,td under the constraints in (4), (5), (7). Let S∗ (tu , td ) denote an
s.t. TF∗ (tu , td ) ≤ T, optimal solution.
(1), (3). It can be easily verified that Problem 7 is a standard
three-stage flow-shop scheduling problem [11], [14]. We now
Let (t∗u , t∗d ) denote the optimal solution. TF∗ (tu , td ) is the establish the relationship between Problem 6 and Problem 7.
optimal value of the following sub-problem. Lemma 2: (Relationship between Problem 6 and Prob-
lem 7): Given tu and td , an optimal solution S∗ (tu , td ) to
3 We omit all the proofs due to page limitation. Please refer to [12] for Problem 7 is also optimal for Problem 6, i.e., TF∗ (tu , td )
details. = TF (S∗ (tu , td ), tu , td ).
By Lemma 2, instead of solving Problem 6, we can focus on efficiently. In addition, it can be easily verified that, t†u,k (Tu,d )
solving Problem 7. Johnson’s algorithm [14] (of complexity and t†d,k (Tu,d ) increase with Tu,d for all k ∈ K.
O(K log K)) can guarantee to find an optimal sequence for Based on the above analysis, we can obtain a sub-optimal
the three-stage flow-shop scheduling problem in the special solution to Problem 1. The details are summarized in Algo-
case where rithm 1.
min {tu,k } ≥ max {te,k }. (18)
k∈K k∈K
Algorithm 1 : Sub-optimal Solution to Problem 5
Note that (18) usually holds, as the execution duration of each ∑
1: Set Tu,d = T − k∈K te,k .
task at the BS is usually small due to the strong computing 2: repeat
capability at the attached MEC servers. Thus, we can use 3: Solve Problem 8 by calculating (t†u (Tu,d ), t†d (Tu,d )) accord-
Johnson’s algorithm to solve Problem 7 approximately. If (18) ing to (19) and (20).
holds, the obtained solution is optimal; otherwise, it is usually 4: Solve Problem 7 using Johnson’s algorithm to ob-
a sub-optimal solution with close-to-optimal performance. tain S∗ (t†u (Tu,d ), t†d (Tu,d )) and then use (16) to obtain
Next, we focus on solving Problem 5. Note that TF (S∗ (t†u (Tu,d ),∑t†d (Tu,d )), t†u (Tu,d ), t†d (Tu,d )).
† †
TeF (S, tu , td ) in (17) is convex, implying that TeF∗ (S, tu , td ) is 5: Set Tu,d = k∈K (tu,k (Tu,d ) + td,k (Tu,d )) + (T −
∗ † † † †
convex. Thus, Problem 5 is convex and can be solved using s- TF (S (tu (Tu,d ), td (Tu,d )), tu (Tu,d ), td (Tu,d ))).
† †
6: until TF (S∗ (t†u (Tu,d ), td (Tu,d )), t†u (Tu,d ), td (Tu,d )) = T
tandard convex optimization techniques. As TeF∗ (S, tu , td ) does
not have a simple form, the complexity for solving Problem 5
may still be high. Let Tu,d denote the total uploading and Note that the time complexity for Step 3 (with λ∗ (Tu,d ) ob-
downloading duration. To reduce the complexity for solving tained using bisection search) is polynomial. The complexity
Problem 5, we propose a related problem. for Step 4 is O(K log K). ∑ We can show that if (18) holds for
Problem 8 (Duration Allocation for Given Tu,d ): For all t†u (Tu,d ) where Tu,d = T − k∈K te,k , Algorithm 1 converges.
Tu,d > 0, we have By structural properties of Problem 7 and Problem 8, we
min E(tu , td ) can show the following result.
tu ,td † †
∑ ∑ for (tu (Tu,d ), td (Tu,d ))
Lemma 3: If constraint (18) holds
s.t. (tu,k + td,k ) ≤ Tu,d , given in (19), where Tu,d = T − k∈K te,k , then E(tu , td ) de-
k∈K creases as the number of iterations increases and Algorithm 1
(1), (3). stops in a finite number of iterations.
Let (t†u (Tu,d ), t†d (T∑u,d )) denote the optimal solution. V. S IMULATION R ESULTS
∗ ∗ ∗ ∗ ∗
Let Tu,d , k∈K (t u,k + t d,k ), where (tu , td ) is the In the simulation, we consider the following settings [4],
optimal solution to Problem 5. As any uploading duration [5]. We let β = 0.1, T = 80ms, µ = 10−29 , and F = 6 × 109 .
and downloading duration do not overlap, we can easily show Channel power gain hk for mobile k is modeled as Rayleigh
that (t†u (Tu,d
∗
), t†d (Tu,d
∗
)) = (t∗u , t∗d ). That is, for optimal fading with average power loss 10−3 . The complex additive
∗
Tu,d obtained by solving Problem 5, the optimal solution to white Gaussian channel noise is n0 = 10−9 W. For each task
∗
Problem 8 with Tu,d is the same as that to Problem 5. Later, k, Lu,k and Ld,k follow the uniform distribution over [1 ×
the relationship between Problem 5 and Problem 6 will be 105 , 5 × 105 ] (bits), and Nk follows the uniform distribution
used to reduce the complexity for solving Problem 5. We can over [0.5 × 107 , 1.5 × 107 ] (CPU-cycles). All random variables
easily verify that Problem 8 is convex and Slater’s condition is are independent.
satisfied, implying that strong duality holds. Thus, Problem 8
can be solved using KKT conditions. The optimal solution A. Comparison Between Optimal and Sub-optimal Solutions
(t†u (Tu,d ), t†d (Tu,d )) to Problem 8 is given by: In this part, we use a numerical example to compare the
†
L
t (T ) = ( ( λ∗ (T u,k)|h |2 −n0 ) )
ln 2 optimal solution and the proposed sub-optimal solution in
u,k u,d u,d k
B W n0 e +1 terms of the weighted sum energy consumption and com-
† , k ∈ K, putational complexity. From Fig. 4(a), we can see that the
( (
βLd,k ln 2
) )
td,k (Tu,d ) = B W λ∗ (Tu,d )|hk |2 −n0 +1 performance of the proposed sub-optimal solution is very
n0 e
Sub-optimal Baseline 3
-3 10 0
10 10 10 1
-1
10 10 0
5
10 -2
10 -1
10 -4 0 10 -3
1 2 3 4 5 1 2 3 4 5 10 -2
1 4 7 10 13 16 19 0.05 0.055 0.06 0.065 0.07 0.075 0.08
Number of users K Number of users K Number of users K Time slot duration (s)
(a) K vs energy consumption. (b) K vs computation time. (a) K users at T = 80ms. (b) Deadline T at K = 10.
Fig. 4: Comparison between optimal and sub-optimal solutions. Fig. 5: The weighted sum energy consumption versus the number
of users K and the deadline T for the multi-user MEC system with
non-negligible task execution durations.
All the three baseline schemes assume that the transmission
∑Kexecution durations cannot be paralleled, and consider T −
and
stage flow-shop scheduling problem and utilizing Johnson’s
k=1 te,k as the total uploading and downloading duration.
In particular, Baseline 1 ∑ allocates the total uploading and algorithm as well as convex optimization techniques. Finally,
K numerical results show that the proposed sub-optimal solution
downloading duration T − k=1 te,k equally to the uploading
and∑downloading operations of all tasks, i.e., tu,k = tu,k = outperforms existing comparison schemes significantly.
T− K k=1 te,k
2K for all k ∈ K [5]. Baseline 2 optimally allocates R EFERENCES
the total uploading and downloading duration to uploading [1] Y. Mao, C. You, J. Zhang, K. Huang, and K. B. Letaief, “Mobile
and downloading operations to minimize the weighted sum edge computing: Survey and research outlook,” CoRR, 2017. [Online].
energy consumption, using the optimal solution in (19) and Available: http://arxiv.org/abs/1701.01090
[2] Y. Mao, J. Zhang, and K. B. Letaief, “Dynamic computation offloading
(20). Baseline 3 allocates the total uploading and downloading for mobile-edge computing with energy harvesting devices,” IEEE J.
duration to all users according to their task sizes (here we Select. Areas Commun., vol. 34, no. 12, pp. 3590–3605, Dec. 2016.
ignore the size of each computation result) to minimize the [3] J. Liu, Y. Mao, J. Zhang, and K. B. Letaief, “Delay-optimal computation
task scheduling for mobile-edge computing systems,” in Proc. IEEE
weighted sum energy consumption, using the optimal solution ISIT, July 2016, pp. 1451–1455.
in (19) and (20), and then for each user, allocates the time [4] Y. Mao, J. Zhang, and K. B. Letaief, “Joint task offloading scheduling
duration to its uploading and downloading duartion operations and transmit power allocation for mobile-edge computing systems,” in
in Proc. IEEE WCNC, Mar. 2017, pp. 1–6.
to minimize the energy consumption corresponding to its task. [5] C. You, K. Huang, H. Chae, and B.-H. Kim, “Energy-efficient resource
Fig. 5(a) and Fig. 5(b) illustrate the weighted sum energy allocation for mobile-edge computation offloading,” IEEE Trans. Wire-
consumption versus the number of users K and the deadline T , less Commun., vol. 16, no. 3, pp. 1397–1411, Mar. 2017.
[6] Y. Yu, J. Zhang, and K. B. Letaief, “Joint subcarrier and cpu time
for the sub-optimal solution and the baseline schemes. From allocation for mobile edge computing,” in Proc. IEEE GLOBECOM,
Fig. 5(a) and Fig. 5(b), we can observe that as the number of Dec. 2016, pp. 1–6.
users K increases or the deadline T decreases, the weighted [7] J. Cheng, Y. Shi, B. Bai, and W. Chen, “Computation offloading in
cloud-ran based mobile cloud computing system,” in Proc. IEEE ICC,
sum energy consumption increases. Baseline 3 achieves the May 2016, pp. 1–6.
maximum weighted energy consumption among all the three [8] F. Wang, J. Xu, X. Wang, and S. Cui, “Joint offloading and computing
schemes, as it does not properly consider the size of the optimization in wireless powered mobile-edge computing systems,” in
Proc. IEEE ICC, May 2017, pp. 1–6.
computation result of each task. The sub-optimal solution [9] M.-H. Chen, B. Liang, and M. Dong, “Joint offloading decision and
greatly outperforms the three baselines, as it more efficiently resource allocation for multi-user multi-task mobile cloud,” in Proc.
utilizes the time duration over which the transmission and IEEE ICC, May 2016, pp. 1–6.
[10] Y. Cui, W. He, C. Ni, C. Guo, and Z. Liu, “Energy-efficient resource
execution operations are conducted in parallel (and hence allocation for cache-assisted mobile edge computing,” in Proc. IEEE
maximizes the total transmission time). LCN, Oct. 2017.
[11] H. Emmons and G. Vairaktarakis, Flow shop scheduling: theoretical
VI. C ONCLUSION results, algorithms, and applications. Springer Science & Business
Media, 2012.
In this paper, we consider energy-efficient resource al- [12] J. Guo, Z. Song, Y. Cui, Z. Liu, and Y. Ji, “Energy-efficient
location schemes for a multi-user mobile edge computing resource allocation for multi-user mobile edge computing,” CoRR,
2016. [Online]. Available: http://arxiv.org/abs/1611.01786
system with inelastic computation tasks and non-negligible [13] A. P. Miettinen and J. K. Nurminen, “Energy efficiency of mobile clients
task execution durations. We first establish a computation- in cloud computing.” HotCloud’10, vol. 10, pp. 4–4, 2010.
offloading model with non-negligible task execution durations. [14] S. M. Johnson, “Optimal two-and three-stage production schedules with
setup times included,” Naval research logistics quarterly, vol. 1, no. 1,
Then, we formulate the weighted sum energy consumption pp. 61–68, 1954.
minimization problem by optimally allocating communication [15] H. D. Mathes, “A 2-machine sequencing problem with machine repe-
and computation resources, which is NP-hard in general. tition and overlapping processing times,” OR-Spektrum, vol. 21, no. 4,
pp. 477–492, 1999.
We propose a method to obtain an optimal solution and [16] A. P. Chandrakasan, S. Sheng, and R. W. Brodersen, “Low-power cmos
develop a low-complexity algorithm to obtain a sub-optimal digital design,” IEICE Trans. Electronics, vol. 75, no. 4, pp. 371–382,
solution, by connecting the optimization problem to a three- 1992.