A self-learning genetic algorithm based on reinforcement learning for flexible job-shop scheduling problem. (November 2020)