예제 #1
0
        public void DoMove(TicTacToe game)
        {
            int val = 0;

            do
            {
                val = rng.Next(9);
            }while ((BoardSpaceState)(game.BoardState[val / 3, val % 3]) != BoardSpaceState.None);
            game.Place(val / 3, val % 3);
        }
예제 #2
0
        public void DoMove(TicTacToe game)
        {
            if (!PolicyDictionary.ContainsKey(game.BoardState))
            {
                int val = 0;
                do
                {
                    val = rng.Next(9);
                }while ((BoardSpaceState)(game.BoardState[val / 3, val % 3]) != BoardSpaceState.None);
                PolicyDictionary.Add((BoardSpaceState[, ])game.BoardState.Clone(), val);
            }

            game.Place(PolicyDictionary[game.BoardState] / 3, PolicyDictionary[game.BoardState] % 3);
        }