1. Introduction
The minimum power cover problem is defined as follows. Given a set
U of
n users and a set
S of
m sensors on the plane, the relationship that adjusts the power
of each sensor
s and its corresponding radius
is:
, where
and
. The minimum power cover problem is to find a power assignment of each sensor such that all users on the plane are covered and the total power consumption is minimized. Lev-Tov et al. [
1] studied the 1-dimensional minimum power cover problem and obtained a fast algorithm in polynomial time. Charikar et al. [
2] designed a primal dual algorithm and obtained a constant approximation. Since the power consumption of signal coverage will increase sharply with the increase of radius, it is very important to control the power consumption. Zhang et al. [
3] studied wireless access points with limited capacity in mobile edge computing, proposed a local ratio based algorithm, and verified by simulation experiments that the algorithm can get a near optimal result in polynomial time. subsequently, Zhang et al. [
4] studied the power control problem of the edge server antenna with limited capacity, proposed an
m-approximation algorithm of the primal dual frame, and verified the performance and practicability of the algorithm through simulation experiments.
The minimum power partial cover problem is to find a power assignment that covers at least
k users on the plane and has the smallest total power consumption. Freund and Rawitz [
5] introduced this problem, and when
, they proposed a
-approximation algorithm. Li et al. [
6] designed a primal dual algorithm to obtain a
-approximation solution. Recently, Dai et al. [
7] improved their algorithm and obtained an
-approximation solution.
The minimum power multiple cover problem is a generalization of the minimum-power cover problem, where each user
u has a cover requirement
, finding a power assignment for each sensor on the premise that each user satisfies its coverage requirements. Abu-Affash et al. [
8] studied the special case where
and all users
have the same coverage requirements
, and they presented an approximation algorithm with an approximation ratio of at most
. Bar-Yehuda and Rawitz [
9] considered the case of general metric space and obtained a
-approximate solution based on a local ratio algorithm, where
is the maximum coverage requirement. Liang et al. [
10] considered the situation where all users and sensors are on a same straight line, and designed an optimal algorithm based on dynamic programming when the maximum cover requirement has a constant upper bound. Ran et al. [
11] designed a polynomial time approximation scheme (PTAS) under the assumption that all users cover requirements have a constant upper bound.
The minimum power partial cover problem with penalty is also a generalization of the minimum power cover problem and the minimum power partial cover problem. It is assumed that each user has a penalty, at least
k users are required to be covered, and the sum of the total power of covered users plus the penalty of uncovered users is minimized. Recently, Liu et al. [
12] studied this problem and designed a
-approximation algorithm based on the primal dual technique. In real life, the performance detection of sensor networks meets the property of submodule-diminishing marginal benefit. If a user is not covered, the punishment can be regarded as a loss of a reputation of company. As the number of users not covered increases, the loss of a reputation of company may remain unchanged. Therefore, when the penalty function is a submodular function, Liu et al. [
13] designed a polynomial time
-approximation algorithm based on the primal dual framework for the minimum power partial cover problem with penalty on the plane. And Liu et al. [
14] studied the minimum power cover problem with submodular penalty and obtained a
-approximation algorithm, when the penalty function is a linear function, based on the plane subdivision technique, and a PTAS was given. In this paper, our algorithm improves on the minimum power cover problem with submodular penalty by Liu et al. [
14].
The main structure of this paper is as follows. The first part describes the minimum power cover problem with submodular penalty; the second part gives a brief overview of the algorithm of [
14]; the third part designs an improved primal dual algorithm for this problem; the fourth part gives a conclusion of this question.
2. Preliminary
We are given a set of
n users
, a set of
m sensors
on the plane and a real-valued function
defined on all subsets of
U. If for any subset
,
, then
f is called monotonic. If
, then
f is called normalized. If for any subset
,
then
f is called submodular.
In this paper, we consider the minimum power cover problem with submodular penalty (SPMPC). Given
n users
U,
m sensors
S and a penalty function
on the plane, the power
generated by each sensor
s can be adjusted by its corresponding radius
, and the relationship between
and
is:
For any user
, the user
u is said to be covered by a circular cover area
with sensor center
s and sensor radius
. The SPMPC problem is to find a power assignment for each sensor such that each user
is either covered by the sensor or penalized and the sum of the total power consumed by sensors in
S plus the penalties of all uncovered users is minimized, where the penalty is determined by the submodular function.
Let be an instance of the SPMPC problem. Each circular coverage area in the optimal solution of this instance, there will be at least one point on its boundary, otherwise its radius can be reduced to cover the same point resulting in a smaller assignment. Therefore, each sensor has at most n disks of different radius, and all sensors have at most disks to be considered. Next, we denote such a disk set by . For any disk , we use to represent the set of users covered by the disk D, to represent the center of the disk D, and to represent the power of the disk D. For any , represents the set of users covered by the union of all disks in . Here, we assume that the power of all sensors is not limited.
For each subset , let indicate that the subset T is rejected; otherwise . For each disk , let indicate that the disk D is selected; otherwise .
The integer linear programming of the SPMPC problem is as follows:
Relaxing
and
, the relaxed linear programming of the SPMPC problem is as follows:
The dual programming of the SPMPC problem is as follows:
In order to intuitively understand the dual programming, for each user
, we can consider
as the “paid” price of user
u being covered. For each disk
, if
the power consumed by disk
D is “paid” and the disk
D is called
tight. For each user set
, if
the penalty cost of user subset
T is “paid” and subset
T is called
tight.
3. Overview of the Algorithm of [14]
Let
denote the set of tight disks, and
denote the set of temporarily rejected points. Our algorithm improves on the algorithm of [
14]. We replace ball
B in [
14] with disk
D and repeat the algorithm in three phases.
In the first phase, we start from the trivial dual feasible solution 0, and simultaneously increase the dual variable of all users until some disk D becomes tight, and add D to the tight disk set , and the dual values of all users covered by D are frozen; otherwise, some user subset becomes tight, all users in T are added to the temporary rejection point set , and the dual values of all users in T are frozen. The above process iterates until all users in U are frozen. Therefore, dual feasibility is maintained throughout the algorithm.
In the second phase, we consider all tight disks in , by descending order of radius, if , select a disk with the largest radius in for each iteration, and for any , if , delete D from . This step iterates, and we finally get a maximum independent set I.
In the last phase, we expanded the radius of all disks in I by three times. Let p be the power assignment corresponding to I and R be the set of users that are not covered by any ball supported by p. Then, the output is , where .
Note that the main idea of the algorithm of [
14] is to greedily select a maximal independent set
I from
in which any two disks
satisfy
, and for any user
to be covered by at most one disk in the maximum independent set
I, i.e.,
then expand the radius of each disk in
I by three times to cover all users in
A. So the algorithm of [
14] yields an approximate solution of
. The improved algorithm we designed in the third section will be different here.
4. An Improved Primal Dual Algorithm
Before the algorithm starts, we cite [
7] for the definition of
-relaxed independent set. For any two disks
, if
or
where
,
represents the Euclidean distance, then
is called a
-relaxed independence set. Our algorithm mainly replaces the “independent set” in [
14] with the “relaxed independent set”. In each relaxed independent set, we no longer choose a disk but choose
disks, where the integer
. So we get the following critical Lemma 1.
Lemma 1 (Lemma 1 of [
7]).
For any integer , any user is covered by at most disks in the -relaxed independent set. Our algorithm is based on the algorithm of [
7], which is mainly divided into the following three stages.
In the first stage, in order to maintain the feasibility of the duality. Start with the trivial dual feasible solution 0, and simultaneously increase all dual variables until some disk D becomes tight or some user set T becomes tight. If a disk D becomes tight, add D to the set of tight disks , and freeze the dual values of all users in . Otherwise, a user set T becomes tight, and all users in T are added to the temporary rejected user set , and the dual values of all users in T are frozen. The above process iterates until the dual values of all users in U are frozen.
In the second stage, for any disk
, if there is a disk
of
such that
and
we remove
D from
.
In the third stage, set
. For any integer
, expand the radius of all disks in
I by a factor of
. Set such a disk set as
F and a penalty user set as
, and finally the algorithm outputs
. Our algorithm pseudocode is Algorithm 1:
Algorithm 1 Primal Dual Algorithm |
![Computation 10 00189 i001]() |
To facilitate the understanding of the algorithm, we give a simple example (see
Figure 1).
,
. For any subset
, if
,
;
,
;
,
. We set
. Initially, we set the dual value
for all users. We execute the algorithm and simply describe it in the following five steps.
(a). Increase the dual value of all users simultaneously until disk becomes tight, , and the values of and are frozen.
(b). Simultaneously increase the dual values of users of until the subset becomes tight, set , and the values of are frozen.
(c). Increase the values of until the disk becomes tight, set , and the value of is frozen.
(d). Because and , is removed from , setting .
(e). Expand the radius of by twice to become , set and . Therefore, we obtain a feasible solution .
Figure 1.
A simple example , and .
Figure 1.
A simple example , and .
Lemma 2 (Lemma 3.1 of [
14,
15])
. Algorithm 1 can be performed in polynomial time. Lemma 3 is a feasible solution to the SPMPC problem.
Proof. Let and represent the set of users covered by the union of all disks in I and F, respectively. According to Algorithm 1, we know that . For any user , we have . Then for any user , u is covered by the disk in F.
Otherwise,
u is covered by the disk removed in
, that is, for any user
, there is a disk
satisfies
and
, then according to the triangle inequality, we have
that is, for any integer
, expanding the radius of the disk
D by
times can cover the user
u. Therefore, for any integer
, enlarging all disks
by
times can cover all users in
, that is,
F can cover all users in
. Since
and
, so
is a feasible solution. □
Lemma 4. The temporary rejection point set satisfies .
Proof. Consider all tight subsets
formed by all users in
, i.e.,
. According to the Algorithm 1, for any subset
,
, we have
Since any subset
is a tight set, there is
. According to the (
4) and submodularity of
, there is
, i.e.,
Because of dual programming (
3), for any
, there is
Therefore, we have
, i.e.,
. □
According to Lemma 1, we know that for any user can be covered by at most disks in I, so we can get the following lemma.
Lemma 5. For any integer , , where is the optimal value of the SPMPC problem.
Proof. According to Algorithm 1, for any
, there is
, then
where the first inequality is due to Lemma 1. □
Lemma 6. For any integer , , where is the optimal value of the SPMPC problem.
Proof. According to Algorithm 1, we know
. Therefore, there is
where the last inequality is based on the Lemma 5. □
Theorem 1. Algorithm 1 obtains an -approximate solution to the SPMPC problem.
Proof. Since the output of the Algorithm 1 is
, then
where the second inequality is due to
.
For each given
, let
, then there is a minimum value
, which is always optimal compared with
in [
14]. The comparison of the approximate ratio of our algorithm and the approximate ratio
of the algorithm in [
14] is depicted in
Figure 2.
Let
, similar to the reference [
7], we have
when
is large enough,
is almost linear in the
value, and we have the minimum value
.
□