Просмотр исходного кода

[research/lotterysim/reports] added cascade control report WIP

police 3 лет назад
Родитель
Сommit
7b7da60926
100 измененных файлов с 12 добавлено и 23 удалено
  1. 8 7
      script/research/lotterysim/acc_vs_staked_ratio.py
  2. 1 1
      script/research/lotterysim/core/constants.py
  3. 0 1
      script/research/lotterysim/core/darkie.py
  4. 3 3
      script/research/lotterysim/discrete_instance.py
  5. BIN
      script/research/lotterysim/img/apr_distribution.png
  6. BIN
      script/research/lotterysim/img/stake.png
  7. 0 1
      script/research/lotterysim/log/darkie0.log
  8. 0 1
      script/research/lotterysim/log/darkie1.log
  9. 0 1
      script/research/lotterysim/log/darkie10.log
  10. 0 0
      script/research/lotterysim/log/darkie100.log
  11. 0 0
      script/research/lotterysim/log/darkie101.log
  12. 0 0
      script/research/lotterysim/log/darkie102.log
  13. 0 0
      script/research/lotterysim/log/darkie103.log
  14. 0 0
      script/research/lotterysim/log/darkie104.log
  15. 0 0
      script/research/lotterysim/log/darkie105.log
  16. 0 0
      script/research/lotterysim/log/darkie106.log
  17. 0 0
      script/research/lotterysim/log/darkie107.log
  18. 0 0
      script/research/lotterysim/log/darkie108.log
  19. 0 0
      script/research/lotterysim/log/darkie109.log
  20. 0 1
      script/research/lotterysim/log/darkie11.log
  21. 0 0
      script/research/lotterysim/log/darkie110.log
  22. 0 0
      script/research/lotterysim/log/darkie111.log
  23. 0 0
      script/research/lotterysim/log/darkie112.log
  24. 0 0
      script/research/lotterysim/log/darkie113.log
  25. 0 0
      script/research/lotterysim/log/darkie114.log
  26. 0 0
      script/research/lotterysim/log/darkie115.log
  27. 0 0
      script/research/lotterysim/log/darkie116.log
  28. 0 0
      script/research/lotterysim/log/darkie117.log
  29. 0 0
      script/research/lotterysim/log/darkie118.log
  30. 0 0
      script/research/lotterysim/log/darkie119.log
  31. 0 1
      script/research/lotterysim/log/darkie12.log
  32. 0 0
      script/research/lotterysim/log/darkie120.log
  33. 0 0
      script/research/lotterysim/log/darkie121.log
  34. 0 0
      script/research/lotterysim/log/darkie122.log
  35. 0 0
      script/research/lotterysim/log/darkie123.log
  36. 0 0
      script/research/lotterysim/log/darkie124.log
  37. 0 0
      script/research/lotterysim/log/darkie125.log
  38. 0 0
      script/research/lotterysim/log/darkie126.log
  39. 0 0
      script/research/lotterysim/log/darkie127.log
  40. 0 0
      script/research/lotterysim/log/darkie128.log
  41. 0 0
      script/research/lotterysim/log/darkie129.log
  42. 0 1
      script/research/lotterysim/log/darkie13.log
  43. 0 0
      script/research/lotterysim/log/darkie130.log
  44. 0 0
      script/research/lotterysim/log/darkie131.log
  45. 0 0
      script/research/lotterysim/log/darkie132.log
  46. 0 0
      script/research/lotterysim/log/darkie133.log
  47. 0 0
      script/research/lotterysim/log/darkie134.log
  48. 0 0
      script/research/lotterysim/log/darkie135.log
  49. 0 0
      script/research/lotterysim/log/darkie136.log
  50. 0 0
      script/research/lotterysim/log/darkie137.log
  51. 0 0
      script/research/lotterysim/log/darkie138.log
  52. 0 0
      script/research/lotterysim/log/darkie139.log
  53. 0 1
      script/research/lotterysim/log/darkie14.log
  54. 0 0
      script/research/lotterysim/log/darkie140.log
  55. 0 0
      script/research/lotterysim/log/darkie141.log
  56. 0 0
      script/research/lotterysim/log/darkie142.log
  57. 0 0
      script/research/lotterysim/log/darkie143.log
  58. 0 0
      script/research/lotterysim/log/darkie144.log
  59. 0 0
      script/research/lotterysim/log/darkie145.log
  60. 0 0
      script/research/lotterysim/log/darkie146.log
  61. 0 0
      script/research/lotterysim/log/darkie147.log
  62. 0 0
      script/research/lotterysim/log/darkie148.log
  63. 0 0
      script/research/lotterysim/log/darkie149.log
  64. 0 1
      script/research/lotterysim/log/darkie15.log
  65. 0 0
      script/research/lotterysim/log/darkie150.log
  66. 0 0
      script/research/lotterysim/log/darkie151.log
  67. 0 0
      script/research/lotterysim/log/darkie152.log
  68. 0 0
      script/research/lotterysim/log/darkie153.log
  69. 0 0
      script/research/lotterysim/log/darkie154.log
  70. 0 0
      script/research/lotterysim/log/darkie155.log
  71. 0 0
      script/research/lotterysim/log/darkie156.log
  72. 0 0
      script/research/lotterysim/log/darkie157.log
  73. 0 0
      script/research/lotterysim/log/darkie158.log
  74. 0 0
      script/research/lotterysim/log/darkie159.log
  75. 0 1
      script/research/lotterysim/log/darkie16.log
  76. 0 0
      script/research/lotterysim/log/darkie160.log
  77. 0 0
      script/research/lotterysim/log/darkie161.log
  78. 0 0
      script/research/lotterysim/log/darkie162.log
  79. 0 0
      script/research/lotterysim/log/darkie163.log
  80. 0 0
      script/research/lotterysim/log/darkie164.log
  81. 0 0
      script/research/lotterysim/log/darkie165.log
  82. 0 0
      script/research/lotterysim/log/darkie166.log
  83. 0 0
      script/research/lotterysim/log/darkie167.log
  84. 0 0
      script/research/lotterysim/log/darkie168.log
  85. 0 0
      script/research/lotterysim/log/darkie169.log
  86. 0 1
      script/research/lotterysim/log/darkie17.log
  87. 0 0
      script/research/lotterysim/log/darkie170.log
  88. 0 0
      script/research/lotterysim/log/darkie171.log
  89. 0 0
      script/research/lotterysim/log/darkie172.log
  90. 0 0
      script/research/lotterysim/log/darkie173.log
  91. 0 0
      script/research/lotterysim/log/darkie174.log
  92. 0 0
      script/research/lotterysim/log/darkie175.log
  93. 0 0
      script/research/lotterysim/log/darkie176.log
  94. 0 0
      script/research/lotterysim/log/darkie177.log
  95. 0 0
      script/research/lotterysim/log/darkie178.log
  96. 0 0
      script/research/lotterysim/log/darkie179.log
  97. 0 1
      script/research/lotterysim/log/darkie18.log
  98. 0 0
      script/research/lotterysim/log/darkie180.log
  99. 0 0
      script/research/lotterysim/log/darkie181.log
  100. 0 0
      script/research/lotterysim/log/darkie182.log

