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

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

T S 2 P ACK: A Two-Level Tabu Search for the Three-dimensional Bin Packing Problem

Two-Dimensional Bin Packing Problem with Guillotine Restrictions

arxiv: v1 [cs.dm] 22 Jul 2011

An Efficient Meta-Heuristic for Multi-Dimensional Multi-Container Packing

Two dimensional bin packing problem

ROADEF / EURO 2018 Challenge Cutting Optimization Problem Description

A Hybrid Improvement Heuristic for the Bin Packing Problem

Research Incubator: Combinatorial Optimization. Dr. Lixin Tao December 9, 2003

An Ant Colony Optimization Heuristic for Solving the Two- Dimensional Level Packing Problems

Algorithms for Two-Dimensional Bin Packing and Assignment Problems

TWO-DIMENSIONAL PACKING PROBLEMS IN TELECOMMUNICATIONS. Silvano Martello. Received April 21, 2013 / Accepted May 20, 2013

Estimation of Wirelength

ON WEIGHTED RECTANGLE PACKING WITH LARGE RESOURCES*

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

Hybrid Constraint Programming and Metaheuristic methods for Large Scale Optimization Problems

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

An Empirical Investigation of Meta-heuristic and Heuristic Algorithms for a 2D Packing Problem

Algorithms for the Bin Packing Problem with Conflicts

CS 331: Artificial Intelligence Local Search 1. Tough real-world problems

Computational Complexity CSC Professor: Tom Altman. Capacitated Problem

Fundamentals of Integer Programming

ACO and other (meta)heuristics for CO

CAD Algorithms. Placement and Floorplanning

Parallel Computing in Combinatorial Optimization

Algorithm Design Methods. Some Methods Not Covered

Hybrid genetic algorithms for the three-dimensional multiple container packing problem

A Hybrid Genetic Algorithms and Tabu Search for Solving an Irregular Shape Strip Packing Problem

Using Genetic Algorithms to Solve the Box Stacking Problem

A simulated annealing algorithm for the vehicle routing problem with time windows and synchronization constraints

Three-Dimensional Container Loading: A Simulated Annealing Approach

A hybrid improvement heuristic for the bin-packing problem and its application to the multiprocessor scheduling problem

A Distributed Hybrid Algorithm for Composite Stock Cutting

A HYBRID HEURISTIC FOR THE CONSTRAINED TWO-DIMENSIONAL NON-GUILLOTINE ORTHOGONAL CUTTING PROBLEM

A recursive branch-and-bound algorithm for the rectangular guillotine strip packing problem

An exact approach for the vehicle routing problem with two-dimensional loading constraints

Solving Capacitated P-Median Problem by Hybrid K-Means Clustering and Fixed Neighborhood Search algorithm

Reduction and Exact Algorithms for the Disjunctively Constrained Knapsack Problem

An empirical investigation of meta-heuristic and heuristic algorithms for a 2D packing problem

Introduction. A very important step in physical design cycle. It is the process of arranging a set of modules on the layout surface.

An Improved Heuristic Recursive Strategy Based on Genetic Algorithm for the Strip Rectangular Packing Problem

One-Dimension Multi-Objective Bin Packing Problem using Memetic Algorithm

Networks: Lecture 2. Outline

One-Dimensional Heuristics Adapted for Two-Dimensional Rectangular Strip Packing G. Belov, G. Scheithauer, E. A. Mukhacheva

Solving a Real-World Glass Cutting Problem

Integer Programming and Network Modeis

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

Machine Learning for Software Engineering

A Course on Meta-Heuristic Search Methods for Combinatorial Optimization Problems

Solving the Hard Knapsack Problems with a Binary Particle Swarm Approach

One-Dimensional Heuristics Adapted for Two-Dimensional Rectangular Strip Packing G. Belov, G. Scheithauer, E.A. Mukhacheva

Optimization Techniques for Design Space Exploration

Column Generation Based Primal Heuristics

A Recursive Revised First Fit Algorithm for Cutting Stock Problem

A global search framework for practical three-dimensional packing with variable carton orientations

Polyhedral results for the Cardinality Constrained Multi-cycle Problem (CCMcP) and the Cardinality Constrained Cycles and Chains Problem (CCCCP)

