An adaptive routing algorithm considering position and social...

15
An adaptive routing algorithm considering position and social similarities in an opportunistic network Kiyoung Jang 1 Junyeop Lee 1 Sun-Kyum Kim 1 Ji-Hyeun Yoon 1 Sung-Bong Yang 1 Published online: 23 August 2015 Ó Springer Science+Business Media New York 2015 Abstract An opportunistic network (OPPNET) is a wireless networks without an infrastructure. In OPPNET, communication intermittently occurs when one node meets with another node. Thus, a connected path between the source and destination nodes rarely exists. For this reason, nodes need not only to forward messages but are also to store and carry messages as relay nodes. In OPPNET, several routing algorithms that rely on relay nodes with appropriate behavior have been proposed. Some of these are referred to as context-ignorant routing algorithms, which manipulate flooding, and others are referred to as context-aware routing algorithms, which utilize the con- textual information. We propose a routing algorithm that employs a novel similarity based on both position and social information. We combine the position similarity with the social similarity using the fuzzy inference method to obtain the enhanced performance. Through this method, the proposed algorithm utilizes more proper relay nodes in forwarding adaptively and achieves significant improve- ment on the performance especially under memory con- strained environment. We analyze the proposed algorithm on the NS-2 network simulator with the home-cell com- munity-based mobility model. Experimental results show that the proposed algorithm outperforms typical routing algorithms in terms of the network traffic and delivery delay. Keywords Opportunistic network Social network Similarity Network routing Fuzzy theory 1 Introduction An opportunistic network (OPPNET) [1, 2, 3, 4] is an ad hoc network, emerged from advances in wireless commu- nication technologies and from the popularity of mobile devices [5, 6, 7, 8, 9, 10]. OPPNET comes under the field of both a mobile ad hoc network (MANET) [11] and a delay-tolerant network (DTN) [12, 13, 14, 15]. In OPP- NET, there is rarely a connected path between the source and the destination node because communication between the two nodes intermittently occurs only if one node encounters another. Thus, nodes must communicate via multi-hopping and transmit messages to relay nodes that forward messages to other nodes [16]. Relay nodes are supposed to store and carry messages; in this network, there are sometimes no other nodes within communication range. Unlike in a mobile ad hoc network (MANET) [17], opportunities for communication in OPPNET are created by the mobility of the nodes. Figure 1 illustrates an example of message forwarding in OPPNET. In the figure, a dotted circle indicates the communication range of a node and an arrow shows the moving direction of a node. In the figure, we assume that node A is to send a message to node D. At time t 1 , A meets C and forwards the message to C. Then, C saves the & Sung-Bong Yang [email protected] Kiyoung Jang [email protected] Junyeop Lee [email protected] Sun-Kyum Kim [email protected] Ji-Hyeun Yoon [email protected] 1 Department of Computer Science, Yonsei University, Seoul, Korea 123 Wireless Netw (2016) 22:1537–1551 DOI 10.1007/s11276-015-1048-3

Transcript of An adaptive routing algorithm considering position and social...

Page 1: An adaptive routing algorithm considering position and social ...algo.yonsei.ac.kr/international_JNL/adaptive.pdf · encounters another. Thus, nodes must communicate via multi-hopping

An adaptive routing algorithm considering position and socialsimilarities in an opportunistic network

Kiyoung Jang1 • Junyeop Lee1 • Sun-Kyum Kim1• Ji-Hyeun Yoon1 •

Sung-Bong Yang1

Published online: 23 August 2015

� Springer Science+Business Media New York 2015

Abstract An opportunistic network (OPPNET) is a

wireless networks without an infrastructure. In OPPNET,

communication intermittently occurs when one node meets

with another node. Thus, a connected path between the

source and destination nodes rarely exists. For this reason,

nodes need not only to forward messages but are also to

store and carry messages as relay nodes. In OPPNET,

several routing algorithms that rely on relay nodes with

appropriate behavior have been proposed. Some of these

are referred to as context-ignorant routing algorithms,

which manipulate flooding, and others are referred to as

context-aware routing algorithms, which utilize the con-

textual information. We propose a routing algorithm that

employs a novel similarity based on both position and

social information. We combine the position similarity

with the social similarity using the fuzzy inference method

to obtain the enhanced performance. Through this method,

the proposed algorithm utilizes more proper relay nodes in

forwarding adaptively and achieves significant improve-

ment on the performance especially under memory con-

strained environment. We analyze the proposed algorithm

on the NS-2 network simulator with the home-cell com-

munity-based mobility model. Experimental results show

that the proposed algorithm outperforms typical routing

algorithms in terms of the network traffic and delivery

delay.

Keywords Opportunistic network � Social network �Similarity � Network routing � Fuzzy theory

1 Introduction

An opportunistic network (OPPNET) [1, 2, 3, 4] is an ad

hoc network, emerged from advances in wireless commu-

nication technologies and from the popularity of mobile

devices [5, 6, 7, 8, 9, 10]. OPPNET comes under the field

of both a mobile ad hoc network (MANET) [11] and a

delay-tolerant network (DTN) [12, 13, 14, 15]. In OPP-

NET, there is rarely a connected path between the source

and the destination node because communication between

the two nodes intermittently occurs only if one node

encounters another. Thus, nodes must communicate via

multi-hopping and transmit messages to relay nodes that

forward messages to other nodes [16]. Relay nodes are

supposed to store and carry messages; in this network,

there are sometimes no other nodes within communication

range. Unlike in a mobile ad hoc network (MANET) [17],

opportunities for communication in OPPNET are created

by the mobility of the nodes.

Figure 1 illustrates an example of message forwarding

in OPPNET. In the figure, a dotted circle indicates the

communication range of a node and an arrow shows the

moving direction of a node. In the figure, we assume that

node A is to send a message to node D. At time t1, A meets

C and forwards the message to C. Then, C saves the

& Sung-Bong Yang

[email protected]

Kiyoung Jang

[email protected]

Junyeop Lee

[email protected]

Sun-Kyum Kim

[email protected]

Ji-Hyeun Yoon

[email protected]

1 Department of Computer Science, Yonsei University, Seoul,

Korea

123

Wireless Netw (2016) 22:1537–1551

DOI 10.1007/s11276-015-1048-3

Page 2: An adaptive routing algorithm considering position and social ...algo.yonsei.ac.kr/international_JNL/adaptive.pdf · encounters another. Thus, nodes must communicate via multi-hopping

message and moves in the direction of its arrow. At time t2,

C meets D and forwards the message to D. Consequently,

although no direct path between A and D is established at

the time when A starts to send the message, D receives the

message successfully.

In OPPNET, it is very crucial to select proper relay

nodes to send messages to the destination successfully [18].

Previously, many routing algorithms have been proposed in

attempts to find suitable relay nodes [19, 20, 21, 22, 23].

Some routing algorithms, known as context-ignorant rout-

ing algorithms, diffuse messages all over the network.

These algorithms have higher network traffic with low

delivery delay. Contrastingly, context-aware routing algo-

rithms use contextual information about the nodes to

transfer messages [24, 25, 26, 27]. These algorithms have

lower network traffic and longer delay in delivery [28].

In context-aware algorithms, similarities among the

nodes (users) are sometimes used [29]. However, there are

few algorithms that use both similarity and position simi-

larity; they simply use the average value of the user simi-

larity and the position similarity. Hence, in this paper, we

propose a routing algorithm, called the position and social

similarities-based routing algorithm (PaSS), which

exploits a novel similarity on the basis of the fuzzy infer-

ence using the contact and position information. PaSS

reflects the concept that people move around routinely in

their everyday life, especially during the weekdays. For

example, students spend most of their time at schools in the

morning and office workers mostly stay at their offices. To

take advantage of this concept, PaSS uses similarities of

the position and social contact information among the

nodes in the network. If the position similarity between a

pair of nodes is high, they are highly likely to spend most

of their time at the same locations. Moreover, if the social

similarity between a pair of nodes is high, they are highly

likely to meet the common nodes, enhancing the delivery

rate. Therefore, when a node has a message for a destina-

tion node, the node transmits the message to another node

that has a higher similarity with the destination node. In

addition, PaSS combines the position similarity with the

social similarity through fuzzy inference to control the

degrees of position and social similarities adaptively; that

is, we should consider more positional similarity at some

occasions, while social similarity is more important at

some other occasions. Such an adaptive control allows

PaSS to pick proper relay nodes in delivering messages.

Experimental results show that PaSS surpasses typical

routing algorithms in terms of the network traffic and

delivery delay.

The rest of the paper is organized as follows. Section 2

explains the related work and Sect. 3 describes the pro-

posed routing algorithm in detail. In Sect. 4, we present the

simulation results. Finally, we conclude the paper in

Sect. 5.

2 Related work

2.1 Classification of routing algorithms

in an opportunistic network

Routing algorithms are opportunistic networks that can be

classified into two groups: context-ignorant algorithms and

context-aware algorithms. Context-ignorant algorithms are

basically used to manipulate flooding [30]. Alternatively,

context-aware algorithms utilize the contextual information

of nodes in order to select the proper relay node [31, 32, 33,

34, 35, 36]. In context-ignorant algorithms, each node dif-

fuses messages all over the network; the algorithm cannot

use information about the nodes to select the proper relay

node [37, 38, 39]. The context-ignorant routing algorithms

clearly have high performance in terms of their delivery

delay because there are many contact opportunities among

the nodes. However, they have very high network traffic due

to an exceedingly large number of communications.

Alternatively, context-aware routing algorithms exploit the

contextual information of the nodes to find the proper relay

nodes for delivering a message to its destination. Compared

to context-ignorant algorithms, context-aware routing

methods have longer delivery delay because they do not

Fig. 1 Message forwarding in

OPPNET (t1\ t2)

1538 Wireless Netw (2016) 22:1537–1551

123

Page 3: An adaptive routing algorithm considering position and social ...algo.yonsei.ac.kr/international_JNL/adaptive.pdf · encounters another. Thus, nodes must communicate via multi-hopping

always choose the proper relay nodes. In order to select

proper relay nodes, the context-aware algorithms usually

require computationally heavy processes and more infor-

mation than context-ignorant algorithms.

2.2 Context-ignorant routing algorithms

The epidemic forwarding [40] algorithm spreads messages

all over the network like an epidemic spreads a virus. Once

a node receives a message, it keeps the message in its

memory space until its memory space overflows and sends

the message to other nodes that it encounters. However,

this dissemination procedure may be interrupted by a

limited hop count, time to live (TTL). If the hop count limit

is one, the communication cannot be accomplished unless a

node meets the destination node. Our algorithm partially

adopts the basic strategies of the epidemic algorithm.

The spray-and-wait algorithm [41] forces the source

node to keep sending the message to all of the nodes it

encounters. However, when a node receives the message

from the sender, it keeps the message until it meets desti-

nation node. This algorithm may drastically reduce the

network traffic due to the fact that it limits the number of

nodes that carry messages.

The vector routing algorithm [42] spreads messages all

over the network using both direction and speed of each

node. When a node encounters another node, it compares

its direction and speed with those of the encountered node.

If the angle between the directions of these nodes is large,

it transmits the messages to the encountered node. This

algorithm may reduce the network traffic compared to the

Epidemic algorithm, but has much more network traffic

than context-ignorant routing algorithms.

2.3 Context-aware routing algorithms

The PRoPHET forwarding algorithm [43] allows each node

to collect the contact probability of other nodes. Each node

computes the predictability that a node will have contact

with the destination. Two nodes then exchange the sum-

mary vectors when they encounter each other, including the

contact probability information with respect to the desti-

nation. Afterwards, each node determines the next relay

node from the summary of the vector information. Our

proposed algorithm also utilizes the contact information to

obtain the social similarity.

The SimBet forwarding algorithm [44] uses the social

information of the nodes. When two nodes meet, they

exchange information about their lists of neighbors. Then,

each node determines the ‘betweenness’ and ‘similarity’

values from this information. The betweenness is the

number of shortest paths from all nodes to all others

passing through the node, and the similarity value is the

number of common neighbors between two nodes. The

betweeness and similarity values are used to predict which

nodes are more promising relay nodes. Our algorithm uti-

lizes a newly-defined similarity that uses both contact and

position information of nodes.

In the MobySpace forwarding algorithm [45], each node

uses the mobility patterns as the contextual information.

MobySpace is defined as a multi-dimensional Euclidean

space where each axis denotes a location and the distance is

the contact probability between nodes. If two nodes are

close to each other in the MobySpace, they may have

similar mobility patterns. Thus, the best carrier is chosen as

the node that is closest to the destination in the MobyS-

pace. However, in order to construct a more precise

MobySpace, the contexts of all of the nodes are required.

The SPRINT algorithm [46] uses social information with

contact history and the Poisson-based prediction of future

encounters in order to optimize routing paths. When node

A encounters another node B, they exchange the utility

values that are computed considering the social informa-

tion and Poisson-based prediction for the messages. If

A has a smaller utility value for a message than B, the

A transmits the message to B. This algorithm not only uses

