Improvement Proposals for BitShares Workers

in #bitshares4 years ago

From the DAO:

Accepting a Proposal requires a majority decision after a debating
period of two weeks minimum, and a participation rate of 20% or higher
calculated proportionally to the value of ETH requested in the

This is actually a good idea and we should discuss integrating this idea
into BitShares workers.

It would works like this: If a worker asks for $1k worth of BTS for a
month, then the worker will only be successful if it finds approval of
at least $x worth of BTS with x being a fixed (or linear) percentage of
the requests funds.

However, this requires to re-introduce downvoting again, otherwise
people could fund them selves with little workers and little BTS stake.

Talking about this, could the rule be games in "the DAO"?


If it needs to reintroduce downvoting to not be gamed, that makes me question whether it is a good idea. Because downvoting itself adds games that have to be dealt with.

I prefer the system we have now where there is a ranking of proposals and they get paid in order.

However, one item on my wishlist for changing the worker voting method is to use ranked-choice voting. I would use a modified form of the Schulze method to determine the order of the workers. It would be modified to first filter out any workers that don't meet a minimum approval rating in order to reduce the number of workers (W) considered, since the algorithm complexity is order W^3. I would also use the snapshot of voting state one maintenance interval prior as the input to calculate worker rankings for the next maintenance interval in order to work around latency issues (so the algorithm has a full maintenance interval period, 1 hour, to compute the rankings in parallel with block production).

The second and far more important (but also probably far more controversial) item on my wishlist for changing BitShares voting methods is to only allow vested stake to vote similar to Steem. I wouldn't inflate as quickly as in Steem though. Vested BTS could only be withdrawn in 104 equal weekly payments. Vested BTS could become "qualified vested BTS" if it was:

  1. Vested as described above.
  2. The last update to the votes of the account (even just an affirmation that the user wants to keep the votes the same) was less than 3 months ago. This applies to accounts that proxy as well (they need to at least affirm that they want to keep the proxy the same).

Only qualified vested BTS would earn continuous interest at the fixed rate (not a very large rate though) by having the blockchain simply issue the necessary new BTS. Also, only qualified vested BTS would count towards votes for witnesses, committee members, and workers.

I'm also thinking that perhaps we could have two classes of vested BTS (long-term and medium-term).

Medium-term vested BTS would allow you to withdraw your entire fund in 26 equal weekly withdrawals. The interest rate on qualified medium-term vested BTS would be less than that of qualified long-term vested BTS. Medium-term vested BTS would count 100% towards witness votes, 25% towards committee member votes, and 0% towards worker votes.

Long-term vested BTS would allow you to withdraw your entire fund in 104 equal weekly withdrawals. Qualified long-term vested BTS would count 100% towards witness, committee member, and worker votes.

The interest rate on qualified long-term vested BTS would be r compounded each hour. So the yearly interest rate would be ((1+r)^8760 - 1) * 100%. The interest rate on qualified medium-term vested BTS would be r/k compounded each hour, where k is some hard-coded constant. The value of r could be set by committee but it would have a hard-coded upper bound (perhaps 0.00000556967 would be a good upper bound which corresponds to a maximum possible yearly interest rate of 5%). Here are some example values: if k = 2 and r = 0.00000226058, then the annual interest rate would be 2% for qualified long-term vested BTS and 1% for qualified medium-term vested BTS.

Coin Marketplace

STEEM 0.18
TRX 0.03
JST 0.043
BTC 10890.43
ETH 383.07
USDT 1.00
SBD 0.98