Abstract
Wakeup scheduling has been widely used in wireless sensor networks (WSNs), for it can reduce the energy wastage caused by the idle listening state. In a traditional wakeup scheduling, sensor nodes start up numerous times in a period, thus consuming extra energy due to state transitions (e.g., from the sleep state to the active state). In this paper, we address a novel interference-free wakeup scheduling problem called compact wakeup scheduling, in which a node needs to wake up only once to communicate bidirectionally with all its neighbors. However, not all communication graphs have valid compact wakeup schedulings, and it is NP-complete to decide whether a valid compact wakeup scheduling exists for an arbitrary graph. In particular, tree and grid topologies, which are commonly used in WSNs, have valid compact wakeup schedulings. We propose polynomial-time algorithms using the optimum number of time slots in a period for trees and grid graphs. Simulations further validate our theoretical results.
1. Introduction
Wireless sensor networks (WSNs) consist of hundreds to thousands of tiny, inexpensive, and battery-powered wireless sensing devices which organize themselves into multihop radio networks. As the batteries of most sensor nodes are nonrechargeable, one key challenging issue is to schedule the activities of nodes to minimize the energy consumption. The major source of energy wastage [1–3] in WSNs is the idle listening state in the radio modules, which in fact consumes almost as much energy as receiving. Therefore, nodes are generally scheduled to sleep when the radio is not in use [4, 5] and wake up when necessary. By using wakeup scheduling, nodes could operate in a low-duty-cycle mode, and periodically start up to check the channel for activity.
In wireless networks, the packets transmitted by a node may be received by all the nodes within its transmission range due to the broadcast nature of the wireless medium. Therefore, the transmission of one link may interfere with the reception of another link. To avoid the interferences among the communication links, we adopt the time division multiple access (TDMA) MAC protocols, such as TRAMA [6], DCQS [7], and DRAND [8]. TDMA protocols have the natural advantages of having no contention-introduced overhead or collisions [1]. In such protocols, the time is divided into equal intervals referred to as time slots. Correspondingly, nodes turn on the radio during the assigned time slots and turn off the radio when they are not transmitting or receiving in the wakeup scheduling. For multiple transmission links can communicate at the same time in wireless networks, several nodes can wake up to transmit their packets simultaneously when they do not interfere with each other. Therefore, we attempt to minimize the number of time slots assigned to each node while guaranteeing interference-free among the communication links.
The previous studies [9, 10] in the wakeup scheduling did not, however, consider all possible energy consumption, especially the energy consumed in the state transitions, for example, from the sleep state to the listening state or transmitting state. After such a scheduling, a node may start up numerous times in a period to communicate with its neighbors. Note that the typical startup time is on the order of milliseconds, while the transmission time may be less than the startup time if the packets are small [11]. Take Tmote Sky [12] as an example, the time and energy consumption to activate a node is about 1.4 ms and 17 μJ, respectively, whereas the time and energy consumption to transmit 1 byte is about 0.032 ms and 1.7 μJ, respectively. If a sensor node starts up too frequently, it not only needs extra time, but also consumes extra energy for state transitions. Moreover, it reduces the battery capacity due to the current surges in the state transitions.
Figure 1 shows the battery voltage of Tmote Sky sensors with different startup frequencies but with the same duty cycle (50%): one starts up every 20 ms, stays in the receive state for 10 ms, and turns to the sleep state for the rest period; the other one starts up every 100 ms, stays in the receive state for 50 ms, and turns to the sleep state for the rest period. We can see that about 8% battery voltage can be saved by reducing the startup frequency from five times to once in every 100 ms. To minimize the energy cost, the state transitions should be considered in the wakeup scheduling design. Unlike the previous work, we are interested in the scheduling with consecutive constraints, where all the links incident to a node are assigned consecutive time slots so that each node needs to wake up only once to communicate bidirectionally with its neighbors.

