Controlling Open Stacks and Flow Time in a Cutting Process

Similar documents
Column Generation Based Primal Heuristics

Graph Coloring via Constraint Programming-based Column Generation

Optimal Crane Scheduling

Implementation of pattern generation algorithm in forming Gilmore and Gomory model for two dimensional cutting stock problem

Crew Scheduling Problem: A Column Generation Approach Improved by a Genetic Algorithm. Santos and Mateus (2007)

3 No-Wait Job Shops with Variable Processing Times

Branch-price-and-cut for vehicle routing. Guy Desaulniers

COLUMN GENERATION IN LINEAR PROGRAMMING

Algorithms for the Bin Packing Problem with Conflicts

Arc-Flow Model for the Two-Dimensional Cutting Stock Problem

Algorithms for Integer Programming

A Row-and-Column Generation Method to a Batch Machine Scheduling Problem

Introduction to Mathematical Programming IE406. Lecture 20. Dr. Ted Ralphs

February 19, Integer programming. Outline. Problem formulation. Branch-andbound

Fundamentals of Integer Programming

sbb COIN-OR Simple Branch-and-Cut

Parallel Machine and Flow Shop Models

Using Decomposition Techniques for Solving Large-Scale Capacitated Hub Location Problems with Single Assignment

L2: Algorithms: Knapsack Problem & BnB

Outline of the talk. Local search meta-heuristics for combinatorial problems. Constraint Satisfaction Problems. The n-queens problem

COT 6936: Topics in Algorithms! Giri Narasimhan. ECS 254A / EC 2443; Phone: x3748

Weight Annealing Heuristics for Solving the Two-Dimensional Bin Packing Problem

Outline. Column Generation: Cutting Stock A very applied method. Introduction to Column Generation. Given an LP problem

Column Generation: Cutting Stock

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

A Note on the Separation of Subtour Elimination Constraints in Asymmetric Routing Problems

Assigning Judges to Competitions Using Tabu Search Approach

Search Algorithms. IE 496 Lecture 17

Retiming. Adapted from: Synthesis and Optimization of Digital Circuits, G. De Micheli Stanford. Outline. Structural optimization methods. Retiming.

One-dimensional cutting stock model for joinery manufacturing

Integer Programming. Xi Chen. Department of Management Science and Engineering International Business School Beijing Foreign Studies University

GENERAL ASSIGNMENT PROBLEM via Branch and Price JOHN AND LEI

Pseudo-polynomial formulations for bin packing and cutting stock problems

Column Generation and its applications

VARIANTS OF THE CUTTING STOCK PROBLEM AND THE SOLUTION METHODS. M. M. Malik Abu Dhabi University Assistant Professor

Neighborhood Search: Mixing Gecode and EasyLocal++

Introduction to Algorithms. Lecture 24. Prof. Patrick Jaillet

ROBUSTNESS IN DYNAMIC CONSTRAINT SATISFACTION PROBLEMS. Laura Climent, Miguel A. Salido and Federico Barber. Received January 2011; revised May 2011

A Computational Study of Conflict Graphs and Aggressive Cut Separation in Integer Programming

Benders Decomposition

Multiple-Depot Integrated Vehicle and Crew Scheduling

Learning decomposable models with a bounded clique size

Cutting Stock with Binary Patterns: Arc-flow Formulation with Graph Compression

Bin Packing and Related Problems: General Arc-flow Formulation with Graph Compression

Other approaches. Marco Kuhlmann & Guido Tack Lecture 11

Manpower Planning: Task Scheduling. Anders Høeg Dohn

Branch-and-price algorithms for the Bi-Objective Vehicle Routing Problem with Time Windows

Hierarchical Clustering of Process Schemas

Outline. Optimales Recycling - Tourenplanung in der Altglasentsorgung

An evolutionary algorithm for the one-dimensional cutting stock. problem

MVE165/MMG631 Linear and integer optimization with applications Lecture 9 Discrete optimization: theory and algorithms

On Modularity Clustering. Group III (Ying Xuan, Swati Gambhir & Ravi Tiwari)

Implementing Scalable Parallel Search Algorithms for Data-Intensive Applications

Lecture 11: Maximum flow and minimum cut

