A YAVAP (Yet Another Voting Algorithm Proposal) Example

in #steemit5 years ago (edited)

While talking about a vote proposal I made a while ago, a Steemit user (@ew-and-patterns) asked for an example of how it would work. Since the comments area was a bit too small for it, I decided to make it a post.

Here are the algorithm components:

PC = Personal Contribution (what the user is giving away with his vote, from his own wallet)
USP = User Steem Power
RPC = Reward Pool Contribution (the amount which is drawn from the reward pool as a consequence of the vote)
VRPC = Virtual Reward Pool Contribution (what the 100% user vote will draw from the reward pool under the current algorithm)
UCR = User Curation Reward (what the user receives as a curation reward)
AR = Author Reward
D = Difficulty Multiplier <- this parameter is changed from the initial proposal, see below

And here's the (slightly modified) formula:

RPC = PC x D/100 + VRPC x ((100-D)/100)
AR = PC + RPC
UCR = unchanged, based on VRPC

D is changed in this example, and it will be a percentage between user contribution (PC) and reward pool contribution (RPC). The new formula is RPC = PC x D/100 + VRPC x ((100-D)/100). In our case VRPC stands for Virtual Reward Pool Contribution, or what the voter vote would allocate from the rewards pool under the old algorithm. See below, in the example.

Let's say I'm an user with 10,000 SP (which is USP in the terms bove), and my 100% vote will draw about 3SP from the rewards pool, based on the current voting algorithm. So my VRPC is 3 STEEM. I also have about 100 liquid STEEM in my account. We will keep the user voting power parameter, meaning we will exhaust our voting power in 10 100% votes. Will take D = 50%.

So, here's a calculation of a vote in which I'm giving away 3 STEEM to a post (from my own wallet).

RPC = 3 x 50/100 + 3 x ((100-50)/100) = 3
AR = 3 + 3 = 6 STEEM. 3 STEEM comes from user wallet, available immediately, while 3 is drawn from the rewards pool and available after 7 days.
UCR = whatever curation reward you get if you would have voted with VRPC, namely 3 SP.

Here's another example, in which I have 100,000 STEEM, my 100% vote will allocate 6SP from the rewards pool, under the current algorithm. My VRPC is in this case 6SP. I want to allocate 50 STEEM to a user, from my own wallet.

RPC = 50 x 50/100 + 6 x ((100-50)/100) = 25 + 9 = 34
AR = 50 + 34 = 84. 50 comes from user wallet, available immediately, while 34 is drawn from the rewards pool and available after 7 days.
UCR = whatever curation reward you get if you would have voted with VRPC, namely 6 SP.

And here's another example for the same voter as above, only D is 5% user contribution and 95% rewards pool contribution.

RPC = 50 x 5/100 + 6 x ((100-5)/100) = 2.5 + 5.7 = 8.2
AR = 50 + 8.2 = 58.2 STEEM. 50 comes from user wallet, available immediately, while 8.2 is drawn from the rewards pool and available after 7 days.
UCR = whatever curation reward you get if you would have voted with VRPC, namely 6 SP.

It can be formalized into a mathematical formula usable in code, but for now I'd keep it detailed like this, so we all understand what are all the terms.

Observations

  • self-voting will not be allowed in this scenario
  • VRPC and UCR are still coupled under the current algorithm, moving around liquid STEEM shouldn't impact how user curation are calculated. These rewards are already impacted by the fact that each vote contains a smaller portion which can be dedicated to curation
  • VRPC should be adjusted to the voting power. If 100% voting power gives 3 STEEM, then 50% voting power gives 1.5 STEEM
  • an efficient bot voting algorithm would have been quite difficult under these circumstances and...
  • ... there are some interesting variations based on the value of D (which, like I said, should be a hard consensus rule). In any case, the amount of necessary liquid STEEM increases, which should create more demand for it

I didn't run any regression tests or simulations based on the rewards pool size, but I'd be happy to do some and have them peer-reviewed.

Thoughts?


I'm a serial entrepreneur, blogger and ultrarunner. You can find me mainly on my blog at Dragos Roua where I write about productivity, business, relationships and running. Here on Steemit you may stay updated by following me @dragosroua.


Dragos Roua


Wanna know when you're getting paid?

I know the feeling. That's why I created steem.supply, an easy to use and accurate tool for calculating your Steemit rewards

It's free to use, but if you think this is a useful addition, I'd appreciate your witness vote.

Thank you!


Psst: new to Steemit? Start Here


Sort:  

Your answer to me was:
"So, when you upvote, based on this rule, the rewards get calculated based on how much you give from your own pocket, not from what you draw from the reward pool. That's one of the benefits, linking the curation reward to the amount you're actually spending from your own pocket. It incentivizes users to spend their own money if they want to increase curation rewards, not relying only on the SP they already have (earned or delegated to them)."

I don't see that represented in the formula at all. It seems like what you draw from your own pocket does not influence the curation at all (maybe I didn't understand it again?)

Or is it mandatory to give out a certain amount of Steem when you upvote? Like when you do an 100% upvote the rewards for the post are mirrored by the rewards pool. 3 Steem from you an 3 SP from the rewards pool?

I still don't see the impact of giving out steem for my curation rewards as the upvoter.

Or is it mandatory to give out a certain amount of Steem when you upvote?

