Pages:
Author

Topic: Experiment - Achieving consensus where there is disagreement - page 2. (Read 3216 times)

full member
Activity: 322
Merit: 115
We Are The New Wealthy Elite, Gentlemen
say there is a new BIP,
3 BIPs
dev say hey lets ask the miners again
everyone votes,
votes are: 31% 31% 32%
devs say "fuck it lets go with BIP100"
they all agree " fine lets go with it"
the change is implemented
price goes up
miners are happy.
everyone is happy!

so it really depends

75% is wonderful.

if your vote is not 75% you answered the question incorrectly, please try again.  Wink


This scenario would not be a "consensus decision" it would be a centralized decision made by the developers. Following the Consensus Decision Making model a result of 31% 31% 32% would indicate that amendments and modifications are required before a decision can be made. Implementing a decision without consensus would be the result of not allowing the consensus process to work.

Consider this from Peter Todd in 2013 in regards to the BIP66 fork:

Quote
The BIP66 soft-fork recently passed the 75% support threshold. This
means that 75% of the hashing power has upgraded to support BIP66; 25%
of the hashing power has not. Once 95% of the hashing power has
upgraded, blocks created by the 5% who have not upgraded will be
rejected.

If you operate a pool, solo-mine, or mine on p2pool you'll very likely
need to upgrade your Bitcoin Core node to support the BIP66 soft-fork,
or your blocks will be rejected. If you only sell your hashing power to
a centralized pool you do not need to do anything.


How does the Bitcoin protocol measure BIP66 support?
----------------------------------------------------

Miners that have upgraded to support BIP66 create blocks with the
version field set to 3; non-upgraded miners set the version to 2.
Bitcoin Core measures BIP66 support by counting how many blocks with
version >= 3 exist in the blockchain within the last 1000 blocks.

If 750 out of the last 1000 blocks support BIP66, blocks with the
version set to >= 3 that do not follow the BIP66 rules are rejected; if
950 out of the last 1000 blocks support BIP66, blocks with version < 3
are rejected.


When will the 95% threshold be reached?
---------------------------------------

It's unknown exactly when the 95% threshold will be reached. The BIP34
soft-fork went from 75% to 95% support in a about two weeks, however
more or less time is possible; it's possible that the 95% threshold will
be reached in just a few days.
legendary
Activity: 1904
Merit: 1037
Trusted Bitcoiner
say there is a new BIP,
3 BIPs
dev say hey lets ask the miners again
everyone votes,
votes are: 31% 31% 32%
devs say "fuck it lets go with BIP100"
they all agree " fine lets go with it"
the change is implemented
price goes up
miners are happy.
everyone is happy!

so it really depends

75% is wonderful.

if your vote is not 75% you answered the question incorrectly, please try again.  Wink
legendary
Activity: 1904
Merit: 1037
Trusted Bitcoiner
if the BIP creates a fork, then you need much more than 75% to be on the safe side

that really depends,
what if those 25% Mostly represent poeple that doesnt mind of bitcoin is 2MB+17%/yr or 8MB+22%/yr
they made the less popular vote but still would not be hostile to the other option.
suddenly 75% = Safe to Implement.

 and that is probably the case with BIP101 Vs BIP100

i personally do not mind if bitcoin is BIP101, BIP100, if it was up to me i'd pick BIP420, but BIP100 is easy to agree to.
full member
Activity: 322
Merit: 115
We Are The New Wealthy Elite, Gentlemen
If a BIP is going to create a fork, then you need much more than 75% to be on the safe side, since those who commands 25% of the hash power might control much more resources than those who have 75% of hash power

IMO, hash power is just a too simplified indicator, the weight of the vote should be based on a weighted index of many different aspects of the whole ecosystem

There are many important actors in bitcoin ecosystem: devs, full nodes, miners, pools, exchanges, payment processor, wallet providers, and many companies trying to build service upon bitcoins, and investors who have bought lots of coins. Many of them don't have hash power thus can not vote in a hash power way, but they will all be affected by the change in the protocol

By default the current situation is always 100% consensus, because every participant are using it right now. If you want to move away from it, you really need strong motivations from every one. Only when majority of people think that current situation is unbearable, a change will become consensus


Imagine how the Bitcoin Network could be used to resolve the Climate Change debate. There is obvious consensus that Climate Change is caused by human intervention, yet no one trusts the consensus has actually be reached because there are "merchants of doubt" that are essentially scientist shills for the oil companies that shout very loudly and give the impression that there is controversy when there is none or very little.

The Bitcoin Network could easily demonstrate consensus in a indisputable manner, but the question is, how could something like this be achieved? Would you simply ask the miners to vote with their blocks? What do bitcoin miners know about Climate change and why is it their job to make the decision and arrive at consensus?

