public MctsSimulator(int playerId, IScore scoring, MctsParameters mctsParameters)
            : base(mctsParameters)
        {
            _playerId = playerId;
            _scoring  = scoring;

            _deltaTime = (_mctsParameters.SimulationTime - 2 * _mctsParameters.AggregationTime);
        }
        public MctsSimulatorExt(int playerId, IScore scoring,
                                MctsParameters mctsParameters, PredictionParameters predictionParameters, BigramMap map)
            : base(playerId, scoring, mctsParameters)
        {
            _predictionParameters = predictionParameters;
            _map = map;

            _oppHistory    = null;
            _oppBoardCards = new BoardCards();

            // the delta time for each simulation is:
            // a) depth * 2, because we simulation for every depth the opponent and the player at once
            // b) + 1, because we always simulation the player first
            _deltaTime = (_mctsParameters.SimulationTime
                          - (_predictionParameters.SimulationDepth * 2 + 1) * _mctsParameters.AggregationTime)
                         / (_predictionParameters.SimulationDepth * 2 + 1);
        }
Beispiel #3
0
 /// <summary>
 /// Default constructor.
 /// </summary>
 /// <param name="mctsParameters">the parameters controlling the simulator</param>
 public AbstractMctsSimulator(MctsParameters mctsParameters)
 {
     _mctsParameters = mctsParameters;
 }