Climbing discrepancy search for flowshop and jobshop scheduling with time-lags

Similar documents
Solving an integrated Job-Shop problem with human resource constraints

A new simple recursive algorithm for finding prime numbers using Rosser s theorem

b-chromatic number of cacti

Case report on the article Water nanoelectrolysis: A simple model, Journal of Applied Physics (2017) 122,

Methylation-associated PHOX2B gene silencing is a rare event in human neuroblastoma.

The Accelerated Euclidean Algorithm

Smart Bolometer: Toward Monolithic Bolometer with Smart Functions

Full-order observers for linear systems with unknown inputs

Evolution of the cooperation and consequences of a decrease in plant diversity on the root symbiont diversity

Can we reduce health inequalities? An analysis of the English strategy ( )

approximation results for the Traveling Salesman and related Problems

Easter bracelets for years

Dispersion relation results for VCS at JLab

Analysis of Boyer and Moore s MJRTY algorithm

Completeness of the Tree System for Propositional Classical Logic

Sparse multivariate factorization by mean of a few bivariate factorizations

A non-commutative algorithm for multiplying (7 7) matrices using 250 multiplications

Vibro-acoustic simulation of a car window

Thomas Lugand. To cite this version: HAL Id: tel

A Simple Proof of P versus NP

A new approach of the concept of prime number

On Newton-Raphson iteration for multiplicative inverses modulo prime powers

A non-linear simulator written in C for orbital spacecraft rendezvous applications.

L institution sportive : rêve et illusion

Multiple sensor fault detection in heat exchanger system

The FLRW cosmological model revisited: relation of the local time with th e local curvature and consequences on the Heisenberg uncertainty principle

A proximal approach to the inversion of ill-conditioned matrices

On the longest path in a recursively partitionable graph

Passerelle entre les arts : la sculpture sonore

Soundness of the System of Semantic Trees for Classical Logic based on Fitting and Smullyan

Hook lengths and shifted parts of partitions

On size, radius and minimum degree

From Unstructured 3D Point Clouds to Structured Knowledge - A Semantics Approach

All Associated Stirling Numbers are Arithmetical Triangles

New estimates for the div-curl-grad operators and elliptic problems with L1-data in the half-space

Stickelberger s congruences for absolute norms of relative discriminants

Differential approximation results for the Steiner tree problem

Exact Comparison of Quadratic Irrationals

STATISTICAL ENERGY ANALYSIS: CORRELATION BETWEEN DIFFUSE FIELD AND ENERGY EQUIPARTITION

Towards an active anechoic room

On Solving Aircraft Conflict Avoidance Using Deterministic Global Optimization (sbb) Codes

Predicting the risk of non-compliance to EMC requirements during the life-cycle

Approximation SEM-DG pour les problèmes d ondes elasto-acoustiques

Solving the neutron slowing down equation

Nonlocal computational methods applied to composites structures

Hardware Operator for Simultaneous Sine and Cosine Evaluation

The magnetic field diffusion equation including dynamic, hysteresis: A linear formulation of the problem

The core of voting games: a partition approach

Some explanations about the IWLS algorithm to fit generalized linear models

NILS: a Neutrality-based Iterated Local Search and its application to Flowshop Scheduling

On Symmetric Norm Inequalities And Hermitian Block-Matrices

Best linear unbiased prediction when error vector is correlated with other random vectors in the model

On a series of Ramanujan

Quasi-periodic solutions of the 2D Euler equation

Comment on: Sadi Carnot on Carnot s theorem.

Unfolding the Skorohod reflection of a semimartingale

Tropical Graph Signal Processing

A remark on a theorem of A. E. Ingham.

BERGE VAISMAN AND NASH EQUILIBRIA: TRANSFORMATION OF GAMES

A non-commutative algorithm for multiplying (7 7) matrices using 250 multiplications

Nodal and divergence-conforming boundary-element methods applied to electromagnetic scattering problems

On path partitions of the divisor graph

On infinite permutations

Comparison of Harmonic, Geometric and Arithmetic means for change detection in SAR time series

Unbiased minimum variance estimation for systems with unknown exogenous inputs

Improving the Jet Reconstruction with the Particle Flow Method; an Introduction

Basic concepts and models in continuum damage mechanics

On sl3 KZ equations and W3 null-vector equations

Water Vapour Effects in Mass Measurement

Entropies and fractal dimensions

Theoretical calculation of the power of wind turbine or tidal turbine

On the link between finite differences and derivatives of polynomials

Fast Computation of Moore-Penrose Inverse Matrices

An electronic algorithm to find the optimal solution for the travelling salesman problem

DEM modeling of penetration test in static and dynamic conditions

Cutwidth and degeneracy of graphs

Understanding SVM (and associated kernel machines) through the development of a Matlab toolbox

