Title: Scrip Systems
1Scrip Systems
Victor Chan
2Agenda
- Scrip Systems
- Peer to Peer Systems
- Scrip Systems for P2P Networks
3What is a scrip?
- A scrip is a non governmental currency used to
pay for services from others. The need to earn
scrip prevents freeloading
4Where is scrip systems used?
- Capitol Hill Baby Sitting Co-op (Sweeney 77)
- Couples babysitting for each other
- Paid in scrips, each worth one hour of
babysitting time - Low circulation of scrips resulted in recession
- Eventually too much scrip was issued
- Ithaca Hours (started in 1991)
- Local currency used at Ithaca New York
- 500 business participating, including libraries,
banks, medical centers, landlords - Used to promote local economic development,
with12,000 Hours in circulation
5Yootopia! (Reeves et al 2006)
- Yootle, a local currency created at Yahoo!
- Used in prediction markets
- Used to buy favors from people
- Used where cold hard cash isnt the best idea
- All transactions are recorded in a ledger system
- Group decision with a scrip system (Where to go
for dinner?) - Voting with compensation
- Vickery-Clarke-Groves (VCG) Mechanism
- General Decision Auction (DAUC)
- Iterative Decision Auction
- SMS and web interface for users
6Moving on
- Any further thoughts on group decision or
yootopia?
7Peer to Peer Networks
- Filesharing
- BitTorrent, Kazaa, Gnutella, Napster
- Online discussion
- Slashdot, Digg, etc.
- Distributed computing
- Seti_at_home, Einstein_at_home
8Peer to Peer Networks in Files Sharing
- Increased social welfare
- Costs still exist, leading to free riding users
- Gnutella 70 users do not share, and 50 requests
filled by top 1 users - There exist altruistic users that have become
vital to the health p2p systems - However these users are expensive to host on a
network and ISPs are trying to remove them - Fair sharing does not happen since these users
exist
9Barter like approaches
- BitTorrent
- Tit for Tat algorithm (Optimistic Unchoking)
- Exchange upload bandwidth for download bandwidth
- New peers lose out, nothing to offer
- eMule
- Track history of previous interactions with other
users - Give priority to users with good history
- With large n, hard to match up
10Reputation based approaches
- Internet Relay Chat (IRC)
- Direct client to client sharing
- Set up using private messaging/negotiation
- Slow for new users to gain enough rep
- Kazaa
- Measure ratios of upload vs. download
- To help new users, everyone is given avg
rating - Free ride until bad rating, and create a new
account (sybil attack)
11Scrip system for P2P
- Benefits of having a Scrip System
- In history based reputation systems, no longer
need to meet same peers - In BitTorrent, tit for tat can be extended to an
exchange between multiple users - The Role of Prices in Peer-Assisted Content
Distribution Johari et al - New users can be given scrip right away to
participate - Problems of having a Scrip System
- Still vulnerable to sybil attacks
- How much money to have in the system?
- Inflation, bubbles, recessions just like the real
economy!
12Scrip System in P2P networks
- Efficiency and Nash Equilibria in a Scrip System
for P2P Networks - Friedman, Halpern and Kash (2006)
- Model for evaluating Scrip Systems in P2P
Networks - Nash Equilibrium with threshold strategies
- Money supply to maximize efficiency
13The Model
- Model Asymmetric interactions in a file sharing
network - Unlike previous models of random matching between
users - Each round uniformly select an agent to request
and match with provider - Providers in the system each with ß 0
probability of fulfilling a request - Assumption Time independence
- Agent fulfilling request will pay cost a
- A discount factor of d
- Time steps are in 1/n
14More definitions
- G(n,d,a,ß) represents a game with n agents
- agent chosen in round t to make request
- whether a given agent can
satisfy request, dependent on ß - whether a given agent will
satisfy the request - the agent
chosen to satisfy request. - Chosen at random from willing
and able - agent is utility at round t
15Utility functions
- Standard User
- Altruistic User
- Total utility
16Altruistic Users Closer look
- Always happy to upload, since cost is positive
and their strategy is - for all t
- If enough of these users, others become free
riders and play - for all t
- How many altruists do you need to make everyone a
freeloader? - Proposition 2.1 There is an a that depends only
on d,a,ß such that in G(n, d,a,ß) with at least a
altruistic users not volunteering is the dominant
strategy for all standard users.
17How many altruists?
- With no money, users have their requests filled
with probability - So even with money, their total additional
utility gain is - But if this gain is less than the cost to get
money
Users will not want to pay the cost and will
never choose to volunteer
18What does this mean?
- Example with ß 0.01, a 0.1, d 0.9999/day
then need a1145 - Relatively small size compared to a large P2P
network - In BitTorrent having 1145 Seeds (altruist) is
unlikely, so we still see many leechers
uploading. - Any thoughts on why amount doesnt depend on n?
- In order to establish a useful scrip system, need
to remove altruistic users, or standard users
will all become free riders
19Finding the equilibrium in a Scrip System
- Users pay those that satisfy their requests 1
- Total amount of money in system M
- Agents using threshold strategies
20Nonstrategic play of the game
- System converges to a distribution over money
- Assume everyone plays and system has Mdollars
- State of the game can be represented as
Player has value in this set
Total amount of money in state s
21Distributions of Money in the System
(
- Let be the distribution on 0,.,k
- Not very useful by itself, since not all
distributions can be achieved - Look at the distributions that has,
where m M/n - There is a unique distribution in d, with
maximum entropy - Markov Chain, , then with large n,
will likely be in a state s, such that ds
will be close to d - Closeness is defined as the Euclidean distance
between two distributions
22Theorem
- X is the random variable that the Markov Chain is
in a state S at time t - After some time t, the Pr(X is in state S where
ds will be close to d) is very high.
23Simulation Results
24Simulation Results
25Simulation Results
26Game under strategic play
- Goal Show that there is a non trivial Nash
Equilibrium where all agents play a threshold
strategy - First show for all k, if all other agents play
Sk there is a Sk for agent i that is also the
best response.
27Make the strategies continuous
- Look at a strategy pair , and
consider a mix strategy - will play with probability
and with - This essentially produces as continuous set of
strategies by mixing adjacent threshold
strategies.
where
28Theorem 4.1
- If every other agent is playing then the
best response is either a unique
or a mix of playing two adjacent threshold
strategies.
29Proof of 4.1
- Consider agent i with probability of making a
request and receiving a request constant - i decides at each iteration whether to satisfy a
request based on its strategy - So to i, the system is a Markov Decision Process,
with i having the choice to move between various
states - i will compute the optimal policy for this MDP,
and there is a optimal policy that is a threshold
policy.
30Theorem 4.2
- There should be a Nash Equilibrium that is in the
space of threshold strategies - Fixing d , we get a best response function that
is a step function. - Any point where the br(d,?) ? then there is a
Nash Equilibrium
31Simulation Results
32Social Welfare and Scalability
- How much money M should be in the system?
- Theorem 5.1 Most efficient equilibrium only
depends on the ratio of M to n. - Proof, from Theorem 3.1, the d depends only on
M/n and k, and since br(d,k) depends on only d,
the Nash Equilibrium is only depend on M/n - In practice, it will be easier to adjust the
price of a transaction rather than injecting or
removing money from the system. - New comers can be added by changing the price of
transactions
33Sybils and Collusion
- Sybils can be used to increase the likelihood of
being chosen to fulfill a request - Set a lower k threshold strategy, offer to work
more often - Sybils can also be used to drive down the price
of requests - Or make sybils leave and drive up the price
- Price of fulfilling a request depends on n
34Extensions
- The current system is Homogenous, relax these
assumptions - Cost of joining the network, could deter sybil
attacks - The current system does not take into account of
altruistic users - Effect of hoarders, people who work but never
spend (stocking up) - Any scrip system will require a centralized
accounting system, and users will likely have to
reveal their identities
35Thats it!