Abstract

Broadcasting is a fundamental function for disseminating messages in multihop wireless networks. Minimum-Transmission Broadcasting (MTB) problem aims to find a broadcast schedule with minimum number of transmissions. Previous works on MTB in duty-cycled networks exploit a rigid assumption that nodes have only active time slot per working cycle. In this paper, we investigated the MTB problem in duty-cycled networks where nodes are allowed arbitrary active time slots per working cycle (MTBDCA problem). Firstly, it is proved to be NP-hard and -inapproximable, where is the maximum degree in the network. Secondly, an auxiliary graph is proposed to integrate nodes’ active time slots into the network and a novel covering problem is proposed to exploit nodes’ multiple active time slots for scheduling. Then, a -approximation algorithm is proposed for MTBDCA and a -approximation algorithm is proposed for all-to-all MTBDCA. Finally, extensive experimental results demonstrate the efficiency of the proposed algorithm.

1. Introduction

Broadcasting is a fundamental function for many services in wireless sensor networks (WSNs) [1, 2], such as data collection, code updating, and topology discovering [36]. Many effective broadcasting algorithms have been investigated to improve the network performance, while the total number of transmissions is often taken as a measured metric. Obviously, the smaller the number of transmissions is, the more energy will be saved. Therefore, the Minimum-Transmission Broadcasting problem (MTB), which tries to minimize the number of transmissions, has got a lot of attentions from researchers. In traditional wireless sensor networks where each node always keeps awake, many broadcasting algorithms [715] have been proposed. Since the MTB problem has been proved to be NP-hard [7] and the aforementioned algorithms [715] are approximate ones, they achieve high energy efficiency during broadcasting.

However, it is well known that the duty-cycled scheme is commonly adopted in wireless sensor networks to conserve energy [16, 17]. In such working mode, each node switches between the active state and sleep state cyclically. To save energy, all the functional modules (such as sensing the environment, sending, and receiving the messages) are turned off in sleep state. As this working mode is much different, the MTB problem in duty-cycled wireless sensor networks needs to be reinvestigated and the following two issues should be addressed: (1) A node may need several transmissions to inform all its neighbors since the neighbors may be active at different time slots. (2) How to construct the broadcast tree to exploit nodes’ multiple active time slots for scheduling is also a big challenge. In duty-cycled wireless networks, the MTB problem is mainly studied by [1821] currently. To reduce the number of transmissions, these algorithms try to organize the nodes with the same active time slot together, and they provided a solution for the aforementioned Issue 1. However, these methods exploit a strong assumption that all nodes can be active only once in a working cycle. When each node can be active arbitrary times per working cycle [16, 17, 22], these methods cannot solve the aforementioned Issue 2 efficiently and may result in a large redundancy.

Thus, to avoid the above shortcomings, the MTB problem in duty-cycled WSNs where nodes have arbitrary active time slots per working cycle (MTBDCA problem) is studied in this paper. To exploit nodes’ whole active time slots, an auxiliary graph is designed and a novel kind of node covering problem, i.e., minimum schedule node covering problem, is proposed. Finally, a -approximation algorithm is proposed for MTBDCA. The contributions of this paper are mainly listed as follows.

(1) The MTBDCA problem is firstly formulated and proved to be NP-hard and -inapproximable, where is the maximum degree in the network. An auxiliary graph is designed to integrate nodes’ active time slots into the network.

(2) In order to exploit nodes’ whole active time slots for scheduling, a novel kind of node covering problem, i.e., minimum schedule node covering problem, is proposed and proved to be NP-hard. An approximate algorithm is proposed to solve it.

(3) An approximation algorithm with ratio of is proposed for MTBDCA, where is the maximum degree in the network. An -approximation algorithm is also proposed for all-to-all MTBDCA problem.

(4) The extensive simulations verify that the proposed algorithm can achieve high performance in terms of energy efficiency.