Low frequency resolvent estimates for long range perturbations of the Euclidean Laplacian

Characterization of the local Electrical Properties of Electrical Machine Parts with non-trivial Geometry

On production costs in vertical differentiation models

Lorentz force velocimetry using small-size permanent magnet systems and a multi-degree-of-freedom force/torque sensor

Parallel machine scheduling with precedence constraints and setup times

Question order experimental constraints on quantum-like models of judgement

RHEOLOGICAL INTERPRETATION OF RAYLEIGH DAMPING

Exogenous input estimation in Electronic Power Steering (EPS) systems

There are infinitely many twin primes 30n+11 and 30n+13, 30n+17 and 30n+19, 30n+29 and 30n+31

On Politics and Argumentation

A Context free language associated with interval maps

The sound power output of a monopole source in a cylindrical pipe containing area discontinuities

Primate cranium morphology through ontogenesis and phylogenesis: factorial analysis of global variation

Some approaches to modeling of the effective properties for thermoelastic composites

A Slice Based 3-D Schur-Cohn Stability Criterion

Teaching Reitlinger Cycles To Improve Students Knowledge And Comprehension Of Thermodynamics

Solution to Sylvester equation associated to linear descriptor systems

Numerical Modeling of Eddy Current Nondestructive Evaluation of Ferromagnetic Tubes via an Integral. Equation Approach

The beam-gas method for luminosity measurement at LHCb

A note on the computation of the fraction of smallest denominator in between two irreducible fractions

MODal ENergy Analysis

The Learner s Dictionary and the Sciences:

On The Exact Solution of Newell-Whitehead-Segel Equation Using the Homotopy Perturbation Method

Transcription:

Climbing discrepancy search for flowshop and jobshop scheduling with time-lags Wafa Karoui, Marie-José Huguet, Pierre Lopez, Mohamed Haouari To cite this version: Wafa Karoui, Marie-José Huguet, Pierre Lopez, Mohamed Haouari. Climbing discrepancy search for flowshop and jobshop scheduling with time-lags. ISCO 2010 - International Symposium on Combinatorial Optimization, Mar 2010, Hammamet, Tunisia. 36, pp.821 828, 2010, <10.1016/j.endm.2010.05.104>. <hal-00957670> HAL Id: hal-00957670 https://hal.archives-ouvertes.fr/hal-00957670 Submitted on 10 Mar 2014 HAL is a multi-disciplinary open access archive for the deposit and dissemination of scientific research documents, whether they are published or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers. L archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.

Climbing discrepancy search for flowshop and jobshop scheduling with time-lags Wafa Karoui 1,2 Marie-José Huguet 1 Pierre Lopez 1 Mohamed Haouari 2 1 CNRS ; LAAS ; 7 avenue du colonel Roche, F-31077 Toulouse, France and Université de Toulouse ; UPS, INSA, INP, ISAE ; LAAS ; F-31077 Toulouse, France and 2 Unité de recherche ROI ; Ecole Polytechnique de Tunisie, 2078 La Marsa, Tunisia Abstract This paper addresses the jobshop and the flowshop scheduling problems with minimum and maximum time lags. To solve this kind of problems, we propose adaptations of Climbing Discrepancy Search (CDS). We study various parameter settings. Computational experiments are provided to evaluate the propositions. Keywords: Scheduling, jobshop, flowshop, time lags, discrepancy. 1 Email:wakaroui,huguet,lopez@laas.fr 2 Email:mohamed.haouari@ept.rnu.tn

1 Introduction This paper addresses the jobshop and the flowshop scheduling problems with minimum and maximum time lags. The objective is to find a schedule that minimizes the makespan. Different definitions can be associated to time lags constraints. Initially, Mitten [5] proposes this concept. [2] defines it as time between the end of one operation and the start of another. In our case, we speak about two extra constraints added to the jobshop and flowshop problems, linking successive operations of a same job. Time between these operations is bounded by minimum and maximum time lags. These problems can be considered as a generalization of basic problems without time lags (NP-hard in the strong sense). With time lags, problems become at least as difficult as the basic ones. Few methods have been used to solve this type of problems. [1] proposed a memetic algorithm which obtained good results on jobshop instances with null minimum and maximum time lags (nowait problems). [3] also studied this problem including generalized resource constraint propagation rules and branch-and-bound. In this paper, we propose adaptations of Climbing Discrepancy Search (CDS) [6], to solve scheduling problems with time lags. The remainder of the paper is organized as follows. Section 2 introduces the principle of CDS and proposed adaptations for the studied problems. Section 3 synthesizes experiments carried out to evaluate the performance of CDS. Finally, Section 4 highlights the conclusions and some further works. 2 Discrepancy and learning for problems with time lags To solve problems with time lags, we propose a variant of Climbing Discrepancy Search method, a tree search principle for optimization based on discrepancy. This method starts from an initial solution proposed by a given heuristic and tries to improve it by increasing step by step the number of times we do not follow this solution (discrepancy). It then builds a neighborhood around this initial solution. Nodes with a number of discrepancies equal to 1 are first explored, then those having a number of discrepancies equal to 2, and so on. When a leaf with improved value of the objective function is found, the reference solution is updated, the number of discrepancy is reset to 0, and the process for exploring the neighborhood is restarted. To limit the tree search expansion, we put a stop condition as a timeout on the CPU time. To adjust our method to problems under study, we propose various parameter settings: discrepancy position in the search tree, heuristics to generate