(a) Tmote Sky sensor. (b) The battery voltage of Tmotes with different startup frequency. AA Carbon-Zinc batteries are used in the experiment. 10 ms and 50 ms are active time in each period.
In [13], energy-efficient centralized and distributed algorithms are proposed to reduce the frequency of state transitions of each node to twice in a data-gathering tree: once for receiving data from its children, and once for sending data to its parent. If the network topology is a directed acyclic graph (DAG) where each node
In this paper, we propose compact wakeup scheduling, a novel time division multiple access (TDMA) approach to the wakeup scheduling problem, to minimize the frequency of state transitions. Compact wakeup scheduling assigns consecutive time slots to all the links incident to a node
Apart from reducing the transient time and energy cost in the state transitions, compact wakeup scheduling also has other benefits. The network delay, which is a major concern in time-critical monitoring systems like that in [14], can be reduced. For instance, a sensor may need to wait until all its neighbors wake up so that it can collect the real-time data from these neighbors to make the local computation on these data. Note that compact wakeup scheduling cannot only reduce the state transitions of transceivers, but also reduce the state transitions of other components in the nodes, such as external memory and sensing devices.
The main contributions of this paper are summarized as follows.
We formulate the compact wakeup scheduling problem in WSNs to minimize the frequency of state transitions, and prove it to be NP-complete. We present polynomial-time algorithms using the optimum number of time slots in a period for trees and grid graphs. In grid graphs, we point out all the possible coloring patterns and give the lower bound as well as the upper bound of the compact wakeup scheduling. We develop simulations to show the efficiency of compact wakeup scheduling.
The rest of this paper is organized as follows. Section 2 reviews the related work. Section 3 describes the system model and formulates the compact wakeup scheduling problem. Section 4 presents polynomial-time algorithms for trees and grid graphs. Section 5 shows the performance evaluation. Section 6 concludes the paper and provides directions for future research.
2. Related Work
Wakeup scheduling has attracted a lot of interest in WSNs in virtue of its energy efficiency. S-MAC [1] is a contention-based MAC scheme. In S-MAC, nodes periodically sleep and wake up, and each active period is of a fixed size with a variable sleep time. T-MAC [2] improves S-MAC by adopting a dynamic duty cycle, that is, transmitting all messages in bursts and ending the listening period when nothing is heard within a limited time. DW-MAC [4] allows nodes to wake up on demand during the sleep period and ensures that data transmissions do not collide at their intended receivers. TreeMAC [15] is a localized TDMA MAC protocol, which is designed to achieve high throughput and low congestion with low overhead. PW-MAC [16] minimizes the energy consumption by enabling senders to predict the wakeup times of receivers based on asynchronous duty cycling.
Link scheduling is time slot assignments to communication links in TDMA MAC protocols. Ramanathan and Lloyd [17] consider both the tree networks and arbitrary networks, and the performance of the proposed algorithms is bounded by the thickness of a network. In [18], Gandham et al. propose a link scheduling algorithm involving two phases. In the first phase, a valid edge coloring is obtained in a distributed fashion. In the second phase, each color is mapped to a unique time slot, and the hidden terminal problem as well as the exposed terminal problem is avoided by assigning each edge a direction of transmission. The overall scheduling requires at most
Instead of applying the interval vertex coloring, we apply the interval edge coloring in the compact wakeup scheduling. Interval edge coloring, introduced by Asratian and Kamalian [20] (available in English as [21]), is a special edge coloring in which the colors of edges incident to the same vertex must be contiguous, that is, the colors must be composed of an integer interval. Not every graph has an interval edge coloring, since a graph G with an interval edge coloring belongs to Class 1 graphs where the chromatic number of edge coloring is equal to the maximum degree
Compared to the former studies on wakeup scheduling, the compact wakeup scheduling could minimize the energy cost of state transitions, and sensors can start up only once in a period T. Furthermore, the compact wakeup scheduling considers two-way (or bidirectional) communication while our early work [13, 19] only considers one-way communication.
3. Problem Formulation
In this section, we first present the system model then formulate the compact wakeup scheduling problem.
3.1. System Model
We assume that a WSN has n static sensor nodes equipped with single omnidirectional antennas, and all the nodes have the same communication range. The network is represented as a communication graph
Each node operates in three states: active state (transmit, receive, and listen), sleep state, and transient state (state transition). The transient state comprises two processes: startup (from the sleep state to the active state) and turndown (from the active state to the sleep state). The startup process from the sleep state to the active state includes radio initialization, radio and its oscillator startup, and the switch of radio to active [27]. The startup process is slow due to the feedback loop in the phase-locked loop (PLL) [28], and a typical setting time of the PLL-based frequency synthesizer is on the order of milliseconds.
We assume that the interference range is equal to the communication range. Two types of interferences, primary interference and secondary interference [17], exist in the network. The primary interference occurs when a node has more than one communication task in a single time slot. Typical examples are sending and receiving at the same time and receiving from two different transmitters. The secondary interference (or called the hidden terminal problem [29]) occurs when a node
3.2. Problem Formulation
In TDMA wakeup schedulings, each bidirectional communication link
Definition 1.
Compact wakeup scheduling is an interference-free wakeup scheduling aiming to assign consecutive time slots to all the links incident to a node
Compact wakeup scheduling attempts to assign consecutive time slots to all the links incident to a node, but it may fail to find such a scheduling. If it succeeds, the scheduling is said to be a valid scheduling. If not, the scheduling is said to be not a valid scheduling.
In the compact wakeup scheduling, the two time slots assigned to each bidirectional link

