[mnet-devel] Incentive enginerring

Jim McCoy mccoy at mad-scientist.com
Mon Mar 24 18:18:37 GMT 2003


On Monday, March 24, 2003, at 05:58 AM, icepick at icepick.info wrote:

> I couldn't sleep last night so I ended up thinking about incentive
> engineering.

Boy, do I know that feeling...

> Has anyone seen papers written on the specific topic of incentives in 
> p2p?
> (I'm being bad and not even googling for something first, because I 
> want
> a discussion about it here).

There have been a few, but this is not the shallow subject that 
everyone who looks at this assumes it to be. Most attempts fail because 
they are either too simple to withstand any sort of gaming of the 
system or else the designers fail to understand the nature of the 
system they are trying to tame. I fell victim to this several times 
when designing MojoNation and its incentive system, the various twists 
and turns of the payment system were the result of this internal 
thrashing as we tested various options and then tried to gauge the 
result.

Incentive engineering for a distributed system (use "distributed 
system" instead of "p2p" in your search and you will get better 
results) has had some old theory that was largely untested and mostly 
the result of either old assumptions based upon timesharing system or 
fluffy cypherpunk hallucinations that were based more in popular 
fiction that reality. Some work from the past decade is a bit more 
relevant, but part of the problem you are going to find in any research 
out there is that a lot of it was done by CS people who do not know 
their ass from a null pointer when it comes to economics and real-world 
systems.  Just because it worked in the test lab so that a particular 
researcher could slam out a paper does not mean that a particular 
system is of any value for what you are considering. I am in the 
process of finishing up an overview of a paper for an upcoming 
conference on this specific subject that will outline some of the 
MojoNation experience, so I can probably help out a bit here if there 
are questions that you have or advice that is needed.

Here are a few questions that you need to start asking yourself (and 
not a single one of them has anything to do with coding or design):

	-What is the ultimate goal here?  [not really as simple as it first 
seems, if you can answer this now then your answer is either too simple 
or hopelessly naive]
	-What behavior on the part of participants are you trying to elicit?
	-How much are you willing to pay, in terms of system complexity and 
operational cost, to limit cheating and parasites? Why?
	-How much overhead is worthwhile to facilitate settlement among the 
peers? How much centralization will be tolerated in the course of 
facilitating this settlement?
	-How will any proposed system deal with supply/demand imbalances? How 
does the internal feedback system work when faced with a "race to the 
bottom", inflation, or fast resource fluctuation?
	-How will you know if the system is working? If it is not working 
correctly, how will you update the system without pissing off your 
users?

Before you descend too deeply into this particular rat hole, I would 
suggest that you think a bit about whether or not an incentive system 
is something that needs programmer cycles right now. In the short-term 
it is not too difficult to establish a few peer strategies that will 
allow the system to keep chugging forward while you think about this a 
bit more. There is a good case to be made that popularity-based 
retention is easy to accomplish and deals with the short-term problem 
while you consider the long-term strategies.

Jim



-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
_______________________________________________
mnet-devel mailing list
mnet-devel at lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mnet-devel




More information about the Mnet-devel mailing list