the initial solution, learning mechanisms based on weights associated to jobs. The discrepancies counting is binary: the heuristic choice corresponds to zero discrepancies, all the other choices correspond to one discrepancy. 2.1 Discrepancy position We experiment to diverge alternatively, first at the top of the search tree, or first at its bottom. We try also to diverge only in a part of the tree, for example at the top, and to visit the other part without discrepancy at all. 2.2 Heuristic to generate the initial solution The heuristic selects a job and places all its operations in the order of their definition (routing). In the sequel, we call D the duration of a job equal to the sum of all its operation durations and DTL the sum of all its time lags durations. To obtain an initial solution, we can consider heuristics which sort jobs in the lexicographical order, as in [3], or in the ascending or descending order of D, DTL, D+DTL, and D/DTL. For a given problem, it is obvious that if we start the search from a good solution, we have more chance to get more improvements. 2.3 Learning based on weights on jobs Learning can guide the method and improve it. To adjust the proposed method to problems under study, we associate a weight to each job. At the beginning, all weights are identical. We can increase the weight W(J i ) associated to job J i in different ways. We studied three cases as shown in Figure 1 where operations of job J 3 cannot be placed in their first slack period on the associated machine. In Figure 1, (O ij,m k,d ij ) denotes the j th operation of job J i to execute on machine m k with duration d ij. TLmin and TLmax denote the minimum time lag and the maximum time lag, respectively. Case A) The job weight is increased every time one of its operations is not inserted in some slack period. In the example, the weight of J 3 is then 5. Case B) The job weight is increased every time one of its operations is not inserted in the first slack period on one of its associated machine. As we can see in the example, we increment the weight at most one time per machine (or operation). The maximal factor to get on a considered operation is equal to the number of machines (or operations). In the example, the weight of J 3 is then 3.

m 1 m 2 J 1 and J 2 already scheduled: 00000 11111 000 111 1111111 1111111 6 9 14 1111111 1111111 6 10 14 19 m 3 00000 111111111111 00000 11111 9 10 18 00 11 00 11 0000 1111 0000 1111 000 111 J 1 = {(O 11, m 1, 6), (O 12, m 2, 4), (O 13, m 3, 8)} J 2 = {(O 21, m 3, 9), (O 22, m 1, 5), (O 23, m 2, 5)} J 3 = {(O 31, m 2, 3), (O 32, m 1, 2), (O 33, m 3, 4)} O 31-O 32 : TLmin=0 and TLmax = 1 O 32-O 33 : TLmin=0 and TLmax = 0 m 1 m 2 m 3 J 3 insertion: 00000 1111100 11 1111111 000 111 00000 1111100 11 1111111 000 111 00 11 00 11 3 000 11100 000 11100 1111111 000 111 1111111 000 111 000 111 000 111 6 8 14 16 22 24 10 19 00000 111111111111 00000 11111 00000 111111111111 00000 1111100001111 18 22 24 Case A B C # of incrementations O 31 +2 +1 true associated O 32 +2 +1 true to the operation O 33 +1 +1 true Weights of the job J 3 +5 +3 +1 Fig. 1. Different ways to increment job weights

Case C) The job weight is increased every time one or more operations of this job are not placed in their first slack periods on the associated machine. In the example, the weight of J 3 is then 1. As we can see in the example, the weight is increased at most one time for the same job. Anyway, in addition of the manner to increase weights, we have to choose a way to count them. For example, we can consider the sum of all weights obtained by the job during the iteration (denoted in the following by Sum), or the maximum of all its weights (denoted by Max) as shown in Figure 2. In the next iterations, obtained weights are integrated in the basic heuristic to choose the job to schedule first. For instance, if the heuristic is based on the duration D of jobs, the heuristic using weights can be based on D/weights. J 1 J 2 J 3 W(J 3)=3 W(J 4)=2 W(J 2)=6 W(J 4)=1 W(J 4)=5 W(J 3)=4 W(J 4)=1 W(J 2)=1 J 2 J 3 J 4 Max 6 4 5 Sum 7 7 9 Fig. 2. Different ways to count job weights 2.4 Algorithm Algorithm 1 summarizes the principle of CDS method. Various parameter settings (in bold) offer many choices. The heuristic (line 3) can be adapted, as well as the parameters of CDS iteration (line 6). Div pos increment denotes the discrepancies position chosen to diverge first: either first at the top or first at the bottom. Case denotes the case A, B or C chosen to increment the discrepancies. Its value is equal to zero if we do not associate weights to jobs. Counting denotes the weight counting way, Max or Sum.

