stochastic methods