Какова наиболее подходящая система вознаграждения?

Часть 1

Моделирование стимулирующего дизайна

Следующая тема серии Decon Simulation — «дизайн системы вознаграждения». Мы рассмотрим, какие проблемы могут возникнуть из-за дизайна системы вознаграждения, прежде чем погрузиться в симуляцию.

Куда отскочит мяч для регби?

Поведенческое разнообразие

В традиционном блокчейне пользователи имеют ограниченный спектр действий, а вознаграждения выдаются автоматически без вмешательства человека. Например, только через майнинг вы можете получить вознаграждение в биткойнах. Вознаграждение автоматически выдается в виде транзакции coinbase тому, кто решил проблему.

Такая простота поведения и полностью автоматическое вознаграждение позволяют относительно легко предсказывать и стимулировать действия пользователя. Другими словами, систему вознаграждения легко разработать, потому что ее можно построить исключительно с помощью математики.

Однако в блокчейнах, где вознаграждение предоставляется за различные виды деятельности, отличные от майнинга, дизайн системы вознаграждения становится сложным. Например, если пользователи мотивированы загружать посты (Steemit), предлагать новые алгоритмы для определенных задач (Numerai) или публиковать хороший набор данных (Ocean), как дизайнер должен распределять вознаграждение?

Проблема с системой вознаграждений

Поскольку невозможно полностью автоматизировать процесс оценки того, внес ли пользователь значимый вклад, блокчейн нуждается в помощи других пользователей для распределения вознаграждения. Многие экономики токенов решают эту проблему с помощью голосования. В системе вознаграждения за голосование пост, который получает больше лайков от пользователей, получает больше вознаграждения.

Например, система стремится предоставлять пользователям соответствующие вознаграждения за их публикации. Соответствующее вознаграждение оценивается по качеству поста и реакции читателей. Поскольку такая оценка требует проверки качества, автоматизация очень сложна. Таким образом, критерием вознаграждения становится количество лайков, которые получает пост. В этом случае нажатие кнопки «Нравится» приравнивается к голосованию, а совокупное количество лайков — количеству голосов.

Было бы разумно получить награду, равную проценту лайков, полученных публикацией человека, от всех лайков из «пула вознаграждений», который представляет собой совокупную сумму вознаграждений. Однако может ли такая система постоянно обеспечивать высокое качество деятельности?

Способы вручения наград

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

Однако некоторые пользователи могли отказаться размещать что-либо по причинам, не связанным с усилиями (популярность, обнажение кожи и т. д.). В среде с такими пользователями необходима единая структура вознаграждения.

Кроме того, если пользователей слишком много (когда общая сумма вознаграждения ограничена), вознаграждение может уменьшиться, даже если пользователю удалось привлечь относительно много лайков. Чтобы решить эту проблему, необходимо создать систему вознаграждений, которая экспоненциально увеличивается в зависимости от количества лайков, чтобы стимулировать публикации высокого качества.

Нет лучшей системы вознаграждения, есть только самая подходящая.

Тогда какая из пропорциональных, равномерных и экспоненциальных систем вознаграждения является лучшей? К сожалению, ответ на этот вопрос — «никаких». Не существует системы панацеи, которую можно было бы применять во всех случаях.

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

По правде говоря, эту проблему будет трудно решить до того, как среда будет создана и начнет функционировать. Тем не менее, это трудная задача - пересмотреть дизайн после того, как служба запущена и работает. Декон экспериментировал с симуляцией, чтобы увидеть, какова оптимальная система распределения вознаграждения.

Никто не может предсказать, куда отскочит мяч для регби, но если реальность эффективно включена в симуляцию, мы можем получить приблизительную оценку траектории. Точно так же, даже если индивидуальное поведение разнообразно, мы можем грубо моделировать паттерны с помощью симуляции. Мы стремились придумать лучшую систему вознаграждений.

Дизайн системы вознаграждения

Введение в сеть

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

Вознаграждение распределяется из пула вознаграждений. Те, кто хочет продвигать деятельность (например, рестораны или отели, которым нужны отзывы), могут определить размер пула вознаграждений. У каждой сущности разные требования. Одной платформе может потребоваться много обзоров, в то время как другой платформе нужны качественные обзоры или их сочетание.

Настройка среды моделирования

