Esempio n. 1
0
        public static LabeledState <GameState, TicTacToeValue>[] LoadAllUniqueStates(Func <GameState, double[]> inputTransform)
        {
            var evaluator = new TicTacToeValueEvaluator(inputTransform);
            var generator = TicTacToeLabeledStateGenerator <TicTacToeValue> .Instance;

            return(generator.GetAllUniqueStates(evaluator).ToArray());
        }
Esempio n. 2
0
        public static LabeledState <GameState, TicTacToeValue>[] LoadAllUniqueStates(IStorage storage, Func <GameState, double[]> inputTransform)
        {
            if (AllUniqueStates == null)
            {
                string resourceName = "TicTacToe-LabeledState-AllUniqueStates.txt";

                try
                {
                    AllUniqueStates = storage.Read <LabeledState <GameState, TicTacToeValue>[]>(resourceName);
                }
                catch (Exception)
                {
                    var evaluator = new TicTacToeValueEvaluator(inputTransform);
                    var generator = TicTacToeLabeledStateGenerator <TicTacToeValue> .Instance;
                    AllUniqueStates = generator.GetAllUniqueStates(evaluator).ToArray();

                    try
                    {
                        storage.Write(resourceName, AllUniqueStates);
                    }
                    catch (Exception exception)
                    {
                    }
                }
            }

            return(AllUniqueStates);
        }