In this section, we will introduce some known clustering schemes first and then take a look at some other techniques used in our scheme.
2.1 Clustering algorithms
Several clustering schemes for Ad-hoc network have been proposed in recent years [7] – [15]. They are not really suitable for wireless sensor network because of sensor node is a low cost device with poor resource, e.g. slow CPU, less RAM and low-capacity battery. For wireless sensor networks with a large number of energy-constrained sensors, it is very important to design a fast algorithm to organize sensors in clusters to minimize the energy used to communicate information from all nodes to the base station. The benefits of dividing nodes in clusters are:
(I) Energy saving for cluster member: all nodes except the head in a cluster can sleep while nothing to send in order to save energy. A node in sleeping mode consumes energy far less then in transmitting or receiving mode [6].
(II) Easy to maintain routing table: cluster members only need to remember which node to relay the sensed data. There is no enough memory space for nodes to store a huge routing table.
(III) Data aggregation can be performed at cluster head: In some environments or applications, there is lots of redundant data may be produced. Perform data aggregation can reduce the data to save energy or network bandwidth.
There are some known clustering schemes for wireless sensor networks such as LEACH [1], HEED [2], and Seema et al proposed [4]. LEACH is proposed firstly and formed an example for solving clustering problem in sensor networks.
In LEACH, sensors elect themselves as cluster heads with some probability and broadcast their decisions. The remaining sensors join the cluster of the cluster head that requires minimum communication energy. This algorithm allows only 1-hop clusters to be formed.
They have provided simulation results showing how the energy spent in the system changes with the number of clusters formed and have observed that, for a given density of nodes, there is a number of clusters that minimizes the energy spent.
But they have not discussed how to compute this optimal number of cluster heads and the proposed algorithm can not guarantee that the formed cluster in each round is optimal. The algorithm is run periodically, and the probability of becoming a cluster head for each period is chosen to ensure that every node becomes a cluster head at least once within 1/P rounds, where P is the desired percentage of cluster heads. This ensures that none of the sensors are overloaded because of the added responsibility of being a cluster head.
HEED (Hybrid, Energy-Efficient, Distributed), like LEACH, nodes use a probability to elect itself to become a cluster head and then broadcast the head announcement to its neighboring nodes. After nodes received the announcement, they can select one of the heads to join in and start to transmit data to the cluster head.
HEED also has to rotate the cluster distribution every TCP+TNO seconds. The difference between LEACH and HEED is that HEED considered the residual energy when selecting the cluster head. They made several experiments in the evaluation section and the result showed that their scheme can perform better than LEACH.
In [4], each sensor in the network becomes a cluster head (CH) with probability p
and advertises itself as a cluster head to the sensors within its radio range. They call these cluster heads the volunteer cluster heads. This advertisement is forwarded to all the sensors that are no more than k hops away from the cluster head. Any sensor that receives such advertisements and is not itself a cluster head joins the cluster of the closest cluster head. Any sensor that is neither a cluster head nor has joined any cluster itself becomes a cluster head called forced cluster head.
Because the advertisement have limited forwarding to k hops, if a sensor does not receive a CH advertisement within time duration t (where t units is the time required for data to reach the cluster head from any sensor k hops away) it can infer that it is not within k hops of any volunteer cluster head and hence become a forced cluster head. Moreover, since all the sensors within a cluster are at most k hops away from the cluster-head, the cluster head can transmit the aggregated information to the processing center after every t units of time. This limit on the number of hops thus allows the cluster-heads to schedule their transmissions. In this scheme, node does not demand clock synchronization. The energy used in the network for the information gathered by the sensors to reach the processing center will depend on the parameters p and k of the algorithm where p is the probability for a node to become a cluster head and k is mentioned above means “k” hops to forward the advertisement.
As we can see, the common point of these known schemes is that they are node self-organized based on certain probability. But the fatal flaw is that nodes self-organized based on probability scheme can’t provide optimal clusters and the inter-cluster communication overhead actually wasted lots of energy.
2.2 Positioning algorithms
Position information is very useful in wireless sensor network. Usually the sensors are deployed arbitrarily so we have no idea about the position of the nodes. If we can know the position of the nodes in some applications, it is useful and can help us to do something. Many algorithms were developed in recent years [20] [21] [22]
[23] [24] [25]. These researches showed that positioning in wireless sensor network is possible and can be implemented in practice. In our environment assumptions (section 3.1), we made such assumption: All nodes are stationary and have the ability to calibrate distance with each other. In order to show the assumption is feasible, we
briefly introduce the challenge of positioning problem and some approaches in this section.
Localization approaches typically rely on some form of communication between reference points with known positions and the receiver node that needs to be localized.
We classify the various localization approaches into two broad categories based on the granularity of information inferred during this communication. Approaches that infer fine grained information such as the distance to a reference point based on signal strength or timing measurements fall into the category of fine grained localization methods and those that infer coarse grained information such as proximity to a given reference point are categorized as coarse grained localization methods.
Koen Langendoen and Niels Reijers made comparison for some positioning algorithm designed for wireless sensor network. They focused on the non-infrastructure based algorithm. Through their observation, all positioning algorithms can be organized in a common, three phase structure: (1) determine node to anchor distances, (2) compute node positions and (3) optionally refine the positions
through an iterative procedure. They presented a detailed analysis comparing the various alternatives for each phase, as well as a head-to-head comparison of the complete algorithms. The main conclusion is that no single algorithm performs best;
which algorithm is to be preferred depends on the conditions (range errors, connectivity, anchor fraction, etc.). According to their experiment result, they showed that in some combinations the position determination can be done within an acceptable error range.