social information from the history of contacts, but also

from social networks. In addition, it includes the possible

Poisson-based prediction on the future behaviors of nodes

in the routing decision.

The BUBBLE Rap algorithm [47] uses two types of

social information, ranking and community. If node A has a

message destined for B, A would bubble the message up

using the global ranking until it reaches a node that belongs

to the community of B. Then in the BUBBLE Rap, the

local ranking system is used instead of the global ranking

and a message is bubbled up until its destination is reached.

The RENA algorithm [48] uses the regional movement

history and the probability of a node found in a particular

region. Moreover, it uses staying time, hitting time and

return time from that region. If node A has a message

destined for another node B, A calculates the delivery time

to B using the probabilities of both A and B. The message is

forwarded to some region with low delivery time. This

algorithm uses the probability of position information in

order to deliver messages.

3 Proposed algorithm

3.1 Overview

There are many routing algorithms that employ the user

similarity [44, 49] between nodes within a network. The user

similarity used in these routing algorithms is the number of

common neighbors between a pair of nodes. Most routing

Wireless Netw (2016) 22:1537–1551 1539

123

Page 4: An adaptive routing algorithm considering position and social ...algo.yonsei.ac.kr/international_JNL/adaptive.pdf · encounters another. Thus, nodes must communicate via multi-hopping

algorithms consider only the common neighbors when

determining the social similarity; they do not consider the

position information. Thus, we propose a routing algorithm

using a novel similarity that considers both the social simi-

larity and the position similarity. In our proposed algorithm,

each node collects the contact and position information and

exchanges this information with other nodes during the

warm-up period. In addition to the position and social sim-

ilarity, the period over which a message is forwarded is also

calculated from this information.

By collecting the information we mean that each node

periodically collects information related to its position and

the amount of contact it has made with other nodes during

the warm-up period. Note that a node also exchanges its

contact and position information with its neighbors to

collect the overall information. At the end of the warm-up

period, each node calculates the position and social simi-

larities among all nodes. Note that the calculated results of

the nodes may not be the same but they are all look alike.

Next, we will describe the proposed algorithm in detail.

3.2 Proposed algorithm

The proposed routing algorithm, PaSS, runs in three steps:

collecting information, computing social and position

similarities, and forwarding messages. Collecting infor-

mation and computing social and position similarities are

executed during the warm-up period.

3.2.1 Collecting information

During the warm-up period, each node gathers its contact

information and its position information for the similarities.

For gathering contact information, when a node has contact

with another node, the node saves how many contacts it has

with that counterpart node. Figure 2 shows the contact

information of four nodes. For example, in Fig. 2(a), N1

has one contact with N2, two contacts with N3, and four

contacts with N4. In Fig. 2(b), N2 has five contacts with N4

and has met N1 once. N2 does not know about the existence

of N3 since there is no contact between N2 and N3.

To gather the position information, each node saves its

current location at every second. To determine its location,

each node is assumed to have a positioning system [50, 51]

and the map data. The map is divided into 3 9 3 grids.

Therefore, each node converts its location into the corre-

sponding position information; the position information is

a set of nine numbers, each of which represents the number

of times the node visits a grid. For example, Fig. 3 shows

N1’s movement; N1 visits seven grids in the map, and

Fig. 5(a) shows the position information of N1 corre-

sponding to Fig. 3. The position information (1, 1) has a

value ‘1’ since the node visited once the grid (1, 1).

After collecting this information, each node exchanges

the contact and position information with other nodes. As a

result, each node could collect the contact and position

information of almost all the nodes in the network at the

end of the warm-up period. Figure 4 shows the contact

information of the four nodes in Fig. 2. After exchanging

the information, N2 knows about the existence of N3 from

the contact information collected from other nodes.

3.2.2 Computation of position and social similarities

We define the social similarity (S) from the contact infor-

mation and the position similarity (P) from the position

information. Then, we use a novel metric, referred to as the

position and social similarities (F), which is a combination

of the social and position similarities made using the fuzzy

inference. Figure 5 shows the position information of N1,

N2, N3, and N4. Using the contact information and the

Fig. 2 Contact information of nodes N1, N2, N3, and N4

Fig. 3 Movement of node N1

Fig. 4 Contact information

1540 Wireless Netw (2016) 22:1537–1551

123

Page 5: An adaptive routing algorithm considering position and social ...algo.yonsei.ac.kr/international_JNL/adaptive.pdf · encounters another. Thus, nodes must communicate via multi-hopping

position information as in Figs. 4 and 5, respectively, the

position and social similarities can be calculated.

Social similarity computation: Each node uses the con-

tact information to define the social similarity between a

pair of nodes. The social similarity S(i, j) between Ni and Nj

is defined by the Tanimoto coefficient [52, 53] because the

Tanimoto coefficient considers frequency, which is related

to the contact count. Hence, S(i,j) is calculated as follows.

S i; jð Þ¼Pn

k¼1Ci;kCj;kPn

k¼1;k 6¼j Ci;k

� �2þPn

k¼1;k 6¼i Cj;k

� �2�Pn

k¼1Ci;kCj;k

;

ð1Þ

In the above equation, Ci,j denotes the number of contacts

between Ni and Nj. For example, in Fig. 4, S(1, 2) = 0.80,

because when i = 1 and j = 2,P

k=1,k=1,2n (c1,k)

2 =

22 ? 42 = 20. In the same way,P

k=1,k=1,2n (c2,k)

2 = 02 ?

52 = 25 andP

k=1n C1,kC2,k = 0 9 1 ? 1 9 0 ? 2 9 0 ?

4 9 5 = 20, and Sð1; 2Þ ¼ 2020þ25�20

¼ 0:80.

Position similarity computation: As above, each node

divides the map into 3 9 3 grids. Each node uses the

position information of nodes to define the position simi-

larity between a pair of nodes. Since the position infor-

mation consists of a 2-dimensional table, we modify

Eq. (1) to incorporate with 2-dimensional data. The posi-

tion similarity P(i, j) between Ni and Nj is calculated as

follows.

In Eq. (2), Gk,li = grid (k, l). For example, we calculate

P(1, 4) using the position information in Fig. 5. Then, P(1,

2) = 0.60.

Combination of position and social similarities: In

PaSS, we utilize a fuzzy inference mechanism that is

suitable for obtaining the degrees of social similarity and

position similarity for the ratio. Our fuzzy inference system

consists of three steps: fuzzification, fuzzy inference, and

defuzzification. In the first step, each node converts its own

input values (i.e., the social similarity and position simi-

larity) into membership degrees of the fuzzy sets. In the

