Next Article in Journal
A Simple Colorimetric and Fluorescent Sensor to Detect Organophosphate Pesticides Based on Adenosine Triphosphate-Modified Gold Nanoparticles
Previous Article in Journal
Transmission Optimization of Social and Physical Sensor Nodes via Collaborative Beamforming in Cyber-Physical-Social Systems
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Full-Duplex Multi-Hop Wireless Networks Optimization with Successive Interference Cancellation

School of Computer Science and Information Engineering, Hefei University of Technology, Hefei 230601, China
*
Author to whom correspondence should be addressed.
Sensors 2018, 18(12), 4301; https://doi.org/10.3390/s18124301
Submission received: 29 September 2018 / Revised: 25 November 2018 / Accepted: 26 November 2018 / Published: 6 December 2018
(This article belongs to the Section Sensor Networks)

Abstract

:
In wireless network communication, in-band full-duplex technique is a useful and important technique that can enlarge the whole throughput of the wireless networks. However, its use needs harsh environment. The successive interference cancellation can make several transmitters’ data be received simultaneously by the receiver, and can make the in-band full-duplex technique be used easily in reality. In this paper, we try to propose an optimal algorithm for increasing the throughput of full-duplex multi-hop wireless networks with successive interference cancellation, which we call the full-duplex successive interference cancellation (FD-SIC) wireless networks. We first describe the mathematical model for the FD-SIC wireless networks and show it is NP-hard in general. Then, we propose a heuristic algorithm, namely the use-up-link-capacity iterative (UULC-iterative) algorithm, for each node’s routing and transmitting scheme. Simulation results show that the proposed algorithm for FD-SIC wireless networks can achieve better throughput compared with SIC-only networks and the interference avoidance networks.

1. Introduction

In traditional study, wireless network communication is considered as working in half-duplex (HD) model or out-of-band full-duplex model [1]. Researchers believe the wireless node cannot transmit and receive simultaneously because of the existence of strong self-interference [2]. Based on this assumption, the traditional research work on wireless network communication is often modeled into HD model [3,4,5]. Fortunately, recent advances in self-interference cancellation have made the in-band full-duplex (FD) model based wireless communication become reality. The power associated with residual self-interference can be effectively canceled for feasible in-band full-duplex transmission with combinations of various advanced analog, passive, and digital self-interference cancellation schemes [6]. In-band full-duplex operation has emerged as an attractive solution for increasing the throughput of wireless communication networks [7]. The first paper about FD wireless communication can be found in [8], where the authors propose a novel technique named antenna cancellation to fulfill self-interference cancellation. After that, many researchers have done their work on this field [9,10]. For example, in [11], according to antenna theory, the authors proposed an improved model of the antenna cancellation scheme for decoding self interference. In [12], the authors used digital cancellation to achieve Self-Interference Cancellation. In [13], simulation results show the self-interference cancellation can remove most of the self interference such that the residual interference may be regarded as mere additional noise. In [14,15], the author comprehensively analyzed the advantages and disadvantages of FD technology, and pointed out a variety of new directions and open problems associated with FD technology.
Wireless communication environment is a complex environment and the use of FD technique may make the problem more complex. For example, in [16], the authors indicated that even two links, a b and c d , which can be active simultaneously in a HD fashion, may not be active in a FD fashion, because the link b a may interference the link c d . Then, the authors supposed that each link can operate in either FD or HD model, and proposed an algorithm based on a Bayesian game for each link’s operated model selection. In our paper, we consider an environment in which nodes will transmit their data to base stations by multi-hop. Under this circumstance, a node may receive from one node and transmit to another node simultaneously by the FD fashion. An example is shown in Figure 1. In Figure 1a, node a transmits to node b while node b transmits to node c simultaneously. Since node c is not in the interference range of node a, both transmissions can be successful. In Figure 1b, since node c is in the interference range of node a, the FD fashion cannot be fulfilled directly here.
We can certainly solve this problem by proposing an algorithm, such as that in [16]. However, if the network topology is in a dense environment with many wireless nodes, then it might be found that, in most cases, node a’s transmission to node b will interference with node b’s transmission to node c. In other words, in most cases, FD fashion cannot be fulfilled under this environment. Fortunately, nowadays, new techniques for interference management (IM) [17] give us new opportunities for solving this problem. IM is not a single technique; many techniques can fulfill the interference management, such as interference alignment (IA) [18], interference coordination [19], etc. The key idea of IM is trying to let the receivers receive several transmissions successfully by some signal processing methods. For example, if a receiver has the ability of successive interference cancellation (SIC) [20], then when it receives a combined data from several transmitters, it will first try to decode the strongest signal in the combined data. The requirement for decoding the strongest signal successfully is that the signal-to-interference noise ratio (SINR) is larger than a threshold. After receiving the strongest signal, the receiver will remove it from the initial combined data and then get new combined data. The processing can be repeated until all signals are decoded or one combined data cannot be decoded.
The SIC technique is a valuable technique in IM and has aroused many researchers’ interests. For example, in [21], the authors proposed a cross-layer optimization framework for multi-hop wireless networks with SIC, and showed that, compared with the scheme without SIC, the network throughput can be increased about 47 % . In [22], the authors proposed a heuristic algorithm for routing in multi-hop wireless networks, and getting a bandwidth-aware high-throughput protocol with SIC. Simulation results show the proposed algorithm has about 29–62% higher throughput than the compared algorithm. In [23], the authors used the SIC technique in a special wireless network: the device-to-device-enabled (D2D-enabled) cellular network. They presented an analytical framework for studying the performance of SIC in this special network, and derived some general expressions for the successful transmission probabilities in SIC. In [24], the authors used the SIC technique in multiple-input multiple-output (MIMO) relay systems to eliminate loop interference. Simulation results show that the proposed method significantly improves the performance of FD-MIMO relay systems. We proposed an algorithm for multi-hop wireless network in [25] and an optimal base station placement algorithm with SIC in [26], and tried to use SIC technique in a special wireless network environment: the mine locomotive wireless network [27]. We found the SIC technique can make the FD fashioned wireless network more powerful. Thus, in this paper, we design an algorithm for full-duplex multi-hop wireless networks with successive interference cancellation. In the following, we call this network scheme as the FD-SIC multi-hop networks.
The following is the structure of the paper. In Section 2, we give the mathematical model for FD-SIC multi-hop wireless networks. We first give the physical layer and link layer model, then give the network layer and finally deduce the problem formulation. The problem formulation is a NILP problem. In Section 3, we propose a heuristic algorithm for solving the problem deduced in Section 2. We first give the main idea of the proposed algorithm, and then discuss some key steps in the algorithm carefully. Section 4 shows the simulation results for the proposed algorithm. We first give results for a special network with 10 nodes and 2 base stations, and then give more results for more networks. We compare results with the SIC only scheme and with interference avoidance scheme, and show that the FD-SIC scheme can achieve better throughput. In Section 5, we conclude the whole paper.

