def test_identify_territory(self): board = goboard.from_string( """ ...b..w.. ...b..w.. bbbb..w.. wwwww.www wwbbw..w. wb.bbwww. wbbbb.... ..b.b.... ..bbb.... """ ) territory = scoring.evaluate_territory(board) self.assertEqual(8, territory.num_black_territory) self.assertEqual(6, territory.num_white_territory) self.assertEqual(20, territory.num_black_stones) self.assertEqual(20, territory.num_white_stones) self.assertEqual(27, territory.num_dame) self.assertIn((0, 0), territory.dame_points) self.assertNotIn((8, 0), territory.dame_points)
def main(): parser = argparse.ArgumentParser() parser.add_argument('black_bot_name') parser.add_argument('white_bot_name') parser.add_argument('--komi', '-k', type=float, default=5.5) args = parser.parse_args() black_bot = load_keras_bot(args.black_bot_name) white_bot = load_keras_bot(args.white_bot_name) print("Simulating %s vs %s..." % (args.black_bot_name, args.white_bot_name)) board = goboard.GoBoard() simulate_game(board, black_bot=black_bot, white_bot=white_bot) print("Game over!") print(goboard.to_string(board)) # Does not remove dead stones. print("\nScore (Chinese rules):") status = scoring.evaluate_territory(board) black_area = status.num_black_territory + status.num_black_stones white_area = status.num_white_territory + status.num_white_stones white_score = white_area + args.komi print("Black %d" % black_area) print("White %d + %.1f = %.1f" % (white_area, args.komi, white_score))
def test_identify_territory(self): board = goboard.from_string(''' ...b..w.. ...b..w.. bbbb..w.. wwwww.www wwbbw..w. wb.bbwww. wbbbb.... ..b.b.... ..bbb.... ''') territory = scoring.evaluate_territory(board) self.assertEqual(8, territory.num_black_territory) self.assertEqual(6, territory.num_white_territory) self.assertEqual(20, territory.num_black_stones) self.assertEqual(20, territory.num_white_stones) self.assertEqual(27, territory.num_dame) self.assertIn((0, 0), territory.dame_points) self.assertNotIn((8, 0), territory.dame_points)