Hardware-Software Codesign

Term Paper for EE 680 Computer Aided Design of Digital Systems I Timber Wolf Algorithm for Placement. Imran M. Rizvi John Antony K.

A Heuristic Based on Integer Programming for the Vehicle Routing Problem with Backhauls

Non-deterministic Search techniques. Emma Hart

TABU search and Iterated Local Search classical OR methods

A GENETIC ALGORITHM FOR TWO DIMENSIONAL STRIP PACKING PROBLEMS. Nelson Mandela Metropolitan University, South Africa

Research Article Single-Commodity Vehicle Routing Problem with Pickup and Delivery Service

Outline. TABU search and Iterated Local Search classical OR methods. Traveling Salesman Problem (TSP) 2-opt

Available online at ScienceDirect. Procedia Engineering 183 (2017 )

An ILS Algorithm for the Team Orienteering Problem with Variable Profit

Constructive procedures to solve 2-Dimensional Bin Packing Problems with Irregular Pieces and Guillotine Cuts

A decomposition problem of a natural number for a rectangular cutting-covering model

eocsa: An Algorithm for Burst Mapping with Strict QoS Requirements in IEEE e Mobile WiMAX Networks

APPROXIMATION ALGORITHMS FOR GEOMETRIC PROBLEMS

Introduction to Approximation Algorithms

Algorithm Design (4) Metaheuristics

Heuristic Algorithms for the Fixed-Charge Multiple Knapsack Problem

Complete Local Search with Memory

A hybrid algorithm for two-dimensional guillotine cutting problems. Brazil. Brazil.

Integrating Mixed-Integer Optimisation & Satisfiability Modulo Theories

Optimization of Process Plant Layout Using a Quadratic Assignment Problem Model

A Compressed Annealing Heuristic for the Traveling Salesman Problem with Time Windows

An Ant System with Direct Communication for the Capacitated Vehicle Routing Problem

Outline. Informed Search. Recall: Uninformed Search. An Idea. Heuristics Informed search techniques More on heuristics Iterative improvement

A Tabu Search Heuristic for the Generalized Traveling Salesman Problem

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

Open Vehicle Routing Problem Optimization under Realistic Assumptions

REM WORKING PAPER SERIES. Iterated Local Search Algorithm for the Vehicle Routing Problem with Backhauls and Soft Time Windows.

A Two-Dimensional Mapping for the Traveling Salesman Problem

An Improved Hybrid Genetic Algorithm for the Generalized Assignment Problem

Virtualization in Wireless Networks Feb. 23 th, 2009

Recent advances on two-dimensional bin packing problems

Pre-requisite Material for Course Heuristics and Approximation Algorithms

A Bi-directional Resource-bounded Dynamic Programming Approach for the Traveling Salesman Problem with Time Windows

Three-Dimensional Cylindrical Model for Single-Row Dynamic Routing

Seach algorithms The travelling salesman problem The Towers of Hanoi Playing games. Comp24412: Symbolic AI. Lecture 4: Search. Ian Pratt-Hartmann

7KH9HKLFOH5RXWLQJSUREOHP

CMSC 451: Lecture 22 Approximation Algorithms: Vertex Cover and TSP Tuesday, Dec 5, 2017

Solving the Capacitated Vehicle Routing Problem and the Split Delivery Using GRASP Metaheuristic

Algorithms & Complexity

Discrete Optimization. Lecture Notes 2

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

COMP 355 Advanced Algorithms Approximation Algorithms: VC and TSP Chapter 11 (KT) Section (CLRS)

5. Computational Geometry, Benchmarks and Algorithms for Rectangular and Irregular Packing. 6. Meta-heuristic Algorithms and Rectangular Packing

Transcription:

Weight Annealing Heuristics for Solving the Two-Dimensional Bin Packing Problem Kok-Hua Loh, Nanyang Technological University Bruce Golden, University of Maryland Edward Wasil, American University th ICS Conference Charleston, Jan 009

Outline of Presentation Introduction Concept of Weight Annealing One-Dimensional Bin Packing Problems Classic Bin Packing Two-Dimensional Bin Packing Problems Computational Results Conclusions