second step, each node performs fuzzy inference based on a

set of if–then rules using the membership degrees obtained

in the fuzzification step. The last step is defuzzification, in

which the results of the fuzzy inference are converted into a

crisp value, which is a fitness degree for similarity. Our

system is based on the Mamdani fuzzy inference system

[54], which is the most common fuzzy methodology.

Step 1: Fuzzification is performed to use the inputs to

determine the degrees of membership for the appropriate

fuzzy sets, each of which is characterized by a membership

function. In our system, there are two inputs (position

similarity and social similarity) and three fuzzy sets (high,

medium, and low) for each input. The output is a set of

membership degrees in the fuzzy sets, where a membership

degree is always between 0 and 1. Fuzzification, therefore,

provides an answer to the question ‘‘to what extent is a

node suitable to act as a relay node?’’. Figure 6 provides

the answers to this question (rated on a scale of 0–1) via

three membership functions of the position similarity. For

example, P(1, 2) = 0.6, given our graphical definition of

the position similarity membership functions, corresponds

to llow = 0.4, lmedium = 0.8, and lhigh = 0.6, where l is a

membership function. Fuzzification of an input usually

amounts to either a table lookup or a function evaluation.

When defining (membership) functions, there are several

methods that can be used such as triangular, trapezoidal,

Gaussian, and generalized bell membership functions [43].

Although each has its own merits, we use the triangular

membership function formulation because it is the lowest

computational method, which is desirable because our

fuzzy inference system operates on mobile devices. Note

that the membership function graphs in Fig. 6 are defined

according to Eq. (3).

Fig. 5 Position information of N1, N2, N3, and N4

Pði; jÞ ¼Pd

l¼1

Pdk¼1 Gi

k;lGjk;l

� �

Pdl¼1

Pdk¼1 Gi

k;l

� �2

þPd

l¼1

Pdk¼1 G

jk;l

� �2

�Pd

l¼1

Pdk¼1 Gi

k;lGjk;l

� � ; ð2Þ

Wireless Netw (2016) 22:1537–1551 1541

123

Page 6: An adaptive routing algorithm considering position and social ...algo.yonsei.ac.kr/international_JNL/adaptive.pdf · encounters another. Thus, nodes must communicate via multi-hopping

llowðxÞ ¼1� x; 0� x� 1

0; 1� x

lmiddleðxÞ ¼

0; x� 0

2x; 0� x� 0:52� 2x; 0:5� x� 1

0; 1� x

8>><

>>:ð3Þ

lhighðxÞ ¼0; x� 0

x; 0� x� 1

The above functions are based on the triangular member-

ship function formulation (TMFF) [54, 55], which is

specified by three parameters (a, b, and c) as follows:

triangle x; a; b; cð Þ ¼

0; x� ax� a

b� a; a� x� b

c� x

c� b; b� x� c

0; c� x

8>>>>><

>>>>>:

Similarly, we can obtain the social similarity membership

functions based on TMFF as shown below.

llow xð Þ ¼ 1� x; 0� x� 1

0; 1� x

lmiddleðxÞ ¼

0; x� 0

2x; 0� x� 0:52� 2x; 0:5� x� 1

0; 1� x

8>><

>>:ð4Þ

lhighðxÞ ¼0; x� 0

x; 0� x� 1

For example, S(1, 2) = 0.8 corresponds to llow = 0.2,

lmedium = 0.4, and lhigh = 0.8 for the social similarity

membership functions in Fig. 7.

Step 2: Fuzzy inference is the reasoning step for the

fuzzy values (membership degrees) based on the accepted

rules. We assumed that a node possessing high social

similarity and high position similarity with the destination

node is a proper relay node. Based on this assumption, our

fuzzy if–then rules were developed. Generally, a fuzzy if–

then rule is expressed as ‘‘if x is A, then y is B,’’ where

A and B are linguistic values (good, fair, and bad) defined

by the fuzzy sets. The if–then rules for the fuzzy inference

of our system are defined below:

• Rule 1: If the position similarity is low, then the result

is bad.

• Rule 2: If the position similarity is medium, then the

result is fair.

• Rule 3: If the position similarity is high, then the result

is good.

• Rule 4: If the social similarity is low, then the result is

bad.

• Rule 5: If the social similarity is medium, then the

result is fair.

• Rule 6: If the social similarity is high, then the result is

good.

For the above rules, we associate a control variable with

the result, indicating the suitability of a node to become a

relay node. The control variable has three linguistic values:

good, fair, and bad. To define the control membership

functions for these linguistic values, we also use TMFF.

The control membership functions are given in Eq. (5), and

their corresponding graphs are shown in Fig. 8.

lbad xð Þ ¼ 1� x; 0� x� 1

0; 1� x

lfair xð Þ ¼

0; x� 0

2x; 0� x� 0:51� 2x; 0:5� x� 1

0; 1� x

8>><

>>:ð5Þ

Fig. 7 Social similarity membership functionFig. 6 Position similarity membership function

1542 Wireless Netw (2016) 22:1537–1551

123

Page 7: An adaptive routing algorithm considering position and social ...algo.yonsei.ac.kr/international_JNL/adaptive.pdf · encounters another. Thus, nodes must communicate via multi-hopping

lgood xð Þ ¼ 0; x� 0

x; 0� x� 1

In our fuzzy inference system, we apply the min–max

inference of the Mamdani fuzzy inference system, in which

the AND (minimization) and the OR (maximization)

operations are used. Because the decisions are based on the

testing of all of the rules in the system, the fuzzy sets (each

of which represents the truncated output function of each

rule) are combined into a single fuzzy set using OR oper-

ation. This combination process is referred to as aggrega-

tion. Since we have two input variables (i.e., the position

and social similarity), aggregation is performed for the

results produced by applying all six rules with respect to

each variable. The results of both aggregations are then

combined to produce the final fuzzy set using AND oper-

ation. For example, if N1 has P(1, 2) = 0.6 and S(1,

2) = 0.8 for N2, then the node finds that llow = 0.4,

lmedium = 0.8, and lhigh = 0.6 for the position similarity

and llow = 0.2, lmedium = 0.4, and lhigh = 0.8 for the

social similarity via fuzzification. Next, the node applies

Rule 1 with llow = 0.4 for the position similarity. Figure 9

shows how to apply Rule 1 when the position similarity is

low; the shaded area in Fig. 9(b) is obtained with AND

operation. Similarly, Figs. 10, 11, 12, 13 and 14 show the

results of applying Rules 2–6 when lmedium = 0.8 andFig. 8 Control membership function

Fig. 9 Result applying Rule 1

with a position similarity of llow

