Optimization of transport constraints and quality of service for joint resolution of uncertain scheduling and the job-shop problem with routing (JSSPR) as opposed to the job-shop problem with transport (JSSPT)

To better meet the qualitative and quantitative requirements of customers or relevant sector managers, workshop environments are implementing increasingly complex task management systems. The job shop scheduling problem (JSSP) involves assigning each task to a single machine while scheduling many tasks on different machines. Finding the best scheduling for machines is one of the challenging optimizations of difficult non-deterministic polynomial (NP) time problems. The fundamental goal of optimization is to shorten the makespan (total execution time of all tasks). This paper is interested in the joint resolution of scheduling and transport problems and more particularly the Job-shop problem with Routing (JSSPR) as opposed to the Job-shop problem with Transport (JSSPT). These two problems are modeled in the form of a disjunctive graph. For the JSSPT, the solution to the transport problem is not linked to any quality of service (QoS) criterion and the solution is therefore often semi-active. The Job-shop with Routing explicitly considers transport operations and uses algorithms from the transport community to solve the transport problem. It is shown that the routing part of the JSSPR is a problem of the vehicle routing family and of the Pickup and Delivery Problem family. QoS in the JSSPR is defined by the duration of tours, the duration of transport of parts and the waiting time for them. A new evaluation function – named Time-Lag Insertion Heuristic (TLH) – is proposed to evaluate a disjunctive graph by simultaneously minimizing the makespan and maximizing the quality of service. Thus, the solution obtained is not semi-active, but a compromise between the different criteria. This evaluation function is included in a metaheuristic. Our numerical evaluations demonstrate that, on the one hand, the TLH evaluation can find almost optimal solutions regarding the QoS criterion; and on the other hand, the TLH evaluation is not very sensitive to the order of insertion of the maximum time-lags during the different minimization steps.


Introduction
Most of the problems in planning and organizing tasks are, or boil down to, optimization problems.For the resolution of these problems, it is advisable to appeal to the construction of models.This is a very relevant solution, as long as it is carried out within a methodological framework.In most of the research dedicated to this type of problem, the authors assume that there is no downtime between two consecutive tasks, (Yang et al., 2021).Production planning and scheduling is usually a topic interesting for companies that seek to offer a quality service.The minimization delay in the manufacture and delivery of products may result in significant gains, especially in sectors where competition is difficult.Decision-making at the operational level, related to minimizing costs and increasing production are two notable aspects that commonly attract the attention of complex industrial sites, Ojstersek et al. (2020).The difficulty of solving these scheduling problems comes from a large number of entities to manage and the need to construct a schedule comprising a large number of stains together with the exigence of many constraints such as constraints of precedence, transport, date, deadlines, and/or resource availability, Bueno et al. (2020).Research work on scheduling mobilizes a large number of researchers.This strong emulation is mainly due to the wide panorama of scheduling issues.Among them, we can mention the multi-path workshop problem, commonly called "Job Shop", which holds a particularly prominent place so this problem is encountered in the industrial environment, Haifei, et al. (2021).Numerous research subjects have emerged from this problem.As the scheduling problems are diversified, we have dealt with a particular case of a workshop which is the Job-Shop or the walk-through workshop multiples which relate to the discontinuous production is us when dealing with relatively small quantities of varied products.The sequence of operations or jobs on resources in the operating plan may differ from one product to another (all products do not necessarily pass on all resources) (Hegen et al., 2022).
Among the most difficult scheduling problems are those relating to classic job-shop-type workshops.Their optimal resolution turns out, in most cases, to be very difficult because of their strongly combinatorial character, Lee and Loong (2019).Complexity theory classifies problems into two classes: P and NP, Dean (2015).Class P gathers the problems solvable by polynomial algorithms.An algorithm is said to be polynomial when its running time is bounded by O (p(x)), where p is a polynomial and x is the input length of an instance of the problem.Algorithms whose complexity cannot be polynomially bounded are called exponential and correspond to the class NP.NP-complete or NP-hard problems represent a large class among the NP class.The job shop problem belongs to this class.For a given computation time, it is possible to optimally solve small problems, while it becomes difficult to find a good admissible solution for a large problem, Pappas et al. (2017).The JSSP can be solved by addressing two sub-problems: the machine allocation problem which implies choosing an appropriate machine from among the alternate machines defined to handle each operation, and the issue by designating a machine for every operation, or the operation sequence problem and calculating its start and end time, Alvarez et al. (2021).The JSSP is known in 14 versions according to Abdolrazzagh-Nezhad and Abdullah (2017)and which respectively: flexible JSSP, Deterministic JSSP, static JSSP, dynamic JSSP, cyclic JSSP, periodic JSSP, no-wait JSSP, just-in-time JSSP, pre-emptive JSSP, re-entrant JSSP, large-scale JSSP, stochastic JSSP, assembly JSSP, and fuzzy JSSP.The use of exact methods requires a set of calculations, the number of which evolves exponentially with the size of the problem considered.It is therefore preferable to use approximate methods, such as those based on the principle of local search or evolutionary methods, Frihat et al. (2022).Today, the problem of JSSP is a required domain.A lot of literature searches focus on minimizing the makespan and increasing usage, Gao et al. (2020).Nowadays, most studies focus on the use of technical heuristics and meta-heuristics such as Fuzzy Logic (FL), Particle Swarm Optimization (PSO), and Simulated Annealing (SA) etc.Most of the techniques used are the Ant Colonies Optimization (ACO) and Genetic Algorithm (GA), Türkyılmaz et al. (2020), Job-shop Scheduling Problem with Routing (JSSPR) which is a generalization of Job-shop Scheduling Problem with Transport (JSSPT).One of the "classic" challenges for modeling production systems with transport is the JSSPT.An extension of the Job-shop Scheduling Problem (JSSP) is the Job-shop Scheduling Problem with Transport.The JSSPT takes into account the management of a group of vehicles that must transport the parts between the machines.The JSSPR is defined as a JSSPT-type problem in which a quality of service (QoS) criterion concerning transport is added.Unlike the JSSPT, which has the sole objective of minimizing the makespan (end date of the last operation), the JSSPR takes into account the maximization of the QoS when minimizing the makespan.This article proposes, among other things, the disjunctive graph of the JSSPT has a new evaluation function, to obtain a solution of the JSSPR.The JSSPT disjunctive graph is introduced by Hurink and Knust (2005), Lacomme et al. (2013), Zeng et al. (2015), Zhang et al. (2014).The approach presented for the JSSPR differs from the JSSPT in the following points: The definition of the QoS for the JSSPR is comparable to the QoS defined for the Dial-A-Ride Problem (DARP).A new disjunctive graph evaluation function that minimizes makespan and maximizes the QoS.An extension of the JSSPT benchmarks to encompass the JSSPR and non-unit capacity vehicle fleet cases.The new evaluation function is included in a metaheuristic-type resolution scheme.An Integer Linear Program (ILP) model for JSSPR is also introduced in this paper.
The rest of this paper is structured as follows: The JSSP study and its primary versions are presented and described in Section 2. Section 3 represents the graphical model of JSSPR with a QOS consideration.Finally, an analysis of the experience study is presented in section 4. Section 5 concludes the paper.