+ 8 - 7
script/research/lotterysim/acc_vs_staked_ratio.py

@@ -10,24 +10,25 @@ ERC20DRK=2.1*10**9
 NODES=100
 plot = []
 EXPS=10
-for portion in range(1,11):
+for nodes in numpy.linspace(1,NODES, 5):
     accs = []
     for _ in range(EXPS):
         darkies = []
         egalitarian = ERC20DRK/NODES
-        darkies += [ Darkie(random.gauss(egalitarian, egalitarian*0.1), commit=False, strategy=Hodler(EPOCH_LENGTH)) for id in range(int(NODES/portion)) ]
+        darkies += [ Darkie(random.gauss(egalitarian, egalitarian*0.1), strategy=random_strategy(EPOCH_LENGTH)) for id in range(int(nodes)) ]
         #darkies += [Darkie() for _ in range(NODES*2)]
         airdrop = ERC20DRK
+        dt = DarkfiTable(airdrop, RUNNING_TIME, CONTROLLER_TYPE_DISCRETE, kp=0.005999999999989028, ki=-0.005999999985257798, kd=0.01299999999999478, r_kp=0.47, r_ki=7.2, r_kd=21.33)
+        for darkie in darkies:
+            dt.add_darkie(darkie)
+        acc, apy, reward, staked_ratio, apr = dt.background(rand_running_time=False)
+        accs += [acc]
         effective_airdrop  = 0
         for darkie in darkies:
             effective_airdrop+=darkie.stake
+        effective_airdrop*=float(staked_ratio)
         stake_portion = effective_airdrop/airdrop*100
         print("network airdrop: {}, staked token: {}/{}% on {} nodes".format(airdrop, effective_airdrop, stake_portion, len(darkies)))
-        dt = DarkfiTable(airdrop, RUNNING_TIME, CONTROLLER_TYPE_DISCRETE, kp=0.005999999999989028, ki=-0.005999999985257798, kd=0.01299999999999478, r_kp=0.051, r_ki=-0.3229, r_kd=-0.008)
-        for darkie in darkies:
-            dt.add_darkie(darkie)
-        acc, apy, reward, staked_ratio, apr = dt.background(rand_running_time=False)
-        accs += [acc]
     avg_acc = sum(accs)/EXPS*100
     plot+=[(stake_portion, avg_acc)]
 