Toward the joint design of electronic and optical layer protection

Conflict Graphs for Combinatorial Optimization Problems

Methods and Models for Combinatorial Optimization Exact methods for the Traveling Salesman Problem

Recursive column generation for the Tactical Berth Allocation Problem

Solutions for Operations Research Final Exam

Chapter 10 Part 1: Reduction

3 INTEGER LINEAR PROGRAMMING

Implicit Hitting Set Problems

Heuristics in MILP. Group 1 D. Assouline, N. Molyneaux, B. Morén. Supervisors: Michel Bierlaire, Andrea Lodi. Zinal 2017 Winter School

Introduction to Machine Learning

CSE 460. Today we will look at" Classes of Optimization Problems" Linear Programming" The Simplex Algorithm"

Solving lexicographic multiobjective MIPs with Branch-Cut-Price

CS Sorting Terms & Definitions. Comparing Sorting Algorithms. Bubble Sort. Bubble Sort: Graphical Trace

Outline. Alternative Benders Decomposition Explanation explaining Benders without projections. Primal-Dual relations

LECTURE 3:CPU SCHEDULING

Approximation Basics

Bi-Objective Optimization for Scheduling in Heterogeneous Computing Systems

The MIP-Solving-Framework SCIP

Introduction to optimization

CS 440 Theory of Algorithms /

Effects of flexible timetables in real-time scheduling of rail operations

Integer Programming Theory

Solving the Maximum Cardinality Bin Packing Problem with a Weight Annealing-Based Algorithm

Part II Process Management Chapter 6: Process Synchronization

Branch-and-Cut and GRASP with Hybrid Local Search for the Multi-Level Capacitated Minimum Spanning Tree Problem

Using the OPTMODEL Procedure in SAS/OR to Solve Complex Problems. Rob Pratt, Senior R&D Manager, SAS/OR

Integer Programming and Network Modeis

Integer Programming as Projection

Hybrid Constraint Programming and Metaheuristic methods for Large Scale Optimization Problems

Lagrangean relaxation - exercises

ON WEIGHTED RECTANGLE PACKING WITH LARGE RESOURCES*

Improved Gomory Cuts for Primal Cutting Plane Algorithms

Part 4. Decomposition Algorithms Dantzig-Wolf Decomposition Algorithm

Finding irreducible infeasible sets in inconsistent constraint satisfaction problems. Alain Hertz

15.083J Integer Programming and Combinatorial Optimization Fall Enumerative Methods

Homework 3. Constraint Satisfaction Problems, Optimization problems

Selected Topics in Column Generation

Backtracking. Chapter 5

New developments in the primal-dual column generation technique

Experimental Study on Speed-Up Techniques for Timetable Information Systems

Lecture 14: Linear Programming II

Multi-scale Techniques for Document Page Segmentation

Delay Minimization for Relay-based Cooperative Data Exchange with Network Coding

An Improved Hybrid Genetic Algorithm for the Generalized Assignment Problem

A mixed integer program for cyclic scheduling of flexible flow lines

On step fixed-charge hub location problem

Transcription:

6 th ESICUP Meeting Controlling Open Stacks and Flow Time in a Cutting Process C. Arbib, F. Marinelli and F. Pezzella marinelli@diiga.univpm.it Dip. Ingegneria Informatica, Gestionale e dell Automazione Università Politecnica delle Marche Valencia, Spain, March 25 27, 2009 EU Cooperative esearch Project SCOOP (contract n. 02998), coordinated by Università Politecnica delle Marche, Ancona, Italy

Outline Cutting plans, open stacks and flow time of part-types Cutting stock problem with bounded open stacks (LOSP) Flow time conditions A heuristic algorithm for controlling open stacks and flow time Some computational results

The D Cutting Stock Problem CSP: Small objects (parts) must be cut from large objects (stocks) in order to fulfill the requirement of parts and minimize the total trim loss. Input data w = the length of a single stock (a sufficient number of stocks is available) B = the set of part-types forming the production bill ( B = m). (w i, d i ) = the length and the demand of the i-th part-type, i B Output A set K of p distinct cutting patterns a,, a p and relevant activation levels x,, x p The cutting pattern a j = (a j,, a mj ) describes a way to cut parts out of a stock; a ij is the number of parts of type i yielded from a single stock by applying the cutting pattern a j. The activation level x j is the number of applications of the cutting pattern a j

