1. Introduction
Wireless Sensor Network (WSN) comprises independent sensors deployed across a geographical area to collect and share data or information through wireless communication channels [
1]. These sensors are deployed to observe physical or environmental properties like vibration, pressure, temperature, sound, motion, or pollutants. The sensors can collaborate to transmit data to a central point within the network known as the sink node (SN) or base station (BS) [
2]. Wireless Sensor Networks (WSNs) provide many benefits in various applications, such as environmental monitoring, disaster management, healthcare, agriculture, and smart city infrastructure. This makes them valuable technology in different fields, including real-time data collection, enhanced monitoring and control, increased safety and security, and innovative applications [
1,
3]. Although WSNs are valuable in these areas, their successful development and deployment are faced with many challenges, including power consumption and packet loss. Sensors are typically battery-powered, and energy is a critical resource. Once a sensor node’s battery is depleted, it can no longer function, leading to gaps in data collection and potentially compromising the entire network. In WSN, sensors may have different energy requirements. As the number of nodes increases, the volume of data transmitted can lead to network congestion and increased energy consumption. Efficient data routing and transmission strategies are essential to mitigate these issues. The lifetime of a WSN is often limited by the energy of its nodes. Therefore, strategies that prolong the operational time of the network are crucial for maintaining continuous monitoring and data collection. However, the challenge is selecting a sensor that has enough energy to be the Cluster Head (CH).
Clustering in WSNs provides a structured technique for WSN organization, resource management, and communication optimization, leading to improved scalability, efficiency, reliability, and performance of wireless sensors [
2,
4]. Clustering is a method used to group sensor nodes into clusters, where each cluster has a designated leader known as the cluster head (CH). This approach reduces the amount of data that needs to be transmitted to the sink node, as data from individual nodes can be aggregated at the cluster head before being sent. While clustering can enhance energy efficiency and data management, traditional methods may not effectively adapt to the dynamic nature of WSNs, especially when considering the varying energy levels and capabilities of different sensor nodes. Again, it helps WSNs to optimize energy consumption through the Cluster Head, Duty Rotation, Data Aggregation, Efficient Routing, Sleep Scheduling, and Localized Processing [
2].
Nature-inspired optimization methods are one of the approaches to solving wireless sensor network problems in terms of finding the optimal approach to cluster formation. Nature-inspired approaches help avoid unpromising search paths in any optimization problem, thus helping reduce the time spent searching for the best or near-optimal solutions. Examples of such methods include Bee Colony Optimization (BCO), which is a nature-inspired optimization algorithm based on honeybees’ foraging behavior [
5,
6]. BCO is a metaheuristic optimization algorithm inspired by the foraging behavior of honeybees. It mimics how bees search for food and communicate the location of food sources to one another. BCO can be used to optimize routing and clustering by efficiently selecting cluster heads based on factors like energy levels and node proximity. The foraging behavior of honeybees could be applied to find the most efficient routes for data transmission in a WSN, thereby reducing energy consumption, improving network lifetime, and enhancing the overall network performance [
3].
Unfortunately, the traditional Bee Colony Optimization (BCO) faces challenges such as premature convergence, where the algorithm settles on suboptimal solutions too quickly, limiting its effectiveness in complex scenarios [
5]. This also limits its performance in finding the optimal routing paths in heterogeneous sensor networks. This is because there is diversity and variability among the sensor nodes within the network. This study focuses on developing an efficient clustering algorithm by combining the k-mean clustering technique with the Bee Colony Optimization algorithm (K-BCO) to address the challenge associated with the traditional BCO technique. K-means is a popular clustering algorithm that partitions data into K clusters based on similarity [
7]. It is straightforward and efficient but can struggle with dynamic environments and may not account for the varying energy levels of sensor nodes in WSNs.
In a heterogeneous WSN, sensors may have varying hardware specifications, memory capacity, processing power, and energy resources [
8]. For instance, some sensor nodes might have strong batteries or an efficient sensing capability, while others may be more limited. This variation affects how sensor nodes participate in data collection, processing, and communication. Different sensor nodes may generate data at varying rates depending on their sensing capabilities and the environmental conditions they monitor. This variability can lead to uneven data traffic within the network, complicating the clustering and data aggregation processes. The proposed K-BCO algorithm aims to account for these differences to enhance data collection efficiency. The study also considers the importance of energy efficiency in WSNs. Heterogeneity in energy levels among sensor nodes means that some nodes may have more energy available for data transmission and processing than others. The K-BCO algorithm is designed to select cluster heads based on their energy status, ensuring that nodes with sufficient energy are chosen to lead data transmission. This approach helps to balance energy consumption across the network, prolonging the overall network lifetime. The physical arrangement of sensors can change over time, especially in situations where mobile sensors are involved. The K-BCO algorithm’s ability to dynamically adjust cluster formations helps maintain connectivity and communication efficiency in such environments. WSNs have unique requirements regarding data accuracy, latency, and reliability. The heterogeneity of application needs means that a one-size-fits-all clustering approach may be ineffective. The K-BCO algorithm is designed to be adaptable, allowing it to cater to the specific demands of various applications while optimizing energy consumption and network performance.
2. Related Works
Jacob I. and Darney P. (2021) [
9] developed the Artificial Bee Colony (ABC) Optimization Algorithm for enhancing routing in wireless networks. The Artificial Bee Colony (ABC) Optimization aimed at improving the performance and efficiency of wireless communication systems by applying nature-inspired optimization techniques. Comparative analysis of network performance was performed using performance metrics such as packet delivery ratio, latency, and energy efficiency between the ABC algorithm and existing models. The study underscores the significance of nature-inspired optimization algorithms, particularly the ABC algorithm, in improving routing efficiency, reducing interference, and enhancing overall network performance in wireless communication systems. It stated potential applications of the developed algorithm in addressing complex challenges and optimizing wireless networks for various technological advancements. Although the study enhanced the performance of the entire network, the proposed scheme was unable to select optimal paths based on dynamic network conditions and traffic patterns.
Dawood et al. (2021) [
10] also proposed an algorithm for energy-efficient clustering in heterogeneous wireless sensor networks. The algorithm was developed to improve energy efficiency in terms of intra-cluster communication by considering distance and energy factors. Their study aimed at reducing energy consumption within clusters by minimizing communication distances between nodes and cluster heads. The key components of the proposed algorithm include cluster formation, cluster head selection based on proximity and energy levels, and optimizing intra-cluster communication to reduce energy consumption. They presented simulation results, comparing the performance of the proposed protocol with the PEGASIS protocol in terms of PDR, average end-to-end delay, and energy consumption. The proposed algorithm outperformed the PEGASIS protocol in terms of lifetime, energy efficiency, and average end-to-end delay, thereby improving the lifetime of the wireless sensor network. Also, using proximity to the center of the zone and maximum residual energy as criteria for CH selection may affect the overall performance of the network since a faulty sensor may have more energy. This may disrupt effective data collection from some segments of the field. The proposed algorithm did not consider mobile sensors within the network, hence raising the scalability issue.
Another study by Agbehadji et al. (2021) [
8] developed a clustering algorithm based on a nature-inspired approach for energy optimization in a heterogeneous wireless sensor network. Their approach focused on the heterogeneity of devices, energy requirements of nodes, and network characteristics. The performance of the proposed scheme was measured based on the number of data packets successfully received at the base station; data transmission and reception were also efficient in the network. In [
8], performance was compared with existing models such as Distributed Energy-Efficient Clustering (DEEC), Developed Distributed Energy-Efficient Clustering (DDEEC), and Extended version of Distributed Energy-Efficient Clustering (EDEEC).
Jacob I. and Darney P. (2021) [
9] proposed the Artificial Bee Colony (ABC) Optimization Algorithm as a method for enhancing routing in wireless networks. This algorithm is inspired by the foraging behavior of honeybees and is designed to optimize various performance metrics in wireless communication systems. The study aimed to provide a novel approach to routing that enhances efficiency and performance through the use of bio-inspired algorithms. Their algorithm initializes a population of artificial bees, which represent potential solutions (routing paths) in the network. Each bee is assigned a specific route to explore based on the network model. The behavior of the bees was simulated to mimic the natural foraging process. Each bee evaluates the quality of its assigned route based on performance metrics such as throughput, delay, and energy consumption. The bees communicate information about the quality of their routes to other bees, similar to how real bees share information about food sources. The bees assess the performance of their routes using predefined performance indicators. This evaluation helps determine which routes are more efficient and should be prioritized for data transmission. Based on the evaluations, the bees select the best routes to follow. The algorithm employs a mechanism to exploit the best-known routes while also exploring new paths to avoid local optima. If a bee finds a better route than its current one, it updates its position to this new route. They demonstrated that once the optimal paths are determined, data packets are transmitted along these routes. The algorithm ensures that packets are spread across multiple paths to enhance reliability and reduce the risk of packet loss due to interference or congestion. The proposed scheme is validated through simulations (e.g., using MATLAB), where various scenarios are tested to evaluate the performance improvements achieved by the ABC algorithm compared to existing routing protocols. While the proposed ABC optimization scheme presents a promising approach to enhancing routing in wireless networks, it lacks some capabilities, such as fast convergence rates, local optima, network scalability, and adaptability to changing network conditions. Addressing these limitations through further research and refinement could improve the algorithm’s robustness and applicability in diverse network scenarios.
Zhu et al. (2024) [
11], in their study, proposed a Random Dual Strategy Artificial Bee Colony (RDABC) algorithm to address the challenges of low coverage accuracy and slow convergence speed in wireless sensor networks (WSNs). The RDABC focuses on enhancing the exploration and exploitation capabilities of the optimization process, thereby improving overall coverage and efficiency in WSNs. The RDABC randomly deploys sensor nodes within the designated field or geographical area for the coverage optimization task to begin. RDABC uses two search strategies: Classical Search Strategy and Elite Search Strategy. The update equation for the classical search, which was based on the original Artificial Bee Colony (ABC) algorithm, is computed in Equation (1) as:
where
is the new position of the bee,
is the current position,
is a randomly selected individual from the population, and
is a random parameter that influences the search direction.
This strategy focuses on the best solutions found so far. The update equation for the elite search is computed in Equation (2) as:
where
XE is the central position of all elite solutions (top 10% of the population) and
is the best individual in the population.
The RDABC incorporated a random selection method to switch between the classical and elite search strategies, allowing for flexible transitions and balancing exploration and exploitation. RDABC introduced a cross-mutation strategy derived from genetic algorithms. This strategy allows for multi-dimensional updates, which helps in exploring the solution space more effectively. The specific implementation details of the cross-mutation are not explicitly defined in the provided text, but it generally involves combining features from multiple solutions to create new candidate solutions. The RDABC iterates through the steps until a stopping criterion is met, such as a maximum number of iterations or a satisfactory level of coverage. The final output includes the optimized positions of the sensor nodes and the achieved coverage area. Although RDABC offers significant improvements over traditional methods, it may be faced with challenges like implementation complexity due to the dual search strategies and cross-mutation and being trapped in local optima, particularly in highly complex or multimodal optimization landscapes.
The Wolf Search Algorithm (WSA) operates based on the natural behaviors of wolves during hunting, incorporating principles of individual searching, memory utilization, and threat response [
12]. WSA simulates the hunting behavior of wolves, where each wolf acts as an independent searching agent. The algorithm balances exploration (searching new areas) and exploitation (refining known good areas) to find optimal solutions.
Each wolf evaluates its current position and the positions of its peers within a defined visual range. The movement of a wolf is influenced by the quality of its position and the best position found by its peers; this is computed in Equation (3) as:
where
is the new position of the wolf,
is the current position of the wolf.
is the best position found by the wolf or its peers, is a coefficient that controls the attraction towards the best position, is a coefficient that controls the randomness of the escape movement, is a function that generates a random position to jump to, simulating the wolf’s response to threats.
When a wolf encounters a threat (simulated as a random event), it jumps away from its current position to avoid being trapped in local optima. This is akin to a mutation in genetic algorithms. The escape movement is defined in Equation (4) as:
where
d is a predefined distance that determines how far the wolf can jump away from its current position, random (−
d,
d) generates a random value within the range of −
d to
d.
WSA incorporates a memory mechanism where wolves remember previously visited positions. This memory helps prevent revisiting the same positions and enhances search efficiency. Each wolf evaluates the quality of its current position based on a fitness function, which is problem-specific. The fitness function determines how close the current position is to the optimal solution. The fitness function
f(
x) is defined in Equation (5) as:
The WSA follows the general steps outlined below:
Step 1: Initialize a population of wolves with random positions.
Step 2: Evaluate the fitness of each wolf’s position.
Step 3: For each wolf, determine the best position found by itself and its peers.
Step 4: Update the position of each wolf using the movement formula.
Step 5: If a threat is encountered, apply the escape movement.
Step 6: Repeat the evaluation and updating process for a set number of iterations or until convergence criteria are met.
Rami Reddy et al. (2023) [
13] proposed a scheme based on the improved Grey Wolf Optimization (EECHIGWO) algorithm to enhance energy efficiency, average throughput, network stability, and overall network lifetime in wireless sensor networks (WSNs) through optimal selection of cluster heads (CHs). The EECHIGWO specifically focused on addressing the challenges associated with traditional clustering methods, such as premature convergence, lack of population diversity, and the imbalance between exploration and exploitation in the optimization process. The EECHIGWO incorporated elements of the wolf search algorithm (WSA) to improve the efficiency and effectiveness of cluster head selection in WSNs, leading to enhanced network performance and longevity. The proposed EECHIGWO defines a fitness function that evaluates the potential CHs based on criteria such as residual energy, distance to the base station, and intra-cluster distance. The WSA uses this fitness function to guide the selection process, ensuring that the chosen CHs are optimal for energy efficiency and network stability. The EECHIGWO algorithm demonstrated a substantial improvement in network lifetime, with reported enhancements of up to 333.51% compared to several existing protocols, such as SSMOECHS, FGWSTERP, and LEACH-PRO. Although the EECHIGWO aims to balance exploration and exploitation, there may still be scenarios where it could get trapped in local optima, especially in highly complex or non-linear search spaces. The EECHIGWO may also introduce additional complexity in terms of implementation and parameter tuning.
Jiang et al. (2016) [
14] developed an underwater sensor network redeployment algorithm based on the wolf search algorithm (RAWS) to optimize how sensors are deployed in underwater environments. The focus of RAWS was to address challenges like inefficient network coverage, high computational complexity, energy inefficiency, obstacles, and environmental changes affecting underwater sensor networks’ performance. The RAWS allows each node to perform an independent search for monitoring purposes. This does not enable sensors to exchange information with one another, which reduces communication overhead and computational complexity. Sensors move towards targets when detected or explore freely when no targets are present. The proposed RAWS included an escape mechanism that allows sensors to change their direction randomly when they encounter an obstacle to avoid it. This feature helps prevent sensor node failure and allows the algorithm to escape local optima during the search process. The node coverage for each node
, which was computed in Equation (6) as:
where,
is a function that determines if the target
is within the sensing range of the node
.
The performance of the proposed RAWS was evaluated through simulations. The RAWS results demonstrated improvements in network coverage, energy conservation, and obstacle avoidance compared to other existing algorithms, such as the artificial fish swarm algorithm. Although the proposed RAWS has demonstrated some improvement in network performance, it may be sensitive to the initial random deployment of nodes. If nodes are poorly positioned initially, it may take longer for the algorithm to achieve optimal coverage, or it may converge to a suboptimal solution. Also, the escape mechanism employed by RAWS relies on the ability of nodes to detect obstacles. If the detection range is limited or if obstacles are not accurately represented in the model, nodes may fail to avoid them effectively, leading to potential collisions or failures.
4. Proposed Clustering Technique in Wireless Sensor Networks (WSNs)
The proposed clustering technique combines the forward and backward passes repeatedly to generate the optimal solutions. In this regard, the sensor nodes (SN) perform the forward and backward passes repeatedly for a specified number of times to locate a cluster head (CH) with the optimal distance. One advantage of the proposed clustering technique is its ability to search all available nodes and then optimize energy in transmitting data packets between sensor nodes (SN) and cluster heads (CH) and among CHs. Optimizing the energy takes into consideration the distance to communicate in routing data packets to the sink node or base station through another CH.
The proposed scheme combines WSA, K-means, and Bee Colony Optimization to optimize the performance of WSNs. The integration of K-means with BCO (K-BCO) aims to enhance the clustering process, improve energy efficiency, and extend the network’s operational lifetime. The combination of WSA, K-means, and BCO is because there is a need to develop a robust and efficient clustering algorithm that addresses the challenges of energy consumption and network performance in WSNs. This integrated approach aims to provide more stable and optimal solutions, ultimately leading to improved network lifetime and efficiency.
4.1. Cluster Formation and Cluster Head Selection
Clustering enhances routing in WSNs by improving energy efficiency, facilitating data aggregation, and supporting the development of efficient routing protocols tailored for hierarchical network structures [
1,
8]. This routing technique models the food search method by honey bees, where SNs find the optimal distance to a CH. CHs also use optimal distance to communicate and route data packets to the sink node or base station through another CH. In this regard, the forward and backward passes are performed iteratively to locate a CH with the optimal distance. The following subsections describe the cluster formation and bit error determination stages.
During this process, the energy model and Bit Error Rate (BER) determination are considered in cluster formation and CH selection at every given time. These are described as follows:
The study adopts the energy model by [
10] to determine the energy requirement for a sensor or CH to send
n-bit of a data packet over a distance
d. Hence, the transmission energy is defined in Equation (13) as:
where
represents the energy consumed for electronic transmission and
is the energy consumed for amplification during transmission. Hence, the energy consumption
f(
x) is expressed in Equation (14) as:
where
is the energy consumption for sending a message over a certain distance in the network. Where
represents the energy consumed for the electronic transmission,
represents the energy required for signal amplification, d is the distance over which the message is being transmitted and
represents the energy consumed for signal amplification. Furthermore, the energy consumed for receiving the message from a sender is computed in Equation (15) as:
The residual energy (
) of a sensor node is calculated using Equation (16):
where,
is the initial energy of the sensor node,
is the transmission energy calculated earlier, and
is the energy consumed for receiving the message.
The study utilized the Euclidean distance formula to compute the distance
d between SN and CH and between CHs and the sink node or the base station (BS). The Euclidean distance formula is a fundamental concept in mathematics that calculates the straight-line distance between two points in Euclidean space [
23,
24]. In a two-dimensional space (such as a Cartesian plane), the Euclidean distance
d between two points
and
is expressed in Equation (17):
- 1.
Bit Error Rate (BER) Determination
The Bit Error Rate (BER) is a measure of the percentage or fraction of bits in a data stream that has been corrupted during transmission [
25,
26]. It represents the ratio of the number of erroneous bits received to the total number of bits transmitted over a specific period, which is expressed in Equation (18).
where
represents the total number of bits transmitted and
is the total number of erroneous bits received.
A lower BER value indicates a higher level of data accuracy and reliability in the communication system. For instance, a sensor of BER of 0.01 means that 1 out of every 100 bits transmitted is received in error. BER is crucial in assessing the quality of communication channels, especially in scenarios where noise, interference, or channel impairments can introduce errors in the transmitted data.
The optimal BER for wireless communication systems is typically set based on the required quality of service (QoS) for the application [
25]. In high-reliability applications such as medical devices or critical infrastructure monitoring, a very low BER of
may be considered as optimal. The BER requirements of
may be considered optimal in optical systems to ensure error-free transmission over long distances.
4.2. Proposed K-BCO Algorithm
The proposed algorithm consists of several steps, which are outlined in Algorithm 1:
Algorithm 1: K-BCO |
Start: Step 1: Set the parameters for CH selection and CH search Step 2: Determine the number of clusters (k-means) Step 3: Select CHs Start loop Compute energy levels (Equation (13)) and (Equation (16)) Evaluate energy consumption (Equation (12)) Computer BER (Equation (18)) If Select CH End if End loop Step 4: SN search for CH (Equation (9)) Start loop If Connect to CH else Search for new CH (Equation (7)) End if End loop Step 5: count the number of sensors in a Cluster Start loop If Stop sensor acceptance End if End loop Step 6: Establish Communication End |
4.3. Flowchart of the Proposed K-BCO Algorithm
From
Figure 1, in implementing the proposed algorithm, the algorithm first sets the parameters for energy level, BER, distance, cluster head selection, and cluster head search. The scheme then determines the number of clusters depending on the number of sensors deployed using k-mean.
Secondly, the algorithm selects CHs based on the parameters for the CH selection. Afterward, the sensor within a cluster searches and connects to the closest CH using the forward pass technique based on the distance between the sensor and the CH. The proposed algorithm allows a maximum of five (5) sensors to be connected to a CH at each time. This ensures that mobile sensors do not overburden any CH within the network.
4.4. Computational Complexity of the Proposed K-BCO
We present the complexity of the proposed K-BCO in terms of big O complexity in Algorithm 2, although this study focuses on error rate, data delivery rate, and execution time.
Algorithm 2: Computational complexity |
Step 1: Set the parameters → Step 2: Determine the number of clusters → • m is the number of sensors (data points). • r is the number of iterations required for convergence. Step 3: Select CHs → Step 4: SN search for CH → Where , 5 is the number of sensors per cluster Step 5: count the number of sensors in a Cluster → Step 6: Establish Communication → |
5. Experimental Settings of K-BCO in WSN
Simulation of the proposed algorithm was achieved using Python version 3.12 and PyCham version 241.18 on the Windows 11 64-bit operating system. Python is a component-based simulation environment that supports the simulation of various communication networks, including wireless sensor networks [
27]. It provides a flexible framework for modeling network protocols and scenarios.
The proposed scheme considers about 250 wireless sensor nodes distributed over a field or geographical area of
randomly. Clusters are formed, and cluster heads (CHs) are selected based on their energy efficiency and transmission error rates (Bit Error Rate (BER)). Sensors locate the CHs using the optimal distance. The study also considers only five sensors as a cluster around each CH at any given time.
Table 1 below shows the experimental settings.
A random dataset on humidity and temperature was generated for each sensor within the network using the uniform distribution function in Python. A uniform distribution function is a type of probability distribution in which all outcomes are equally likely to occur [
28,
29]. Thus, every value within a specified range has the same probability of occurring. To generate data for randomly distributed sensors in a field using a uniform distribution, the following steps were followed:
Step 1: Define the Field Dimensions
Let the dimensions of the rectangular field be defined as:
Step 2: Specify the Number of Sensors
Let N be the number of temperature sensors to be deployed:
Step 3: Set Constraints
Define the minimum distance d that must be maintained between any two sensors:
This is to avoid long distances between sensor nodes and CHs. Long distances between sensor nodes and CHs may lead to high energy consumption during data transmission from sensor nodes to CHs. Therefore, this limits the lifespan and efficiency of the network.
Step 4: Generate Random Coordinates
Let
represent the coordinates of the
i-th sensor, where
i = 1, 2, …,
n. The position coordinates of sensors are generated using Equation (19):
where
and
are independent random variables uniformly distributed between 0 and 1. Thus,
Therefore, humidity
h and temperature
t are generated for each sensor within the network using Equation (18):
After generating the above data for each randomly distributed sensor, the data was sent to the sink node through the respective CHs of each cluster.
The algorithm to implement random distribution is simplified as shown in Algorithm 3:
Algorithm 3: Simplified Random Distribution Algorithm |
Step 1: initialize W, H, N, , , Step 2: set d Step 3: Generate random coordinates Step 4: Output random distribution value |
8. Conclusions
The study presents a significant improvement in the field of Wireless Sensor Networks (WSNs) through the development of the K-BCO algorithm for clustering. By integrating BCO with WSA, the proposed clustering algorithm effectively addresses the challenge of energy consumption during data transmission in WSNs. The combination of the BCO with WSA enhanced the performance, robustness, and adaptability of the resulting hybrid approach. This combination led to more efficient solutions in dynamic and resource-constrained environments like Wireless Sensor Networks. The results from extensive simulations demonstrate that the K-BCO not only improves the reliability and efficiency of cluster formation but also optimizes energy consumption, thereby prolonging the network’s lifetime. The heterogeneity of sensors in the study is a critical factor that influences the design and implementation of the K-BCO algorithm by addressing the challenges posed by diverse sensor capabilities, energy levels, data generation rates, dynamic topologies, and application requirements.
The findings indicate that the proposed approach leads to a notable enhancement in the performance metrics of WSNs, including reduced error rates, energy cost or energy consumption and improved packet delivery ratios. Thus, although the K-BCO performed highly in terms of packet delivery, it consumed less energy, leading to a prolonged lifespan for the entire network. This study underscores the potential of leveraging collective behaviors observed in nature to solve complex problems in network optimization.
Future work should focus on further refining the algorithm and exploring its applicability in various real-world scenarios, including dynamic environments and heterogeneous sensor networks. Again, future work should focus on addressing the execution time of the proposed K-BCO. Overall, the proposed K-BCO framework offers promising implications for the deployment and operation of WSNs, paving the way for more efficient and sustainable wireless communication systems.