Skip to main content

How does Arkreen Network calculate the token amount that a Miner will earn?

Arkreen Network distributes the reward to the miners (except for Plant Miner) according to the trustworthiness of green energy generation data, the normalized quantity of data and the normalized volume of energy, the detailed calculation process is as follows.

Note: Plant Miner is not applicable for this section. For Plant Miner, the rewards the Plant Miner gets is proportional to (so far, 50% of) the rewards the Remote Miners (fed by this Plant Miner) get. The reward pool for Plant Miner is separate from the other miners'. See Plant Miner for more information.

1. Count effective Proof of Green Data reports

Arkreen Network calculates how many effective Proof of Green Data reports every eligible miner has sent within the statistics window:

Zminer=i=1Winstatmin(Dminer,i,12)Z_{miner}=\sum_{i=1}^{Win_{stat}}min(D_{miner,i}, 12)

Where,

ZminerZ_{miner} is the total number of Proof of Green Data reports sent by this miner within the statistics window (WinstatWin_{stat}).

WinstatWin_{stat} is the epochs in a statistics window, which is 168 epochs (around 1 week).

Dminer,iD_{miner,i} is the number of Proof of Green Data reports sent by this miner in epochiepoch_{i}. Note that excessive reports (more than 12 reports per hour) doesn't result in bigger weight.

2. Calculate the green energy contribution

For Energy Generation Category

For Energy Generation Category, the contribution CminerC_{miner} of a miner is calculated against the generated energy:

Cminer=Enorm,miner/kWhC_{miner}=E_{norm, miner}/kWh

Where Enorm,minerE_{norm, miner} is the normalized energy generation value within the statistics window for every eligible miner.

Because the power generation of large power plants is much larger than that of small power plants, in order to avoid most of the rewards from being allocated to large power plants and affecting the enthusiasm of small power plants to participate, Arkreen Network regularizes the power generation amount of every miner to calculate the contribution.

So far, the Energy Generation Category starts from the solar photovoltaic power generation. To classify residential solar PV panels and solar farms, the normalization method for a miner is:

Enorm={EorgEorg<=EthresEthres+EorgEthrescompEorg>EthresE_{norm} = \begin{cases} E_{org} & \quad E_{org} <= E_{thres} \\ E_{thres} + \sqrt[comp]{E_{org} - E_{thres}} & \quad E_{org} > E_{thres} \end{cases}

Where,

EnormE_{norm} is the miner's normalized energy amount for contribution calculation.

EorgE_{org} is the miner's original generated electricity energy in kWh (kilowatt-hour) in the statistics window.

EthresE_{thres} is the threshold of the generated energy in the statistical window to classify residential solar PV panels and solar farms, currently being 28kWh/168epochs.

compcomp is the compression factor, currently being 5.

For Energy Consumption Category

For Energy Consumption Category, the contribution is calculated against multiple factors.

Cminer=Cbaseline,minerFenergysave,minerFdemandresp,minerC_{miner}=C_{baseline,miner}*F_{energysave,miner}*F_{demandresp,miner}

Where,

Cbaseline,minerC_{baseline,miner} is the baseline contribution factor. So far, Cbaseline,minerC_{baseline,miner} equals 14.

Fenergysave,minerF_{energysave,miner} is the contribution factor for energy saving. The factor is defined in the following table:

ConditionEnergy Saving Reward Factor
If MA7 >= MA301
If MA7 < MA301.1

Where, MA7 is the 7-day moving average of the daily power consumption (i.e. the average daily energy consumption in the most recent 7 days, from Today-7 0:00 UTC to Today-1 23:59 UTC), and MA30 is the 30-day moving average.

Fdemandresp,minerF_{demandresp,miner} is the contribution factor for demand response. The exact value is to be determined and assumed 1 so far.

3. Calculate the reward weight for every miner

Arkreen Network calculates the reward weight for every eligible miner:

Weightminer=RBminerCminerZminerTminerWeight_{miner}=RB_{miner}*C_{miner}*Z_{miner}*T_{miner}

Where,

RBminerRB_{miner} is the factor to boost the reward weight for this miner. Reward boost factor is determined by the type of the miner.

Miner TypeReward Boost Factor
Standard Miner (Smart Dongle Method)1.2
Standard Miner (Smart Meter Method)1.1
Standard Miner (Smart Plug Method)1.1
Standard Miner (API Acquisition Method Push Mode)0.5
Standard Miner (API Acquisition Method Pull Mode)0.7
Remote Miner1.0
Consumption Plug Miner1.1

CminerC_{miner} is the contribution score for this miner.

ZminerZ_{miner} is the effective Proof of Green Data report count for this miner.

TminerT_{miner} is the trustworthiness score for this miner against its data set sent in the statistics window.

4. Calculate the reward for every miner

The minerkminer_k (the kth miner in the eligible miner subset) could receive reward in AKRE:

Rewardminerk=Weightminerki=1mWeightmineriRewardepochReward_{miner_k}=\frac{Weight_{miner_k}}{\sum_{i=1}^{m}Weight_{miner_i}}*Reward_{epoch}

Where,

RewardepochReward_{epoch} is the distributed reward for each epoch. It's around 22831 AKRE in the first 2 years. See What is AKRE? and Token Distribution for details.

m is the total number of the miners in the eligible subset.

WeightmineriWeight_{miner_i} is the reward weight of the ithi^{th} miner in the eligible miner subset.