Уважаемые пользователи Голос!
Сайт доступен в режиме «чтение» до сентября 2020 года. Операции с токенами Golos, Cyber можно проводить, используя альтернативные клиенты или через эксплорер Cyberway. Подробности здесь: https://golos.io/@goloscore/operacii-s-tokenami-golos-cyber-1594822432061
С уважением, команда “Голос”
GOLOS
RU
EN
UA
now
7 лет назад

💯 Как на самом деле работают квадратичные начисления Голоса? 2х(50\50)

Многие слышали о том, что на Голосе квадратичные начисления выплат за посты. Однако подавляющее большинство не знает, как это работает точно.

Перейду сразу к делу. Разберем на упрощенных примерах.

Блокчейн Голоса работает с очень большими числами, которые именуются rshares, но для наглядности примера я буду работать с маленькими и называть их Силой Голоса.

Допустим, что имеется 4 участника. У каждого сила голоса 1, 2, 3, 4 соответственно. Квадратичное вознаграждение будет считаться по формуле

(1 + 2 + 3 + 4) * (1 + 2 + 3 + 4) = 10 * 10 = 100.

Т.е. считается именно квадрат суммы, а не сумма квадратов(12 + 22 + 32 + 42) = 30. Например, в вышеуказанном корректном примере, без участника с СГ 4 результат составит всего лишь 36 вместо 100, т.е. на 64% меньше. В некорректном примере участник с СГ 4 всегда будет давать 42=16 независимо от предыдущих начислений. Именно поэтому чем больше текущая выплата за пост, тем больше каждый участник дает начислений при одинаковой Силе Голоса. В этом вся мощь квадрата суммы выплат.

Давайте представим, что нам нужно разделить в правильной пропорции долю каждого, внесенную в общую выплату. Тогда будем считать по формуле:(Доля участника / Сумма всех долей) * 100% Т.е. в нашем примере доля участника с СГ 4 равна

( 4 / (1 + 2 + 3 + 4)) * 100 = 40%

В связи с вышесказанным - интересная информация к размышлению. Если у одного участника сила Голоса 10, а у другого в десять раз больше - 100 и они проголосуют за нулевой пост, то первый даст 100, а второй 10000, т.е. не в 10, а в 100 раз больше.

Данный упрощенный пример показан для наглядности. В исходном коде блокчейна Голос на языке программирования с++, точная выплата вычисляется немного по - другому.

((net_rshares + 2000000000000) * (net_rshares + 2000000000000)) - (net_rshares - (2000000000000)2)

После чего все это безобразие перемножается на total_reward_fund_steem, а после чего делится на total_reward_shares2, которые можно посмотреть в API Голоса. В результате мы получаем точную выплату в Голосах. После чего Она делится между автором и кураторами и часть потом переводится в ГБГ по фиду, устанавливаемому делегатами. Однако точные формулы лежат за рамками данной статьи.

Константа 2000000000000 - на вид кажется большой, но на самом деле оказывает самое незначительное влияние на выплату и предназначена для того, чтобы поднять сумму самых маленьких выплат, т.к. обычная квадратичная функция слишком плавно стартует с нуля.

Если что - то не понятно, спрашивайте в комментариях. Следующие статьи на эту тематику будут о том, как вычисляется сумма rshares и кураторские выплаты.

Всем проголосовавшим за пост - 100% возврат GBG

1
165.770 GOLOS
На Golos с June 2017
Комментарии (38)
Сортировать по:
Сначала старые