Exact and heuristic procedures for the Heijunka-flow shop scheduling problem with minimum makespan and job replicas

In this paper, a new problem of job sequences in a workshop is presented, taking into account non-unit demands for the jobs and whose objective is to minimize the total completion time for all the jobs (Cmax\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$${C}_{max}$$\end{document}) satisfying a set of restrictions imposed on the problem to preserve the production mix. Two procedures are proposed to solve the new problem: Mixed Integer Linear Programming and a Metaheuristic based on Multistart and Local Search. The two proposed procedures are tested using instance set Nissan-9Eng.I, in both cases giving rise to highly satisfactory performance both in quality of solutions obtained and in the CPU times required. Through a case study of the Nissan engine manufacturing plant in Barcelona, our economic-productive analysis reveals that it is possible to save an average of € 1162.83 per day, manufacturing 270 engines, when we transform the current assembly line into a Heijunka-Flow Shop.


Preliminaries
The Flow Shop Scheduling Problem (FSP) is a sequencing problem that has received considerable attention from professionals and researchers in recent decades due in part to the wide range of production environments it can model [19].
A recent version of FSP is the Fm/ / /d i family of sequencing problems [3] and 2020), which is to establish an application between the elements of a set T of ordinals (T elements) corresponding to the positions in the production sequence: T) = ( 1 , ., T , and the elements of a set J of jobs or products (D elements, with D = T).
The jobs or products in group J are classified into exclusive types or classes, J i , satisfying the following properties: J = ⋃ i∈I J i and J i ∩ J i � = �, ∀ i, i � ∈ I, where I is the set of job types (i = 1, .., n).
In Fm/ / /d i problems, the parameter can take the permutation (prmu) or blocking (block) values, while the parameter corresponds the efficiency metrics to optimize (C max , C med , etc.), vector ⃗ d = d 1 , d 2, .., d n represents the demand plan for the considered job types, and d i symbolizes the number of jobs of type i ∈ I within J , that is to say d i = | | J i | | ∀i ∈ I , satisfying: The units of J travel in order through a set K of m stations on an assembly line arranged in series, and the production of a job of type i ∈ I requires a heterogeneous processing time p i,k in workstation k ∈ K (k = 1, .., m).
The purpose of problems Fm/ / /d i is to obtain a sequence of replicated jobs or products (d i ), in a line with m machines, with the possibility of wblocking or not, according to the parameter, and with the objective of optimizing the efficiency metric represented by the parameter (C max , C med , etc.). Therefore, using the notation proposed by Graham et al. [11], both the Fm/prmu/ problems [1,10,13,20,22,23] as the Fm/block/ problems [4,8,16,18,21] are particular cases of the family Fm/ / /d i , when d i = 1 for all i ∈ I.
On the other hand, completing all jobs in the shortest time possible min C max ) is not the only desirable objective when establishing a product manufacturing sequence. In production environments that are governed by the Just-in-Time manufacturing ideals [17], the production sequences must have properties that are linked to the Heijunka concept 1 3 [9,12,14], whose meaning is to achieve regularity of production.
El The Heijunka (regularity) concept can be applied to any constituent element of Just in Time production, the most obvious criteria being the following: C1. Regularize the consumption of the parts. The purpose of this criterion is to control the stock levels of the component parts of mixed products (e.g., in the manufacture of engines: block, cylinder head, cylinders and pistons, camshaft, gear change, etc.) throughout the manufacturing process on the assembly line. C2. Regularize workloads at line stations. The purpose of this criterion is to avoid or smooth the work overloads that are generated when a manufacturing sequence consecutively contains a series of products rich in process time. This criterion is purely ergonomic and its objective is to avoid or reduce the risk of injury to line operators due to intermittent overloads. C3. Regularize the manufacture of mixed products throughout the manufacturing sequence. This criterion tries to collect, in a simple way and to facilitate management, the benefits of criteria C1 and C2, since it encourages, without optimizing, both the regularity of the consumption of the component parts and the regularity of the workloads in the production line.
On the other hand, the incorporation of Heijunka in production sequence problems can be characterized by three methods: M1. Constraints: For example, imposing minimum and maximum manufacturing levels on the job types (i = 1, ..., n) in each manufacturing cycle (t = 1, … , T) and/or imposing minimum and maximum consumption values on the component parts of mixed products in each manufacturing cycle. M2. Objective function: Maximizing the constancy of the product manufacturing rates [15] and/or the component consumption rates [5] and/or the rates of the required processing times in the workstations. M3. Mixed characterization: There is also the possibility of establishing a mixed characterization of Heijunka, which incorporates into the sequence models the two previous methods: (a) restrictions and (b) an objective function.
In this work, the third criterion (C3) and the first method (M1) have been added to the genuine Fm/prmu/C max /d i problem to achieve sequences with minimum makespan ( C max : time that elapses from the start of work to the end) and with some properties that propitiate the regularity of product manufacturing through restrictions.
The main contributions of this work are: (i) description and formulation of a new problem that we call Hejunka − Fm/prmu/C max /d i ; (ii) design and implementation of a Metaheuristic based on Multistart and Local Search (MS-Q) to solve the new problem; (iii) a computational analysis of MS-Q and MILP (CPLEX solver) performance in CPU time and quality of solutions using real-dimension instances related to case study; and (iv) an economic-productive feasibility study to implement the solutions on a production line.
The remaining text has the following structure. Section 2 is dedicated to presenting the new problem under study which is illustrated with an example in Sect. 3. In Sect. 4, the designed MS-Q procedure is described. In Sect. 5, a case study with its data is shown, as well as the procedures used and their results. Finally, Sect. 6 offers some conclusions about this work.

