Validator

Validators are responsible for evaluating the work submitted by training nodes. Similarly, validators have to stake before the evaluation tasks, and can be rewarded upon task completion. This is essential to maintaining the quality and reliability of the FLock network.

The formula for validator’s daily return is calculated as such:

rv=ESiβk=1MSkβSvdωStnω+SvdωF(σ+(1σ)SvSv+Sd)r_v =E \cdot \frac{S^\beta_i}{\sum_{k=1}^{M}{S^\beta_k}} \cdot \frac{S_{vd}^\omega}{S_{tn}^\omega+S_{vd}^\omega}\cdot F \cdot (\sigma + (1-\sigma) \cdot \frac{S_v}{S_v+S_d})

Specifically,

  • FF refers to the performance of the validation, which is calculated through off-chain consensus

  • σ\sigma is the guaranteed validator return against delegators

  • SvdS_{vd} is the stake amount of this validator as well as stake amount delegated to this validator

  • SvS_v is the stake amount of this validator

  • SdS_d is the stake amount delegated to this validator

Note that FF is determined by the validator’s stake as well as how far it deviates from the scores submitted by the majority of all validators (i.e. distance of weighted average score).

And its task yield is:

yv=rvsvDi100%y_v = \frac{r_v}{s_v}\cdot D_i \cdot 100\%

In short, the reward percentage for validator depends on:

  1. how close the score is to the consensus among all the validators, measured by score variance (calculated off-chain)

  2. amount the validator staked

  3. the number of submissions that the validator validated

Example

Let’s continue with our previous example in Training Node and assume σ\sigma (guaranteed validator return against delegators) to be 0.9 . Let’s say one delegator delegated 100 for this validator.

Assuming FF (from off-chain calculation) is 0.5, daily reward for the validator who staked 500 is:

rv=1074110024506007000.5(0.9+0.1500600)rv204.11\begin{align*}r_v &= 1074 \cdot \frac{1100}{2450} \cdot \frac{600}{700} \cdot 0.5 \cdot \left(0.9 + 0.1 \cdot \frac{500}{600}\right) \\r_v &\approx 204.11\end{align*}

And task yield for a task of 30 days would be:

yv=204.1150030yv1224.66%\begin{align*} y_v &= \frac{204.11}{500} \cdot 30 \\ y_v &\approx 1224.66\% \end{align*}

Last updated