Wakeup scheduling and compact wakeup scheduling: (a) network topology, (b) wakeup scheduling, (c) compact wakeup scheduling.
An edge coloring of graph G is called a valid coloring if any two adjacent edges of G are assigned different colors. A valid coloring of G is called an interval (or consecutive) edge coloring if, for each vertex v, the colors of edges incident to v form an integer interval.
Theorem 2.
The problem of deciding whether a valid compact wakeup scheduling exists for an arbitrary graph G is NP-complete.
Proof.
The compact wakeup scheduling problem is in NP. To verify whether a scheduling is a solution to the compact wakeup scheduling problem, we need to check (i) all the links incident to a node are assigned consecutive time slots; (ii) the scheduling is interference-free. Verifying (i) and (ii) requires
To prove that the compact wakeup scheduling problem is NP-hard, we first restate the interval edge-coloring problem with forbidden colors which is NP-complete [21, 23]. “Given a graph G, a forbidding function F which represents the colors that cannot be assigned to each edge e, and an integer k, does there exist an interval edge coloring of G using k colors and avoiding F?” The interference, such as the hidden terminal problem, in the compact wakeup scheduling is a special case of the forbidding function in the interval edge-coloring. Thus, the compact wakeup scheduling is equivalent to the interval edge-coloring with forbidden colors, which is NP-hard. Therefore, the problem is NP-complete.
Theorem 3.
A communication graph G with a valid compact wakeup scheduling has an interval edge coloring and belongs to Class 1 graphs.
Proof.
If graph G has a valid compact wakeup scheduling, any node
Unfortunately, the converse proposition is not true. The graph in Figure 3(a) belongs to Class 1 graphs, but has no valid interval edge coloring, and thus it has no valid compact wakeup schedulings. The Class 1 graphs even with valid interval edge colorings may not have valid compact wakeup schedulings. For example, the graph in Figure 3(b) has an interval edge-coloring, but all valid interval edge colorings could not avoid the hidden terminal problem. Thus, graphs with valid compact wakeup schedulings are a proper subset of graphs with valid interval edge colorings, and also a proper subset of Class 1 graphs, as shown in Figure 4.

Class 1 graphs without valid compact wakeup schedulings.

