Exemplo n.º 1
0
        public void TestMCTS()
        {
            var empty = new[]
            {
                Played.Empty, Played.Empty, Played.Empty,
                Played.Empty, Played.Empty, Played.Empty,
                Played.Empty, Played.Empty, Played.Empty,
            };
            var board = new[]
            {
                empty, empty, empty,
                empty, empty, empty,
                empty, empty, empty,
            };
            var gameState = new GameState(null, Player.Self, board, null !, empty);

            MCTS.BestMove(gameState, 1000);
            Console.WriteLine("Finished");
            Console.WriteLine($"Heuristic Time {Monitoring.HeuristicTime}");
            Console.WriteLine($"Generation time {Monitoring.ChildrenGenerationTime}");
            Console.WriteLine($"Allocation time {Monitoring.AllocationTime}");
            Console.WriteLine($"Children {Monitoring.Children}");
            Console.WriteLine($"ComputeBoardResultTime {Monitoring.ComputeBoardResultTime}");
            Console.WriteLine($"RollOutTime {Monitoring.RollOutTime}");
            Console.WriteLine($"SetResult Time {Monitoring.SetResultTime}");
        }