+ 1 - 1
script/research/lotterysim/core/constants.py

@@ -19,7 +19,7 @@ ONE_YEAR = Num(365.25*24*60*60/SLOT)
 
 TARGET_APR = Num(0.12)
 
-PRIMARY_REWARD_TARGET = 0.8 # staked ratio
+PRIMARY_REWARD_TARGET = 0.5 # staked ratio
 SECONDARY_LEAD_TARGET = 1 #number of lead per slot
 
 EPSILON = 1

+ 0 - 1
script/research/lotterysim/core/darkie.py

@@ -11,7 +11,6 @@ class Darkie():
         self.f = None
         self.epoch_len=epoch_len # epoch length during which the stake is static
         self.strategy = strategy
-        print('strategy type: {}'.format(strategy.type))
         self.slot = 0
         self.won_hist = [] # winning history boolean
 

+ 3 - 3
script/research/lotterysim/discrete_instance.py

@@ -9,7 +9,7 @@ import math
 os.system("rm log/*_feedback.hist; rm log/*_output.hist")
 
 RUNNING_TIME = int(input("running time:"))
-NODES=100
+NODES=1000
 
 if __name__ == "__main__":
     egalitarian = ERC20DRK/NODES
@@ -25,7 +25,7 @@ if __name__ == "__main__":
     for darkie in darkies:
         effective_airdrop+=darkie.stake
     print("network airdrop: {}, staked token: {}/{}% on {} nodes".format(airdrop, effective_airdrop, effective_airdrop/airdrop*100, len(darkies)))
-    dt = DarkfiTable(airdrop, RUNNING_TIME, CONTROLLER_TYPE_DISCRETE, kp=-0.010399999999938556, ki=-0.0365999996461878, kd=0.03840000000000491,  r_kp=0.13, r_ki=-0.5, r_kd=-0.5)
+    dt = DarkfiTable(airdrop, RUNNING_TIME, CONTROLLER_TYPE_DISCRETE, kp=-0.010399999999938556, ki=-0.0365999996461878, kd=0.03840000000000491,  r_kp=0.41, r_ki=5.65, r_kd=89.23)
     for darkie in darkies:
         dt.add_darkie(darkie)
     acc, avg_apy, avg_reward, stake_ratio, avg_apr = dt.background(rand_running_time=False)
@@ -47,8 +47,8 @@ if __name__ == "__main__":
     shifted_aprs = [apr - mu for apr in aprs]
     plt.plot([apr*100 for apr in aprs])
     plt.title('annual percentage return, avg: {:}'.format(mu*100))
+    plt.savefig('img/apr_distribution.png')
     plt.show()
 
     variance = sum(shifted_aprs)/(len(aprs)-1)
-    sigma = math.sqrt(float(variance))
     print('mu: {}, variance: {}'.format(str(mu), str(variance)))

BIN
script/research/lotterysim/img/apr_distribution.png


BIN
script/research/lotterysim/img/stake.png


Разница между файлами не показана из-за своего большого размера
+ 0 - 1
script/research/lotterysim/log/darkie0.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 1
script/research/lotterysim/log/darkie1.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 1
script/research/lotterysim/log/darkie10.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie100.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie101.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie102.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie103.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie104.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie105.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie106.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie107.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie108.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie109.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 1
script/research/lotterysim/log/darkie11.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie110.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie111.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie112.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie113.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie114.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie115.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie116.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie117.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie118.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie119.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 1
script/research/lotterysim/log/darkie12.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie120.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie121.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie122.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie123.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie124.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie125.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie126.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie127.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie128.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie129.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 1
script/research/lotterysim/log/darkie13.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie130.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie131.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie132.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie133.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie134.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie135.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie136.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie137.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie138.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie139.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 1
script/research/lotterysim/log/darkie14.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie140.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie141.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie142.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie143.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie144.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie145.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie146.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie147.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie148.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie149.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 1
script/research/lotterysim/log/darkie15.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie150.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie151.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie152.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie153.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie154.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie155.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie156.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie157.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie158.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie159.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 1
script/research/lotterysim/log/darkie16.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie160.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie161.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie162.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie163.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie164.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie165.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie166.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie167.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie168.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie169.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 1
script/research/lotterysim/log/darkie17.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie170.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie171.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie172.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie173.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie174.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie175.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie176.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie177.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie178.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie179.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 1
script/research/lotterysim/log/darkie18.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie180.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie181.log


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
script/research/lotterysim/log/darkie182.log


Некоторые файлы не были показаны из-за большого количества измененных файлов