Inventory Routing and On-line Inventory Routing File Format



Similar documents
Automated SEO. A Market Brew White Paper

Research Paper Business Analytics. Applications for the Vehicle Routing Problem. Jelmer Blok

Two objective functions for a real life Split Delivery Vehicle Routing Problem

Standardization and Its Effects on K-Means Clustering Algorithm

SOLVING INVENTORY ROUTING PROBLEMS USING LOCATION BASED HEURISTICS

Strategic planning in LTL logistics increasing the capacity utilization of trucks

Outline. NP-completeness. When is a problem easy? When is a problem hard? Today. Euler Circuits

The Goldberg Rao Algorithm for the Maximum Flow Problem

Cost Models for Vehicle Routing Problems Stanford Boulevard, Suite 260 R. H. Smith School of Business

The Trip Scheduling Problem

Branch-and-Price Approach to the Vehicle Routing Problem with Time Windows

A Logistic Management System Integrating Inventory Management and Routing

A Scatter Search Algorithm for the Split Delivery Vehicle Routing Problem

Virtual Landmarks for the Internet

HYBRID GENETIC ALGORITHMS FOR SCHEDULING ADVERTISEMENTS ON A WEB PAGE

Utility Software II lab 1 Jacek Wiślicki, jacenty@kis.p.lodz.pl original material by Hubert Kołodziejski

A Hybrid Heuristic Method for the Compressed Natural Gas (CNG) Truck Routing Problem with Fueling Stations. I-NUF 2015, Long Beach

A Branch-Cut-and-Price Approach to the Bus Evacuation Problem with Integrated Collection Point and Shelter Decisions

A cluster-based optimization approach for the multi-depot heterogeneous fleet vehicle routing problem with time windows

Chapter 1. Introduction

Hybrid Heterogeneous Electric Fleet Routing Problem with City Center Restrictions

A MILP Scheduling Model for Multi-stage Batch Plants

A Case Study of Joint Online Truck Scheduling and Inventory Management for Multiple Warehouses

LUCA BERTAZZI CURRICULUM VITAE

Operations and Supply Chain Management Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras

INTEGRATED OPTIMIZATION OF SAFETY STOCK

A Non-Linear Schema Theorem for Genetic Algorithms

Routing in Line Planning for Public Transport

New Exact Solution Approaches for the Split Delivery Vehicle Routing Problem

Chapter Load Balancing. Approximation Algorithms. Load Balancing. Load Balancing on 2 Machines. Load Balancing: Greedy Scheduling

Applied Algorithm Design Lecture 5

npsolver A SAT Based Solver for Optimization Problems

SECTION 1-6 Quadratic Equations and Applications

Transportation. Transportation decisions. The role of transportation in the SC. A key decision area within the logistics mix

Vehicle Routing and Scheduling. Martin Savelsbergh The Logistics Institute Georgia Institute of Technology

INTEGER PROGRAMMING. Integer Programming. Prototype example. BIP model. BIP models

Going Big in Data Dimensionality:

MACM 101 Discrete Mathematics I

Chapter 4: Vector Autoregressive Models

VEHICLE ROUTING PROBLEM

! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. !-approximation algorithm.

Simple Linear Regression Inference

MM - Managing Material Master Data

A Library of Vehicle Routing Problems

Revenue Management for Transportation Problems

Data Quality Mining: Employing Classifiers for Assuring consistent Datasets

A Production Planning Problem

Evaluation of Complexity of Some Programming Languages on the Travelling Salesman Problem

MS ACCESS DATABASE DATA TYPES

Computer Algorithms. NP-Complete Problems. CISC 4080 Yanjun Li

Exercise 4 Learning Python language fundamentals

! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. #-approximation algorithm.

Optimising Patient Transportation in Hospitals

CONTINUED FRACTIONS AND FACTORING. Niels Lauritzen

Modeling and Solving the Capacitated Vehicle Routing Problem on Trees

Jena Research Papers in Business and Economics

A hierarchical multicriteria routing model with traffic splitting for MPLS networks

Social Media Mining. Data Mining Essentials

Introduction to Error Analysis

Using Ant Colony Optimization for Infrastructure Maintenance Scheduling

Discussion on the paper Hypotheses testing by convex optimization by A. Goldenschluger, A. Juditsky and A. Nemirovski.

Live Learning Center. Solution-Driven Integrated Learning Paths. Make the Most of Your Educational Experience

Fast Sequential Summation Algorithms Using Augmented Data Structures

