3. Proposed Method
Clustering within an OppNet entails organizing vehicles according to factors like proximity and geographic positioning. This arrangement fosters adaptable groups with basic data exchange and effective communication among vehicle nodes, prompting the development of various clustering algorithms. An important aspect in clustering is the selection of CHs, which can be accomplished via either a centralized approach utilizing network infrastructure such as RSU, or a decentralized method where CHs are chosen based on decisions made by vehicles within each cluster. In this study, we propose an Adaptive Clustering-based Routing Protocol (ACRP) that utilizes dynamic clustering, resulting in improved packet delivery and a dynamic clustering approach that groups nodes based on distance and location. The protocol is divided into four phases:
Phase 1: calculating the Euclidean distance between vehicles.
Phase 2: selecting a node as a CH.
Phase 3: network addressing architecture.
Phase 4: dynamic clustering adaptively.
In the first phase of the proposed ACRP, we consider an area where each vehicle () is randomly positioned. We assume that GPS data are globally available for all nodes that contribute to the calculation of distances between nodes. This is based on the individual capability of each node (e.g., vehicle) to independently access GPS signals from satellites directly, rather than relying on the transmission of GPS data between nodes. Accordingly, we calculate the Euclidean distance between two vehicles as follows where the selected vehicles are assumed to be () and () and the corresponding coordinates are () and ). This distance makes the closest node to be placed in the cluster and also two nodes communicate with each other in a lesser time interval.
In the second phase, we utilize two crucial criteria for choosing the cluster head: Encounter Rate () and Remaining Energy ().
The cluster head (
) is chosen based on the encounter value of other neighbors within a specific range. In order to monitor the frequency of encounters for a note, the ACRP keeps track of two local variables: an encounter history (
) and a current window counter (
). The
reflects the node’s historical encounter rate, calculated as a weighted moving average. On the other hand, the
provides information about the number of encounters within the current time interval. Periodically, the
is updated to incorporate the most recent
, ensuring that the latest rate of encounter information is taken into account. The calculations for updating the
are conducted in the following manner:
The exponentially weighted moving average gives greater importance to the most recent complete current window (
), with the emphasis being proportional to the factor
. Updating the
is a simple process: for each encounter, the
is incremented. After the current window update is finished, the history of encounters is updated, and the
is set back to zero. According to Equation (
1), it represents a simple filter for updating the encounter rate such that the recent encounter rate receives a higher weight compared to the previous encounter rate. Through our experiments, we discovered that using a
value of
and an update interval of approximately 30 s yielded good results. Based on this interval time, if the interval duration is long, the encounter rate becomes uneven, whereas with shorter intervals, nodes fail to encounter neighboring nodes (best in our test of 30 s). With this knowledge, the node with the highest
can be selected as a candidate cluster head. The objective of this optimization problem is to maximize the sum of the weights of the links between the
and its neighbors. This means each vehicle has a list of neighboring nodes and the node with the highest
to its neighbors is selected as the
. We consider
to be the encounter history of node
i, representing the number of encounters node
i has had with its neighbors, which can be expressed as follows:
A higher indicates greater efficiency in terms of easily sending and receiving more packets. Therefore, the node with the highest is a good candidate for as it helps maintain long-term stability in the cluster and enables communication with nearest neighbors. The encounter rate as used in our study refers specifically to the number of times vehicles come within their communication range of each other, rather than the duration for which they remain in mutual proximity.
is employed for gauging the remaining energy of a node, which can be computed using Equation (
3), where
denotes the remaining energy of node
i at time slot
t, and
represents the initial energy of node
i. By utilizing this equation, we are able to identify the node with the highest remaining energy, which has the potential to serve as a cluster head.
To choose cluster heads, we propose a heuristic function. Initially, we need to compare two factors: the highest encounter rate (
) and the most remaining energy (
). To make this comparison fair, we can apply min–max normalization. This process standardizes the data, making sure all features are scaled equally. This prevents any one feature from dominating others due to differences in their sizes. This process involves rescaling the data to a fixed range, usually between 0 and 1. In general, we determine the minimum (
) and maximum (
) values of the feature we want to normalize. Then, we calculate the range of the feature by subtracting the minimum value from the maximum value:
. Therefore, for each data point (
) in the feature, we apply the min–max normalization formula. The min–max(
) scale is as follows:
By following Equation (
4), we guarantee uniform scaling across all nodes, ensuring that each node’s data are standardized to the same scale relative to the entire dataset. Normalization not only ensures that both factors are scaled within the range of
, but also ensures equal contribution from both factors in the analysis, facilitating a balanced consideration of encounter rate and remaining energy when selecting cluster heads. Consequently, the normalized expressions for encounter rate (
) and remaining energy (
) for node
i, utilizing the min–max scaling technique, can be articulated as follows:
and
Therefore, utilizing Equations (
5) and (
6), we introduce a heuristic function for the selection of cluster heads. The heuristic function
is as follows:
The
is a vehicle selected as the group leader and maintains a routing table for every vehicle in its cluster. Based on the
, clusters are formed (
), with each cluster containing some nodes (
) that are supported by its respective cluster head
. However, due to estimation errors in contact probabilities and unpredictable sequencing of meetings among mobile nodes, it is possible for numerous small or large clusters to form, some of which may have significant overlap with other clusters. To address this problem, we propose a novel strategy where each cluster (
) maintains an Overlapping Degree (
) with other clusters, indicating the count of shared members among them. Assume
represents the
i-th cluster,
represents the
q-th common member, and
represents the transmission range of the
i-th
, whereas every cluster head maintains a consistent maximum transmission distance (
). In cases where there is no overlap (
), the cluster head can adjust its transmission range (
) to establish communication with other clusters. Additionally, we introduce a limit of common members between clusters. After experimenting with different values, we found that a maximum of five common members between clusters provides ideal clustering. Put differently, we establish a boundary wherein clusters can share a maximum of five common members and a minimum of two. Having a cluster size larger than five common members results in less ideal conditions with significant overlap among clusters. Moreover, the cluster head should not be a common member (
) among the clusters. This ensures that the clusters remain ideal and do not overlap completely, thereby increasing their clustering effectiveness. Furthermore, clusters interact with each other through common members and also have members that are unique to each cluster. In other words, each cluster has common members and non-common members between other clusters. Additionally, if members within each cluster are unable to communicate with their cluster head, they have the capability to independently increase their transmission range. Whenever a node has difficulty communicating with its cluster head, it can extend its transmission range. Our experiment shows that even a slight increase in transmission range allows a node to communicate with the cluster head, given their Euclidean distance proximity. In addition, clusters must have minimal connectivity with other clusters to facilitate communication through shared members. Ultimately, the cluster must satisfy one of the constraints listed below.
According to Equation (
8), if the specific cluster
has less than two members in common, the
should increase the transmit range to be able to connect with other clusters. In this way, the communication between the clusters is permanent and it becomes possible to send the packet in the whole network through common members. Furthermore, if the cluster is unable to satisfy the specified constraint (
), it must consist of a minimum of
members. This ensures that the cluster head can extend its transmission range in cases where the cluster comprises fewer than five members (
). For clarity, we highlight that these numbers are obtained based on our simulation studies and the value depends on the network specifications. This implies that the values could be different within a different network with different specifications to achieve better results. We assume that if
has fewer than two common members (
), or if the cluster head has fewer than five members (
), the cluster head will increase its transmission range by the amount of
, where
represents the minimum distance between a cluster head and its members. We expand the transmission range of the cluster head by integrating the value of
until it fulfills one of the conditions specified in Equation (
8). Put simply, if the cluster head fails to meet the specified constraints, it should augment its transmission range (
) by adding
to it (
).
In the third stage, after clustering, a new routing method is introduced for improved results between the source (
S) and destination (
D). This routing method focuses on inter-cluster communication, allowing each cluster to have limited connections with other clusters. This enables optimal selection of subsequent transfer and forwarding nodes towards the destination. Limiting the common members serves two purposes. Firstly, it ensures optimal clustering and unique members for each cluster. Secondly, the common members are responsible for routing as they can carry packets between clusters.
Figure 2 illustrates a cluster configuration with common members, which means that each cluster communicates with other clusters (
) through common members. For example, envision a situation where the source node
inside cluster
sends a packet intended for
to its cluster head
. Afterward,
relays the packet to a common member,
, which serves as the intermediary node shared between clusters
and
. As
is a shared member between the two clusters, it is able to communicate with the cluster head of the other cluster
and transfer packets to
. If
finds the destination node in its list, it dispatches the packet to
. Otherwise, the packet is routed to the shared node
in other clusters until it reaches the intended destination. This packet routing process can be depicted as follows:
This method follows a reliable routing to the destination of the packet. In the final stage, after a time interval, clustering is conducted again and phases one, two, and three are repeated. Due to the high mobility of nodes in these networks, any node can leave the cluster and new nodes can join the cluster.
According to the four phases mentioned above, we present the proposed Algorithm 1. As shown in the algorithm, when a node
wants to send a message to a vehicle at a great distance (
), vehicles receive information from GPS. The distance between each vehicle is then calculated using the Euclidean distance (from lines 1 to 5).
with the highest encounter rate and maximum remaining energy is selected for a group of vehicles (lines 6, 7, and 8). As long as conditions (
OR
) AND
are not fulfilled, the cluster head maintains the capability to enhance its transmission range by the value of
(lines 9 and 10). The routing phase starts, and the source node
into cluster sends a message to its cluster head
(line 12). The
looks into the list of members, and as explained above, each cluster head has its own table (list) of members. If the destination node is not on the
’s list of members, the packet is sent to the
(it can be seen in lines 13 to 17). The next step is for the
to send the packets to the neighboring cluster head
that it is a member of, and so on until the packet reaches its destination
, these steps will be repeated (line 20). Furthermore, the updating interval is independent of the contact duration, emphasizing that the number of encounters is the determining factor in our algorithm.
Algorithm 1 ACRP |
Input: GPS data |
1: for
do |
2: for do |
3: Calculate the distance between and Euclidean distance |
4: end for |
5: end for |
6: Calculate |
7: sorted from maximum to minimum value |
8: The cluster heads () are selected from the maximum value, respectively. |
9: while ( OR ) AND AND do |
10: |
11: end while |
12: Send packet to |
13: Receive the packet |
14: check its list |
15: if the destination address is at list then |
16: send the packet to the destination |
17: Receive the packet through |
18: else |
19: Send packet to in |
20: Repeat lines 12 to 19 |
21: end if |
22: interval time=0 |
23: Repeat line 1 |
5. Experiment and Result
Average Overlapping Degree () is defined as the average overlap degree between any two overlapping clusters in the network. Let us consider that A and B are the cluster head nodes in two clusters. We assume that is the maximum overlapping degree between the two clusters, where . Two symmetrical circles with radius R = maximum = maximum , where is the range of communication between sensors, which are present in cluster A or B. Notice that is specifically defined for clusters that overlap (). We calculate the as the mean value of this random variable . is the Euclidean distance between the two nodes A and B. In other words, is a continuous random variable that can contain values ranging from 0 to . In the case of = 0, there should be complete overlaps between two clusters; on the other hand, when is greater than or equal to , there should be no overlap. In the simulation study, we investigated the degree of overlap with increasing value and without increasing value. Our method might not achieve complete overlap (100%). Moreover, there could be instances where a direct path between the source and destination is unavailable at certain times, but with , achieving satisfactory is feasible.
In
Figure 3A,B, it is shown that as the number of clusters increases, the average overlap between clusters increases. However,
Figure 3B demonstrates a significant improvement in the overlapping degree between clusters when comparing clustering with and without increasing
. Therefore, this method enhances routing and reduces delay. During several practical experiments, utilizing 60 clusters, we observed a 34% improvement with increasing
compared to without increasing
, and we also found an almost 98% overlap between clusters.
Figure 4 shows the efficient performance ACRP method in the DR compared to other clustering methods such as QoS-OLSR [
17], CBVRP [
21], kRop [
13], and AMRBC [
20]. ACRP routing protocols illustrate a very high and approximately stable DR during the simulation. This is because ACRP considers the encounter rate, giving more weight to nodes in high-density areas to be considered as cluster heads. This strategy increases the likelihood of a high delivery ratio, contributing to the consistent performance observed across different node densities.
Figure 4 illustrates that the ACRP, when deployed with 250 nodes, achieved a DR improvement exceeding 28% in comparison to QoS-OLSR. Furthermore, the AMRBC exhibited suboptimal performance, lagging behind other protocols. In contrast, ACRP outperformed AMRBC by a substantial margin, achieving an impressive 51% enhancement. Additionally, when considering the highest number of nodes (250), ACRP exhibited superiority over both kRop and CBVRP, with enhancements exceeding 5% and 13%, respectively. Our approach selects the cluster head based on the highest encounter rate and the highest remaining energy. This prioritizes both network connectivity and energy efficiency, ensuring that the cluster head effectively manages message forwarding while conserving energy resources. In contrast, the KRop method, which relies on the k-Means algorithm, may suffer from suboptimal cluster formations due to sensitivity to initial cluster centroid selection. Similarly, in the CBVRP approach, clusters formed may not consistently optimize communication efficiency or network coverage. However, with ACRP, by enforcing constraints on cluster overlap and member count, we aim to create optimal clusters that maximize both communication efficiency and coverage.
The end-to-end average delay refers to the time taken for a packet to traverse a network from its source to its destination. In the context of networking, this metric captures the average duration between a packet leaving its origin and reaching its final endpoint.
Figure 5 demonstrates that the ACRP protocol exhibits a reduced end-to-end delay compared to other protocols. Specifically, compared to fuzzy-AODV [
22] and QoS-OLSR [
17], CBVRP [
21], and AMRBC [
20], ACRP was able to reduce end-to-end delay more effectively. Additionally, under conditions of both lowest density and highest density, ACRP experiences significant reductions: over 17%, 3%, 3%, and 7% for the former, and an impressive 42%, 38%, 13%, and 20% for the latter. This improvement can be attributed to the presence of common nodes, which facilitate shorter packet travel distances and consequently lead to reduced delays from source to destination.
Figure 6 shows the total number of intermediate nodes that a data packet must traverse between the source and destination. Along the data path, each node forms a hop, transferring data from one source to another. When compared to QoS-OLSR [
17], kRop [
13], and LBC [
14] methods, the ACRP method reduced hop count by over 33%, 44%, and 76% at the highest node densities (250), respectively. Due to the fact that this protocol only uses the common member and cluster head to transmit packets, communication between the source and destination does not require sending packets to every member.
A decreased hop count indicates shorter transmission distances between nodes, leading to lower energy consumption in relaying messages within the network. Therefore, the reduced energy expenditure per hop contributes to an overall decrease in energy usage across the network. Additionally, extended network longevity is achieved through decreased energy consumption, thereby preserving energy resources.
Figure 7 shows the number of packets that transmit from source to destination (throughput) based on Bit/Sec, and the performance of the ACRP method reached the highest amount when compared to other protocols. It is evident that the ACRP method exhibits superior performance when compared to the CBVRP [
21], QoS-OLSR [
17], AMRBC [
20], and CRLLR [
19] approaches. Among the examined methods, ACRP demonstrates superior performance with a 27%, 50%, 54%, and 54% advantage over CBVRP, QoS-OLSR, AMRBC, and CRLLR, respectively, in the scenario with the lowest node numbers (50). Additionally, in the highest density scenario (250), ACRP outperforms other methods by 9%, 46%, 60%, and 16%, respectively. Two factors contribute to this: firstly, as indicated by Equation (
7), the proper selection of the cluster head establishes a robust link between the member node and its respective cluster head. Secondly, transmitting data via shared members across clusters has led to an augmentation of this parameter.
Speeding up the node causes a change in reachability. As the success of route discovery is influenced by the change in network topology, reachability is correlated with node speed. With increasing the speed of vehicles, reachability is decreased. This means network topology changes accelerate as node speed increases, which reduces reachability. The ACRP method remains stable during simulation over 80% with different densities. Due to connection and routing by cluster head, each cluster can be viewed as a node that moves throughout the network. The network topology is less affected by node mobility. As a result, this reduces the number of routing table updates since the network topology changes only when a cluster is changed. As shown in
Figure 8, we can see that ACRP achieved more than 80% access from the lowest speed to the highest speed. For example, it reached 87% with the highest speed.
The efficacy of the ACRP was evaluated across a range of network sizes (500, 600, 700, 800, 900, and 1000) in terms of packet delivery ratio.
Figure 9 demonstrates that the ACRP consistently exhibits the highest packet delivery ratios across varying network sizes. For example, in the lowest and highest network sizes, the ACRP achieves a remarkable delivery ratio exceeding 89%.