TDMA Scheduling Algorithm Using Independent Sets in Network Graph

Wireless Sensor Networks (WSNs) is a distributed wireless network consists of large amount of sensor nodes which gather useful information from a variety of environment and these sensor nodes communicate with each other in a multi-hop radio networks, with the end goal of handing their processed data to the data collector or access point (AP) [1,2]. WSNs have many issues such as self-configuration, fault-tolerance, adaptation, flexibility, energy efficiency, security, scalability, interference, architectural issues, mobility and delay tolerance [3,6]. Among these issues the most critical issue is to save energy and interference. The aim of this study is to construct the network graph which is conflict free and has minimum interference and minimum energy consumption. We have MAC Access protocols but TDMA protocol is more efficient than other protocols because TDMA can eliminate collisions and remove the need for a back-off [4]. A TDMA scheduling algorithm is constructed for the wireless sensor network, which is based on the creation of separate independent sets of the representing network graph. Independent sets are employed to minimize the time slots needed for the complete transmission of data packets in the network. An algorithm has been developed to implement it and there are three different steps in the implementation of this algorithm. In first phase, the minimum independent sets of the network are constructed. In second phase, the conflict graph of given network graph has been created. In third phase, time slots are assigned to all the transmissions according to the independent sets which were created in first phase, so that all the data packets are transmitted to the access point (AP) or data collector. The simulation results indicate that the TDMA scheduling algorithm reduce the interference and energy consumption in the network graph.


INTRODUCTION
Wireless Sensor Networks (WSNs) consists of a large number of small sensing self-powered nodes which gather information or detect special events and communicate in a wireless fashion, with the end goal of handing their processed data to a base station. Sensing, processing and communication are three key elements whose combination in one tiny device gives rise to a vast number of applications such as traffic analysis, seismic monitoring, health monitoring, fire detection, physical monitoring, industrial process monitoring and tactical systems. It also plays important roles in civilian and military applications [1,5,7].
WSNs are distributed systems which contain thousands of sensor nodes with sensing, signal processing and wireless communication capabilities but possessing limited battery energy. They organize themselves into multiple radio networks [7]. Each sensor node has a light weight, a low cost and battery powered sensor nodes. These sensor nodes are equipped with low-power radio or equipped by power-constrained batteries, which is intricate and costly to be replaced once the nodes are deployed. Therefore, it is critical to reduce power consumption in the network design [8].
In WSNs the nodes must quickly report the results to a data collection node or access point where continuous queries are posed and processed. There are many issues in WSNs such as self-configuration, fault-tolerance, adaptation, flexibility, energy efficiency, security, scalability, interference, architectural issues, mobility and delay tolerance but the energy consumption (save energy) and interference are the most important issues and the major sources of energy wastage is the idle listening. An idle listening occurs if nodes listen to the medium when there is no data transmission in the channel and it consumes as much as energy as receiving [1,3,5,6,8].
The main objective of this paper is to have a network graph which is collision free and has minimum interference and minimum energy wastage. There are many approaches to provide collision free protocols such as FDMA, CDMA and TDMA. These protocols ensure that no interference occur during the transmissions of the data [9].
FDMA is not relevant in the context of sensor network because the sensor will transmit the data using one frequency band. CDMA is not preferred for sensor network because it is costly operations for encoding and decoding of a message and the network capacity of a CDMA system is limited by two factors: code word length and maximum sender"s power. Thus, TDMA is a suitable approach to avoid interference or collision in WSNs and we have considered TDMA scheduling only [9,10].
TDMA scheduling can eliminate collision and remove the need for a back-off. This provides the timely delivery of the data during high traffic scenarios. TDMA is also removing idle listening because every node in TDMA has a fixed time slot for transmitting and receiving the data. A time slot indicates which node may transmit or receive data during a certain slot. After receiving or transmitting the data every node goes in sleep mode or processing the data and this techniques save energy and interference or collision of the data [1,4,9,12].
We have considered the network as a graph where the vertices correspond to the nodes and the edges correspond to the links between these vertices or nodes. One node is considered as the access point (AP) or data collector. All the data transferred from each node should reach the access point or data collector. From this network graph, we acquire the conflict graph.
For the TDMA scheduling algorithm, we are using the concept of independent sets of the network graph. An independent set S of a network graph G= (V, E) is a subset of the vertices, such that no two vertices in S are adjacent to each other. The different independent sets of the given network graph such that no two vertices in the independent sets S has an edge between them. Therefore, these vertices do not interfere with each other and can be assigned the same time slot for data transmission [9,11].
The time slots have been assigned continuously to all the transmission at different nodes until all the data is transmitted. For implementing this process, an algorithm has been developed which is based on the above approach. There are three phases in this algorithm. In first phase, an algorithm for finding the minimum number of independent sets of a graph has been created. In second phase, conflict graph of the given network graph has been developed which represents all the possible conflicts in the network graph. In third phase, time slots have been assigned to all the transmission that occurs at different nodes of constructed independent set so that all the data reach the access point. Thus, the number of time slots has been minimized that is used for the data transmission.
The remainder of this paper is organized as follows. Section 2 reviews the related works. Section 3 describes the system model and some relevant auxiliary definition. Section 4 presents scheduling problem. Section 5 presents TDMA scheduling algorithm. Section 6 describes and analyzes the simulation results for the independent set algorithm and proposed algorithm. Section 7 concludes the paper. S e p t 2 5 , 2 0 1 3 Ergen and Varaiya (2010) have proposed two centralized heuristic algorithms: node-based scheduling and level based scheduling. The direct scheduling of the nodes or node-based scheduling, which is adapted from classical multi-hop scheduling algorithms for general ad hoc networks, and the level based scheduling , which is a novel scheduling algorithm for many-to-one communication in sensor networks. The performance of these algorithms depends on the distribution of the nodes across the levels. They also proposed the delay in distributed algorithm which is based on the distributed coloring of the nodes is increases by a factor of 10-70 over centralized algorithms for 1000 nodes. They also obtain upper bound for these schedules as a function of the total number of packets generated in the network [7].

