FollowMe: One Social Importance-Based Collaborative Scheme in MONs

: The performance of mobile opportunistic networks mainly relies on collaboration among nodes. Thus far, researchers have ignored the inﬂuence of node sociality on the incentive process, leading to poor network performance. Considering the fact that followers always imitate the behavior of superstars, this paper proposes FollowMe, which integrates the social importance of nodes with evolutionary game theory to improve the collaborative behavior of nodes. First, we use the prisoner’s dilemma model to establish the matrix of game gains between nodes. Second, we introduce the signal reference as a game rule between nodes. The number of nodes choosing different strategies in a game round is used to calculate the cumulative income of the node in combination with the probability formula. Finally, the Fermi function is used to determine whether the node updates the strategy. The simulation results show that, compared with the random update rule, the proposed strategy is more capable of promoting cooperative behavior between nodes to improve the delivery rate of data packets.


Introduction
Mobile opportunistic networks (MONs) utilize node mobility to form communication opportunities to overcome challenging scenarios.This approach naturally makes it possible to achieve the goals of ubiquitous interconnection and a thorough perception for the Internet of Things, and can be applied to many fields such as device-to-device communication, data offloading, and intelligent transportation [1].
The collaboration behavior of nodes plays an important role in MONs because nodes need to store/forward packets from/to others.However, considering the limited storage space and the consumption of battery power, nodes show a certain degree of selfishness in MONs.They tend to maintain their own interests sometimes and refuse to serve others.Therefore, it is highly important to encourage additional nodes to participate in the data forwarding process.
Many incentive models have been proposed to improve the cooperative behavior of nodes, such as the reputation system [2], the virtual money mechanism [3], and the tit-for-tat method [4].All of these models are based on a passive scheme, that is, nodes have to forward/receive packets as much as possible to enable them to gain a higher reputation, or earn more money, or send a larger number of packets.In fact, the nodes in MONs show strong self-similarities as they are carried by people.Based on the social learning and psychological theories, they always imitate others' behavior, especially those of high social importance.Recent studies verified the existence of imitating behavior in ethics [5], consumption [6] and cooperation [7].Taking this into account, in this paper, we propose FollowMe, an evolutionary game-based solution to motivate nodes participating in MONs.FollowMe introduces the sociality of nodes into the signal game model, in which the signal indicates the social importance of nodes and will be sent to the other nodes in each round.A node designated as a social node in an MON sends the signal reference m 1 with high social importance; otherwise, it sends the signal m 2 with low social importance.Our main contributions are summarized as follows:

•
We establish the signaling game model between nodes by introducing the social importance, which is deemed to be a signal.

•
We calculate the income of a node based on the prisoner's dilemma model and combine the income with the forwarding probability of nodes, rather than merely considering the cumulative incomes for all rounds.

•
Compared with the random update strategy, FollowMe achieves more effective network performance in terms of routing.
The remainder of this paper is organized as follows.Section 2 reviews related work.In Section 3, we introduce the preliminaries.Section 4 describes the FollowMe solution.In Section 5, we apply FollowMe to the classical opportunity routing algorithm PRoPHET and SimBet.Section 6 presents the experimental results and analysis.Section 7 concludes the paper.

