# A Cluster-Based Dual-Adaptive Topology Control Approach in Wireless Sensor Networks
## 3 The Improved Clustering Scheme
### Cluster Formation
#### 3.2.3 Selecting SCHs
Broadcast the updated \"membership list message\" to its neighbors within the cluster radius
37. endif
```
**Algorithm 4**Cluster Member Association and FCH Selection (_CMA-FCHS_)

During the time \(\phi\), on the one hand, the MCH is willing to accept each non-CH node who sends a \"membership request message\" to it, unless the number of cluster members exceeds the threshold value that limits the number of non-CH nodes in the cluster; on the other hand, it continues to compute FCH eligibility metric for the cluster members, and records the \(ID\) of the cluster member with the current maximum FCH eligibility metric (see lines 22-30). After the time \(\phi\), the MCH declare the cluster member with the maximum FCH eligibility metric as the FCH through adding it to the \"membership list message\" (see line 31). Also, it designs a TDMA schedule and add it to the membership list message, and then broadcasts the \"membership list message\" to its neighbors within the cluster radius (see lines 32-33). When a new non-CH node wants to join a given MCH, the TDMA schedule is updated to include this node's _ID_, which is announced by the MCH via a \"membership list message\" (see lines 34-36). ### Power Adjustment for Intra-Cluster Communications

Unlike the CMIMO scheme in which each cluster member adopts the same transmission power for intra-cluster communication, in our scheme, different cluster member may use different transmission power to communicate with the FCH. Therefore, after cluster formation, power adjustment process has to be executed in our scheme. For any link \(i{\rightarrow}j\), upon knowing node \(j\)'s receiving sensitivity \(p^{h}_{j}\), node \(i\) can estimate the minimum transmission power requested to reach node \(j\) according to the following formula:

\[p^{t}_{i,j}=\left\{ \begin{array}{ll}\frac{p^{h}_{i}\cdot(4\pi)^{2}\cdot(d_{ ij})^{2}\cdot L}{G_{\Gamma}\cdot G_{\Gamma}\cdot\lambda^{2}}&d_{i,j}<d_{ crossover}\\ \frac{p^{h}_{i}\cdot(d_{ij})^{4}}{G_{\Gamma}\cdot G_{\Gamma}\cdot h_{\Gamma} \cdot h_{\Gamma}\cdot^{2}\cdot h_{\Gamma}}&d_{i,j}\geq d_{ crossover}\end{array} \right. \tag{11}\]

In intra-cluster communications, power adjustment involves the interaction and collaboration between MCH/SCH, FCH, and cluster members, which is described in Algorithms 5 and 6. Firstly, the MCH sends a power adjusting request (PAREQ) packet at its maximum transmission power during the TDMA slot assigned to the communication between FCH and MCH/SCH (see line 2). This PAREQ packet carries the receiving sensitivity of the MCH, so the node receiving this PAREQ packet can estimate the minimum transmission power requested to reach the MCH according to the Formula (11). In order to receive a power adjusting reply (PAREP) packet from the FCH, the MCH has to wait for the time \(\sigma\) (see lines 3-6). After the time \(\sigma\), if such a PAREP packet is not received (see line 7), the MCH will repeat the operations in lines 2\(\sim\)6 (up to a given maximum number of retransmissions). Upon hearing the PAREQ packet from the MCH, the SCH also sends its own PAREQ packet (see lines 8\(\sim\)15), otherwise it will go back (see line 17) to continue to monitor the arrival of the PAREQ packet from the MCH. The FCH's operations include the two parts. (a) It adjusts its transmission power used to communicate with the MCH/SCH through receiving the PAREQ packets from the MCH/SCH to obtain their receiving sensitivity values and then using the Equation (11) to estimate the transmission power requested to reach them (see lines 19\(\sim\)39 in Algorithm 5). (b) It reports its own receiving sensitivity to the cluster members through broadcasting a PAREQ packet, and confirms the establishment of links between the SCH and the cluster members through using a power acknowledge list message to reply the PAREP packets from the cluster members (see lines 1\(\sim\)10 in Algorithm 6).