def addRandomPlayer(self, avgNumIntervals,startingseed): self.randomseed = startingseed newplayer = Prefs.random(avgNumIntervals, self.randomseed) self.playerList.append(newplayer) self.totalPlayers += 1 self.randomseed += 1 return newplayer
def addPlayerRadomPrefs(self, avgNumIntervals): # create a player with id and random playerPref player = Player(self.totalPlayers, Prefs.random(avgNumIntervals)) # add it to the list self.playerList.append(player) # increase the counter self.totalPlayers += 1
total_envy = piecewiseAdd(total_envy, envy) avg_vals = [val / numRuns for val in total_vals] print "Envy: " + str(envy) print "Avg. vals: " + str(avg_vals) print "Total value: " + str(sum(avg_vals)) print numRuns = int(sys.argv[1]) randp = int(sys.argv[2]) print "Running %s times per strategy" % sys.argv[1] print "Random Preferences with %s avg intervals" % sys.argv[2] print rand_prefs = [] for i in range(numRuns): rand_prefs.append( (Prefs.random(randp), Prefs.random(randp), Prefs.random(randp))) print "Regular Stromquist:" runStrom(StromquistKnives, numRuns, rand_prefs) print "P1 Right" runStrom(StromquistP1Right, numRuns, rand_prefs) print "P1 Mid Right" runStrom(StromquistP1MidRight, numRuns, rand_prefs) print "All Right" runStrom(StromquistAllRight, numRuns, rand_prefs) print "All Mid Right" runStrom(StromquistAllMidRight, numRuns, rand_prefs)
pass def runOneTest(name,p1,p2,resolution=0.01): print("\n"+name) dc = DivideAndChoose(p1, p2, resolution) result = dc.run() print(" Answer is " + str(result)) pi1, pi2 = result print(" P1 got " + str(pi1) + " with value " + str(p1.valueOfPiece(pi1))) print(" P2 got " + str(pi2) + " with value " + str(p2.valueOfPiece(pi2))) runOneTest("Files ascending and descending",Prefs.fromFile("../../data/ascending"), Prefs.fromFile("../../data/descending")) for i in range(0,5): runOneTest("Random run " + str(i),Prefs.random(10), Prefs.random(10)) p1 = Prefs.random(100) p2 = Prefs.random(100) for r in range(0,5): resolution = 1.0/10**r runOneTest("Resolution " + str(resolution),p1,p2,resolution) if len(sys.argv) == 3: f1 = sys.argv[1] f2 = sys.argv[2] print("File for first person's prefs is " + str(f1)) print("File for second person's prefs is " + str(f2)) runOneTest("File run",Prefs.fromFile(f1),Prefs.fromFile(f2))
total_envy = piecewiseAdd(total_envy, envy) avg_vals = [val/numRuns for val in total_vals] print "Envy: " + str(envy) print "Avg. vals: " + str(avg_vals) print "Total value: " + str(sum(avg_vals)) print numRuns = int(sys.argv[1]) randp = int(sys.argv[2]) print "Running %s times per strategy" % sys.argv[1] print "Random Preferences with %s avg intervals" % sys.argv[2] print rand_prefs = [] for i in range(numRuns): rand_prefs.append((Prefs.random(randp), Prefs.random(randp), Prefs.random(randp))) print "Regular Stromquist:" runStrom(StromquistKnives, numRuns, rand_prefs) print "P1 Right" runStrom(StromquistP1Right, numRuns, rand_prefs) print "P1 Mid Right" runStrom(StromquistP1MidRight, numRuns, rand_prefs) print "All Right" runStrom(StromquistAllRight, numRuns, rand_prefs) print "All Mid Right" runStrom(StromquistAllMidRight, numRuns, rand_prefs)
def addRandomPlayer(self, avgNumIntervals): newplayer = Prefs.random(avgNumIntervals) self.playerList.append(newplayer) self.totalPlayers += 1 return newplayer