Catania, Italy, e-mail: {fmessina,pappalardo,santoro}@dmi.unict.it ..... duce a trust mechanism in our approach, trying to detecting misbehaving nodes and.
This is the authors' version of the paper. The final publication is available at Springer via DOI: 10.1007/978-3-319-03524-6_27
A Distributed Agent-based Approach for Supporting Group Formation in P2P e-Learning Fabrizio Messina and Giuseppe Pappalardo and Domenico Rosaci and Corrado Santoro and Giuseppe M.L. Sarn´e
Abstract Peer-to-Peer (P2P) e-Learning systems have been designed to support people, providing them with the advantages brought by the Internet technology.They can be be effectively used to implement cooperative e-Learning systems, where the available knowledge for a student is not only from teachers, but also from other students having similar interests and preference. In such a scenario, a central issue is that of supporting the formation of groups of users having similar interests and satisfying personal users’ constraints. In this paper we propose a novel approach, called HADEL (Hyperspace Agent-based E-Learning), based on an overlay network of software agents. Our approach preserves the users’ privacy, allowing to locally maintain sensitive user’s data and inferring the properties necessary for determining the groups by using agents acting as personal assistants. The results obtained by some tests performed on simulated e-Learning environments show the efficiency of our approach, that suitably exploits the topology of the overlay network, which exhibits the small-world properties.
1 Introduction Nowadays, due to the rapid development of information technology, important changes have been produced in the fundamental ways that people acquire and disseminate knowledge. Several e-Learning systems have been designed to support people, providing them with the advantages brought by the Internet technology. In particular, the Peer to Peer (P2P) paradigm has been widely recognized as the key Fabrizio Messina, Giuseppe Pappalardo, Corrado Santoro Dipartimento di Matematica e Informatica, Universit`a di Catania, V.le Andrea Doria 6, 95125 Catania, Italy, e-mail: {fmessina,pappalardo,santoro}@dmi.unict.it Domenico Rosaci, Giuseppe M.L. Sarn´e {DIIES, DICEAM}, University “Mediterranea” of Reggio Calabria, Via Graziella, Feo di Vito 89122 Reggio Calabria (RC), Italy, e-mail: {domenico.rosaci,sarne}@unirc.it
1
2
Authors Suppressed Due to Excessive Length
driven technology to bring revolutionary impact on the future e-Learning society. P2P technology can be effectively used to implement cooperative e-Learning systems, where the available knowledge for a student is not only from teachers, but also from other students with the same interests. In other words, each actor of an eLearning community can have both the roles of service client and service provider. In such a scenario, a central issue is that of supporting the formation of groups of users having similar interests and satisfying personal users’ constraints. A lot of approaches are attempting to combine peer-to-peer computing and e-Learning together [15, 8, 9, 6, 14, 2]. For example, in [8] it is discussed the potential contribution of the P2P technology into the e-Learning system and it is introduced a novel P2P based e-Learning environment, called APPLE. As another example, the open source project Edutella is an RDF (Resource Description Framework) based E-Learning P2P (Peer-to-Peer) network that is aimed to accommodate heterogeneous learning resource metadata repositories in a P2P manner and further facilitate the exchange of metadata between these repositories based on RDF [15]. Moreover, some approaches for realizing personalized learning support in distributed learning environments have been proposed, as that described in [4], based on Semantic Web technologies, or those presented in , exploiting decentralized recommender systems. However, any of the aforementioned approaches provides a mechanism to facilitate the formation of groups of nodes in the P2P network, such that the resources of the nodes satisfy the requirements of the e-Learning actors associated with those nodes. Obviously, the involved actors (students and teachers) need to find interlocutors having good affinities, for instance in terms of interest or learning level. However, in such a context, important privacy concerns arise for users, since the opportunity to find new contacts based on common interests strongly depends on data which users are willing to share in the network. This is a very typical concern, since affinities among users can be found only by analysing sensitive data that they don’t want to share. These considerations lead to consider the necessity of a distributed middleware capable of assisting each user involved in the e-Learning system, acting as a mediator between the P2P network and the user himself. We argue that a software agent, operating on behalf of the user and equipped with a suitable knowledge representation of the user’s interests and preferences, could be considered as a suitable solution for this purpose. In this paper, we propose a mechanism for supporting the actors of a P2P e.Learning system to form groups of users having similar interests and satisfying specific constraints. The goal of our proposal is that of providing each user with homogeneous environments (the groups), suitable for performing e-Learning activities as participating to seminars and lessons, sharing multimedia contents, making discussions, taking tests and exams and so on. Our proposal is based on an overlay network of software agents [5], which allows the e-learning actors to locally maintain sensitive user’s data, and contact interlocutors having a sufficient level of affinity. In particular, software agents are capable of assisting users by analysing local data in order to extract relevant properties which can help to find other users having similar interests. To this purpose, each agent can be delegated by its own user to start the construction of a custom overlay network called HADEL (Hyperspace
Title Suppressed Due to Excessive Length
3
Agent-based Distributed E-Learning) whose topology reflects the distribution of a set of actors’ properties. The software agents, in order to build the overlay network, exchange messages by a gossip protocol, such that each node of the network contacts all the nodes with which it has interacted in the past. The use of the overlay network allows to reach approximately all the agents/nodes with a limited number of steps and messages, as shown in the experiments we provide in Section 3. Once the properties characterizing the users of the e-Larning system are mapped into the overlay network, the agents can send their requests over the network in order to find a set of agents reflecting some required properties. Moreover, as we will discuss in the experimental section, the searching of suitable nodes is very efficient due to the topology of the network, which exhibits the small-world properties. It is important to remark that, since properties involved in user aggregation are inferred by local data not shared in the P2P network, our approach preserves the user privacy on sensitive data. The remaining of the paper is organised as follows. Section 2 describes the details of the basic scenario, while Section 3 introduces the technique for building the HEDEL network and finding suitable nodes. Finally, an experimental evaluation of the proposed approach is provided in Section 4 and in Section 5 we draw some conclusions and future works.
2 Scenario In our framework, we deal with an e-Learning virtual community, composed by a set U of users. Each user u ∈ U can be considered in some cases a client and in other cases a provider of e-Learning services (ELSs), where an ELS can be, for instance, an online lesson, an exam, an evaluation report and so on. A P2P e-Learning System is associated with the virtual community, represented by a graph G = hN, Ai, where N is a set of nodes, such that each node n ∈ N represents a user of U that we denote by un , and A is a set of arcs, such that each arc a = hn1, n2i represents the fact that the users un1 and un2 mutually interacted in the past. Each user u is assisted by a software agent au , resident on his user machine. The user u, when assuming the role of e-Learning service provider, provides his services via the agent au while, when he assumes the role of client, is assisted by au in his e-Learning activities. We assume that a software agent is allowed to reside on each user machine. Thus, the e-Learning system is fully distributed, since the unique central component is a directory facilitator DF that provides a service of yellow pages (i.e. registration of new users and services, registration of e-Learning resources, search for users, services and resources). In this perspective, local software agents are allowed to retrieve and analyse the personal (local) data of their users, which are considered “sensitive” by the users themselves. Hence software agents can exploit a detailed profile based not only on data shared in the system, but also on private data. Hence the user profile can be used to create new groups of users with a decentralized technique (see Section 3).
4
Authors Suppressed Due to Excessive Length
From hereafter, we will use the terms user and node interchangeably. We also assume that a set ELP of e-Learning properties is associated with the virtual community, where an e-Learning property can represent, for instance, the set of services that the user provides, the set of services that the user is searching for, the user’s interest for an e-Learning topic, the user’s expertise in a given topic, the set of eLearning resources that the user accessed in the past, the set of e-Learning groups which the user joins with, and so on. Moreover, we also assume that each property p ∈ ELP has a value belonging to a given domain D p . For instance, if p represents the user’s expertise or the user’s interest in a given topic, then D p will be a set of positive integer values, while if p represents the set of the e-Learning resources which the agent accessed in the past, then D p will be the set of all the possible sets of resources available in the e-Learning system. Note that all the information necessary for determining the property domains are available in the DF, where users and e-Learning resources are registered. An e-Learning profile schema ELPS is also associated with the virtual community, composed of a list of properties belonging to ELP, denoted by p1 , p2 , .., pl , where l is a value depending on the given virtual community. In this scenario, a profile instance pn is associated with each node n of N, where pn is a list p1n , p2n , ..pln , such that each element pin is an instance of the property pi ∈ ELP. Each user, in order to evaluate if joining or not with an e-Learning group with another user, can express some requirements on the properties of the other user. A requirement on a property p is a boolean function that accepts as input a property p ∈ ELP and returns a boolean value b ∈ {true, f alse}. For instance, a requirement on the expertise on a given topic could state that a user must have an expertise higher than or equal to a given threshold, (e.g. having an expertise on the topic ancient history higher than or equal to 0.5, if the domain of the expertise values is the real interval [0, 1]. The function representing the requirement will return the value true if the statement is verified by the property instance of the user, f alse otherwise. Furthermore, each user u has associated a set of requirements Ru , and u accepts to belong to an e-Learning group if at least the α percent of the members of the group satisfy at least the β percent of the requirements of Ru , where α and β are parameters set by the user u. Moreover, each user u can express his preferences regarding the group types he wants to join with, using the parameters availability, accessibility and interests, where availability is a boolean value, accessibility is a value belonging to the set {public, private, secret} and interests is a set of topics. The value availability = f alse means that u does not desire to join with any group, while availability = true means that u is available to join with a new group under the condition that both the topics of the group are contained in the set interests and the access type of the group is equal to the value of the parameter accessibility. The software agent au associated with the user u is able to perform the following two tasks: • It can be delegated by its user u to form a group of users, based on a set of requirements RSET. To this aim, the agent of u sends a joining request to all the nodes belonging to the admissible region S(RSET), determined by using the
Title Suppressed Due to Excessive Length
5
HADEL protocol (see Section 3). The joining request is a tuple JR = ht, ai, where t is a set of topics associated with the group and a is the access type of the group. • It negatively responses to a request of joining JR = ht, ai with a group coming from another agent am if the parameter availability = f alse. Otherwise, if availability = true, it positively responses if both the topics t of the group are contained in the set interest and the access type a of the group is equal to the value of the parameter accessibility. After this joining, the agent of n periodically verifies that at least the α percent of the group members’ profiles satisfy at least the β percent of the requirements of Rn . If this verification fails, the agent automatically deletes the user u from the group.
3 The HySoN Protocol According to the schema reported in the Section above, any agents can be delegated by its user to form a new group basing on some properties of interest. Therefore the delegated agent will look for a set of agents representing nodes which satsfy the set of requirements RSET. We are considering a large and very dynamic social network, e.g. Facebook, and the data to be analysed by the software agents is distributed over the users machines, therefore to support such a finding process we adopt a peer-topeer approach since it is known to be more efficient and scalable than a centralised solution [7, 3]. The finding schema adopted in this work is derived from a fully decentralised resource finding approach for large scale distributed systems developed and studied by the authors in the recent years [10, 12], and is based on the construction of an overlay network of software agents which is, in fact, the building base of the HADEL protocol. As we discuss in Section 3.2, the HADEL topology reflects the distribution of the selected properties over the users. This characteristic, as we show in Section 4, is the basis for an efficient finding process. The HADEL protocol includes three phases which are depicted in Figure 1. Once user data have been analysed, the delegated agent starts with the dissemination (dashed arrow (1) in Figure 1) of a gossip message starting from its neighbours; the dissemination phase is detailed in Section 3.1. The HADEL overlay construction (dashed arrow (2) in Figure 1) is then executed by the agents already reached by the gossip message, by exploiting the existing links of the social network, as in the dissemination phase. This phase is discussed in Section 3.2. The algorithm used for the HADEL construction is also the basis for the adopted finding process, i.e the third phase (dashed arrow (3) in Figure 1), and is discussed in Section 3.3.
6
Authors Suppressed Due to Excessive Length
Social Network
(3) HySoN finding (p1,p2,...,p3)
A
A
A Analize data Retrieve properties (pi) U
(1) gossip (pi)
A
A A
A
AU (2) HySoN overlay construction
A
A
A
A A
A Agent peer (from user friendship)
A Agent peer
Fig. 1 The HySon Protocol
3.1 Disseminating HySoN overlay construction request In the proposed model it is assumed that whenever two users are friends in the social network, their agents are able to communicate and exchange information. Therefore, the overlay topology used in the dissemination phase reflects the friendship of the social network. The dissemination phase is started whenever an agent is delegated by its user to start the construction of the HySoN overlay network and is explained below: • The user agent sends a “gossip” message to its own neighbours (i.e. the software agent connected to its own friends). • The gossip message contains a list of properties (p1 , p2 , .., pl ) to be used by each agent to compute and expose its own coordinates into the HySoN hyperspace (see Section 3.2). • Once the gossip message is received by the generic agent n, user data are analysed to obtain values for the properties (p1 , p2 , .., pl ) specified in the message; then it forwards the gossip message to a subset of its neighbours, as specified in the gossip algorithm described in Section 4. • Finally, to start with the second phase (overlay construction), agent n connects itself to the sender and starts running the HySoN overlay construction algorithm as described in Section 3.2. Is should be noted that phase 1 (dissemination) and phase 2 (overlay construction) partially overlap, i.e. while the gossip message is still spreading into the social network, the agents already reached by the gossip are executing the overlay construction algorithm, which is described in the Section below.
Title Suppressed Due to Excessive Length
7
3.2 HADEL construction algorithm The HySoN overlay construction is the key for a fast and effective fully decentralised finding process, and it is performed by means of a decentralised algorithm which runs on the agents reached by the gossip message. As specified in the description of the dissemination phase it is assumed that the generic agent n has been reached by the gossip message and has already retrieved the values correspondent to the requested properties. Property values are then mapped into “agent coordinates” in a multidimensional space (i.e. the hyperspace), and can be used to compute the Euclidean distance between agents. The overlay construction algorithm is listed below: 1. Agent n computes the set of agents at 2-hops, say N ′ ; for this aim, it asks to its neighbours the lists of their own neighbours. 2. The set N ′ is ordered by using the Euclidean distance of each agent from n. 3. Agent n selects from N ′ at least degmin near agents, but at most degtrg agents, obtaining the new set of neighbours, say N ′′ . 4. The agent connects to the peers belonging to N ′′ but not already in N; moreover, the connection to the agents in N but not in N ′′ are removed. Moreover, as detailed in [10], during the last step of the construction algorithm, the so-called essentially critical neighbours are preserved to make sure that the overlay network stays connected during the process. The effect of the steps above is to create clusters of agents featuring a short intracluster distance, while keeping long links (i.e. the links preserved for the essentially critical neighbours) between clusters. As proved in [10] this resulting network features a structure quite similar to a small-world [16], i.e. a network which shows a high clustering degree and a very low average path length; these characteristics, as shown in Section 4, are very important to make resource finding effective. Since the Euclidean distance is a similarity measure for the properties mapped on the coordinates, the clusters are characterised by agents exposing properties very closed to each other. Furthermore, by exploiting short links, a fast navigation inside the cluster is possible to e.g. refine the finding process, while, by using long links, the region (i.e. the cluster) close to the admissible region S(RSET) (see next Section) can be quickly reached. Some steps in the construction of an overlay network – in this case two properties/attributes have been mapped – are depicted in Figure 2.
3.3 Finding suitable nodes with HySoN According to the said hyperspace abstraction, not only the single agent can be viewed as a point in the metric space, but also a finding request can be represented
8
Authors Suppressed Due to Excessive Length
Fig. 2 The overlay network construction
in the same way. Such a request carries a set of requirements (RSET ) on the set of properties which are mapped as coordinates of the hyperspace. In this way the request denotes a point representing a corner of a region or semispace whose internal agents are those that expose suitable properties for the given finding request. Such a semi-space is called the admissible region S(RSET ). The finding process is based on a fully decentralised finding algorithm, which is based on the following check-and-forward model: 1. an agent receiving the request checks if its properties satisfy the set of requirements in RSET ; if this is the case, the agent belongs to the admissible region and the finding process continues with step 4; 2. if the set of requirements RSET does not hold for the properties held by the agent, the request is submitted to one of its neighbours, which is selected on the basis of appropriate heuristics which allow the request to reach the admissible region as soon as possible [12]; 3. the algorithm keeps track of all the peers visited (this set is carried together with the request); in this way there are no loops and duplicate messages; 4. when a peer belonging to the admissible region has been found, the other valid peers can be reached by suitably navigating through links[12] in order to build the needed set for the group formation. As we simulated all the phases of the proposed approach (i.e. dissemination, overlay construction and finding process), we discuss the experimental results in the next Section.
4 Experimental results We evaluated the proposed approach in a social network of 106 users through the ComplexSim simulation platform [11, 13]. For this aim, the topology of the social network was based on the well known scale free model proposed by A. Barabasi [1]. For the first phase (dissemination of the overlay network construction request), a probabilistic gossip protocol was employed. It is summarised in the listing 3b (function check gossip()), while listing 3a reports a frame of the behaviour of the HySoN agent, which shows the receiving of the message, the call to the function
Title Suppressed Due to Excessive Length
9
check gossip() and the searching function (the latter has been detailed in Section 3.3 but the pseudo-code is not shown here). The schema of the gossip protocol is very simple, as the behaviour of the function check gossip() is basically tuned by the threshold parameter v. When v is close to 1, the gossip message is likely to be propagated to the whole agent’s neighbourhood; in this case the hubs of the network generates, in average, huge bags of messages, but it can involve in an excessive overhead. Conversely, in order to reach most of the nodes, the threshold v should not be too low. Furthermore, a TTL (Time-To-Live) and a message cache – the latter is maintained by each agent – are needed to stop the process in a few steps and to limit the number of duplicated messages. The experimental results (in logarithmic scale) of the dissemination phase – in terms of number of nodes reached by the gossip, and generated messages, for different values of the threshold v (see Listing 3b) and T T L = 3 – are reported in Figure 4a. We note that when the threshold span in the range 0.4 ÷ 0.5, about the 80% of nodes can be reached with no more than (about) 3n messages (where n is the total number of nodes). Moreover, the cost of the gossip protocol in terms of time-steps, has been measured and is comparable to the average path length of the network (< 10), hence it is negligible. Table 4b gives the main characteristics of the HADEL overlay network – i.e. the result of the second phase – in terms of average minimum path (see index l) and clustering coefficient (see parameter C) for two couples of degree thresholds (parameter degmin and degtrg , discussed in Section 3.2). These data make evidence that the resulting overlay network exhibits the small world properties (i.e. low geodesic path, l, and high clustering coefficient, C). We also observed that the HADEL clustering algorithm leads to a stable network after a few steps (about 10). In the end we carried a set of simulation of the finding algorithm in the resulting network (third phase), measuring the total number of time-steps to reach the admissible region S(RSET). The results are shown in Figure 4. In this case the coordinates of the nodes were appropriately tuned for the different experiments; in this way the ratio of suitable nodes (x-axis in Figure 4), i.e. nodes which can satisfy the constraints of the finding requests, assumed the desired range.
// Agent (n) behaviour // ... msg = receive msg(n ); if ( check gossip (msg,n,v)==1) // Starts the hyson clustering // The sender is the first neighbour hyson(msg.sender , msg. properties ); else if ( is finding (msg,n)==1) // distributed search // algorithm search (msg.request ) Fig. 3 a) Agent behaviour
int check gossip (msg,n,v){ if (! is gossip (msg)) return 0; if (!( is cached (msg,n) OR msg.ttl == 0)) put msg in cache (msg,n); msg = create msg(msg. ttl −1) for all nn in neighbours (n) if random uniform(0,1) < v send(msg, nn) return 1; else return 0; } b) Gossip function
10
Authors Suppressed Due to Excessive Length
1e+07
degmin = 6, degtrg = 8 T Density Degree l min max avg 0 2.0e-6 1 21 2.0 19.4 1 9.7e-6 6 147 9.7 24.6 ... 10 1.0e-5 6 41 10.4 13.5 degmin = 18, degtrg = 20 T Density Degree l min max avg 0 2.0e-6 1 34 2.0 17.4 1 2.9e-5 18 981 29.1 9.6 ... 10 3.3e-5 18 188 32.8 4.4
Visited Tot-Msgs
1e+06
100000 0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
Gossip threshold (v)
C 1e-6 0.38 0.20 C 1e-6 0.25 0.24
Fig. 4 a) HySoN request Dissemination b) Main characteristics of the HySoN topology (T=timestep, l=Geodesic Path, C=clustering coefficient)
Number of steps
1000
quartiles median
100
10
1
0.7
0.6
0.4
0.3
0.2
0.1
Ratio of suitable nodes
Fig. 5 Number of steps to reach the admissible region basing on the requirements RSET
As depicted in Figure 4, the finding algorithm performs well in terms of timesteps (see first quartile, median and third quartile) even when the ratio of suitable nodes is rather low (i.e. 0.1 − 0.2). This result is due to the fact that the agents holding similar properties are connected with high probability, while the average geodesic path is maintained small enough. Basing on the last results we can remark that the cost due to the construction of the HADEL network shown in Figure 4a is compensated not only by the privacy improvements for the users (we discuss this concern in Section ?? and 2), but also by the performance of the finding process. Indeed, once the network has been con-
Title Suppressed Due to Excessive Length
11
structed, multiple requests can be sent by different agents according to additional requirements provided by their own users.
5 Conclusions and future works P2P e-Learning systems allow users to collaborate in a virtual e-Learning environment, performing activities as sharing multimedia contents, participating to discussions, lessons and exams, etc. In this context, personalizing e-Learning activities is a key issue, and in particular the need of forming groups where the members satisfy personal requirements arises. Although many P2P systems that have been proposed in the past deal with personalization issues, any of them propose mechanisms to support group formation. In this paper, we have presented an agent-based P2P approach to support the users of an e-Learning virtual community in the formation of groups composed of users having similar interests and preferences. Our approach is based on an overlay network of software agents, which allows the users to preserve their privacy, locally maintain sensitive information, and at the same time provides an efficient mechanism for each user to reach promising interlocutors. Each personal agent operates on its user’s behalf, analysing the local user’s information in order to extract relevant properties which are then exploited to find the most appropriate interlocutors. The selected users are then organised into a custom overlay network called HADEL, built by exchanging mutual messages between the software agents using a gossip protocol. An experimental evaluation we have performed on a large network of simulated users show that our approach is capable of reaching approximately all the agents in a small number of steps and with a limited number of exchanged messages. The experiments also show that the search of suitable nodes is very efficient due to the topology of the network, which exhibits the small-world properties. We highlight that the main advantage of our approach is that the local information about each user involved in group formation are collected by personal agents that use them to communicate with each other, without revealing them, and thus preserving the users’ privacy with respect to their sensitive data. It is important to remark that in our framework we have assumed a “honest”behaviour of the users belonging to the e-Learning community when declaring their properties. In other words, in this current version, our framework does not cover the possibility of misleading or fraudulent behaviour, that will compromise the result of the group formation activity. For the future, we are planning to introduce a trust mechanism in our approach, trying to detecting misbehaving nodes and thus limit their influence in the formation of groups.
12
Authors Suppressed Due to Excessive Length
References 1. A.L. Barab´asi and R. Albert. Emergence of scaling in random networks. science, 286(5439):509–512, 1999. 2. Elsie SK Chan. An innovative learning approach: Integrate peer-to-peer learning into blended learning. International Journal of Global Education, 1(1), 2012. 3. Talia D. and Trunfio P. Toward a synergy between p2p and grids. IEEE Internet Computing, 7(4):94–96, 2003. 4. Peter Dolog, Nicola Henze, Wolfgang Nejdl, and Michael Sintek. Personalization in distributed e-learning environments. In Proceedings of the 13th international World Wide Web conference on Alternate track papers & posters, pages 170–179. ACM, 2004. 5. J. Ferber. Multi-agent systems: an introduction to distributed artificial intelligence, volume 1. Addison-Wesley Reading, 1999. 6. Lican Huang. e-learning based on semantic p2p networks. In Networking and Distributed Computing (ICNDC), 2012 Third International Conference on, pages 105–107. IEEE, 2012. 7. A. Iamnitchi and I. Foster. A peer-to-peer approach to resource location in grid environments. In Grid Resource Management. Kluwer Pub., 2003. 8. Hai Jin, Zuoning Yin, Xudong Yang, Fucheng Wang, Jie Ma, Hao Wang, and Jiangpei Yin. Apple: a novel p2p based e-learning environment. In Distributed Computing-IWDC 2004, pages 52–62. Springer, 2005. 9. Kazuo Kuramochi, Takao Kawamura, and Kazunori Sugahara. Nat traversal for pure p2p e-learning system. In Internet and Web Applications and Services, 2008. ICIW’08. Third International Conference on, pages 358–363. IEEE, 2008. 10. F. Messina, G. Pappalardo, and C. Santoro. Exploiting the Small-World Effect for Resource Finding in P2P Grids/Clouds. In Proc. 20th IEEE Int. Work. on Enabling Technologies: Infrastructures for Collaborative Enterprises, pages 122–127, 2011. 11. F. Messina, G. Pappalardo, and C. Santoro. Complexsim: An smp-aware complex network simulation framework. In Complex, Intelligent and Software Intensive Systems (CISIS), 2012 6th Int. Conf. on, pages 861–866. IEEE, 2012. 12. F. Messina, G. Pappalardo, and C. Santoro. Decentralised resource finding in cloud/grid computing environments: A performance evaluation. In Enabling Technologies: Infrastructure for Collaborative Enterprises (WETICE), IEEE 21st Int. Work. on, pages 143–148. IEEE, 2012. 13. F. Messina, G. Pappalardo, and C. Santoro. Complexsim: a flexible simulation platform for complex systems. International J. of Simulation and Process Modelling, 2013. ´ 14. Angel Navarro-Estepa, Fatos Xhafa, and Santi Caball´e. A p2p replication-aware approach for content distribution in e-learning systems. In Complex, Intelligent and Software Intensive Systems (CISIS), 2012 Sixth International Conference on, pages 917–922. IEEE, 2012. 15. Wolfgang Nejdl, Martin Wolpers, Wolf Siberski, Christoph Schmitz, Mario Schlosser, Ingo Brunkhorst, and Alexander L¨oser. Super-peer-based routing and clustering strategies for rdfbased peer-to-peer networks. In Proceedings of the 12th international conference on World Wide Web, pages 536–543. ACM, 2003. 16. D. Watts and S.J. Strogatz. Collective Dynamics of ‘Small-World’ Networks. Nature, 393(6684):440–442, 1998.