Related Work
The Job Shop Scheduling issue (JSSP), which Graham first proposed in 1966, Abukhader andKadoore (2021), is a wellknown intractable combinatorial optimization issue.It is one of the challenging NP optimizations that has been researched for decades and seeks to allocate numerous operations over several machines.The major goal of optimization has been to reduce the Makespan of full processes, (Mihoubi et al., 2021).JSSP management is complete by considering operations' accessibility and people's availability and equipment required to carry out an operation.Here, it's important to reduce the amount of time products spend in the workshop between receiving a customer order and the end of that workshop's product processing, (Zhang et al., 2021).On the other hand, with JSSP, processes are divided into jobs.Each job has a specific set of products for which additional limitations are added and machines are given specific tasks, Cebi et al. (2020).The JSSP variant that is the simplest is: We display the input for the  jobs  ,  .… ,  that must be scheduled on  machines with variable processing power using circles, and the processing in the machines using rectangles.
However, most of the research focuses on developing specific optimization characteristics for static or predictable settings.In the literature, many theories discuss different classes of manufacturing systems that are susceptible to unanticipated and unpredictable occurrences, such as job cancellation, machine breakdowns, urgent order modifications, changes to the due date (advance or postponement), delays in the arrival of raw materials, and changes in employment priority, Cunha et al. (2020).The following elements should be taken into account while discussing the Job Shop problem: the number of machines (workstations), the work order, the performance evaluation criterion, and the arrival model.Two distinct arrival patterns exist, Saidat et al. (2022), Jain and Meeran (1999): (i) Static: An idle machine receives  jobs that ask to be scheduled for work.(ii) Dynamic: sporadic arrival.There are two different sorts of work orders: fixed and repetitive order, which is an issue in flow shops, and random order, which is conceivable in all models.The following performance evaluation criteria are listed in Kalshetty et al. (2020), Baykasoglu et al. (2014): makespan, average warehouse job duration, delay, average job volume, and machine usage.
Remember that an operation can visit the same device.This phenomenon is called "recirculation" or range looping, Nouri et al. (2016).However, it is common to find more restrictive formulations.For example, if looping routes are not allowed, each operation is then composed of operations and each machine must perform  operations.the total number of operations is then  * .Moreover, if  =  then the problem is said to square.Another possible restriction is that  operation must be performed by the  machine which amounts to dealing with a flow shop problem, Parveen and Ullah (2010), Gaham et al. (2018).

Versions of Job Shop
We detail the main versions of a Job shop, which most research works take into consideration: The classic Job Shop problem, Flexible Job Shop, Just In Time Job Shop, the cyclic problem of Job Shop, and Dynamic Job Shop Scheduling.

a) The classic JSSP
JSSP is a classic problem that has been widely researched in the literature, and goes as follows: In a job shop, there are a number of  well-determined jobs scheduled in several machines .The JSSP aims to find an optimal operation sequence schedule for each of these jobs where the assignment of machines and the temporal relationships between the different jobs are defined, Vital et al. (2020).JSSP has been studied through the development of mathematical programming formulations, Sun and Noble (1999), Jamili (2016), and an extensive variety of algorithms Kechadi et al. (2013), Vancheeswaran and Townsend (1993).

b) Flexible JSSP
Flexible Job Shop Scheduling Problem (FJSSP) is a refinement of the classic JSSP.One of the well-known combinatorial optimization problems concerns a significant number of applications in industrial fields such as production management, Transport systems, The supply chain, and Manufacturing systems.The advantages of FJSSP are cited in Xie et al. (2019) as follows: reduction of execution time, reduction of bottleneck resources, reduction of delivery times, and reduction of idle time.The restrictions of FJSSP are also cited in Xie et al. (2019) as follows: each operation has certain operations to process, each operation can only be assigned to one machine at a time, in each machine, the processing time for each operation is determined, each machine can manage at most one operation, at time zero, all jobs are available, and all operations must be carried out on certain machines.

c) Just in Time JSSP
Just in Time-Job Shop Scheduling (JIT-JSSP) is different from the classic JSSP in that the operation has a due date.Jobs in JIT-JSSP have operations that must be scheduled on machines in a determined order.Each operation has a due date, and early and late penalty coefficients Hussein and Zayed (2021).Any difference between the end time of the operation and its due date results in both cases an advance penalty or a late penalty.Specifically, the completion of the operation earlier than its due date incurs a penalty.Likewise, the completion of the transaction after its due date incurs a penalty Zhang at al. (2022).The main objective of the JIT-JSSP is to minimize the weighted sum of the early and late penalties.JIT-JSSP manufacturing can be presented into two categories, Ahmadian et al. (2021): with due dates at the employment level, and with due dates at the exploitation level.

d) The cyclic problem of JSSP
Cyclic Job Shop Scheduling Problem (CJSSP), each operation  = {1, … , } is assigned to a machine  ,  = 1, … , , with  <  and operations linked by precedence constraints constitute jobs, Quinton et al. (2021).For example, in a manufacturing or production context, one can represent the manufacturing process of a product, while an operation represents only one step in the work process.Taking into account the constraints on the machines in the CJSSP because of an insufficient number of resources, the operations compete for the working time of the machines.This problem is represented by the disjunction constraints, which consider that for a pair of operations(, ) ∈  , which must be executed on the same machine, i.e. =  , two occurrences  and , cannot be executed simultaneously, (Smutnicki & Pempera, 2022).