The relationship among Class 1 graphs, graphs with valid interval edge colorings and graphs with valid compact wakeup schedulings.
Since not all communication graphs have valid compact wakeup schedulings and the problem of deciding whether a valid scheduling exists for an arbitrary graph is NP-complete, we will focus on particular graphs, such as tree and grid topologies. Interestingly and surprisingly, we can obtain polynomial-time algorithms using the optimum number of time slots in a period. By minimizing the number of time slots, the overall network throughput can be maximized.
3.3. Direction of Transmission Assignment in WSNs
In the link scheduling in WSNs, each edge in the communication graph has two transmission links: one is upload link, and the other one is downlowd link. We can easily find an edge coloring of a communication graph using
In this paper, the transmitter is marked with a sign “+” and the receiver is marked with a sign “−”. Given a coloring of graph G and a color k, a subgraph
(1) Start by visiting any node in (2) Initiate a Depth First Search (DFS) procedure. (3) (4) Let edge e be traversed from a visited node unvisited node (5) (6) Assign (7) (8) Assign (9) (10)
Gandham et al. [18] prove that a valid direction of transmission assignment exists in acyclic topologies (e.g., tree graphs). If a valid edge coloring is obtained in the topologies which are not acyclic (e.g., grid graphs), a valid direction of transmission assignment may not exist due to the hidden terminal problem, as shown in Figure 5. Interestingly, Gandham et al. [18] also prove that all the nodes in a cycle of

Cycle that has odd number of edges with color k cannot be assigned a valid direction of transmission.
4. Compact Wakeup Scheduling Algorithms
In this section, we propose polynomial-time algorithms to produce valid compact wakeup schedulings for tree and grid topologies, which are commonly used in WSNs [31–35].
4.1. Trees
To obtain a valid compact wakeup scheduling of a tree, we first obtain an interval edge coloring of a tree then try to assign time slots to each edge and make it interference-free.
If graph G is a tree of degree
(1) Color any edge with 1. (2) (3) Find a uncolored edge e whose end vertex v is adjacent to an already colored edge. Let of colors assigned to v. (4) (5) Color edge e with (6) (7) Color edge e with (8) (9)
We now describe how the interval edge coloring is used to assign time slots to each edge in Algorithm 3. The idea is to map color k to two consecutive time slots
(1) Use Algorithm 2 to obtain a valid interval edge-coloring with (2) (3) Map color k to two consecutive time slots (4) Use Algorithm 1 to determine a valid direction of transmission assignment for time slot (5) Reverse the direction of transmission along each edge to obtain the other assignment for time slot (6)
In Figure 6, links

Compact wakeup scheduling of a tree: (a) hidden terminal problem, (b) avoid the hidden terminal problem, (c) avoid the exposed terminal problem.
A tree does not have any cycles, and thus it is always possible to obtain a valid compact wakeup scheduling. Algorithm 1, based on Depth First Search (DFS), can provide a valid direction of transmission assignment to
Definition 4.
The span of a valid compact wakeup scheduling of graph G is the number of colors assigned. The minimum and maximum span over all valid compact wakeup schedulings of G are denoted by
As any valid coloring in a tree requires at least
4.2. Grid Graphs
A
Definition 5.
In a
Sample grids with labeled vertical and horizontal edges are illustrated in Figures 7(a) and 7(b).

Vertical and horizontal edges in grid graphs.
Grid graphs can be consecutively colored with

An interval edge coloring of a grid graph: (a) interval edge coloring, (b) hidden terminal problem.
A valid direction of transmission assignment can be obtained to avoid the hidden terminal problem using Algorithm 1 in acyclic subgraphs
If the edges colored with “3” in the cycle of Figure 8(b) are assigned with other colors, the consecutiveness of the colors assigned to the edges incident to one node cannot be held. Our solution for a grid graph first considers the property of the hidden terminal problem in the grid graph, and then deals with the consecutiveness of the edge-coloring. Our key results for grid graphs are summarized below.
We obtain an interval edge coloring according to the parity of 𝒱 and ℋ.
If both 𝒱 and ℋ are even, If one of 𝒱 and ℋ is even and the other is odd, If both 𝒱 and ℋ are odd, We point out all the possible coloring patterns. We give the upper bound of the compact wakeup scheduling.
Definition 6.
In a grid graph, the maximum degree of vertices is
Definition 7.
In the compact wakeup scheduling of a grid graph, the colors assigned to the inner edges incident to an inner vertex form an interval of 4 integers. When the total number of colors assigned is less than 8, certain color must appear in one of the inner edges and this color is referred to as a critical color.
In grid graphs, if the total number of colors assigned is
Lemma 8.
If K is a critical color assigned to an inner edge e incident to two inner vertices in the compact wakeup scheduling of a grid graph, the inner edges parallel to e are all colored with K.
Proof.
Without loss of generality, we assume that an inner horizontal edge

