Example #1
0
        public MarkovState getResult(StochasticAction action)
        {
            double              value   = rand.NextDouble();
            double              current = 0.0;
            ActionResult        result  = null;
            int                 i       = 0;
            List <ActionResult> results = action.getPossibleResults();

            while (i < results.Count() && current < value)
            {
                result   = results[i];
                current += result.probability;
                i++;
            }

            return(result.state);
        }