e) Dynamic JSSP
Dynamic Job Shop Scheduling Problem (DJSSP), assumes that a scheduling plan assigning several jobs n to several machines m to be executed is known at the initial time, but leads to the problem of machine availability and real-time disruptions, the initial plan must be changed dynamically to adapt to real conditions, thus generating a rescheduling (Alaya, 2017).Machinery downtime is mainly caused by machine breakdowns and wear of cutting tools, which is supposed to be predictable (Mohan et al., 2019).During the period of maintenance, the machine will be available again, but the machine prohibits the processing of any operation (Kardos et al., 2021).The dynamic scheduling problem studied is subjected to the following assumptions (Zhang et al., 2021): From the start, all machines and jobs are available; Each machine can only process one job at a time; Each operation is assigned to at least one machine for processing; An operation cannot be processed until the previous operations are completed; An operation cannot be stopped once it has begun, except when the machine is unavailable; Although the work time for each operation is known in advance, it may change while processing; The time corresponding to maintenance is known in the beginning.The last operation is assumed to be integer variables and not negative, (Zhou & Liao, 2020).

For the JSSP with transportation
Taking into account the material manipulation leads to extending the notation, , ,from Grahamet al. (1979).The notation is extended to(), (), (), where denotes the number of transportmeans in the system (Zhang et al., 2012).The field  tells us about the machining environment, the type of production workshop, and the number of machines present in the system.The field  relates to the characteristics of the problems scheduling and groups the constraints imposed by the production environment and by the resources.The field  concerns the performance criteria that will represent the objectives to achieve for the problem in question.End date of machine operations: These constraints guarantee that the end date  of the machine operation  is greater than or equal to its start date plus its operating time  .
Precedence between transport operations and machine operations.This group of constraints ensures that the start date of the machine operation can only be done once completed, the transport operation immediately preceding it.The duration of the latter depends on the robot  assigned to it.
With  represents the set of machine operations.
Precedence constraints between machine operations and transport operations.This group of constraints ensures that a transport operation only begins once the operation's previous machine is completed.
WithUrepresents the set of machine operations that have no successors Disjunction constraints on machines.This constraint requires that each machine not only process one transaction at a time.
Given two operations ∈ O and  ∈ Oprocessed consecutively on the same machine  =  = μ, the constraints are given by the Eqs.(4-6).
The constraints (4) and ( 5) are arbitrated by the binary variable  ∈ {1,0} which activates a single constraint at a time corresponding to a single order of execution.When  = 0 the constraint (5)is still valid because  is sufficientlylarge and the constraint (4) becomes active.In this case, constraint (4),can be rewritten in  ≥  , which means that machine operation  can onlystart processing if the operation machine  is finished.On the other hand, if  = 1, it is the constraint (5) which is active implying that the operation machine  begins only once the operation machine  finished.Constraint (6) guarantees that the machine operation  ∈  takes place in first letthe machine operation  ∈ 0 take place first.
Constraints for assigning robots to transport operations.This set of constraints ensures that for each transport operation (∀ i ∈ T) a robot is assigned to it.
Constraints on disjunction for transport operations.These restrictions state that a single robot cannot do two Transport operations at once.The constraints (8), (9), and(10)assigns 1   if and only if the two operations transport    are assigned to the same robot  .In the case where two transport operations are assigned to the same robot, we have  = 1 if transport operation  is performed before transport operation and  = 1 otherwise.Constraint (14) therefore expresses thatonly one of these two situations product.
The criterion to be minimized is the end date of the last "Makespan" machine operation given by the variable  =  ( ), ∀  ∈ .

QoS for the DARP
DARP is provided by Stein (1978) , and it is formalized by Cordeau and Laporte (2003), which proposes the following definition: each customer has a transport request between a collection point (loading node or pickup node) and a transportation point.Each node  is connected to a service period  , which corresponds to the time required to depositor load the client  ; and at a time window  ;  during which the loading or delivery operation must be carried out.A vehicle arriving before the time window for an operation must wait for the opening of the operation before starting the service.Customer transportis delivered by a uniform and constrained vehicle fleet with capacity .All tours start and end at the depot.
The originality of the DARP proposed by Cordeau and Laporte (2003) lies in the type of solution sought: the dates of the visits are not necessarily adjusted to the left (at the earliest) to maximize the QoS.Starting a visit later can limit, for example, the time a customer spends in the vehicle.Generally, for "classic" problems, a calculation of the dates at the earliest is sufficient to schedule the transport operations.An algorithm solving a DARP maximizes the QoS from the customer's point of view, which means that it is necessary to define an algorithm to determine the date of arrival of the vehicle on a node, the start date of service (the date that can be different from the arrival date), the end of service date and the departure date of the vehicle.Four variables are needed to explain a route (Fig. 1): is the date of arrival of the vehicle at node . is the start date of the service at node . is the end date of the service at node ,  =  +  . is the departure date of the vehicle from node .Cordeau and Laporte (2003), introduces three criteria (Figure 1) to meet DARP service quality considerations:  is the transport time (Riding Time) of the customer , it is defined between the date of departure from the node where the customer is loaded and its start date on its delivery node ′.The node immediately after the loading node is not always the delivery node; several clients can be loaded and/or unloaded. =  −  . is the trip's duration (Duration Time) of the vehicle , described as the variation from the arrival date  of the vehicle at the depot to its date of departure  of the repository,  =  −  . is the Waiting Time of the customer  between (1) its date of departure  from the node and the end date of its service at the node ,  =  −  ; (2) its start date of service  at the node and its arrival date  to the node ,  =  −  .The waiting time is given by:  =  +  .A set of routes that satisfies all demands while taking into account the time windows on the one hand and the vehicle maximum capacity on the other is known as a DARP solution.In addition, measurements of a solution's QoS take into account the following factors: The Overall Riding Time: () =  .
The Overall Duration: () = ∑  , where  is the round number.
Given the three criteria mentioned above, a DARP solution is not semi-active, i.e. the start dates of the various operations (departure, start of service, etc.) are not necessarily planned earlier.For given rounds, the start dates minimizing the various criteria can be calculated by the algorithm on( ) of Cordeau and Laporte (2003), or on() by the algorithm of Firat and Woeginger (2011).These two algorithms do not provide the same dates, but a different compromise between these criteria.Iteratively minimizing the criteria preserves the previously minimized criteria in the algorithm of Cordeau and Laporte (2003), which is frequently employed in heuristic approaches.

