Exemplo n.º 1
0
 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
Exemplo n.º 2
0
 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
Exemplo n.º 3
0
        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)
Exemplo n.º 4
0
    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))
Exemplo n.º 5
0
    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