RELATED WORK
Bryan, Ren, DiPippo, Henry and Wolfe describe a set of TDMA MAC protocols for WSNs that can achieve near-optimal throughput and good latency for regular periodic data delivery. The protocol is based on a novel graph coloring technique called the Color Constraint Heuristic (CCH). By using a novel color constraint heuristic (CCH), they developed an efficient and light-weight centralized coloring algorithm for slot assignment (CSA-CCH) in WSNs. In addition, the CCH-based algorithms carefully order the coloring to provide good latency for data delivery. They also describe a distributed version of the algorithm, Distributed Slot Assignment (DSA-CCH) that does not assume any prior knowledge of the network, and thus could be used in any real sensor network deployment and also achieved a measure of parallelism without use of global information for the coloring [4].
Jovanovic and Djordjevic focus on analyzing the efficiency of reduced-frame TDMA protocols in terms of the performance and the energy consumption, where every TDMA slot is augmented with a short time period dedicated for CSMA-based contention resolution mechanism. Because of their ability to dynamically resolve collisions caused by conflicting slot assignments, the reduced-frame TDMA protocols can be configured with any frame length, independently of node density. They also present a new distributed heuristic slot assignment algorithm that minimizes inter-slot interference in the presence of limited number of slots per frame and also compare its performance to a random slot-assignment scheme. They also proposed that the reduced-frame TDMA protocols significantly reduce the message delay and increase the maximum throughput without incurring significant penalty in energy efficiency compared to the traditional TDMA scheme and also show that the proposed heuristic slot-assignment algorithm improves the maximum throughput of reduced-frame TDMA protocols over random slot-assignment scheme up to 90% for transmitter-driven, and up to 35% for receiver-driven scheme, while keeping energy consumption at low level [6].
Rhee and Lee give a new distributed TDMA scheduling algorithm, called DRAND is employed that gives a channel schedule as efficient as RAND -a commonly used centralized channel allocation scheme and is also implements RAND , a commonly used centralized channel allocation scheme for mobile adhoc networks. DRAND gives a channel schedule as efficient as RAND, but does so in the expected running time and the running time of DRAND does not depend on the total size of the input network, it is highly scalable, thus apt for large-scale sensor networks [12].