Graphical Modeling of JSSPR with QoS Consideration
JSSPR involves resolving the JSSP with an explicit modeling of the transport and a QoS criterion associated with the transport.To solve this problem, an original approach based on approaches from vehicle routing problems and approaches from scheduling problems is proposed.This approach includes the consideration of a QoS requirement in the objective function and explicit transport modeling.

Graphical Modeling
The authors of Hurink and Knust (2005) and Lacomme et al. (2013) added nodes to the connective-disjunctive graph of the JSSP to generalize it and describe the loading and transportation operations of the vehicles.Thus, in the disjunctive graph there are three types of vertices that model:(i) processing operations ( , );(ii) loading (pickup)operations  , ; (iii) delivery operations  , , Hurink and Knust (2005).
The triplet ( , ,  , ,  , )<represented by Fig. 2, defines a set of three operations successively representing a delivery (or unloading) operation, a machine operation, and a pick-up operation.loading.In general, the start date of a machineoperation  , depends on the end date of the delivery operation  , (the delivery/unloading time is assumed to be zero or included in the delivery time).The start date of a loading operation  , mustbe greater than the end date of the operation  , .

Fig. 2.
Connective arcs defining the passage of a job on a machine.
Therefore, each job with  its sequence contains machine-operations 3 ×  − 2nodes:  machine-operations,  − 1 delivery operations.The job order must include the depot if jobs are to be moved from the starting depot to the first machine in their order.Each pair of machine-operations ( , ,  , ) is a request for a transfer  ( , , , ) of the job which needs to be moved away from the machine  , at the machine , .Each transfer request  ( , , , ) =  , ,  , to machine  , at the machine  , is defined as a loading operation  , and by a transportation operation  , .This loading operation  , and this delivery operation , are characterized by the vehicle  which is assigned to them and by their respective start dates.Atransfer request is fully determined by an ordered sequence of operations realizing a path from  , to  , ,in which all the operations (loading and delivery) belonging to the path are assigned to the same vehicle.The period of the transfer is determined by the time between the start date of the loading operation  , and the start date of the transportation operation  , .A disjunction between two operations of the loading and/or delivery type corresponds to a transport operation and is modeled by an arc from the vertex which models the loading operation to the machine  , , at the vertex which models the delivery to the machine  , , having the value  , , , , .This remark is valid for all setups (, ), (, ), (, ), (, ), where  is a loading operation and  a delivery operation.A vehicle's route is made up of an organized list of loading operations and transportation operations according to the mentioned restrictions: 1) A delivery operation  , must be sequenced after the loading operation  , ; 2) at all times, the number of jobs in the vehicle must be less than the capacity of the vehicle.As in Fig. 3, the route is = ( , ,  , ,  , ,  , ), for a capacity vehicle equals 2. Both constraints are checked.