Related Works
The incentive model used in MONs can be classified into three types: the reputation system, the virtual money mechanism, and the tit-for-tat method.In the reputation system, packets are forwarded to nodes with a more favorable reputation.The value of the reputation is calculated from the historical behavior of nodes [2].The authors of [8] use the number of forwarding times and success rate to estimate the reputation of nodes.A node aiming to enhance its reputation score has to receive/forward packets from/to other nodes; otherwise, it would be excluded from the network if its reputation is below a threshold.The reputation system is effective in situations in which the difference among nodes' reputation scores is large.In contrast, the improvement in collaborative behavior among nodes with similar scores is not obvious.
The virtual currency mechanism enables nodes to gain a certain amount of income if they assist others to forward packets, and the income is paid by the node-sending packets [3].Other researchers proposed Nuglet [9], which installs anti-modified hardware on nodes as a security measure to protect the currency swapping process.The virtual currency mechanism generally requires a central control node in networks and the realization of this mechanism is also extremely complex.Both of these features limit the applicability and scalability of this solution.
The tit-for-tat method is based on the principle of equivalent exchange and uses game theory to construct the knowledge model.In each round, the participants in the game initially adopt a cooperation strategy, after which they imitate their opponent's recent behavior.If the game player in the latest round adopts the cooperation strategy, then the node chooses the cooperation strategy; otherwise, it chooses the betrayal strategy [4].From the perspective of a non-cooperative game, the authors of [10] present a cooperation model with asymmetric information.This model reduces the cheating behavior of rational nodes, which use forged feedback information to increase their income.Although the tit-for-tat method seems to be fair, it may in fact weaken the forwarding efficiency.Imagine a situation in which a node attempts to send additional packets to the receiver, but the node is unable to do this if it only obtains a few packets from the receiver.
Apart from the above mechanisms, some researchers use evolutionary game theory to study the cooperative behavior of bounded rational nodes in different systems and networks [11].
In an evolutionary game, nodes decide their own strategy by observing others' behavior; therefore, designing the game strategy is of key importance.A cautious idea was put forward [12], and properly introduced into the prisoner's dilemma model, and then the random Fermi update rule was used to describe the way in which the prudent idea affects the evolution of cooperative behavior.Martinez et al. [13] proposed a repeated game model to search the services in complex networks, and they used the random walk strategy to forward messages to neighbors.Luo et al. [14] investigated the evolution of cooperation in a memory-based prisoner's dilemma game (PDG) on interdependent networks.Similarly, Meng et al. [15] studied the influence of the neighborhood size and individual density on two interdependent lattices with the PDG model.
Note that none of these researchers considered the influence of the sociality of a node on the collaborative behavior (Many routing algorithms such as Bubble and Hotent [16] employ the social property of nodes; however, to the best of our knowledge, currently incentive works do not evaluate the influence of social importance on the incentive process.),i.e., in each updating round, nodes select strategies randomly from their neighbors to use in the game.In fact, nodes in MONs are always carried by people or installed in vehicles and show strong sociality.They tend to approach other nodes with higher importance in the virtual space similar to human beings in the physical world.Motivated by the aforementioned challenges other researchers encountered, this paper proposes FollowMe, a mechanism for the promotion of cooperative behavior among nodes based on the signal game.We next introduce the details thereof.

Prisoner's Dilemma Model
Generally, the packet forwarding process of MONs may achieve improved forwarding efficiency by way of the vigorous cooperation among nodes.However, because of the limitations imposed by cache space and energy power, nodes are usually confronted by a dilemma.On the one hand, nodes hope to receive help from others; on the other hand, given individuals' selfishness in society, they are unwilling to help others to forward packets.In this study, we use the prisoner's dilemma model to reflect this conflict.
Suppose that there are two nodes x, y and both of them enter each other's communication range, in which case they face the dilemma of deciding whether to forward packets to the other.Based on the prisoner's dilemma model, the two nodes will obtain different profits by using different combinations of strategies, as shown in the following matrix A. If both of them take the cooperative strategy, the reward is R.If one of them takes the cooperative strategy, its bonus is S, whereas that of the opponent is T; otherwise, if neither of them is cooperative, they attract a publishment P. The positive feedback for rewarding the non-selfish behavior in this model maintains a high cooperation efficiency:

Signal Game Model Based on Social Importance
In an MON composed of portable devices, the behavior of nodes reflects certain social attributes due to the sociality of carriers.In addition, nodes are more willing to imitate those of high social importance.Therefore, we reflect the sociality of nodes by introducing the social importance of nodes into game procedure.
Social Importance: We employ the Degree Centrality (DC) [17] to measure the social importance of nodes.The DC of a node is the number of neighbors it has.In general, higher DC signifies higher social importance.Mathematically, let DC x denote the DC of node x; thus, we have DC x = K x /(N − 1), where K x denotes the number of neighbors of node x and N is the number of nodes in the network.This enables us to evaluate the social importance of nodes.Suppose node y is one of the neighbors of x, with its social importance SI y being SI y = DC y /∑ y∈Ω x DC x , where Ω x is the set of neighbors of x.Subsequently, the average social importance of the neighbors of x is SI = ∑ y∈Ωx SI y /k x .Finally, we denote x as a node with high social importance if SI x > SI.

