## 2 Literature Review  
Researchers tackled the production scheduling problem as an optimization problem that can be solved either using exact or metaheuristic methods. Nevertheless, integrating both methods can be done to achieve better results. Example for exact method approach was used in [1; 2]. The authors used Mixed Integer Linear Programming (MILP) to tackle the production scheduling problem. Their results were compared to existing commercial solver algorithms and showed better results in solving large scale scheduling problems. The work in [3] tackled the inter-related problem of process configuration, lot-sizing, and scheduling problem of the packaging industry by developing an exact branch-and-check algorithm. Mixed Integer Programming (MIP)-based heuristic was used to strengthen the optimal solutions found by the branch-and-check algorithm to reduce setup times and cost. The authors in [4] developed an exact branch and bound algorithm and a heuristic tabu search algorithm to solve a special parallel machine scheduling problem. Tests and numerical experiments were conducted to test the performance of the solution methods. The results showed that the solution methods are efficient and effective in solving problems of different sizes. Further advanced approach based on Artificial Intelligence (AI) is proposed by authors of [5]; where they proposed a Reinforcement Learning (RL) approach for solving the dynamic flexible job-shop scheduling problem with the aim of minimizing the makespan. RL relies on the availability of historical data sets (previous executed schedules) to achieve acceptable results. RL was able to generate a production schedule with minimum makespan for a pharmaceutical factory case study. For the metaheuristic methods, the work in [6] developed a Two-phase Decoding Genetic Algorithm (TDGA) to maximize use in the TFT-LCD industry. The proposed algorithm was then compared to other metaheuristic methods as a measure of performance. Eight scenarios were tested, and the results showed the practical viability of the proposed TDGA algorithm. In [7], a fast Genetic Algorithm (GA) was developed to solve capacity planning and scheduling problems in the bio-pharmaceutical industry. The proposed algorithm was verified in two different case studies in terms of problem size. The algorithm was also compared to MILP in terms of speed of finding the global optimum. The results showed that the algorithm was able to achieve the global minimum 3.6 times faster than the MILP in case study 1, while in case study 2, which was on a longer time horizon, the GA achieved a near optimal solution as fast as the MILP. The authors in [8] designed a GA to minimize the total tardiness in a hybrid flow-shop scheduling problem. Unrelated machines and machine eligibility were the only practical assumptions considered. The proposed algorithm was compared to state of the art algorithms on 450 instances with different correlation patterns and sizes of operating processing time. The effectiveness of the proposed algorithm was validated by the results. GA is used extensively in scheduling problems optimization. For example, the authors in [9] used two adapted versions of GA and made an extensive study in solving the flexible scheduling problem and compared between them. Another metaheuristic framework for modeling of market demand in the semiconductor industry was developed in [10]. They assessed the performance of two metaheuristic methods; one is a GA and the other is a rule-based assignment procedure. A Discrete Event Simulation (DES) model is used to simulate one of the stages of the semiconductor manufacturing processes. The results showed that it was better to use the rule-based assignment method when stability is a concern, but if stability is not a major concern, then the GA would be better due to its superior optimization features. Researchers have also included hybrid models to solve the scheduling optimization problem.