Next Article in Journal
Close-to-Convexity of q-Bessel–Wright Functions
Next Article in Special Issue
Automatic Creation of 3D Documentation in CAD/BIM Based on Topology
Previous Article in Journal
Theorems of Common Fixed Points for Some Mappings in b2 Metric Spaces
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

A D2D Group Communication Scheme Using Bidirectional and InCremental A-Star Search to Configure Paths

1
Department of Computer Science and Engineering, National Sun Yat-sen University, Kaohsiung 80424, Taiwan
2
Department of Electronic Engineering, National Kaohsiung University of Science and Technology, Kaohsiung 807618, Taiwan
*
Author to whom correspondence should be addressed.
Mathematics 2022, 10(18), 3321; https://doi.org/10.3390/math10183321
Submission received: 4 August 2022 / Revised: 6 September 2022 / Accepted: 9 September 2022 / Published: 13 September 2022

Abstract

:
The Device-to-Device (D2D) communication introduced in 3GPP’s Release 12 is a promising option for the accommodation of increasing traffic demand and the alleviation of core networks’ loading. The D2D communication mode prevails in scenarios where mobile users in proximity form a communication group sharing the same interest in digital content. A user can download intended content from peers in the same communication group rather than from the Internet via the base station. This article addresses the routing issue within D2D communication groups. It is, in effect, a path selection problem. We define a utility function considering both delay and throughput. The path selection problem can be formulated as an NP-hard optimization problem. A Bidirectional and InCremental A-star (BICA*) algorithm incorporating the concept of bidirectional search and lifelong planning is developed to tackle the NP-hard optimization problem. Simulations reveal that the proposed approach outperforms existing ones in terms of less delay, higher throughput, and higher satisfaction ratio. The Greedy approach, Two-Stage Relay Selection (TSRS), and the standard A* algorithm were included in the comparative study. The throughput improvements of the proposed scheme are up to 23% and 46.5% compared to TSRS and Greedy, respectively. The proposed scheme possesses the lowest delay and the highest satisfaction rate, among others. With less computational time, the proposed BICA* is more responsive than the standard A* in dynamic environments.

1. Introduction

Mobile communication is an ongoing trend in information exchange and distribution. Mobile traffic grows exponentially. Overall, IP traffic is expected to grow to 396 EB per month by 2022 [1]. Numerous technologies have been introduced to support higher data rates for a given spectrum along with the evolution of mobile communication. Nowadays, the data rate can be up to 1G bps for 4G (Long-Term Evolution—Advanced, LTE-A) networks [2]. There has been a significant improvement in spectrum efficiency. However, faced with ever-increasing traffic demand, we keep pursuing new measures for even better spectrum efficiency. In addition to new modulation technology, new paradigms, such as Dense Small Cell Network and Device-to-Device (D2D) Communication, offer promising solutions to the challenge.
Figure 1 gives an intended environment for the D2D communication mode addressed in 3GPP’s Release 12 [2]. Users in proximity form a communication group. It is not uncommon for communication group members to share a common interest in particular digital content [3]. If a group member already possesses a particular content, other members can download the content from the possessing member rather than from the Internet via a base station. The D2D communication mode is designed for direct communications with nearby User Equipment (UE) without the intervention of base stations. It implies a higher data rate, a better spectrum efficiency, and a lower base station loading.
The idea of D2D communication brings about 3GPP ushering in Proximity Service (ProSe). There are different approaches to the implementation of D2D communication, including Wi-Fi Direct, Bluetooth, and LTE Direct. We focus on D2D communication with LTE Direct in this paper. Figure 2 illustrates the difference between regular cellular communication and LTE D2D communication. With LTE D2D, UEs can communicate with each other directly. The base station is only responsible for the coordination. LTE D2D has great potential for many reasons, including lower base station loading, lower power consumption, improved resource utilization, reduced delay, and improved QoS (Quality of Service) support [4].
There are essential issues in LTE D2D, such as device discovery, mode selection, resource allocation, and group communication. Device discovery is the process of finding matched devices. There are two different device discovery approaches, distributed and centralized approaches [5]. UEs initiate the former, and the latter is controlled by the Mobility Management Entity (MME), the Packet Data Network Gateway (PDN-GW), and the base station. LTE has two different operation modes, namely cellular mode and D2D mode. The D2D mode is further classified into the dedicated mode and reuse mode. These two modes differ in the way resource blocks are allocated. Cellular UEs and D2D UEs in reused mode share the same resource blocks. On the other hand, in dedicated mode, UEs use resource blocks exclusively assigned to them. Which mode should be in use leads to the resource allocation problem, which is a tradeoff between resource utilization and interference.
Intra-group communication (group communication for short) is the primary scenario in this study. As shown in Figure 1, nearby UEs can form a group and are capable of group communication with each other. A UE in a group can access content possessed by other group members via group communication. Genuinely, group communication can improve the overall efficiency of the entire network environment [6]. There may exist a group leader in each group. A group leader will be in charge of the group resources’ bookkeeping and coordination with the base station [7]. The presence of group leaders further reduces the loading of base stations. The hop-count in data transmission also affects the efficiency of group communication. Several alternative paths may exist from a source UE to a destination UE. A single-hop, long-distance transmission link may experience low bandwidth due to a low Signal-to-Noise Ratio (SNR). On the other hand, multi-hop, short-distance transmission links may suffer from longer delays [8]. Therefore, finding the best route between UEs in a group is a critical issue that deserves further investigation.
This study contributes to the group routing problem, that is, finding the best path from a source UE to a destination UE with consideration of both lowering the delay and raising the throughput. More specifically, in this study
  • A utility function of D2D paths is defined considering both delay and throughput.
  • Finding the best path is formally formulated as an NP-hard problem.
  • A Bidirectional and InCremental A-star (BICA*) algorithm incorporating the concept of bidirectional search and lifelong planning is developed to tackle the NP-hard search problem.
  • A series of simulations are conducted to verify the feasibility and effectiveness of the proposed approach.
The rest of this paper is organized as follows. Previous works on D2D communication and related technology are briefly reviewed in Section 2. We define the network model and formulate the route planning as an NP-hard optimization problem in Section 3. Then, our Bidirectional and InCremental A-star algorithm (BICA*) for group communication is presented in Section 4 with an in-depth explanation and discussion. A series of simulations validating our approach’s feasibility and effectiveness is presented in Section 5. Finally, some conclusions are drawn in Section 6.

2. Related Works and Technology

