Formal description of HackZ's semi-reputation based DAO
HackZ DAO introduces novel, semi-reputation based governance system in which voting power is mathematically tied to rating points and activity on the platform.
Math Specification of HackZ DAO Voting System
Let Ri,R,RD be the rating of i-th user, mean user rating, and rating deviation (in other words standard deviation of users ratings).
Then the z-score for the -th user, zi representing how many standard deviations Ri is above the mean R is given as:
Let κ denote a constant activity multiplication factor , and let Ai denote a set Ai={g1,g2,...,gj}, where gj is the number of challenges played by j-th user and satisfies the following:
Note that the Ai set is different for each user (assuming users have different rating scores) and it includes data about the number of challenges played by other users with similar skill. By users with similar skill we mean all users whose ratings lie within 1 standard deviation from the rating of i-th user. Information about the median of set A allows us to define ψ, which we'll define as "inactivity damping function".
The purpose of ψ is to reduce the excess voting power of inactive users with high rating. It does so by considering the median number of played challenges in time period t within the set of similarly rated players. That way HackZ governance system rewards only active users, while simultaneously not making casual learners lose track of their progress.
Unlike other popular MMO games, HackZ does not reset users' ratings/divisions after each season.
Now, let's describe the exp function. That function serves as an exponent in the final voting multiplication expression, and resembles a typical sigmoid function. Below, e stands for Euler's constant and gi is the number of challenges that were played by i-th player in time period t.
Finally, the Voting Power function can be defined as:
where: exp(...) - abbreviation for exp(zi,gi,ψ(Ai)) for i-th user, ti - number of HCKZ tokens held on an address belonging to i-th user*, c - constant base multiplication factor
* In order to be counted, tokens have to have to remain on the same wallet, starting from 7 days prior to introduction of the relevant DAO proposal.
κ and c parameters are purposefully not predetermined and should be adjusted according to protocol's needs. The κ parameter controls how much we want to punish inactivity, while the c parameter controls how much we want to boost the voting power of highly ranked users.
Initial values deemed as reasonable by the author are: κ=2, c=1.5
Example
To get a more intuitive understanding of the mechanism, readers might want to consider the following example:
The constant parameters:
κ = 2
c=1.5
Data regarding user named "Bob"
RBOB=1500 (user rating)
R=1400 (mean rating)
RD=100 (standard deviation of ratings)
gbob=2 (number of challenges played by Bob)
ABOB={3,5,4} (set of challenges played by users with similar skill, median med(Abob)=4)
tbob=100 (tokens held by user)
The only thing we care about is that Bob is 1 RD above the norm and played half as many games as the median, so he will obtain the following exponent:
Now that we know the exponent: exp=0.73, we can calculate cexp(...) and find out the votes multiplicator.
So for every 100 tokens, player Bob will be able to exercise 134 votes. This is a moderate voting boost, which came along with some activity in the game and a slightly above average rating.
Last updated