Evolutionary Monte Carlo (EMC) algorithm