2. The Mathematical Model for FD-SIC Multi-Hop Wireless Networks

We first describe the throughput maximization problem for FD-SIC multi-hop wireless networks and give the mathematical model. Consider a FD-SIC multi-hop wireless network in a two-dimensional area with n nodes s 1 , s 2 , , s n and m base stations b 1 , b 2 , , b m (see Figure 2). Nodes transmit data to the base stations via single- or multi-hop transmissions, and during the whole scheduling time, each node communicates with only one base station. Suppose that all nodes have the same transmission power P and bandwidth W. Denote N as the set of n nodes and M as the set of m base stations.

2.1. Physical Layer and Link Layer Model

In the physical layer, we use the FD-SIC technique. In the link layer, we consider a time schedule scheme. Suppose the whole schedule time T is divided into h time slots equally, and denote t k ( k = 1 , , h ) as these time slots. Define a binary scheduling variable x s i s j k for link s i s j in time slot t k , and a binary scheduling variable x s i b j k for link s i b j in time slot t k . We have,
x s i s j k = 1 : if node s i transmits data to node s j in time slot t k ; 0 : otherwise .
x s i b j k = 1 : if node s i transmits data to base station b j in time slot t k ; 0 : otherwise .
In a time slot t k , a node s i can transmit to at most one node (or one base station), i.e.,
s j T s i x s i s j k + b l T s i x s i b l k 1 ( s i N , 1 k h ) .
If we use HD model, then node s i cannot transmit or receive simultaneously:
s m T s i x s m s i k | T s i | + s j T s i x s i s j k 1 ( s i N , 1 k h ) .
In FD model, the equation will become,
s m T s i x s m s i k | T s i | + s j T s i x s i s j k 2 ( s i N , 1 k h ) .
where T s i is the set of all neighbors in the transmission range R T of node s i in Equations (1)–(3).
When using SIC, the receiver can receive multiple signals simultaneously and decode them sequentially. Based on the SIC decoding process, we can find that, when node s j (or base station b j ) tries to decode the signal received from node s i in a time slot t k , all stronger signals have already been decoded and removed.Thus, we will have an improved SINR, which, to ensure node s j (or base station b j ) can decode signal from node s i , should be no less than β . Denote the channel model g = d 3 , where d is the distance between two nodes. Denote N 0 as the noise power and N S I as the node’s residual self-interference after using the FD technique. Note that all nodes use the same transmission power P and thus the residual self-interference N S I is a constant. Then, we have,
S I N R s i s j k = g s i s j P s l s i g s l s j g s i s j ( g s l s j P s m T l x s l s m k ) + N 0 + N S I β ( x s i s j = 1 ) ,
S I N R s i b j k = g s i b j P s l s i g s l b j g s i b j ( g s l b j P s m T l x s l s m k ) + N 0 + N S I β ( x s i b j = 1 ) ,
where s m T l x s l s m k = 1 if s l is transmitting data to some node in time slot t k and s m T l x s l s m k = 0 if s l is not transmitting in time slot t k . Here, we suppose x s i s j = 1 (or x s i b j = 1 ), because if x s i s j = 0 (or x s i b j = 0 ), it means s i does not transmit to s j (or b j ) at that time and we do not need to consider this situation.

2.2. Network Layer Model and Problem Formulation