Signal Game Model:
In game theory, a signal game is a dynamic game with incomplete information between two participants: a signal sender S and a receiver R. The game process can be summarized as follows: (a) The sender is assumed to be one type t i from a set T = {t 1 , t 2 , ..., t k }; for all of the types, the probability p(t i ) > 0 and their sum equals 1.(b) The sender observes the type t i and selects a signal m i from the signal set M = {m 1 , m 2 , ..., m l }.(c) After viewing the signal m i (but the receiver cannot see the type t i ), it selects an action a i from the action set A = {a 1 , a 2 , ..., a j }.(d) The sender has a bonus u s {t i , m i , a i } and that of the receiver is u r {t i , m i , a i }.In this study, we assume there are two types of nodes: cooperative and non-cooperative, and set t 1 = cooperative and t 2 = noncooperative.If one of the nodes belongs to t 1 , it participates in the forwarding process with a probability θ; otherwise, 1 − θ.In addition, based on the social attributes of nodes, they can select signals m 1 or m 2 to send, where m 1 and m 2 indicate nodes of high and low social importance, respectively.Furthermore, if the sender or receiver is a highly social node, the receiver will receive and forward the packet, mainly because social nodes help to improve the network performance [18].We here use a 1 to denote the forwarding action; otherwise, a 2 is dependent on the participant status of the receiver.The type of receiver tends to be t 2 only if the receiver/sender is a node with low sociality, i.e., when one of these nodes is not social, the receiver is not willing to participate in the data forwarding process.

The Construction of the Game Tree
First, the social importance degree of a node is regarded as the game signal, and any two nodes of the game are defined as the sender and receiver of the signal.Eight paths are shown in Figure 1: (1) If the sender belongs to the type t 1 and sends the signal m 1 , and the receiver itself is a node of high social importance (m 1 ), the receiver forwards the packet; (2) If the sender belongs to the type t 1 and sends the signal m 1 , and the receiver itself belongs to (m 2 ), it still forwards the packet; (3) If the sender belongs to the type t 1 and sends the signal m 2 , and the receiver itself is a node of high social importance, it chooses the action a 1 ; (4) If the sender belongs to the type t 1 and sends the signal m 2 , and the receiver itself is a node of low social importance (m 2 ), it refuses to receive the packet and selects the action a 2 ; (5) If the sender belongs to the type t 2 and sends the signal m 1 , and the receiver itself is a node of high social importance (m 1 ), it forwards the packet; (6) If the sender belongs to the type t 2 and sends the signal m 1 , and the receiver itself is a node of low sociality, it forwards the packet; (7) If the sender belongs to the type t 2 and sends the signal m 2 , and the receiver itself is a highly social node, it still forwards the packet; (8) If the sender belongs to the type t 2 and sends the signal m 2 , and the receiver itself is a node of low social importance, it selects the action a 2 .According to the signal game process provided above, the packet is collected and spread by the node with high social importance.Because these nodes have more opportunities to contact other nodes, the packet is quickly delivered.On the other hand, considering the fact that the proposed method tends to propagate the cooperative forwarding behavior between social nodes and others, the method encourages additional nodes to participate in the forwarding process.

