3.1. System Architecture
A possible healthcare monitoring system is composed of an IBNN and an external healthcare system. IBNN consists of two kinds of nanodevices, namely, NBSs and nanorouters implanted inside the human body. NBSs have severe constraints in terms of energy, transmission range, storage and computational resources. While nanorouters have more resources than NBSs and they are responsible for handling more complex operations such as collecting data from NBSs, performing complex computational operations and transmitting collected information to the external healthcare system using nanointerface. Nanointerface is connected to the external healthcare system through the internet for remote data transmission. The communication is carried out until the IBNN is dead.
Network Model Assumption and Definitions
We describe our network model as a undirected graph
, where V denotes set of NBSs and nanorouter (vertices), represented as
and E is the set of edges connecting vertices. In a scenario where an edge is directly connecting
and
to each other, they are said to be neighbors. The neighbors of router
are defined as
. The one-hop neighbor set of
is a symmetric graph
, where given any two pairs of adjacent vertices
—
and
-
of V, bidirectional edge E exist.
Definition 1.
When several NBSs are located in the transmission range of a nanorouter
, a cluster is formed that is expressed as:
where
is the transmission radius of the nanorouter
. Nanorouter
is responsible for collecting detected information from its cluster members and transmitting it to the external healthcare system.
Definition 2.
The transmission radius of a nanorouter
is divided into small correlated region, such that the value observed by the NBSs in that spatially correlated region are considered similar (for the application). The correlated region of nanorouter
are expressed as
. Instead of collecting data from all deployed NBSs, data is aggregated from the optimal number of NBSs, which is sufficient to represent the correlated region
.
The size of the correlation region varies according to the type of application and event characteristics. For those applications that demand a high level of accuracy, the size of the correlation region can be decreased. While for the event characteristics that do not change significantly at a small range, the size of the correlation region can be increased. In this work, the size of the correlated region is defined during the simulation setup time.
Definition 3.
Participating correlated regions are selected before the data collection process based on the output of the fuzzy logic decision, the detailed selection process is given in the Section 3.2.
Definition 4.
NBSs selection from participating correlated regions is performed based on the bio-inspired firefly algorithm fitness value. The complete process is demonstrated in the Section 3.3.
Definition 5.
The lifetime of IBNN is evaluated based on the number of alive NBSs (m-in-k-of-n nodes) [58].
The total number of NBSs are divided into two groups;
and
denoted as
and
, respectively. According to the (m-in-k-of-n nodes) approach, the group of
are characterized as non-critical NBSs, which means death of k NBSs is allowed from
. While no failure of NBSs from the group of
is tolerable. Accordingly, the network lifetime is elaborated as following:
The total number of NBSs available in the network are denoted as
, the set of all the NBSs that are alive at the certain time t, expressed as
.
where
is a NBS that belongs to the set of
, expressed as
, whose energy is not depleted. Now set of NBSs that are part of the
and
are defined using Equation (3) and (4):
where
is a NBS that is a part of
, while
it is also a subset of
. Among all the NBSs that are part of
, only k number of NBSs can be dead.
where
is a part of
group denoted as
and
is also a subset of
, death of any NBS from the group
results in the death of the network.
3.2. Fuzzy Logic-Based Correlated Region Selection
In our proposed work, different correlated regions are selected for data reporting; the selection decision of the participating region is performed using FLBDS, as demonstrated in Algorithm 1. Our proposed FLBDS significantly overcomes the complexity overhead of the selection decision of correlated regions in resource constraint IBNNs.
Algorithm 1: Selection decision of correlated regions for data reporting using FLBDS |
1: |
Input: |
2: |
Set of correlated regions
|
3: |
Action: |
4: |
For each correlated region
index i do |
5: |
= Density (One-hop neighbors of nanorouter in the correlated region i) |
6: |
= Energy (Residual energy in the correlated region i) |
7: |
= Previous critical messages received (PCMR in the last data reporting interval in the correlated region i) |
8: |
End For |
9: |
Evaluate input parameters
using Fuzzy Rules given in Figure 3. |
10: |
For each
do |
11: |
Calculate
(Using the defuzzification process). |
12: |
Enriched list of
←
|
13: |
End For |
14: |
Output: |
15: |
= List of Information and Energy enriched correlated regions |
The fuzzy logic-based decision is made after completion of three main parts of the FLBDS, namely fuzzification, fuzzy inference system and defuzzification. Our proposed fuzzy logic-based decision model uses three input parameters (i.e., messages, density and energy) for generating one output parameter. The first input parameter gives knowledge about the number of messages that are received from a correlated region during the last interval. The second input parameter density shows the NBSs density at the one-hop distance from nanorouter and the last input parameter is energy that represents the remaining energy of the correlated region. Based on these three input parameters, the output parameter determines the enrichment value of a correlated region.
-
Fuzzification: In our proposed fuzzy logic-based decision model, the input and output parameters are described using the linguistic variables. The expressions used for input parameters, density, messages and energy are ‘high’, ‘medium’ and ‘low’, respectively. While the output parameter represents the enrichment value using the linguistic variables ‘very high’, ‘high’, ‘medium’, ‘low’ and ‘very low’. In the fuzzification process, these variables are represented by triangular membership functions, which are used to associate a grade to each input linguistic variable. The selection of the number of membership functions and their initial values is based on process knowledge and intuition. The membership function has a value between 0 and 1 over an interval of the crisp variable.
-
Fuzzy Inference System: After the fuzzification process, the fuzzified values are processed by the fuzzy inference engine to inference the fuzzy rules for driving decisions. The fuzzy rules used in our proposed fuzzy logic-based decision model are elaborated using
Figure 3. The fuzzy rules are the sets of ‘IF’ and ‘THEN’ statements, for instance, the first rule is read as
IF (Density is high) and (number of messages received are also high) and (energy is high)
THEN (The enrichment of the correlated region is very high). The number of rules depends on the number of input membership functions, which grow exponentially with the increase in the number of input membership functions.
The characteristics of the defined rules are imprecise; the value generated from the rules are fuzzy instead of crisp values. The input parameters are fuzzified according to the membership value to obtain crisp values. The attained crisp values are then used to determine the enrichment of the correlated-region.
-
Defuzzification: The obtained result is processed in the defuzzification process to achieve a quantifiable output (i.e., the enrichment of a correlated region). In this process, the membership degree of the fuzzy set is interpreted into some specific values (crisp value). In this work, the centroid (COG) method is used for defuzzification to obtain a crisp output value.
Example: To further explain the fuzzy-based selection, we consider an example with three crisp inputs values; x = 16, y = 19 and z= 55 for density, messages and energy in the correlated regions, respectively as shown in
Figure 4.
After the fuzzification process, the fuzzified inputs are evaluated according to certain appropriate rules as shown in
Figure 5. Based on the rules, each crisp value has a membership grade that is used for generating output. According to the rule, for the crisp input values (medium, medium and high), the output is medium. While for crisp input values (medium, high and medium), the output is high.
After completion of the Mamdani rule evaluation process, the defuzzification process is performed. In the defuzzification process, the attained aggregated fuzzy set is converted to a number through the COG technique as demonstrated in
Figure 6.
3.3. Bio-Inspired Firefly Algorithm Based NBSs Selection
The firefly algorithm is inspired by the flashing pattern and behavior of fireflies. The low-complexity and self-adaptability of this metaheuristic approach make it the most suitable approach for adaptation in IBNNs for designing low-complexity routing schemes. Fireflies use their flashlight for attracting other fireflies for communication and mating; the flashing pattern, rhythm and the rate influence the attractiveness of a firefly. The firefly algorithm is based on the three main assumptions; first, all the fireflies are unisex. Second, the attractiveness of a firefly is proportional to its intensity, as the distance increases both the attractiveness and intensity decreases. If no brighter firefly is found then the particular firefly moves randomly. Third, the objective function determines and influences the intensity of the firefly. The attractiveness of firefly is determined using Equation (
5):
where
expresses the attractiveness of a firefly at a distance
d. The attractiveness of a firefly at a distance
is represented as
.
and
d denotes light absorption coefficient and distance between two fireflies respectively. The distance between two fireflies
and
is calculated using Equation (
6):
where
is the distance from the coordinates of firefly
given by
to the coordinates of firefly
denoted as
.
Since all the spatially correlated NBSs are assumed to detect similar types of information, therefore, limiting the participation of NBSs in the data reporting process increases the network lifetime by conserving network resources that are consumed in redundant data transmission. The proposed firefly algorithm optimizes NBSs selection for reducing redundant data transmission, balancing energy consumption and increasing the probability of retrieving more valuable information from NBSs. The proposed firefly algorithm for the optimal selection of NBSs is further provided in Algorithm 2. The detailed demonstration of the main steps of our proposed firefly algorithm is given below:
-
Solution Initialization: In the firefly algorithm, the potential solution of a problem is represented by each firefly. Similarly, in NBSs selection, each firefly symbolizes as the solution of NBSs selection problem. The proposed algorithm first initializes the initial solution. The initial solution structure is generated randomly (i.e., 0 or 1) depending on the number of NBSs.
-
Fitness function calculation: In the view of the influence of the light intensity on the brightness of a firefly, in this work, the attractiveness of the firefly devise its fitness. The fitness value is based on the three main characteristics; remaining energy of the NBSs, distance from the nanorouter and the priority bit.
-
(a)
-
Residual Energy: Selecting NBSs with more residual energy assist in prolonging the network lifetime. Therefore, selecting NBSs with more energy available is a more preferable choice.
-
(b)
-
Distance: Data transmission at less distance requires low energy consumption and ultimately increased network lifetime. Therefore, NBSs that is located at the minimum distance from nanorouter has better fitness value.
-
(c)
-
Priority Bit: The priority bit depends on the content of the last transmitted data, if the NBS has transmitted critical messages in the last interval then priority bit is set to 1 otherwise it is 0.
Based on the fitness parameters, the overall fitness value of a NBS is determined using Equation (
7):
where weights
are used to balance the weight of three parameters expressed as
and
.
-
New Solution Updating: After determining the light intensity of each solution, the firefly with less brightens moves to the next firefly with more brightness. The position of the next firefly is updated using the Equation (
8):
where
and
are two fireflies,
denoted the randomization parameter and
function is used to generate random value between [0,1].
Algorithm 2: Firefly algorithm based NBSs selection |
1: |
Initialize population
|
2: |
Perform the generation of initial firefly population, (1,2,…i) |
3: |
Calculate the light intensity I at
using Equation (7) and obtain the
. |
4: |
While t < MAXGeneration |
5: |
For every i |
6: |
For every j |
7: |
update fitness function and find light intensity. |
8: |
For
|
9: |
If
>
then |
10: |
Replace with updated firefly. |
11: |
Else Randomly change function and generate new intensity. |
12: |
End If |
13: |
End For |
14: |
Determine the new solution using Equation (8) and update the light intensity. |
15: |
End For |
16: |
End For |
17: |
Make a ranking of the fireflies to locate the present best. |
18: |
End While |
3.5. The Lifetime of an IBNN
Network lifetime is the fundamental characteristic of an IBNN for evaluating its potential in specific applications. In the existing literature, various factors are considered, such as the alive number of nodes, sensor coverage and connectivity for defining the lifetime of a WSN [
59]. Similarly, the lifetime of IBNN is also associated with the number of alive NBSs, defined as the time when NBSs exhaust themselves and have no energy left for carrying out primary operations. The definition provides information that when NBSs do not have enough energy to transmit data packets, the network can no longer provide useful information to the external healthcare system. Therefore, the IBNN should be considered dead. The evaluation of IBNN lifetime based on the alive number of NBSs is briefly discussed in this section.
The detailed comprehension of IBNN lifetime is possible by briefly explaining the life cycle of an NBS. The life span of an NBS depends on the number of messages transmitted and received by the nano-transceivers. Nano-transceivers use TS-OOK modulation scheme for communication in the THz band as THz band transceivers are not able to handle the shape or phase complexity of the transmitted signal [
60]. At the physical layer, TS-OOK modulation scheme is used with pulse duration, pulse time interval and transmission range equal to 100 fs, 100 ps and 10 mm, respectively. According to TS-OOK modulation scheme the energy consumed by a NBS for transmitting a pulse is 1 pJ (i.e.,
= 1 pJ) and the amount of energy needs for a pulse reception is 0.1 pJ (i.e.,
= 1 pJ). Thus, the energy consumed by the
ith NBS in the transmission and reception of
x number of bits is given as Equations (
10) and (
11):
where weight
is used in Equation (
10) to denote the probability of transmitting the symbol 1 in the
x streams of bits. Since the symbols 0 and 1 are equiprobable, therefore, the value of
is generally set to 0.5. While in the case of energy consumption during the reception, the entire
x stream of bits is considered. Accordingly, the total energy consumed by the
ith NBS in the
rth round expressed as Equation (
12):
where
,
,
and
shows the total number of transmitted and received packets respectively. While
and
represents the amount of energy consumed in packet transmission and reception, respectively. Consequently, the amount of energy left in the NBS after completion of
rth round is determined using Equation (
13):
where
is the energy consumption of the
ith NBS and
is the amount of energy harvested in the
rth round.
In the context of energy harvesting mechanisms in nanonetworks, conventional mechanisms such as solar energy, wind power, or underwater turbulence are inapplicable due to the technical limitations of these schemes at NS level. In the last few years, novel schemes are introduced for recharging NS devices. Piezoelectric nano-generator, which is composed of an array of ZnO nanowires, a reflecting circuit and an ultra nanocapacitor, has gained significant attention for recharging NS devices. The compression of nano-wires generates an electric current between the ends of nanowires that are used for recharging the ultra nanocapacitor. The mechanical vibration methods (such as air conditioning and heartbeat) provides the compressed release cycle. The frequency of the compressed release cycles
f provides the time for recharging ultra nano-capacitor [
61]. In IBNNs, NBSs are integrated inside the human body and the only possible source of mechanical vibration inside the human body is a heartbeat, therefore,
Hz.
According to the energy harvesting model, after
compressed cycles, the voltage of the charging capacitor is calculated using Equation (
14):
where
is the total capacitance of the ultra-nanocapacitor,
represents the harvested charge per cycle and
is the generator voltage. However, due to technical limitation of NBSs, the typical values of quantities
,
and
are 9 cF, 6 pc and
V respectively. The energy
stored in ultra-nanocapacitor after
is re-written as [
61] using Equation (
15):
where
corresponds to entire capacitance of ultra-nanocapacitor,
signifies the voltage of the generator and
demonstrates the number of cycles necessary to reach the energy level given by Equation (
16):
where
is the generator voltage,
is the capacitance of ultra-nanocapacitor and
represents the harvested charge per cycle. Following the above given information, the energy harvested by the
ith NBS in the
rth round is obtained by determining the number of cycles
required for charging the ultra-nanocapacitor, as expressed in Equation (
17):
where
refers to number of cycles given in Equation (
16) and
represents number of cycles in the
rth interval.
Considering the amount of energy harvested and consumed in packet transmission and reception, the lifetime of the
ith NBS is obtained using Equation (
18):
where
is the initial energy of the NBS and
is the remaining energy of the NBS. Consequently, the lifetime of an IBNN is defined using Equation (
19):