police ca0545ec44 [research/lotterysim] staking strategies 3 лет назад
..
.ipynb_checkpoints f87435f9ff [research/lotterysim] miscel changes 3 лет назад
Makefile 0b07b3dee6 [research/lotterysim] scaling to 1k,10k,100k,1m nodes with same accuracy 3 лет назад
README.md 0b07b3dee6 [research/lotterysim] scaling to 1k,10k,100k,1m nodes with same accuracy 3 лет назад
README.pdf 0b07b3dee6 [research/lotterysim] scaling to 1k,10k,100k,1m nodes with same accuracy 3 лет назад
auto_crawler.py f87435f9ff [research/lotterysim] miscel changes 3 лет назад
auto_crawler_takahashi.py f87435f9ff [research/lotterysim] miscel changes 3 лет назад
avg_instance.py b6727d8c12 [research/lotterysim] staked_tokens/accuracy curve 3 лет назад
constants.py ca0545ec44 [research/lotterysim] staking strategies 3 лет назад
crawler.py 0b07b3dee6 [research/lotterysim] scaling to 1k,10k,100k,1m nodes with same accuracy 3 лет назад
darkie.py ca0545ec44 [research/lotterysim] staking strategies 3 лет назад
draw.py 0b07b3dee6 [research/lotterysim] scaling to 1k,10k,100k,1m nodes with same accuracy 3 лет назад
elbow.py 0b07b3dee6 [research/lotterysim] scaling to 1k,10k,100k,1m nodes with same accuracy 3 лет назад
f.hist ca0545ec44 [research/lotterysim] staking strategies 3 лет назад
f_history_processed.png f87435f9ff [research/lotterysim] miscel changes 3 лет назад
gains.txt 0b07b3dee6 [research/lotterysim] scaling to 1k,10k,100k,1m nodes with same accuracy 3 лет назад
heuristics.png 0b07b3dee6 [research/lotterysim] scaling to 1k,10k,100k,1m nodes with same accuracy 3 лет назад
highest_gain.txt b6727d8c12 [research/lotterysim] staked_tokens/accuracy curve 3 лет назад
highest_gain_takahashi.txt f87435f9ff [research/lotterysim] miscel changes 3 лет назад
instance.py ca0545ec44 [research/lotterysim] staking strategies 3 лет назад
lead_history_processed.png f87435f9ff [research/lotterysim] miscel changes 3 лет назад
leads.hist ca0545ec44 [research/lotterysim] staking strategies 3 лет назад
lottery.py b6727d8c12 [research/lotterysim] staked_tokens/accuracy curve 3 лет назад
lottery_dist.png 0b07b3dee6 [research/lotterysim] scaling to 1k,10k,100k,1m nodes with same accuracy 3 лет назад
main.py f87435f9ff [research/lotterysim] miscel changes 3 лет назад
one_year_reward.py 131bf0c901 [research/lotterysim] apy 3 лет назад
pallas_unittests.csv 0b07b3dee6 [research/lotterysim] scaling to 1k,10k,100k,1m nodes with same accuracy 3 лет назад
pid.py f87435f9ff [research/lotterysim] miscel changes 3 лет назад
playground.ipynb f87435f9ff [research/lotterysim] miscel changes 3 лет назад
plot_sim_vs_darkfi_distribution.py 0b07b3dee6 [research/lotterysim] scaling to 1k,10k,100k,1m nodes with same accuracy 3 лет назад
sigmas_test_samples.py 0b07b3dee6 [research/lotterysim] scaling to 1k,10k,100k,1m nodes with same accuracy 3 лет назад
stake.png b6727d8c12 [research/lotterysim] staked_tokens/accuracy curve 3 лет назад
stake_reward.py ca0545ec44 [research/lotterysim] staking strategies 3 лет назад
stake_rewards.txt 131bf0c901 [research/lotterysim] apy 3 лет назад
stats 0b07b3dee6 [research/lotterysim] scaling to 1k,10k,100k,1m nodes with same accuracy 3 лет назад
strategy.py ca0545ec44 [research/lotterysim] staking strategies 3 лет назад
takahashi.py 0b07b3dee6 [research/lotterysim] scaling to 1k,10k,100k,1m nodes with same accuracy 3 лет назад
takahashi_gains.txt 0b07b3dee6 [research/lotterysim] scaling to 1k,10k,100k,1m nodes with same accuracy 3 лет назад
takahashi_instance.py 0b07b3dee6 [research/lotterysim] scaling to 1k,10k,100k,1m nodes with same accuracy 3 лет назад
utils.py 131bf0c901 [research/lotterysim] apy 3 лет назад

README.md


title: darkfi lottery simulation author: ertosns

date: 11/1/2023

simulate darkfi consensus lottery with a discrete controller

discrete pid controller.

control lottery f tunning paramter

$$f[k] = f[k-1] + K_1e[k] + K_2e[k-1] + K_3e[k-2]$$

with $k_1 = k_p + K_i + K_d$, $k_2 = -K_p -2K_d$, $k_3 = K_d$, and e is the error function.

simulation criterion

find $K_p$, $k_i$, $K_d$ for highest accuracy running the simulation on N trials, of random number of nodes, starting with random airdrop (that all sum to total network stake), running for random runing time.

alt text

notice that best parameters are spread out in the search space, picking the highest of which, and running the simulation, running for 600 slots, result in with >36% accuracy

alt text

comparing range of target values between

notice below that both y,T in the pallas field, and simulation have same range.

alt text

conclusion

using discrete controller the lottery accuracy > 33% with randomized number of nodes, and randomized relative stake. can be coupled with khonsu^1 to achieve 100% accuracy and instant finality.