Learning to love the voting power equilibrium point change

in #steem8 years ago

As noted here, the 100% voting power equilibrium point is being reduced from 40 votes per day to 5 votes per day in version 0.14.0. Among the core developers, I was a strong proponent of this change. In this post, I'll explain my reasoning.

The primary reason people are concerned is that, while "5 votes per day" is a technically accurate description of the equilibrium point, it is also highly misleading.

Leaky bucket dynamics 101

One of the fundamental principles of Steem's economic system can be described as "one Steem Power, one vote." The problem is that (obviously) the design of a social media website involves each user making multiple votes over time, unpredictably, as they have free time and find things they like.

The system is clearly unfair if Bob, a user with 10 SP, votes a thousand times and gets the same voice as Alice, a user with 1000 SP who votes ten times. The way we handle this is a leaky bucket system: Each user account is a bucket which holds up to 10,000 units of voting power -- we might imagine this as 10,000 mL of water. The bucket dynamics are as follows:

  • Each user's bucket gets a steady inflow of water at a rate of R units per second (R is the same for all users).
  • When a user's bucket is full at 10,000 units, its inflow spills over and is wasted.
  • When the user votes, the volume drops by some percentage p (p is the same for all users); the user's effective Steem Power for that particular vote is multiplied by the amount of water removed.

These are competing forces on the bucket's water level: Voting and spillover pull the water level down, while the inflow pushes the water level up. If the user votes at a constant rate, the water level will eventually settle at a point where the forces are in balance.

Parameters

The 100% voting power equilibrium point, vote_regeneration_per_day for those following the source code, is the voting rate where the forces are in balance at the 10,000 mL level. The integration window, STEEMIT_VOTE_REGENERATION_SECONDS, is the amount of time it takes for a totally empty bucket to refill to 10,000 mL; it is remaining unchanged at five days. The parameters R and p are completely determined by vote_regeneration_per_day and STEEMIT_VOTE_REGENERATION_SECONDS.

Effectively this change reduces vote_regeneration_per_day from 40 to 5. (Yes, the actual patch is more complicated, because it also changed from hard-coded numbers to a global property constant, and fixed a rounding issue.)

The real problem

And now we can get to the crux of the problem.

  • A water level less than 10,000 mL seems bad, because it reduces the power of each vote.
  • A water level less than 10,000 mL is not actually bad, because the reduction in the value of each vote is exactly balanced by your increased number of votes.
  • A water level less than 10,000 mL is actually good, because the real enemy is spillover; every mL of spillover is wasted influence you didn't use, and staying below 10,000 mL keeps you out of spillover territory.

While it's technically accurate to describe 5 votes per day as the maximum number of maximally effective votes, 5 votes per day is better described as the minimum number of votes for a user to be given a full voice.

Now suddenly it's clear why 5 votes per day is a better threshold: It redistributes the ability to grant curation rewards away from heavy users and bots to more casual users.

A parting question

Suppose Alice and Bob each have 1000 SP. Alice votes 5 times a day and Bob votes 40 times a day. Should Bob get eight times as much influence and eight times as many curation rewards as Alice, or should the system give these two users an equal voice?

If you believe that Alice and Bob should have an equal voice, then you, too, are actually a supporter of this change!

Sort:  
Loading...

If Bob votes six times a day, every day, for a while, should the system give Bob any voice at all? I feel the threshold is too low for that drought.

What do you mean? Bob, voting more than 5 times per day, is maximizing his voting influence under the new rules.

If he votes more than five times a day and regenerates five votes worth of voting power a day, his votes will count less and each day until he eventually runs out of voting power.

I know it seems like that, but that's not how it works. If you vote the same amount each day, you'll hit an equilibrium where your voting power is the same on each vote. This is because voting uses up a percentage of your voting power, not a fixed amount. So if you have less voting power, your next vote uses up less power.

I know how it works. ;)

That's true, as you get low on VP, each votes is worth less so you may use close to 20% in a day. Here's a plot with 20 votes a day in the new scheme.

Still, not convinced this is a good thing. I'll think more about it.

He'll recharge fully 100% each day, regardless of whether he voted or not. If he did NOT vote, then the spillover is wasted. It's like not getting rollover minutes on your cell phone. Spillover doesn't count.

No, he'll recharge fully 100% in five days. 20% each day.

@burnin are you sure? I must have misunderstood...

Suppose Alice and Bob each have 1000 SP. Alice votes 5 times a day and Bob votes 40 times a day. Should Bob get eight times as much influence and eight times as many curation rewards as Alice, or should the system give these two users an equal voice?

Excellent question and the answer seems not as clear as the post suggests. Bob is investing more effort than Alice.

What about two people with 1000 SP, one of whom signs on every day and votes 40 times, the other is absent for a year, signs on and votes once? Conceptually, the bucket model says they should have equal influence, assuming a large enough bucket (the current parameters don't allow a year of course, but they do equalize because more- and less-absent users). I think they should not have the same influence.

Well I think the argument here would be that the one who invests more time will have read/compared more posts, giving him an advantage when evaluating which ones he should invest the most voting power in. In both cases the optimal move is to upvote 5 posts (due to superlinearity). If you spend more time curating, you increase your sample size and are more likely to upvote only good content.

I agree that the edge one gets from spending more time on the site is most likely diminished, but it should still be there.

Loading...

Actually I am a big supporter of the change. I even think it should be a target of 1 vote per day(or even max of 5 day voting power in a single vote), and then the GUI should ask - "In how many votes do you want to split your 1 day [5 day] voting power?"
It gives the ability to concentrate you vote in a single punch (good for say an author who does not really want to curate, but wants to give a max boost to his single daily post), also gives the ability for minnows/dolphins to concentrate its voting impact on just a few posts.

Exactly. The devs have presented this idea 100% the wrong way, and you're presenting it 100% the right way. The right way to explain the change is to say "now, your vote is 8 times more powerful than it used to be! Unless you'd rather it be less powerful, which you can do with the nifty voting-power slider!"

I have to admit that I don't fully understand your point about Alice and Bob. Suppose Alice discovers 5 valuable posts with her curation and Bob discovers 40 valuable posts with his curation. Why should they receive the same curation rewards, when we agree that discovering valuable content is a service to the platform, and Bob has discovered 8 times as much content for the platform?

Agreed. Why should Alice, in 15 seconds curating receive as much as Bob, who spends 4 hours curating?

If bob is a bot who spends 4 milliseconds curating you will see the reality of what we are trying to balance.

Isn't it at the expense of actual curators? What's the average number of times non-bot users have been voting per day?

And won't bots just reduce the weight anyway and keep voting just the same?

But what about all of the human users who are not bots who do in fact spend hours a day reading through content and curating, commenting, and just interacting in general to advance the platform? Now they're put in the position of either splitting their votes to an almost meaningless reward for the posters or simply decide to not upvote the content. And doesn't this reduce incentive to reward great comments as well?

The solution seems to add more complexity to the human experience while trying to resolve an issue that can probably be resolved in other ways. If bots are the target, why not introduce more bot-detecting or prevention solutions? It's not like bot accounts can't be fairly easily identified.

I agree with @ats-david and @bobbybillbob. The Alice V. Bob approach sounds involuntarily communist, in the bad sense. Thoughtful curating should be rewarded, not diffused. In this case, those who spend significant time and votes curating will be so careful to use their votes only on those that really make money, rather than on those that they think are good content. On the other hand, when we minimize the voting power of the bots, we, by default, increase the value of the human votes. So although the votes dilute after 5, even the diluted votes make up a greater percentage of the voting pool than they did before. They are worth more simply because the bots aren't factored into the voting equation as much. So it's not a total loss. And the premise is designed to preserve the humanity...which tells me the whales CARE about this platform.

I am not a bot! Yeesh. just like Steemit and have a lot of time on my hands :)

Man I am more confused now than I was before. Would some one just write a post to let the lay user figure this out in simple terms? We talk of mass adoption and this complexity of the curation system might be an obstacle otherwise.
I consider my self an ancient steemer (2 months old!) but this is confusing as hell!

The fact that you're voting with a percentage of weight, which is affected by the percentage of your voting power, I agree is confusing.

Having to click twice to upvote is annoying as hell also!

If you're going to use my leaky bucket analogy, you should credit me. If you want. https://steemit.com/steem-help/@biophil/the-ultimate-guide-to-voting-power-with-cartoons-formulas-and-code-references

Edit: it looks like I may have gotten a number wrong; I may have said it takes 7 days to regenerate 0 to 100, but you're saying it takes 5. I will check and make an updated post when possible.

@biophil
It's a pattern with @theoretical he takes ideas and discussions started elsewhere then monetizes them on his blog with 0 credit to the idea's originator. I had this same gripe last time he pulled it.
https://steemit.com/steemit/@williambanks/an-open-letter-to-the-developers-of-steemit

My advice is we stop giving the developers constructive feedback as a general rule and let them run it as they wish. It's not like any of have an actual voice in the way our investment is managed short of powering down or selling our accounts.

Sorry that this happened to you as well. As far as I know, I was the first person who ever explained voting power correctly with my Ultimate Guide. Then suddenly my leaky bucket shows up here nearly verbatim. It's extremely frustrating.

This example makes me like it less.Of course the guy spending time to vote 40 times should get more than someone who logs on for 5 minutes and makes 5 votes. We want activity.
That said The reason I might like the rule is that I think having too many full powered whale votes disrupts the system. Now where many whales will be under 100percent they might rock the boat less.

Interestingly I think more people would like this rule of you said you get 5 super votes that can you 20prct of your voting power or you can have 50 votes that use 2pwrxemt each. you should frame it like we are gaining something, super votes! The scroll at should default to 1 percent the.ln 100Perxwnt should say are you sure you want to use a super vote?

I feel like this will just lead to people voting less in general. People will vote for less content, the trending page will become less diverse as people will only choose to vote for a sure thing. Less new voices will be discovered in favor of promoting the few authors you already enjoy.

Coin Marketplace

STEEM 0.18
TRX 0.16
JST 0.030
BTC 62755.94
ETH 2446.28
USDT 1.00
SBD 2.66