Solving a New Mathematical Model for a Periodic Vehicle Routing Problem by Particle Swarm Optimization

Modelling and Big Data. Leslie Smith ITNPBD4, October Updated 9 October 2015

Chapter 7. Production, Capacity and Material Planning

Math Review. for the Quantitative Reasoning Measure of the GRE revised General Test

OPTIMIZATION OF FLEET DESIGN FOR CYCLIC INVENTORY ROUTING PROBLEMS

Un algorithme génétique hybride à gestion adaptative de diversité pour le problème de tournées de véhicules et ses variantes

DATE PERIOD. Estimate the product of a decimal and a whole number by rounding the Estimation

A Library of Local Search Heuristics for the Vehicle Routing Problem

Answer Key for California State Standards: Algebra I

VENDOR MANAGED INVENTORY

A Brief Study of the Nurse Scheduling Problem (NSP)

Sample Problems. Practice Problems

5 INTEGER LINEAR PROGRAMMING (ILP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1

Issues in Information Systems Volume 14, Issue 2, pp , 2013

MapInfo SpatialWare Version 4.6 for Microsoft SQL Server

2.3 Convex Constrained Optimization Problems

Blending petroleum products at NZ Refining Company

Charles Fleurent Director - Optimization algorithms

Converting Units of Measure Measurement

Load Planning for Less-than-truckload Carriers. Martin Savelsbergh

Solution of Linear Systems

How do you compare numbers? On a number line, larger numbers are to the right and smaller numbers are to the left.

Chapter 2 Optimization Problems

(Refer Slide Time: 02:17)

Clustering and scheduling maintenance tasks over time

Transcription:

HELMUT-SCHMIDT-UNIVERSITÄT UNIVERSITÄT DER BUNDESWEHR HAMBURG LEHRSTUHL FÜR BETRIEBSWIRTSCHAFTSLEHRE, INSBES. LOGISTIK-MANAGEMENT Prof. Dr. M. J. Geiger Arbeitspapier / Research Report RR-11-01-01 January 2011 ISSN 2192-0826 Inventory Routing and On-line Inventory Routing File Format Marc Sevaux and Martin Josef Geiger

Contents 1 The file format 1 1.1 The specification part............................ 2 1.1.1 NAME : <string>........................... 2 1.1.2 TYPE : <string>........................... 2 1.1.3 COMMENT : <string>......................... 2 1.1.4 OBJECTIVE : <string>....................... 2 1.1.5 COST_FUNCTION : <string>..................... 3 1.1.6 DIMENSION : <integer>....................... 3 1.1.7 CAPACITY : <integer>....................... 3 1.1.8 PERIODS : <integer>........................ 3 1.1.9 EDGE_WEIGHT_TYPE : <string>................... 3 1.1.10 NODE_COORD_TYPE : <string>................... 4 1.1.11 EOF :................................ 4 1.2 The data part................................ 4 1.2.1 NODE_COORD_SECTION :...................... 4 1.2.2 DEPOT_SECTION :.......................... 4 1.2.3 MULTIPLE_PERIOD_DEMAND_SECTION :.............. 5 1.2.4 INVENTORY_LEVEL_SECTION :................... 5 1.2.5 INITIAL_INVENTORY_SECTION :.................. 5 1.2.6 DEPOT_SUPPLY_SECTION :..................... 5 1.2.7 FORECAST_DEMAND_SECTION :................... 5 2 The distance functions 6 2.1 Euclidean distance (L 2 -metric)....................... 6 3 Access 7 References 7 I

Abstract This document presents a simple extension of the TSPLIB file format to serve our needs in the Inventory Routing Problem types. Instead of creating a new file format or putting ASCII files online with a simple description, we have chosen to extend the TSPLIB file format. This document is an extension of the TSPLIB file format description proposed in [1] to be used for the Inventory Routing Problem and variants. No repetition of the information in [1] is given, unless strictly necessary, but the present file is self-contained to describe our instances. TSPLIB is a library of sample instances for the TSP (and related problems) from various sources and of various types. In addition to the following problem classes TSP, HCP, ATSP, SOP and CVRP described in [1], we have created two new classes called: Inventory routing problem (IRP) We are given n 1 nodes, one depot and distances from the nodes to the depot, as well as between nodes. For delivery to the nodes, trucks with identical capacities are available. The problem is defined for a known a finite horizon 1...H. For each time period, each node has a demand. Each node has also a maximum inventory level. An initial stock is also associated with the node. Potentially, for the depot, an initial stock and a production for all periods might be given. The problem is to find tours for the trucks that satisfy the node demands over the whole horizon without violating the truck capacity constraint and the node maximum inventory level constraint. The number of trucks is not specified. Each tour visits a subset of the nodes and starts and terminates at the depot. On-line inventory routing problem (OIRP) The problem definition is the same as above except for the demand, but the data is more complex. Instead of having a complete overview of the demand for the whole horizon, at the beginning of each time period, and for each node, the user will be given a forecast of the forthcoming demand and the precise demand for the current period. This forecast is rather accurate but not precise enough to calculate the exact demand of the next period. The forecast is represented by several figures corresponding to the expected cumulative demand of a range of consecutive periods starting from the current period. For example, 3 figures can be given, representing the expected cumulative demand of the next 5 periods, the expected cumulative demand of the next 20 periods, and the expected cumulative demand of the next 60 periods. 1 The file format Each file consists of a specification part and a data part. The specification part contains information on the file format and on its contents. The data part contains explicit data. 1

1.1 The specification part All entries in this section are of the form <keyword> : <value>, where<keyword> denotes an alphanumerical keyword and <value> denotes alphanumerical or numerical data. The terms <string>, <integer> and <real > denote character string, integer or real data, respectively. The order of specification of the keywords in the data file is arbitrary (in principle), but must be consistent, i. e., whenever a keyword is specified, all necessary information for the correct interpretation of the keyword has to be known. Below we give a list of all available keywords. 1.1.1 NAME : <string> Identifies the data file. 1.1.2 TYPE : <string> Specifies the type of the data. Possible types are IRP Inventory routing problem data OIRP On-line inventory routing problem data 1.1.3 COMMENT : <string> Additional comments (usually the name of the contributor or creator of the problem instance is given here). 1.1.4 OBJECTIVE : <string> Since the problem is vast, we would like to allow different people to contribute, and we have let the opportunity here to choose their own objective function. Possible objective functions are ROUTING Minimise the total routing cost (sum of routing costs/tour lengths for all periods). BI_OBJECTIVE Both the total routing cost and the total inventory cost are taken into account. Inventory cost is the sum of inventory levels at each node at the end of each period. SPECIAL The cost function is described later in the file in the section named COST_FUNCTION. 2

1.1.5 COST_FUNCTION : <string> If the OBJECTIVE specification is SPECIAL, this section should describe the special cost function used (e. g. a linear combination of different objectives). 1.1.6 DIMENSION : <integer> For a TSP or ATSP, the dimension is the number of its nodes. For a CVRP, IRP or OIRP, it is the total number of nodes and depots. For a TOUR file it is the dimension of the corresponding problem. 1.1.7 CAPACITY : <integer> Specifies the truck capacity in a CVRP, IRP or OIRP. 1.1.8 PERIODS : <integer> Specifies the number of periods in an IRP or OIRP 1.1.9 EDGE_WEIGHT_TYPE : <string> Specifies how the edge weights (or distances) are given. The values are EUC_2D_INT Weights are Euclidean distances in 2-D (integer rounding) EUC_2D_DBL Weights are Euclidean distances in 2-D (real value) EUC_2D_1DD Weights are Euclidean distances in 2-D (real value but rounded with 1 decimal digits) Note that the original EUC_2D has been replaced by the EUC_2D_INT. Up to now we have used only the EUC_2D specification which is the most commonly used for CVRP and IRP problem types. Some of the sections used in the original paper are not relevant if we limited our usage to the EUC_2D specification. We refer the reader to the original paper [1] for a complete description of other sections. 3

1.1.10 NODE_COORD_TYPE : <string> Specifies whether coordinates are associated with each node (which, for example may be used for either graphical display or distance computations). The values are TWOD_COORDS Nodes are specified by coordinates in 2-D THREED_COORDS Nodes are specified by coordinates in 3-D NO_COORDS The nodes do not have associated coordinates Since the default value is NO_COORDS, it is necessary to choose the right option here, especially for the EDGE_WEIGHT_TYPE specification compatibility. 1.1.11 EOF : Terminates the input data. This entry is optional. 1.2 The data part Depending on the choice of specifications some additional data may be required. This data is given in corresponding data sections following the specification part. Each data section begins with the corresponding keyword. The length of the section is either implicitly known from the format specification, or the section is terminated by an appropriate end-of-section identifier. 1.2.1 NODE_COORD_SECTION : Node coordinates are given in this section. Each line is of the form <integer> <real ><real > if NODE_COORD_TYPE is TWOD_COORDS. Note that for some instances, coordinates are integer. Think about automatic conversion while reading the file. The integers give the number of the respective nodes. associated x and y coordinates. The real numbers give the 1.2.2 DEPOT_SECTION : Contains a list of possible alternate depot nodes.this list is terminated by a 1. 4

1.2.3 MULTIPLE_PERIOD_DEMAND_SECTION : The demands of all nodes of an IRP are given in the form (per line) <integer> <integer> <integer> The first integer specifies a node number, the second the period identifier, and the third its demand for the specified period. The depot nodes should not occur in this section since their demand is null for all periods. 1.2.4 INVENTORY_LEVEL_SECTION : The maximum inventory level at all nodes of an IRP are given in the form (per line) <integer> <integer> The first integer specifies a node number and the second the maximum inventory level. Please note that this inventory level is a hard constraint at any time. It means that a customer with a maximum inventory level of 100 and 50 units in stock cannot be delivered 60 units in a period, even if its consumption for the period is 20. 1.2.5 INITIAL_INVENTORY_SECTION : The initial inventory level at all nodes and at the depot of an IRP are given in the form (per line) <integer> <integer> The first integer specifies a node number (or the depot identifier), and the second integer the initial inventory level. 1.2.6 DEPOT_SUPPLY_SECTION : To be compatible with [2], we have added this special section which specifies the number of units that are produced at the depot. The units produced at each period of an IRP are given in the form (per line) <integer> <integer> The first integer specifies a period identifier and the second integer the number of units produced. Note that the unit produced in period t cannot be used before period t +1. 1.2.7 FORECAST_DEMAND_SECTION : If the TYPE specification is OIRP, then this section should provide information on the demand forecast. 5

The forecast at all nodes and for all periods are given in the form (per line) <integer> <integer> <integer> <integer> The first integer specifies a node number, the second integer the period index, the third integer the number of periods in the forecast,and the last integer the expected cumulative demand for the number of periods. For example, an entry like 3 12 5 150 indicates that for node 3 at period 12 and for the next five periods including the current period (so for periods 12 to 16), the expected cumulative demand is 150. It does not mean that the demand will be 30 in each of the periods 12 to 16! Note that the forecast might be wrong, but we hope that the people given the forecast are good enough not to deviate too much from reality. 2 The distance functions For the various choices of EGDE_WEIGHT_TYPE, we now describe the computations of the respective distances. In each case we give a (simplified) C-implementation for computing the distances from the input coordinates. In some cases, distances are required to be integral. In that case, we round to the nearest integer (as rounding is defined mathematically if x.5 rounds up to x +1, otherwise rounds down to x). Below we have named the rounding function nint. 2.1 Euclidean distance (L 2 -metric) For edge weight type EUC_2D_INT, floating point coordinates must be specified for each node. Let x[i] and y[i] be the coordinates of node i. In the 2-dimensional case EUC_2D_INT, the distance between two points i and j is computed as follows: xd = x[i] - x[j]; yd = y[i] - y[j]; dij = nint( sqrt( xd*xd + yd*yd) ) For edge weight type EUC_2D_DBL, the distance between two points i and j is computed as follows: xd = x[i] - x[j]; yd = y[i] - y[j]; dij = sqrt( xd*xd + yd*yd) For edge weight type EUC_2D_1DD, the distance between two points i and j is computed 6

as follows: xd = x[i] - x[j]; yd = y[i] - y[j]; dij = 1/10*floor(10*sqrt( xd*xd + yd*yd)) This distance measure has been used in [3] but the user should be aware that this function really depends on the coordinate values. The function sqrt is the C square rootfunction andfloor is the classical mathematical floor function that rounds down real numbers to the integer below. 3 Access IRP and OIRP instances are available at logistik.hsu-hh.de/irp References [1] G. Reinelt. Tsplib95. Internal report, Universität Heidelberg, Heidelberg, Germany, 1995. http://neo.lcc.uma.es/radi-aeb/webvrp/data/doc.ps. [2] C. Archetti, L. Bertazzi, A. Hertz, and M-G. Speranza. A hybrid heuristic for an inventory-routing problem. INFORMS Journal on Computing, 2011. accepted. [3] N. Kohl, J. Desrosiers, O.B.G. Madsen, M.M. Solomon, and F. Soumis. 2-path cuts for the vehicle routing problem with time windows. Transportation Science, 33(1):101 116, 1999. 7