Now, we give the network layer model. Suppose each node s i has a minimum data rate requirement r i to one base station. We want to maximize a common scaling factor K [28] such that each s i can transmit its data to the base station with a data rate K r i . Denote r s i s j , s i N , s j T s i , as the average data rate from node s i to node s j . Denote r s i b j , s i N , s i T b j , as the average data rate from node s i to base station b j . Then, we have the following relationship for flow rates at a node s i ,
s l T s i r s l s i + K r i = s j T s i r s i s j + s i T b j r s i b j ( s i N ) .
Since, for each link, the flow rate cannot exceed the achievable average link rate, we have,
r s i s j 1 h k = 1 h ( C · x s i s j k ) ( s i N , s j T s i ) ,
r s i b j 1 h k = 1 h ( C · x s i b j k ) ( s i N , s i T b j ) ,
where C is the data rate by a successful transmission, which can be calculated by W l o g 2 ( 1 + β ) . Here, we consider a fixed modulation and coding scheme [29], which achieves a fixed transmission rate C if successful. The adaptive modulation and coding scheme, which achieves a transmission rate as a function of SINR, is also considered by many other papers. However, it requires accurate estimation on channel condition. If there are errors on channel condition estimation and a high transmission rate is used, such a transmission may not be decoded due to small SINR and thus the achieved rate is 0. Due to this risk, many systems use a fixed modulation and coding scheme and we also consider this scheme in the paper. In this paper, we consider the fixed modulation and coding scheme.
Based on these discussions, the problem can be formulated as follows.
max K s . t . s j T s i x s i s j k + b l T s i x s i b l k 1 ( s i N , 1 k h ) s m T s i x s m s i k | T s i | + s j T s i x s i s j k 2 ( s i N , 1 k h ) S I N R s i s j k = g s i s j P s l s i g s l s j g s i s j ( g s l s j P s m T l x s l s m k ) + N 0 + N S I β ( x s i s j = 1 ) S I N R s i b j k = g s i b j P s l s i g s l b j g s i b j ( g s l b j P s m T l x s l s m k ) + N 0 + N S I β ( x s i b j = 1 ) s l T s i r s l s i + K r i = s j T s i r s i s j + s i T b j r s i b j ( s i N ) r s i s j 1 h k = 1 h ( C · x s i s j k ) ( s i N , s j T s i ) r s i b j 1 h k = 1 h ( C · x s i b j k ) ( s i N , s i T b j ) x s i s j k , x s i b j k { 0 , 1 } , r s i s j , r s i b j , K 0 ( s i N , s j T s i , 1 k h ) .
In Equation (9), K, x s i s j k , x s i b j k , and r s i b j are variables. This problem model is a mixed integer linear programming (MILP) problem, which is NP-hard in general [30] and cannot be solved directly.

3. Optimization for FD-SIC Multi-Hop Wireless Networks

In Section 2, we give the problem formulation and show it is a MILP problem, which is NP-hard in general. In other words, it is very challenging to find an optimal solution for FD-SIC multi-hop wireless networks. In this section, we propose a heuristic algorithm for solving the problem. Notice that the main step of the heuristic algorithm is based on the iterative idea, and, in each iterative step, we always want to try use up all link capacity, so we call our algorithm as the use-up-link-capacity iterative (UULC-iterative) algorithm.

3.1. Main Idea

It is easy to find that in Equation (9), binary scheduling variables x s i s j k and x s i b j k can make the problem non-convex and thus NP-hard in general. If we can find a way to determine these values, then the remaining problem is only with continuous variables r s i s j , r s i b j and K, i.e.,
max K s . t . s l T s i r s l s i + K r i = s j T s i r s i s j + s i T b j r s i b j ( s i N ) r s i s j 1 h k = 1 h ( C · x s i s j k ) ( s i N , s j T s i ) r s i b j 1 h k = 1 h ( C · x s i b j k ) ( s i N , s i T b j ) r s i s j , r s i b j , K 0 ( s i N , s j T s i , 1 k h ) .
This formulation is a linear programming (LP) problem, and can be solved in polynomial-time. To do that, we need first establish a way to determine the value of each x s i s j k and x s i b j k . Then, based on this idea, we can propose a heuristic algorithm based on iterative framework for solving the whole problem. The following four steps are the main idea for determining these values.
I
Divide the whole area into several regions. Each region includes one base station and many sensor nodes. Each sensor node will only communicate with the base station in the same region, and base stations can communicate with each other.
II.
For each node, establish a first routing path to the base station in its region and assign time slots for each link on this path, such that Equations (1), (3), (4) and (5) hold.
III.
Under current x s i s j k and x s i b j k values, calculate K, all r s i s j and r s i b j values by Equation (10).
IV.
Try to improve the current scheduling solution ( x s i s j k and x s i b j k values), thus K may be increased. If we can find a way to increase K, then go back to Step III, else our algorithm terminates.
There are three challenges in the above algorithm: (1) how to select a base station for each node; (2) how to establish an initial path for each node; and (3) how to improve the current scheduling solution. In the following, we give the detail steps for each challenge in our algorithm.

3.2. Base Station Selection

Step 1 is to select a base station for each node. To do this, we can divide the whole network topology into several regions. Each region has one base station, and nodes in this region will send their data to this base station. We use the Voronoi graphic algorithm [31] to do this division (see Figure 3), and have the following definitions.
Definition 1.
Suppose b 1 and b 2 are two base stations in the network topology (see Figure 3a). L is the perpendicular bisector of the line b 1 b 2 ¯ , and divides the whole network topology into two half-planes L L and L R . Define H ( b 1 , b 2 ) as the half-plane L L , and H ( b 2 , b 1 ) as the half-plane L R .
Obviously, to a node s i , if s i is in H ( b 1 , b 2 ) , then the distance from s i to b 1 and b 2 should meet d s i b 1 < d s i b 2 .
Definition 2.
Define V ( b i ) = i j H ( b i , b j ) , where V ( b i ) is an convex polygon area with no more than ( n 1 ) edges. We call V ( b i ) as the Varonoi polygon of b i .
For example (see Figure 3b), the Varonoi polygon of b 1 is a quadrangle, and n = 6 . After dividing the network topology by the Varonoi graphic algorithm, we get some regions. When a node s i V ( b j ) , it should send its data to b j .

