Research Article  Open Access
Evolutionary Game TheoryBased Evaluation of P2P FileSharing Systems in Heterogeneous Environments
Abstract
PeertoPeer (P2P) file sharing is one of key technologies for achieving attractive P2P multimedia social networking. In P2P filesharing systems, file availability is improved by cooperative users who cache and share files. Note that file caching carries costs such as storage consumption and processing load. In addition, users have different degrees of cooperativity in file caching and they are in different surrounding environments arising from the topological structure of P2P networks. With evolutionary game theory, this paper evaluates the performance of P2P file sharing systems in such heterogeneous environments. Using micromacro dynamics, we analyze the impact of the heterogeneity of user selfishness on the file availability and system stability. Further, through simulation experiments with agentbased dynamics, we reveal how other aspects, for example, synchronization among nodes and topological structure, affect the system performance. Both analytical and simulation results show that the environmental heterogeneity contributes to the file availability and system stability.
1. Introduction
File sharing is one of key technologies for achieving attractive multimedia social networking. Each user treasures multimedia contents, for example, video and music, in his/her own terminal and they are shared with other users. Since the number of users continues to increase and user terminals become more heterogeneous with the development of mobile technologies, it is desirable to achieve file sharing in a form of peertopeer (P2P) systems, which are selforganized and scalable without any specific infrastructure.
To realize effective P2P filesharing, two key issues should be considered: User selfishness and heterogeneity. Since each node participating in the system is a user's terminal, it is controlled by the user. In general, each user is selfish and hesitates to actively share files due to costs for file caching, such as storage consumption, processing load, and bandwidth consumption [1]. On the other hand, the heterogeneity of user environments can be classified into self environments and surrounding environments. Each user potentially has a cooperative degree in file caching, depending on its terminal performance, access link capacity, and sense of value to the file, a On the other hand, the surrounding environment is represented as the connectivity relationship between nodes, which is determined by the topological structure of P2P networks. Each user has to determine its behavior so as to maximize its own benefit, taking account of the behavior of its neighboring nodes. These user environments are unique to each user and become more heterogeneous with the increase of nodes and the development of mobile technologies. In this paper, we reveal how these heterogeneity affects the performance of P2P filesharing systems.
For this purpose, we utilize evolutionary game theory, which is a framework to examine what kinds of phenomena emerge from mutual interactions among many and heterogeneous individuals [2]. Evolutionary game theory was originally devised to reveal the mechanism that superior genes with high fitness for the environment are inherited from ancestors to offspring, through competition among individuals in the evolutionary process of organisms. In P2P filesharing systems, the system behavior emerges from interactions among potentially selfish nodes. In view of a similarity between biological societies and P2P filesharing systems, we apply evolutionary game theory to revealing how the selfish nodes' behavior affects the performance of the whole system under heterogeneous environments.
Evolutionary game theory provides us with both theoretical and simulationbased approaches, that is, micromacro dynamics [3] and agentbased dynamics [4]. Micromacro dynamics mathematically describes the dynamic behavior of a micromacro loop that defines interactions between micro behaviors and macro behaviors, where micro behavior and macro behavior are regarded as actions of heterogeneous individuals and the collective behavior resulting from mutual interactions among individuals, respectively. Thus micromacro dynamics enables us to analytically reveal how interactions about file caching among nodes affect the caching condition of the whole system. In particular, it is a great advantage of micromacro dynamics that the system performance and stability condition are expressed in terms of system parameters, including the degree of user selfishness.
Note that micromacro dynamics assumes each node to be able to know the behavior of all other nodes, even though it may be difficult in largescale networks. Agentbased dynamics can complement this shortcoming by introducing a network for communication and modeling the node behavior based only on local interactions between adjacent nodes in the network. It models a phenomenon that a superior strategy spreads over the network in a hopbyhop manner. Consequently, we can find out the system characteristics in various network topologies, where nodes behave selfishly based on their local information. In addition, with agentbased dynamics, we can also examine the impact of synchronization/asynchronization among nodes, the distribution of cached files, and the impact of highdegree nodes' characteristics and behavior on the overall performance.
We model interactions about file caching among nodes as a caching game between two nodes, where payoff matrices are different among nodes. We then show that the cooperative degree of each node in file caching can be represented by a single parameter (called the threshold) deduced from its payoff matrix. We assume that threshold values of nodes follow Zipf’s law, and represent the user heterogeneity in terms of this parameter. Applying evolutionary game theory to this model, we reveal the performance of P2P filesharing systems in heterogeneous environments.
The rest of the paper is organized as follows. In Section 2, we introduce several research backgrounds and related works. We explain the system model in Section 3 and describe the overview of evolutionary game theory in Section 4. Section 5 provides theoretical analysis of micromacro dynamics and Section 6 shows the result of simulation experiments with agentbased dynamics. Finally, we conclude this paper in Section 7.
2. Related Works
There are several studies on existing P2P filesharing systems such as Napster [5], Gnutella [6], KaZaA [7], and BitTorrent [8], based on real measurement [1, 9–12]. They revealed the system characteristics, for example, the system scale, the number and kinds of shared files, and the distributions of available bandwidth, search latency, and life time. Furthermore, some of them focused on user selfishness [1, 9, 12]. Those works discussed the characteristics about nodes' cooperative degree to file sharing in terms of the number of cached files per node and access link capacity declared to other nodes, and they insisted that there are free riders that only download files.
The increase of freeriders deteriorates the file availability, which is one of the most important performance metric for each user. For a specific file, the file availability is defined as the ratio of the number of nodes caching the file to the total number of nodes in the system. The file availability should be positive, otherwise nodes could not retrieve the file. Note that users may hesitate to cooperatively cache files due to the cost for file caching, such as storage consumption, processing load, and bandwidth consumption. This would be the major factor in the increase of free riders. The impact of the user selfishness on the system performance, however, have not been figured out completely.
In recent years, several researchers applied game theory to studying the relationship between the user selfishness and the system performance [13, 14]. They insisted that the free riders can be reduced by introducing incentive mechanisms, where in compensation for caching files, nodes can obtain payments and/or reputations from other nodes retrieving them. Such incentive mechanisms, however, require exchange of correct information about the payments and/or reputations, and thus they are not applicable to such systems as Freenet [15] that provides nodes with anonymity in communication.
The relationship between the user selfishness and the cooperative behavior among users has also been attracting attention in research fields other than information networking. Refs [16–18] employ evolutionary game theory for studying the human society consisting of heterogeneous individuals and explore what mechanisms lie behind the emergence of the cooperative behavior under temptation to be selfish. They found that the emergence of the cooperative behavior are closely related to the topological structure of the human society, users' sense of value to cooperativity, and so on.
With the help of these knowledge, several researchers have been applying evolutionary game theory to the control of information networks and the performance evaluation of information systems [19, 20]. Hales and Arteconi proposed SLACER algorithm that controls the topological structure of P2P networks, based on evolutionary game theory [19]. In SLACER, each node updates its neighboring nodes so as to maximize its own payoff, under the assumption that cooperative groups can yield more payoffs than uncooperative groups. Consequently, multiple groups of cooperative nodes are constructed, which look like a proteinstructure topology [21].
Using evolutionary game theory, Sasabe et al. evaluated the performance of P2P file sharing systems [20]. They modeled interactions about file caching among nodes as a caching games. Through theoretical analysis and simulation experiments, they showed the game structure for maintaining the positive file availability. Note that they considered only the situation that the benefit and the cost for file caching are identical among nodes. In practice, however, they can vary from node to node.
3. System Model
3.1. Overview
We describe the P2P file sharing system considered in this paper. There are nodes in the system. Each node first obtains a set of file holders (i.e., nodes that have the desired file), using one of existing search methods. It then retrieves the desired file from one or more nodes in the set. After retrieval, it can become a new holder of the file. Because costs accompany file caching, each node communicates with other file holders about whether or not to keep caching the file. In this paper, we model interactions among file holders as caching games under the presupposition that each file holder plays caching games with other file holders successively. Each node determines if it keeps caching the file, based on the results of a series of games. For simplicity, we focus on a single file and assume that any node in the system can be a file holder. Note that the result in this paper is applicable to the situation that there are many files and nodes that make independent decisions of caching each file.
3.2. Caching Game
3.2.1. Strategy and Payoff
Table 1 shows a general payoff matrix between two players used in game theory. A defector exploiting a cooperator obtains and the exploited cooperator receives . Both players receive () when they cooperate (defect) each other. Prisoner's dilemma game () and snowdrift game () are wellknown examples.