Numerous works have been devoted to D2D communications from different perspectives. Adnan and Zukarnain [9] address issues, solutions, and challenges in D2D communication in 5G environments. Gismalla et al. [10] provide a comprehensive survey on D2D communication, featuring basic concepts, target applications, potential challenges, and future directions. Among other issues, routing in D2D networks has received considerable attention due to its important role in system performance. In [11], Shaikh and Wismüller present an excellent review of recent advances in D2D routing technology. They classify use cases into three classes: multi-hop D2D routing, multi-hop D2I/I2D routing, and ad hoc routing. Focusing on multi-hop D2D routing, our work differs from others in that we formulate the overall route planning problem as an NP-hard optimization problem and approach the real-time routing problem using an integrated bidirectional and lifelong-planning A* algorithm. Our approach furnishes valuable insight into the D2D routing problem and develops a method from a new perspective by incorporating classical wisdom.
Studies [12,13,14] show that group communication has become a common form of mobile networking. Mobile users in proximity form a communication group partaking in the same interest in some digital content. Once a user has downloaded a particular content, the other users can download the content from the user via D2D group communication without the need for cellular communication. These observations imply that an efficient D2D group communication scheme, as the focus of this study, is essential for future mobile networking.
A number of works contributed to D2D group communication. An early work [15] analyzes the performance difference between multi-hop and single-hop transmission. However, the path selection problem was not properly addressed. In [16], message forwarding is completed by broadcasting. By doing so, the number of control messages can be significantly reduced. However, it can also introduce a broadcast storm problem. Our approach adopts a unicast scheme. We define the cost for individual transmission links and then find a path with the least cost. In [17], a UE with less interference is selected as the relay UE. The approach may not have the optimal outcome, since the systemic relationship among the sender, relay, and receiver is not accounted for. The study in [18] takes into consideration the location of UEs. The coverage of a base station is partitioned into five regions. The region close to the base station is excluded from the selection due to severe interference. Their approach prefers a relay located in the same region a sender resides in. Both [17,18] had achieved their objectives. Nevertheless, both schemes did not consider that a single-hop relay may fail to fulfill the forwarding need, so a multiple-hop relay is required to complete the forwarding. A multi-hop relay path is needed to accomplish the transmission task. Finding a relaying path (a route) with less cost for D2D group communication is the core issue of D2D communication [19,20,21].
To facilitate multi-hop D2D communications in 5G networks, a framework for virtual mesh networking is created in [19]. Base stations gather terminal link and topology data before creating a virtual mesh network among the terminals in accordance. The virtual mesh routing method, which also considers terminal mobility and connection failure, then chooses the routing path for end-to-end communications. In order to provide D2D content sharing with multi-hop communication capabilities, Zhang et al. [20] suggest a game theoretic strategy. The routing and price graphs are produced by modeling a Nash bargaining game with a subset of players, where a novel incentive mechanism is used to encourage cooperation. Ahmed modifies the standard DSR (Dynamic Source Routing) protocol in [21] to allow for quick routing decisions. The suggested protocol saves the control messages of devices during the route-finding process by having a minimal overhead compared to the standard DSR in terms of the number of control messages in the D2D communication. This study regards the D2D routing problem as the shortest (with the least delay and the maximal throughput) path problem and tackles it with a Bidirectional, InCremental A* algorithm for responsiveness.
Social awareness is another discussion-provoking issue. Certain incentives are presumed such that an individual UE will be willing to forward packets to others at the cost of increased power consumption. Ometov et al. [22] have an in-depth discussion on this matter. This study assumes a social incentives framework. That is, UEs in the same group have a strong social bond and are willing to help each other. Typical examples include field trips to schools, social engagement events of organizations, and so forth.
There are two well-known routing algorithms for network routing: namely, the link-state algorithm and the distance-vector algorithm [23]. With link-state routing, every router exchanges its link status information with all other routers in the autonomous system. The Dijkstra algorithm is then employed to find out the shortest paths. In distance-vector routing, each router exchanges link status information with its direct neighbors. The topology information will gradually be propagated to all routers in an autonomous system. This study adopts an approach enlightened by link-state routing. As we shall see in the later discussion, the route planning for D2D group communication can be formulated as an NP-hard problem. Instead of utilizing the Dijkstra algorithm directly, we render the algorithm in the routing plan by comprising two modified A* algorithms, namely Bidirectional Search A* algorithm (BSA*) [24] and Lifelong Planning A* algorithm (LPA*) [25].
The A* algorithm incorporates the idea of the Best-First Search and Dijkstra algorithm. During the search, the A* search expands an intermediate node, n , with a minimal cost, as follows:
f n = g n + h n
where g n is the actual cost from the start node to node n ; h n is a heuristically estimated cost from node n to the goal node. The A* algorithm was pioneered by Peter Hart, Nils Nilsson, and Bertram Raphael in 1968 [26], which ensures an optimal path if h n is less or equal to the real cost from node n to the goal node. After that, a long list of variants with different appeals had been proposed, including Beam Search A* [27], Iterative Deeping A* [28], Dynamic Weighting A* [29], and Jump Point Search A* [30].
Among all variants, Bidirectional Search A* (BSA*) and Lifelong Planning A* (LPA*) draw our attention to their potential in our framework. As its name implied, BSA* constructs search trees from both the start and the goal nodes in opposite directions. The search terminates when the search trees intersect in reverse directions. It is evident that BSA* is capable of speeding up the search process. LPA* is an incremental version of the A* algorithm, which would adapt to changes in the search tree without recalculating the entire search tree. Upon the detection of topological change, it merely updates the g n from the previous search without reconstructing the entire search tree. This feature endows LPA* with the ability to quick reaction in response to topological change.
A review of these works leads to the architectural design of our routing scheme for D2D group communication. The path selection problem can be formulated as an optimization problem with delay and throughput as its cost function. The optimization problem is then resolved by an advanced BICA* algorithm consolidating the concept of bidirectional search and lifelong planning.

3. Problem Formulation

Figure 3 shows a typical scenario for the mobile networking environment we intend. There is a macro-cell base station and a number of UE groups. Each UE device is equipped with a storage device. UEs in the same group share the same interest in digital content and are willing to share them with group members. Each group has a group header that keeps track of the availability of digital content in the group. UE can consult the header for the availability of a particular content whenever needed.
There are four possible situations when a UE requests a particular content, as follows:
  • No one in the group possesses the content.
  • The content is possessed by another member of the same group, and delivery of the content via D2D group communication is within the delay constraint.
  • Another group member possesses the content. However, delivery of the content via D2D group communication exceeds the delay constraint.
  • The content is possessed by another group member. However, neither delivery of the content via D2D group communication nor cellular communication can meet the delay constraint.