Heijunka − Fm/prmu/C max /d i Problem
To incorporate Heijunka, we will indicate that the sequence (T) = 1 , … , T , which is composed of T units of jobs, has the property of preservation of the production mix if the set of restrictions (1) is satisfied. We also call this property Quota property: where: • I ∶ set of product types, i = 1, .., |I|. • T : set of manufacturing cycles in every demand plan, t = 1, .., |T| ; T ≡ |T|. • d i ∶ demand for units of type i ∈ I in an arbitrary demand plan. • i ∶ proportion of units of type i ∈ I : i = d i ∕T ∀i ∈ I. • X i, t ∶ number of units of type i ∈ I in the partial sequence (t) ⊆ (T) : actual production associated with the partial sequence (t).
The Quota property (1) imposes that the actual production X i, t , for every product ( i ∈ I and every manufacturing cycle t ∈ T , must be an integer as close as possible to its ideal production i t . The ideal production ( i t ) is defined as the quota of manufacturing time given to a product ( i ∈ I ) until the end of each production cycle ( t = 1, .., |T|).
Under such conditions, we can present a model for the Fm /prmu/C max /d i that accounts for two types of aspects: Efficiency: objective function to minimize the maskespan C max . (1) Technical-productive: Quota property to enforce preservation of the production mix in the Heijunka manufacturing sequence (T).
Effectively, assuming the following data is known: • The set of job types (I ∶ i = 1, .., |I|) and the set of stations (K ∶ k = 1, .., |K|). • The processing times p i,k (i ∈ I⋏k ∈ K) of the operations.
The problem is finding a Quota sequence of T jobs (T) = 1 , … , T with minimum makespan C max that satisfies the demand plan represented by the vector ⃗ d . The formulation of the model is as follows.

Model Q-FSP
In the model Q-FSP, the identity (2) expresses the minimization of the objective function F( (T)) that attends to the time of completion of the last job or product T of the production sequence (T) in the last machine (k = m) ; that is: C max ≡ C m,T . The equality (3) determines the minimum time of completion of the t-th job t in production sequence (T) in machine k ∈ K ∶ C k,t t . Meanwhile, the equality (4) determines the minimum start time S k,t of the t-th job t in (T) in machine k ∈ K. Formula (5) serves to count the number of jobs of type i ∈ I in the partial sequence (t) ⊆ (T) . The conditions (6) impose the Quota property on the manufacturing sequence (T) . The equalities (7) impose the satisfaction of the demand plan (d i ∀i ∈ I) . Finally, conditions (8) and (9) set the start of completion times.

An illustrative example
In order to illustrate the problem under study, the following example is presented: There are 6 jobs or products ( T = 6 ), of which 3 are type A, 1 is type B, and 2 are type C. The units of product are processed in 3 workstations ( |K| = 3 ) with different processing times. The processing time of each unit of type of product (A, B, C) in each workstation m 1 , m 2 , m 3 is that set out in Table 1.
The optimal manufacturing sequence for the proposed example, in order to minimize the completion time of all the jobs on the production line C max , for the problem Fm Figure 1 shows the Gantt chart for this sequence.
For its part, Fig. 2 shows the Gantt chart corresponding to an optimal sequence for the problem Hejunka − Fm/prmu /C max /d i , in which the satisfaction of the Quota property of all types of product is imposed in all manufacturing cycles. The sequence 2 (6) = (C, A, A, C, A, B) has a value of the objective function C max 2 = 34.
Considering the sequences 1 (6) y 2 (6) , it can be stated: (i) The solution 1 (6) presents a value of C max less by one unit of time than that corresponding to the solution 2 (6) (i.e. ∶ C max 2 − C max 1 = 34 − 33 = 1) . This means that 1 (6) is more efficient than 2 (6) in terms of completion time for all jobs.  Table 2.
In view of Table 2, we can state that the sequence 1 (6) = (C, C, A, A, A, B) does not satisfy the Quota property for product types A and C in the cycle t = 2 nor for product type C in cycle t = 3, therefore, the sequence 1 (6) violates the Quota property in 8.33% of the constraints.
In the subsection dedicated to the implementation of solutions in a production line, the advantages offered by planning sequences satisfying the Quota property within the Heijunka ideology are described. Table 1 Processing times ( p i,k ) required by the units of product, according to type, in each workstation The total processing time required to the production line isp tot = 77   The values a = i t and b = i t are respectively lower and upper limits that are imposed on the variables X i, t (∀i∀t) to achieve a Quota sequence The proposed metaheuristic is based on a Multistart procedure with Local Search similar to Bautista and Alfaro [2]. Indeed, the proposed procedure, MS-Q, consists of a first phase (constructive phase) which provides an initial solution through a randomized greedy procedure, and a second phase (improvement phase) which uses local search procedures to reach the local optima in one or more specific neighborhoods.
After setting a prefixed number of iterations (construction plus improvement), MS-Q metaheuristic obtains in phase-1 manufacturing sequences, (T) = ( 1 , … , T ) , that satisfy the Quota property, and then, in phase-2, those sequences are subjected to local optimization in order to minimize the completion time of the last job in the last workstation, that is: C max .

Phase 1: construction of a Quota sequence
The problem of the construction of a Quota sequence, which we will call Quota-Product Rate Variation Problem (Q-PRV), can be formulated as a Binary Linear Programming (BLP) representing maximum constraints satisfaction problem, as follows. (10) min Z sum ( (T)) =
In the Maxsat Q-PRV model, the objective function (10) corresponds to the minimization of the number of Quota constraints violated (Z sum ) . Equalities (11) impose that each position in the sequence has a job assigned, while equalities (12) force compliance with the demand plan ⃗ d = d 1 , … , d n . The equalities (13) are used to determine the accumulated productions X i, t ( ∀i∀t) of all types of jobs and up to each manufacturing cycle. The inequalities (14) force the satisfaction of the Quota property by all types of jobs ( ∀i ∈ I ) in all positions of the sequence ( ∀t ∈ T) . Finally, conditions (15) and (16) impose that the variables x i, t and z i, t are binary, while conditions (17) force the accumulated production ( X i, t ) are integers and not negative.
To generate Quota sequences in accordance with the Maxsat Q-PRV model, an enumerative deterministic procedure can be designed based on the branching and cutting of partial solutions; however, in this work we have chosen to use random to promote the diversity of the initial solutions generated in Phase 1, thus allowing them to belong to different regions of the feasible solutions space.
Another indirect way of constructing sequences that satisfy all or a large part of the Quota constraints (14) is to determine integer values for the real production variables X i, t as close as possible to their ideal values i t and that, in addition, these values are consistent with the rest of the restrictions of the Maxsat Q-PRV model. To do this, it is enough to change the objective function (10) for a function that measures the discrepancies between the real and ideal accumulated productions. Some examples of discrepancy functions that we refer to are the following: In this work, the function (18), sum of quadratic discrepancies:Δ 1 ( (T)) , is fundamental to construct a random generator of Quota sequences.
First, in Phase 1 a sequence of jobs (T) = 1 , … , T is constructed satisfying the Upper Quota property ( (i.e. X i, t ≤ i t, ∀i∀t) ), progressively and assigning at each stage t (t = 1, … , T) a job from the CL(t) list of candidates that can be drawn to occupy the position t of the manufacturing sequence. Consequently, when stage t is reached, it is added to the sequence consolidated in the previous stage, where n i is the number of jobs of type i ∈ I that contains the production sequence t − 1) = ( 1 , ., t−1 . Therefore, for a job type i ∈ I to enter the list CL(t) of stage t , it must meet the following two conditions: 1. The job type does not have its demand fulfilled: The difference between the upper Quota value i t , corresponding to the ideal production of stage t , and the consolidate production up to the previous stage must be greater than or equal to one unit: i t − n i ≥ 1.
Note that the candidate list, CL(t) , only contains jobs or products that satisfy the upper Quota property; this is done like this because if the strict satisfaction of the Quota property is imposed: , then there is a risk, and this is often the case, that CL(t) remains empty.
Second, the sum of quadratic discrepancies associated with each candidate job that is contained in the list CL(t) is evaluated, using the indices g (t) i : where n k is the number of jobs of type k ∈ I that contains the sequence consolidated in the previous stage, (t − 1) , and i,k is the Kronecker delta: Third, the jobs in the list CL(t) are ordered according to the increasing order of the priority indices g (t) i , giving rise to the ordered list CL(t).
Alternatively, the sorting of the list CL(t) to construct the list CL(t) can be made more efficient by using the priority indices f (t) i which are defined as in (24).
The equivalence between the orderings of the jobs according to the indices g (t) i and −f (t) i is demonstrated below.
Theorem 1 Given a par tial sequence of jobs t − 1) = ( 1 , ., t−1 and a list of jobs CL(t) constructed according to (22), then, the ordering of jobs of CL(t) according to the indices g (t) i (see (23)) is opposite to the ordering according to the indices f (t) i (see (24)).
Proof Indeed, let H k,t = n k − k t (∀k ∈ I, ∀t ∈ T) , then, it can be stated: After this ordering, the list CL(t) is reduced through a mechanism that is a function of the admission factor (percentage of candidate jobs), with this operation, the restricted list RCL(t, ) is obtained, which coincides with CL(t) when = 100% = 1 , while if = 1∕|I| , the best candidate job from such lists is selected at each stage t.
Taking into account all the above, Algorithm A1 is formalized. The MAXSAT procedure in A2 (Line 19 from A2) is an exchange algorithm, based on Local Search with exhaustive descent, that solves the Maxsat Q-PRV problem satisfying the constraints (14): , which provides as a solution a sequence ̂(T) that does satisfy the Quota property in all of the manufacturing cycles.
Specifically, MAXSAT algorithm starts from the solution (T) generated by Algorithm A1 and performs in each iteration the exchange of the jobs of every pair of positions of the current sequence ̂(T) , consolidating, in each iteration, the Last sequence that minimizes the number of Quota constraints violated. The execution of the MAXSAT algorithm ends when Z sum (̂(T)) = 0 or Z ' sum (̂(T)) = |I| × T (see formula (10)).
Obviously, the CPU time efficiency of the MAXSAT procedure is higher the lower the number of Quota constraints violated by the initial sequence (T) ; for this reason, the sequences provided by the A1 algorithm are used, since they comply with the Upper Quota property and tend to comply with the Lower Quota property when the values of the admission factor are small.

Phase 2: improvement C max of the quota sequences through local search
The improvement phase starts with a Quota sequence ̂(T) in which five descent algorithms are run consecutively and repetitively in five neighborhoods (three exchange and two insertion) until none of them improves the best solution that is achieved during the iteration. From two arbitrary Quota sequences, the one that offers the least total completion time C max is selected. The descent algorithms are based on the exchange and insertion of jobs, and they are oriented to the exploration of sequence cycles in both increasing and decreasing order. The five descent algorithms are: LS1. Forward exchange for ranges of job types: For all t position of the current sequence, ̂(T) ., the job type is determined that is in that position and the next closest locus is searched, t ′ > t , that is occupied by the same type (i.e., ̂t =̂t� ); if no such locus exists, then its value is set by making t � = T + 1 . Just after, the tentative exchange between ̂t and the jobs located in the range t + 1, t � − 1 of the sequence is made. The first exchange that reduces the total completion time C max ≡ C m,T (see (2)) is consolidated as long as the resulting sequence satisfies the Quota property. LS2. Backward exchange for ranges of job types: This procedure is similar to the previous one, but in this case the search is performed for t = T to 1 step -1. Obviously, if the previous closest locus, t � (t � < t) , with the same job type ̂t =̂t� does not exist, it is considered t � = 0 .
While there is improvement, the above five algorithms are repeated.

Data set
The computational experience proposed here is focused on comparing the MS-Q and MILP (Mixed Integer Linear Programming) procedures in terms of the quality of the solutions and the CPU times. As in Bautista-Valhondo and Alfaro-Pozo [7], the analysis is related to a case study of the Nissan plant in Barcelona: an assembly line of nine types of engines grouped into three families: SUVs, Vans and Trucks (see an engine example in Fig. 3). The production line under study employs 42 operators work in shifts of 8 h, and the significant data of this case are the following: • There are 9 job types (|I| = 9 ) so that each job type corresponds to a type of engine. • The workshop (line) has 21 workstations ( |K| = 21 ) arranged in series. • In this work, we consider 23 engine demand plans |E| = 23 (see Table 3). • The daily demand is 270 jobs for all demand plans T ≡ D = 270 jobs (∀ ∈ E). • The demand plans have been grouped into 7 categories (see Table 4). • The values of the processing times at normal work pace p i,k (∀i ∈ I, ∀k ∈ K) are between 89s and 185s (see Table 5).  1  104  100  97  92  100  94  103  109  101  100.0  2  103  103  105  107  101  108  106  102  110  105.0  3  165  156  164  161  148  156  154  164  155  158.1  4  166  175  172  167  168  167  168  156  173  168.0  5  111  114  114  115  117  117  115  111  111  All the production plans shown in Table 1 have been used to carry out the computational experimentation developed in this work. As said, the total number of engines assembled in a working day is 270 in two shifts. The 7 categories that allow the grouping of demand plans are summarized in Table 4.
Meanwhile, the values of the processing times p i,k (∀i ∈ I, ∀k ∈ K) for each job type and for each workstation are shown in Table 5.

Procedures and computational analysis
The compiled codes of the procedures that we have selected in this work are MILP (1 and 2) and MS-Q (running in Intel(R) Core (TM) i7-8750H CPU @ 2.21 GHz, 16 GB RAM, × 64 Windows 10 Pro). Table 6 shows the best results with respect to C max and CPU Time from MILP (1 and 2) and MS-Q procedures for the 23 datasets of the problem ∈ E .
In "Appendix I", the 46 best Quota-sequences obtained by MILP-2 and MS-Q are published.
In Table 6, the column headings represent the following characteristics: ∈ E Identification number of the instances for Plan#1 to Plan#23 The relative gap values (measured in millionths) between C k max and LB is calculated using formula (25).  On the other hand, an analysis of Table 6 reveals the following: • Procedure MILP-1 obtains and ensures optimal solutions in all instances with 270 jobs (23 instances Nissan-9Eng.I) when the Fm/prmu/C max /d i problem is solved (see column C 1 max in Table 6). The solutions obtained by MILP-1 do not necessarily satisfy the Quota property:  Table 6). All the solutions obtained by MILP-2 satisfy the Quota property. • Procedure MS-Q obtains optimal solutions in 13 of the 23 instances with 270 jobs when the Heijunka − Fm /prmu/C max /d i problem is solved (see column C 3 max in Table 6). All the solutions obtained by MS-Q satisfy the Quota property. • Regarding the value of objective C max , on average, MS-Q solutions differ by 0.7 s from MILP-2, in a range of values between 0 and 5 s (see columns C 2 max and C 3 max in Table 6), when considering a 50,770 s workday to build 270 engines. Consequently, MS-Q solutions can be considered equivalent to MILP-2 from the perspective of the management of productive operations. • The average value of the relative gap between C 2 max and LB achieved by MILP-2 is 1.13E-05 in a range of values between 0 and 1.99E-04.
• The average value of the relative gap between C 3 max and LB achieved by MS-Q is 2.60E-05 in a range of values between 0 and 1.99E-04. •    For its part, Table 7 shows some properties on the performance of the MS-Q procedure, both in its construction phase and in its improvement phase, when the set of Nissan-9Eng.I instances is solved.
In Table 7, the column headings represent the following characteristics:

Economic-productive feasibility study
In this subsection, we carry out an analysis of the results considering two aspects: economic and productive. The first aspect aims to evaluate the economic savings in euros that result from transforming the original assembly line with a cycle time c = 175 s into a regular flow workshop in the context of the Fm/prmu/C max /d i problem.
The second aspect of the productive type is intended to measure the drop in engine production generated by the use of Heijunka concept, used in Just in Time production systems, when imposed on manufacturing sequences that satisfy the Quota property; in this case, we will use the Heijunka − Fm/prmu/C max /d i model.
To carry out this analysis, the following hypotheses are taken into account: h1. The current engine assembly line is made up of 21 workstations arranged in series. At each workstation, a team consisting of two operators operates (42 operators in total). h2. The current assembly line has a daily production capacity equal to 270 engines. Each production day is divided into two work shifts and each work shift has a productive time equal to 7.05 h, after subtracting the scheduled rest times during the work day, the full duration of which is equal to 8 h per shift. h3. The cost of loss engine production [6] has been valued at = 2.28757 euros per productive second. The cost is calculated taking into account three factors: (i) the average value of a motor that is equal to € 4,000, (ii) the value added to the product by the assembly line that is equal to 10% of the value of the motor, and (iii) the cycle time of the line that is equal to 175 s, that is, c = 175 s and the temporary window is l k = 175 s. h4. Assuming a cycle time c = 175 s and that the assembly line is made up of 21 stations arranged in series, the manufacture of the 270 engines requires a time equal to C 0 max = 50770 seconds to complete the 270 jobs when there is no work in progress on the line (no-WIP). Therefore, the direct benefit provided by the line is equivalent to € 108,000 per day.
Under these conditions, the daily savings in euros G(⋅) and the daily increases in the production of ΔP(⋅) motors, achieved with the transformation of the current assembly line into a regular flow workshop, are shown in Table 8.
The analysis of Table 8 ∀h ∈ {1, 2, 3}, ∀ ∈ E € 1162.83 per day (see average maximum between the columns G(2, ) and G (3, ) in Table 8) when 270 engines are manufactured per day. In this case, said savings are included in the interval [331.43, 1568.00] and their values depend on the demand plan used. • In the case of the Heijunka-flow shop, the estimate of the daily increase in engine production with respect to the current line is equal to 2.91 engines on average (see average maximum between columns ΔP(2, ) and ΔP (3, ) in Table 8), provided that the original production mix does not vary in the demand plans. Here, these increases (engines per day) are included in the interval [0.83, 3.92] (see Fig. 4). Figure 4 reveals similar performance between the two types of flow shops analyzed, with respect to increased productivity on the assembly line.
In fact, for all demand plans, MILP-1 solutions (18 of which do not satisfy the Quota property) correspond to increases in productivity, since the values of ΔP(1, ) are all positive. Taking into account that the average daily increase is equal to ΔP(1) = 2.93 engines, it turns out that the average increase in productivity is 1.09% when the current assembly line becomes a regular flow shop ( Fm/prmu/C max /d i ).
For its part, if it is imposed in the previous flow shop that also conforms to some requests of the Heijunka concept ( Heijunka − Fm/prmu/C max /d i ), it also turns out that all the solutions obtained with MILP-2 and MS-Q correspond to positive values ΔP(2, ) y ΔP(3, ) for all demand plans. Therefore, the Heijunka-flow shop also promotes an increase in productivity with respect to the current assembly line, with an average increase in the order of 1.08%, considering the value ΔP(2) = 2.91 engines per day corresponding to MILP-2, or ΔP(3) = 2.90 engines per day corresponding to MS-Q.
Note that the solutions offered by MS-Q and MILP-2 (see Tables 6 and 8) are equivalent from a technical-productive point of view, since on average the difference between their respective times required to manufacture a total of 270 engines is equal to 0.7 s (i.e., 50,262.0-50,261.3) using sequences that satisfy the Quota property, this value is negligible compared to the current available time C 0 max = 50770 s to manufacture 270 engines, which corresponds to a working day with just over 14 operating hours equally distributed between two work shifts.

Advantages and disadvantages of using MILP and MS-Q procedures
The solutions offered by MILP-2 and MS-Q, for the set of Nissan-9Eng.I instances, can be considered technically equivalent in terms of the value of C max (see "Appendix I"); therefore, we can conclude that both procedures are equally 1 3 valid to solve the problem Hejunka − Fm/ prmu/C max /d i . However, since these procedures are of a different nature, it is necessary to highlight some advantages and disadvantages in relation to the application of each of them.
• In the specialized literature, most articles on the Fm /prmu/C max use heuristic and metaheuristic methods. The new problem proposed in this paper is more complex than the Fm/prmu/C max , so there is no reason to rule out the use of heuristics to solve the Hejunka − Fm/prmu /C max /d i problem (Laplace's principle of insufficient reason). The use of Mixed Integer Linear Programming (MILP) for flow shop problems is less widespread for both reference instances and realistic cases. • MILP-2 uses the IBM CPLEX solver, which is commercial software that requires a license in its professional version. CPLEX incorporates the most efficient optimization techniques related to MILP, and its efficiency is widely recognized in the scientific field, requiring knowledge of modeling techniques. In contrast, MQ-S is simple and easy to implement.

Implementation of solutions in a production line
Taking The second evidence is in the organizational advantages for the management offered by the level production both in the plans and in the sequences of mixed models.
The level production concept is inherent in Heijunka's ideology, and we have applied it here by enforcing the conformity of the Quota property with manufacturing sequences. Among the productive and administrative advantages offered by Heijunka are the following: (1) Reduction of the stock level of the types of engines and engine components (Parts). (2) Adjustment of production capacity to the demand for engines. (3) Reduction of delivery times in all phases of the production system. (4) Reduction of the volume of information to direct the operations of the production system. (5) Ability to react to fluctuations in demand, since the preservation of the production mix means keeping the manufacturing system at its center of gravity from the production-demand point of view.
Having seen the advantages that a Heijunka-flow shop offers compared to a mixed model assembly line from a productive point of view, it is worth asking how to implement a solution ( T) = ( 1 , ., T ) when the virtual barrier of setting the manufacturing rate by cycle time c is removed.
This seemingly harmless fact involves converting current workstations to open stations, leading to a release such that both the start and end of jobs on each workstation do not occur periodically according to the value of the cycle time c (v.gr. 175 s), but they occur at irregular intervals that will depend on the duration of each job and the times of completion of the jobs in the current station and in the previous one.
To implement a (T) solution in the workshop, it is necessary that at least the following conditions are met: c1. The manufacturing sequence must comply with the standards established in the collective agreement between the employee and the company. Compliance with this condition is guaranteed because all processing times (see Table 5) have been calculated at normal work pace and the productive time to manufacturing 270 engines (14.103 h using two shifts) takes into account the scheduled rest and forced stop times within the law. c2. Workshop operators must be kept informed about the rhythm and the progress of production at their workstations: every operator should know the following data at the all times: (i) the engine type that reaches your workstation; (ii) the subset of tasks that makes up the job in progress; (iii) the start instant of the job in progress; (iv); the processing time required to complete the job in progress at normal work pace; and (v) the time available to carry out the job in progress.
Condition c2 can be easily achieved using technologies of Internet of Things (IoT) within the framework of Industry 4.0, implementing an information system assisted by wireless connection between the central computer from production management and a set of customized tablets (42 tablets to cover the 21 workstations).
In this way, the set of tablets will visually and acoustically report on production progress at all times and on all workstations. Consequently, all operators will automatically receive the following personalized signals: 1. Audible and visual warning that indicates the beginning of a job. 2. Accelerated audible and visual warning when the time available to complete a job is ending. 3. Visual warning of the dynamic list of pending tasks on a job with the possibility that operator validates the concluded tasks and actualizes the list of tasks.
Updating activities are possible in our case, since a job is made up of 6 tasks on average and the processing times of the jobs are between 89 and 185 s (see Table 5), these times are sufficiently large to update the information in each workstation.

Conclusions
In this work, a new manufacturing sequence model is presented which incorporates some Heijunka properties from Just-in-Time into the Fm/prmu/C max /d i problem. This extension ( Heijunka − Fm/prmu/C max /d i ) arises from our concern to adapt academic problems to problems closest to industrial reality in the automotive sector.
The dimension of the mathematical model corresponding to the problem presented depends on the number of types of jobs, the number of workstations and the total demand for products (engines) in a sequencing horizon. For example, the MILP formulation requires at least 13,770 variables (2430 of them binary) and 25,682 constraints, for 9 types of jobs, 21 workstations and 270 products to be manufactured.
Two methods have been used to solve the new problem applied to a case study based on an engine assembly line. The first of them is based on Mixed Integer Linear Programming, and the CPLEX solver has been used solving all 23 realistic instances from the Nissan-9Eng.I set. The second method, with which the same instances have been solved, is a multistart procedure in whose constructive phase initial solutions are generated satisfying the Quota property, while in the second phase the solutions are improved using five neighborhood (three exchange and two insertion) and attending to the criterion of minimum total completion time C max .
Both procedures have been highly competitive with the new problem, since they have been able to optimally solve a high percentage of the instances using reasonable CPU times. Specifically, procedure MILP-2 obtains and ensures optimal solutions in 20 of the 23 instances with 270 engines using an average CPU time equal to 532.8 s for each instance with an average value of the relative gap between C max and the best lower bound equal to 11.3 millionths. For its part, MS-Q has been able to obtain 13 optimum within 23 instances using an average CPU time equal to 77.2 s for each instance with an average Gap equal to 26.0 millionths. Therefore, it can concluded that both procedures are valid to solve the Heijunka − Fm/prmu/C max /d i problem with a dimension adjusted to the automotive industry. However, although the solutions offered by MILP-2 and MS-Q can be considered equivalent in terms of the value of the objective function, it can be stated that MS-Q beats MILP computationally, being 6.902 times faster in CPU time in the experimental framework of the present case study.
Regarding the transformation of the current assembly line into a Heijunka-flow shop, the economic-productive feasibility study reveals that it is possible to save an average of € 1162.83 per day by manufacturing 270 engines or, alternatively, that it is possible to produce 3 more engines per day with the current working hours.
Finally, for future lines of work, we propose to incorporate in the presented model other productive concepts such as the activity factor of the operators and the possibility of blocking the productive flow between the workstations, as well as the incorporation of some desirable properties in the workloads of the manufacturing sequence.