Game Strategy Update
Income of a node in a round: Based on the prisoner's dilemma game and the aforementioned game tree, nodes have the following four possibilities to earn income.Here, we use two nodes x and y to illustrate these possibilities and suppose x is a signal sender and y is a receiver.
(1) Both of them are willing to forward packets, thus each of them has an income R. Let p 1 x and p 1 y denote the forwarding probability, we have: Proof.From the game tree, we know that there exist three paths (step 1, 2, and 3) in which both nodes take the forwarding strategy.
In step 1, node x belongs to the cooperative type with a probability θ.In addition, both of them are social nodes with a signal m 1 , hence the receiver is also cooperative and forwards the packet with a probability θ.The probability of the path thus is θ × θ × θ = θ 3 .
In step 2, the node y is non-cooperative with a probability 1 − θ; this is mainly because node y itself is a non-social node.The probability of this path is θ × In step 3, the node y remains non-cooperative, but this time the reason is that node x is a social node.The probability of this path is θ × The combination of these steps concludes the proof.
(2) Node x forwards packets with an income S, but y is declined with an income T.This situation happens along path 4. Similarly, we obtain the probability: where p 0 y denotes the probability of rejection.(3) Node x is declined with an income T, but y forwards packets with an income S.This situation happens along paths 5, 6, and 7 since the sender belongs to t 2 .The probability is where p 0 x denotes the probability of rejection of node x.The proof process is similar to that of (1), and we omit it here for a concise presentation.(4) Both of the nodes refuse to forward the packet and each of them has an income P.
Updates of the game strategy: After a round of game with all neighboring nodes, the cumulative gain of node x, i.e., g(x) can be calculated as follows: where c 1 , c 2 , c 3 , and c 4 are the number of times that x gains R, T, S, and P in a round, and c 1 + c 2 + c 3 + c 4 = K x .Simultaneously, node y can obtain its gains by using a similar method.After calculating the accumulated income of each node, the Fermi function is deployed to determine whether node x follows the opponent's game strategy: where a x and a y represent the strategy adopted by nodes x and node y for the current round, respectively; g x and g y are the corresponding cumulative earnings in the current round, and n 0 is the noise factor.If W ≥ α (α is a random number homogeneously distributed within the interval [0, 1]), node x follows the strategy of node y; otherwise, the current strategy is retained.Algorithm 1 expresses the aforementioned process.
Algorithm 1: FollowMe.Proof.We first prove that there exists a fixed point.Let and a i = a x i , a y i denote the signal and action of the node pairs, respectively, we have we can define the following function [19]: Next, let f be a map from S to S and f (s) = ś, where The function f and C are continuous and the signal set S is concave and compact.Therefore, the function f must exit one fixed point based on the fixed point theorem.Now, we prove that the fixed point is in the Nash Equilibrium.Suppose s is in the Nash Equilibrium, i.e., Since ád i support d i players, the denominator of Equation ( 6) must be 1, i.e., ∑ , no pairs can improve their expected income by deviating from their current action.Thus, there exists a Nash equilibrium.

Application
In this section, we integrate FollowMe with the classical opportunity routing algorithms PRoPHET [20] and SimBet [21].Here, we continue using node x, y as examples.Suppose node x encounters node y, node x sends its signal to node y, and the latter then runs FollowMe to determine its action.If both of them are cooperative, then node x runs the corresponding protocol to determine whether it forwards packets to node y.The specific process is shown in Algorithm 2.
Algorithm 2: Process of applying FollowMe to opportunity routing algorithm.if both of them want to receive and forward packets then end if 14: end for