For situations 1 and 3, the content will be downloaded from the core network via cellular communication. For situations 2 and 4, our approach will play its role and determine the best route for the D2D group communication.
We assume that within one macro-cell base station, there are s groups, k contents, and   n UEs, where   s 1 , 2 , 3 , , S ,   k 1 , 2 , 3 , , K , and n 1 , 2 , 3 ,   ,   N . To evaluate the preference of a path, we define a utility function considering both throughput and delay. The utility for the path with which UE i downloads content k from UE j is defined as follows:
Ų t o t a l i , k , j = α · Ų d e l a y i , k , j · 1 + β · Ų t h r i , k , j
where Ų d e l a y i , k , j and Ų t h r i , k , j are the utility values from the normalization of delay and throughput, respectively; α and β are weighting coefficients for delay and throughput, respectively; 0   α ,   β < 1 and α + β = 1 . We prefer a path with less delay, therefore, there is a 1 factor for Ų d e l a y i , k , j in Equation (2).
Delay and throughput are different measurement benchmarks. Normalization is required for the utility function to be meaningful. T-score, as follows, is used in our normalization:
T = 10 · x μ σ + 50
The utilities for delay and throughput can then be defined as follows:
Ų d e l a y i , k , j = 10 · D i , k , j μ D σ D + 50
Ų t h r i , k , j = 10 · T i , k , j μ T σ T + 50
where D i , k , j and T i , k , j are the delay and the throughput of the path with which UE i downloads content k from UE j ; μ D and μ T are the mean delay and mean throughput; σ D and σ T are the standard deviations of delay and throughput.
We are interested in the route planning for D2D group communication in the environment, that is, the maximization of the overall utility of the entire environment. This problem can be formulated as a constrained optimization problem:
max k = 1 K i = 1 N j = 1 N Ų t o t a l i , k , j · x i , j   k = m a x   k = 1 K i = 1 N j = 1 N ( α · Ų d e l a y i , k , j · 1 + β · Ų t h r i , k , j ) · x i , j k
s.t.
k = 1 K i = 1 N x i j k 1 ,   j = 1 , 2 , , N ,   i     j
k = 1 K j = 1 N x i j k 1 ,   i = 1 , 2 , , N ,   i     j
x i j k z i j k ,   i , j = 1 , 2 , , N
i = 1 N x i u k = j = 1 N x u j k , k = 1 , 2 , , K   ,   u = 1 , 2 , , N ,   u i , j
D d e l a y i , k , j   D t h k , k = 1 , 2 , , K   ,   i , j = 1 , 2 , , N
x i j k   0 , 1 , k = 1 , 2 , , K   ,   i , j = 1 , 2 , , N
z i j k   0 , 1 , k = 1 , 2 , , K   ,   i , j = 1 , 2 , , N
0 α , β < 1
α + β = 1
where D th k is the delay constraint for content k ; z i j k   and   x i , j k are indicator functions. z i , j k is 1 if the Signal to Interference plus Noise Ratio (SINR) of the path from UE i to UE j meets the minimal requirement of content k , and it is 0 otherwise. x i , j k is 1 if UE i downloads content k from UE j with a satisfied SINR ratio ( z i , j k = 1 ) , and it is 0 otherwise.
Equations (7) and (8) indicate that content k will pass through UE i and UE j at least once. Equation (9) is to ensure that the SINR of the path from UE i to UE j meets the minimal requirement of content k . Equation (10) implies the conservation of flow. UE u is an intermediate node on the path between UE i and UE j . Any content entering UE u will be forwarded toward its destination. Equation (11) shows that the time UE i takes in downloading content k from UE   j must meet the delay constraint of content k .
The routing problem for group communication defined in Equation (6) is an NP-hard problem. It is equivalent to the Open Vehicle Routing Problem (OVRP), which had been proved to be an NP-hard problem. OVRP originated from the Vehicle Routing Problem (VRP) introduced by G. B. Dantzig and J. H. Ramser in 1959 [31]. The difference for OVRP is that vehicles need not return to the service center after delivery. In a VRP, there are several customers, each having merchandise needs. A distribution center serves customers with a vehicle fleet. The object is to plan the routes for vehicles with minimal total cost. An OVRP can be formulated as follows:
m i n k = 1 K i = 1 N j = 1 N C i , j k x i , j   k
s.t.
k = 1 K i = 1 N x i j k   1 ,   j = 1 , 2 , , N ,   i     j
k = 1 K j = 1 N x i j k   1 ,   i = 1 , 2 , , N ,   i     j
x i j k z i j k ,   i , j = 1 , 2 , , N
i = 1 N x i u k = j = 1 N x u j k , k = 1 , 2 , , K   ,   u = 1 , 2 , , N ,   u i , j
i = 1 N q i k   G k , k = 1 , 2 , , K
x i j k   0 , 1   , k = 1 , 2 , , K   ,   i , j = 1 , 2 , , N
z i j k   0 , 1 , k = 1 , 2 , , K   ,   i , j = 1 , 2 , , N
where i and j are indices for customers; k is the index for vehicles; C i , j k is the cost it takes for vehicle k to travel from customer i to customer j . x i , j k and z i j k are indicator functions. x i , j k is 1 if vehicle k takes the path from customer i to customer j , and it is 0 otherwise. z i , j k is 1 if vehicle k can pass through customer i and customer j , and it is 0 otherwise. G k is the capacity of vehicle k . q i k is the weight of customer i ’s merchandise on vehicle k .
Equations (17) and (18) indicate that vehicle k will pass through customer i and customer j at least once. Equation (19) is to ensure that the vehicle serving customer i and customer j must be valid. Equation (20) implies the conservation of flow. Equation (7.521) says the total weight of all merchandises on vehicular k cannot exceed the capacity of vehicle k .
The maximization problem in Equation (6) can be easily transformed into a minimization problem by multiplying the right side with ( 1).
max k = 1 K i = 1 N j = 1 N ( α · Ų d e l a y i , k , j · 1 + β · Ų t h r i , k , j ) · x i , j k   = min k = 1 K i = 1 N j = 1 N ( α · Ų d e l a y i , k , j + β · Ų t h r i , k , j · 1 ) · x i , j k   = min k = 1 K i = 1 N j = 1 N C i , j k x i , j   k
Content k in Equation (6) is corresponding to vehicle k in Equation (16). Equations (9) and (19) can be viewed as the counterpart of each other in these two problems. The delay constraint in Equation (6) is equivalent to the capacity constraint in Equation (19). That is, the two problems are equivalent, and our problem also belongs to the class of NP-hard problems.

4. D2D Group Communication Scheme with Bidirectional and InCremental A-Star (BICA*) Routing

A path can be established if the SINR threshold constraint is satisfied. For a multi-hop path, the overall data rate is determined by the hop with the worst SINR. For example, we consider a two-hop path:
γ i , j = min γ i , r , γ r , j = min P i · P L i , r I i + N 0 , P r · P L r , j I r + N 0
where γ i , j is the SINR from UE i to UE j ; γ i , r is the SINR from UE i to relay r ; γ r , j is the SINR from relay r to UE j ; P i and P r are transmission powers of UE i and relay r; P L i , r is the path loss from UE i to relay r ; P L r , j is the path loss from relay r to UE j ; I i and I r are interference powers experienced by UE i and relay r ; N 0 is the noise. γ i , j should be larger than the SINR threshold, γ th .
The D delay i , k , j in Equation (4) consists of three parts: propagation delay, transmission delay, and processing delay. The j can be a UE or a base station. We consider first that the case j is a UE.
D d e l a y i , k , j = D p r o p i , k , j + D t r a n s i , k , j + D p r o i , k , j
The propagation delay   D p r o p i , k , j can be evaluated according to:
  D p r o p i , k , j =   m = 1 h o p i , j l m     c
where l m is the length of an individual hop on the path from UE i to UE j ; c is the speed of the radio wave. l m should be small than l max , which is the maximal transmission range for D2D communication.   T t r a n s i , k , j can then be evaluated according to:
  D t r a n s i , k , j = S k · N r   W · log 1 + γ i , j    
where S k is the packet size; N r is the number of transmissions; W is the bandwidth.
The processing delay, D proc i , k , j , depends on the computing power of a node. According to [32], the typical measurement of T proc i , k , j is around 1 ms, and it can be neglected in most applications.
We now consider the case UE i downloading content k from the base station. The reasoning and derivation are similar to the previous case.
D d e l a y i , k , e N B = D p r o p i , k , e N B + D t r a n s i , k , e N B + D p r o c i , k , e N B
  D p r o p i , k , e N B =   L i , e N B   c  
  D t r a n s i , k , e N B = S k · N r   W · log 1 + γ i , e N B  
where L i , e N B is the distance between UE i and the base station; γ i , e N B is the SINR from UE i to the base station.
As for the evaluation of throughput, T thr i , k , j , in Equation (5), we follow the Shannon capacity equation, as shown in Equation (16):
T t h r i , k , j = W · log 2 1 + γ i , j

4.1. Control Flow of D2D Group Communication

When a UE requests a particular content, the proposed D2D group communication scheme will be invoked to find the best path to the content with maximal utility. The control flow for the proposed routing scheme for D2D group communication is given in Figure 4.
A member UE consults its group header for the availability of certain content. The header will execute a decision procedure, which will be discussed in the next subsection, to decide whether the content should be downloaded from the possessing UE or the core network. If it is preferred to download the content from the possessing UE, the header will inform the requesting UE, relay UEs, and possess UE to conduct the content delivery. After the completion of the delivery, the requesting UE may retain the content in its storage and report to the group header. A signaling diagram for such a D2D intra-group communication is given in Figure 5. On the other hand, if no one in the group possesses the content or downloading the content via D2D intra-group communication fails to meet the delay constraint, the group header will instruct the requesting UE to download the content from the eNB if the eNB holds onto the requested content or the core network if the eNB cannot provide the content. The signaling of downloading data from the eNB is straightforward and omitted here. The signaling diagram is given in Figure 6 [33] for downloading content from the core network.
Upon receiving a request for content k from UE i , the group header has to decide whether the content should be downloaded from the base station or from possessing UE j . The group header answers this question by the evaluation and comparison of Ų t o t a l i , k , e N B and Ų t o t a l i , k , j , and it follows the decision procedure in Figure 7. The evaluation of Ų t o t a l i , k , e N B is straightforward, while the evaluation of Ų t o t a l i , k , j is much more involved. The path selection algorithm, discussed in the next subsection, will be invoked for the evaluation of Ų t o t a l i , k , j . The path selection algorithm is designed to determine the best path connecting UE i and UE j with maximal utility. The group header will instruct involved parties to download content k from the base station if Ų t o t a l i , k , e N B Ų t o t a l i , k , j , and download content k from UE j otherwise.

4.2. Path Selection Algorithm

The path selection algorithm discussed in this subsection is the core component of the proposed scheme. It answers the question of whether content sharing via D2D group communication is preferred over downloading content from the core network. It constructs a path connecting UE i and UE j with the maximal utility and reports the obtained utility value to the group header for its decision making.
The topology of a UE group can be represented by an undirected graph with UEs as nodes and links as edges. Search algorithms, such as the Dijkstra algorithm, can then be employed to find the shortest path between two given nodes. However, an exhaustive examination of all nodes could be time-consuming. Therefore, we adopt a Bidirectional, inCremental A* (BICA*) algorithm in our routing scheme, as shown in Algorithm 1. Radio links would be, in most situations, symmetric, so it is feasible for the bidirectional A* algorithm to construct the search trees from both sides, with which the search speed can be doubled. The lifelong-planning A* algorithm is an incremental version of the A* algorithm. This feature makes it well-suited for dealing with topology change, which is quite often in mobile networking. It repeatedly finds the shortest paths from a given start node to a destination node, while the edge costs of a graph change or vertices are added or deleted. Its first search is the same as that of a standard A* that breaks ties in favor of nodes with smaller g -values. However, subsequent searches are potentially faster because they reuse those parts of the previous search tree that are not changed. The symbols used in Algorithm 1 are defined as follows:
  • S : Set of all nodes.
  • v s , s : The utility from node s to node s .
  • g s : The actual utility from the start node to node s . It can be evaluated according to
    g s = 0 , s = S t a r t max s predecessor   of   s g s ' + v s , s , otherwise .
  • r h s s : The actual utility from the start node to node s is evaluated according to the right-hand side rule [25]. It differs from g s in the timing of evaluation. In the algorithm, r h s s will be reevaluated and compared with previous g s . A mismatch is an indication of topological change. It can be evaluated according to
    r h s s = 0 , s = S t a r t max s predecessor   of   s g s ' + v s , s , otherwise .
  • h s : The estimated utility from node s to the goal node. We use the real distance from node s to the goal node multiplied by 1 .
  • k e y s = k 1 s ;   k 2 s = max g s , r h s s + h s ;   max g s , r h s s is the key values at node s . It is used to decide which node in the priority queue should be expanded first. The comparison is made in lexicographical order. That is, we compare k 1 s first. If two nodes have the same k 1 s , we then compare k 2 s . The philosophy behind the lexicographical order comparison is that when two nodes in the queue have the same k 1 s value, we prefer the node with a higher max g s , r h s s , which is supposed to be a more reliable estimation of the remaining route.
  • U : Priority queue of nodes sorted according to their k e y s ’s.
In the Bidirectional, InCremental A* path selection algorithm, BICA*, in Algorithm 1, variables are initialized in Lines 1 to 8. Inputs Start and Goal are the start node and the goal node, respectively. Set S consists of all nodes. Since high utility is preferred, these variables are initialized to . The first half of the condition expression in Line 10 is to check out if the termination condition is met. The second half is to examine the consistency of the r h s value and g value to determine if there is any topology change. Lines 11 and 12 expand the priority queues for forward and reverse searches, respectively. Line 13 checks if both forward and reverse searches reach the same node. If they do, it means that a path with maximal utility has been found. Lines 16 to 26 implement forward search. Whenever there is any topology change, Function 1, Node Information Update Function, is invoked to update the node’s r h s value. Those successors of the updated node should be removed from the priority queue. Their key values will be updated by Function 2, Key Evaluation Function, and then placed back in the priority queue. Line 22 initializes g values, and Function 1 is then called to assess g values by Lines 23–25. Lines 27 to 37 implement the reverse search.
Algorithm 1. Bidirectional, InCremental A* Path Selection Algorithm (BICA*).
Input: S t a r t , G o a l , S
1:Initialize U s t a r t ; U g o a l
2:for each node s S do
3: s . g s t a r t ; s . g g o a l ;   s . r h s s t a r t ; s . r h s g o a l
4:end
5: S t a r t . r h s s t a r t 0 ; G o a l . r h s s t a r t 0
6: S t a r t . k e y s t a r t 0 , 0 ; S t a r t . k e y g o a l 0 , 0
7:Insert Start into the priority queue U s t a r t
8:Insert Goal into the priority queue U g o a l
9:while true do
10:while U s t a r t . t o p G o a l   o r   U g o a l . t o p S t a r t   o r
   G o a l . r h s s t a r t G o a l . g s t a r t   o r   S t a r t . r h s g o a l S t a r t . g g o a l do
