# A Review of the High-Mix, Low-Volume Manufacturing Industry
## 5 Models and Algorithms for HMLV Scheduling
### Production Scheduling  
Production scheduling determines the resource allocations and job sequences to produce goods and services, usually by determining the start and end of each job on each machine. It must define its priorities and organise activities to meet the requirements, constraints or objectives [61]. [PERSON], et al. [62] investigated the effect of product variety under a stochastic job arrival and resource available for a job-machine assignment problem. The effect of job mixes under batching was analysed by constructing knowledge rules for reactive assignment for Poisson job arrivals and homogenous serial batch machines. They derived a few knowledge rules of dominance relationships between job mixings that could be used for reactive assignments. Production levelling that is traditionally implemented in repetitive production environments with limited production diversity, was also adapted for HMLV production. [PERSON], et al. [63] used the principles and methods of group technology to achieve production levelling, according to a family-oriented pattern. Using unsupervised learning for different clustering algorithms, they quantified the product type similarity according to attributes specified by the grouping criteria. This resulted in different grouping results that were validated by the desirability index. The formed product families were then subjected to levelling patterns created by the specified EFEI-value (every part every interval) to achieve a minimal EFEI-value for cost-effectiveness. Industry-Specific Scheduling Problem  
In the electronic manufacturing industry's PCBA, [PERSON] and [PERSON] [64] formulated a binary linear programming model to optimise the best board assembly sequence on the PCB surface mount device machine (SMD) to arrive at the best setup strategy. Then a heuristic approach was proposed to improve the efficiency of finding the solution quickly. While [PERSON], et al. [65] work focused on group setup and minimum setup strategies. It evaluated the time of single component feeder changes that typically take 1-5 min, as well as a setup occasion where the component setup operations take 15-25 min. They formulated the hybrid machine setup problem, called job grouping with a minimal feedersetup (JGMFS) problem, as an integer programming model. Two hybrid algorithms were proposed, based on the efficient grouping and minimum setup heuristic. [PERSON], et al. [66] modelled the optimisation of the scheduling problem as an approximation of the traveling salesman problem. The scatter search model was used to develop an algorithm to determine the assembly sequence of different types of PCBs. The recent development considered the practical constraints of the surface mount device and the technology [67]. PCB characteristics and configuration in the surface mount technology production line were considered, such as product type, PCB board type, the number of points, dimensions, and SMD configurations. There, a hybrid symbiotic organism search (SOS) algorithm-based support vector regression (SVR) model was proposed to estimate the throughput in flexible, complex, and uncertain PCBA processes for production scheduling. In the semiconductor industry, wafer fabrication is carried out on multiple processing modules. The wafer has strict residency constraints where the wafer's surface would be detrimental if it were to stay at a processing module for too long after being processed. Taking this wafer residency time as a constraint, [PERSON], et al. [68] presented a Petri net model for the close-down process of a single-arm cluster tool. Since production in the semiconductor industry is automated, its research involves optimally scheduling the transient processing of single-arm multi-cluster tool robot [68; 69]. [PERSON], et al. [70] also specifically investigated finite capacity planning by proposing an algorithm to project production loss trajectories; this determined the expected load for all machines and balanced the workload against bottlenecks.