1 / 31

Motivating Cooperation in Peer-to-Peer Communities

Motivating Cooperation in Peer-to-Peer Communities. Helen Bretzke 1 , Julita Vassileva 2 Computer Science Department 1 University of Toronto 2 University of Saskatchewan Canada. Outline. Peer-to-peer communities free-riding and participation. User modelling

april-casey
Download Presentation

Motivating Cooperation in Peer-to-Peer Communities

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Motivating Cooperation in Peer-to-Peer Communities Helen Bretzke1, Julita Vassileva2 Computer Science Department 1University of Toronto 2University of Saskatchewan Canada

  2. Outline • Peer-to-peer communities • free-riding and participation • User modelling • social type of user (w.r.t. cooperativeness) • user interests • user relationships • Motivating Participation • rewards in terms of QoS • creating community awareness • promoting user reflection

  3. What are Peer to Peer (P2P) systems? • Networked applications (“servents”) that act as both servers (producers) and clients (consumers) of shared resources. • Shared resources can be files, bandwidth, computation cycles or human time and effort.

  4. Helen Bretzke CRA-W and NSERC Summer’ 2002 project COMTELLA • A P2P (Gnutella based) system for file sharing and service • users share academic papers, code snippets, help • non-centralized digital library for a research group / class • motivation and community-building Christopher Cox NSERC Summer 2002 project Lingling Sun undergraduate project Yamini Upadrashta Graduate student

  5. What is a free-rider? Resentful peers call them “Leeches”... (and sometimes far worse names.)

  6. A proper definition: A free-rider is a user who consumes far more resources than s/he offers. “almost 70% of Gnutella users share no files, and nearly 50% of all responses are returned by the top 1% of sharing hosts” (Adar & Huberman, 2000)

  7. What’s the problem? Many call free-riding the “tragedy of the digital commons” Others claim that this a poor analogy.

  8. Beyond P2P In any online community where there are costs associated with sharing, free-riding can bring the system to its knees. …e.g. I-Help

  9. I-Help deployment results 2 years, 2000+ users, all undergrad CS classes at the UofS, also in the UK, France and Colombia • Lessons learned: • Usage / participation varies greatly • Should be perceived as adding value • After reaching a “critical mass” becomes self-feeding • Encouraging students to participate is crucial Greer J., McCalla G., Vassileva J., Deters R., Bull S., Kettel L. (2001) Lessons Learned in Deploying a Multi-Agent Learning Support System, Proceedings AIED'2001, IOS Press: Amsterdam 410-421.

  10. Why do they do it? Are users just greedy? Or is there more to it? Users are lagging in a paradigm shift. In the centralized, client-server systems of yore, users grew accustomed to being served. But in the decentralized world of P2P, they must also learn to contribute!

  11. How can we convert piglets into peers? • cultivate user understanding of her new role in a new paradigm. • create a perception in the user of the P2P network as a community of volunteers. • generate and promote a strong sense of this community.

  12. Levels of participation • Bring new files, give help • Provide disk space / processor time • Dispatch requests • Stay on-line • Use and quit

  13. socially motivated altruistic materialistic How to motivateparticipation? • Why do people offer their time and resources? Different people have different motivations: • Some are altruists • Some would help their friends and hope to make new friends through helping • Some seek glory • Some seek high marks • or money…

  14. Know your user! Modelling • User Type:Altruist? Socialist? Materialist? • User Interests:What does she search / need? • User Relationships and Community:Who shares interest with the user? Potential “friends” and “bozos”.

  15. Modelling user type • Monitor user’s actionsregarding file sharing, relative time spent on-line, acts of interrupting service, total balance of user’s giving / taking • Update a number in [-1, 1] representing user’s cooperativeness • Motivational actionsin the interface triggered by passing certain thresholds

  16. Modelling user interests • Define a taxonomy of subject categories (e.g. ACM subject index) • Keep track of the categories of queries ( user interests) • Update user level of interestin each sub-category using reinforcement learning • Keep track of resources or services offered by the user in each interest category

  17. Modelling user relationships • Monitorwho offers services in the user’s areas of interest, whose services the user chooses, the quality of the service, and who uses services offered by the user • Represent each user relationship: For which each area of interest • Strength – how often, how successful service (reinforcement learning used similar to user interests) • Balance – reciprocity of services used/ given • Adapt P2P topology – form a neighborhood for search using the best relationships (“friends”) in the area of search • Propagate further queries of “friends”

  18. Motivating participationReinforcing / rewarding relationships • Friends are treated differently • Transfers not interrupted • Queries processed with priority • Queries are propagated further • Clusters of friends sharing an area of interest • Queries sent to friends in the area • Higher chance to have relevant files • Faster responses • Better quality of files • Better Quality of Service!

  19. Motivating participationBuilding a community • Harness the UM to gather information about the user’s friends and the user’s cooperativeness. • Provide feedback to stimulate awareness and reflection in the user • The trick is to find the right metaphor and create appropriate visualization to convey this feedback.

  20. Social awareness Users suffer from a lack of perspective and a lack of feedback. In such isolation, it is no small wonder that they behave selfishly. In large cities, the sidewalks provide the right kinds and numbers of interactions from which neighbourhoods emerge. In COMTELLA’s P2P environment, we have chosen a different metaphor...

  21. Provides visual feedback • Addresses issue of scale • Attractive & interesting A matter of scale An astronomical metaphor

  22. Views of the community • connectivity (hop-graph of currently reachable peers) • shared interests • overall ranking of peers (based on strength of relationships)

  23. Shared interests

  24. Ranking of peers Visual semantics Brightness = reciprocity Size = strength of relationship Position = overall rank

  25. Prompting reflection • Highlight cause and effect relationship between user actions and QoS. • Give real-time feedback • unobtrusive peripheral animations • ‘whispered’ messages (soft text) • if user is curious, she can read the text • but it is okay for her to ignore (slips under the radar)

  26. Evaluation results • Difficult to evaluate the effects of many features at once • separate experiments • Exp1: to evaluate the impact of modelling user relationships on the QoS • two methods for evaluation: • through simulation • through experiment with human subjects • first results presented in W5 paper

  27. 3 “take-home” messages • Creating community awareness • Modelling social aspects of user behaviour • has the potential to increase user understanding of her new role in the network and to stimulate more cooperative behavior. • as an engine for generating personalized community views • for book-keeping needed to reward participation • to adapt the environment and assure better QoS

  28. the end… Not

  29. Computing user type • The measure of user cooperativeness at time t C(wt, t) = i * C(w t-1, t-1) + (1 - i) * wt, w  [-1,0)  (0,1] represent the weight of evidence, where w < 0 is a selfish act while w > 0 is an altruistic act. overallBalance = (1/n)*SY (BXY) userType = (cooperativeness + overallBalance) /2 If userType is in [-1, -0.5) then user is selfish, if it is in [-0.5)  ( 0.5] then user is reciprocal, and if it is in (0.5, 1] then user is altruistic.

  30. Computing user interests • Reinforcement learning / exponential smoothing • The user’s strength of interest S in an area a is calculated based on how frequently and how recently the user has searched in this area. Sa(et, t) = i * Sa(e t-1, t-1) + (1 - i) * et where etÎ [0, 1] is calculated as et = 1/ d, d = 1 + level_distance between the level of the sub-area of the query and the level of the area a in the ontology hierarchy. Currently, the ontology hierarchy has only 2 levels, so et= 0.5

  31. Computing the balance of a relationship • BXY = (N XY- N YX ) / (N XY+ N YX ) • BXYÎ [-1, 1] • N XY - number of times X took from Y • N YX- number of times Y took from X

More Related