11: p o p s t a r t Pop the top node of the queue U s t a r t
12: p o p g o a l Pop the top node of the queue U g o a l
13:if p o p s t a r t = p o p g o a l then
14:  break//Rendezvous from opposite directions
15:end
16:if p o p s t a r t . g s t a r t > p o p s t a r t . r h s s t a r t then
17:    p o p s t a r t . g s t a r t p o p s t a r t . r h s s t a r t
18:  for all node s ' which is a successor of p o p s t a r t do
19:   Update information of node s by NodeInformationUpdate( · )
20:  end
21: else
22:    s . g s t a r t
23:  for each node s ' which is a successor of p o p s t a r t and p o p s t a r t itself do
24:   Update information of node s ' by NodeInformationUpdate( · )
25:  end
26:end
27:if p o p g o a l . g g o a l > p o p g o a l . r h s g o a l then
28:    p o p g o a l . g g o a l p o p g o a l . r h s g o a l
29:  for each node s ' which is a successor of p o p s t g o a l a r t do
30:   Update information of node s by NodeInformationUpdate( · )
31:  end
32:else
33:    s . g g o a l
34:  for each node s ' which is a successor of p o p g o a l and p o p g o a l itself do
35:   Update information of node s by NodeInformationUpdate( · )
36:  end
37:end
38: end
39: while some edge’s cost has changed do
40:  Update the cost of changed nodes
41:  Update information of changed nodes by NodeInformationUpdate( · )
42:end
43: end
Function 1. NodeInformationUpdate Function.
Input: s
1:if  s is in search from S t a r t to G o a l  then
2:if  s     S t a r t  then
3:    s . r h s s t a r t = max s predecessor   of   s s ' . g s t a r t + cos t   from   s to   s
4:end
5:if  s U s t a r t  then
6:  Remove s from U s t a r t
7:end
8:if  s . g s t a r t s . r h s s t a r t  then
9:  Evaluate s . k e y s t a r t by KeyEvaluation( · )
10:  Insert s into the priority queue U s t a r t
11:end
12:else
13:if  s     G a o l  then
14:    s . r h s g o a l = max s predecessor   of   s s ' . g g o a l + cos t   from   s to   s
15:end
16:if  s U g o a l  then
17:  Remove s from U g o a l
18:end
19:if  s . g g o a l s . r h s g o a l  then
20:  Evaluate s . k e y g o a l by KeyEvaluation( · )
21:  Insert s into the priority queue U g o a l
22:end
23:end
Function 2. KeyEvaluation Function.
Input: s
1:if s is in search from S t a r t to G o a l then
2: s . s s t a r t Evaluate V a l u e total s , s t a r t of the path from S t a r t to node s by (2)
3: s . h s t a r t Estimated value from s to G o a l
4: k e y max s . s s t a r t , s . r h s s t a r t + s . h s t a r t ; max s . s s t a r t , s . r h s s t a r t
5:else
6: s . s g o a l Evaluate V a l u e total s , g o a l of the path from G o a l to node s by (2)
7: s . h g o a l Estimated value from s to s t a r t
8: k e y max s . s g o a l , s . r h s g o a l + s . h g o a l ; max s . s g o a l , s . r h s g o a l
9:end
10:return k e y
It is worthwhile to point out that during the process of path construction, r h s and g values will be the same if there is no topology change. On the other hand, the r h s value will be updated by Line 3 of Function 1 and leads to different r h s and g values. A node with inconsistent r h s and g values will be placed into the priority queue. Function 1 calls Function 2 for the evaluation and updating of k e y s = k 1 s ;   k 2 s .
Here, we have two examples to illustrate the concepts of BICA*. For the sake of clarity, we assume smaller key values are preferred. Figure 8 is an example of the bidirectional search of BICA*. Figure 8a shows the commencing of the search. On the right of Figure 8a, the search begins at the upper right corner and ends at the lower-left corner. On the left of Figure 8a, the search begins at the lower-left corner and ends at the upper-right corner. Figure 8b shows the result of the first expansion. The upper right corner has two direct neighbors with key values [6:1] and [5:1]. The search procedure compares k 1 first and then k 2 to decide which node should be expanded. Therefore, it expands downward, as shown in Figure 8c. Similarly, the lower-left corner expands upright. As the bidirectional search proceeds to the state in Figure 8d, on the right, two nodes are having the same k 1 value [6:3] and [6:1]. Since the k 1 values are the same, we expand the node with smaller k 2 values. So, the node with the key value [6:1] is expanded in Figure 8e. After five expansions, searches from both directions converge at the circled node in Figure 8f and accomplish the bidirectional search.
Figure 9 shows how BICA* helps to deal with topological change. For the sake of clarity, we consider a unidirectional search from the upper right to the lower left. Figure 9a is an established path according to the BICA* algorithm. If the gray node failed for some reason, the inconsistency between g and r h s values is an indication of link rupture. Nodes after the failed node will be marked as unreachable, as indicated in Figure 9c and then Figure 9d. With BICA*, the search needs not be restarted from scratch. Instead, the search can be resumed from the state as shown in Figure 9e, backtracking to states where the search can be carried on. The time it takes for path repair can be significantly reduced.

5. Performance Evaluation

A series of simulations are conducted to validate the feasibility and effectiveness of the proposed approach. Simulations are conducted using Matlab with the environmental and parameter settings listed in Table 1. We compare the proposed scheme with existing approaches from various perspectives, including delay, throughput, executing time, and satisfaction ratio.
Figure 10 shows the scenario of our simulation. There is one macro cell and four UE groups. The radius of the macro cell is 500 m. Groups are randomly distributed within the coverage of the macro cell. Group members are randomly generated to be within the radius of the group center. Members of a group prefer the same content type. A member UE moves randomly within the range of a group. Group mobility is also considered in the simulation. We adopt the Reference Point Group Mobility (RPGM) model [34]. For instance, if a group has a moving vector R , a member UE of the group has a randomly generated moving vector K , and the net moving vector for the UE will be R + K .
We consider three different content types in our study. They are text, music, and video. Each type has 200 instances in the simulation with a QCI (QoS Class Identifier) value and delay budget specified in Table 2. The size of each content instance is within specified minimal and maximal values. The distribution of contents follows Zipf’s Law [37], that is, the frequency of the n -th frequent content is one-tenth of the frequency of the most frequent content. During the simulation, for every 10 ms, a UE issues a content request. A UE would not request contents it already possessed. The request reaches the header first. The header will take care of the request according to the procedures and algorithms discussed in previous sections.
For comparative study, we also implement Greedy, Two-Stage Relay Selection (TSRS) [18], and a standard A* algorithm in our simulation. In a Greedy scheme, a node always picks up, from its neighbors, the node nearest to the target as its relay. TSRS finds a relay in between, and with equal distance to, the sender and receiver. If this relay cannot receive correctly, the approach will consider another relay between the sender and the first relay. If this relay fails again, it will consider another relay between the first relay and the receiver. The procedure repeats until a path is established.
We compare the performance of four approaches based on a number of performance metrics, including throughput, delay time, average hop-count, and satisfaction rate. We also examine the effects of different factors, such as the number of UEs, speed of movement, longest D2D link, and group size.
Figure 11 presents the throughput for different numbers of UEs when the UEs remain stationary. A* and our approach, which take into account the channel conditions, outperform Greedy and TSRS, which consider only geographic information. The interference is less severe when there are only a small number of UEs. Therefore, there is less performance difference among different approaches. As the number of UEs increases, the performance difference is displayed.
Figure 12 shows the throughput for different group sizes. There are 40 UEs in each group. There is a greater chance for path rupture for a larger group radius and, therefore, more immense group expanse. The A* algorithm needs to recalculate a new path from scratch, resulting in a comparative degradation in throughput. Our approach has a 12% improvement over A*. With bidirectional search, the proposed approach is more capable of finding a path within the delay budget. For Greedy and TSRS, a larger group size implies a longer distance between UEs. The received power and the throughput decrease accordingly.
Figure 13 depicts the throughput for different maximal D2D link lengths. There are 40 UEs in a group. The group radius is 100 m. For all approaches, as the length of the maximal D2D link increases, the received signal strength and therefore the throughput lessen accordingly. When the link length is short, there is more chance for link rupture. The A* algorithm needs to recalculate the entire search tree, and it might exceed the delay budget.
We now turn our attention to another vital performance index—delay. Figure 14 shows that the average delay increases as the number of UEs increases. The proposed approach considers channel conditions by including the delay factor in its definition of utility. As a result, there is a lower increase in the delay as the number of UEs increases.
Figure 15 shows the results of delay when UEs are on the move. Greedy and TSRS cannot react quickly enough and therefore have more chances of picking up inferior paths. On the other hand, A* and the proposed approach can adapt themselves better to the topological change. There is a slight performance difference between A* and the proposed approach. The A* algorithm recalculates a new path in response to topological change. However, as the moving speed increases, A* may fail to catch up with the changes. On the other hand, the BICA* search endows the proposed approach with the rapid reaction capability to topological changes, as expected.
Figure 16 shows the relationship between the average hop count and the number of UEs. It can be seen that A* and the proposed approach tend to have paths with a higher hop count. The path selection is biased by the utility function. Although there may be many hops, all hops are of high throughput and low delay, resulting in configuring paths of good QoS.
Figure 17 and Figure 18 show the utility values of delay and throughput when UEs are on the move. For all approaches, delay and throughput degrade as the moving speed increases. A* and our proposed approach have superior performance to Greedy and TSRS since channel conditions are considered. The proposed approach has performance improvement over A* because of its BICA* algorithm.
The satisfaction rate is defined as the ratio of packets successfully delivered within its delay budget. Figure 19 shows the satisfaction rates of different content types. It is evident that video has the lowest satisfaction rate compared to the other two content types due to its low delay budget. Nevertheless, the proposed approach can still achieve a satisfaction rate of 98%. Figure 20 gives the satisfaction rate of the video when UEs are on the move. It is more demanding as the moving speed increases. However, our approach can still maintain a satisfaction rate as high as 90%.
The time it takes in path planning is presented in Figure 21. We can see that the superior performance of our approach and A* comes with a higher computational cost. The simulation is conducted on a personal computer with Intel Xeon E3-1230 V2 and 8 GB RAM. Greedy is the simplest one with the least computational cost. The TSRS comes next. There is a clear tradeoff between path quality and computational cost. The A* has the highest computational cost. It is discernible that the BICA* adopted in the proposed approach can effectively lower the calculation time. We can conclude that in comparison with A*, the proposed approach can achieve better performance with less computational cost.
Figure 22 demonstrates the execution time of A* and the proposed approach when UEs remain stationary and when UEs are on the move. The movement of UEs results in a significant topological change. A* needs to recalculate the path, which leads to a considerable increase in computational cost. Due to the incremental nature of BICA*, the proposed approach can respond to topological change more quickly. Consequently, its computational cost is far less than that of A*.
We now consider the effect of both moving speed and group size at the same time. We can see from Figure 23 that the increase in delay is limited if group size increases while UEs remain stationary. On the other hand, the increase in delay is more portentous if the group size is the same while UEs are moving faster. Nevertheless, even when the group’s radius is as large as 125 m and moving at a speed of 6 km/hr, the proposed approach can still maintain a delay below 98 ms, which is less than the requirements of most contents.
For group mobility, we use the RPGM model in our simulation. For all approaches, as the group moving speed increases, the delay increases accordingly. The results, as shown in Figure 24, resemble the results for UE mobility. The proposed approach outperforms all others and achieves a delay as low as 88 ms when the group speed reaches 9 km/hr.
Figure 25 shows the change in satisfaction rate for the different group moving speeds. As expected, the satisfaction rate decreases as the group moving speed increases. In all cases, the proposed approach performs better than others.

