Outline Problem Definition Related Works & Complexity MILP Formulation Solution Algorithms Computational Experiments Conclusions & Future Research 1/26.

Slides:



Advertisements
Similar presentations
Decision Support Andry Pinto Hugo Alves Inês Domingues Luís Rocha Susana Cruz.
Advertisements

Algorithm Design Methods Spring 2007 CSE, POSTECH.
G5BAIM Artificial Intelligence Methods
Ali Husseinzadeh Kashan Spring 2010
Hadi Goudarzi and Massoud Pedram
H EURISTIC S OLVER  Builds and tests alternative fuel treatment schedules (solutions) at each iteration  In each iteration:  Evaluates the effects of.
CPE555A: Real-Time Embedded Systems
Multi-Objective Optimization NP-Hard Conflicting objectives – Flow shop with both minimum makespan and tardiness objective – TSP problem with minimum distance,
ISE480 Sequencing and Scheduling Izmir University of Economics ISE Fall Semestre.
Genetic Algorithms Contents 1. Basic Concepts 2. Algorithm
Online Scheduling with Known Arrival Times Nicholas G Hall (Ohio State University) Marc E Posner (Ohio State University) Chris N Potts (University of Southampton)
S. J. Shyu Chap. 1 Introduction 1 The Design and Analysis of Algorithms Chapter 1 Introduction S. J. Shyu.
Spie98-1 Evolutionary Algorithms, Simulated Annealing, and Tabu Search: A Comparative Study H. Youssef, S. M. Sait, H. Adiche
1 IOE/MFG 543 Chapter 3: Single machine models (Sections 3.1 and 3.2)
Recent Development on Elimination Ordering Group 1.
Markov Decision Models for Order Acceptance/Rejection Problems Florian Defregger and Heinrich Kuhn Florian Defregger and Heinrich Kuhn Catholic University.
Genetic Algorithms for multiple resource constraints Production Scheduling with multiple levels of product structure By : Pupong Pongcharoen (Ph.D. Research.
MAE 552 – Heuristic Optimization Lecture 6 February 6, 2002.
1 IOE/MFG 543* Chapter 1: Introduction *Based in part on material from Izak Duenyas, University of Michigan, Scott Grasman, University of Missouri, Rakesh.
21st European Conference on Operational Research Algorithms for flexible flow shop problems with unrelated parallel machines, setup times and dual criteria.
1 IOE/MFG 543 Chapter 14: General purpose procedures for scheduling in practice Sections : Dispatching rules and filtered beam search.
MAE 552 – Heuristic Optimization Lecture 10 February 13, 2002.
1 IOE/MFG 543 Chapter 14: General purpose procedures for scheduling in practice Section 14.4: Local search (Simulated annealing and tabu search)
1 IOE/MFG 543 Chapter 7: Job shops Sections 7.1 and 7.2 (skip section 7.3)
1 Contents college 3 en 4 Book: Appendix A.1, A.3, A.4, §3.4, §3.5, §4.1, §4.2, §4.4, §4.6 (not: §3.6 - §3.8, §4.2 - §4.3) Extra literature on resource.
CURRENT TRENDS IN DETERMINISTIC SCHEDULING 1- Scheduling Theory 2- Search Algorithms 3- Scheduling Practice 1- Scheduling Theory 2- Search Algorithms 3-
Getting rid of stochasticity (applicable sometimes) Han Hoogeveen Universiteit Utrecht Joint work with Marjan van den Akker.
Using Simulated Annealing and Evolution Strategy scheduling capital products with complex product structure By: Dongping SONG Supervisors: Dr. Chris Hicks.
1 IOE/MFG 543 Chapter 10: Single machine stochastic models Sections 10.1 and 10.4 You may skip Sections
Introduction to Simulated Annealing 22c:145 Simulated Annealing  Motivated by the physical annealing process  Material is heated and slowly cooled.
Metaheuristics The idea: search the solution space directly. No math models, only a set of algorithmic steps, iterative method. Find a feasible solution.
Elements of the Heuristic Approach
Lecture 8: Dispatch Rules
Metaheuristics Meta- Greek word for upper level methods
HeteroPar 2013 Optimization of a Cloud Resource Management Problem from a Consumer Perspective Rafaelli de C. Coutinho, Lucia M. A. Drummond and Yuri Frota.
A multiobjective parallel machine problem considering eligibility and release and delivery times Manuel Mateo Departament Organització.
Scheduling and Scheduling Philosophies By Nilesh Sivaramakrishnan For IEM 5303.
Job-shop Scheduling n jobs m machines No recirculation – Jobs do not revisit the same machine (i, j) is referred to as an operation in which job j is processed.
Parsimony and searching tree-space Phylogenetics Workhop, August 2006 Barbara Holland.
MILP Approach to the Axxom Case Study Sebastian Panek.
An algorithm for a Parallel Machine Problem with Eligibility and Release and Delivery times, considering setup times Manuel Mateo Management.
Integer Programming Key characteristic of an Integer Program (IP) or Mixed Integer Linear Program (MILP): One or more of the decision variable must be.
Operational Research & ManagementOperations Scheduling Introduction Operations Scheduling 1.Setting up the Scheduling Problem 2.Single Machine Problems.
Scheduling policies for real- time embedded systems.
1 Simulated Annealing Contents 1. Basic Concepts 2. Algorithm 3. Practical considerations.
1 Exploring Custom Instruction Synthesis for Application-Specific Instruction Set Processors with Multiple Design Objectives Lin, Hai Fei, Yunsi ACM/IEEE.
The Fast Optimal Voltage Partitioning Algorithm For Peak Power Density Minimization Jia Wang, Shiyan Hu Department of Electrical and Computer Engineering.
1 Short Term Scheduling. 2  Planning horizon is short  Multiple unique jobs (tasks) with varying processing times and due dates  Multiple unique jobs.
Solving the Maximum Cardinality Bin Packing Problem with a Weight Annealing-Based Algorithm Kok-Hua Loh University of Maryland Bruce Golden University.
A Computational Study of Three Demon Algorithm Variants for Solving the TSP Bala Chandran, University of Maryland Bruce Golden, University of Maryland.
Outline Introduction Minimizing the makespan Minimizing total flowtime
Single-solution based metaheuristics. Outline Local Search Simulated annealing Tabu search …
Probabilistic Algorithms Evolutionary Algorithms Simulated Annealing.
Heuristic Methods for the Single- Machine Problem Chapter 4 Elements of Sequencing and Scheduling by Kenneth R. Baker Byung-Hyun Ha R2.
1 JOB SEQUENCING WITH DEADLINES The problem is stated as below. There are n jobs to be processed on a machine. Each job i has a deadline d i ≥ 0 and profit.
1 Simulated Annealing Contents 1. Basic Concepts 2. Algorithm 3. Practical considerations.
Raunak Singh (ras2192) IEOR 4405: Production Scheduling 28 th April 2009.
Intro. ANN & Fuzzy Systems Lecture 37 Genetic and Random Search Algorithms (2)
Product A Product B Product C A1A1 A2A2 A3A3 B1B1 B2B2 B3B3 B4B4 C1C1 C3C3 C4C4 Turret lathes Vertical mills Center lathes Drills From “Fundamentals of.
1 Contents 1. Basic Concepts 2. Algorithm 3. Practical considerations Simulated Annealing (SA)
Some Topics in OR.
Heuristic Optimization Methods
Design and Analysis of Algorithm
Subject Name: Operation Research Subject Code: 10CS661 Prepared By:Mrs
General Purpose Procedures Applied to Scheduling
Optimization with Meta-Heuristics
Multi-Objective Optimization
Planning and Scheduling in Manufacturing and Services
Topic 15 Job Shop Scheduling.
IOE/MFG 543 Chapter 14: General purpose procedures for scheduling in practice Sections : Dispatching rules and filtered beam search.
Presentation transcript:

Outline Problem Definition Related Works & Complexity MILP Formulation Solution Algorithms Computational Experiments Conclusions & Future Research 1/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

Problem definition a set of identical parallel machines M={M 1,..., M m } a set of jobs J={J 1,..., J n } described by: processing time – p j release time – r j deadline – D j due date – d j revenue – q j weight/cost– w j goal: selecting and scheduling jobs after release times before deadlines in order to maximize revenue Q j = q j – w j max{0, C j – d j } = q j – w j max{0, T j } for rejected jobs Q j = 0 2/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

M1M1 M2M2 J1J1 Problem definition make-to-order manufacturing 3/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue” r1r1 q1q1 J2J2 +q 2 J3J3 +(q 3 -w 3 T 3 ) J4J4 J5J5 +(q 4 -w 4 T 4 ) d1d1 D1D1 r5r5 D5D5 d5d5 r4r4 d4d4 D4D4 r2r2 d2d2 D2D2 r3r3 d3d3 D3D3 ΣQj=ΣQj= J5J5

Related Works & Complexity Weighted tardiness problems 1||Σw j T j is unary NP-hard (Lawler 1977; Lenstra, Rinnoy Kan, Brucker 1977) 1||ΣT j is binary NP-hard (Du, Leung 1990) Scheduling with deadlines and due dates e.g. Hariri, Potts 1994 e.g. Kethley, Allidae 2002 Job selection and scheduling problem with lateness penalty is NP-hard (Slotnik, Morton 1996; Ghosh 1997) with tardiness penalty is NP-hard (Slotnik, Morton 2007) with setup times (Bilgintürk, Oğuz, Salman 2007) Parallel machine problems 4/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

MILP Formulation 5/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

Solution Algorithms solution algorithm has to decide about: jobs acceptance jobs assignment to machines jobs scheduling on machines branch and bound algorithm list scheduling heuristic algorithm simulated annealing metaheuristic algorithm 6/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

List Scheduling Heuristic assigning to a free machine an available job whose release time r j is exceeded which can be completed before deadline D j which gives some revenue if completed after due date d j selected according to priority dispatching rule jobs which cannot be feasibly processed or which give no revenue are rejected 7/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

Priority Dispatching Rules static (at time zero) 8/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue” dynamic (at time t)

Branch and Bound Algorithm assigning a job to m+1 machines analyzing all possible partitions of jobs to machines machine M m+1 collects rejected jobs sequencing jobs on machines analyzing all feasible permutations of subsets of jobs on machines upper bound – current revenue increased by the total revenue from non-assigned jobs initial lower bound – the best heuristic solution of list scheduling algorithm with different rules 9/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

Simulated Annealing Algorithm generate initial solution S as the best solution of list scheduling algorithm with different rules set initial temperature T 0 while termination conditions not met do pick at random neighbor solution S’ improve solution S’ with embedded SA if Q(S’)>Q(S) then replace S with S’ else accept with probability exp(-ΔQ/T) if necessary apply diversification by fluctuating solution randomly and reheating the system decrease temperature geometrically after the given number of iterations 10/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

Solution representation & Move definition solution is represented as an assignment of jobs to m+1 machines (M m+1 collects rejected jobs) scheduling jobs on machines by an exact approach shifting – selecting 2 machines and shifting one job from the first to the second one interchanging – selecting 2 machines and interchanging 2 jobs between them probability of selecting dummy machine M m+1 influences the process of job acceptance/rejection 11/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

Computational Experiments algorithms implemented in Java (JDK 1.6 MAC OS X) under MAC OS X 10.5 (Leopard) randomly generated problem instances of various sizes and difficulty computational experiments on Intel Core 2 Duo 2.4GHz, RAM 2GB 667 MHz DDR2 12/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

Test Data large instances: m=5, 10, 15, 20 n / m =2, 5, 10, 15 (n  300) small instances: m=2, 3, 4 n / m =3, 4, 5 (n  20) 5 instances for pairs of parameters (m, n / m ) 4 variants of each instance (with various difficulty) r j  [0,  p j ],  =1, 3 d j  [r j +p j,  (r j +p j )], D j  [d j,  d j ],  =1.25, 1.5 w j  [5, 10]; p j  [10, 100], q j  [10, 100] 320 large instances, 72 small instances 13/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

List Scheduling Algorithm comparison of the best rule to optimal solutions 14/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

List Scheduling Algorithm 15/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

List Scheduling Algorithm 16/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

Tuning Process 32 settings of control parameters: number of iterations: 1000 initial temperature: the total revenue move: shifting, interchanging No of diversifications: 3, 5 No of moves with constant temperature: 5, 10 cooling factor: 0.8, 0.9 job rejection factor: 1 / (m+1), 2 / (m+1) 3 termination conditions: 75, n, 3n iterations without improvement initial temperature: maximum difference in criterion value for tested instances 17/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

Simulated Annealing Algorithm comparison to optimal solutions 18/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

Branch and Bound Algorithm computational time [sec.] 19/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

Simulated Annealing Algorithm No of iterations to the best solution [%] 20/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

Simulated Annealing Algorithm comparison of SA to the best priority dispatching rule 21/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

Simulated Annealing Algorithm improvement of initial solutions 22/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

Random Solutions comparison of random rule to optimal solutions 23/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

Simulated Annealing Algorithm comparison to random solutions 24/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

Simulated Annealing Algorithm No of iterations 25/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue” % of iterations to best solution

Conclusions & Future Research improving branch and bound algorithm – better bounds improving simulated annealing algorithm – move definitions using problem specific knowledge improving list scheduling algorithm – looking for efficient priority dispatching rules order acceptance and scheduling in the real-world problem concrete delivery problem on-line approach 26/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”