Yes, that's the core part. When you upvote, you're giving out liquid STEEM, as one part of what user gets, the other part being drawn from the rewards pool. The part that comes from the rewards pool is proportional to the liquid part and that proportion is given by the difficulty "D", which is a hard consensus parameter (set by witnesses). So, every time you spend STEEM, a part of the rewards pool is also used (in the way it's used now) and you, as an upvoter, get curation rewards.

The focus on this algorithm is on users spending money for rewarding other users. Every time they do that, some part of the rewards pool is also emptied, but the rewards pool is not the main source of revenue, the user "pocket" is.

So what is the point then of emptying my pockets for upvoting others, if I only get little curation and the author gets all the upvotes + liquid steem?
So everyone who is not "a good author with lots of followers" is screwed? Because they don't even get back the money that they give out?
What am I missing?

So what is the point then of emptying my pockets for upvoting others

That's the issue. Incidentally this question is a good example of crab mentality. You're not emptying your pockets, because your pockets will be filled again by other users.

I know that this is not how things are now, and I consider this the main issue of this reward system.

Because rewards are distributed from a "formless" pool, before anyone has any tangible ownership of them, the so called economical value is weak.

Let me try to sketch an example.

If I buy now an apple with $1, out of my own pocket, then the apple is worth $1, both for me and for the one who gets the money. The apple is an article I'm upvoting.

If I am telling someone they will get $1 for their apple (the article that I'm upvoting), and that money may or may not come out of thin air in about a week (the "may or may not" refers to the flagging issue in the Steemit ecosystem) then the apple has a promised value of $1, which may be actualized in one week. So there are two main differences: the reward is uncertain, and the value is established at a future point.

The economical value of the content in Steemit is weak and uncertain, which makes the underlying token weaker.

My point of view is that if there will be an immediate peer-to-peer transaction, with owned funds, (even if the transaction is partial, not covering the entire value transferred / created), that will increase both the certainty and the "weight" of the content. It will also create demand for the token, thus increasing its value.

"You're not emptying your pockets, because your pockets will be filled again by other users."
This is not true for 90% accounts. There are a lot of people here that only vote but never post. Or when they do they get little to no reward.

The uncertainty is not a problem, but the unfair distribution of votes is.

I am very open-minded, considering every possibilty no matter how far fetched, but in my view, the way you described your model, it would be the death sentence for steem.

"You're not emptying your pockets, because your pockets will be filled again by other users."
This is not true for 90% accounts.

I agree, with only one caveat: "90% of the current accounts". The initial distribution model of Steemit attracted a certain type of user. The current userbase of Steemit has a certain structure, and the fact that they don't want to validate their interactions by putting skin in the game is part of that structure. In a sense, this is how they were educated. That's all they know.

But that doesn't mean this userbase is the only possible one in the universe.

For me, as a person who spent more than 2 years here, the deadlock is clear. The current status of the platform is a huge stall and if there's any way out of this stall, it will be a downwards spiral. I'm not spreading FUD and I wish for this thing to grow and succeed, if only to get some ROI back after all these years.

So, I stick to my words: I do believe that the only way to move Steemit out of the stasis is to put some skin in the game. And it would better happen rather sooner than later.

And one last detail: the mechanism described can be amended, it's not set in stone. The main thing is that, for a given interaction, each user should spend some money out of their pockets. For instance, the liquid part can be just 1% of what is drawn by the vote from the reward pool, literally just cents, or smaller. But, in my opinion, even this small change may shift the behavior and the entire platform into something better.

Time will tell.

Appreciate the time you took to look at this.

I guess I would be fine with 1-20 percent out of my own pocket to achieve the "skin in the game effect" you are talking about. But who would determine this number? Witnesses? Voters themselves? Fixed minimum percentage for everyone?

Did you think about, that this model would make voting impossible for small/new user accounts, which do not buy their initial steem on an exchange to begin with?

You really think flushing a lot of the current userbase down the toilet could be good for steem in the longterm?

But who would determine this number? Witnesses? Voters themselves? Fixed minimum percentage for everyone?

My initial approach was to have this fixed by witnesses, but on a second thought, letting user decide might be a better idea. As long as we keep a minimum of 1%.

Did you think about, that this model would make voting impossible for small/new user accounts, which do not buy their initial steem on an exchange to begin with?

Yes, that's a cost I was taking into account. I personally think this would be better, as it will foster interaction via comments first, until users acquire some dust to play with.

You really think flushing a lot of the current userbase down the toilet could be good for steem in the longterm?

"flushing down the toilet" might be too strong of an expression, but I get what you say.

First, they might not be literally expelled, but they will have to adjust. These changes happen all the times, for instance in Facebook they change how pages are displayed, literally forcing page owners to pay for exposure. I'm not saying we should do like Facebook, I'm saying change is part of life.

And second, if you really run the numbers, you'd see that out of Steemit's 1 million of accounts, probably 90% are bots or empty accounts, and from the remaining 10%, it's hardly 1% of them who are really interacting. That part can adjust, if they will have a better ROI in the long term.

You just keep thinking Butch, thats what you're good at

Sundance in Butch Cassidy and the Sundance Kid

OK, I understand it now. I think this idea is an interesting one that should be considered. Resteemed.

🏆 Hi @dragosroua! You have received 0.1 STEEM reward for this post from the following subscribers: @cardboard
Subscribe and increase the reward for @dragosroua :) | For investors.

So it means that if I run out of liquid steem, I won't be able to upvote any longer?

Coin Marketplace

STEEM 0.24
TRX 0.11
JST 0.032
BTC 62661.87
USDT 1.00
SBD 3.76