Introduction to Job Shop Scheduling Problem Qianjun Xu Oct. 30, 2001.

Slides:



Advertisements
Similar presentations
Constraint Satisfaction Problems
Advertisements

Algorithm Design Methods (I) Fall 2003 CSE, POSTECH.
Algorithm Design Methods Spring 2007 CSE, POSTECH.
1 Constraint Satisfaction Problems A Quick Overview (based on AIMA book slides)
ICS-271:Notes 5: 1 Lecture 5: Constraint Satisfaction Problems ICS 271 Fall 2008.
Lecture 6: Job Shop Scheduling Introduction
GRAPH BALANCING. Scheduling on Unrelated Machines J1 J2 J3 J4 J5 M1 M2 M3.
Contents College 4 §4.1, §4.2, §4.4, §4.6 Extra literature on resource constrained project scheduling (will be handed out)
Optimal Rectangle Packing: A Meta-CSP Approach Chris Reeson Advanced Constraint Processing Fall 2009 By Michael D. Moffitt and Martha E. Pollack, AAAI.
Lecture 10: Integer Programming & Branch-and-Bound
5-1 Chapter 5 Tree Searching Strategies. 5-2 Satisfiability problem Tree representation of 8 assignments. If there are n variables x 1, x 2, …,x n, then.
Best-First Search: Agendas
THE SINGLE MACHINE EARLY/TARDY PROBLEM* PENG SI OW & THOMAS E. MORTON IE Paper Presentation A. İrfan Mahmutoğulları *Ow, P. S., & Morton, T. E. (1989).
Characterizing the Distribution of Low- Makespan Schedules in the Job Shop Scheduling Problem Matthew J. Streeter Stephen F. Smith Carnegie Mellon University.
6 - 1 § 6 The Searching Strategies e.g. satisfiability problem x1x1 x2x2 x3x3 FFF FFT FTF FTT TFF TFT TTF TTT.
Implicit Hitting Set Problems Richard M. Karp Harvard University August 29, 2011.
Constraint Satisfaction Problems
1 Methodological Basics. Layout and DesignKapitel 1 / 2 (c) Prof. Richard F. Hartl 1.1 Complexity  We solve problems in production and logistics by using:
Ant Colony Optimization Optimisation Methods. Overview.
1 Branch and Bound Searching Strategies 2 Branch-and-bound strategy 2 mechanisms: A mechanism to generate branches A mechanism to generate a bound so.
Ch 13 – Backtracking + Branch-and-Bound
Backtracking Reading Material: Chapter 13, Sections 1, 2, 4, and 5.
5-1 Chapter 5 Tree Searching Strategies. 5-2 Breadth-first search (BFS) 8-puzzle problem The breadth-first search uses a queue to hold all expanded nodes.
1 IOE/MFG 543 Chapter 7: Job shops Sections 7.1 and 7.2 (skip section 7.3)
Distributed Scheduling. What is Distributed Scheduling? Scheduling: –A resource allocation problem –Often very complex set of constraints –Tied directly.
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.
Priority Models Sashka Davis University of California, San Diego June 1, 2003.
Distributed Constraint Optimization * some slides courtesy of P. Modi
LP formulation of Economic Dispatch
Ant Colony Optimization: an introduction
Constraint Satisfaction Problems
Busby, Dodge, Fleming, and Negrusa. Backtracking Algorithm Is used to solve problems for which a sequence of objects is to be selected from a set such.
Distributed Constraint Optimization Michal Jakob Agent Technology Center, Dept. of Computer Science and Engineering, FEE, Czech Technical University A4M33MAS.
MCS312: NP-completeness and Approximation Algorithms
Solution to HW1. Problem 1 Need to find shortest path from a single source s to a single destination d. Have a condition in the Dijkstra algo loop which.
Artificial Intelligence CS482, CS682, MW 1 – 2:15, SEM 201, MS 227 Prerequisites: 302, 365 Instructor: Sushil Louis,
1 Short Term Scheduling. 2  Planning horizon is short  Multiple unique jobs (tasks) with varying processing times and due dates  Multiple unique jobs.
Outline Introduction Minimizing the makespan Minimizing total flowtime
1 Outline:  Optimization of Timed Systems  TA-Modeling of Scheduling Tasks  Transformation of TA into Mixed-Integer Programs  Tree Search for TA using.
1 Iterative Integer Programming Formulation for Robust Resource Allocation in Dynamic Real-Time Systems Sethavidh Gertphol and Viktor K. Prasanna University.
Implicit Hitting Set Problems Richard M. Karp Erick Moreno Centeno DIMACS 20 th Anniversary.
CSE 589 Part V One of the symptoms of an approaching nervous breakdown is the belief that one’s work is terribly important. Bertrand Russell.
Flow in Network. Graph, oriented graph, network A graph G =(V, E) is specified by a non empty set of nodes V and a set of edges E such that each edge.
G51IAI Introduction to Artificial Intelligence
Problems in Combinatorial Optimization. Linear Programming.
Graphs Definition: a graph is an abstract representation of a set of objects where some pairs of the objects are connected by links. The interconnected.
Introduction to Multiple-multicast Routing Chu-Fu Wang.
Introduction to NP Instructor: Neelima Gupta 1.
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.
Constraint Programming for the Diameter Constrained Minimum Spanning Tree Problem Thiago F. Noronha Celso C. Ribeiro Andréa C. Santos.
1 Job Shop Scheduling. 2 Job shop environment: m machines, n jobs objective function Each job follows a predetermined route Routes are not necessarily.
Biointelligence Lab School of Computer Sci. & Eng. Seoul National University Artificial Intelligence Chapter 8 Uninformed Search.
Production systems Scheduling of batch processing.
Scheduling with Constraint Programming
Aircraft Landing Problem
Algorithm Design Methods
Basic Project Scheduling
Basic Project Scheduling
Design and Analysis of Algorithm
Integer Programming (정수계획법)
Exam 2 LZW not on syllabus. 73% / 75%.
Integer Programming (정수계획법)
Algorithm Design Methods
Topic 15 Job Shop Scheduling.
Algorithm Design Methods
CS 8520: Artificial Intelligence
Major Design Strategies
Constraint Satisfaction Problems
Major Design Strategies
Algorithm Design Methods
Presentation transcript:

Introduction to Job Shop Scheduling Problem Qianjun Xu Oct. 30, 2001

Description of Job Shop Scheduling A finite set of n jobs Each job consists of a chain of operations A finite set of m machines Each machine can handle at most one operation at a time Each operation needs to be processed during an uninterrupted period of a given length on a given machine Purpose is to find a schedule, that is, an allocation of the operations to time intervals to machines, that has minimal length

Formal Definition of JSS Job set Machine set Operations Each operation has processing time On O define A, a binary relation represent a precedence between operations. If then v has to be performed before w. A induce the total ordering belonging to the same job; no precedence exist between operations of different jobs.

Formal Definition of JSS cont. A schedule is a function that for each operation v defines a start time S(v). A schedule S is feasible if The length of a schedule S is The goal is to find an optimal schedule, a feasible schedule of minimum length., min(len(S)).

Disjunctive Graph An instance of the JSS problem can be represented by means of a disjunctive graph G=(O, A, E). The vertices in O represent the operations The arcs in A represent the given precedence between the operations The edge in represent the machine capacity constraints Each vertex v has a weight, equal to the processing time

Example of Disjunctive Graph

Disjunctive Graph with Edge Orientations

Disjunctive Graph Cont. Finding an optimal feasible schedule is equivalent to finding an orientation E’ that minimizes the longest path length in the related digraph.

Why JSS Problem It is considered to be a good representation of the general domain and has earned a reputation for being notoriously difficult to solve JSS is considered to belong to the class of decision problems which are NP Lenstra et al(1977) Show that –3*3 problem –N*2 instance with no more than 3 operations per job –N*3 problem with no more than 2 operations per job –N*3 problem where all operations are of unit processing time Belong to the set of NP instances.

Methods to Solve JSS Mathematical Formulations: –mixed integer linear programming (1960) Branch and Bound Approximation Methods –Priority dispatch rules –Bottleneck based heuristics –Artificial intelligence(constraint satisfaction approach, neural networks) –Local search methods

Branch and Bound Using a dynamically constructed tree structure represents the solution space of all feasible sequences Search begins at topmost node and a complete selection is achieved once the lowest level node has been evaluated Each node at a level p in the search tree represent a partial sequence of p operations From an unselected node the branching operation determines the next set of possible nodes from which the search could progress The bounding procedure selects the operation which will continue the search and is based on an estimated LB and currently best achieved UB. IF at any node the estimated LB is found to be greater than the current best UB, this partial selection and all its subsequent descendants are disregarded.

Priority Dispatch Rules At each successive step all the operations which are available to be scheduled are assigned a priority and the operation with the highest priority is chosen to be sequenced. Usually several runs of PDRs are made in order to achieve valid results.

Constraint Satisfaction Approach Aiming at reducing the effective size of the search space by applying constraints that restrict the order in which variables are selected and the sequence in which possible values are assigned to each variable Constraint propagation Backtracking Variable heuristic Value heuristic

Neural Networks Hopfield networks Back-error propagation networks

Local Search Method Configurations: a finite set of solutions. Cost function to be optimised. Generation mechanism, generating a transition from one configuration to another. Neighborhood, N(x), is a function which defines a simple transition from a solution x to another solution by inducing a change. Selection of neighborhood: –chose the first lower cost neighbor found; –select the best neighbor in the entire neighborhood; –Choose the best of a sample of neighbors.

Summary The definition of JSS The disjunctive graph The methods to solve JSS