Algorithm 1 Climbing Discrepancy Search iteration 1 k 0 % k is the discrepancy number 2 k max n % n is the variable number 3 S init initial solution(heuristic) % S init is the initial solution 4 while k k max do 5 k k+1 % Generate k-discrepancies branches from S init 6 S init Generate(S init,k,div pos,case,counting) 7 if Best(S init,s init ) then 8 S init S init % Update the initial solution 9 k 0 10 end if 11 end while 3 Computational results We experiment our propositions on the data set of classical instances of scheduling problems proposed in [4]. For jobshops, we consider the Lawrence s instances {lax} X=1..20 in addition to Fisher and Thompson s instances, ft06 and ft10. For flowshops, we consider Carlier s instances {carx} X=5..8. The data set contains instances created from classical instances with minimum and maximum time lags generated with a minimum time lag (TLmin) equal to 0 and a maximum time lag (TLmax) equal to 0, 0.25, 0.5, 1, 2, 3, 5, and 10. Comparisons are done vs. results obtained by [1] which consider only the ft06 with TLmax of 0, 0.5, 1 and 2, {lax} X=1..20 with TLmax equal to 0, {lax} X=1..5 with TLmax equal to 0.5, 1 and 2, and {lax} X=6..8 with TLmax equal to 0.5, 1, 2 and 10, in addition to {carx} X=5..8 with TLmax equal to 0, 0.5, 1 and 2. Comparisons are also done vs. results obtained with ILOG-Scheduler for all considered instances. The tests about the heuristic to generate the initial solution show that descending D gives the best results. In Table 1, we can observe the number of instances on which every heuristic is the best. Table 1 Comparison of heuristics to generate an initial solution Order D DTL D+DTL D/DTL Lexicographical Descending 55 51 55 29 20 Ascending 5 12 5 22

For other tests, timeout is of 200 seconds. In general, the best known solutions (BKSs) are divided between [1], ILOG-Scheduler, and our propositions, without any regularity. Nevertheless, we claim the following: For the no-wait problems, [1] obtain the best results. For other instances, ILOG- Scheduler provides the best results except for cases referred in Table 2 where our propositions have the best results. In Table 2, WF refers to the version of CDS without weights which diverges at the top first. B-Sum, respectively B-Max, refers to case B for weighting jobs, as presented below, associated to the counting way Sum, respectively Max. Case B seems to be better than other cases of weighting jobs on considered instances. Table 2 Obtained results on some instances Instance T Lmax ILOG-Scheduler WF B-Sum B-Max la11 0.25 2058 1861 1965 1965 0.5 1945 1874 1874 1874 la12 0.25 1710 1682 1671 1656 la13 0.25 1906 1897 1892 1892 0.5 1804 1787 1808 1808 la14 0.25 2143 1823 2042 2042 0.5 2067 1964 1953 1953 1 1976 1772 1762 1762 2 1976 1612 1660 1660 3 1695 1567 1542 1542 5 1695 1452 1477 1477 la15 0.25 2371 2084 2043 2043 0.5 2217 2118 1910 1910 la17 0.25 1455 1410 1427 1460

4 Conclusions and further works In this paper, a Climbing Discrepancy Search (CDS) method is proposed to solve jobshop and flowshop scheduling problems with time lags. We studied various parameter settings for the proposed method, such as discrepancy positions, heuristic to generate the initial solution, and learning mechanisms based on weights associated to jobs. Proposed variants were tested on known benchmarks in the literature. The obtained results show that we have to study variants of CDS associated to classical scheduling techniques as heuristic insertion to determine upper bounds, and resource constraint propagation rules adaptation for lower bounds. References [1] Caumond, A., Lacomme, P., and Tchernev, N., A memetic algorithm for the jobshop with timelags, Computers and Operations Research 35 (2008), 2331 2356. [2] Dell amico, M., Shop problems with two machines and time lags, Operations Research 44(5) (1996), 777 787. [3] Huguet, M.-J., Artigues, C., Dugas, M., and Lopez P., Generalized constraint propagation for solving job shop problems with time lags, PMS 10. Submitted. [4] Lacomme, P., URL: http://www.isima.fr/~ lacomme/job Shop TL.html. [5] Mitten, L.G., Sequencing n jobs on two machines with arbitrary time lags, Management Science 9 (1958), 293 298. [6] Milano, M. and Roli, A., On the relation between complete and incomplete search: an informal discussion, Proceedings CPAIOR 02, Le Croisic, France (2002), 237 250.