Weight Annealing Concept Assigning different weights to different parts of a combinatorial problem to guide computational effort to poorly solved regions Ninio and Schneider (005) Allowing both uphill and downhill moves to escape from a poor local optimum Tracking changes in objective function value and how well every region is being solved Applied to the Traveling Salesman Problem (Ninio and Schneider 005) Weight annealing led to mostly better results than simulated annealing

Solving the TSP with Weight Annealing 4 3 5 7 6 () Local Optimum (visit sequence:--3-4-5-6-7-) 3

One-Dimensional Bin Packing Problem A classic combinatorial optimization problem Pack a set of N = {,,, n} items, each with size t i, i=,,, n, into identical bins, each with capacity C Minimize the number of bins without violating the capacity constraints Large literature on solving this NP-hard problem 4

Outline of Weight Annealing Algorithm Construct an initial solution using first-fit decreasing Compute and assign weights to items to distort sizes according to the packing solutions of individual bins Perform local search by swapping items between all pairs of bins Carry out re-weighting based on the result of the previous optimization run Reduce weight distortion according to a cooling schedule 5

Neighborhood Search for Bin Packing Problem From a current solution, obtain the next solution by swapping items between bins with the following objective function (suggested by Fleszar and Hindi 00) p = i= Maximize f ( l ) i l i q i j= bin i load p = number of bins q i t j = t j = number of items in bin = size of item j i f = (5 + 3) + = 68 f = + + = new (5 3 ) 00 6

Neighborhood Search for Bin Packing Problem Swap (,) 0 3 4 Uphill move 4 3 5 5 5 5 Bin α Bin β Bin α (f = 6) ( f new = 64) Bin β Swap (,) 0 3 4 Uphill move 4 3 4 5 4 5 Bin α Bin β Bin α (f = 6) ( f new = 64) Bin β 7

Weight Annealing for Bin Packing Problem Weight of bin i ω i = + K r i residual capacity C li ri = C C = capacity l = load of bin i i An item in a not-so-well-packed bin, with large r i, will have its size distorted by a large amount No size distortions for items in fully packed bins K controls the size distortion, given a fixed r i 8

Weight Annealing for Bin Packing Problem Weight annealing allows downhill moves in a maximization problem Example C = 00, K= 0.5, 00 li ωi = + 0.5 00 ω =.05 ω =.087 transformation 9.5 (90) 87.00 (80) 0.50 (00) 9.44 (85) Bin Bin Transformed space f = 706.3 Original space f = 6335 Transformed space f new = 703. Original space f new = 635 Transformed space - uphill move Original space - downhill move 9

Weight Annealing for Bin Packing Problem Step 0. Step. Step. Initialization Parameters are K (scaling parameter), nloop, T (temperature), and Tred. Inputs are number of items (n), item sizes (t j ), bin capacity (C), and lower bound (LB). Construct an initial solution using first-fit decreasing procedure. Compute residual capacity r i. Improve the current solution. For i = to nloop Compute the weights w it = ( + Kr i ) T. Do for all pairs of bins Perform Swap (,0){ Evaluate feasibility and f(,0). If f(,0) 0 Move the item. Exit Swap(,0) and, Exit i loop if LB is reached. Exit Swap (,0) if no feasible move with f(,0) 0 is found. } Step 3. Perform Swap (,) Perform Swap (,) Perform Swap (,) T := T Tred End of i loop Output the results. Outputs are the number of bins used, the final distribution of items, and r i. 0

Two-Dimensional Bin Packing Problems Problem statement Allocate, without overlapping, n rectangular items to identical rectangular bins Pack items such that the edges of bins and items are parallel to each other Minimize the total number of rectangular bins (NP-hard) Classifications Guillotine cutting BP O G BP R G Free cutting BP O F BP R F Fixed Orientation (O), Guillotine Cutting (G) Allowable 90 Rotation (R), Guillotine Cutting (G) Fixed Orientation (O), Free Cutting (F) Allowable 90 Rotation (R), Free Cutting (F)

