## 3 System Model  
We assume there are \(N\) sensors deployed non-uniformly in the network, where each sensor is equipped with an energy harvesting unit that is capable of harvesting energy from its ambient environment, e.g., solar, radio wave. The harvested energy is stored in a storage device such as a supercapacitor to supply power for data transmission. The system operates in a discrete slotted time \(t\in[0,1,2,\dots\ ]\) and all operations are performed in each slot with duration \(\Delta t\). Let \(E_{h}(t)\) denote the amount of harvested energy, and \(E_{c}(t)\) denote the amount of consumed energy both during time slot \(t\). Let \(\rho_{c}\in(0,\ 1]\) and \(\rho_{d}\in[1,\infty)\) denote charging and discharging efficiency, respectively. Thus, the remaining energy at the beginning of slot \(t+1\) is denoted by \(E_{r}(t+1)\) and is defined as  
\[E_{r}(t+1)\ =\rho_{d}E_{r}(t)\ +\ (\rho_{c}E_{h}(t)\ -\ E_{c}(t))\forall t \tag{1}\]  
In this work, for simplicity, the charging and discharging rate of the supercapacitor are considered negligible, thus \(\rho_{c}\approx\ \rho_{d}\approx\ 1\). Considering \(E_{max}\) as the maximum storage capacity, thus \(0\leq E_{r}(t)\leq E_{max}\). In a real-world application, the available harvested energy would be spatio-temporal dependent, which means it varies based on the location of the sensors and time. To emulate this effect, we divide the network in different regions \(R_{i}\) where nodes located in each region harvest with the same probability \(\eta_{i}\) that is a uniformly distributed random number. Let \(E_{h,max}\) and \(E_{h,min}\) denote the maximum and minimum harvesting rate, which should satisfy \(E_{h,min}\leq\eta_{i}\leq E_{h,max}\). In this paper \([E_{h,min},E_{h,max}]\) = [0.5,1] is considered. In a solar powered sensor, \(\eta_{i}\) value 0.5 is considered to mimic a partially clouded area where nodes in that region can harvest with half the value of \(E_{h,max}\), and \(\eta_{i}\)= 1 represents a clear sky where nodes can harvest energy with the highest ratio. Based on the remaining energy of each node \(i\in N\), \(E_{r,i}\), a node \(i\) can be in three different states, namely stable, medium, and critical, denoted as \(N_{s_{i},s}\), \(N_{s_{i},m}\) and \(N_{s_{i},c}\), respectively. Thus, for node \(i\), it becomes  
\[N_{s_{i}}=\left\{ \begin{array}{ll}N_{s_{i},s}&\text{defines as}\quad E_{r_{i} }\geq\alpha\\ N_{s_{i},m}&\text{defines as}\quad\beta\leq E_{r_{i}}<\alpha\\ N_{s_{i},c}&\text{defines as}\quad\theta\leq E_{r_{i}}<\beta\end{array} \right., \tag{2}\]  
where \(\alpha\), \(\beta\), and \(\theta\) are power parameters that are tunable based on network requirements. When using transmission power control, for each node, three different transmission power levels are considered, namely, normal, medium, and high, denoted by \(N_{tp,n}\), \(N_{tp,m}\),and \(N_{tp,h}\), respectively. A node switches between these three modes based on its own power level and their neighboring nodes' power condition, as depicted in Equation (3). Therefore, each node adapts its transmission power based on the other nodes' condition in its surrounding environment. Thus, for node \(i\), we have  
\[N_{tp_{i}}=\left\{ \begin{array}{ll}N_{tp_{i},m}&\text{if}\quad N_{s_{i},c} \ \ \vee\ \ N_{s_{j},s},\forall j\in N_{ngh,i}\\ N_{tp_{i},m}&\text{if}\quad(N_{s_{i},s}\ \vee\ \ N_{s_{i},m})\ \wedge\ \ N_{s_{j},c},\forall j\in N_{ngh,i}\\ N_{tp_{i},h}&\text{if}\quad N_{s_{i},s}\ \wedge\ \ N_{s_{j},c},\forall j\in N_{ngh,i}\\ \end{array} \right., \tag{3}\]  
where \(N_{ngh,i}\) is the set of node \(i\) neighbors in which \(N_{ngh,i}\in N\). In each round (\(t\)), a certain number of the nodes \(N_{d}\) generates and transmits their event to a random destination (another node inside the network) over a time-varying wireless channel. The packets are forwarded using neighboring nodes towards the destination in a greedy manner using the shortest hop distance. Therefore, each node might work either as a relay or as a data source or data destination.