SYSTEM MODEL
In this section wireless sensor network architecture has been presented.

Network model
The WSN is represented by a graph G= (V, E), where V= {v1, v2, v3,……vn } denotes the set of all nodes in the graph, including the access point (AP) and E V×V denotes the set of all edges referred to all the communication links through which the data packets can be transmitted from one node to another. All the communication links are destined to AP. Every data packet from a node is forwarded to its parent node so that all the data packet finally reached the AP.
If {vi,vj} V, the edge e={vi,vj} E if and only if "vj" is located within the transmission range of "vi" . In a directed graph, the edge "e" is called incident from "vi", and incident to "vj". But in an undirected graph, the edge "e" may be incident to or from "vi" and "vj". In graph, each node "v" can communicated with a subset N(v) V of nodes , where each node u N(v) is called the neighbor of "v".

Interference model
In WSNs, the data is transmitted by one node may be received by all the nodes within its transmission range. Therefore, interference may occur among these nodes and these nodes should not be transmitting the data simultaneously. There are two types of interference: Primary Interference: It occurs when a node transmit and receive the data in the same time slot or receives more than one transmission in a single time slot [7,9]. S e p t 2 5 , 2 0 1 3 Secondary Interference: It occurs when a node tuned to a particular transmitter is also within the range of another transmission intended for other node [7,9].
To reveal this problem, an interference graph is constructed. In interference graph, some additional links are added between interfering nodes and avoid the simultaneous transmission through these links and this will help to improve the quality of transmission and save the energy wastage.
The interference graph is represented as G1=(V,E1), where "V" is the set of all nodes or vertices in the original network graph G and E1 V×V is the set of edges or transmission links which also include the newly added interference links. Let (x,y) E1 in graph G1, where "x" and "y" are two arbitrary nodes, , if either x and y can communicated with each other or one of them can be interfered by a signal intended for the other node (even if they are not communicated with each other). So, if x is transmitting then y should not be scheduled to receive from another node at the same time slot.
Number of time slots used in data transmission is minimized by the use of TDMA scheduling algorithm and this algorithm worked either in one-hop or multi-hop scheduling.

Conflict Graph:
By including the primary and secondary conflicts (interferences) of the network graph, the conflict graph of that network graph is constructed. The conflict graph is represented as Gc=(V,Ec) which is corresponding to G=(V,E) and G1=(V,E1), where "V" is the set of all nodes or vertices in the original network graph G and Ec is the set of edges or communication links. In Gc, if two arbitrary nodes "u" and "v" have a same parent node in G and G1 then there is an edge between them (but not for those nodes whose parent node is AP).

SCHEDULING PROBLEM
A scheduling frame is the time duration during which each node of G generates an integer number of data packets and transmitted these data packets to the AP. Each scheduling frame is divided into time slots and each time slot has enough length to transmit one data packet from a node. To reimburse the synchronization error each time slot contains a guard interval.
To transmit all data packets to the AP without any interference the schedule assigns one or more time slot to each edge in GC. The aim of this paper is to construct a schedule in order to minimize the number of time slots required for the complete transmission of data packets means transmitting all data packets to the AP.
A scheduling algorithm is based on the creation of independent sets of the network graph. These independent sets are used to minimize the number of time slots required for the complete transmission of data packets.

TDMA SCHEDULING ALGORITHM
The algorithm has three phases. In first phase, the independent sets of the network graph are constructed. In second phase, the conflict graph of the given network graph are constructed. In third phase, time slots are assigned to these independent sets which are based on the number of data packets on each node in each independent set. It will provide the schedule that minimizes the number of time slots used for the transmission of all the data packets to the AP.

Independent Set Algorithm:
This algorithm is based on the creation of independent sets of the given network graph. To create these independent sets with the following condition: The union of all the independent sets is equal to the vertex set "V" of the network graph.
In two separate independent sets there is no common node or vertex i.e. Si Sj = , i j In [9], an algorithm is constructed for finding the different independent sets of the network graph. Thus, from that we obtain independent sets S1, S2, S3,………Sk.