3.3. Establish the First Routing Paths

After dividing the network topology into several regions, we establish the first routing paths for all nodes in each region, and calculate the maximum K value on the current condition (Steps 2 and 3). Before that, we first identify the minimum hop distance to the base station for each node. The minimum hop distance is a usual way to calculate distances between nodes in networks. In Figure 4, we give the flow-process diagram on how to identify the minimum hop distance for all nodes.
We can use the minimum hop distance for establishing the first routing paths. Suppose the minimum hop distance of node s i is d, then we choose the neighboring node of s i with the minimum hop distance, e.g. s j , as the next hop node. Then, a link s i s j is created. In this way, we can build the first routing paths for all nodes. Then, we assign time slots for all links. The main points for assigning time slots are as follows, and the detail steps can be found in Figure 5.
  • When a link s i s j is created, we first try to assign a time slot already used by some other link. If this time slot cannot be used (i.e., the assignment makes some existing links or the new link with S I N R < β ), then we should consider another existing time slot. If no existing time slots can be used, we assign a new time slot. Otherwise, an available time slot is found.
  • If we find multiple time slots for a new link, we use the minimum improved SINR (see Equations (4) and (5)) among all links in a time slot as a metric and choose the time slot that can maximize the minimum improved SINR as the most appropriate time slot.
Once the first routing paths for each node are established and all time slots for links are assigned, we can calculate the maximum K, r s i s j and r s i b j values by Equation (10).

3.4. Improve the Current Scheduling Solution

The last step is to improve the current scheduling solution. To do that, we need to identify bottleneck links and bottleneck nodes. We first give some definitions.
Definition 3.
To a link s i s j (or s i b j ), define Z s i s j = 1 h k = 1 h ( C · x s i s j k ) r s i s j (or Z s i b j = 1 h k = 1 h ( C · x s i b j k ) r s i b j ) as the residual capacity on this link.
The residual capacity on a link can be used to indicate the link’s using efficiency. Since 1 h k = 1 h ( C · x s i s j k ) is the maximum data rate for the link s i s j , r s i s j is the real average data rate for the link s i s j . Thus, the smaller Z s i s j is, the higher the using efficiency is.
Definition 4.
To a link s i s j (or s i b j ), if there is no residual capacity on this link, i.e., Z s i s j = 0 (or Z s i b j = 0 ), then we call this link the bottleneck link.
We can have similar definitions for the residual capacity on a routing path, for the residual capacity on a node, and for the bottleneck node.
Definition 5.
To one routing path from a node s i to its base station b j , each link on the path has its residual capacity, and we choose the minimum residual capacity on these links as the residual capacity on the routing path.
Definition 6.
To a node s i , which may have one or several routing paths to its base station, we choose the maximum residual capacity on these routing paths as the residual capacity on the node s i , and denote it as Z s i .
Definition 7.
To a node s i , if its residual capacity is zero, i.e., Z s i = 0 , then we call this node a bottleneck node.
The residual capacity on a node can be determined by the maximum flow algorithm [30]. It is obvious that, if we can calculate each node’s residual capacity and find the bottleneck node, we can further increase the throughput on this node by assigning an additional time slot to one of its existing links or adding a new out-going link. Thus, K value may also be increased. After we increase the bottleneck node’s throughput, the whole network solution will be changed and we will find a new bottleneck node. Then, we can try to increase the throughput of the new bottleneck node. This step can be repeated until we cannot increase the throughput of the bottleneck node, and we call this step the iterative step. Then, we can calculate the last maximum K for the whole network.
However, there are some problems we should solve in each iterative step: (1) when trying to increase the throughput of a bottleneck node, how to select from these two methods (using a new time slot on an existing link or using a new link with an assigned time slot); (2) if we use a new time slot, which time slot should be assigned on which existing link; and (3) if we use a new link, which new link should be added.
To answer these problems, we need to analyze possible improvement after using a new time slot or a new link. We consider it under the following two cases.
  • Possible improvement by a new time slot. For each out-going link s i s j , we can revise the algorithm in Figure 5 to determine a suitable time slot. That is, instead of considering all time slots, we only consider time slots not used by link s i s j . Once a new time slot is found, possible improvement on link s i s j is C h while possible improvement from node s j to the base station is Z j . Thus, possible improvement is min { C h , Z j } . Note that, for the link s i b j , possible improvement is C h .
  • Possible improvement by a new link. For a new link, we can apply the algorithm in Figure 5 to determine a suitable time slot. Once a new time slot is found, possible improvement is again min { C h , Z j } for the link s i s j , or C h for the link s i b j .
Based on the above analysis, we can address the problems we have proposed. The detail steps to increase bottleneck node s i ’s throughput is given in Figure 6. Notice that, in Figure 6, we use a similar algorithm as Figure 5 to judge wether a new assignment can be successful, which means when, we want to add a new link or assign a new time slot for an exist link, all other affected nodes’ SINR should be recalculated.

3.5. Complexity

