Course Introduction. Scheduling: Terminology and Classification

Similar documents
ISE480 Sequencing and Scheduling

Resource-Constrained Project Scheduling

TORSCHE SCHEDULING TOOLBOX: LIST SCHEDULING

Preemptive Scheduling of Equal-Length Jobs in Polynomial Time

Parallel Machine and Flow Shop Models

Branch and Bound Method for Scheduling Precedence Constrained Tasks on Parallel Identical Processors

Resource Constrained Project Scheduling. Reservations and Timetabling

Scheduling Algorithms in Large Scale Distributed Systems

Scheduling. Job Shop Scheduling. Example JSP. JSP (cont.)

Flowshop Scheduling Problem Introduction

Exact and Approximation Algorithms for the Scheduling Tasks to Minimize the Number of Processors

Permutation, no-wait, no-idle flow shop problems

Research Notes for Chapter 2 *

A Tool for Comparing Resource-Constrained Project Scheduling Problem Algorithms

Flow Shop and Job Shop

The Job-Shop Problem: Old and New Challenges

Mathematical Tools for Engineering and Management

n Given: n set of resources/machines M := {M 1 n satisfies constraints n minimizes objective function n Single-Stage:

Extending MATLAB and GA to Solve Job Shop Manufacturing Scheduling Problems

An investigation on single machine total weighted tardiness scheduling problems

Algorithms and Data Structures. Algorithms and Data Structures. Algorithms and Data Structures. Algorithms and Data Structures

DM515 Spring 2011 Weekly Note 7

Job-shop scheduling with limited capacity buffers

Discrete Optimization. Lecture Notes 2

LEAST COST ROUTING ALGORITHM WITH THE STATE SPACE RELAXATION IN A CENTRALIZED NETWORK

Outline. Outline. Schedule and Material. 1. Course Introduction. 2. Combinatorial Optimization Combinatorial Problems Solution Methods. 3.

Mathematical Programming Formulations, Constraint Programming

Machine Learning for Software Engineering

DM204 - Scheduling, Timetabling and Routing

Solving Single Machine Scheduling Problem with Maximum Lateness Using a Genetic Algorithm

Outline. Modeling. Outline DMP204 SCHEDULING, TIMETABLING AND ROUTING. 1. Models Lecture 5 Mixed Integer Programming Models and Exercises

11. APPROXIMATION ALGORITHMS

ME 555: Distributed Optimization

CS 580: Algorithm Design and Analysis. Jeremiah Blocki Purdue University Spring 2018

Ruled Based Approach for Scheduling Flow-shop and Job-shop Problems

An Introduction to Real-Time Operating Systems: Scheduling Theory

Two models of the capacitated vehicle routing problem

MINIMIZATION OF THE MAKE-SPAN USING DYNAMIC PROGRAMMING APPROACH IN A MOUKA FOAM COMPANY Oghoghorie Oghenekevwe, Ukwuaba Samuel Ifeanyi

Algorithms and Data Structures

SCHEDULING ROTARY INJECTION MOLDING MACHINE. A thesis presented to. the faculty of. the Fritz J. and Dolores H Russ

Figure : Example Precedence Graph

Networks in economics and finance. Lecture 1 - Measuring networks

Admissible Search Methods for Minimum Penalty Sequencing of Jobs with Setup Times on One and Two Machines

Part A: Course Outline

Priority rule-based reconstruction for total weighted tardiness minimization of job-shop scheduling problem

Combinatorial Algorithms for Minimizing the Weighted Sum of Completion Times on a Single Machine

Algorithms and Data Structures, or

Optimization Problems Under One-sided (max, min)-linear Equality Constraints

LECTURE 3:CPU SCHEDULING

Heuristic Reactive Rescheduling Algorithms in the Advanced Scheduling Add-on for ERP

PRO1-I2O23 - Programming I

Size-reduction methods for the unrelated parallel machines problem and makespan criterion

EXERCISES SHORTEST PATHS: APPLICATIONS, OPTIMIZATION, VARIATIONS, AND SOLVING THE CONSTRAINED SHORTEST PATH PROBLEM. 1 Applications and Modelling

3 No-Wait Job Shops with Variable Processing Times

Real-Time Systems: An Introduction

NEW HEURISTIC APPROACH TO MULTIOBJECTIVE SCHEDULING

A simple exact separation algorithm for 2-matching inequalities

Solving Large Aircraft Landing Problems on Multiple Runways by Applying a Constraint Programming Approach

Introduction. Introduction. Heuristic Algorithms. Giovanni Righini. Università degli Studi di Milano Department of Computer Science (Crema)

11. APPROXIMATION ALGORITHMS

Designing Reusable and Run-Time Evolvable Scheduling Software

Assembly line balancing to minimize balancing loss and system loss

Complexity Theory VU , SS General Information. Reinhard Pichler

[Telchy, 4(11): November, 2015] ISSN: (I2OR), Publication Impact Factor: 3.785

GENETIC LOCAL SEARCH ALGORITHMS FOR SINGLE MACHINE SCHEDULING PROBLEMS WITH RELEASE TIME

Reinforcement Learning and Optimal Control. ASU, CSE 691, Winter 2019

EE3315 Internet Technology EE3315 Internet Technology Overview Slide 1

TKT-3526 Processor Design ECTS credits Periods III & IV (weeks 1-8 & 10-18) Lectures & Seminars: Thursdays 12-14

CS 372: Computational Geometry Lecture 10 Linear Programming in Fixed Dimension

BI-OBJECTIVE EVOLUTIONARY ALGORITHM FOR FLEXIBLE JOB-SHOP SCHEDULING PROBLEM. Minimizing Make Span and the Total Workload of Machines

Scheduling Parallel Tasks Approximation Algorithms

A mixed integer program for cyclic scheduling of flexible flow lines

FLEXIBLE ASSEMBLY SYSTEMS

Chapter 6: CPU Scheduling. Operating System Concepts 9 th Edition

Surrogate Gradient Algorithm for Lagrangian Relaxation 1,2

USING INSTANCE STATICTICS TO DETERMINE THE LOOKAHEAD PARAMETER VALUE IN THE ATC DISPATCH RULE

THE REGULAR PERMUTATION SCHEDULING ON GRAPHS

Integrating Mixed-Integer Optimisation & Satisfiability Modulo Theories

An Efficient Approximation for the Generalized Assignment Problem

PROPOSED METHODOLOGY FOR COMPARING SCHEDULE GENERATION SCHEMES IN CONSTRUCTION RESOURCE SCHEDULING. Jin-Lee Kim

11. APPROXIMATION ALGORITHMS

Introduction to Optimization Using Metaheuristics. Thomas J. K. Stidsen

Heuristic Reactive Rescheduling Algorithms in the Advanced Scheduling Add-on for ERP

Penalty Minimization in Scheduling a Set of Soft Real-Time Tasks

A Memetic Algorithm for Parallel Machine Scheduling

Preface MOTIVATION ORGANIZATION OF THE BOOK. Section 1: Basic Concepts of Graph Theory

A Comparison of Mixed-Integer Programming Models for Non-Convex Piecewise Linear Cost Minimization Problems

SOLVING THE JOB-SHOP SCHEDULING PROBLEM WITH A SIMPLE GENETIC ALGORITHM

Baseline Scheduling with ProTrack

Material Handling Tools for a Discrete Manufacturing System: A Comparison of Optimization and Simulation

Scheduling based on earliness and tardiness criteria in assembly job shops

Aperiodic Task Scheduling

An Algorithm for Solving the Traveling Salesman Problem

A Randomized Algorithm for Minimizing User Disturbance Due to Changes in Cellular Technology

Efficient Data Movement on the Grid

Clustering. Robert M. Haralick. Computer Science, Graduate Center City University of New York

CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 1: Introduction to Optimization. Instructor: Shaddin Dughmi

Optimal Manufacturing Scheduling for Dependent Details Processing

SCHEDULING WITH RELEASE TIMES AND DEADLINES ON A MINIMUM NUMBER OF MACHINES *

EDGE-COLOURED GRAPHS AND SWITCHING WITH S m, A m AND D m

Transcription:

Outline DM87 SCHEDULING, TIMETABLING AND ROUTING Lecture 1 Course Introduction. Scheduling: Terminology and Classification 1. Course Introduction 2. Scheduling Problem Classification Marco Chiarandini DM87 Scheduling, Timetabling and Routing 2 Outline Course Presentation 1. Course Introduction 2. Scheduling Problem Classification Communication media Blackboard (for private communications) Mail, Fora, Blog, Grades, Documents (photocopies), Web-site http://www.imada.sdu.dk/ ~marco/dm87/ Lecture plan, Syllabus, Links, Exam documents 30 hours of lectures + 10 hours practical exercises Schedule: 1. Lectures: Mondays 12:00-13:45, Thursdays 8:15-10:00 Weeks 5-10, 13-16 Last lecture (preliminary date): Thursday, April 17 2. Exam: June DM87 Scheduling, Timetabling and Routing 3 DM87 Scheduling, Timetabling and Routing 4

Course Content Review of Optimization Methods: Mathematical Programming, Constraint Programming, Heuristics Problem Specific Algorithms (Dynamic Programming, Branch and Bound) Introduction to Scheduling, Terminology, Classification. Single Machine Models Parallel Machine Models Flow Shops and Flexible Flow Shops Job Shops, Open Shops Introduction to Timetabling, Terminology, Classification Interval Scheduling, Reservations Educational Timetabling Workforce and Employee Timetabling Transportation Timetabling Introduction to Vehicle Routing, Terminology, Classification Capacited Vehicle Routing Vehicle Routing with Time Windows Final Assessment (10 ECTS) Evaluation Oral exam: 30 minutes + 5 minutes defense project meant to assess the base knowledge Group project: free choice of a case study among few proposed ones Deliverables: program + report meant to assess to ability to apply DM87 Scheduling, Timetabling and Routing 6 Course Material Useful Previous Knowledge for this Course Literature Text book: M.L. Pinedo, Planning and Scheduling in Manufacturing and Services; Springer Series in Operations Research and Financial Engineering, 2005. (388 DKK) Supplementary book: M.L. Pinedo, Scheduling: Theory, Algorithms, and Systems; 2nd ed., Prentice Hall, 2002. Supplementary book: P. Toth, D. Vigo, eds. The Vehicle Routing Problem, SIAM Monographs on Discrete Mathematics and Applications, Philadelphia, 2002. Supplementary Articles: will be indicated during the course Slides Class exercises (participatory) Algorithms and data structures Programming A and B Networks and Integer Programming Heuristics for Optimization Software Methodologies and Engineering DM87 Scheduling, Timetabling and Routing 7 DM87 Scheduling, Timetabling and Routing 8

Course Goals and Project Plan The problem Solving Cycle How to Tackle Real-life Optimization Problems: Formulate (mathematically) the problem The real problem Model the problem and recognize possible similar problems Search in the literature (that is, on the Internet) for: complexity results (is the problem NP -hard?) solution algorithms for simplified problem solution algorithms for original problem Design solution algorithms Experimental Analysis Modelling Quick Solution: Heuristics Mathematical Model Test experimentally with the goals of: configuring tuning parameters comparing studying the behavior (prediction of scaling and deviation from optimum) Algorithmic Implementation Design of good Solution Algorithms Mathematical Theory DM87 Scheduling, Timetabling and Routing 9 DM87 Scheduling, Timetabling and Routing 10 Outline Scheduling 1. Course Introduction 2. Scheduling Problem Classification Manufacturing Project planning Single, parallel machine and job shop systems Flexible assembly systems Automated material handling (conveyor system) Lot sizing Supply chain planning Services different algorithms DM87 Scheduling, Timetabling and Routing 11 DM87 Scheduling, Timetabling and Routing 12

Problem Definition Visualization Activities Constraints Objectives Resources Scheduling are represented by Gantt charts machine-oriented Problem Definition Given: a set of jobs J = {J 1,..., J n } that have to be processed by a set of machines M = {M 1,..., M m } Find: a schedule, i.e., a mapping of jobs to machines and processing times subject to feasibility and optimization constraints. M 1 M 2 M 3 J 1 J 2 J 3 J 4 J 5 J 1 J 2 J 3 J 4 J 5 J 1 J 2 J 3 J 4 J 5 0 5 10 15 20 time Notation: n, j, k jobs m, i, h machines or job-oriented... DM87 Scheduling, Timetabling and Routing 13 DM87 Scheduling, Timetabling and Routing 14 Data Associated to Jobs Processing time p ij Release date r j Due date d j (deadline) Weight w j A job J j may also consist of a number n j of operations O j1, O j2,..., O jnj and data for each operation. Associated to each operation a set of machines µ jl M Data that depend on the schedule (dynamic) Starting times S ij Completion time C ij, C j DM87 Scheduling, Timetabling and Routing 16

Problem Classification Machine Environment α 1 α 2 β 1... β 13 γ A scheduling problem is described by a triplet α β γ. α machine environment (one or two entries) β job characteristics (none or multiple entry) γ objective to be minimized (one entry) single machine/multi-machine (α 1 = α 2 = 1 or α 2 = m) parallel machines: identical (α 1 = P ), uniform p j /v i (α 1 = Q), unrelated p j /v ij (α 1 = R) multi operations models: Flow Shop (α 1 = F ), Open Shop (α 1 = O), Job Shop (α 1 = J), Mixed (or Group) Shop (α 1 = X) [R.L. Graham, E.L. Lawler, J.K. Lenstra, A.H.G. Rinnooy Kan (1979): Optimization and approximation in deterministic sequencing and scheduling: a survey, Ann. Discrete Math. 4, 287-326.] Single Machine Flexible Flow Shop (α = F F c) Open, Job, Mixed Shop DM87 Scheduling, Timetabling and Routing 17 DM87 Scheduling, Timetabling and Routing 18 Job Characteristics α 1 α 2 β 1... β 13 γ β 1 = prmp presence of preemption (resume or repeat) β 2 precedence constraints between jobs (with α = P, F acyclic digraph G = (V, A) β2 = prec if G is arbitrary β2 = {chains, intree, outtree, tree, sp-graph} β 3 = r j presence of release dates β 4 = p j = p precessing times are equal (β 5 = d j presence of deadlines) β 6 = {s-batch, p-batch} batching problem β 7 = {s jk, s jik } sequence dependent setup times Job Characteristics (2) α 1 α 2 β 1... β 13 γ β 8 = brkdwn machines breakdowns β 9 = M j machine eligibility restrictions (if α = P m) β 10 = prmu permutation flow shop β 11 = block presence of blocking in flow shop (limited buffer) β 12 = nwt no-wait in flow shop (limited buffer) β 13 = recrc Recirculation in job shop DM87 Scheduling, Timetabling and Routing 19 DM87 Scheduling, Timetabling and Routing 20

Objective α 1 α 2 β 1 β 2 β 3 β 4 γ Objective (always f(c j )) Lateness L j = C j d j Tardiness T j = max{c j d j, 0} = max{l j, 0} Earliness E j = max{d j C j, 0} Unit penalty U j = { 1 if Cj > d j 0 otherwise α 1 α 2 β 1 β 2 β 3 β 4 γ Makespan: Maximum completion C max = max{c 1,..., C n } tends to max the use of machines Maximum lateness L max = max{l 1,..., L n } Total completion time C j (flow time) Total weighted completion time w j C j tends to min the av. num. of jobs in the system, ie, work in progress, or also the throughput time Discounted total weighted completion time w j (1 e rc j ) Total weighted tardiness w j T j Weighted number of tardy jobs w j U j All regular functions (nondecreasing in C 1,..., C n ) except E i DM87 Scheduling, Timetabling and Routing 21 DM87 Scheduling, Timetabling and Routing 22 Exercises Other Objectives Non regular objectives α 1 α 2 β 1 β 2 β 3 β 4 γ Min w j E j + w j T j (just in time) Min waiting times Min set up times/costs Min transportation costs DM87 Scheduling, Timetabling and Routing 24

Exercises Solutions Distinction between sequence schedule scheduling policy Feasible schedule A schedule is feasible if no two time intervals overlap on the same machine, and if it meets a number of problem specific constraints. Optimal schedule A schedule is optimal if it minimizes the given objective. DM87 Scheduling, Timetabling and Routing 25 DM87 Scheduling, Timetabling and Routing 26 Classes of Schedules Complexity Hierarchy Nondelay schedule A feasible schedule is called nondelay if no machine is kept idle while an operation is waiting for processing. There are optimal schedules that are nondelay for most models with regular objective function. Active schedule A feasible schedule is called active if it is not possible to construct another schedule by changing the order of processing on the machines and having at least one operation finishing earlier and no operation finishing later. There exists for Jm γ (γ regular) an optimal schedule that is active. nondelay active active nondelay Semi-active schedule A feasible schedule is called semi-active if no operation can be completed earlier without changing the order of processing on any one of the machines. A problem A is reducible to B if a procedure for B can be used also for A. Ex: 1 C j 1 w j C j Complexity hierarchy describe relationships between different scheduling problems. Interest in characterizing the borderline: polynomial vs NP-hard problems DM87 Scheduling, Timetabling and Routing 27 DM87 Scheduling, Timetabling and Routing 28