Two-Dimensional Bin Packing Problems (BP O G) Hybrid first-fit algorithm Phase One (one-dimensional horizontal level packing) Arrange the items in the order of non-increasing height Pack the items from left to right into levels; each level i with a maximum width W Pack an item (left justified) on the first level that can accommodate it; initiate a new level if no level can accommodate it Phase Two (one-dimensional vertical bin packing) Arrange the levels in the order of non-increasing height h i ; this is the height of the first item on the left Solve one-dimensional bin packing problems, each item i with size h i and bin size H

Two-Dimensional Bin Packing Problems (BP O G) Example: Arrange items in the order of non-increasing height 3

Two-Dimensional Bin Packing Problems (BP O G) An example of hybrid first-fit Phase - One Dimensional Horizontal Level Packing h 4 7 9 h 3 4 6 h 5 8 h 3 w 4

Two-Dimensional Bin Packing Problems (BP O G) Hybrid first-fit algorithm Phase One (one-dimensional horizontal level packing) Arrange the items in the order of non-increasing height Pack the items from left to right into levels; each level i with the same width W Pack an item (left justified) on the first level that can accommodate it; initiate a new level if no level can accommodate it Phase Two (one-dimensional vertical bin packing) Solve one-dimensional bin packing problems, each item i with size h i and bin size H 5

Two-Dimensional Bin Packing Problems (BP O G) An example of hybrid first-fit Phase - One Dimensional Horizontal Level Packing Phase - One Dimensional Vertical Bin Packing h 4 7 9 h 3 4 6 h 3 4 6 h 5 8 h 5 8 Bin h 3 h 4 7 9 H w h 3 w Bin 6

Two-Dimensional Bin Packing Problems (BP O G) Weakness of hybrid first-fit 7

Weight Annealing Algorithm(BP O G) Phase One (one-dimensional horizontal level packing) Construct an initial solution Arrange the items in the order of non-increasing height Swap items between levels to minimize the number of levels Objective function p p Maximize f = ( bi ) - ( Whi - Ai ) i= i= b w i ij = m i j= w ij = width of item j in level i mi = number of items in level i p = number of levels A = sum of item areas in level i i h i = height of level i W = bin width 8

Weight Annealing Algorithm(BP O G) p Example Maximize f = ( bi ) i= Level Level b = (5 + 3) = 64 b = =4 f = b + b = 68 (two levels) Level f = (5 + 3 + ) = 00 (one level) 9

Weight Annealing Algorithm(BP O G) p p Example = i Maximize f ( b ) - ( Wh - A ) i= i= i i 0

Weight Annealing Algorithm(BP O G) Phase Two (one-dimensional vertical bin packing) Construct initial solution with first-fit decreasing using level height h i as item sizes and bin height H Swap levels between bins to minimize the number of bins Objective function Maximize f = ( d ) q i= i d i = m i j= h ij h = height of level j in bin i ij mi = number of levels in bin i q = number of bins

Weight Annealing Algorithm(BP O G) Phase Three q Filling unused space in each level Maximize f = ( Ai ) i=

Weight Annealing Algorithm(BP O G) Phase Three q Filling unused space at the top of each bin Maximize f = ( Ai ) i= 3

Weight Annealing Algorithm(BP O G) Weight assignments Phase One W bi ωi = + Kri ri = W Phase Two H di ωi = + Kri ri = H Phase Three HW Ai ωi = + Kri ri = HW 4

Solution Procedures Tabu search by Lodi, Martello and Toth (999) for BP O G, BP R G, BP O F, BP R F Guided local search by Faroe, Pisinger and Zachariasen (003) for BP O F Exact algorithm by Martello and Vigo (998) for BP O F Constructive algorithm (HBP) by Boschetti and Mingozzi (003) for BP O F Set covering heuristics by Monaci and Toth (006) for BP O F 500 test instances in all for BP O F 5

Computational Results for BP O F Procedures Number of bins Running Time (sec) Tabu Search 7364 436. Guided Local Search 730 - Exact Algorithm 733 54.7 Constructive Algorithm (HBP) 765 345.9 Set Covering Heuristics 748 48.5 Weight Annealing 753 9.3 Best Lower Bound (LB): 773 bins Weight Annealing is.% above LB Timed out on several problems 6

Conclusions The application of weight annealing to bin packing and knapsack problems is new Weight annealing algorithms produce high-quality solutions Weight annealing algorithms are fast and competitive Easy to understand Simple to code Small number of parameters 7