Computational methods for Markov decision processes