@@ -34,6 +34,8 @@ def include_representer(dumper, data):
3434 RobotRumbleGame ,
3535]
3636
37+ NUM_TOURNAMENTS = 10
38+
3739
3840def prompt_game_desc (arena , rounds ):
3941 return f"""You are a software developer ({{{{player_id}}}}) competing in a coding game called { arena .name } .
@@ -61,6 +63,13 @@ def main(models, rounds, simulations, output):
6163 for j in range (i + 1 , len (models )):
6264 pairs .append ((models [i ], models [j ]))
6365
66+ # Tracking csv
67+ tracking_csv = [
68+ "config,arena,player1,player2,rounds,sims_per_round,"
69+ + "," .join (f"t{ i } " for i in range (1 , NUM_TOURNAMENTS + 1 ))
70+ + "\n "
71+ ]
72+
6473 for arena in ARENAS :
6574 for pair in pairs :
6675 config = {
@@ -76,7 +85,7 @@ def main(models, rounds, simulations, output):
7685 {
7786 "agent" : "mini" ,
7887 "name" : get_name (p ),
79- "config" : {"agent" : IncludeTag ("mini/default .yaml" ), "model" : p },
88+ "config" : {"agent" : IncludeTag ("mini/semi_prescriptive .yaml" ), "model" : p },
8089 }
8190 for p in pair
8291 ],
@@ -86,6 +95,16 @@ def main(models, rounds, simulations, output):
8695 with open (f"{ output } /{ config_name } " , "w" ) as f :
8796 yaml .dump (config , f , default_style = None , sort_keys = False )
8897
98+ tracking_csv .append (
99+ f"{ config_name } ,{ arena .name } ,{ get_name (pair [0 ])} ,{ get_name (pair [1 ])} ,{ rounds } ,{ simulations } ,"
100+ + "," .join (["" ] * NUM_TOURNAMENTS )
101+ + "\n "
102+ )
103+
104+ with open (f"{ output } /tracking.csv" , "w" ) as f :
105+ f .writelines (tracking_csv )
106+ print (f"Wrote tracking file to '{ output } /tracking.csv'." )
107+
89108 print (f"Generated { len (pairs ) * len (ARENAS )} configuration files in '{ output } '." )
90109 print (f"- # Models: { len (models )} " )
91110 print (f"- # Arenas: { len (ARENAS )} " )
0 commit comments