The same fundamental problem is the one we currently face. We have a very good method for arriving at consensus, the problem is not everybody is allowed to play in the game. ONly the miners seemingly have the votes. How we do all get our voices heard? Do we vote with our bitcoins? This is possible, but then whoever owns the most bitcoins has the most votes…

I think this is an important problem that needs solving.
legendary
Activity: 1988
Merit: 1012
Beyond Imagination
consider this, if you set the bar for minimal hashing at 95% a large miner or pool can single handedly veto the change and ruin it for everyone else, in which case it's likely that the network would simply go ahead with the change anyway. 95% is ideal but not a good minimal limit.

75% is best because:

1) winning all the votes isnt easy.
2) 75% indicates that the BIP is somehow superior, to the other perfectly valid BIPs.
3) what individual miners want doesn't matter. in the end miners will mine the most popular chain, because $_$
4) 25% wouldn't be able to do any serious damage to new chain even if they ALL worked together to try and break BTC ( this highly unlikely, most will just accept the new chain and be thankful they got a chance to vote )
5) 75% is high enough to make sure the BIP by and large addresses most people's concerns, it wouldn't be easy to get 75%, its likely the BIP would have the make some changes along the way to TRY and accommodate everyone.
6) Assuming the other BIPs have merit too, and it's not that the other miners necessarily disagree with that BIP but would rather another BIP win all the votes. >75% all agreeing to one thing is hard! and its unlikely all losing miners would turn on the network in anger... I don't go causing a riot when a gov election wins with a minority vote.
if all BIPs were all equally good you'd expect the voting to reflect that.
having 75% pretty much guarantees that that BIP is some how superior

that's why everyone needs to agree, 75% is pretty damn good. 80% is good, 90%+ is a no brainer implement the change right away! 100% = the change has been fully accepted by the network.


If a BIP is going to create a fork, then you need much more than 75% to be on the safe side, since those who commands 25% of the hash power might control much more resources than those who have 75% of hash power

IMO, hash power is just a too simplified indicator, the weight of the vote should be based on a weighted index of many different aspects of the whole ecosystem

There are many important actors in bitcoin ecosystem: devs, full nodes, miners, pools, exchanges, payment processor, wallet providers, and many companies trying to build service upon bitcoins, and investors who have bought lots of coins. Many of them don't have hash power thus can not vote in a hash power way, but they will all be affected by the change in the protocol

By default the current situation is always 100% consensus, because every participant are using it right now. If you want to move away from it, you really need strong motivations from every one. Only when majority of people think that current situation is unbearable, a change will become consensus
full member
Activity: 322
Merit: 115
We Are The New Wealthy Elite, Gentlemen
I would be interested to see if after any given option reaches the 75% threshold if that option could reaching 90% or even 95% within the 12 hour period following. This is to test to see if 75% supermajorities really do lead to consensus or if there is large group of unhappy "losers" left over.

could take a while to convince everyone to change their vote to 75%.. 75-85% is a thoughtfully answers... it's a tough question.

More proposed modifications:

Perhaps the consensus would have to be maintained for 48 hours, and the probability of reward would be based on the actual percentage reached in the end rather than the percentage agreed upon.

For instance if 100% consensus results in 100% chance of reward, 90% consensus results in 80% chance of reward, and 75% consensus results in 60% chance of reward and:

The 75% option reaches a consensus of over 90% after a 48 hour period, then the chance of reward will be based on the actual consensus reached which was 90%, even though 75% was the proposal that achieved that consensus. The main point of the experiment would then be to see what the actual level of consensus reached is in the end, rather than to see what is voted in.

Another thing I think would be required in an ideal experiment of this kind is that all participants remain actively involved rather than voting once and leaving never to return, though I don't think there is a way to deal with that problem so we will just have to chalk it up as an uncontrollable variable in the results.
legendary
Activity: 1904
Merit: 1037
Trusted Bitcoiner
Voted 75% because:

1) The children
2) I have no objections to 75%
3) I have no horse in the race.
4) To show how easy votes can be manipulated

So basicly... I voted for a small chance of someone else donating a bit to a good cause. Now I can feel so good about myself.

Could someone with a few dozen sock puppets join in on the vote? Think about the children!

Please everyone Change your votes to 75% so i can make a donation!
besides you have no objections to 75% it's a valid answer, most popular, and happens to be the RIGHT answer!
hero member
Activity: 764
Merit: 500
I'm a cynic, I'm a quaint
Voted 75% because:

1) The children
2) I have no objections to 75%
3) I have no horse in the race.
4) To show how easy votes can be manipulated

So basicly... I voted for a small chance of someone else donating a bit to a good cause. Now I can feel so good about myself.