Fig. 10 Result applying Rule 2

with lmiddle = 0.6 for the

position similarity

Wireless Netw (2016) 22:1537–1551 1543

123

Page 8: An adaptive routing algorithm considering position and social ...algo.yonsei.ac.kr/international_JNL/adaptive.pdf · encounters another. Thus, nodes must communicate via multi-hopping

lhigh = 0.6 for the position similarity and when

lhigh = 0.8, lmedium = 0.4, and llow = 0.2 for the social

similarity. The node now can compute the shaded area in

Fig. 15 by aggregating the results in Figs. 9(b), 10 and

11(b); note that OR operations are performed at this time.

Similarly, Fig. 16 is obtained by aggregating the results in

Figs. 12(b), 13 and 14(b). Finally, the node calculates the

shaded area in Fig. 17(b) by performing AND operation on

the shaded areas of Figs. 15 and 16.

Step 3: Defuzzification, which is the reverse process of

fuzzification, is conducted to produce a quantifiable result

in fuzzy logic, given a fuzzy set, as shown in Fig. 17(b).

Fig. 11 Result applying Rule 3

with lhigh = 0.6 for position

similarity

Fig. 12 Result applying Rule 4

with llow = 0.8 for the social

similarity

Fig. 13 Result applying Rule 5

with lmiddle = 0.8 for the social

similarity

1544 Wireless Netw (2016) 22:1537–1551

123

Page 9: An adaptive routing algorithm considering position and social ...algo.yonsei.ac.kr/international_JNL/adaptive.pdf · encounters another. Thus, nodes must communicate via multi-hopping

Notice that, in this figure, we do not use the shaded area but

instead use the curve on the upper boundary of the area.

The membership degrees of the fuzzy set are interpreted

into a specific value during the defuzzification process. For

the defuzzification in our system, we use the center of

gravity (COG), which is one of the most common and

useful techniques for defuzzification. Using the COG, each

node computes an f-value using Eq. (6). This value is used

for relay node selection during each network update.

f�value ¼P

s� degree sð ÞP

degree sð Þ ð6Þ

Here, s is a sample point of control and degree(s) is the

membership degree of control at s. To compute an f-value,

we must first decide the number of sample points. For our

fuzzy system, we use 10 sample points {0.1, 0.2, 0.3, …,

1.0}. Note that each degree(s) in the table is obtained from

Fig. 17(b); that is, for each s on the x-axis, we obtain the

corresponding membership degree on the y-axis. The f-

value for the example is 0.62 as shown below.

f�value ¼ 0:1� 0:2þ 0:2� 0:4þ � � � þ 1:0� 0:6ð Þ0:2þ 0:4þ � � � þ 0:6ð Þ

¼ 3:03

4:90¼ 0:62 ð7Þ

In PaSS, we use f-values for forwarding. The larger a

node’s f-value, the more suitable it is to be a relay node.

3.2.3 Forwarding messages

We outline the PaSS routing in Algorithm 1, which pre-

sents the communication process for a message m between

Ni and Nj. When Ni meets Nj (assuming that Ni has m), if

the destination D of m is Nj, then Ni simply transmits the

message to Nj. Otherwise, Ni compares F(j, D) with F(i, D).

If F(j, D) are greater than F(i, D), Ni transmits m to Nj.

Fig. 14 Result applying Rule 6

with lhigh = 0.8 for the social

similarity

Fig. 15 Aggregation of the results in Figs. 9(b), 10 and 11(b) Fig. 16 Aggregation of the results in Figs. 12(b), 13 and 14(b)

Wireless Netw (2016) 22:1537–1551 1545

123

Page 10: An adaptive routing algorithm considering position and social ...algo.yonsei.ac.kr/international_JNL/adaptive.pdf · encounters another. Thus, nodes must communicate via multi-hopping

Figure 18 shows an example where N1 wants to deliver a

message m to N4. At time t1, N1 has m and N1, N2, and N3 are

assumed to have f-values 0.46, 0.62, and 0.52, respectively,

against N4. And they start to move around the network. At

time t2, N1 encounters N2. Because N2 does not have m, N1

compares F 2; 4ð Þ with F 1; 4ð Þ. Since F 2; 4ð Þ is greater thanF 1; 4ð Þ, N1 transmits m to N2. At time t3, N1 meets with N3.

Then, because N3 does not havem and F 3; 4ð Þ[F 1; 4ð Þ, N1

transmits m to N3. At time t4, N2 meets with N4 and finally

m is successfully delivered to N4.

Fig. 17 Final fuzzy set

obtained by the aggregation of

Figs. 15 and 16

Fig. 18 Process of PaSS

routing algorithm

(t1\ t2\ t3\ t4)

1546 Wireless Netw (2016) 22:1537–1551

123

Page 11: An adaptive routing algorithm considering position and social ...algo.yonsei.ac.kr/international_JNL/adaptive.pdf · encounters another. Thus, nodes must communicate via multi-hopping

4 Simulation results

4.1 Simulation environment

We use the network simulator NS-2 v.2.35 [56] for the

simulations. The number of nodes is set to 40. The network

area is set to 450 m 9 450 m and the communication ran-

ges are 10, 20, 30, 40, and 50 m. The memory space is set to

2, 4, 6, 8, and 10. We assume that when the memory space

of a node is full and a node receives a message, the node

throws out the first message that it received. The movement

of a node follows the HCMM [57], which is a frequently

used movement pattern in OPPNET simulations. The

velocity of a node ranges from 1 to 9 m/s; this speed is

appropriate for pedestrians and vehicles. In our simulator,

each mobile node issues a single message. The total simu-

lation time is 15,000 s. The warm-up time is 1200 s, the

gathering information time is 1000 s, and the exchanging

information time is 200 s. After transmitting a message to

other nodes, the node from which the message originated

does not delete the message. In addition, we do not consider

the capacities of the bandwidth and power; this is done for

the sake of simplicity because the network traffic and

delivery delay are indirectly related with the power. Table 1

shows an overview of the environment used in our simu-

lation. In this experiment, we evaluate two metrics: the

network traffic and the delay time. Our simulations continue

until all of the messages are delivered (i.e., the delivery

success ratio is 1). The network traffic is the number of

packets sent and received between nodes. However, we do

not consider the network traffic related to exchanging

information because information exchange occurs during

the warm-up time. The delay time is the time period

between the moment that a message is generated and the

time when the message is delivered to the destination.

4.2 Simulation results

In the simulation, we compare the performances of the

network traffic and average delivery delay of PaSS with

those of the Epidemic, PRoPHET, SimBet, Vector Routing

(VR), and RENA algorithms. We assume that the com-

munication range is 10 m and that each node can store

10 messages in its memory space. Figure 19 shows the

comparison among Epidemic, PRoPHET, SimBet, VR,

RENA, and PaSS algorithms. The network traffics of

Epidemic, PRoPHET, SimBet, and VR are about 17 times,

two times, three times, five times larger than that of PaSS,

respectively. RENA has lower network traffic than PaSS,

since RENA is based on the Spray and Search (SAS)

algorithm. The delay of PaSS is about 14.4, 36.0, and

66.1 % shorter than those of PRoPHET, SimBet, and

RENA, respectively. On the other hand, Epidemic and VR

show shorter delays than PaSS, since Epidemic and VR are

executed on the basis of flooding. As we expected, PaSS

reduces the network traffic and the delivery delay com-

pared to the algorithms with social information and shows

suitable performance compared to the algorithms with

position information; PRoPHET and SimBet exploit only

the contact information and VR and RENA use only the

position information. However, PaSS uses both the social

and position similarities with fuzzy inference through

which two similarities are used adaptively. For this reason,

as PaSS selects proper relay nodes, the performance of

Table 1 Simulation environment

Simulation environment

Network simulator NS-2 v.2.35

Mobility model HCMM

Map size (m2) 450 9 450

Number of nodes 40

Velocity of a node (m/s) 1–9

Simulation time (s) 15,000

Warm up time (s) 1200

Communication range (m) 10 (default), 20, 30, 40, 50

Memory space (the number of

messages)

2, 4, 6, 8, 10 (default)

Number of generated messages per node 1

Other algorithms to be compared Epidemic

PRoPHET

SimBet

Vector routing

RENAFig. 19 Network traffic and delivery delay results

Wireless Netw (2016) 22:1537–1551 1547

123

Page 12: An adaptive routing algorithm considering position and social ...algo.yonsei.ac.kr/international_JNL/adaptive.pdf · encounters another. Thus, nodes must communicate via multi-hopping

PaSS is better than others in terms of the network traffic

and delivery delay.

4.3 Communication range

We look into the network traffic and delivery delay with

various communication ranges (10, 20, 30, 40, and 50 m).

Figure 20 shows the simulation results of the Epidemic,

SimBet, PRoPHET, VR, RENA, and PaSS algorithms. For

all of the communication ranges, most routing algorithms

except RENA have a mostly consistent increase in the net-

work traffic with increasing communication range, which is

limited by the memory space (which is 10 messages in size).

Since RENA is based on the spray and search (SAS) algo-

rithm, the network traffic in RENA shows virtually no

change. Unlike the network traffic, every algorithm experi-

ences a decrease in the delivery delay as the communication

range increases. For all of the communication ranges, PaSS

has better performance in terms of the network traffic and

delivery delay comparedwith other algorithms. The position

similarity was unaffected by changes in the communication

range, but the social similarity was affected. For this reason,

PaSS has smaller changes than other algorithms in terms of

the network traffic. However, VR has as large changes as

other algorithms since it spreads message only using node’s

direction, although it uses position information.

4.4 Memory space

We also analyze the performance with memory spaces of

various sizes. The unit of memory space is the number of

messages; each node can save 2, 4, 6, 8, and 10 messages,

respectively. Figure 21 shows the simulation results of the

Epidemic, SimBet, PRoPHET, VR, RENA, and PaSS

algorithms. When the size of the memory space is bigger,

most of the algorithms except RENA have lower network

traffic and delivery delay. RENA shows almost no changes

both in the network traffic and delivery delay since it is

based on the SAS algorithm. PaSS shows the best perfor-

mance in terms of the network traffic and delivery delay

compared to other algorithms for all of the different

memory space sizes. Although VR has better performance

than PaSS in term of the delivery delay, it shows much

lower performance than PaSS in the network traffic.

Additionally, for the delivery delay, the performance gap

between PaSS and VR is decreased as the memory space

decreases. Such a performance gain made possible by the

fact that PaSS selects proper relay nodes adaptively

through fuzzy inference.

5 Conclusion

In OPPNET, the user similarity is used in many routing

algorithms. However, there are few algorithms that use both

the user similarity and the position similarity. We propose

the PaSS routing algorithm, referred to as the position and

social similarities-based routing algorithm, which exploits a

novel similarity based on the fuzzy inference using both the

contact and position information. The proposed algorithm

selects proper relay nodes to send messages by exploiting

the position and social similarities, which are combined as

Fig. 20 Network traffic and delivery delay with various communi-

cation ranges

0.0

500.0

1000.0

1500.0

2000.0

2 4 6 8 10Del

iver

y de

lay

(sec

)

Memory space (number of messages)

Epidemic PRoPHET SimBet VR RENA PaSS

Fig. 21 Network traffic and delivery delay with various memory

spaces

1548 Wireless Netw (2016) 22:1537–1551

123

Page 13: An adaptive routing algorithm considering position and social ...algo.yonsei.ac.kr/international_JNL/adaptive.pdf · encounters another. Thus, nodes must communicate via multi-hopping

the relevant degrees of social similarity and position simi-

larity for the ratio by fuzzy inference.

Experimental results demonstrate that PaSS reduced the

network traffic compared to the other algorithms. Addi-

tionally, the delivery delay was also shorter (except when

compared to the Epidemic algorithm). Furthermore, our

proposed algorithm effectively uses the memory space;

when the memory size is small, the memory size of our

proposed algorithm has little effect on the delivery delay and

the network traffic compared to the other algorithms, because

PaSS selects relay nodes more accurately by using fuzzy

inference. However, PaSS does have some constraints. Our

proposed algorithm must exchange a significant amount of

information among the nodes and does not consider the up-

to-date information of nodes during the forwarding period. In

the future, we plan to study enhanced dynamic forwarding

algorithms with varying node information in OPPNET.

References

1. Conti, M., & Kumar, M. (2010). Opportunities in opportunistic

computing. IEEE Computer, 43(1), 42–50.

2. Conti, M., Giordano, S., May, M., & Passarella, A. (2010). From

opportunistic networks to opportunistic computing networks.

IEEE Communications Magazine, 48(9), 126–139.

3. Wang, X., Vasilakos, A., Chen, M., Liu, Y., & Kwon, T. (2012).

A survey of green mobile networks: Opportunities and chal-

lenges. Mobile Networks and Applications, 17(1), 4–20.

4. Sheng, Z., Yang, S., Yu, Y., Vasilakos, A., Mccann, J., & Leung,

K. (2013). A survey on the ietf protocol suite for the internet of

things: Standards, challenges, and opportunities. Wireless Com-

munications, IEEE, 20(6), 91–98.

5. Sheng, Z., Yang, S., Yu, Y., Vasilakos, A., Mccann, J., & Leung,

K. (2013). A survey on the ietf protocol suite for the internet of

things: Standards, challenges, and opportunities. Wireless Com-

munications IEEE, 20(6), 91–98.

6. Liu, J., Wan, J., Wang, Q., Li, D., Qiao, Y., & Cai, H. (2015). A

novel energy-saving one-sided synchronous two-way ranging

algorithm for vehicular positioning. ACM/Springer Mobile Net-

works and Applications.

7. Sengupta, S., Das, S., Nasir, M., Vasilakos, A., & Pedrycz, W.

(2012). An evolutionarymultiobjective sleep-scheduling scheme for

differentiated coverage in wireless sensor networks. IEEE Trans-

actions on Systems, Man, and Cybernetics, 42(6), 1093–1102.

8. Yan, Z., Zhang, P., & Vasilakos, A. (2014). A survey on trust

management for internet of things. Journal of Network and

Computer Applications, 42, 120–134.

9. Duarte, P., Fadlullah, Z., Vasilakos, A., & Kato, N. (2012). On

the partially overlapped channel assignment on wireless mesh

network backbone: A game theoretic approach. IEEE Journal on

Selected Areas in Communications, 30(1), 119–127.

10. Rahimi, M., Venkatasubramanian, N., Mehrotra, S., & Vasilakos,

A. (2012). MAPCloud: Mobile applications on an elastic and

scalable 2-tier cloud architecture. In Proceedings of the 2012

IEEE/ACM fifth international conference on utility and cloud

computing, pp. 83–90.

11. Bansal, M., Rajput, R., & Gupta, G. (1999). Mobile ad hoc net-

working (MANET): Routing protocol performance issues and

evaluation considerations. The internet society.

12. Zhang, Z. (2006). Routing in intermittently connected mobile ad

hoc networks and delay tolerant networks: Overview and chal-

lengers. IEEE Communication Surveys Tutorials, 8(10), 24–37.

13. Yao, Y., Cao, Q., & Vasilakos, A. (2013). EDAL: An energy-

efficient, delay-aware, and lifetime-balancing data collection

protocol for wireless sensor networks. MASS, 2013, 182–190.

14. Vasilakos, A., Zhang, Y., & Spyropoulos, T. (2012). Delay toler-

ant networks: Protocols and applications. New York: CRC Press.

15. Attar, A., Tang, H., Vasilakos, A., Yu, F., & Leung, V. (2012). A

survey of security challenges in cognitive radio networks: Solu-

tions and future research directions. Proceedings of the IEEE,

100(12), 3172–3186.

16. Xiao, Y., Peng, M., Gibson, J., Xie, G., Ding-Zhu, D., & Vasi-

lakos, A. (2012). Tight performance bounds of multihop fair

access for MAC protocols in wireless sensor networks and

underwater sensor networks. IEEE Transactions on Mobile

Computing, 11(10), 1538–1554.

17. Yen, Y., Chao, H., Chang, R., & Vasilakos, A. (2011). Flooding-

limited and multi-constrained QoS multicast routing based on the

genetic algorithm for MANETs. Mathematical and Computer

Modelling, 53(11), 2238–2250.

18. Spyropoulos, T., Rais, R., Turletti, T., Obraczka, K., & Vasilakos,

A. (2010). Routing for disruption tolerant networks: taxonomy

and design. Wireless Networks, 16(8), 2349–2370.

19. Liu, J., Wan, J., Wang, Q., Deng, P., Zhou, K., & Qiao, Y. (2015),

A survey on position-based routing for vehicular ad hoc net-

works. Springer Telecommunication Systems.

20. Han, K., Luo, J., Liu, Y., & Vasilakos, A. (2013). Algorithm design

for data communications in duty-cycled wireless sensor networks:

A survey. IEEE Communications Magazine, 51(7), 107–113.

21. Zeng, Y., Xiang, K., Li, D., & Vasilakos, A. (2013). Directional

routing and scheduling for green vehicular delay tolerant net-

works. Wireless Networks, 19(2), 161–173.

22. Chilamkurti, N., Zeadally, S., Vasilakos, A., Sharma, V. (2009).Cross-layer support for energy efficient routing in wireless sensor

networks. Journal of Sensors, 2009, 9.

23. Woungang, I., Dhurandher, S., Anpalagan, A., & Vasilakos, A.

(2013). Routing in opportunistic networks. New York: Springer.

24. Cheng, H., Xiong, N., Vasilakos, A., Yang, L., Chen, G., &

Zhuang, X. (2012). Nodes organization for channel assignment

with topology preservation in multi-radio wireless mesh net-

works. Ad Hoc Networks, 10(5), 760–773.

25. Wei, G., Ling, Y., Guo, B., Xiao, B., & Vasilakos, A. (2011).

Prediction-based data aggregation in wireless sensor networks:

Combining grey model and Kalman Filter. Computer Commu-

nications, 34(6), 793–802.

26. Liu, X., Zhu, Y., Kong, L., Liu, C., Gu, Y., Vasilakos, A., & Wu,

M. (2014). CDC: Compressive data collection for wireless sensor

networks. IEEE Transactions on Parallel and Distributed Sys-

tems, 26(8), 2188–2197.

27. Xu, X., Ansari, R., Khokhar, A., & Vasilakos, A. (2015). Hier-

archical data aggregation using compressive sensing (HDACS) in

WSNs. ACM Transactions on Sensor Networks, 11(3), 45.

28. Li, M., Li, Z., & Vasilakos, A. (2013). A survey on topology

control in wireless sensor networks: Taxonomy, comparative study,

and open issues. Proceedings of the IEEE, 101(12), 2538–2557.

29. Meng, T., Wu, F., Yang, Z., Chen, G., & Vasilakos, A. (2015).

Spatial reusability-aware routing in multi-hop wireless net-

works. IEEE Transactions on Computers, PP(99), 1.

30. Zeng, Y., Li, D., & Vasilakos, A. (2013). Real-time data report

and task execution in wireless sensor and actuator networks using

self-aware mobile actuators. Computer Communications, 36(9),

988–997.

31. Youssef, M., Ibrahim, M., Abdelatif, M., Chen, L., & Vasilakos,

A. (2014). Routing metrics of cognitive radio networks: A survey,

communications surveys and tutorials. IEEE, 16(1), 92–109.

Wireless Netw (2016) 22:1537–1551 1549

123

Page 14: An adaptive routing algorithm considering position and social ...algo.yonsei.ac.kr/international_JNL/adaptive.pdf · encounters another. Thus, nodes must communicate via multi-hopping

32. Busch, C., Kanna, R., & Vasilakos, A. (2012). Approximating

congestion ? dilation in networks via ‘‘quality of routing’’

games. IEEE Transactions on Computers, 61(9), 1270–1283.

33. Li, P., Guo, S., Yu, S., & Vasilakos, A. (2014). Reliable multicast

with pipelined network coding using opportunistic feeding and

routing. IEEE Transactions on Parallel and Distributed Systems,

25(12), 3264–3273.

34. Dvir, A., & Vasilakos, A. (2011). Backpressure-based routing

protocol for DTNs. ACM SIGCOMM Computer Communication

Review, 41(4), 405–406.

35. Youssef, M., Ibrahim, M., Abdelatif, M., Chen, L., & Vasilakos,

A. (2014). Routing metrics of cognitive radio networks: A survey.

IEEE Communications Surveys and Tutorials, 16(1), 92–109.

36. Zhang, X., Zhang, Y., Yan, F., & Vasilakos, A. (2015). Inter-

ference-based topology control algorithm for delay-constrained

mobile ad hoc networks. IEEE Transactions on Mobile Com-

puting, 14(4), 742–754.

37. Li, P., Guo, S., Yu, S., & Vasilakos, A. (2012). CodePipe: An

opportunistic feeding and routing protocol for reliable multicast

with pipelined network coding. INFOCOM, pp. 100–108.

38. Yen, Y., Chao, H., Chang, R., & Vasilakos, A. (2011). Flooding-

limited and multi-constrained QoS multicast routing based on the

genetic algorithm for MANETs. Mathematical and Computer

Modelling, 53(11–12), 2238–2250.

39. Liu, Y., Xiong, N., Zhao, Y., Vasilakos, A., Gao, J., & Jia, Y.

(2010). Multi-layer clustering routing algorithm for wireless

vehicular sensor networks. IET Communications, 4(7), 810–816.

40. Vahdat, A., & Becker, D. (2000). Epidemic routing for partially

connected ad hoc networks. Technical report CS-200006, Duke

University.

41. Spyropoulos, T., Psounis, K., & Raghavendra, C. (2005). Spray

and wait: An efficient routing scheme for intermittently con-

nected mobile networks. In Proceedings of ACM SIGCOMM

2005, pp. 252–259.

42. Kang, H., & Kim, D. (2008). Vector routing for delay tolerant

networks. In IEEE vehicular technology conference, pp. 1–5.

43. Lindgren, A., Doria, A., & Schelen, O. (2004). Probabilistic

routing in intermittently connected networks. Service Assurance

with Partial and Intermittent Resources, 3126(LNCS), 239–254.

44. Daly, E. M., & Haahr, M. (2009). Social network analysis for

routing in disconnected delay-tolerant MANETs. IEEE Trans-

actions on Mobile Computing, 8(5), 606–621.

45. Leguay, J., Friedman, T., & Conan, V. (2005). DTN routing in a

mobility pattern space. In Proceedings of the 2005 ACM SIG-

COMM workshop on delay-tolerant networking, pp. 276–283.

46. Ciobanu, R., Dobre, C., & Cristea, V. (2013). SPRINT: Social

prediction-based opportunistic routing. In 2013 IEEE 14th

international symposium and workshops: World of wireless,

mobile and multimedia networks, pp. 1–7.

47. Hui, P., Crowcroft, J., & Yoneki, E. (2011). Bubble rap: Social-

based forwarding in delay-tolerant networks. IEEE Transactions

on Mobile Computing, 10(11), 1576–1589.

48. Wen, H., Ren, F., Liu, J., Lin, C., Li, P., & Fang, Y. (2011). A

storage-friendly routing scheme in intermittently connected

mobile network. IEEE Transactions on Vehicular Technology,

60(3), 1138–1149.

49. Watts, D. J., & Strogatz, S. H. (1998). Collective dynamics of

‘small-world’ networks. Nature, 393(6684), 440–442.

50. Kaplan, E. D. (1996). Understanding the GPS: Principles and

applications. Artech House.

51. Capkun, S., Hamdi, M., & Hubaux, J. (2001). GPS-free posi-

tioning in mobile ad hoc networks. In Proceedings of the 34th

Hawaii international conference on system sciences.

52. Flower, D. R. (1998). On the properties of bit string-based

measures of chemical similarity. Journal of Chemical Informa-

tion and Modeling, 38(3), 379–386.

53. Willett, P. (1998). Chemical similarity searching. Journal of

Chemical Information and Modeling, 38(6), 983–996.

54. Jyh-Shing, R. J., Chuen-Tsai, S., &Mizutani, E. (1996).Neuro-fuzzy

and soft computing. Upper Saddle River, NJ: Prentice-Hall Inc.

55. Zadeh, L. A. (1965). Fuzzy sets. Information and Control, 8,

338–353.

56. Network Simulator-2. http://www.isi.edu/nsnam/ns/.

57. Boldrini, C., & Passarella, A. (2010). HCMM: Modelling spatial

and temporal properties of human mobility driven by users’ social

relationships. Computer Communications, 33(9), 1056–1074.

Kiyoung Jang is currently an

M.S. candidate in Computer

Science at Yonsei University in

Korea. His research interests

include mobile social networks,

delay tolerant networks and

social network analysis.

Junyeop Lee is currently an

Ph.D. candidate in Computer

Science at Yonsei University in

Korea. His research interests

include mobile social networks,

delay tolerant networks and

social network analysis.

Sun-Kyum Kim received his

M.S. in Computer Science from

Yonsei University in Korea in

2012. He is currently a Ph.D.

candidate at Yonsei University.

His research interests include

mobile social networks, delay

tolerant networks and social

network analysis.

1550 Wireless Netw (2016) 22:1537–1551

123

Page 15: An adaptive routing algorithm considering position and social ...algo.yonsei.ac.kr/international_JNL/adaptive.pdf · encounters another. Thus, nodes must communicate via multi-hopping

Ji-Hyeun Yoon is currently an

Ph.D. candidate in Computer

Science at Yonsei University in

Korea. His research interests

include mobile social networks,

delay tolerant networks and

social network analysis.

Sung-Bong Yang received his

M.S. and Ph.D. from the

Department of Computer Sci-

ence at the University of Okla-

homa in 1986 and 1992,

respectively. He has been a

professor at Yonsei University

since 1994. His research inter-

ests include graph algorithms,

mobile computing, and social

network analysis.

Wireless Netw (2016) 22:1537–1551 1551

123