Autoprogressive algorithm and self-learning simulation