Solution and evaluation
A directed disjunctive graph is obtained: 1) by assigning a vehicle to each loading and delivery operation; 2) by defining the disjunctions between machine-operations sharing the same machine; and 3) by settling conflicts between operations that are given the same vehicle.Considering that only semi-active solutions are typically sought, an acyclic network can be evaluated to determine the earliest start dates of operations.This evaluation is commonly carried out by the longest path algorithm.Fig. 4 presents an evaluated and directed disjunctive graph.The graph in Fig. 4 illustrates a schedule by defining the start dates of the machine operations and by defining the rounds of the two vehicles (of capacity two each), these are made up of an organized sequence of loading and transportation operations.For example, the machine-operation  , is carried out from date 30 to date 35 (Fig. 4).This last date is not explicitly modeled and does not appear in the graph, it results from the sum of the start date which is 30, and of the duration of the operation which is 5.The date (at the earliest) of the loading operation  , is55, this date defines the moment when the vehicle  loads the job  to be transported from its current position (on the machine ( ) to the next machine in the range of  , that is, the machine  .Between dates 35 and55, the coin occupies the machine's output buffer , which is assumed to be of unlimited capacity.The vehicle  is assigned to the transport of the job  from the machine  to the machine  (the transport time is 25 units of time) between the machine-operations  .and  . .The vehicle begins the loading operation on date 5 and the transportation operation on date 30.The following operation is allocated to the vehicle comprised in transporting job  from machine  to machine  .Between the delivery operation , (unloading of the job  on the machine  on the date 30) and the operation of loading  , of the job  on  (on the date 30), the vehicle  performs an empty transport between the machines  and  with a travel time of 0, this transport is modeled by an arc of zero value and in reality corresponds to waiting for the vehicle on the same machine.Between the delivery operation  , and the loading operation  , of the job  , the vehicle  performs an empty transport from  to  it is represented by a 15-valued arc ( 15 is the transport time from  to  ).The vehicle  is assigned to the transport of  from  to  and then to the transport of  from  to  (cf.Fig. 4).Fig. 5 explains the Gantt graph of the directed and rated disjunctive graph shown in Fig. 4. Fig. 5 highlights vehicle and job wait times.For example, the vehicle  performs the delivery operation  , of the job  on the machine  on date 50 then, it waits until date 50 to perform the loading operation of the job  on the same machine  , therefore the vehicle  waits 20 units of time.
Similarly, the job  is delivered on date 40 on the machine  by the vehicle  , and it waits until date 55 in the input buffer of the machine  before starting its machine-operation  , .Such a situation is induced by the order of passage of the jobs on the machine  (this order is  ,  ,  ), which is itself the result of the choice of arbitration of the machine disjunctions.
Some jobs may have no waiting time on some machines, in this case: i) The machine-operation is set to begin afterwards the delivery date; ii) the end date of the machine-operation corresponds to the start date of the loading operation.For example, the job  finishes its first processing on date 30 on the machine  , it is charged by the loading operation ( , ) at the date 30, then transported from  to  from the date 30 to the date 50 (thanks to the transport opera-tion( , ,  , ) = ( , ,  , ,  ).This same job  is deposited on date 50 (delivery operation  , ) on the machine  .

QoS in JSSPR
Each transport operation ( , ,  , ) = ( , ,  , , )of a machine  , (who performs the machine-operation  , )up to another machine  , (which performs the machine-operation  , ) is composed of an initial operation  , (which is equal to either  ,  , ), of a final operation  , (which is equal to  ,  , ) and a vehicle  assigned to both operations.Therefore: ( , ,  , ) =  , ,  , ,   , ,  , ,   , ,  , ,  |  , ,  , ,  .In addition, a transport operation( , ,  , ) is defined by: the date of departure  , of the vehicle  of the machine  , ; the date of arrival  , of the vehicle  on the machine  , ; The vehicle assigned to the transport.
Let  , be the start date of the machine operation  , and let  , =  , +  , its end date.Since a transport operation ( , ,  , ) is a pair of loading and delivery operations,  , is the departure date of the vehicle (start date of the transportation operation) (see Fig. 6); and , is the arrival date of the vehicle.The earliest start date of a machine-operation depends both on the arrival date of the vehicle transporting the job and on the end date of the machine-operation formerly scheduled on this machine.
The distinction between  , and  , describes the Waiting Time of the job  in the input buffer of the machine  , (Fig. 6).Similarly, the difference between  , and  , defines the waiting time of the job  in the output buffer of the machine  , .The waiting time of the vehicle is defined by the difference between the date of arrival  , of the vehicle on the machine and the date of departure of the vehicle  , .There is no constraint which requires that the departure date , of the vehicle be scheduled immediately after the job loading operation, this means that a job can be loaded and wait in the vehicle before it is loaded.it does not begin its movement.Similar remarks concern the delivery operations  , which do not need to be started immediately on the date of the vehicle's arrival  , , this means that the job might not be allowed to get off the vehicle immediately upon His arrival.These considerations take on their full meaning when the problems of vehicle routing are subject to safety regulations, which are frequent -in particular -in the problems of transporting children or transporting dangerous or precious products.For example, in the case of school pick-up, it may be forbidden to drop off a child at his place of destination before the scheduled date or before the school opens.Similarly, it is forbidden for a deliverer to deposit his goods in front of the depot if it is not yet open.To reduce waiting times (both for vehicles and jobs), a coordinated strategy must be favored concurrently addressing the issues of scheduling machine operations, assignment of vehicles to transport operations, and rounds. of vehicles.For scheduling problems, the start dates of the different operations are very frequently at the earliest ("left-shifted"), because generally the solutions sought are semi-active and the objective function only takes into account the makespan.The latter, also referred to as  , is the start date of the final fictitious operation,  whose start date is equal to the end date of the operation ending at the latest.The makespan therefore corresponds to the time required to perform all the operations:  =   .The Riding Time () of the job  (in purple on the Gantt diagram in Fig. 8) is made up of two parts, because there are two transport operations in the route.The first  of  is between the first operation (machine-operation  , ) on the machine  , scheduled on date 0, and the start of the following machine-operation (machine-operation  , ) starting on date 30.The second part of  of begins when is loaded into the vehicle, on date 55, and ends when  goes on the machine  on date 80.
Two Waiting Times () are illustrated in green, the first concerns the  of  in the input buffer of the machine  on date 40, the piece waits until date 55 before being produced (operation-machine  , ).The second illustrated is located in the output buffer of the machine  , the job  ends its passage on  on date 55 (machine-operation  , ) and waits for the loading operation () at the date 70.Total Waiting Time ().The Waiting Time of a job  is stored in a machine's output buffer , is named  , , defined by  , − ( , +  , ).The Waiting Time of a job in the input buffer of a machine  , is named , and is defined by , −  , (see Fig. 7).The Total Waiting Time () is the total of the Waiting Times in the output buffers ∑ ∑  , ∈ more the Waiting Times during buffer input∑ ∑  ,

∈
where  is the set of transportation (delivery) operations of job  and  is the set of loading operations of job .The total Waiting Time is the totality of all the Waiting Times:

Principle of the Time-Lag Heuristic assessment
It is impossible to directly apply the approach of Cordeau to the routes present in a disjunctive graph for the JSSPR because the routes are not independent of each other.The algorithm of Cordeau is dedicated to the evaluation of a unique and independent tour.For the JSSPR, it is necessary to design an evaluation procedure that simultaneously takes into account the whole of the graph which contains all the routes.The dependence between routes is linked to the fact that a vehicle performs transport operations belonging to different jobs, which adds temporal dependencies between job ranges.This particular point is illustrated in Fig. 9, where the vehicle  , whose route is modeled by the arcs in orange, performs, for example, a transport operation for the job  , then for the job  .: the graph with minimized criterion 2.
: the start dates of operations 3.
: the criterion to be minimized 4.
: maximum time-lags to insert during the  step 5.
: order of insertion of the maximum time-lags during the  step 6.Start 7.

End
The  The stages of the TLH evaluation range from the most encompassing time-lags to the "smallest" time-lags, because inserting the most encompassing time-lags makes it possible to constrain future time-lags.Moreover, inserting time-lags at the start of the procedure that includes few operations risks creates an increase in the other criteria, because these will not be constrained.For example, the reduction of the Riding Times can cause an increase in the Total Durations of the jobs, indeed, to minimize the Riding Times, the jobs will be loaded only when the following machine is free and will be carried out without waiting.In this case, transport becomes the most critical resource.
Selection of the maximum time-lag value is an important point of TLH evaluation and a challenging issue because the timelag value should be minimum, but adding too small value time-lag in the disjunctive graph can lead to a cyclic graph.This situation is to be avoided.
The minimum value  , of a maximum time-lag  , (the time-lag is represented by an arc with a negative value even though this value is positive), from the operation to the operation is the difference between the earliest start date  of  and the earliest start date  of .
Let be a position of insertion of a maximum time-lag  , from to, the minimum value (which is equal to  , )of maximum time-lag, is  , =  −  where  and  verify that: such that () is the set of successors of , and  , is the path length between  and .With  , =  , ||  , =  , From the definition of the earliest and latest dates of operations, the proposition can be inferred immediately.In general, among two operations  and  of the same route, whatever their types (loading, delivery, or machine operation), one or more paths are going from  to .These paths are composed of a succession of arcs whose extremities do not necessarily belong to the same range as  and .To avoid the creation of a cycle in the graph by inserting a maximum time-lag between  and , the longest path must be found.The length of this path is the minimum value that the time lag between these two operations can take to avoid creating a cycle.Algorithm 2 is used to calculate the minimum value of a time-lag.
Algorithm 3 exemplifies the principle of inserting a maximum time-lag  , in the graph.The time-lag is initialized to its initial value  , , then the graph is evaluated using a Bellman-Ford type least-distance algorithm.When a cycle is found, the cycle duration value  is positive ( > 0).The time-lag value is elevated by, until there are no more cycles detected.The initial minimum value  , when minimizing the Total Duration, of the maximum time-lag of a job  is the total of all operations , ∀ ∈ {1, … ,  }aboutit, plus the transport times between the machines where the operations  , ∀ ∈ {1, … ,  } are carried out.

Presentations of instances and studies
To our information, there isn't a single instance accessible that is committed to the Job-shop Scheduling Issue with Routing.
On the instances originally established for the simultaneous scheduling of machine operations and transport operations, Zeng et al. (2015), a new batch of instances is provided.The scientific community generally recognizes these examples as the JSSPT reference dataset for two-unit capacity vehicles.
The instances in our study are made of two sets (called datasets)   : the first involves instances with a ratio of the transport time  and the processing time  greater than 0.25( / > 0.25) which means that the processing times are much longer in duration than the transport time.These are predominantly scheduling instances.The second set (or dataset) contains the instances with  / ≤ 0.25.The instances of the second dataset are therefore transport-dominant.These instances are all produced by integrating 10 jobsets and 4 layouts and defining the dataset  with 40 instances and the dataset  with 42 instances.
Instances of  are denoted  , with x denotes the jobset currently used and y the layout taken into account.For the set  , the instances are named  , where  is an additional digit with a value of 0 if the transport times are divided into two parts and the processing times doubled or a value of 1 if transport times are halved and processing times tripled.
For the occurrences of Zeng et al. (2015), the transit times for the two vehicles are the same regardless of the load and the vehicle.For numerical assessments including a group of non-unit capacity vehicles, these situations are extended.In this instance, two vehicles are taken into account, each of which has a capacity of two jobs, each of which corresponds to the same volume.The job operating ranges and processing times are the same as in the original instances.JSSPR's objective is to shorten the makespan and increase QoS by defining ℎ () = 1/ℎ ().The two criteria are ordered by an aggregate sum with the coefficients (; ) modeling the level of necessity of QoS and makespan.The objective function is described as follows:  2017) can solve the JSSPT and the JSSPR.It should be noted that GRASP×ELS is a combination of two metaheuristics, GRASP (Greedy Randomized Adaptive Search Procedure) (Prins, 2009) and ELS (Evolutionary Local Search), which has been cited as Gondran et al. (2017) for the Vehicle Routing Problem (VRP).
The objective function for the JSSPT resolution is specified with  = 1  = 0 corresponding to an evaluation of the dates at the earliest.The coded algorithm is generic and in this specific case, it simply corresponds to the initial stage of the TLH evaluation and is therefore equivalent to a classical shortest path algorithm.
Two different approaches are experimented with to solve the JSSPR.The first approach is an integrated approach, while the second is a sequential approach: The objective function of the integrated approach (integrated JSSPR) is () =  × ℎ () +  × ℎ () where with  = 10 000   = 0, the TLH evaluation is used at each iteration of the metaheuristic.
For the sequential approach (sequential JSSPR),  = 1  = 0 in the objective function during the GRASP×ELS (this step is equivalent to solving the JSSPT).Then, to obtain a solution from the JSSPR, the TLH assessment is applied to the best solution discovered during the resolution of the JSSPT.Our numerical assessments are divided into two studies.The first study concerns the ability of GRASP×ELS to provide results comparable to the literature for solving the JSSPT with a fleet of unit-capacity vehicles.To our knowledge, there is no article in a journal proposing numerical results for the JSSPT with a fleet of non-unit capacity vehicles or proposing a study on QoS.The second study is composed of two numerical evaluations: the first deals with the order of insertion of the maximum time-lags during the TLH evaluation; and the second numerical evaluation looks at the TLH function's speed at finding high-quality answers in reasonable amounts of time Lacomme et al. (2007).All of the investigations are conducted under identical circumstances.A GRASP×ELS includes the TLH assessment.The ELS iterations total 60, the GRASP iterations total 200, and the number of neighbors during the ELS iterations total 30.To lessen the impact of chance on the result, each experiment is replicated five times using a different set of random numbers each time.

First study: Capacity of GRASP×ELS to solve the JSSPT with a fleet of unit capacity vehicles
The study focuses on the last three publications of the JSSPT with a fleet of vehicles (group of vehicles) of unit capacity, Gondran et al. (2017), Gondran et al. (2018), He and Hao (2023).These three methods offer many new best solutions and are tested on all instances of the two datasets.Recall that the MTSP method is introduced by Gondran et al. ( 2018) and consists of a Tabu Search type algorithm (MTSP).In Gondran et al. (2018), the authors describe an approach based on genetic algorithms: the DSMG to enable flexible processing and dynamic scheduling, additionally resolving a static version of the JSSPT.The Petri-EUF method is suggested by He and Hao (2023).For each method, the results in terms of solutions and computation time provided in the articles are summarized in Table 1.
JSSPT, which is determined by an objective function only based on the makespan lacking consideration of the QoS, can be solved using the proposed Time-Lag Insertion Heuristic (TLH) assessment because it is generic.In this case, the objective function is outlined by  = 1  = 0in the TLH evaluation.This is related to the longest path algorithm of the Dijkstra type.
Table 2 and Table 3 present the results acquired by GRASP×ELS solving the JSSPT with a fleet of unit capacity vehicles for the two datasets.The mean deviation , * () Attribute of the best performance is 26.8% for dataset (Table 2) and 6.5% for the dataset  (Table 3).
For the dataset  (Table 2), the GRASP×ELS participates with the most successful methods, with a deviation from the lower bound of  , * () = 26.8%which is more favorable than HRA and FMAS.The GATS+HM offers a deviation of around 20.6% which is slightly lower than the departure from GRASP×ELS with a calculation time of around 12.08 seconds, i.e. four times longer than the calculation time of GRASP×ELS, which is about 2.83 .Likewise, the ALS offers a departure from about 25.5%, but a scale calculation time of 503.1  on average.The TS_SPMA obtains results of about25.5%,so a relative analysis of computing time is not sufficient.The average normalized time to identify the ideal solution, when it was the best replication * among the  replications, for all instances of the dataset ∈ { ;  }  , * () : The normalized total time to resolution for the best replication * among the n replications, for all instances of the dataset  ∈ { ;  }  , () : The total normalized time to identify the ideal solution during replications, for all instances of the dataset ∈ { ;  }  , () : The total normalized resolution time for replications, for all instances of the dataset ∈ { ;  }  , () : The average deviation for replications for all instances of the dataset ∈ { ;  } Mostly asked, is it possible to increase the number of iterations in the hopes of reducing the difference in solutions between GRASP×ELS and GATS+HM.So many numerical evaluations were carried out to give GRASP×ELS a similar duration as the GATS+HM algorithm, but no significant improvement was obtained.There is therefore probably a very and too rapid convergence of GRASP×ELS and the diversification mechanisms have not allowed the exploration of another region of space.For the dataset  (Table 3), GRASP×ELS offers high-quality results with an average deviation of 6.5%, which places it between the TS_SPMA method (6%) and the FMAS method (7.2%).But no comparative study is possible on the computation times, because none of the methods gives their execution times.This first numerical study leads us to consider that GRASP×ELS is adapted and well-parameterized to solve the JSSPT with two vehicles of unit capacity.

Second study: JSSPT and integrated JSSPR
The second study is a comparison of the makespan and QoS criteria between the JSSPT and the integrated JSSPR.The resolution of the JSSPT does not consider the QoS evaluation and corresponds to a Dijkstra-type evaluation.To compare the resolution methods, the QoS of the JSSPT is calculated on the final solution returned by the GRASP×ELS.It is important to note that in the case of the JSSPT, the QoS is only evaluated without trying to maximize it: the start dates of operations are constraints and cannot be modified.This study is divided into two sections: a section for the case of a fleet of unit capacity vehicles, and a section for the case of a fleet of vehicles of non-unit capacity.

Unit Capacity Vehicles
Table ٤ and Table ٥present the results obtained for the JSSPT and the JSSPR.The first column is the name of the instance, the second is the lower bound proposed by Ulusoy et al. (1997).Columns 3, 4, 5, and 6 relate to the resolution of the JSSPT by the GRASP×ELS with the objective function:  = ℎ () where ℎ ()is the makespan.Columns 7 to 12 relate to the resolution of the built-in JSSPR (the objective function is: Columns 3 and 7 give the value of the makespan of the best solution found, during the five replications, respectively by the JSSPT and the integrated JSSPR.Columns 4 and 9 are the values of the cost of the best solution found, during the five replications, respectively by the JSSPT and the integrated JSSPR. A value of ℎ , * () (column 3) equal to ℎ , * ()(column 7) means that the best solution obtained for the JSSPT and the best solution obtained for the built-in JSSPR have an equivalent makespan.
A deviation of 0.16% means that the average makespan found during the solving of the integrated JSSPR is better than the average makespan found during the solving of the JSSPT.This difference results from a better diversification during the GRASP×ELS.A deviation of 0% means that the two methods have solutions with an equivalent makespan.
, * is the time taken by GRASP×ELS to locate the ideal solution, while  , * is the total running time of GRASP×ELS.For example, for instance, EX21 (Table 4), the period to locate the ideal solution for the JSSPT is 1.94 seconds, and the total time to solve the JSSPT is 8.72 seconds.The time required by GRASP×ELS to provide the best solution is 11.40 seconds and the total time is 19.93 seconds.
The difference in execution times is explained by the fact that the number of evaluations of the disjunctive graph is much greater for the JSSPR.Moreover, for the JSSPT, the time  , * corresponds to the first solution obtained with the minimal makespan, while for the JSSPR, the solution with the minimal makespan and the minimal QoS can require much more time.
The gap between the QoS of the ideal solution found during the JSSPT and the ideal response found during the integrated JSSPR is defined by∆ , * = , * ( ) , * ( ) , * ( ) which therefore represents the improvement in the QoS of the JSSPR compared to that of the JSSPT.A ∆ , * > 0 means that the JSSPR solution has a better QoS than the JSSPT.This is the case of instance EX11 (Table ٤) with ∆ , * = 25.33%: the JSSPT solution has the criterion ℎ , * () = 683 and the solution of the integrated JSSPR has the value of ℎ , * () = 510.∆ , * is the average deviation of ∆ , * ,∆ , * = 35.78%for the dataset (Table 4) and ∆ , * = 46.37%for dataset  (Table 5).These gaps highlight the importance of considering the QoS during the resolution scheme.
For the dataset  (Table 4), the average amount of time needed to locate the ideal solution of the JSSPT is 2.83 seconds and the total time is 10.50 seconds.The average duration of the JSSPR is 9.38 seconds to locate the ideal solution and 23.14 seconds for the complete resolution.The differences between these durations are explained by the number of evaluations of the graph which is much more important for the JSSPR.The same remarks remain true for the dataset  (Table 5).

Table 4
Results for the JSSPT and the JSSPR with datasets   (For unit capacity vehicles)

Non-Unit Capacity Vehicles
Similar to the previous section, Table 6 and Table 7 introduce the best replications among the five GRASP×ELS replications for the JSSPT and the integrated JSSPR.In this section, the vehicles have non-unit capabilities, each of which can optionally carry two jobs simultaneously.
For the dataset  (Table 6), the average deviation of the makespan, ∆ , * = 0.06%, means that the integrated JSSPR is on average very slightly better than the JSSPT concerning the makespan criterion.
Concerning the QoS criterion,∆ , * = 26.00%,which means that the integrated JSSPR finds solutions on average 26% better than the JSSPT for the QoS criterion.The average computation times of the JSSPT are , * =3.61 seconds and  , * = 18.66, and,  , * = 14.51seconds and  , * = 32.19.The resolution of the JSSPR requires approximately twice as much time as the resolution of the JSSPT, but it makes it possible to obtain solutions of much higher quality in terms of QoS, without degrading the criterion of the makespan.

Table 6
Results for the JSSPT and the JSSPR with datasets   (For non-unit capacity vehicles) Concerning dataset  (Table ٧), ∆ , * = 0.00% means that the JSSPT and the integrated JSSPR obtain solutions with an equivalent makespan.Remarks similar to the numerical results obtained with the dataset  can be established for the results obtained from the dataset  .The average deviation of the QoS, for the dataset  , is ∆ , * = 45.60 %, and reflects the improvement brought by the integrated JSSPR for the criterion of the compared QoS to a JSSPT resolution.The computation times of the integrated JSSPR are nevertheless much greater than for the JSSPT.

Table 7
Results for the JSSPT and the JSSPR with datasets   (For non-unit capacity vehicles) The second study highlights the importance of the QoS during the optimization scheme and the impact of the QoS on a solution.This QoS can be greatly improved by solving an integrated JSSPR without losing quality in terms of makespan.However, the integrated JSSPR requires more computation time.These remarks remain true whatever the dataset considered and whatever the capacity of the vehicles (unitary or non-unitary).

Capacity Vehicles
To further emphasize the importance of QoS in both JSSPT and JSSPR, Figure 10 showcases the contrast among four averages (AVG1, AVG2, AVG3, and AVG4), which correspond to the findings from the preceding section's tables.This comparison pertains to the utilization of two datasets, D1 and D2, across two vehicle capacity scenarios: unitary and nonunitary.After this comparison, we conclude that the combined JSSPR necessitates additional processing time.These observations hold regardless of the dataset under consideration or the vehicle capacity being unitary or non-unitary.

Conclusion and Future Work
This article has proposed to take into account a quality criterion in a scheduling problem with routing.The vast majority of problems combining scheduling and transport do not consider such criteria.The transport problem is often seen as a "subproblem" or "a constraint" of the problem scheduling and then a semi-active solution is sufficient.Consideration of the QoS criterion requires obtaining solutions that are no longer semi-active.
This research presents an evaluation function of a disjunctive graph, named TLH, for the JSSPR, which can be used in the case of a group of vehicles of unit capacity and the case of a non-unit capacity fleet.TLH evaluation is included in a GRASP×ELS type metaheuristic and is tested numerically.These instances are extended to take into account the case of a group of vehicles of non-unit capacity.Two algorithmic schemes using TLH evaluation are tested: the first scheme, named sequential JSSPR, minimizes -during GRASP×ELS -only the makespan, then the TLH evaluation is applied to the best solution to maximize its QoS.The second scheme, called integrated JSSPR, uses the TLH function for each evaluation of a graph, and GRASP×ELS has the objective function of minimization of makespan and maximization of QoS.
The work presented in this paper offers several perspectives.It should be noted that additional constraints could be added to the JSSPR.These constraints would concern the transport part: for example, a maximum distance that vehicles can travel which can be justified by the use of electric vehicles and therefore by the need to recharge the vehicle's batteries.The JSSPR could take into account constraints on the loading and unloading orders of the parts in the vehicles: thus, the first part to be delivered would be the one loaded last in the vehicle.
A Constraint Programming (CPP) model could be proposed for the JSSPR, and hybrid approaches could be considered.It should also be noted that additional constraints could be added in the JSSPR.These constraints would concern the transport part: for example, a maximum distance that vehicles can travel and which can be justified by the use of electric vehicles and therefore by the need to recharge the vehicle's batteries.The JSSPR could take into account constraints on loading and delivery orders.Unloading of parts into vehicles: thus, the first part to be delivered would be the one loaded last into the vehicle.Another area of research would be to allow vehicles to exchange the products transported.In this case, the transport of the JSSPR would approach the problems of Vehicle Routing Problem with Trailers and Transshipments and would impose coordination constraints between the tours.

Fig. 3 .
Fig. 3. Loading and delivery operations with a non-unit capacity vehicle.

Fig. 4 .
Fig. 4. Evaluated solution of a problem with a directed disjunctive graph.

Fig. 6 .
Fig. 6.Synchronization of a transport operation and two machine operations.The advantage of an explicit modeling of transport operations is to be able to propose start dates that are not at the earliest.Depending on the dates of arrival  , , depart  , and start  , of the machine operations, the waiting times for vehicles and jobs are different in terms of their length and their location.It can be beneficial to delay the start date of an operation (transport or machine) to reduce unnecessary waiting times.By analogy withCordeau and Laporte (2003), it is possible to define the QoS of the Job-Shop Scheduling Problem with Routing by considering the time required to complete a job (Total Duration -), the time spent by the part in transport (Total Riding Time -) and the waiting time of the parts in the input and output buffers of the machines (Total Waiting Time -).Fig.7is a visualization of these three criteria, machine operations are in grey, loading operations are in orange, and delivery operations are in green.Thus, the Total Duration () corresponds to the classic notion in industrial engineering of "flow time" and it's determined by the distinction between the end date of the last operation of the job and the start of processing of the job.This is the time required for the full range of one piece.The Total Riding Time represents the time spent by the product (or the customer) between the moment it is loaded and the moment it is delivered to the input buffer of the next machine.This duration is visually represented in Fig.7() by a set made up of the following order: a loading node (in orange), a delivery node (in green), and a machine-operation (in Grey).The Waiting Time of a job is the sum of the waiting times of the part in the input and output buffers of the machines.In Figure٧, these times are between delivery operations (in orange) and machine operations (in gray) and between machine operations and loading operations (in green).

Fig. 7 .
Fig. 7.The new criteria defining the QoS in the JSSPR.

Fig. 8 ,
Fig.8, which is a Gantt diagram, presents the different QoS criteria.The Total Duration of the job  is in blue, it starts at the first operation of on the machine  (operation-machine , ) and ends at the end of the last operation of  on the machine  (machine-operation  , ).

Fig. 9 .
Fig. 9. QoS Criteria in Gantt chart.Total Riding Time ().A Riding Time is associated with a request  ( , , , ) and is calculated by  , =  , −  , .It therefore relates to the time elapsing among the date of leaving the vehicle  from the machine  , where the loaded of job  and the start date of the service of the job  on the machine  , (the date of start of the machine-operation  , ), as Fig. 7 shows.The Total Riding Time () of job  is  = ∑  , −  , , ∈ with  is the set of loading operations of the job .The Total Riding Time is the totality of all the Riding Times of all the jobs:  = ∑ ( ) .

Algorithm 1 :
Principle of criterion minimization at step  1.
new evaluation function, proposed in this paper, TLH -Time-Lag Insertion Heuristic -is based on the same principle and is based on the heuristic insertion of time-lags in the disjunctive graph of the JSSPT.The evaluation function TLH minimizes the makespan -by calculating the earliest start dates of the operations -then TLH minimizes the Total Duration (), then the Total Riding Time () and finally the Total Waiting Time ().The deterioration of a previously optimized criterion is prevented by the iterative addition of maximum time-lags in the graph.The TLH evaluation function is composed of four tasks: Task 1: minimizing the makespan.Task 2: minimizing the TD.Task 3: minimizing the TRT.Task4: minimizing the TWT.

Fig. 10 .
Fig. 10.Comparative chart for the two capacities of vehicles (unitary or non-unitary).

Table 5
Results for the JSSPT and the JSSPR with datasets   (For unit capacity vehicles)  ×   () +   ().