Invalid colorings in the compact wakeup scheduling.

Coloring pattern in the compact wakeup scheduling.
Lemma 9.
If K is a critical color, the inner edges colored with K are in an interlined pattern.
Proof.
Without loss of generality, we assume an inner horizontal edge
Theorem 10.
A

The coloring patterns in the compact wakeup scheduling (both 𝒱 and ℋ are even).
Proof.
Figures 11(a) and 11(b) show two possible colorings in the compact wakeup scheduling, if both 𝒱 and ℋ are even. Since the edges with the same color are in a parallel and interlined pattern, there are an even number of edges with color
As

The coloring in the compact wakeup scheduling (both 𝒱 and ℋ are even).
Lemma 11.
A
Proof.
(1) If the grid could be consecutively colored with 4 colors A, B, C, and D, the four colors belonging to
(2) If the grid could be consecutively colored with 5 colors, B, C and D belonging to

The colorings in the compact wakeup scheduling using 4 and 5 colors (both 𝒱 and ℋ are odd).
Similarly, we could get the following lemma.
Lemma 12.
A
Theorem 13.
A

The general coloring pattern and coloring pattern in the compact wakeup scheduling (one of 𝒱 and ℋ is even and the other is odd. The uncolored edges depend on the edges colored with X, and
Proof.
Figure 14(b) shows a possible coloring in the compact wakeup scheduling by determining the colors for the rest uncolored edges in Figure 14(a), if one of 𝒱 and ℋ is even and the other is odd. Since the edges with the same color are in a parallel and interlined pattern, there are an even number of edges with color
Since
In status 1 shown in Figure 15(a), In Figure 15(c), In Figure 15(d), Case 1.
Case 2.
Case 3.

The colorings in the compact wakeup scheduling (one of 𝒱 and ℋ is even and the other is odd).
Theorem 14.
A

The general coloring patterns in the compact wakeup scheduling (both 𝒱 and ℋ are odd. The uncolored edges have various alternatives).
Proof.
Figures 18(a) and 18(b) show two possible colorings in the compact wakeup scheduling by determining the colors for the rest uncolored edges in Figures 16(a) and 16(b), if both 𝒱 and ℋ are odd. Particularly, if
Since the grid graph can be consecutively colored with 6 colors, 3 and 4 are critical colors. For an inner vertex has two incident critical inner edges, Figures 19(a) and 19(c) are the possible coloring patterns.
In Figure 19(a), In Figure 19(c), Hence, the possible colorings must be the patterns as shown in Figures 16(a) and 16(b), and Case 1.
Case 2.

The coloring patterns in the compact wakeup scheduling (

The coloring patterns in the compact wakeup scheduling (both 𝒱 and ℋ are odd).

The colorings in the compact wakeup scheduling (both 𝒱 and ℋ are odd).
Theorem 15.
In the compact wakeup scheduling of a
Proof.
Lower bound: we can get a valid consecutive edge coloring with a valid direction of transmission assignment in the compact wakeup scheduling using
Upper bound: for a consecutive edge coloring in the compact wakeup scheduling of a grid graph G, the difference in colors of edges incident to a node v cannot exceed
Thus,

According to Theorems 10, 13, and 14, the number of time slots assigned is optimum. If both 𝒱 and ℋ are even, the number of time slots assigned in a period is
(1) Decide the parity of 𝒱 and ℋ (even or odd). (2) (3) Color G using the pattern in Figure 11. (4) (5) Color G using the pattern in Figure 14(b). (6) (7) Color G using the pattern in Figure 18. (8)
(1) Use Algorithm 4 to obtain a valid interval edge-coloring with (2) (3) Map color k to two consecutive time slots (4) Use Algorithm 1 to determine a valid direction of transmission assignment for time slot (5) Reverse the direction of transmission along each edge to obtain the other assignment for time slot (6)
5. Performance Evaluation
In this section, we study the performance of the compact wakeup scheduling of trees and grid graphs, and we also compare our algorithms with the degree-based heuristic in [10] and the contiguous link scheduling in [13]. The performance metrics used in the evaluation are the transient energy consumption and the waiting period. The total energy consumption is an important metric in WSNs, but the energy consumption except the transient energy consumption is the same among the three schemes under identical traffic conditions, so we will only focus on the transient energy consumption. The waiting period is defined as the total time a node stays in the waiting status from the first neighbor waking up to the last neighbor waking up as the node waits for gathering the information from all its neighbors. The waiting period reflects the extra delay caused by the node if it stays in the sleep state for the wakeup of neighbors.
We adopt the following parameters in our simulation: the transient energy to activate a sensor is 17 μJ [12], a time slot is 0.1 second, a scheduling period T is 10 seconds (=100 time slots), and the network operating time is 1 day. In the tree construction of n nodes, the number of children nodes of each sensor is randomly set from 1 to 4. The root node first determines its children nodes, and then each child node determines its children nodes, and so on until the total number of nodes in the tree reaches n. In the tree construction, we vary n from 20 to 120 in steps of 20, 10 trees are generated, and the average performance over all these trees is reported. For the grid graph, we use square grid graphs, where
Figure 21 shows the total transient energy consumption of the following schemes: degree-based heuristic (degree-based), contiguous link scheduling (contiguous), and compact wakeup scheduling (compact). In both the tree and grid topologies, the transient energy consumption increases as the number of nodes increases. The energy consumption in the compact wakeup scheduling is the smallest among the three schemes, for the frequency of state transitions is minimized in the scheduling. As shown in Figure 21(a), compact wakeup scheduling reduces the energy consumption significantly by approximately 50% as compared to that in the degree-based heuristic and about 35% as compared to that in the contiguous link scheduling.

Transient energy consumption.
Figure 22 shows the total waiting period increases as the number of nodes increases in the degree-based heuristic and contiguous link scheduling, while the waiting period is zero in the compact wakeup scheduling. With smaller waiting periods, it would be faster for nodes to gather the information from their neighbors, thus reducing network delay.

Waiting period.
We summarize observations from the simulation results as follows. (1) The waiting period of trees and grid graphs with valid compact wakeup scheduling is zero. (2) Compact wakeup scheduling can significantly reduce network delay and energy consumption.
6. Conclusion and Future Work
In this paper, we address a new interference-free TDMA wakeup scheduling problem in WSNs, called compact wakeup scheduling. In the scheduling, a node needs to wake up only once to communicate bidirectionally with all its neighbors, thus reducing the time overhead and energy cost in the state transitions. We propose polynomial-time algorithms to achieve the optimum number of time slots assigned in a period for trees and grid graphs. In grid graphs, we point out all the possible coloring patterns and give the lower bound as well as the upper bound of the compact wakeup scheduling. In the process of time slot assignments, both the hidden terminal and exposed terminal problems can be avoided. The simulation results corroborate the theoretical analysis and show the efficiency of compact wakeup scheduling.
In our future work, we will consider the heterogeneous network model and try to obtain efficient algorithms for other kinds of network topologies with valid compact wakeup schedulings. Another challenging topic is to find the scheduling with the minimum waiting period if a valid compact wakeup scheduling does not exist for a given topology.
Footnotes
Acknowledgments
This work is supported in part by Grants PolyU 5236/06E, PolyU 5243/08E, A-PJ16, and 1-ZV5N.
