Advertisement
Guest User

RankedAnalysis

a guest
Jul 13th, 2018
101
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MatLab 2.16 KB | None | 0 0
  1. clear all
  2.  
  3. avgamount=10;
  4.  
  5. maxplayerarrnorm=zeros(1,avgamount);
  6. maxplayerarrneg=maxplayerarrnorm;
  7.  
  8. matchlim=5;                                                                 %5 means 2.5 difference limit lower and upper                                                                
  9. playercount=100;
  10. totalmatches=1e4;
  11. matchupspread=10;                                                           %10 difference means 0 or 1 chance
  12. matchweight=.5;                                                             %.5 means reward between 0 and 1
  13.  
  14. for n=1:avgamount
  15.  
  16.     [playerarr,playerstrength,~]=createplayers(playercount);
  17.  
  18.     matchcount=1;
  19.     playerids=1;
  20.     while matchcount <= totalmatches  
  21.  
  22.         [i,j,players]=faceoffs(playercount,playerarr,matchcount,playerids);
  23.  
  24.         if (abs(players(1)-players(2))) <= matchlim/2
  25.  
  26.             [truewinchance, rewardwinchance]=winchancecomputation(matchupspread,playerstrength,i,j,players);                      
  27.  
  28.             rewards=createrewards(rewardwinchance,matchweight);              
  29.  
  30.             playerarr=rewarddist(playerarr,rewards,players,i,j,truewinchance,matchcount);
  31.  
  32.             matchcount=matchcount+1;
  33.         end
  34.         playerids=playerids+1;
  35.     end
  36.     maxplayerarrnorm(n)=max(max(playerarr));
  37. end
  38.  
  39. for m=1:avgamount
  40.    
  41.     [playerarr,playerstrength,~]=createplayers(playercount);
  42.     negplayerarr=createnegplayerarr(playercount);
  43.  
  44.     matchcount=1;
  45.     playerids=1;
  46.     while matchcount <= totalmatches  
  47.  
  48.         [i,j,players]=faceoffs(playercount,playerarr,matchcount,playerids);
  49.  
  50.         if (abs(players(1)-players(2))) <= matchlim/2
  51.  
  52.             [truewinchance, rewardwinchance]=negwinchancecomputation(matchupspread,playerstrength,i,j,players,negplayerarr);                      
  53.  
  54.             rewards=createrewards(rewardwinchance,matchweight);              
  55.  
  56.             [playerarr,negplayerarr]=negrewarddist(playerarr,rewards,players,i,j,truewinchance,matchcount,negplayerarr);
  57.  
  58.             matchcount=matchcount+1;
  59.         end
  60.         playerids=playerids+1;
  61.     end
  62.     maxplayerarrneg(n)=max(max(playerarr));
  63. end
  64.  
  65. disp([mean(maxplayerarrnorm) mean(maxplayerarrneg)])
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement