## 3 Literature Survey and Critical Analysis
### Taxonomies and Literature Analysis
#### 3.2.2 Taxonomy 2: Constraints and Considerations  
We continued our examination of the literature by analyzing contributions through the lenses of the constraints and practical aspects considered in the underlying MOP, beyond the objectives themselves. The variability of constraints and aspects is high, so it is difficult to arrange them in a coherent fashion. Nevertheless, several patterns and trends [36; 37; 38; 39; 40; 41; 42; 43; 44; 45; 46; 47; 48; 49; 50; 51; 52; 53; 54; 55] were identified, which are shown in Figure 4 and discussed in the rest of this subsection. To begin with, most of the reviewed papers considered similar constraints that are posed to tell when a good solution as per the objectives defined for the JSP at hand is feasible. These constraints that are in common over most studied literature include:  
* A job can only be assigned to one machine;
* The number of jobs assigned to a machine cannot exceed the net production capacity of the machine;
* The processing time of a batch is equal to the longest time of the jobs on the machine;
* A job cannot start before the previous job is finished on the machine;
* No machine can do more than one job at a time;
* Each operator can only operate one machine at a time;
* Jobs are independent of each other. However, there are other constraints and considerations that pose a difference in the way in which the authors approached the problem. In this way, some works assumed overly idealistic production environments, inserting several constraints that can be considered far from being realistic. These are shown in Figure 4 include:  
* Machines are always available from the start: this first assumption does not hold in many practical circumstances, because not always are all machine available in real environments. This may occur for a manifold of reasons. For example, a machine can be broken, under maintenance, or can be blocked to produce only one type of unit. Surprisingly, all the reviewed papers assumed this start point;
* Once a job is started at a machine, the job cannot be stopped: this second assumption is not always possible either due to breakdowns, production priorities arising during the production cycle, and other assorted reasons. Therefore, in some cases (especially when there are many sub-processes flowing inside the same machine), the production of a unit has to be stopped and does not necessarily resume in the same unit. Possible issues derived from these circumstances during the manufacturing process were considered in [71];
* Each operation should begin immediately after the previous one has been completed: this third assumption is not always the best practice due to production bottlenecks: if a machine has a cycle time higher than other assets, it is a good practice to start the next/previous machine before the other ends. All the papers reviewed made this assumption;
* The production buffer between machines is unlimited: this assumption may hold sometimes, but it is not always true. Now that lean manufacturing is becoming a revolution in factories and that one of its pillars is based on producing only what is indispensable by reducing the length of the batches, assuming unlimited buffers will violate this principle [43];
* Transportation time within the plant and production chain is negligible: this is not always feasible, as the time needed to transport from one part to another one of the productive process can be even higher than that of the productive process itself. Lean manufacturing strives to reduce waste, so improving the product routing inside the factory is important. This constraint will be opposite the route and transport optimization, and its influence in the makespan is mostly considered as negligible. Nevertheless, some works have stepped aside this trend and considered this aspect in the problem formulation [55];  
Figure 4: Taxonomy of the relevant considerations found in the reviewed literature.