We first show the complexity for the base station selection step. Since we need to calculate all distances between each node and each base station to perform the Voronoi graphic algorithm, the complexity of this step is O ( n m ) .
Then, we show that in each region the complexity in each iteration is polynomial. In the first iteration, we need to identify hop distance for all nodes, select a next hop node for each node and then assign a time slot for this link, and identify initial K.
  • To identify hop distance for all nodes, we need to visit all neighboring nodes of each node. The complexity is O ( E ) = O ( n 2 ) , where E is the number of all possible links.
  • The complexity to select a next hop node for each node is O ( n ) .
  • The complexity to assign a time slot to the first link is O ( 1 ) . To analyze the complexity to assign a time slot for the ( e + 1 ) th link, we assume that previous e links use h ^ time slots. When we consider a used time slot t k for the ( e + 1 ) th link, we need to check up to e k + 1 SINR values, where e k is the number of links in this time slot. In the worst case, we may check up to k = 1 h ^ ( e k + 1 ) = e + h ^ SINR values and then decide to assign a new time slot. The complexity is O ( e + h ^ + 1 ) = O ( e + h ) . Thus, the total complexity for time slot assignment is at most O ( 1 ) + e = 2 E O ( e + h ) = O ( 1 ) + O ( E 2 ) + O ( h E ) = O ( n 4 + h n 2 ) .
  • The complexity of solving an LP in Equation (10) is O ( N v 3 ) where N v is the number of variables in Equation (10). Since N v = O ( N 2 ) , O ( N v 3 ) = O ( n 6 ) .