Далее идет настройка и гипотетическая среда моделирования.

  • Пул вознаграждения: общая сумма вознаграждения, вложенная поставщиком услуг, который хочет побудить пользователей публиковать отзывы. Сумма по умолчанию 500.
  • Количество агентов: количество пользователей в сети. Номер по умолчанию — 100.
  • Эпизод: Эпизод — это процесс, в котором агент решает, сколько усилий нужно приложить для написания обзора, получения голосов за обзор и, в конечном итоге, вознаграждения за обзор. Симуляция насчитывала 500 серий.
  • Диапазон усилий: Относится к времени и затратам агента на написание отзыва. 0 означает, что агент не составлял обзор, а 9 означает, что агент приложил максимум усилий для его написания. Все уровни указаны целыми числами.
  • Распределение активов агентов: основываясь на принципе Парето, согласно которому неравное распределение приводит к концентрации богатства, мы использовали распределение Парето, чтобы выделить такое неравенство. Для удобства мы выстроили агентов по размеру их активов.

  • Стоимость: относится к стоимости, необходимой для написания обзора, которая определяется уровнем усилий и активами агента. Мы подробнее остановимся на этом позже.
  • Нравится: Относится к оценке других агентов обзора. На основе уровня усилий и записей обзоров будет определен средний уровень, который будет случайным образом определен с помощью нормального распределения.

Агенты сравнивают потенциальную выгоду и затраты на написание отзыва, чтобы определить уровень усилий, которые они готовы приложить. Выигрыш — это стимул для написания отзыва, а вознаграждение — это вычитание затрат из выигрыша.

Методология распределения усиления

Мы использовали вышеупомянутые пропорциональный, экспоненциальный и равномерный методы распределения усиления. Подробные определения каждого из них следующие:

Пропорциональный

Выигрыш определяется количеством лайков, которые получает отзыв. Допустим, 10 агентов получили [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] лайков, а пул вознаграждений равен 55. В указанном порядке каждый агент получит [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] усиления.

Экспоненциальный

Выигрыш распределяется на основе квадрата отношения лайков. Другими словами, если агент получил относительно больше лайков, чем другие, он может ожидать большего выигрыша. Мы прошли процесс нормализации, чтобы сумма была равна 1 после возведения в квадрат аналогичного отношения.

Если 10 агентов получили [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] лайков, а пул вознаграждений равен 55, каждый агент в указанном порядке получит [0,143, 0,571, 1,286, 2,286, 3,571, 5,143, 7,000, 9,143, 11,571, 14,286] усиления (с округлением до трех знаков после запятой). Обратите внимание, что агенты 8, 9, 10 получают больше вознаграждений по сравнению с пропорциональной системой.

Униформа

Вне зависимости от количества лайков агенты получают равные выигрыши. Допустим, 5 из 10 агентов оставили отзыв, а пул вознаграждений равен 55. Пять агентов получат 0 прибавок, а остальные пять — 11 прибавок. Если бы агенты 1~5 писали обзоры, распределение вознаграждения было бы [11, 11, 11, 11, 11, 0, 0, 0, 0, 0].

Введение в функцию

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

Функция стоимости

Стоимость написания отзыва определяется по следующей формуле.

Влияет сумма активов (коэффициент), которой агент уже владеет, и усилия агента по написанию отзыва. Предположения следующие:

  • Стоимость равна 0, если агент не пытался написать отзыв.
  • Поскольку агенты, у которых уже есть значительные активы, имеют маленькую предельную полезность, они не заинтересованы в написании отзыва за (относительно небольшой) стимул. Таким образом, стоимость была установлена ​​выше для агентов с большим количеством активов.
  • Чем больше усилий вложено, тем выше стоимость написания обзора.
  • Независимо от усилий, абсолютная стоимость написания обзора была установлена ​​как постоянный срок (b0).
  • При определении стоимости путем умножения актива и усилия можно использовать нелинейную модель. Если коэффициент b3 равен 0, стоимость определяется линейной комбинацией активов и усилий. Увеличение или уменьшение значения b3 может усилить или ослабить нелинейные черты.
  • Усилие имеет целочисленное значение от 0 до 9 и увеличивается линейно. Мы усилили нелинейную черту, применив ее экспоненциально. Визуальное сравнение усилия и опыта (старания) выглядит следующим образом:

Прежде чем определить стоимость, мы должны отметить, что исходный актив не основан на фактических числах, а распределен на основе распределения Парето. Следовательно, абсолютное число обязательно будет отличаться в зависимости от количества участвующих агентов.

Наивно, если есть 10 агентов, первоначальный актив каждого агента будет 0,1, но если есть 100 агентов, это будет 0,01. Поэтому целесообразно умножать общее количество агентов вместо использования коэффициента активов для расчета стоимости. В этом моделировании такую ​​логику представляют коэффициенты b1 и b3.

Функция «Нравится»

Количество лайков, которые получит обзор, зависит от уровня усилий (действий) и истории отзывов агента. Отзывы, в которые вложены значительные усилия, будут иметь более высокое качество и, следовательно, могут получить больше лайков. Кроме того, агенты, которые постоянно пишут отзывы, будут иметь более высокий уровень доверия.

Чтобы определить количество лайков, мы должны принять во внимание уровень усилия, а не наличие усилия, поэтому мы использовали действие, а не опыт (старание). Формула подобной функции выглядит следующим образом:

Количество лайков определяется вероятностью, следующей за нормальным распределением со средним (mu) и стандартным отклонением (std). Среднее значение этого нормального распределения определяется действиями агента и историей просмотров, а стандартное отклонение установлено равным 1,0.

Поскольку история действий и просмотров не имеет прямой корреляции, их можно интерпретировать с помощью линейной комбинации.

Предположения:

  • Поскольку количество лайков не может быть отрицательным числом, любое значение ниже 0 заменяется на 0.
  • Если действие равно 0, это означает, что агент не писал отзыв, поэтому количество лайков также равно 0.
  • Однако, принимая во внимание, что точное количество лайков нельзя предсказать, количество лайков вычитается по вероятности в соответствии с нормальным распределением.
  • Что касается истории просмотров, мы просматриваем прошлые эпизоды на основе заданного значения окна. 1 означает, что отзыв был написан, а 0 – наоборот. Например, если окно равно 5 и мы находимся на эпизоде ​​20, мы проверяем, писал ли агент обзоры в эпизодах 15–19, и записываем [0, 1, 1, 0, 0].
  • Если агент уже писал отзывы в прошлом, начисляются дополнительные баллы. Другими словами, учитывается количество отзывов агента. В приведенном выше примере 0+1+1+0+0=2 используется для определения среднего значения.
  • Путем корректировки коэффициентов c1 и c2 мы можем определить, что более важно: действия или история отзывов. Это моделирование имеет c1 = 2,0, c2 = 1,0 по умолчанию. Мы оценили, что текущее действие важнее, чем просмотр истории.

Поскольку оценка может сильно различаться в зависимости от гиперпараметра (окна), мы проходим процесс нормализации деления оценки на размер окна. В данном моделировании коэффициент c2 отражает эту логику.

В отличие от затрат и подобных функций, существуют подразумеваемые функции — функция выигрыша и функция вознаграждения. Эти функции либо следуют методологии распределения, либо выводятся по возвращаемому значению других функций.

Получить функцию

Прибыль, которую агент получит за написание отзыва, рассчитывается по количеству лайков. Сумма определяется с помощью вышеупомянутых пропорциональных, экспоненциальных и унифицированных методов, применяемых к данному пулу вознаграждений.

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

Функция вознаграждения

Вознаграждение представляет собой вычитание прибыли и стоимости. Формула выглядит следующим образом:

Каждый агент учится путем исследования, чтобы получить максимальную награду.

Вывод

В этой статье мы рассмотрели проблему «проектирования системы вознаграждения», которую мы стремились проанализировать с помощью моделирования. Кроме того, мы рассмотрели настройку симуляции, функции агента и функции среды.

В нашей следующей статье мы увидим результаты моделирования, когда агенты запрограммированы на обучение.

О Деконе

DECON — это криптоэкономическая лаборатория, специализирующаяся на аудите, дизайне и исследованиях по различным вопросам в индустрии блокчейнов. Основное внимание уделяется разработке моделей токенов, которые могут приносить реальную ценность.

Если вы заинтересованы в обучении в DECON, свяжитесь с нами по адресу [email protected]

Домашняя страница: https://deconlab.io

Фейсбук: https://www.facebook.com/deconcryptolab/

Среда: https://medium.com/decon-lab