Compared to the conference version [23], this paper not only investigates the all-to-all MTBDCA problem and provide a -approximation algorithm for it but also provides more details on the theoretical analysis, such as the proof of the NP-hardness of the Minimum Schedule Node Covering problem and the correctness of the broadcast tree construction algorithm, which are important for the completeness of the proposed methods. Additionally, the new experiments are also conducted to show some new findings of the proposed methods.

The rest of this paper is organized as follows. The related works are introduced in Section 2. Section 3 gives the network model and problem definition. The proposed approximate algorithm for MTBDCA is presented in Section 4. The simulation results and conclusion are given in Sections 5 and 6.

The Minimum-Transmission Broadcasting (MTB) problem has drawn a lot of attentions from researchers. When each node always keeps awake, the MTB problem in WSNs are mainly studied by [715]. The NP-hardness of MTB problem was first proved in [7], where a tree-based structure is used to disseminate the messages. After that, the MCDS-based (Minimum Connected Dominate Set) scheme is used to further reduce the redundancy by minimizing the number of senders in the broadcast tree [810]. Lou et al. [11, 12] proposed a Dominant Pruning scheme and a quasi-local forward-node-set-based scheme to reduce the redundancy. The multipoint relay scheme is introduced for MTB in [1315], which can determine a small set of forwarding nodes in a localized way. Since CDS is the core of the algorithms for MTB, Wan et al. proposed an 8-approximation algorithm in [24]. With a two-phase constructing approach, they reduced the approximation ratio to 6.8 in [25]. Recently, the CDS construction problem in battery-free WSNs and the weakly CDS construction problem are studied in [2628]. However, these methods are unsuitable for duty-cycled wireless networks.

In duty-cycled wireless networks, the MTB problem are studied in [1821]. The MTB problem in duty-cycled networks was first proved to be NP-hard in [18]. In [18], a centralized -approximation algorithm is proposed by exploiting a set covering technique. After that, the authors in [19, 20] proposed a level-based scheduling framework and constructed the backbone according to nodes’ level information to reduce the number of transmissions. Recently, the authors in [21] found that the number of transmissions can be further improved if a depth-first search is conducted on the forwarding nodes. Based on this, they proposed an efficient broadcasting algorithm outperforms the previous ones. However, these methods all assume that all nodes can active only once in a working cycle, which limits their application. When each node has multiple active time slot in a working cycle, the efficient algorithms have been proposed for multicasting [16, 29], flooding [22], data aggregation [17], and beaconing [30] in the duty-cycled networks, respectively. Thus, it is very necessary and meaningful to study the MTBDCA problem.

3. Problem Definition

Let denote a duty-cycled WSN, where denotes all nodes and denotes the neighborhood relationship among nodes. As discussed before, each node owns two states in such network, i.e., the sleep state and the active state, and switches between these two states cyclically. Let denote a working cycle which includes time slots with same length, i.e., . And assume denote the working plan of node , which is defined as the set of the active time slots of , i.e., . If node wants to receive a packet, it can only receive it when it is active (i.e., the time slot ). When it wants to send a message, it can choose a time slot when the receiver is awake to switch to the active state. The duty cycle is calculated as . Table 1 lists the major symbols used in this paper.

As for MTB problem in duty-cycled WSNs, one not only needs to construct a broadcast tree which is rooted at the source node , but also computes the Transmitting Schedule of each nonleaf node to informs its children while the number of transmissions is minimized. Before giving the formal definition of Transmitting Schedule, some notations used in this paper should be clarified. Assume denote the set of ’s one-hop neighbors in . And let denote the broadcast tree; and denote the set of nonleaf nodes and the set of ’s children in the broadcast tree, respectively. Then we can have,

Definition 1 (transmitting schedule). Given any node , let denote node ’s one transmitting schedule, in which for any node , we have and .

Given a transmitting schedule , it means that node can deliver the message to all the nodes in through only one transmission at time slot . To receive the message, each node is able to wake up at time slot . Note that a node may have several transmitting schedules, then we can find that , where is the set of all transmitting schedules of .

Thus, the MTB problem in duty-cycled WSNs where nodes have arbitrary active time slots per working cycle (MTBDCA) is to compute a broadcast tree and calculate one or several transmitting schedules for nonleaf nodes in the broadcast tree, i.e., , with minimum number of transmissions. The broadcast tree and the transmitting schedules of each nonleaf node are called a broadcast schedule. It can be formalized as follows.

