Hi GridCoin Community:
I am writing this post to address what I see as incentive problems inherent in the current magnitude distribution. I describe some of the problems, and touch on Total Credit Delta, ranking projects, and other potential solutions. Primarily, I would like to contribute to the ongoing discussion, and perhaps begin some new discussions as well. If all of this sounds like old stuff, please forgive me; I’m relatively new here.
Of these problems, 1-3 are incentive related, and 4-5 are other problems also addressed by one of the proposed solutions.
- One of the purposes of GridCoin is to reward people for contributing their idle processing power to scientific and other computations of interest. Currently, a person oftentimes has financial incentive to contribute to a project they do not support as much as another. For example, I want to use my GPU to run computations for Milkyway@home, but I might make more GRC if I run it for Collatz Conjecture instead. While some may consider this a feature and not a bug, as it incentivizes users to contribute to projects that may not otherwise receive much support, I consider this a major problem. Ideally, a person should be incentivized to contribute to the project they deem most worthy of their support.
- It is possible to think that a project deserves to be whitelisted, and at the same time believe that other projects on the whitelist are more deserving of computational power. Currently, there is no way to reflect this in magnitude distribution, as all projects are given equal magnitude.
- If a project runs out of work units, users still receive GRC based on their Recent Average Credit (RAC), meaning that users can receive GRC for doing no work.
- Short term projects that have a large, but finite amount of work units – for example, one month of work units given the current computational power devoted to SETI@home – are not possible to include under current work unit whitelisting requirements.
- Distributed computing projects outside of BOINC are currently not able to be included in the GridCoin network. I am not sure if this is a priority for the GridCoin community, but I have seen it mentioned here and there, so I am including it in this list.
- As outlined thoroughly by @jringo here and here, the Total Credit Delta (TCD) solves problem 3, as users only receive credit for the work they’ve actually done since the last superblock. In any overall structure change, I think TCD, or something similar, should be implemented, as it is seems like a much fairer way of assessing someone’s contribution to a project.
- Unfortunately, TCD does not address problems 1 and 2. As mentioned in previous threads, most recently by @donkeykong9000 here, ranking projects by certain factors such as publications and work units is another possibility. This is a good way to address problem 2, and to a lesser extent problem 1.
I think that combined, these two solutions above address very well problems 2 and 3. Project ranking can also address, but perhaps not solve, problem 1, depending on how it is implemented. Thus, even with ranking projects, there may still be a financial incentive to crunch for projects that are not your favorite.
- Basing magnitude on hardware contribution/FLOPS alone, regardless of the project being crunched. The idea here is simple: ignoring the CPU/GPU difference for a moment, your hardware performs some amount of work in some amount of time. You are rewarded for that work proportionally to the sum total of the entire network work, regardless of which project you’re crunching.
There are several problems with this last proposal, one of them quite serious, but first I will point out the benefits.
- a) Your hardware would be guaranteed to produce a certain amount of GRC, all else being equal. The project to which you contribute would have no bearing on how much you earn, so you can contribute to your favorite project with no financial incentive pushing you to contribute to another problem. This solves problem 1.
- b) Projects would automatically be ranked in a – using the term liberally – “free-market” way, meaning that the most popular projects will simply receive the most computational power. This addresses problem 2, although this presents a major problem I mention later.
- c) This solves problem 3 as well as TCD does.
- d) Paving the way for short-term projects and projects outside of BOINC to be included in the GridCoin network, since GRC awarded is based on work done by hardware, not on information provided only by BOINC, thus addressing problems 4 and 5.
Now the issues:
- e) This would require agreed upon standards and benchmarks for different projects. For example, how do we compare a contribution to Universe@home with a contribution to VGTU? One way would be to take a CPU, run it on both projects to find out how much work that hardware accomplishes on each project within a given time frame, and then equate the work units crunched for one project with those of the other. Complicating this immensely is the fact that different hardware architectures are better suited to different projects. Another complicating factor is that some projects are bundles of other projects, and so the same CPU might perform differently on different subprojects. Perhaps this could be fairly addressed by taking a weighted average of different kinds of hardware. We already have a lot of information from many GridCoiners here on Steemit regarding how much work particular hardwares can accomplish. Regardless, this is not a trivial task.
- f) The biggest problem: a project already owning a massive amount of computing power could take advantage of this. For example, a project manager who needs to perform a lot of computations, but already has an enormous amount of computing power, could get their project whitelisted, and then point all of their existing hardware at the project. I’m talking about big players here. They could theoretically start receiving some enormous portion of minted GRC for something they had the budget to do anyway – in effect, some organization that does not need volunteer computing power using GridCoin as a subsidy for their project. The current magnitude distribution prevents something like this from happening on an enormous scale – only one project could be monopolized in such a way. I have thought about ways to prevent this from happening, but I wanted to receive feedback from the community before continuing.
There might be more issues associated with this last proposal, those are just the ones I thought of.
In conclusion, I think TDC + ranking projects in some manner will greatly improve the current magnitude distribution, but there are also other avenues that should be explored, if not to adopt them, then to learn from them.