88LOG_STEPS = True
99
1010
11- def main () -> None :
12- rules : list [MinTurnRule ] = [MinTurnRule (0 , Random (), 1 ), MinTurnRule (
13- 10 , SubgameControlHeuristic (), 10 ), MinTurnRule (20 , LocalActivityHeuristic (), 10 )]
14- rules2 : list [MinTurnRule ] = [MinTurnRule (0 , Random (), 1 ), MinTurnRule (
15- 3 , SubgameControlHeuristic (), 5 ), MinTurnRule (10 , LocalActivityHeuristic (), 15 )]
16- white : Agent = Dynamic ('W' , rules )
17- black : Agent = Dynamic ('B' , rules2 )
18- board : Board = Board .initialize_board (5 , 6 )
19-
11+ def game (white : Agent , black : Agent , board : Board ) -> piece_type :
2012 print ("board initialized" )
2113 print (board .pretty ())
2214
@@ -36,15 +28,27 @@ def main() -> None:
3628 print (f"{ board .turn } turns taken" )
3729 print (f"{ current_color } won this game!" )
3830 print (
39- f"white: { white ._total_nodes } nodes visited, { white .total_time } spent" , file = sys .stderr ,
31+ f"white: { white .total_nodes } nodes visited, { white .total_time } spent" , file = sys .stderr ,
4032 flush = True )
4133 print (
42- f"black: { black ._total_nodes } nodes visited, { black .total_time } spent" , file = sys .stderr ,
34+ f"black: { black .total_nodes } nodes visited, { black .total_time } spent" , file = sys .stderr ,
4335 flush = True )
44- return
36+ return current_color
4537
4638 current_color = 'B' if current_color == 'W' else "W"
4739
4840
41+ def main () -> None :
42+ rules : list [MinTurnRule ] = [MinTurnRule (0 , Random (), 1 ), MinTurnRule (
43+ 10 , SubgameControlHeuristic (), 10 ), MinTurnRule (20 , LocalActivityHeuristic (), 10 )]
44+ rules2 : list [MinTurnRule ] = [MinTurnRule (0 , Random (), 1 ), MinTurnRule (
45+ 3 , SubgameControlHeuristic (), 5 ), MinTurnRule (10 , LocalActivityHeuristic (), 15 )]
46+ white : Agent = Dynamic ('W' , rules )
47+ black : Agent = Dynamic ('B' , rules2 )
48+ board : Board = Board .initialize_board (5 , 6 )
49+
50+ game (white , black , board )
51+
52+
4953if __name__ == "__main__" :
5054 main ()
0 commit comments