Experimental Results and Analysis
In this paper, we integrate FollowME into the classical routing algorithms PRoPHET and SimBet, and implement it in a custom routing simulation platform based on the Visual C++ 6.0.We evaluate its performance metrics by comparing it with the performance of the random update strategy, which is widely used in recent works [13][14][15].We used two real data sets, KAIST and NCSU [22], and one mobility model SLAW, to test the performance of FollowMe under different network conditions.KAIST is obtained from the Korea Institute of Science and Technology (KAIST) and records the daily activities of the population on campus.A total of 34 people participated in the data collection process, each with a handheld GPS device to collect 92 days movement trajectory.NCSU records the moving traces of 20 students in the campus dormitory area from North Carolina University.The detailed information of the datasets are shown in Table 1.This paper uses three metrics to evaluate the performance of routing algorithms: (1) Cooperation Rate (CR): the ratio of the total number of cooperating nodes to the total number of nodes in the network.The higher the cooperation rate, the more nodes in the network are willing to forward messages to other nodes; (2) Packet Delivery Ratio (PDR): the number of data packets to the destination over the total number of packets generated.The higher the PDR, the larger the number of data packets in the network that are successfully delivered to the destination node; (3) Packet Delivery Hops (PDH): the average number of hops required for the data packet to arrive at the destination node from the birth node.The lower the number of hops, the fewer the number of intermediate nodes needed to forward the message, i.e., the lower the demand for network resources.
The simulation parameters are as follows: in the prisoner's dilemma game payoff matrix, R = 1, S = −1, T = 1.5, and P = 0.In the Fermi function, the noise coefficient n 0 = 0.5 and the initial cooperation rate of all nodes in the network θ = 60%.
Figure 2 shows the results of CR between FollowMe and Random.We can observe that the cooperation rate is initially similar; however, FollowMe obviously has a higher CR than Random with the simulation process.Moreover, as the time increases, FollowMe still maintains a high CR while the Random strategy fails to drive nodes.This is mainly because FollowME takes the social importance of nodes into account and use it as a signal to motivate nodes to cooperate.On the contrary, the Random solution just takes the action from one of neighbors as a reference, and the selected neighbors maybe a node with lowly social importance, which has little help to forward packets.The cliff point in the initial stage of the random algorithm is because the random update strategy does not consider the imitation behavior between nodes, and all nodes tend not to forward data (the most benefit when not forwarding).Therefore, in order to maximize the benefits of each node, each node achieves a stable state in a short period of time, but the cooperation rate is low.Figures 3 and 4 evaluate the PDR performance of FollowMe in PRoPHET and SimBet, respectively.Clearly, the PDR of FollowMe is almost twice as high than that of Random during the entire simulation.This is mainly because the CR of FollowMe is higher than that of Random, which means more nodes are willing to assist other nodes to relay data packets.Hence, additional data packets can be relayed, increasing the probability of contact with the destination and improving the PDR slightly.On the other hand, FollowMe introduces the social-related signal game strategy, which allows data packets to be relayed mainly by nodes of high social importance that could contact a greater number of other nodes.This helps to increase the probability of data packets reaching their destination.Figure 5 shows the number of hops of the two incentive mechanisms with ProPHET.It is obvious to see that FollowMe generally has a smaller hop than Random.For example, in the SLAW scenario, the length of forwarding path generated by FollowME within ProPHET tends to an average of 4.9, while that of Random within ProPHET is about 5.7 and higher as shown in Figure 5c.The reason is similar as those of PDR.Recall that FollowME employs social nodes to forward packets, which naturally reduces the number of hops.

Conclusions
In this paper, we introduce the signal reference in the game process of the node, and combine the social attribute, i.e., the degree of social importance, with the packet forwarding mechanism of the node to simulate the dynamic behavior of the node in a real network.Then, the experimental results are compared with the random update rule.The simulation results showed that, for the same real data set, the model greatly improves the cooperation rate among nodes and the packet delivery rate for promoting the node cooperative behavior, and the number of hops is also lower.
These indicators show that the proposed strategy to promote cooperative behavior has greatly progressed toward improving the overall performance of the network, by actively promoting the cooperative behavior of the nodes in the network.

Figure 1 .
Figure 1.The signal game paths between two nodes.

1 :
for each node x, y ∈ V do 2: if x and y are within the communication range and x is the sender of the packet then

5 : 6 :
for any packets to be sent to y do if y is the destination node of the packet then 7: y receives and stores the packet in the buffer 8:else if y is the more appropriate carrier for the packet than x then 9:y receives the packet and stores it in the buffer 10:

Figure 2 .
Figure 2. Cooperation rate of FollowME and Random with different routing protocols under three scenarios.

Figure 3 .
Figure 3. PDR of FollowME and Random within PRoPHET under three scenarios.

Figure 4 .
Figure 4. PDR of FollowME and Random within SimBet under three scenarios.

Figure 5 .
Figure 5.The number of hops of FollowME and Random within PRoPHET under three scenarios.
Every finite game has at least one Nash Equilibrium.
1: if it is time to start the game then 2: for each node pair (x, y) do 3: if x and y enter each other's communication range then 4: if both of them are willing to forward packets then 6:else if x will forward packets but y is declined then 8:else if x refuses to forward packets but y is friendly then Using the aforementioned two equations, we obtain ś a d i = s d i a d i , which implies s is a fixed point of function f .Conversely, let s be any arbitrary fixed point, we have u d i , ád i (s) ≤ u d i (s), which implies á must satisfy s, i.e., śd i ád i = s d i ád i .Using Equation (5), we have