Thoughts on Voting as a consensus mechanism

in consensus •  last year

The fundamental idea of a vote

Hello everyone, I hope you are doing well. It's been a long time off of the Steem Blockchain. I have had a fairly hectic academic schedule lately to come up with quality work to share with everyone here on Steem.

Today I'll share some thoughts and insights that's relevant to my research and to Steem as well. Being Steemians we are fairly well acquainted with the concept of votes as to what the votes are expected to represent, what the votes actually seem to represent, when they make and when they break.


A few days ago, I read Dan's response to Vitalik regarding voting as a mechanism to achieve consensus not being the best solution out there but definitely the one that works (to some extent).

Dan's response :

" I fully recognize that voting is not ideal, but it is currently the best approach when factoring in all risks, attack vectors, and recovery options."

I don't know if voting is really a best approach to achieve consensus but it has been implemented as a metric for measurement time and again - be it small Facebook or Instagram contests where the picture with the most likes is recognized or be it in Stack overflow where the most helpful answers get voted upon and it floats to the top as the number of votes on the post increases. Same is the case with Quora and Reddit as well as with the presidential election . So, fundamentally speaking - voting makes sense as it clearly translates the opinion in numbers. It's perfect for a lot of cases while it's broken for other cases; this however is dependent upon what exactly a user is voting for, what outcome is determined by the very process of voting and how the voting was conducted.

I'd mainly like to focus on the aspect where I feel voting is broken where broken in this context simply means unreliable. Voting as a quantitative measurement works fairly well, like in the case of Presidential Election or perhaps a poll which gives us a rough idea of the number of candidates attending a particular event. Where voting breaks is when it is used as a means for qualitative measurement. Quality in itself is debatable and putting a number to measure the quality is a brilliant way to categorize it. However, we've seen that quality doesn't always translate well when interpreted all in numbers and number of votes.

There are multiple opinions and therefore the vote ratio is always likely to be uneven. When we consider voting as a binary classifier where it only translates to one of the two possible states, it doesn't reflect the original intent that well. For example,
If there are 2 kinds of Cakes and 100 people have to vote on the quality of both the cakes, the simple metric would be to take the average of all the votes allocated by each cake and measure them against each other. Which could further translate into something like : 60% votes were allocated for Cake A and 40% votes were allocated for Cake B.

The most important part is the interpretation of what those numbers could mean. They could mean that People prefer Cake A to Cake B and it could also be interpreted that, because Cake A is preferred to Cake B, it is the best cake amongst the two.
But can we really determine that Cake A is the best cake amongst the two solely based on Votes? We'd then have to break it down to understand what best means. We have to understand that the numbers tell us more about the Voters than the quality of the objects themselves - in this case, Cakes. 40% of the people did prefer Cake B to Cake A, but this is nullified just because the majority seems to prefer the other Cake. So, making decisions on this basis would be pretty inaccurate as it already is.

What we need?


We need to formulate a voting mechanism or at least formulate the process beyond the voting mechanism such that the outcome of one event should not make the outcome of another event less significant. That is, if the vote distribution is 60% and 40%, the intent of 40% shouldn't completely be discarded. The disadvantage of this mechanism however would be an attack on the system. But the advantage keeps the other 40% in the loop and makes the outcome reflect the actual scenario better. We need to go from "More votes does not necessarily determine good quality" to "more votes do determine good quality". Doing this cryptographically would be difficult because notions like intents and emotions come into play which are all non-numeric variables for which an accurate or even approximate measurement is not the most accurate as of today's date.

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  

The solution to this problem is something known as the borda voting system, in which, instead of choosing one thing over the other, voters rank all choices. So basically, the winner is the one who has the most support from the highest percentage of voters,not a slim majority that gets there way.


That sounds exactly like the current approach to appointing a Steem witness. Thanks for sharing, wasn't aware of it.

In reality the 40% still can have their preferred cake. Even though it lost the election, they may still eat it or buy it. The problem occurs when it ceases to be baked or available for consumption. This is where voting can fail us. Your article really gave me pause to think about these issues in a new way. Thank you!


"In reality the 40% still can have their preferred cake. Even though it lost the election, they may still eat it or buy it. The problem occurs when it ceases to be baked or available for consumption. "

This is indeed true and brilliantly put. Fortunately/Unfortunately we have a lot of systems where the Cake ceases to be baked or is not available for consumption when it doesn't become a part of the majority within a given time frame.

Nothing beats the voting mechanism. It will always look for the majority of the members and finalize with a conclusional statement in terms of the better decision making for the community.


That was my point, does majority always translate to good quality?

you illustrated it beautiful and described your thoughts perfectly this truly make sense


Thank you, Blazing!

I would've liked more concrete examples to understand the alternative concept better.


I'll include them in the posts that follow. Thank you for your feedback.

For now, the questions I address in the posts are

  • Does majority always translate to better quality?
  • What could be done to make sure that more number of votes do ensure a good quality?
  • How do we incorporate the votes that wasn't a part of the majority to still be of some significance, without making the system vulnerable to attacks?

how would you handle this approach? I find it a very interessting discussion :)


I'm still exploring how it could be approached as there's a trade-off in terms of security.

Wow this is nicely written and your toughts seem to be spot on.


Good post! I'm going to follow you to see more post like this and for support us!


Thank you, Peter!

Great visual

Voting is the only mean by which we get the idea what people think about the product. It may not give the correct answer because sometimes votes can be manipulated and even they are bought sometimes.

an easy fix is to make both cakes president and each handle a percentage of the workload according to their percentage of their vote. 🎂

Very helpfull for me thanks. I comints in may laguage for pakistan chaina india bangla desh iran ..yaro is k artikal ka matlab hay tum zeada ides bnao r ay id ko vote comint kro r pesa kamao to ap logon ka is men faida hi faida hy pesy jhambo