Initially, sensors are randomly deployed in the monitoring field according to a homogeneous Poisson point process (PPP). At the beginning of each clustering epoch, sensors exchange activator and inhibitor values with one-hop neighbors, update their activator–inhibitor values, broadcast current activator values to neighbors, and compare activator values of neighbors within the CH separation radius . Nodes with local activator maxima announce the CH role to one-hop neighbors. Non-CH nodes calculate join probabilities to determine whether to send a join request to a CH, and CHs accept or reject requests based on local distance regions. Selected CHs and accepted members form the active sensing set; all other non-CH nodes enter a temporary sleep state until the next clustering epoch. The active sensing set remains unchanged until the next scheduled clustering epoch, except that nodes with exhausted energy are excluded. In each round, selected CHs and accepted members perform sensing. Members transmit sensed data to their CHs, and CHs aggregate and forward the data to the base station.
EARDC distinguishes among alive, sleeping, and active nodes. An alive node has residual energy above the operational energy threshold. A sleeping node is alive but does not sense, transmit or receive data, exchange control messages, or participate in CH selection and cluster membership. After join requests are processed at the beginning of a clustering epoch, rejected or unclustered non-CH nodes sleep until the next scheduled clustering epoch. An active node is an alive, non-sleeping node selected as a CH or accepted as a cluster member. Active nodes form the active sensing set and perform sensing and data transmission in each round.
3.2. Reaction–Diffusion-Based Cluster Head Selection and Cluster Formation
Reaction–diffusion models were introduced by Turing [
9] to explain pattern formation through local reaction and diffusion processes. EARDC applies this principle to distributed CH selection. Sensors exchange activator and inhibitor values with one-hop neighbors, and alive nodes with local activator maxima within
are selected as CHs.
Figure 2 provides a conceptual illustration of reaction–diffusion-like spot formation.
Activator–inhibitor models are a widely used class of reaction–diffusion models. They use two interacting values with opposing effects. The activator reinforces local growth and drives inhibitor production, and the inhibitor limits activator growth. EARDC uses these interactions for distributed CH selection. Each sensor maintains activator and inhibitor values, and local activator maxima are used to select CHs. The inhibitor term suppresses activator growth around a local maximum, which limits nearby competing maxima.
EARDC adopts the Gierer–Meinhardt activator–inhibitor model [
53,
54] as the basis for CH selection. Each sensor stores node-specific activator and inhibitor values
and
. The continuous equations are presented first, followed by the graph-based discrete implementation used in EARDC:
where
and
are production rates,
and
are decay rates,
and
are diffusion coefficients, and
is the Laplacian operator. The parameter
controls activator self-reinforcement and inhibitor production. The condition
causes the inhibitor to spread more rapidly than the activator, which helps limit nearby activator maxima.
Figure 3 illustrates this mechanism.
EARDC implements activator–inhibitor exchange over the sensor communication graph . The vertex set contains the alive sensors, and an edge in connects two alive sensors that can communicate directly at round t. Each sensor i stores activator and inhibitor values and and updates them using values received from alive one-hop neighbors.
The graph-based diffusion term is computed from the difference between a node’s value and the average value received from its one-hop neighbors. This operation replaces the continuous Laplacian in the WSN implementation. The updated activator value is used for the local comparison in CH selection, and the inhibitor and diffusion terms influence this update.
EARDC integrates residual energy into the activator–inhibitor update. Let
denote the residual energy of node
i at round
t. The normalized residual energy is defined as
This normalization provides a dimensionless energy factor. The coefficient
controls the scaling strength, and the reaction and graph-based diffusion terms are multiplied by
. For the same local activator–inhibitor values and neighbor values, a larger
gives a larger update magnitude. The energy-aware equations for node
i are
The parameters
,
,
,
,
, and
have the same roles as in the original Gierer–Meinhardt activator–inhibitor model [
53,
54]. The continuous Laplacian
in Equations (
3) and (
4) is replaced in the implemented model by the graph diffusion operator
, which is evaluated from one-hop value exchanges within the communication radius. This notation distinguishes the continuous reaction–diffusion model from its graph-based WSN implementation.
In the discrete implementation used in this work, the reaction–diffusion values are refreshed periodically rather than continuously. At each clustering epoch, all alive nodes synchronously update
and
using the activator and inhibitor values available before the current update. This update occurs every
rounds. The discrete update equations are
Diffusion is evaluated in discrete form on the communication graph as
where
is the set of alive one-hop neighbors of node
i within
, and
is the corresponding neighbor count. If
is empty, the diffusion terms are set to zero, and the node is updated using only its local reaction terms. Because all nodes use values available before the current update, the updates are synchronous and independent of node-processing order.
Table 2 summarizes the per-sensor state maintained by EARDC. These variables support activator–inhibitor updates, CH selection, cluster membership, and sleep-state control. They do not require global topology information, exact node coordinates, or a centralized coverage map.
EARDC performs CH selection in a decentralized, self-organizing, and coordinate-free manner. Each node uses its activator value , residual energy, sleep state, local range estimates, and activator values received from one-hop neighbors. The range estimates can be derived from RSSI or similar link-level measurements without exact node coordinates. CH selection therefore does not require a global topology map, geometric partitioning, or decisions computed at the base station.
At each clustering epoch, every alive node broadcasts its activator value to alive one-hop neighbors and compares the received values within the CH separation radius . The communication radius defines the one-hop exchange range. When , the same range is used for message exchange and CH selection. Smaller values related to the sensing radius can be used to obtain a denser CH set. An alive node with a locally maximal activator value within is selected as a CH. The selected CH announces its role and receives join requests during the same clustering epoch.
After CH selection, non-CH nodes make local joining decisions based on node–CH distance, expected sensing overlap, local node degree, and residual energy. Let
denote the sensing radius, and let
be the locally estimated distance between non-CH node
i and CH
j. The inner joining distance is defined as
where
is a joining range factor. For CH
j, node
i lies in the inner region when
and in the outer region when
. The inner region represents a high-overlap zone around the CH, where additional members are more likely to provide redundant sensing coverage. A node in the outer region has lower overlap with the CH sensing disk and can add coverage farther from the CH.
Figure 4 shows these radius definitions together with the CH separation distance.
The joining range factor is set to
from the geometric overlap between equal sensing disks. For two sensing disks with equal radius
and center distance
d, the pairwise overlap area is
and the normalized overlap ratio is
. At
,
. Thus,
separates the inner region, where a node overlaps at least about half of the CH sensing disk, from the outer region, where a node can contribute coverage around the cluster boundary.
The inner region is not an unconditional joining region. Since a CH also performs sensing, a member located extremely close to the CH would create nearly duplicate sensing coverage and consume energy without adding meaningful area coverage. Inner region nodes therefore apply a probabilistic joining rule, and a node with is excluded from requesting membership when other alive neighbors are available. This rule reduces redundant sensing near the CH.
The joining logic uses branch conditions before a join request is transmitted. If node i lies in the inner region of one CH and in the outer region of another CH, it remains unclustered for the current clustering epoch. This condition prevents ambiguous membership in overlapping joining regions.
If node i lies in the inner region of exactly one CH and does not lie in the outer region of any CH, that CH is selected for the membership decision. If and node i has more than one alive neighbor, node i remains unclustered for the current clustering epoch. At this distance, the normalized disk overlap is approximately , which makes the node’s sensing coverage almost fully redundant with the CH sensing disk.
If node i does not lie in the inner region of any CH but lies in the outer region of one or more CHs, the node selects a CH according to local activator values. The shorter distance is used as a secondary criterion when needed. If no suitable CH remains, the node stays unclustered.
Both joining branches use a local crowding factor. Let
and let
be the number of alive neighbors of node
i within distance
. The expected number of neighbors within radius
under deployment density
is
The local crowding factor is
This factor decreases as the local node degree
increases and reduces join attempts in areas with more neighboring nodes.
In the inner region branch, let
j be the selected CH for node
i, with
and
. The join probability is
Within the inner region, nodes farther from the CH and with smaller local node degree have a higher probability of sending a join request. Nodes closer to the CH have lower joining probability because their sensing disks overlap more strongly with the CH sensing disk. Residual energy can increase this probability when the too-close exclusion rule is not triggered. In the outer region branch, let
j be the selected CH. With
the join probability is
Under comparable crowding and residual energy conditions, the outer region rule generally assigns a higher join-request probability than the inner region rule. This reflects the lower expected overlap of outer region nodes with the CH sensing disk and their potential contribution near the cluster boundary. The computed probability determines whether node
i transmits a join request to the selected CH. Each CH then evaluates received requests using local membership-control conditions. When alive nodes are available in the outer region
, the CH preferentially accepts outer region requesters because they add coverage with lower overlap near the cluster boundary. Inner region nodes are less preferred because they tend to duplicate the CH sensing disk. Requesting nodes that are not accepted receive rejection notifications, and accepted nodes record the selected CH for the current clustering epoch. Rejected and otherwise unclustered non-CH nodes enter a temporary sleep state until the next scheduled clustering epoch.
The inner- and outer-region conflict rule, too-close exclusion, and sleep-state rule form one local membership-control mechanism. CH selection establishes the CH set, and the membership and sleep rules determine which non-CH nodes remain active. This mechanism limits unnecessary sensing overlap after CH selection and reduces the associated energy consumption.
The CH selection and cluster formation procedures are decentralized. Algorithm 1 summarizes local-maximum CH selection, region-based cluster joining, and sleep state control.
| Algorithm 1 Decentralized EARDC cluster formation. |
- 1:
Input: alive nodes, sleep states, activator values , residual energies , radii - 2:
Set - 3:
CH selection: - 4:
for all alive nodes i do - 5:
Obtain activator values from alive neighbors within - 6:
if is the local maximum within then - 7:
Declare node i as a cluster head - 8:
Advertise CH status to alive neighbors - 9:
end if - 10:
end for - 11:
Cluster joining: - 12:
for all alive non-CH nodes i do - 13:
Identify CHs for which node i lies in the inner region or outer region - 14:
Compute , , , and - 15:
if both inner region and outer region conditions are observed then - 16:
Keep node i unclustered for this clustering epoch - 17:
else if node i lies in the inner region of exactly one CH then - 18:
if and i has more than one alive neighbor then - 19:
Keep node i unclustered to avoid redundant overlap with CH sensing - 20:
else - 21:
Compute from , , , and - 22:
Send a join request to the CH with probability - 23:
end if - 24:
else if node i lies in the outer region of one or more CHs then - 25:
Select a CH j using the largest activator value, with distance as a secondary criterion - 26:
Compute from , , , and - 27:
Send a join request to CH j with probability - 28:
else - 29:
Keep node i unclustered - 30:
end if - 31:
end for - 32:
for all cluster heads c do - 33:
Process received join requests using local membership-control conditions - 34:
if join requests are received from outer region nodes then - 35:
Prefer outer region requesters and reject redundant inner region requesters - 36:
end if - 37:
Send rejection notifications to requesting nodes that are not accepted - 38:
end for - 39:
For each unclustered non-CH node i, set and place the node in sleep mode until the next scheduled clustering epoch
|