In P2P file sharing systems, each node has two strategies: caching () and no caching (). The node with (resp., ) corresponds to a cooperator (resp., defector). The work in [20] shows that cooperative caching can be accomplished if .
The parameters of the payoff matrix can vary from node to node in practice, because a large variety of users can participate in P2P file sharing systems and the sense of value to a specific file is different among users. In order to represent such a user heterogeneity, we extend Tables 1 and 2, where we assume () for each node . As a result, our game model can be categorized into an asymmetric complementarity game with complete information for two players in which the payoff matrix is asymmetric, taking different strategy of the opponent yields better payoffs, and the player has complete information about the payoff matrix.

3.2.2. Strategy Selection
As mentioned above, every node decides whether to cache the file after a certain number of caching games with other nodes. At each game, the node rationally behaves; it selects one of strategies and , which acquires more payoff than the other. In what follows, we describe the detail of the strategy selection.
We define as the ratio of the number of cooperators (i.e., nodes selecting ) to the total number of nodes in the systems at time . The expected payoff that node () obtains when selecting is given by
Similarly, we have the expected payoff that node obtains when selecting :
Node then selects the strategy with higher expected payoff. When , node is assumed to select so that we evaluate the system performance in a less cooperative situation. Thus the strategy of node at time is given by
It then follows from (1)–(3) that
where denotes the threshold parameter of node , which represents the degree of cooperativity of node :
Under the condition , ranges from 0 to 1. From (4), we find that node prefers taking the cooperative strategy if approaches to one. Thus the larger indicates that node is potentially cooperative. We should also note here that each node can determine its behavior (strategy) based only on its own and surrounding information .
3.3. Heterogeneous Environments
We consider two kinds of heterogeneity: user heterogeneity and network heterogeneity. The user heterogeneity represents the diversity of cooperative degrees of nodes in caching a specific file. On the other hand, the network heterogeneity arises from the topological structure of P2P filesharing networks.
3.3.1. Cooperative Degree in File Caching
In P2P file sharing systems, it is natural that each node should have different senses of value to a specific file. We model this user heterogeneity by assuming that 's are different among nodes. It is also reasonable to assume that most of users are uncooperative because costs accompany file caching. Thus we assume that the distribution of follows Zipf’s law; namely, ’s () are assumed to be independent and identically distributed (i.i.d.) according to a truncated Pareto distribution with support and shape parameter . Let denote the probability density function of . We then have
Note here that is closely related to varieties of the threshold and determines the degree of the bias of threshold values. Thus the user heterogeneity is mainly dominated by , and the users' sense of value becomes more heterogeneous with the increase of .
3.3.2. Topological Structure
The topological structure determines the locality of information that each node can obtain through interactions with other nodes. Note that communication overhead in terms of the total number of transferred messages increases with the hop count between two nodes. In most P2P networks, a topological structure is determined by rules for updating links between nodes and the average number of links per node, that is, node degree. In this paper, we consider three kinds of topologies: fullmesh, random, and scalefree networks.
In the fullmesh network, all nodes are directly connected each other. However, the assumption of the fullmesh network may not be realistic in largescale systems. Therefore, to gain a deep insight about the impact of the topological structure, we also evaluate the system performance under Waxman random networks [22] and scalefree networks based on BarabásiAlbert (BA) model [23].
The Waxman random network is constructed by connecting each node pair by a link with probability :
where denotes the distance between nodes and , denotes the maximum distance between arbitrary nodes, and and are control parameters. Equation (7) indicates that the probability of establishing a link between two nodes decreases exponentially with the increase of their distance.
The scalefree network is a network whose degree distribution follows a power law: , where denotes the probability that a randomly chosen node has degree and denotes a parameter. In the scalefree network, there are a small number of highdegree nodes and a large number of lowdegree nodes.
4. Evolutionary Game Theory
In societies of organisms, various individuals influence each other. Evolutionary game theory [2] originally aims to reveal the mechanism in which optimum behaviors are inherited by offspring through the evolutionary process of organisms. In the frame work of evolutionary game theory, an individual behavior defined by genes is regarded as a strategy in game theory and the number of offspring selecting the behavior is proportional to payoff acquired by the strategy. In such a case, various individuals are in strategically mutual dependence relation of game theory. Thus we can apply game theory to explaining the phenomenon that superior behaviors spread over a society of organisms through inheritance from ancestors to offspring. Moreover, in sociology and economics, there are several studies using evolutionary game theory, which aim to reveal such a phenomena that valuable information and behavior spread over human societies [16–18].
4.1. MicroMacro Dynamics
Micromacro dynamics [3] is a mathematical tool of modeling the dynamic behavior of a micromacro loop, that is, interactions between micro behavior and macro behavior. Note here that the microbehavior is regarded as actions of heterogeneous individuals and the macrobehavior as a collective behavior arising from mutual interactions among individuals. Thus, using micromacro dynamics, we can reveal how the interactions about file caching among nodes affect the caching condition in the whole system.
Let denote the ratio of the number of cooperators to the total number of nodes in the system at time . Micromacro dynamics describes the transition of as a result of interactions among nodes, which can be obtained as follows. Recall that each node determines the next strategy according to the current and its threshold (see (4)). We define as the cumulative distribution function of the threshold:
Note that is given by the ratio of the number of nodes with to the total number of nodes in the system. Because gives the ratio of the number of nodes with to , we obtain
Equation (9) provides us with the relationship between the user selfishness and the system performance/stability condition. The details will be given in Section 5. Note that (9) represents the system dynamics but each node does not solve this equation. As shown in (4), each node determines its strategy based only on and which is calculated by itself.
4.2. AgentBased Dynamics
Micromacro dynamics is a powerful mathematical tool because it can reveal the impact of system parameters on the system performance. Note that in micromacro dynamics, all nodes are assumed to be able to obtain the global parameter . In actual systems, however, it would be difficult for each node to obtain in a timely manner due to communication overheads.
Agentbased dynamics complements this shortcoming by modeling the decision making of nodes based on local interactions only with neighboring nodes in the network. As a result, agentbased dynamics models a phenomenon that a superior strategy spreads over the network in a hopbyhop manner. Note that micromacro dynamics is equivalent to agentbased dynamics in a fullmesh network where all nodes connect to each other.
In applying evolutionary game theory to P2P filesharing systems, we assume that each node determines its behavior through local interactions with nodes located within () hops. and result in agentbased dynamics and micromacro dynamics, respectively. By controlling , we can reveal how the locality of information exchanged among nodes affect the system performance. Furthermore we can observe the strategy distribution in the network, which can be regarded as the distribution of cached files. In what follows, we give the detail of agentbased dynamics for P2P filesharing systems.
We first define a generation as the time interval of strategy updates. We consider two kinds of systems: Synchronous and asynchronous systems. In the synchronous system, all nodes update their strategies simultaneously at the beginning of each generation, while in the asynchronous system, only one node chosen randomly from the population updates its strategy at the beginning of each generation.
In the th () generation, node (which is eligible to update its strategy at the beginning of the st generation) plays a game once with every node located within hops and calculates the ratio of cooperators including itself. Node then determines the next strategy in the st generation as follows:
Thus, each node does not require the global information to determine its strategy.
Note that the initial strategy () is arbitrary. The impact of the initial strategy distribution will be discussed in Section 6.
5. Analysis of MicroMacro Dynamics
In this section, we analyze micromacro dynamics given in (9). In particular, we are concerned with the file availability, which is defined as the ratio of the number of cooperators to the total number of nodes for a sufficiently large .
5.1. File Availability
Suppose that the system is in steady state. The file availability in steady state should be the fixed point of (9):
which is called the equilibrium. We can numerically obtain the equilibrium with Newton's method [24]. Because () is monotonically decreasing function with and , is unique when and it is given by the intersection of and (see Figure 1).
Figure 2 illustrates the equilibrium as a function of (). In all cases of , 1.0, and 1.2, steeply drops in the range of and converges to a value depending on . We also find that high user heterogeneity, that is, large and , leads to a small . The reason of this phenomenon is that the number of uncooperative nodes increases with and/or (see (6)). The most important result for P2P file sharing systems is that is always positive; there is at least one cached file in the network.
5.2. System Stability
In this section, we discuss the stability of the equilibrium . When the equilibrium is stable, converges to once it reaches the vicinity of the equilibrium. Otherwise, continues to oscillate forever even if it starts from the neighborhood of the equilibrium . Therefore the stability of the equilibrium is significant for P2P file sharing systems to achieve effective and stable file caching. In what follows, we first consider the asymptotic stability of the equilibrium, which ensure the convergence of (9) to from any point in the open neighborhood of . We then extend the discussion to the region where is certain to converge to .
It follows from the standard theory of difference equations [25] that the equilibrium is asymptotically stable if the absolute value of the first derivative of at the equilibrium is less than one. Because is a decreasing function of , we have
The asymptotic stability of the equilibrium depends on parameters and , which determine the degree of the user heterogeneity and its bias, respectively. When , we obtain
where we use in the second equality. It then follows from (12) that a sufficient condition of the asymptotic stability for is given by
Recall that is in and monotonically decreases with (). Therefore (14) is equivalent to
Manipulating (8) and (15), we finally obtain a sufficient condition of the asymptotic stability of the equilibrium for :
Thus the system is asymptotically stable for a sufficiently large when .
On the other hand, when , we obtain
Since this equation is too complicate to analyze, we proceed the discussion with numerical examples. Figure 3 depicts for . We find that the minimum integer that satisfies (12) is equal to 15, 16, and 18 for , 1.0, and 1.2, respectively. Note that when , the minimum integer satisfies (16).
We now consider the region where converges to the asymptotically stable . A simple sufficient condition can be obtained as follows. Suppose that there exists an open region such that and for ,
If , it is easy to see that steadily approaches to because .
It can be shown that if
holds for all () because is a decreasing convex function (see (8)). We assume that is asymptotically stable and let () denote the unique solution of . We then have , where is given by
and is given by the unique solution of . Since is determined by and , the system stability depends on and .
Next we consider the speed of convergence. The highspeed convergence is beneficial because nodes can determine whether to cache a file shortly. In Figure 4(a) () and Figure 4(b) (), we show the transient behavior of governed by (9), where . Comparing these figures, we find that the larger leads to the shorter convergence time, independent of . The reason of this phenomenon is that the slope at the vicinity of the equilibrium becomes gentle with the increase of (cf. Figure 1). This result indicates that high user heterogeneity contributes to fast decisionmaking for file caching. We obtained similar results for , too.
(a)
(b)
(c)
Figure 4(c) shows the case that the equilibrium is not asymptotically stable, where , and . In such a case, does not converge to . Rather, oscillates permanently between 0 and 1 after a certain period of time, depending on . Thus, we cannot achieve effective file caching due to the unpredictable file availability. We confirmed that this property also emerged when .
From the above results, we conclude that high user heterogeneity leads to a stable file caching, while keeping the file availability positive.
6. Simulation Experiments with AgentBased Dynamics
With micromacro dynamics and fullmesh networks, the preceding section analytically derived the relationship between the user heterogeneity and the system performance. In this section, we proceed to evaluate the impact of the network heterogeneity on the system performance, using agentbased dynamics. In particular, we reveal how the system synchronization, the topological structure, and the characteristics and behavior of highdegree nodes affect the system performance. Note that those issues cannot be investigated through micromacro dynamics. Because the distribution of the cooperators can be obtained through simulation experiments, we evaluate search latency, that is, the number of hops to reach the nearest cooperative node, in addition to the performance metrics used in the preceding section.
6.1. Simulation Model
We use NetLogo [26] in our simulation experiments. We prepare fullmesh, random and scalefree networks of 1,000 nodes. Random networks are generated by Waxman algorithm [22] with and . On the other hand, scalefree networks are generated based on BarabásiAlbert (BA) model [23], where the number of links that a newly participating node will establish is set to be 1, 2, or 4. For the sake of comparison, we adjust the average degree in random networks to . We use the topology generator BRITE [27] to generate those random and scalefree networks.
Recall that the threshold () represents the cooperative degree to file caching of node , which are assumed to be i.i.d. according to (8) with . We also set the range of local interactions to be one, so that each node can communicate only with adjacent nodes. Note that increasing brings results similar to those in micromacro dynamics, because micromacro dynamics is considered to be agentbased dynamics with . The initial ratio of the number of cooperators to the total number of nodes is set to be 0.5, unless otherwise stated. We prepare ten independent samples of networks for each topological structure with a set of specific parameter values, and we will show only the average of those ten independent simulation results for each set of specific parameter values.
6.2. Influence of Synchronization
Figures 5(a) and 5(b) illustrate the transient behavior of the synchronous and asynchronous systems, respectively, in the fullmesh network. Comparing Figure 5(a) with Figure 4, we observe that the synchronous system shows transient behaviors similar to the micromacro dynamics, both in the unstable case () and in the stable case (). The reason of this phenomenon is that the synchronous system is configured according to the same assumption as the micromacro dynamics and the stability condition follows (16). From Figures 5(a) and 5(b), we observe that when the synchronous system converges to the equilibrium (i.e., ), the asynchronous system also converges to the same equilibrium. Furthermore the asynchronous system converges even in the unstable case (), independent of the initial ratio of cooperators. Since in the asynchronous system, only one node updates its strategy in each generation, global synchronization among nodes is avoided, and thus the ratio of cooperators does not oscillate. Note that the file availability after convergence is higher than that in the stable case, which would arise from the fact that nodes in the unstable system with are more cooperative by nature than those in the stable system with .
(a) Synchronous system
(b) Asynchronous system
We turn our attention to the speed of convergence. From the lower panels of Figures 5(a) and 5(b), we observe that the asynchronous system takes much generations before convergence than the synchronous system; the former takes about 3,000 generations, while the latter takes about 15 generations. Note here that in the synchronous system, all 1000 nodes update their strategies simultaneously at the beginning of generations, whereas only one node updates its strategy at the beginning of each generation in the asynchronous system. Therefore, in terms of the total number of occasions to update the strategy, the speed of convergence in the asynchronous system is faster than that in the synchronous system, because the number of cooperators does not oscillate in the asynchronous system.
From the above results, we conclude that when there exists the stable equilibrium, the synchronous and asynchronous systems exhibit a similar behavior. In addition, the asynchronous system can be stable even if the equilibrium in micromacro dynamics is not stable. Note also that the asynchronous system is more realistic than the synchronous system. Therefore, in what follows, we consider only the asynchronous system.
6.3. Influence of Topological Structure
Figure 6 illustrates the file availability in the asynchronous system as a function of , where , 2, and 4 in the scalefree and random networks. Recall that users becomes more heterogeneous with the increase of . We observe that for a fixed , the scalefree and random networks have almost the same file availability whose value is always greater than that in the fullmesh network. We also observe that a small leads to a high value of the file availability. To understand these phenomena, we further examine the distribution of cooperators in the network in steady state.
We define the search latency as the average of the number of hops from each node to the nearest cooperator, where the number of hops is equal to zero when the node is a cooperator. Figure 7 shows the relationship between and the search latency in the scalefree and random networks. We find that a randomly chosen node can reach a cooperator within one hop on average even when , where the file availability lies in (0.3, 0.4).
To see the distribution of cooperators over the network, we further define the reachability to cooperators as the average ratio of the number of cooperators within hops from each node to the total number of nodes in the network, where . Thus, for and , the reachabilities to cooperators are given by and , respectively. Figure 8 shows the reachability to cooperators as a function of , where and . For the sake of comparison, we also plot the reachability to cooperators in the case that cooperators are distributed randomly over the network. There is almost no difference between these two cases, and therefore the agentbased dynamics uniformly distributes cooperators over the network. We confirmed that the same result was obtained for . Note that this is caused by the structure of the game: each node can acquire higher payoff by selecting the different strategy of the opponent. Therefore defectors are likely to gather around a cooperator, which leads to the uniform distribution of cooperators. For the same reason, a larger yields more defectors because of the increase of neighboring nodes.
Figure 9 may help understand these phenomena, which illustrates an example of topological structure with transition of strategy distribution in a scalefree network with and . For instance, the ratio of pairs composed of a cooperator and a defector increases from 0.38 () to 0.66 (). Although we set to 100 so as to improve the visibility, we confirmed the similar results under the above mentioned simulation settings.
(a) Initial state ( )
(b) Steady state ( )
Next, we investigate the influence of the topological structure on the transient behavior. Figure 10 illustrates the transient behavior of the file availability in the scalefree network with . The transient behavior in the scalefree network is similar to that in the fullmesh network. Note that the speed of convergence in the scalefree network is slightly faster than that in the fullmesh network when .
(a)
(b)
6.4. Influence of HighDegree Nodes’ Characteristics and Behavior
There are a small number of highdegree nodes in the scalefree network, which are expected to have a greater impact on the system performance than lowdegree nodes. We examine this hypothesis in two ways: threshold assignment evaluation and strategy assignment evaluation.
In the threshold assignment evaluation, we first generated 1,000 samples of the threshold according to (8) and sorted them in a descending order. We then assigned them to nodes in a descending (resp., ascending) order of degree, which makes highdegree nodes cooperative (resp., uncooperative). Figure 11 shows the results of the cooperative and uncooperative cases. For the sake of comparison, we also present the result of the random case, which has already been shown in Figure 6. We observe that the uncooperative case achieves the higher file availability than the cooperative case. This result arises from two factors: game structure and topological structure. Because the game structure encourages a node to take a strategy different from the opponent and highdegree nodes have a lot of neighbors, the uncooperative behavior of highdegree nodes yields many cooperators. The result of the random case is biased towards that of the uncooperative case because each node is subject to be uncooperative potentially due to (8).
Next, we present the results of the strategy assignment evaluation in Figure 12. We call the top 5% of nodes in a descending order of degree hub nodes. In the cooperative (resp., uncooperative) case, we fixed the strategies of hub nodes to cooperators (resp., defectors). The initial strategy of the rest of nodes is determined according to (8). Figure 12 shows the file availability as a function of . We observe similar results with those in Figure 11, which comes from the same reason as discussed in the above.
In actual P2P file sharing systems, both the cooperative and uncooperative cases can occur. The cooperative case corresponds to the situation where a node acquires a lot of connections from others because of its cooperative behavior. On the other hand, the uncooperative case is regarded as the situation where an uncooperative node exploits many cooperative nodes. Note that in either case, the system becomes robust to file disappearance.
7. Conclusions
With evolutionary game theory, we discussed how the selfish and autonomous users' behavior in P2P file sharing systems affects the system performance. In particular, we focused on the heterogeneous users' sense of value to file caching and the heterogeneous topological structure of P2P networks. We first modeled the interactions about file caching among nodes as caching games, assuming that nodes are heterogeneous. With micromacro dynamics, we analytically showed that high user heterogeneity leads to the stable file availability. Furthermore, we conducted simulation experiments based on agentbased dynamics and revealed how local interactions among nodes affect the system performance in the heterogeneous topological structure. The results of the simulation experiments are summarized as follows: (i) the asynchronous system is more stable than the synchronous system, (ii) compared with the topological structure, the game structure has a greater impact on both the file availability and the distribution of cooperators in the system, and (iii) the existence (resp., absence) of cooperative highdegree nodes decreases (resp., increases) the number of cooperative nodes in the system.
Acknowledgments
This research was supported in part by a GrantinAid for Young Scientists (B) 20700061, International Communication Foundation, and “Global COE (Centers of Excellence) Program” of the Ministry of Education, Culture, Sports, Science and Technology in Japan. This paper was presented in part at the 1st International Workshop on Technologies for Ambient Information Society (TAIS'08), Awaji, Japan, 2008, and 2009 International Symposium on Nonlinear Theory and its Applications (NOLTA'09), Sapporo, Japan, 2009.
References
 E. Adar and B. A. Huberman, “Free riding on Gnutella,” Tech. Rep., Xerox PARC, Palo Alto, Calif, USA, 2000. View at: Google Scholar
 J. W. Weibull, Evolutionary Game Theory, MIT Press, Cambridge, Mass, USA, 1997.
 S. Iwanaga and A. Namatame, “The Compexity of Collective Decision,” Journal of Nonlinear Dynamics and Control, vol. 6, no. 2, pp. 137–158, 2002. View at: Google Scholar
 G. Szabó and G. Fáth, “Evolutionary games on graphs,” Physics Reports, vol. 446, no. 4–6, pp. 97–216, 2007. View at: Publisher Site  Google Scholar  MathSciNet
 Napster, http://free.napster.com.
 Gnutella, http://www9.limewire.com/developer/gnutella_protocol_0.4.pdf.
 KaZaA, http://www.kazaa.com.
 BitTorrent, http://www.bittorrent.com.
 S. Saroiu, P. K. Gummadi, and S. D. Gribble, “A measurement study of peertopeer file sharing systems,” in Proceedings of the Multimedia Computing and Networking (MMCN '02), pp. 156–170, San Jose, Calif, USA, January 2002. View at: Google Scholar
 K. P. Gummadi, R. J. Dunn, S. Saroiu, S. D. Gribble, H. M. Levy, and J. Zahorjan, “Measurement, modeling, and analysis of a peertopeer filesharing workload,” in Proceedigs of the ACM Symposium on Operating Systems Principles (SOSP '03), pp. 314–329, New York, NY, USA, 2003. View at: Google Scholar
 J. Pouwelse, P. Garbacki, D. Epema, and H. Sips, “The Bittorrent P2P filesharing system: measurements and analysis,” in Proceedings of the 4th International Workshop on PeertoPeer Systems (IPTPS '05), vol. 3640 of Lecture Notes in Computer Science, pp. 205–216, Springer, New York, NY, USA, February 2005. View at: Publisher Site  Google Scholar
 D. Hughes, G. Coulson, and J. Walkerdine, “Free riding on Gnutella revisited: the bell tolls?” IEEE Distributed Systems Online, vol. 6, no. 6, 2005. View at: Google Scholar
 B.G. Chun, K. Chaudhuri, H. Wee, M. Barreno, C. H. Papadimitriou, and J. Kubiatowicz, “Selfish caching in distributed systems: a gametheoretic analysis,” in Proceedings of the 23rd Annual ACM Symposium on Principles of Distributed Computing (PODC '04), pp. 21–30, St. John's, Canada, July 2004. View at: Google Scholar
 K. Ranganathan, M. Ripeanu, A. Sarin, and I. Foster, “Incentive mechanisms for large collaborative resource sharing,” in Proceedings of IEEE International Symposium on Cluster Computing and the Grid (CCGRID '04), pp. 1–8, Washington, DC, USA, 2004. View at: Google Scholar
 Freenet, http://freenetproject.org/index.html.
 F. Fu, L.H. Liu, and L. Wang, “Evolutionary Prisoner's Dilemma on heterogeneous NewmanWatts smallworld network,” European Physical Journal B, vol. 56, no. 4, pp. 367–372, 2007. View at: Publisher Site  Google Scholar
 H. Ohtsuki and M. A. Nowak, “Evolutionary stability on graphs,” Journal of Theoretical Biology, vol. 251, no. 4, pp. 698–707, 2008. View at: Publisher Site  Google Scholar
 F. C. Santos, J. M. Pacheco, and T. Lenaerts, “Evolutionary dynamics of social dilemmas in structured heterogeneous populations,” Proceedings of the National Academy of Sciences of the United States of America, vol. 103, no. 9, pp. 3490–3494, 2006. View at: Publisher Site  Google Scholar
 D. Hales and S. Arteconi, “SLACER: a selforganizing protocol for coordination in peertopeer networks,” IEEE Intelligent Systems, vol. 21, no. 2, pp. 29–35, 2006. View at: Publisher Site  Google Scholar
 M. Sasabe, N. Wakamiya, and M. Murata, “User selfishness vs. file availability in P2P filesharing systems: evolutionary game theoretic approach,” Peer to Peer Networking and Applications, 2009, http://www.springerlink.com/content/n5gv715v18834lj2/. View at: Publisher Site  Google Scholar
 D. Hales and S. Arteconi, “Motifs in evolving cooperative networks look like protein structure networks,” Networks and Heterogeneous Media, vol. 3, no. 2, pp. 239–249, 2008. View at: Google Scholar
 B. M. Waxman, “Routing of multipoint connections,” IEEE Journal on Selected Areas in Communications, vol. 6, no. 9, pp. 1617–1622, 1988. View at: Publisher Site  Google Scholar
 A.L. Barabási and R. Albert, “Emergence of scaling in random networks,” Science, vol. 286, no. 5439, pp. 509–512, 1999. View at: Publisher Site  Google Scholar  MathSciNet
 C. T. Kelley, “Solving nonlinear equations with Newton's method,” in Fundamentals of Algorithms, SIAM, Philadelphia, Pa, USA, 2003. View at: Google Scholar
 S. N. Elaydi, An Introduction to Difference Equations, Springer, New York, NY, USA, 2nd edition, 1991.
 U. Wilensky, NetLogo, 1999, http://ccl.northwestern.edu/netlogo.
 A. Medina, A. Lakhina, I. Matta, and J. Byers, “BRITE: an approach to universal topology generation,” in Proceedings of the 9th IEEE International Workshop on Modeling, Analysis, and Simulation of Computer and Telecommunication Systems (MASCOTS '01), pp. 346–353, Washington, DC, USA, 2001. View at: Google Scholar
Copyright
Copyright © 2010 Yusuke Matsuda et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.