Cutting Plans The cutting machine produces parts from stocks by sequentially applying cutting patterns cutting machine 2 2 22 Piles of finished parts Common practice Cutting Plan: order in which cutting patterns are applied Each cutting pattern is applied once, up to its activation level (cutting pattern changeover requires a time consuming machine set-up) Parts of the same type are in general stacked together. A new stack is open when a new part-type starts processing and is closed when the part-type is consolidated (homogeneous stacks help to minimize handling, breakage, and facilitate identification of part-types)

Open stacks as performance indicator The number of open stacks between cutting pattern i and cutting pattern i + ( i p ) measures the work-in-process MOSP: Minimize the as technological constraint sum of open stacks: is related to the work-in-process and to the flow time of part-types the maximum number of open stacks: indicates the minimum number of required out-buffers Because the cutting machine is equipped with a limited number s of out-buffers, at most s open stacks can be maintained throughout the cutting process LOSP: Minimize the trim loss under a given number s of open stacks

Heuristics drawbacks drawbacks First-cut-then-sequence Algorithms for LOSP CSP and MOSP are solved sequentially (M.G. de la Banda and P.J. Stukey, JoC 2007) The value of a MOSP optimal solution strongly depends from the set of cutting patterns and there are many different CSP optimal set of cutting patterns. Solutions can be infeasible for LOSP and it s not trivial how to make them feasible; Sequential approach A LOSP solution is constructed sequentially, pattern by pattern, controlling and limiting the number of open stacks (G. Belov and G. Scheithauer, JoC 2007) Local search Cutting patterns are built without any consideration on the part-type work-in-process The output sequence of part-type cannot be directly controlled An initial LOSP solution is constructed heuristically and then a local search is performed on the input sequence of part-types (F. Alvelos et al., 2008). Exact Algorithms are not present in the literature

LOSP and flow time of part-types Both performance indicators (trim loss and flow time) and technological constraints (bounded out-buffers) are important issues in a real manufacturing system First-sequence-then-cut approach. An output sequence of part-types is defined, and then 2. a particular cutting problem LOSP( ) is solved. A solution of LOSP( ) is a cutting plan K() that a) produce the sequence with at most s open stacks b) minimize trim loss and limit the flow time of part-types. Let CSP(s) be the cutting stock problem allowing at most s distinct part-type per pattern z z CSP ( s) LOSP LOSP ( ) z by column generation by local search on sequences by column generation and rounding

Step 2: the cutting problem LOSP() For any output sequence of part-types, the set K() of patterns can be partitioned into stages, the i-th stage consisting of the patterns needed to complete the i-th part-type in the sequence. Example s = Cutting patterns in K( ) Stage Stage 2 Stage Output sequence 2 4 5 6 7 8 2 2 4 2 2 4 2 2 2 B ={,,6} B 2 ={2,,5} B ={,4,5} Necessary feasibility condition K() is a feasible solution of LOSP() if no more than s distinct part-types are processed by each pattern and by patterns belonging to the same stage.

LOSP() and flow time of part-types Flow time condition Let (i) be the position of part-type i in the sequence. Only part-types in B t ={i B t (i) t + s } can be produced at stage t, t =,, m s + Example s = Cutting patterns in K( ) Stage Stage 2 Stage Output sequence 2 4 5 6 7 8 2 2 4 2 2 2 2 B ={, 2,} B 2 ={2,,4} B ={,4,5} Each part-type can be produced at most at s consecutive stages

A heuristic for LOSP() Master Problem min ms t kk t x k variable x k indicates the activation level of cutting pattern k ( i) tmax{, ( i) s} kk t a ik x k d i i B The model is solved by column generation x k 0 k K t, t,..., m s The pricing problem is an unbounded integer knapsack, i B i Pricing problem for stage t t ak There is a distinct pricing for each stage but each single pricing is easier because involves few (i.e., s) part-types max ib t a i i ib t w a i i w, a i 0, integer variable a i indicates the number of parts of types i in the cutting pattern