6. Conclusions

Communication technology keeps evolving, from legend wired networks to today’s wireless mobile networking. D2D group communication has received considerable attention for its potential for better resource utilization, less interference, facilitating group communication, and so on. Individuals sharing the same interest in digital content form a group and move as one. Members of a group can share digital content via D2D group communication. Previous routing schemes for D2D group communication consider only geographic information without taking into account the channel conditions. Such an approach may result in a longer delay or even delivery failure.
This study counts for channel conditions and defines a utility function considering both delay and throughput. A refined BICA* algorithm incorporating the concepts of bidirectional search and lifelong planning is developed for path selection. The proposed path selection algorithm can effectively reduce the search time and quickly react to topological change. Compared with Greedy, TSRS, and standard A*, the proposed scheme surpasses in all aspects, including delay and throughput, with an acceptable computational cost.
The performance improvement of the proposed scheme is attributed to the design of the BICA*. The D2D routing problem is regarded as a problem of finding the least-cost path from the source UE to the destination UE. The cost is defined according to the design objectives, namely the least delay and the maximal throughput. The incorporation of bidirectional search and lifelong planning endows the proposed scheme with less computational time and timely reaction in response to topological change. For static environments, BICA* and A* have similar performance in throughput and delay. Both possess performance improvements over TSRS and Greedy, up to 23% and 46.5%, respectively. BICA* outperforms A* in cases of dynamic environments. The advantage of BICA* over A* becomes eminent as the moving speed of UEs increases due to its bidirectional and lifetime-planning natures. As the speed of UEs increased, the average and the satisfaction ratio decreased accordingly for all approaches. However, the proposed BICA* maintains the best performance, disregarding the moving speed.

Author Contributions

Conceptualization, W.K.L. and C.-P.Y.; methodology, W.K.L.; software, C.-P.Y.; validation, C.-S.S.; formal analysis, C.-P.Y.; investigation, W.K.L.; resources, C.-S.S.; writing—original draft preparation, C.-S.S.; writing—review and editing, W.K.L.; project administration, W.K.L.; funding acquisition, C.-S.S. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Data Availability Statement

Not applicable.

Acknowledgments