Phase2: Construction of conflict graph of the given network graph
We construct the conflict graph Gc of the given network graph G by adding additional links between interfering nodes. An example of constructing a conflict graph. S e p t 2 5 , 2 0 1 3

Phase3: Assignment of time slots to the independent sets
In this phase time slots are assigned to the transmissions according to the independent sets which were created in phase1, therefore all the data packets reached the AP.
All the edges in the network graph are intended to the AP but when the conflict graph is constructed the newly added edges direction may be on either side. The node can"t transmit or receive data packets at the same time and can"t receive data packet from more than one node. Therefore, time slots are assigned to the different transmitting node by avoiding the above two situations. This assignment is based on the number of the data packets received to the node and transmitted from the node.
Initially, one time slot is assigned to the transmissions that occur at the nodes of different independent sets according to the above two situations. Means, a node can either transmit or receive data packet in a time slot or it can transmit more than one data packets to the other nodes.
Continually assigning the time slots to the nodes according to the independent sets until all the data packets arrived at AP.

Time Slot Assignment Algorithm:
Input:Graph G= (V, E) with conflict graph Gc= (V,Ec), time assignment of the nodes Vc using independent sets IN.

SIMULATION RESULTS
In this section, the performance of TDMA scheduling algorithm has been analyzed by simulation in MATLAB version R2007a. Our evaluations are based on the finding of minimum independent sets of the network graph. Using independent sets, time slots are assigned to the transmission of the data packets in the network graph. Through time slots we can reduce the energy wastage and collisions or interference between the nodes of the graph.
The following procedures have been simulated on MATLAB for finding the minimum number of independent sets "S" and time slot assignment "TS" to the transmissions in the network graph:

Procedure Min_Independent_Set
Input: Graph G= (V, E) "n" is the total number of vertices in the graph "I" is the vertex number "S" is the independent sets which is represented in matrix form "sn" is the set number For all the vertices "V" of the graph stored at "i" do Enter the adjacent vertices of "i" stored at "data" For all the set number "sn" stored at "k" do In the above procedure "S" matrix is the answer. We can represent the independent sets in the form of matrix. Different rows in "S" matrix are the independent sets.

Procedure Time_Slot_Assignment
Input: Graph G=(V,E) Conflict Graph Gc=(V,Ec) S e p t 2 5 , 2 0 1 3 "n" is the total number of vertices in the graph "I" is the vertex number "S" is the independent sets "tn" is the time slot "in" stores the total number of independent sets "TS" is the time slots which is represented in matrix form For all the vertices "V" of the graph stored at "i" do For all the total number of independent sets "in" of the graph stored at "l" do Ni=S(l,:) Check if T is greater than zero then Check if T is not empty then Enter the adjacent vertices in conflict graph of G of "T" stored at "inf" For all the vertices of graph G "n" stored at "k" do In the above procedure "TS" matrix is the answer. We can represent the time slots in the form of matrix. Different rows in "TS" matrix is the time slots. S e p t 2 5 , 2 0 1 3

Analysis
We have analyzed that the time slot assignment of the transmission of the data packets in the network graph depends on the maximum degree, number of edges and hierarchy of the network graph. We considered the same hierarchy and number of vertices for the network graph. Therefore, four cases for the time slot assignment have been analyzed: Case 1: When the number of edges and maximum degree increased simultaneously then the time slot is also increased.
Case 2: When the number of edges increased and the maximum degree remain same then the time slot is differed by 1.
Case 3: When the number of edges remains same and the maximum degree increased then the time slot is also increased.

Case 4:
When the number of edges decreased and the maximum degree increased then the time slot is differed by 2.

CONCLUSION
In this paper, a new transmission scheduling algorithm for WSNs is proposed. The algorithm uses minimum number of independent sets in the network graph to compute the time slots that a node can use for the transmission of data packets S e p t 2 5 , 2 0 1 3 to another node. The resulting assignment can guarantee that there is no interference between the nodes means the network graph is conflict free and the total number of time slots used for the transmission is the least which implies that minimum interference and minimum energy consumption i.e. the network graph is collision free.