Step : a starting output sequence CSP(s) is a relaxation of LOSP the optimal set K of cutting patterns for the linear relaxation of CSP(s) gives CSP ( s) information on how part-types should be sequenced in order to obtain good LOSP solution satisfying the flow time condition: Part-types in the same pattern should be close to each other. K CSP () 2 4 5 6 2 4 5 6 the linear arrangement of nodes costs 4 4 2 6 5 the linear arrangement of nodes costs 6 4 2 6 5 A good linear arrangement of a graph where nodes are part-types and there is a clique for each cutting pattern of provides a good starting sequence K CSP ( s)

A double local search for LOSP Generate Solve LOSP() local search update the current best solution local search restart output the best solution found. z LOSP z LOSP 2. generate an output sequence of part-types; z =. repeat improved = false = best sequence in the neighborhood N () if z LOSP z LOSP z; ( ) z then 2 = best sequence in the neighborhood N 2 ( ) = 2 ; end if until improved z improved = true z LOSP 4. if then end if 5. goto 2. z z z LOSP ) LOSP ( 2 K LOSP ( ) = rounding( )

Structure of neighborhoods CSP is a relaxation of LOSP( ) part-types in a promising cutting pattern a * for the linear relaxation of CSP should be close to each other in the output sequence Neighborhood N ( ): put part-types of a * consecutively in the sequence and shift the subsequence in all the positions,, m a * + Neighborhood N 2 ( ): 2-swap between part-types in B and those in B, with a * B B Example: = 2 7 5 4 6 and a* = {2 4} N ( ) = 2 4 7 5 6 7 2 4 5 6 7 5 6 2 4 = 7 5 2 4 6 N 2 ( ) = with B a * 2 5 7 4 6 7 2 5 4 6 5 2 7 4 6

Computational results Sample features 2 groups of 20 random instances from G. Belov and G. Scheithauer, JoC 2007 s = 2,,4,6,0 m w w i d i group 20 0000 [00,7000] [,00] group 2 50 0000 [00,7000] [,00] Algorithm configuration Full exploration of 2-swap neighborhood, i.e., B B in N 2 ( ) 20 local search restart 600 seconds of allowed CPU time

Computational results s CSP gap (%) CSP (s ) gap (%) fist-sequence-than-cut vs. sequential #Cols CPU time (sec.) CPU Best Int (sec.) mean mean mean (max) mean mean (# limit ) mean flow time per part-type (#patterns) mean (max) group 2 2.29 0.90 0.9 ( 0.66 ) 62.4 6.6 5.4.87 (.5 ) group 0.9 0.7-0.4 ( -0.06 ) 455.0 22. 22.8 2.46 ( 4.85 ) group 4 0.07 0.07-0.24 ( -. ) 609.0 72.6 29.5.02 ( 6.5 ) group 6 0.00 0.00-0.9 ( -.80 ).8.7.6.7 ( 8.00 ) group 0 0.00 0.00-0.0 ( -0.69 ) 26. 0.2 0.0 4.96 (.0 ) group 2 2 2.65.09 0.5 ( -.4 ) 949.8 664.7 782..90 (.70 ) group 2 0.98 0.97 0. ( -.2 ) 565.8 0.8 ( 4 ) 274.8 2.6 ( 5.05 ) group 2 4 0.6 0.6 0.07 ( -0.48 ) 785.4 2948.6 ( ) 29.2 2.92 ( 6.50 ) group 2 6 0.0 0.0-0.04 ( -.6 ) 9760. 288. ( ) 424.4.92 ( 8.85 ) group 2 0 0.08 0.08-0.05 ( -0. ) 884.9 2597.6 ( ) 64.0 5.66 ( 4.5 ) CSP gap z z LOSP zcsp CSP 00 CSP(s) gap z LOSP z z CSP ( s) CSP ( s) 00

6 th ESICUP Meeting Controlling Open Stacks and Flow Time in a Cutting Process C. Arbib, F. Marinelli and F. Pezzella marinelli@diiga.univpm.it Dip. Ingegneria Informatica, Gestionale e dell Automazione Università Politecnica delle Marche Valencia, Spain, March 25 27, 2009 EU Cooperative esearch Project SCOOP (contract n. 02998), coordinated by Università Politecnica delle Marche, Ancona, Italy