Could someone with a few dozen sock puppets join in on the vote? Think about the children!
legendary
Activity: 1904
Merit: 1037
Trusted Bitcoiner
I would be interested to see if after any given option reaches the 75% threshold if that option could reaching 90% or even 95% within the 12 hour period following. This is to test to see if 75% supermajorities really do lead to consensus or if there is large group of unhappy "losers" left over.

could take a while to convince everyone to change their vote to 75%.. 75-85% is a thoughtfully answers... it's a tough question.

legendary
Activity: 1904
Merit: 1037
Trusted Bitcoiner
 consider this, if you set the bar for minimal hashing at 95% a large miner or pool can single handedly veto the change and ruin it for everyone else, in which case it's likely that the network would simply go ahead with the change anyway. 95% is ideal but not a good minimal limit.

75% is best because:

1) winning all the votes isnt easy.
2) 75% indicates that the BIP is somehow superior, to the other perfectly valid BIPs.
3) what individual miners want doesn't matter. in the end miners will mine the most popular chain, because $_$
4) 25% wouldn't be able to do any serious damage to new chain even if they ALL worked together to try and break BTC ( this highly unlikely, most will just accept the new chain and be thankful they got a chance to vote )
5) 75% is high enough to make sure the BIP by and large addresses most people's concerns, it wouldn't be easy to get 75%, its likely the BIP would have the make some changes along the way to TRY and accommodate everyone.
6) Assuming the other BIPs have merit too, and it's not that the other miners necessarily disagree with that BIP but would rather another BIP win all the votes. >75% all agreeing to one thing is hard! and its unlikely all losing miners would turn on the network in anger... I don't go causing a riot when a gov election wins with a minority vote.
if all BIPs were all equally good you'd expect the voting to reflect that.
having 75% pretty much guarantees that that BIP is some how superior

that's why everyone needs to agree, 75% is pretty damn good. 80% is good, 90%+ is a no brainer implement the change right away! 100% = the change has been fully accepted by the network.

full member
Activity: 322
Merit: 115
We Are The New Wealthy Elite, Gentlemen
So a consensus is reached by poor kids in africa?  Roll Eyes
what this Experiment is all about:
the poor kids in africa getting a break represents the small reward of actually getting some progress BIP implemented. that is the common goal which makes people want to reach consensus. This Experiment is to test the theory that, if the incentive to reach consensus is strong enough, even a big group can be made to agree; at the same time we answer the question what % agreement can we reasonably expect.



I don't think poor kids in Africa is strong enough incentive unfortunately, I think perhaps a more accurate model that reflects a BIP decision is one that directly benefits everyone involved. Perhaps an alteration to this experiment is one in which we get together a pot of Bitcoins put up by interested parties (me, you, whoever else) and we promise to payout equally splitting the money to all participants once consensus is reached. Perhaps implementing Peter's model of higher probability of payout with the higher consensus percentage that is decided upon, but with the alteration of a payout to all participants rather than a lottery of "five lucky participants".

I think there should be no time limit, only the requirement that the consensus is held for 12 consecutive hours. And also for a good result in the experiment we would have to convince the mods not to bury the poll deep in the gaming section of the forum were no one every goes to ensure good participation and a large enough sample.

I would be interested to see if after any given option reaches the 75% threshold if that option could reaching 90% or even 95% within the 12 hour period following. This is to test to see if 75% supermajorities really do lead to consensus or if there is large group of unhappy "losers" left over.
legendary
Activity: 1904
Merit: 1037
Trusted Bitcoiner
So a consensus is reached by poor kids in africa?  Roll Eyes
what this Experiment is all about:
the poor kids in africa getting a break represents the small reward of actually getting some progress BIP implemented. that is the common goal which makes people want to reach consensus. This Experiment is to test the theory that, if the incentive to reach consensus is strong enough, even a big group can be made to agree; at the same time we answer the question what % agreement can we reasonably expect.
legendary
Activity: 1988
Merit: 1012
Beyond Imagination
So a consensus is reached by poor kids in africa?  Roll Eyes
full member
Activity: 322
Merit: 115
We Are The New Wealthy Elite, Gentlemen

What would happen if the 25% side continues on using their version of the fork? Do you think 25% of the current Bitcoin community (yes, this statement assumes the percentage of miners is proportional to the Bitcoin community) could still thrive on their own? Do you think this would negatively affect the other 75%?

I am not expecting answers to those questions, but they are things I consider when thinking about a 75% consensus threshold.

I tend to agree that my 95% vote is ideal and probably not realistic. Is 75% the best, most realistic option? I don't know, but my current opinion is that it should probably be somewhere between the two options.

I agree, Andreas Antonopoulos suggests that 75% is a trigger for a signal to the network that consensus is about to be reached and everyone should at that point change to the proposal that has reached that point. There is then a "grace period" I don't know if it's two weeks or what time frame it is but the goal at that point is to then hit the threshold of 95% before making the actual transition.

This suggests that 75% supermajority is different than the 95% consensus, which of course in the end 100% is the real goal.
sr. member
Activity: 470
Merit: 250
Ok, assuming 95% is not a good threshold, why is 75% the best option?
1) what individual miners want doesn't matter. in the end miners will mine the most popular chain, because $_$
2) 25% of miners saying "no" means they wouldn't be able to do any serious damage to new chain even if they ALL worked together to try and break BTC ( again highly unlikely, most will just accept the new chain and be thankful they got a chance to vote )
3) 75% is high enough to make sure the BIP by and large addresses most people's concerns, it wouldn't be easy to get 75%, its likly the BIP would have the make some changes along the way to TRY and accommodate everyone.
What would happen if the 25% side continues on using their version of the fork? Do you think 25% of the current Bitcoin community (yes, this statement assumes the percentage of miners is proportional to the Bitcoin community) could still thrive on their own? Do you think this would negatively affect the other 75%?

I am not expecting answers to those questions, but they are things I consider when thinking about a 75% consensus threshold.

I tend to agree that my 95% vote is ideal and probably not realistic. Is 75% the best, most realistic option? I don't know, but my current opinion is that it should probably be somewhere between the two options.
legendary
Activity: 1615
Merit: 1000
assuming the other BIPs have merit too, and it's not that the other miners necessarily disagree with that BIP but would rather another BIP. >75% all agreeing to one thing is hard! and its unlikely all losing miners would turn on the network in anger... I don't go causing a riot when a gov election wins with a minority vote.

having 75% pretty much guarantees that that BIP is some how superior

I meant more of a scenario where the BIP has support in the range of 50% and a large miner on the opposing side gets worried. With sufficient hashrate, they have the option to force the fork and then destroy the fork. I'm not sure the financial incentives would ever really be there, but looking at the debate, it seems more like a blue vs. red battle than a rational discussion, so you have to assume stupid things can get done.

edit: of course, currently there's no single pool that could do this. I guess I just like poking at obscure scenarios...
legendary
Activity: 1904
Merit: 1037
Trusted Bitcoiner
assuming the other BIPs have merit too, and it's not that the other miners necessarily disagree with that BIP but would rather another BIP. >75% all agreeing to one thing is hard! and its unlikely all losing miners would turn on the network in anger... I don't go causing a riot when a gov election wins with a minority vote.

having 75% pretty much guarantees that that BIP is some how superior

if all BIPs were all equally good you'd expect the voting to reflect that.
legendary
Activity: 1615
Merit: 1000
The miner support level needs to be such that it's extremely unlikely the fork could turn out to be the weaker of the two. 75% with two weeks lead time seems reasonable assuming honest miners.

However, a miner with more than 25% of total hashrate could cause the fork pretty serious damage by mining bigger blocks (in the current case) just long enough to trigger the fork, and then reverting back to the old software. This would leave the "new" fork weaker than the "old" one. Granted, it'd also be quite expensive and the results for miners needing to sell their coins would be unpredictable. But it's an attack within the realm of possibility given a determined, large miner.

To avoid the latter attack, the required miner support level needs to be something like 50% + % of hashrate held by the largest single or colluding mining operation(s).
legendary
Activity: 1456
Merit: 1000
Consider it from an average user point of view, which would likely be: wtf? Just get the lowest possible robust threshold (75%) to win in order to get things moving.

If you have invested in mining, you don't ever want to find yourself out in the cold mining a useless chain. As soon as most people agree on something, you would want to switch over and follow the crowd.

Keeping the vote open for a near 100% majority just extends the voting time, which users might view as a risk to their 'store of value'.

What's the worst that could happen? Bad fork? Revert. DDoS attacks? Revert.
legendary
Activity: 1904
Merit: 1037
Trusted Bitcoiner
well consider this, if you set the bar for minimal hashing at 95% a large miner or pool can single handedly veto the change and ruin it for everyone else, in which case it's likely that the network would simple go ahead with the change anyway. 95% is ideal but not a good minimal limit.
Ok, assuming 95% is not a good threshold, why is 75% the best option?

1) what individual miners want doesn't matter. in the end miners will mine the most popular chain, because $_$
2) 25% of miners saying "no" means they wouldn't be able to do any serious damage to new chain even if they ALL worked together to try and break BTC ( again highly unlikely, most will just accept the new chain and be thankful they got a chance to vote )
3) 75% is high enough to make sure the BIP by and large addresses most people's concerns, it wouldn't be easy to get 75%, its likly the BIP would have the make some changes along the way to TRY and accommodate everyone.
Pages:
Jump to: