Optimization of NP-hard Scheduling Problems by