# A Scheduling Algorithm for Multi-Workshop Production Based on BOM and Process Route
## 1 Introduction
[10] summarized the constraints in its application, the coding and decoding strategies were reviewed, and the initialization strategy and local search operator were summarized. Then, a classic hybrid genetic algorithm and a new imperialist competition algorithm (ICA) with variable neighborhood search (VNS) were proposed. Some researchers investigated the batch processing, time allocation, cost control, and other issues in the complex scheduling problems. [PERSON] et al. [11] studied the combined scheduling problem by considering different regular objective functions, reduced the complexity of the problem by encoding batching decisions into edge weights, and realized the re-sequencing and reassigning of operations through applying a local search and simulated annealing meta-heuristic. To solve the problems of block reworking and constraints of transportation and stockyard, [PERSON], [PERSON], and [PERSON] [12] developed a new model called block two-stage and multi-workshop scheduling with transportation. To cope with the uncertain activity durations in resilient project schedules, [PERSON] and [PERSON] [13] introduced a new surrogate resilience measure and developed a new model based on a combination of time buffer and float allocation approaches. [PERSON] [14] discussed the sequence-dependent forward setup time (FST) and backward setup time (BST) consideration for the first time in two-sided assembly lines. [PERSON] and [PERSON] [15] proposed a multi-objective flexible job-shop scheduling model based on a device state-energy-consumption curve, which comprehensively considered energy consumption, makespan, processing cost, and cost-weighted processing quality. In the research of scheduling algorithms, heuristic methods have frequently been used. [PERSON] and [PERSON] [16] studied the scheduling problem of the cyclic robotic flow shop cell, proposed a meta-heuristic algorithm based on ant colony optimization, and the algorithm simultaneously determined the optimal degree and order of cyclic schedule. [PERSON] [17] studied the job scheduling problem in a distributed manufacturing environment and proposed a fast heuristic algorithm based on the construction procedure. [PERSON], [PERSON], and [PERSON] [18] studied a special case of two-machine flow shop scheduling problems with buffers and proposed two specific heuristics: a modification of the commonly used NEH heuristic and an iterated local search heuristic. Variable neighborhood search (VNS) was used to improve the efficiency and the quality of the final solution. [PERSON] [19]proposed a hybrid algorithm based on particle swarm optimization (PSO) and VNS for the solving flexible job-shop scheduling problem. To solve the m-machine blocking flow shop scheduling problem with total tardiness minimization, [PERSON] [20] proposed the evolutionary clustering search (ECS) algorithm combined with a VNS. [PERSON] et al. [21] proposed a comprehensive learning particle swarm optimization algorithm (CLPSO) embedded with local search (LS), which made use of the powerful global search ability of CLPSO and the fast convergence ability of LS to pursue higher optimization performance. [PERSON] et al. [22] proposed a surrogate-assisted PSO algorithm based on Pareto active learning and presented a hybrid mutation sampling method based on simulated evolution. This method combined the advantage of fast convergence of PSO and implemented mutation to increase diversity. Genetic algorithm and other evolutionary algorithms are also used in complex scheduling problems. [PERSON], [PERSON], and [PERSON] [23] proposed an improved genetic algorithm to solve the distributed job scheduling problem, which combined probability concepts with real parameter-encoding methods to form encoding operators to avoid generating infeasible solutions. [PERSON] et al. [24] designed a self-adaptive differential evolution (DE) algorithm to solve multi-objective flow shop scheduling problems with limited buffers, in which the makespan and the largest job delay were optimized simultaneously. [PERSON] et al.