The overall complexity in the first iteration is O ( n 2 ) + O ( n ) + O ( n 4 + h n 2 ) + O ( n 6 ) = O ( n 6 + h n 2 ) , which is polynomial.
In each of the subsequent iterations, we need to identify bottleneck node, calculate possible improvement of each of its neighbors, sort these neighbors, either assign a new time slot or add a new link, and update K.
  • The complexity to identify bottleneck node is O ( E ) = O ( n 2 ) .
  • To calculate possible improvement for a neighboring node, we need to solve a maximum flow problem. Some algorithms (e.g., Push-relabel algorithm with FIFO vertex selection rule) for the maximum flow problem have complexity O ( n 3 ) . The total complexity for a node s i ’s | T i | neighbors is | T i | O ( n 3 ) = O ( n 4 ) .
  • Sorting | T i | neighbors has a complexity O ( | T i | ln | T i | ) = O ( n ln n ) .
  • To analyze the complexity of assigning an additional time slot for an existing link, we assume that other e 1 links use h ^ time slots. We need to check up to e SINR values. In the worst case, we may find that h ^ time slots are not available and then assign a new time slot. The complexity is O ( h ^ e + 1 ) = O ( h n 2 ) .
    To analyze the complexity of assigning a time slot for a new link, we assume that previous e links use h ^ time slots. When we consider a used time slot, we need to check up to e + 1 SINR values. In the worst case, we may find that h ^ time slots are not available and then assign a new time slot. The complexity is O ( h ^ ( e + 1 ) + 1 = O ( h n 2 ) .
    Thus, the total complexity to assign a new time slot or add a new link is | T i | O ( h n 2 ) = O ( h n 3 ) .
  • The complexity of solving an LP in Equation (10) is again O ( n 6 ) .
The overall complexity in a subsequent iteration is O ( n 2 ) + O ( n 4 ) + O ( n ln n ) + O ( h n 3 ) + O ( n 6 ) = O ( n 6 + h n 3 ) , which is polynomial.
We then analyze the number of iterations. On the one hand, in the first iteration, n x i j [ k ] values are set as one, while, in each subsequent iteration, one additional x i j [ k ] value is set as one. On the other hand, the total number of x i j [ k ] variables is O ( h E ) = O ( h n 2 ) . Thus, the number of iterations is at most 1 + O ( h n 2 ) n = O ( h n 2 ) .
Thus, the overall complexity of our algorithm is O ( n m ) ( O ( n 6 + h n 2 ) + ( O ( h n 2 ) 1 ) O ( n 6 + h n 3 ) ) = O ( h n 9 m + h 2 n 6 m ) , which is polynomial. Note that the purpose of this analysis is to show the complexity is polynomial. The obtained result is a loose upper bound on complexity, while, in practice, the complexity can be much less.

4. Simulation Results

In this section, we give simulation results to show the performance of our algorithm. We also compare results without Full-duplex (the SIC only scheme [25]) and without SIC (the interference avoidance scheme [25]) to show the advantage of Full-duplex.
Consider multi-hop networks with 10 to 50 nodes and 2 to 5 base stations randomly deployed in a square region of 3000 m × 3000 m. Transmission power is P = 1 W. Noise power and the self-interference power is N 0 + N S I = 10 5 W. The SINR threshold is β = 1 . Channel bandwidth is W = 22 MHz. The number of time slots is equal to the number of nodes. The required minimum data rate r ( s i ) is between 100 kbps and 1000 kbps. Similar parameter setting are used in [21].
We first present detailed results of a multi-hop network with 10 nodes and 2 base stations in Section 4.1. Then, we provide complete results for all network instances with different number of nodes.

4.1. Results for a Multi-Hop Network with 10 Nodes and 2 Base Stations

Consider a multi-hop network shown in Figure 7a. The coordinates and the required minimum data rate r ( s i ) are shown in Table 1. The two base stations’ coordinates are ( 500 , 500 ) and ( 1877 , 1674 ) .
When using the Full-duplex and SIC technique, we have K = 75.82 ; with SIC technique only, we have K = 50.54 ; and with the interference avoidance scheme, we have K = 20.21 . We give the routing and the time slot allocating methods in these three different techniques in Figure 7b–d. From these we can see that, when using full-duplex, nodes will have more chances and abilities for transmitting and receiving. For example, node s 7 will transmit in five different time slots when using full-duplex (see Figure 7d), and, in time slot t 8 , it will transmit to base station and receive from s 10 simultaneously. When using SIC only, s 7 will transmit in three different time slots and will not transmit and receive simultaneously. When using interference avoidance, s 7 will only transmit in two time slots.

4.2. Results for All Network Instances

We change the number of base stations m from 2 to 5, the number of nodes n from 10 to 50, and generate 20 different network instances randomly for each network. Then, we calculate the value K under the interference avoidance scheme and the SIC scheme, and show the average values for each network in Figure 8. From these simulation results, we can see that the throughput by using SIC is improved explicitly compared with using interference avoidance, and improved much more when using full duplex. Comparing with the interference avoidance scheme, the achieved throughput improvement is about 200–500% when using full duplex. The improvement is not explicit when comparing with the SIC only scheme, especially when the number of nodes is large. However, it is impactful when the number is not very big. For example, when the number of node is 20, the throughput improvement of full duplex scheme is about 16.6 % comparing with the SIC only scheme.

4.3. Complexity from Simulation Results

To get the real complexity of our algorithm, which should be less than complexity upper bound analyzed in Section 3.5, we record the run-time of each program simulation, calculate their average values, and get the fitting curve which is shown in Figure 9. The curve fitting formulas are y = 0.0002023 x 3 0.01298 x 2 + 0.3626 x 1.634 for two base stations, y = 0.0001566 x 3 0.00901 x 2 + 0.3946 x 2.464 for three base stations, y = 0.0003634 x 3 0.02578 x 2 + 0.8106 x 4.601 for four base stations and y = 0.0001537 x 3 + 0.004818 x 2 0.05009 x + 1.541 for five base stations. Compared with the original value, the fitting result has about 95 % degree of similarity. The curve is a cubic polynomial curve, which means the actual time complexity of our algorithm is θ ( n 3 ) .

5. Conclusions

In this paper, we consider in the wireless network environment that nodes need to transmit data to base stations by single- or multi-hop scheme. We want to use the SIC and FD techniques to increase the throughput of the whole network, and build the mathematical model which is NP-hard in general. Then, we design a heuristic algorithm, namely the UULC-iterative algorithm. Simulation results show that FD-SIC scheme by using UULC-iterative algorithm can increase the throughput obviously while comparing with the SIC only scheme and the interference avoidance scheme.

Author Contributions

Conceptualization, L.S. and X.B.; Methodology, Z.L. and L.S.; Software, Z.L. and L.L.; Validation, Z.L. and J.X.; Writing, L.S., X.B. and J.X.

Funding

This research was funded by the National Key Research Development Program of China with grant number [2016YFC0801800] and the National Natural Science Foundation of China with grant number [61501161].

Conflicts of Interest

The authors declare no conflicts of interest.

References

  1. Goldsmith, A. Wireless Communications; Cambridge University Press: New York, NY, USA, 2005; pp. 32–58. ISBN 978-0521837163. [Google Scholar]
  2. Zhang, Z.; Chai, X.; Long, K.; Vasilakos, A.V.; Hanzo, L. Full Duplex Techniques for 5G Networks: Self-interference Cancellation, Protocol Design, and Relay Selection. IEEE Commun. Mag. 2015, 5, 128–137. [Google Scholar] [CrossRef]
  3. Rashtchi, R.; Gohary, R.H.; Yanikomeroglu, H. Generalized Cross-Layer Designs for Generic Half-Duplex Multicarrier Wireless Networks with Frequency-Reuse. IEEE Trans. Wirel. Commun. 2015, 1, 458–471. [Google Scholar] [CrossRef]
  4. Zhou, J.; Reiskarimian, N.; Diakonikolas, J.; Dinc, T.; Chen, T.; Zussman, G.; Krishnaswamy, H. Integrated Full Duplex Radios. IEEE Commun. Mag. 2017, 4, 142–151. [Google Scholar] [CrossRef]
  5. Li, R.; Chen, Y.; Li, G.; Liu, G. Full-Duplex Cellular Networks. IEEE Commun. Mag. 2017, 4, 184–191. [Google Scholar] [CrossRef]
  6. Kim, D.; Lee, H.; Hong, D. A Survey of In-Band Full-Duplex Transmission: From the Perspective of PHY and MAC Layers. IEEE Commun. Surv. Tutor. 2015, 4, 2017–2046. [Google Scholar] [CrossRef]
  7. Sabharwal, A.; Schniter, P.; Guo, D.; Bliss, D.W.; Rangarajan, S.; Wichman, R. In-Band Full-Duplex Wireless: Challenges and Opportunities. IEEE J. Sel. Areas Commun. 2014, 9, 1637–1652. [Google Scholar] [CrossRef]
  8. Choi, J.I.; Jain, M.; Srinivasan, K. Achieving Single Channel, Full Duplex Wireless Communication. In Proceedings of the International Conference on Mobile Computing and Networking, MOBICOM, Chicago, IL, USA; 2010; Volume 9, pp. 1–12. [Google Scholar] [CrossRef]
  9. Bharadia, D.; McMilin, E.; Katti, S. Full Duplex Radios. Proc. ACM SIGCOMM 2013, 8, 375–386. [Google Scholar] [CrossRef]
  10. Duarte, M.; Sabharwal, A. Full-duplex Wireless Communications Using Off-the-shelf Radios: Feasibility and First Results. IEEE Trans. Signals Syst. Comput. 2010, 2, 1558–1562. [Google Scholar] [CrossRef]
  11. Mohan, M.V.A.; Anilkumar, C.D. Theoretical Analysis of Antenna Cancellation Technique in Full-Duplex Communication System. In Proceedings of the International Conference on Innovations in information Embedded and Communication Systems, Coimbatore, India, 17–18 March 2017; Volume 5, pp. 1–5. [Google Scholar] [CrossRef]
  12. Ahmed, E.; Eltawil, A.M. All-Digital Self-Interference Cancellation Technique for Full-Duplex Systems. IEEE Trans. Wirel. Commun. 2015, 7, 3519–3532. [Google Scholar] [CrossRef]
  13. Riihonen, T.; Werner, S.; Wichman, R. Mitigation of Loopback Self-interference in Full-duplex MIMO Relays. IEEE Trans. Signals Process. 2011, 12, 5983–5993. [Google Scholar] [CrossRef]
  14. Liu, G.; Yu, F.R.; Ji, H.; Leung, V.C.M.; Li, X. In-Band Full-Duplex Relaying: A Survey, Research Issues and Challenges. IEEE Commun. Surv. Tutor. 2015, 2, 500–524. [Google Scholar] [CrossRef]
  15. Zhang, Z.; Long, K.; Vasilakos, A.V.; Hanzo, L. Full-Duplex Wireless Communications: Challenges, Solutions, and Future Research Directions. Proc. IEEE 2016, 7, 1369–1409. [Google Scholar] [CrossRef]
  16. Afifi, W.; Abdel-Rahman, M.J.; Krunz, M.; MacKenzie, A.B. Full-duplex or Half-duplex: A Bayesian Game for Wireless Networks with Heterogeneous Self-interference Cancellation Capabilities. IEEE Trans. Mob. Comput. 2018, 5, 1076–1089. [Google Scholar] [CrossRef]
  17. Noura, M.; Nordin, R. A Survey on Interference Management for Device-to-device (D2D) Communication and Its Challenges in 5G Networks. J. Netw. Comput. Appl. 2016, C, 130–150. [Google Scholar] [CrossRef]
  18. Ma, J.; Zhang, S.; Li, H.; Zhao, N.; Leung, V.C.M. Interference-Alignment and Soft-space-reuse based Cooperative Transmission for Multi-cell Massive MIMO Networks. IEEE Trans. Wirel. Commun. 2018, 3, 1907–1922. [Google Scholar] [CrossRef]
  19. Gupta, V.K.; Nambiar, A.; Kasbekar, G.S. Complexity Analysis, Potential Game Characterization and Algorithms for the Inter Cell Interference Coordination with Fixed Transmit Power Problem. IEEE Trans. Veh. Technol. 2018, 4, 3054–3068. [Google Scholar] [CrossRef]
  20. Weber, S.P.; Andrews, J.G.; Yang, X.; Veciana, G.D. Transmission Capacity of Wireless Ad Hoc Networks with Successive Interference Cancellation. IEEE Trans. Inf. Theory 2007, 8, 2799–2814. [Google Scholar] [CrossRef]
  21. Jiang, C.; Shi, Y.; Qin, X.; Yuan, X.; Hou, Y.T.; Lou, W.; Kompella, S.; Midkiff, S.F. Cross-Layer Optimization for Multi-Hop Wireless Networks with Successive Interference Cancellation. IEEE Trans. Wirel. Commun. 2016, 8, 5819–5831. [Google Scholar] [CrossRef]
  22. Liu, R.; Shi, Y.; Lui, K.S.; Shen, M.; Wang, Y.; Li, Y. Bandwidth-aware High-throughput Routing with Successive Interference Cancelation in Multihop Wireless Networks. IEEE Trans. Veh. Technol. 2015, 12, 5866–5877. [Google Scholar] [CrossRef]
  23. Ma, C.; Wu, W.; Cui, Y.; Wang, X. On the performance of successive interference cancellation in D2D-enabled cellular networks. Proc. IEEE Conf. Comput. Commun. 2015, 8, 37–45. [Google Scholar] [CrossRef]
  24. Lin, C.T.; Tseng, F.S.; Wu, W.R.; Jheng, F.J. Joint Precoders Design for Full-Duplex MIMO Relay Systems with QR-SIC Detector. IEEE Glob. Commun. Conf. 2015, 7, 1–6. [Google Scholar] [CrossRef]
  25. Shi, L.; Shi, Y.; Ye, Y.; Wei, Z.; Han, J. An Efficient Interference Management Framework for Multi-hop Wireless Networks. IEEE Wirel. Commun. Netw. Conf. 2013, 4, 1129–1134. [Google Scholar] [CrossRef]
  26. Shi, L.; Zhang, J.; Shi, Y.; Ding, X.; Wei, Z. Optimal Base Station Placement for Wireless Sensor Networks with Successive Interference Cancellation. Sensors 2015, 1, 1676–1690. [Google Scholar] [CrossRef]
  27. Shi, L.; Gao, Y.; Wei, Z.; Ding, X.; Shi, Y. The Mine Locomotive Wireless Network Strategy based on Successive Interference Cancellation with Dynamic Power Control. Int. J. Distrib. Sens. Netw. 2017, 5, 1–11. [Google Scholar] [CrossRef]
  28. Shi, Y.; Hou, Y.T. A Distributed Optimization Algorithm for Multi-hop Cognitive Radio Networks. IEEE Int. Conf. Comput. Commun. 2008, 1966–1974. [Google Scholar] [CrossRef]
  29. Shi, Y.; Hou, Y.T.; Liu, J.; Kompella, S. Bridging the Gap between Protocol and Physical Models for Wireless Networks. IEEE Trans. Mob. Comput. 2013, 7, 1404–1416. [Google Scholar] [CrossRef]
  30. Garey, M.R.; Johnson, D.S. Computers and Intractability: A Guide to the Theory of NP-Completeness; W. H. Freeman: New York, NY, USA, 1983; pp. 32–58. ISBN 9780716710455. [Google Scholar]
  31. Gupta, P.; Kumar, P.R. The Capacity of Wireless Networks. IEEE Trans. Inf. Theory 2000, 2, 388–404. [Google Scholar] [CrossRef]
Figure 1. An example of the interference in the FD model. (a) node c is not in the interference range of node a (b) node c is in the interference range of node a.
Figure 1. An example of the interference in the FD model. (a) node c is not in the interference range of node a (b) node c is in the interference range of node a.
Sensors 18 04301 g001
Figure 2. Topological structure of a multi-hop random network.
Figure 2. Topological structure of a multi-hop random network.
Sensors 18 04301 g002
Figure 3. The division by the Varonoi graphic algorithm (a) b 1 and b 2 are two base stations in the network topology (b) the Varonoi polygon of b 1 .
Figure 3. The division by the Varonoi graphic algorithm (a) b 1 and b 2 are two base stations in the network topology (b) the Varonoi polygon of b 1 .
Sensors 18 04301 g003
Figure 4. Identify the minimum hop distance for all nodes.
Figure 4. Identify the minimum hop distance for all nodes.
Sensors 18 04301 g004
Figure 5. Time slot assignment for a new link s i s j .
Figure 5. Time slot assignment for a new link s i s j .
Sensors 18 04301 g005
Figure 6. Increase bottleneck node s i ’s throughput.
Figure 6. Increase bottleneck node s i ’s throughput.
Sensors 18 04301 g006
Figure 7. The 10-node, 2-base-station network and schemes in the three different techniques (a) The 10-node 2-base station wireless network. (b) Routing and time slot allocating scheme for interference avoidance. (c) Routing and time slot allocating scheme for SIC-only. (d) Routing and time slot allocating scheme for full-duplex.
Figure 7. The 10-node, 2-base-station network and schemes in the three different techniques (a) The 10-node 2-base station wireless network. (b) Routing and time slot allocating scheme for interference avoidance. (c) Routing and time slot allocating scheme for SIC-only. (d) Routing and time slot allocating scheme for full-duplex.
Sensors 18 04301 g007
Figure 8. More comparisons for different number of nodes and base stations (a) 2 base stations. (b) 3 base stations. (c) 4 base stations. (d) 5 base stations.
Figure 8. More comparisons for different number of nodes and base stations (a) 2 base stations. (b) 3 base stations. (c) 4 base stations. (d) 5 base stations.
Sensors 18 04301 g008
Figure 9. The fitting curve for the number of the nodes and the actual run-time (a) 2 base stations. (b) 3 base stations. (c) 4 base stations. (d) 5 base stations.
Figure 9. The fitting curve for the number of the nodes and the actual run-time (a) 2 base stations. (b) 3 base stations. (c) 4 base stations. (d) 5 base stations.
Sensors 18 04301 g009
Table 1. The coordinates (in m) and the r ( s i ) value (in kbps) of each node in the network.
Table 1. The coordinates (in m) and the r ( s i ) value (in kbps) of each node in the network.
iCoordinates r ( s i ) iCoordinates r ( s i )
1(425, 462)837.266(293, 638)302.43
2(402, 638)449.897(617, 425)550.01
3(687, 711)619.558(474, 772)578.13
4(713, 984)204.029(995, 1017)189.43
5(801, 903)112.9510(301, 469)167.50

Share and Cite

MDPI and ACS Style

Shi, L.; Li, Z.; Bi, X.; Liao, L.; Xu, J. Full-Duplex Multi-Hop Wireless Networks Optimization with Successive Interference Cancellation. Sensors 2018, 18, 4301. https://doi.org/10.3390/s18124301

AMA Style

Shi L, Li Z, Bi X, Liao L, Xu J. Full-Duplex Multi-Hop Wireless Networks Optimization with Successive Interference Cancellation. Sensors. 2018; 18(12):4301. https://doi.org/10.3390/s18124301

Chicago/Turabian Style

Shi, Lei, Zhehao Li, Xiang Bi, Lulu Liao, and Juan Xu. 2018. "Full-Duplex Multi-Hop Wireless Networks Optimization with Successive Interference Cancellation" Sensors 18, no. 12: 4301. https://doi.org/10.3390/s18124301

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop