Author Topic: Dynamic number of delegates with minimum delegates (101)... to save "democracy"!  (Read 4813 times)

0 Members and 1 Guest are viewing this topic.

Offline luckybit

  • Hero Member
  • *****
  • Posts: 2921
    • View Profile
  • BitShares: Luckybit
I can remember BM tell us that 'basicaly' a single conformation is enough .. but yhea 51% confirmation takes longer then .. i understand now .. thx
It's always possible to select a super-delegate from a random shuffle. There would be a list and someone from the list would be selected every hour to be the super-delegate. If you want you could even select a super-delegate every 10 minutes.

This would give you the speed and decentralization without any tradeoff that I can see. So it would preserve democracy by allowing a sort of dictionary of delegates from which the algorithm would use randomness to choose from.

The dictionary could have some statistics so that certain high availability delegates are favored.
https://metaexchange.info | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

Offline luckybit

  • Hero Member
  • *****
  • Posts: 2921
    • View Profile
  • BitShares: Luckybit
Gotta start somewhere though and also it has to be profitable for the 101. When it's big enough to scale up higher then why not let there be more but I don't think you can start out with 1000 delegates because the market cap doesn't support paying 1000 delegates.

Exactly! We start with 101 (minimum). And if the last y delegates(example 33) earn more than a total of  x amount (30.000bitUSD,y bts,y titans or whatever) the network will add automaticaly more delegates that are in the waiting list until the average amount is met again.If the average pay-off drops again, a number of delegates are out again... You can put some rules like new delegates don't get fired if they don't stay at least for 1-2 months or something like that because it would be fustrating to get in and out multiple times...or something more advanced.... Bytemaster could implemment an algorithm with the Kimoto's Gravity Well logic behind it  to solve this "problem" ;)

This algorithm is simple enough that one of us could probably implement it. It's really simple.
If the toolkit is set up like how I hope then it would probably take only a few lines of code.
https://metaexchange.info | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

Offline xeroc

  • Board Moderator
  • Hero Member
  • *****
  • Posts: 12922
  • ChainSquad GmbH
    • View Profile
    • ChainSquad GmbH
  • BitShares: xeroc
  • GitHub: xeroc

Offline bytemaster

delegate count also affects confirmation time.  The more delegates the longer you must wait for confirmation and the longer you must wait for random numbers.



You can still use 101 delegates (the half for the confirmation...) on every block confirmation...

Let's say because of added delegates you have right now 404 "active" delegates...
you split them in 4 equal blocks (see graph)... 101.101.101.101
and you pick one random* block (of 101 delegates) to make what you do right now (the "dirty" work)  ;)

In the long run all delegates will be paid the same average amount because all had the same opportunity...
The only thing that changes of course is a little bit higher standard deviation on payments amounts ;)


*PS  the confirmation time should not change significantly

You are correct, I can randomly select 101 from the top N where N is arbitrarily large.

However, if you increase the number of delegates under approval voting you are also increasing the size of the average transaction by a proportional amount. 
For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline liondani

  • Hero Member
  • *****
  • Posts: 3737
  • Inch by inch, play by play
    • View Profile
    • My detailed info
  • BitShares: liondani
  • GitHub: liondani
delegate count also affects confirmation time.  The more delegates the longer you must wait for confirmation and the longer you must wait for random numbers.



You can still use 101 delegates (the half for the confirmation...) on every block confirmation...

Let's say because of added delegates you have right now 404 "active" delegates...
you split them in 4 equal blocks (see graph)... 101.101.101.101
and you pick one random* block (of 101 delegates) to make what you do right now (the "dirty" work)  ;)

In the long run all delegates will be paid the same average amount because all had the same opportunity...
The only thing that changes of course is a little bit higher standard deviation on payments amounts ;)


*PS  the confirmation time should not change significantly
« Last Edit: June 26, 2014, 10:46:54 pm by liondani »

Offline emski

  • Hero Member
  • *****
  • Posts: 1282
    • View Profile
    • http://lnkd.in/nPbhxG
I can remember BM tell us that 'basicaly' a single conformation is enough .. but yhea 51% confirmation takes longer then .. i understand now .. thx
Depending on the definition of confirmation...

If a delegate adds your transaction to a block you cant be certain that you(and the delegate) are not on a fork.
The only way to be sure is to see 51% of delegates signing blocks after the one in which your transaction is included. (and even then some of these delegates might be malicious but that is different topic)

Offline xeroc

  • Board Moderator
  • Hero Member
  • *****
  • Posts: 12922
  • ChainSquad GmbH
    • View Profile
    • ChainSquad GmbH
  • BitShares: xeroc
  • GitHub: xeroc
I can remember BM tell us that 'basicaly' a single conformation is enough .. but yhea 51% confirmation takes longer then .. i understand now .. thx

Offline emski

  • Hero Member
  • *****
  • Posts: 1282
    • View Profile
    • http://lnkd.in/nPbhxG
delegate count also affects confirmation time.  The more delegates the longer you must wait for confirmation and the longer you must wait for random numbers.
Hu? How is that?

can just the round take a little longer then?
Exactly but that means 51% of delegates signing particular block will take longer.

Offline xeroc

  • Board Moderator
  • Hero Member
  • *****
  • Posts: 12922
  • ChainSquad GmbH
    • View Profile
    • ChainSquad GmbH
  • BitShares: xeroc
  • GitHub: xeroc
delegate count also affects confirmation time.  The more delegates the longer you must wait for confirmation and the longer you must wait for random numbers.
Hu? How is that?

can just the round take a little longer then?

Offline xeroc

  • Board Moderator
  • Hero Member
  • *****
  • Posts: 12922
  • ChainSquad GmbH
    • View Profile
    • ChainSquad GmbH
  • BitShares: xeroc
  • GitHub: xeroc
Hysteresis should be enough ... dont over complicate things

But the idea is great .. but i am not sure if we should delay the launch any longer ..
i am sure this king of feature only requires a soft-fork i.e. the chain can be updrade to that ... nice idea

Anyway finding the earning threshold might be a dificult economical task

Offline bytemaster

delegate count also affects confirmation time.  The more delegates the longer you must wait for confirmation and the longer you must wait for random numbers.
For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline liondani

  • Hero Member
  • *****
  • Posts: 3737
  • Inch by inch, play by play
    • View Profile
    • My detailed info
  • BitShares: liondani
  • GitHub: liondani
Gotta start somewhere though and also it has to be profitable for the 101. When it's big enough to scale up higher then why not let there be more but I don't think you can start out with 1000 delegates because the market cap doesn't support paying 1000 delegates.

Exactly! We start with 101 (minimum). And if the last y delegates(example 33) earn more than a total of  x amount (30.000bitUSD,y bts,y titans or whatever) the network will add automaticaly more delegates that are in the waiting list until the average amount is met again.If the average pay-off drops again, a number of delegates are out again... You can put some rules like new delegates don't get fired if they don't stay at least for 1-2 months or something like that because it would be fustrating to get in and out multiple times...or something more advanced.... Bytemaster could implemment an algorithm with the Kimoto's Gravity Well logic behind it  to solve this "problem" ;)

Offline luckybit

  • Hero Member
  • *****
  • Posts: 2921
    • View Profile
  • BitShares: Luckybit
+5% I think just for marketing purposes limiting it to 101 might be bad.
Like NXT took SO much heat for only have +-70 initial shareholders, I'm concerned the market will compare apples with oranges and conclude unfairly that '101 - that doesn't sound very decentralised.'

Despite decentralisation being a means not an end.

(So some amendment that keeps it at 101 but doesn't 'limit' it to that, maybe something that kicks in at $1 Billion+ valuation or something,  I don't know...)

Not at the $1 mark but when a certain BitAsset to BitUSD is equal to or surpasses a specific amount. In theory this could all be done internally within Bitshares itself and then dynamically change to reflect the Bitshares to BitUSD price for example.

If we are going to bet then we would bet that less and less Bitshares will be required to represent 1 BitUSD. How about if we use this mechanism to internally estimate the market cap and then use that to dynamically adjust the amount of delegates?

My understanding of the motivation of Bytemaster is that Bitshares was supposed to be a sort of Futarchy. You can use the mechanism of prediction markets to maintain fairness within Bitshares if you're creative enough.

http://hanson.gmu.edu/futarchy.html
« Last Edit: June 26, 2014, 09:07:04 pm by luckybit »
https://metaexchange.info | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

Offline luckybit

  • Hero Member
  • *****
  • Posts: 2921
    • View Profile
  • BitShares: Luckybit

I bring to the table again the dynamic number of delegates with minimum delegates... (101 I suppose)
If it is easy to change that in future maybe it is not worth talking about it right now of course...
But I thing, depended on BTSX growth, 101 delegates will not be enough at one point... or better to say it would be not so fair for the rest of the world... or maybe even dangerous for our world !
I am sure the first years it will work fine (like bitcoin and better), but imagine Titan replaces all coins? Imagine million of users!
101 delegates with thousands of users seems ok, what about when 101 delegates will "serve" 100 million users? My feeling says it will be something like a dictatorship...
It would be like 101 "respected" "companys", "rules" the world's economy... And how can I know that one "company" will not buy the other "company"... How can I know that delegate 1 will not buy delegate 101 and 99 etc. of course not in face of our eyes, nobody nor the insiders would know about it. So Coca Cola = delegate 1, BP =delegate 2, Microsoft=delegate 3 etc...
What multipools** are for bitcoin, will 101* delegates be for bitshares...

* in reality it could be only 10 that owns "indirectly" the other 91 or the first 1000 on the delegates list...
** I can imagine that the first multipools-like actors for bitshares will be the centralized exchanges for bts, because to their addresses (delegate accounts)  that will be used for the huge deposits from customers... In future they could have near 0 fees or even give dividends back (or interest) to get their precious coins ... I mean votes.


+5% +5% +5%
Brilliant idea. I fully endorse this.  We should be going in exactly this sort of direction so that we future proof Bitshares for communities. Most communities want democracy and this is a way to spread it.
+5% I think just for marketing purposes limiting it to 101 might be bad.
Like NXT took SO much heat for only have +-70 initial shareholders, I'm concerned the market will compare apples with oranges and conclude unfairly that '101 - that doesn't sound very decentralised.'

Despite decentralisation being a means not an end.

(So some amendment that keeps it at 101 but doesn't 'limit' it to that, maybe something that kicks in at $1 Billion+ valuation or something,  I don't know...)

Gotta start somewhere though and also it has to be profitable for the 101. When it's big enough to scale up higher then why not let there be more but I don't think you can start out with 1000 delegates because the market cap doesn't support paying 1000 delegates.

We should at least let it be known that this is the intention of the design. Democratic Proof of Stake.

« Last Edit: June 26, 2014, 08:50:01 pm by luckybit »
https://metaexchange.info | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

Offline Agent86

  • Sr. Member
  • ****
  • Posts: 471
  • BTSX: agent86
    • View Profile
Isn it the responsibility of the sharholders to literlly vote against such cartels?

like bitcoin "shareholders" did with multipools ?  ::)
There is a pretty big difference in that bitcoin "shareholders" (owners of bitcoin) don't get to vote on anything;  Miners may have separate interests than bitcoin holders but they have all the voting power.