This research was partly supported by the Ministry of Science and Technology, Taiwan under the grant numbers MOST 111-2221-E-110-025 and MOST 111-2221-E-992-066.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Cisco. Cisco Visual Networking Index: Forecast and Trends, 2017–2022. White Paper, Cisco. 2019. Available online: https://twiki.cern.ch/twiki/pub/HEPIX/TechwatchNetwork/HtwNetworkDocuments/white-paper-c11-741490.pdf (accessed on 14 July 2022).
  2. Roessler, A.; Schlienz, J.; Merkel, S.; Kottkamp, M. LTE—Advanced (3GPP Rel.12) Technology Introduction White Paper; Rohde & Schwarz: Munich, Germany, 2014. [Google Scholar]
  3. Hui, P.; Crowcroft, J.; Yoneki, E. BUBBLE Rap: Social-Based Forwarding in Delay-Tolerant Networks. IEEE Trans. Mob. Comput. 2011, 10, 1576–1589. [Google Scholar] [CrossRef]
  4. Hakola, S.; Chen, T.; Lehtomäki, J.; Koskela, T. Device-To-Device (D2D) Communication in Cellular Network—Performance Analysis of Optimum and Practical Communication Mode Selection. In Proceedings of the 2010 IEEE Wireless Communication and Networking Conference, Sydney, Australia, 18–21 April 2010; pp. 1–6. [Google Scholar] [CrossRef]
  5. Lei, L.; Zhong, Z.; Lin, C.; Shen, X. Operator controlled device-to-device communications in LTE-advanced networks. IEEE Wirel. Commun. 2012, 19, 96–104. [Google Scholar] [CrossRef]
  6. Son, D.J.; Yu, C.H.; Kim, D.I. Resource Allocation Based on Clustering for D2D Communications in Underlaying Cellular Networks. In Proceedings of the 2014 International Conference on Information and Communication Technology Convergence (ICTC), Busan, Korea, 22–24 October 2014; pp. 232–237. [Google Scholar] [CrossRef]
  7. Asadi, A.; Mancuso, V. WiFi Direct and LTE D2D in Action. In Proceedings of the 2013 IFIP Wireless Days (WD), Valencia, Spain, 13–15 November 2013; pp. 1–8. [Google Scholar] [CrossRef]
  8. Qin, H.; Mi, Z.; Dong, C.; Peng, F.; Sheng, P. An Experimental Study on Multihop D2D Communications Based on Smartphones. In Proceedings of the 2016 IEEE 83rd Vehicular Technology Conference (VTC Spring), Nanjing, China, 15–18 May 2016; pp. 1–5. [Google Scholar] [CrossRef]
  9. Adnan, M.H.; Zukarnain, Z.A. Device-To-Device Communication in 5G Environment: Issues, Solutions, and Challenges. Symmetry 2020, 12, 1762. [Google Scholar] [CrossRef]
  10. Gismalla, M.S.M.; Azmi, A.I.; Salim, M.R.B.; Abdullah, M.F.L.; Iqbal, F.; Mabrouk, W.A.; Othman, M.B.; Ashyap, A.Y.I.; Supa’at, A.S.M. Survey on Device to Device (D2D) Communication for 5GB/6G Networks: Concept, Applications, Challenges, and Future Directions. IEEE Access 2022, 10, 30792–30821. [Google Scholar] [CrossRef]
  11. Shaikh, F.S.; Wismüller, R. Routing in Multi-Hop Cellular Device-to-Device (D2D) Networks: A Survey. IEEE Commun. Surv. Tutor. 2018, 20, 2622–2657. [Google Scholar] [CrossRef]
  12. Zhu, K.; Zhi, W.; Zhang, L.; Chen, X.; Fu, X. Social-Aware Incentivized Caching for D2D Communications. IEEE Access 2016, 4, 7585–7593. [Google Scholar] [CrossRef]
  13. Pääkkönen, J.; Hollanti, C.; Tirkkonen, O. Device-To-Device Data Storage for Mobile Cellular Systems. In Proceedings of the 2013 IEEE Globecom Workshops (GC Wkshps), Atlanta, GA, USA, 9–13 December 2013; pp. 671–676. [Google Scholar] [CrossRef]
  14. Li, Y.; Wang, Z.; Jin, D.; Chen, S. Optimal Mobile Content Downloading in Device-to-Device Communication Underlaying Cellular Networks. IEEE Trans. Wirel. Commun. 2014, 13, 3596–3608. [Google Scholar] [CrossRef]
  15. Lin, Y.-D.; Hsu, Y.-C. Multihop Cellular: A New Architecture for Wireless Communications. In Proceedings of the IEEE INFOCOM 2000. Conference on Computer Communications. Nineteenth Annual Joint Conference of the IEEE Computer and Communications Societies (Cat. No.00CH37064), Tel Aviv, Israel, 26–30 March 2000; Volume 3, pp. 1273–1282. [Google Scholar] [CrossRef]
  16. Hou, F.; Cai, L.X.; Ho, P.-H.; Shen, X.; Zhang, J. A cooperative multicast scheduling scheme for multimedia services in IEEE 802.16 networks. IEEE Trans. Wirel. Commun. 2009, 8, 1508–1519. [Google Scholar] [CrossRef]
  17. Ma, X.; Yin, R.; Yu, G.; Zhang, Z. A Distributed Relay Selection Method for Relay Assisted Device-To-Device Communication System. In Proceedings of the 2012 IEEE 23rd International Symposium on Personal, Indoor and Mobile Radio Communications—(PIMRC), Sydney, Australia, 9–12 September 2012; pp. 1020–1024. [Google Scholar] [CrossRef]
  18. Zhao, M.; Gu, X.; Wu, D.; Ren, L. A Two-Stages Relay Selection and Resource Allocation Joint Method for d2d Communication System. In Proceedings of the 2016 IEEE Wireless Communications and Networking Conference, Doha, Qatar, 3–6 April 2016; pp. 1–6. [Google Scholar] [CrossRef]
  19. Huang, C.; Zhai, B.; Tang, A.; Wang, X. Virtual mesh networking for achieving multi-hop D2D communications in 5G networks. Ad Hoc Netw. 2019, 94, 101936. [Google Scholar] [CrossRef]
  20. Zhang, D.; Fang, Y.; Zhou, Y.; He, J.; Zhang, Y. Game Theoretic Multihop D2D Content Sharing: Joint Participants Selection, Routing, and Pricing. IEEE Trans. Mob. Comput. 2022, 21, 2013–2028. [Google Scholar] [CrossRef]
  21. Ahmed, R.E. A Novel Multi-Hop Routing Protocol for D2D Communications in 5G. In Proceedings of the 2021 IEEE 11th Annual Computing and Communication Workshop and Conference (CCWC), NV, USA, 27–30 January 2021; pp. 0627–0630. [Google Scholar] [CrossRef]
  22. Ometov, A.; Orsino, A.; Militano, L.; Moltchanov, D.; Araniti, G.; Olshannikova, E.; Fodor, G.; Andreev, S.; Olsson, T.; Iera, A.; et al. Toward Trusted, Social-Aware D2D Connectivity: Bridging across the Technology and Sociality Realms. IEEE Wirel. Commun. 2016, 23, 103–111. [Google Scholar] [CrossRef]
  23. Kurose, J.F.; Ross, K.W. Computer Networking: A Top Down Approach, 6th ed.; Pearson: London, UK, 2012; Available online: http://gaia.cs.umass.edu/kurose_ross/online_lectures.htm (accessed on 14 July 2022).
  24. Sint, L.; de Champeaux, D. An Improved Bidirectional Heuristic Search Algorithm. J. ACM 1977, 24, 177–191. [Google Scholar] [CrossRef]
  25. Koenig, S.; Likhachev, M.; Furcy, D. Lifelong Planning A∗. Artif. Intell. 2004, 155, 93–146. [Google Scholar] [CrossRef]
  26. Hart, P.E.; Nilsson, N.J.; Raphael, B. A Formal Basis for the Heuristic Determination of Minimum Cost Paths. IEEE Trans. Syst. Sci. Cybern. 1968, 4, 100–107. [Google Scholar] [CrossRef]
  27. Redd, D.R. Speech Understanding Systems: Summary of Results of the Five-Year Research Effort at Carnegie-Mellon University; Carnegie-Mellon University: Pittsburgh, PA, USA, 1977. [Google Scholar] [CrossRef]
  28. Korf, R.E. Depth-first iterative-deepening: An optimal admissible tree search. Artif. Intell. 1985, 27, 97–109. [Google Scholar] [CrossRef]
  29. Pohl, I. The avoidance of (relative) catastrophe, heuristic competence, genuine dynamic weighting and computational issues in heuristic problem solving. In Proceedings of the 3rd International Joint Conference on Artificial Intelligence, San Francisco, CA, USA, 20–23 August 1973; pp. 12–17. [Google Scholar]
  30. Harabor, D.; Grastien, A. Online graph pruning for pathfinding on grid maps. In Proceedings of the Twenty-Fifth AAAI Conference on Artificial Intelligence, San Francisco, CA, USA, 7–11 August 2011; pp. 1114–1119. [Google Scholar]
  31. Dantzig, G.B.; Ramser, J.H. The Truck Dispatching Problem. Manag. Sci. 1959, 6, 80–91. [Google Scholar] [CrossRef]
  32. Nikaein, N.; Krea, S. Latency for Real-Time Machine-to-Machine Communication in LTE-Based System Architecture. In 17th European Wireless 2011—Sustainable Wireless Technologies, Vienna, Austria, 27–29 April 2011; pp. 1–6. [Google Scholar]
  33. Cox, C. An Introduction to LTE: LTE, LTE-Advanced, SAE, VoLTE and 4G Mobile Communications, 2nd ed.; Wiley: Hoboken, NJ, USA, 2012. [Google Scholar]
  34. Hong, X.; Gerla, M.; Pei, G.; Chiang, C.-C. A group mobility model for ad hoc wireless networks. In Proceedings of the 2nd ACM International Workshop on Modeling, Analysis and Simulation of Wireless and Mobile Systems, New York, NY, USA, 20 August 1999; pp. 53–60. [Google Scholar] [CrossRef]
  35. Abeta, S. Evolved Universal Terrestrial Radio Access (E-UTRA); Further advancements for E-UTRA physical layer aspects. Rep. 3gpp TR 36.814 V9.0.0. Available online: https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=2493 (accessed on 14 July 2022).
  36. Cha, M.; Kwak, H.; Rodriguez, P.; Ahn, Y.-Y.; Moon, S. I Tube, You Tube, Everybody Tubes: Analyzing the World’s Largest User Generated Content Video System. In Proceedings of the 7th ACM SIGCOMM conference on Internet measurement, New York, NY, USA, 24–26 October 2007; pp. 1–14. [Google Scholar] [CrossRef]
  37. Jiang, J.; Zhang, S.; Li, B.; Li, B. Maximized Cellular Traffic Offloading via Device-to-Device Content Sharing. IEEE J. Sel. Areas Commun. 2016, 34, 82–91. [Google Scholar] [CrossRef]
Figure 1. An example environment for D2D communication mode.
Figure 1. An example environment for D2D communication mode.
Mathematics 10 03321 g001
Figure 2. An illustration for cellular and D2D communication. (a) Regular cellular communication. (b) LTE D2D communication.
Figure 2. An illustration for cellular and D2D communication. (a) Regular cellular communication. (b) LTE D2D communication.
Mathematics 10 03321 g002
Figure 3. An illustration of the intended environment.
Figure 3. An illustration of the intended environment.
Mathematics 10 03321 g003
Figure 4. The control flow for D2D group communication.
Figure 4. The control flow for D2D group communication.
Mathematics 10 03321 g004
Figure 5. Signaling diagram for downloading content from another group member.
Figure 5. Signaling diagram for downloading content from another group member.
Mathematics 10 03321 g005
Figure 6. Signaling diagram for downloading content from the core network.
Figure 6. Signaling diagram for downloading content from the core network.
Mathematics 10 03321 g006
Figure 7. Decision procedure of group header.
Figure 7. Decision procedure of group header.
Mathematics 10 03321 g007
Figure 8. An illustration for bidirectional search BICA*.
Figure 8. An illustration for bidirectional search BICA*.
Mathematics 10 03321 g008
Figure 9. An illustration for incremental update of BICA*.
Figure 9. An illustration for incremental update of BICA*.
Mathematics 10 03321 g009
Figure 10. A scenario for the simulations.
Figure 10. A scenario for the simulations.
Mathematics 10 03321 g010
Figure 11. Throughput vs. number of UEs.
Figure 11. Throughput vs. number of UEs.
Mathematics 10 03321 g011
Figure 12. Throughput vs. group radius.
Figure 12. Throughput vs. group radius.
Mathematics 10 03321 g012
Figure 13. Throughput vs. D2D link length.
Figure 13. Throughput vs. D2D link length.
Mathematics 10 03321 g013
Figure 14. Delay vs. number of UEs.
Figure 14. Delay vs. number of UEs.
Mathematics 10 03321 g014
Figure 15. Delay vs. UE’s moving speed.
Figure 15. Delay vs. UE’s moving speed.
Mathematics 10 03321 g015
Figure 16. Hop count vs. number of UEs.
Figure 16. Hop count vs. number of UEs.
Mathematics 10 03321 g016
Figure 17. Delay’s utility value vs. UE’s moving speed.
Figure 17. Delay’s utility value vs. UE’s moving speed.
Mathematics 10 03321 g017
Figure 18. Throughput’s utility value vs. UE’s moving speed.
Figure 18. Throughput’s utility value vs. UE’s moving speed.
Mathematics 10 03321 g018
Figure 19. Satisfaction rates of different content types.
Figure 19. Satisfaction rates of different content types.
Mathematics 10 03321 g019
Figure 20. Satisfaction rates vs. UE’s moving speed.
Figure 20. Satisfaction rates vs. UE’s moving speed.
Mathematics 10 03321 g020
Figure 21. Execution time vs. number of UEs.
Figure 21. Execution time vs. number of UEs.
Mathematics 10 03321 g021
Figure 22. Execution time when UEs are on the move.
Figure 22. Execution time when UEs are on the move.
Mathematics 10 03321 g022
Figure 23. Delay vs. group size and UE’s moving speed.
Figure 23. Delay vs. group size and UE’s moving speed.
Mathematics 10 03321 g023
Figure 24. Delay vs. group’s moving speed.
Figure 24. Delay vs. group’s moving speed.
Mathematics 10 03321 g024
Figure 25. Satisfaction rate vs. group’s moving speed.
Figure 25. Satisfaction rate vs. group’s moving speed.
Mathematics 10 03321 g025
Table 1. Environmental and parameter settings for simulation.
Table 1. Environmental and parameter settings for simulation.
ParameterValue
Bandwidth10 MHZ
Number of RBs50
Number of Macro1
Radius of Macro500 m
Power of Macro46 dBm
Path Loss Model [35] Macro :   128.1 + 37.6 * l o g 10 d     (d in km)
D 2 D :   148 + 40 * l o g 10 d     (d in km)
Noise power density−174 dBm/Hz
Power of UE23 dBm
Number of groups4
Radius of group50, 75, 100, 125 m
Number of UEs in group10–50
D2D maximum communication range10, 15, 20, 25, 30 m
Speed of UE0, 3, 6 (Km/h)
File distributionZipf [36]
[α, β][0.5, 0.5]
UE cache size2 GB
Simulation Time1 min
Rounds30
Table 2. Types and parameters of contents.
Table 2. Types and parameters of contents.
Type of FileValue
Text/HTMLQCI: 9
Packet Delay Budget: 300 ms; Resource Type: non-GBR
Minimum File Size: 1 K bytes; Maximum File Size: 4000 K bytes
VideoQCI: 4
Packet Delay Budget: 150 ms; Resource Type: GBR
Minimum File Size: 72.5 M bytes; Maximum File Size: 225 M bytes
MusicQCI: 6
Packet Delay Budget: 300 ms; Resource Type: non-GBR
Minimum File Size: 2.4 M bytes; Maximum File Size: 12 M bytes
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Lai, W.K.; Shieh, C.-S.; Yang, C.-P. A D2D Group Communication Scheme Using Bidirectional and InCremental A-Star Search to Configure Paths. Mathematics 2022, 10, 3321. https://doi.org/10.3390/math10183321

AMA Style

Lai WK, Shieh C-S, Yang C-P. A D2D Group Communication Scheme Using Bidirectional and InCremental A-Star Search to Configure Paths. Mathematics. 2022; 10(18):3321. https://doi.org/10.3390/math10183321

Chicago/Turabian Style

Lai, Wei Kuang, Chin-Shiuh Shieh, and Chao-Ping Yang. 2022. "A D2D Group Communication Scheme Using Bidirectional and InCremental A-Star Search to Configure Paths" Mathematics 10, no. 18: 3321. https://doi.org/10.3390/math10183321

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