Input:(1)A duty-cycled network and a source node .(2)The working plans for all nodes, i.e., .

Output: The broadcast schedule , where , where(1) is rooted at the source node and spanning all of the nodes in .(2)For any and , satisfies the conditions in Definition 1.(3)The number of total transmissions, i.e., , is minimized.

Theorem 2. The MTBDCA problem is NP-hard and there exists no polynomial-time approximation algorithm with ratio of for MTBDCA unless , where is the maximum degree in the network.

Proof. We prove the NP-hardness of MTBDCA by showing that the Minimum Set Cover (MSC) problem can be mapped to one of its special cases. It has been proved that the MSC problem [29] is NP-hard and there exists no polynomial-time algorithm with ratio of unless , where is the size of the MSC problem. Consider a special case of MTBDCA, where there is only one source node along with its neighbors in the network and all the neighbors are only connected to . Thus, source node can choose a set of active time slots to cover all its neighbors. In this case, the MTBDCA problem is equivalent to the MSC problem. The theorem is proved.

4. Approximation Algorithm for MTBDCA

In this section, we will introduce an algorithm with approximation ratio of for MTBDCA, which includes the following steps: (1) The auxiliary graph is designed and constructed to integrate nodes’ active time slots into the network. (2) A Minimum Scheduling Node Covering problem is designed for multiple active time slot scheduling and an approximate algorithm is proposed for it. (3) A pseudo broadcast tree which contains nodes’ schedule information is obtained on the constructed auxiliary graph. (4) A broadcast schedule for MTBDCA problem is computed according to the pseudo broadcast tree.

4.1. Constructing an Auxiliary Graph

In order to integrate nodes’ working plan into the network and construct the broadcast tree, an Auxiliary Graph is first designed based on the duty-cycled network . Different from the duty-cycled network, a new kind of node is introduced in the auxiliary graph, i.e., Schedule Node. It is used to calculate the transmitting schedules for the nonleaf nodes.

In this paper, let denote a schedule node of (For simplicity, node is called the primary node of ). Each schedule has two properties, i.e., (, ), where denotes the schedule node’s primary node and denotes its transmitting time slot. The auxiliary graph is defined as follows.

Definition 3 (auxiliary graph). Given a duty-cycled network , the auxiliary graph is a directed graph which contains nodes’ active time slots. The set includes two kinds of nodes (primary node and schedule node) and is the set of all edges. They are constructed as follows: (i)Initially, , .(ii)For any node and time , we create a schedule node . Its two properties are set as (i.e., and ). Let denote the set of ’s schedule nodes, and then .(iii)For any node and schedule node , create an edge from to . Let , then can be updated as .(iv)Let be a one-hop neighbors of in . For each schedule node , add an directed edge in if . Let denote the set of such node . Actually, it denotes the nodes can be reached by at time slot . And we can have , where .

Note that, the auxiliary graph is directed, where the edges are either started from the primary node to its schedule nodes in , or started from a schedule node to the primary nodes it can reach at time , i.e., . For example, there is a simple duty-cycled network in Figure 1(a) and the number in the braces denotes nodes’ working plan. According to Definition 3, its auxiliary graph is constructed as in Figure 1(b). As for node , there are two neighbors and the union of the active time slots of these neighbors are . Then, three schedule nodes , and are created, and their properties are set as and . As we can see time slot is only included in the working plan of node , then there is an edge from node to and an edge from to node . The pseudo code for constructing the auxiliary graph is shown in Algorithm 1.

Input: The duty-cycled network , and the source node ;
Output: The auxiliary graph ;
(1);
(2) for do
(3) ;
(4) ;
(5) for do
(6) ;
(7) ;
(8) ;
(9) ;
(10) for do
(11) ;
(12) end for
(13) ;
(14) end for
(15) end for
(16) return ;

The size of the auxiliary graph is analyzed in Theorem 5.

Lemma 4. Any schedule node in the auxiliary graph can connect to at most primary nodes.

Proof. According to Definition 3, a schedule node is connected to ’s neighboring nodes which have the active time slot in its working plan. Obviously, there are at most such nodes. Since the auxiliary graph is directed, thus, the schedule node can connect to at most primary nodes.

Theorem 5. The number of nodes and edges in the auxiliary graph are at most and , respectively, where denotes the length of a working period and is the number of nodes of the original graph.

Proof. Firstly, according to Definition 3, a schedule node is created for each primary node and each time slot . Since there are at most time slots in , then there are at most schedule nodes for each primary node. Thus, the number of nodes in can be calculated aswhere is the number of schedule nodes.
Secondly, for any primary node , there is an edge between and according to Definition 3, which is included in . And for any schedule node , there are at most edges from to the primary nodes in . Then, we can have

4.2. Minimum Schedule Node Covering Problem

In this subsection, we will introduce a new kind of problem, i.e., Minimum Scheduling Node Covering problem. It tries to cover all the nonsource primary nodes in the auxiliary graph with minimum schedule nodes. The new problem can be defined as follows.

Definition 6 (minimum schedule node covering problem (MSNC)). Given a source node and an auxiliary graph , the MSNC problem is objected to compute a set of schedule nodes, i.e., , which satisfies the following conditions: (1)For each node , there must exist a schedule node in , i.e., , which satisfies that ( is the set of primary nodes which can be reached by ).(2)The size of , i.e., , is minimized.

Theorem 7. The MSNC problem is NP-hard and there exists no polynomial-time approximation algorithm with ratio of for MSNC unless .

Proof. We prove the NP-hardness of the MSNC problem by showing that the MSC problem can be mapped to one of its special cases. For example, Figure 2(a) gives an example of MSC, in which is the universe of all elements and set denotes subsets of . An edge is created between and if . The MSC problem is then to calculate a set of minimum nodes from to cover all the nodes in .
To prove the NP-hardness of MSNC, a simple graph with a source node and its neighboring nodes is constructed. The working plan of each node is set as follows: (1) Initially, the working schedule of is set null; (2) If , then . Then, the corresponding auxiliary graph is shown in Figure 2(b), where denote the schedule nodes. Then the MSNC problem is equivalent to the MSC problem, which is proved to NP-hard. The theorem is proved.

To solve the MSNC problem, we exploit the greedy set covering method [31] and choose the schedule node iteratively. Initially, is set and is set . In each loop, the schedule node which has maximum adjacent uncovered primary nodes, i.e., , is found. Then, the schedule node is added to , i.e., , and the covered primary nodes are removed from . This process repeats until there are no uncovered primary nodes in . The detailed procedure is shown in Algorithm 2. Since a schedule node can connect to at most primary nodes, then Algorithm 2 can have an approximation ratio of [31].

Input: The auxiliary graph , and the source node ;
Output: The set of schedule nodes ;
(1) ;
(2) all the schedule nodes in ;
(3) while do
(4) ;
(5) ;
(6) ;
(7) ;
(8) end while
(9) return ;
4.3. Generating the Pseudo Broadcast Tree

After obtaining the set of schedule nodes , a Pseudo Broadcast Tree in the auxiliary graph is then constructed to connect all schedule nodes in and these schedule nodes’ primary nodes. The pseudo broadcast tree is mainly constructed by two steps: (1) The schedule nodes in and their primary nodes are first organized into several subtrees; (2) These subtrees are then merged into one primary tree.

Assume is the level of each node (including the primary nodes and schedule nodes in the auxiliary graph). The above step (1) works as follows.

Initially, the level of source node is set , i.e., . Then, a breadth-first search is conducted from level by level.

Second, let denote the set of primary nodes whose schedule nodes is in . If is not included in , add into , i.e., .

Third, let be the primary node with the smallest level in and denote the subtree rooted at . Add into at the beginning, i.e., . Then we can construct by the following:(1)For any primary node in , let be the set of schedule nodes which are contained in and their primary node is .(2)For any schedule node , add it into the subtree , i.e., and create an edge from to schedule node . Let be a primary node in and not included in any subtrees, add it into subtree , i.e., and create an edge from schedule node to .(3)Delete the primary node from , i.e., .

The above three steps repeat until there are no nodes in . Then, we will choose another primary node with the smallest level in to begin the above process. Note that several subtrees may be generated in this step. Finally, when is empty, all the schedule nodes in and the primary nodes in are included in these subtrees.

Next, we will introduce the method to merge these subtrees.

Let denote the set of roots of these subtrees and the source node is also included in . The objective of this process is to merge all the subtrees into the tree which is rooted at , i.e., . Note that may include only one node at the beginning. Delete from . The merging process mainly works as follows.

Case 1. If there is a node in and one of its schedule nodes, i.e., , that can cover most root nodes in , then create an edge from to , and connect these root nodes in to schedule node , which is shown in Figure 3(a). Delete these root nodes from .

Case 2. Assume is the root node with the smallest level in . There must exists a neighbor of (i.e., ) in the original graph and the primary node is not in . But it can be reached by a primary node in , i.e., , just as the example shown in Figure 3(b). Let the schedule node of which can reach be , i.e., . Create an edge from to and an edge from to . After that, let the schedule node of that can reach be , then create an edge from to and an edge from to . Let the subtree contains be ; remove node from . Delete from .

The above process repeats until all the subtrees are added to either by Case 1 or Case 2. And then the pseudo broadcast tree is constructed completely. The correctness of this merging process can be verified by Theorem 10.

Lemma 8. Let denote the level of node in the auxiliary graph. If is a primary node, then is even, and if is a schedule node, then is odd.

Proof. First, we prove that if is a primary node, then is even. It can be easily verified that there exists a level of schedule nodes between two contiguous level of primary nodes when conducting the breadth-first search initiated from the source node . Since the level of the source node is 0, i.e., at the beginning, then all the schedule nodes of must be level , and then the primary nodes reached by these schedule nodes have the level 2. Actually, let the hop-distance from a primary node to node in the original network be , then we can find the level of the primary node in the auxiliary graph must be , which is even.
Second, since the schedule nodes can only be reached by its corresponding primary nodes, whose level is even, then the level of the schedule nodes must be odd.
Therefore, in the generated breadth-first tree, the level of the primary nodes is even and the level of the schedule nodes is odd.

Lemma 9. For any node in the subtree rooted at node , i.e., , we have .

Proof. First, we prove that, for any primary node in the subtree rooted at node , we have . According to the construction of subtree, we can find that the root node must be a primary node in . Since one of its schedule nodes can reach a node whose level is less than , i.e., , then we can have . Assume there exist a primary node, i.e., , that . Then there must exist a schedule node in that covers primary node . According to Lemma 4, then we can have , that is, . The level of the primary node of the schedule node , i.e., , can be calculated as , which is less than . Since is in , then we can also have is in . However, when subtree is constructed, primary node has the smallest level, then we have , which is a contradiction. Therefore, the level of all the primary nodes is no less than .
Second, since the level of the schedule nodes are larger than level of its primary nodes, thus, the level of all schedule nodes is also no less than .
Therefore, for any node in the subtree rooted at node , we have . The lemma is proved.

Theorem 10. For any subtree rooted at node , it can be merged into .

Proof. First, according to the merging process, if there exists a schedule node , whose primary node is included in and can reach node , then the subtree rooted at node will be merged into as in Case 1.
Second, we will prove that if there does not exist such a schedule node, then there must exists a primary node as in the Case 2. Let the set of the primary nodes whose level is less than the one of and can reach node by some of their schedule nodes be . Then, there must exist a primary node in , i.e., , whose level is less than the one of , and can reach some node in , i.e., , by some of its schedule nodes. According to Lemma 9, the level of the primary nodes in is . Obviously, we can have . Let the subtree contain node be . According to Lemma 9, then we can have . Since the primary node with the smallest level is , then the subtree and node must have been included in , which means the primary node is existed.
Therefore, the subtrees except can be added to the primary subtree either by Case 1 or Case 2. The theorem is proved.

4.4. Calculating the Broadcast Schedule

Actually, the pseudo broadcast tree constructed in the above subsection not only includes the information of the broadcast tree but also the scheduling information of nonleaf nodes. It can be transformed to the broadcast schedule (including a broadcast tree and the transmitting schedules of nonleaf nodes) easily.

First, the broadcast tree can be obtained by removing all the schedule nodes and create an edge from its father to all of its child nodes in the generated pseudo broadcast tree .

Second, the transmitting schedules of nonleaf nodes in , i.e., can be obtained according to the schedule nodes in the pseudo broadcast tree. That is, for each schedule node in , a transmitting schedule for node , i.e., is added in , where denotes the set of children of schedule node in , and is used for collisions avoiding [32, 33] and data freshness guaranteed during broadcasting, which can be just set as the level of node in the new broadcast tree .

Now, the complete Approximate Minimum-Transmission Broadcasting (i.e., AMTB) algorithm for MTBDCA problem is introduced and the detailed procedure is shown in Algorithm 3.

Input: The duty-cycled network and the source node ;
Output: The broadcast schedule ;
(1) Constructing the auxiliary graph as in Section 4.1 by integrating nodes’ active time slot into the network;
(2) Exploiting Algorithm 2 for the MSNC problem to obtain a minimum number of schedule nodes, i.e., , to cover all the
primary nodes in the auxiliary graph ;
(3) Calculating a set of subtrees as in Section 4.3 with the scheduled nodes in to connect all the primary nodes in ;
(4) Merging all the subtrees into a pseudo broadcast tree which contains the scheduling information of all nodes, i.e., ;
(5) Transforming the pseudo broadcast tree to a broadcast schedule, i.e., ;
(6) return The broadcast schedule ;
4.5. Performance Analysis of AMTB Algorithm

The correctness of AMTB is proved in Theorem 11, where the proof can be found in the conference version [23].

Theorem 11. The broadcast schedule generated by AMTB is complete and correct.

Theorem 12 gives the lower bound of MTBDCA problem. The approximation ratio of AMTB is proved in Theorem 13 and the proof of this theorem is available in the conference version [23].

Theorem 12. The lower bound on the number of transmissions of any optimal broadcast schedule for MTBDCA is at least , where denote the size of the obtained set of schedule nodes by Algorithm 1.

Proof. Assume is the size for any optimal schedule for MTBDCA problem. To finish the broadcasting process, all nodes except the source need receive the messages from some intermediate nodes. It means all the primary nodes in the auxiliary graph except the primary node of the source need to be covered at least once, then we can get , where denote the size of any optimal schedule for MSNC problem. According to the above analysis, . Thence, we can get . The theorem is proved.

Theorem 13. The approximation ratio of AMTB is at most .

Lemma 14. The time complexity of Algorithm 2 is at most .

Proof. Since there are at most schedule nodes in the auxiliary graph according to Lemma 8, then step (4) in Algorithm 2 takes at most time ( is often a constant). And there are at most primary nodes need to be covered, then the step (3) to (8) takes at most time. Thus, the time complexity of Algorithm 2 is .

Theorem 15. The time complexity of AMTB is .

Proof. First, according to Lemma 8, it takes at most time to construct the auxiliary graph. Since and are often constant, then Algorithm 1 takes at most time.
Second, according to Lemma 14, it needs at most time to return a set of minimum schedule nodes for MSNC problem.
Third, to construct the pseudo broadcast tree, several subtrees are first generated and then these subtrees are merged into a single tree. Since there are at most root nodes, and each subtree takes at most time, then it takes at most time to generate the subtrees. To merge these subtrees, one need to choose a subtree to merged into at each step, which takes at most time, and there are at most subtrees. Thus, it takes at most time to merge the subtrees.
Finally, the broadcast schedule can be obtained by searching the broadcast tree, which takes at most time.
Therefore, the time complexity of AMTB is .

4.6. Discussion of Algorithms for All-to-All Broadcasting Problem

In the above subsections, the Minimum-Transmission Broadcasting problem with only one source node is investigated. Despite the one-to-all broadcasting problem, the all-to-all broadcasting problem is also very important in wireless networks [34], which is aimed at distributing the messages from all the nodes to all the other nodes. Similar as in [34], we assume the size of messages is unbounded. Then the above AMTB algorithm can still give an upper bound for the all-to-all MTBDCA problem. It mainly works as follows. First, all the messages are aggregated to a center node with the data aggregation technique in [17]. Second, the aggregated messages can be delivered to all the other nodes with the AMTB algorithm. The proposed algorithm can achieve an approximation ratio of , which is shown in Theorem 16. As for the more efficient algorithms for all-to-all MTBDCA problem, it will be investigated in our future work.

Theorem 16. The approximation ratio of the proposed algorithm for all-to-all MTBDCA problem is .

Proof. Let and be the number of transmissions of the optimal solution for the all-to-all and one-to-all MTBDCA problem, respectively. In the above algorithm for all-to-all MTBDCA problem, the data aggregation process takes at most transmissions, and the broadcasting process takes at most transmissions according to Theorem 13. Then the total number of transmissions is . In addition, each node covers at most neighbors in the AMTB algorithm, then we can have . Since must be larger than , then we can have . The theorem is proved.

5. Simulation Results

In this section, we will evaluate the performance of AMTB through extensive simulations. In the experiments, AMTB is mainly compared with the following algorithms.

First, the existing algorithms designed for MTB problem in duty-cycled networks, including the classical one, i.e., CSCA [18] and the recently proposed one, i.e., BRMS [21], are both evaluated to demonstrate that the AMTB algorithm can benefit from scheduling with nodes’ all active time slots.

Second, two baseline algorithms, i.e., CDS-based (Connected Dominate Set) algorithm and SPT-based (Shortest Path Tree) algorithm, are also implemented. In such two algorithms, a CDS-based and SPT-based broadcast tree is constructed firstly. Then, to reduce the number of transmissions, we calculate the transmitting schedules of all forwarding nodes in the broadcast tree optimally by enumerating all the possible results.

In the simulations, we mainly focus on the performance of the number of transmissions of each algorithm under various network topologies. Similar as in [30], the Networkx [35] tool was used to test more complex networks and generate different network topologies, where the number of sensor nodes is set from 100 to 400. The duty cycle of each node is set from 10% to 35% and the nodes’ working plan is generated randomly to satisfy a wide range of configurations. In all the simulation results, each plotted point represents the average of 100 executions.

5.1. Impact of

First, the performance of each algorithm under different length of working cycle (i.e., ) and number of nodes (i.e., ) is evaluated. In this group of experiments, the duty cycle is set and the average number of neighbors of each node is set 5.

Figure 4 shows the number of transmissions of each algorithm when we vary the length of working cycle under different network size. The number of nodes in Figures 4(a), 4(b), 4(c), and 4(d) is set as 100, 200, 300, and 400, respectively. In all scenarios, the number of transmissions of AMTB is much less than the one of other algorithms. Compared to the recently proposed BRMS algorithm, the number of transmissions of AMTB is decreased by 50% on average. This is mainly due to AMTB can exploit the whole active time slots among all neighbors for scheduling to reduce the number of transmissions. Additionally, although the CDS-based and SPT-based methods consider multiple active time slots during scheduling, they perform even worse than BRMS. This demonstrates that the performance can be still be worse even exploiting the optimal scheduling method if the broadcasting tree is not constructed well. Thus one must choose the forwarding nodes carefully when constructing the broadcasting tree.

Another finding is that when the length of working cycle is increased and the duty cycle remains unchanged, the number of transmissions of BRMS and CSCA method is even more, while the one of the algorithms exploiting multiple active slots for scheduling, i.e., AMTB, SPT-based, and CDS-based method, is reduced. This is due to CSCA and BRMS methods only exploit nodes’ first active time slot for scheduling. However, the number of neighbors who shares the same active time slot may be reduced when is increased. Actually, the number of active time slots in nodes’ working plan is increased, and AMTB, SPT-based and CDS-based method can benefit from the increased active time slots to reduce the number of transmissions.

5.2. Impact of Duty Cycle

In this simulation, the performance of each algorithm under different duty cycle is compared. The length of nodes’ working cycle is equal to .

Figure 5 shows the number of transmissions of each algorithm under different duty cycle. The number of nodes is set from 100 to 400, and the results are shown in Figures 5(a), 5(b), 5(c), and 5(d). As we can see, AMTB perform much better than all the other methods in all scenarios, which demonstrates its efficiency for MTBDCA problem. The SPT-based method still performs much worse than the others. This demonstrates that the SPT-based method may be not suitable for MTB problem in duty-cycled WSNs.

Another finding is that both the number of transmissions of the existing methods (BRMS and CSCA) and the one of AMTB is improved when we increase the duty cycle. This is because the probability of the first active time slot of neighbors being the same is increased when the duty cycle is increased (which means the size of node’s working plan is increased). Note that, if we further increase the duty cycle, the number of transmissions of each method will still be decreased until the duty cycle is increased to 1. In this case, the MTBDCA problem is equal to the MTB problem in the traditional WSNs, and the number of transmissions of each method will be steadily.

5.3. Impact of Neighbors

Finally, we exploit Networkx to investigate the relationship between the number of transmissions of each method and the average number of neighbors, i.e., . To compare, the number of nodes is set 200 and the average number of neighbors is set 5 and 10 in two group of experiments.

Figure 6 presents the number of transmissions of the above algorithms under different length of working cycle, where the duty cycle is set 20%. Firstly, as we can see in Figures 6(a) and 6(b), the number of transmissions of each method is decreased notably if we increase the average number of neighbors in the network from 5 to 10. Although the total number of nodes in the network is unchanged, the nodes sharing the same active time slot is increased when the number of neighbors is increased. As a result, the required number of transmissions is reduced. Compared to other methods, the proposed AMTB algorithm can reduce the number of transmissions by 40%, which demonstrates the efficiency of the proposed method. Similar to Figure 4, the number of transmissions of BRMS and CSCA are both increased when the length of working cycle is increased since they only exploit nodes’ first active time slot for scheduling.

Figure 7 compares the number of transmissions of each method when we set and and change the duty cycle. In this case, the trend of each method is similar as in Figure 5, i.e., the number of transmissions of each method is decreased when the duty cycle is increased. And the number of transmissions of AMTB is much less than the one of other methods. Comparing Figure 7(a) with Figure 7(b), the number of transmissions of each method is decreased notably (almost 50%) when the average number of neighbors is increased. This demonstrates that the number of transmissions is also highly related to the average degree in the network.

6. Conclusion and Future Work

In this paper, the MTBDCA problem in duty-cycled wireless networks is investigated. It is proved to be NP-hard and -inapproximable, where denotes the maximum degree in the network. An auxiliary graph and the minimum schedule node covering problem is proposed to exploit nodes’ all active time slots for scheduling. Based on this, a -approximation algorithm is proposed for MTBDCA. The efficiency of the proposed algorithm is demonstrated by extensive simulations.

As for the future work, we will further investigate the all-to-all MTBDCA problem, including providing a more efficient algorithm for the all-to-all MTBDCA problem and studying the tight approximation ratio of the proposed methods. The simulations will also be conducted to demonstrate the efficiency of the proposed algorithms.

Data Availability

The simulation data used to support the findings of this study are included within the article.

Conflicts of Interest

The authors declare that they have no conflicts of interest.

Acknowledgments

We thank T. Le and Z. Cai for useful contributions in the conference version [23]. This work is partly supported by the Opening Project of Guangdong Province Key Laboratory of Cyber-Physical System under Grant no. 2016B030301008, the National Natural Science Foundation of China (NSFC) under Grants nos. 61802071, 61502116, and 61502110, the China Scholarship Council under Grant no. 201808440012, and the Natural Science Foundation of Guangdong under Grants nos. 2018A030310541, 2015B010104005, and 2017A010101017.