Computational Complexity CSC Professor: Tom Altman. Capacitated Problem

Similar documents
6 ROUTING PROBLEMS VEHICLE ROUTING PROBLEMS. Vehicle Routing Problem, VRP:

Vehicle Routing Heuristic Methods

Outline. Construction Heuristics for CVRP. Outline DMP204 SCHEDULING, TIMETABLING AND ROUTING

Construction Heuristics and Local Search Methods for VRP/VRPTW

Adjusted Clustering Clarke-Wright Saving Algorithm for Two Depots-N Vehicles

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

Machine Learning for Software Engineering

Solving the Capacitated Vehicle Routing Problem with a Genetic Algorithm

Last topic: Summary; Heuristics and Approximation Algorithms Topics we studied so far:

A sequential insertion heuristic for the initial solution to a constrained vehicle routing problem

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

Improved K-Means Algorithm for Capacitated Clustering Problem

Improving on the initial solution heuristic for the Vehicle Routing Problem with multiple constraints

Multiple Depot Vehicle Routing Problems on Clustering Algorithms

ACO and other (meta)heuristics for CO

56:272 Integer Programming & Network Flows Final Exam -- December 16, 1997

Two models of the capacitated vehicle routing problem

CHAPTER 4 DECOMPOSITION METHODS

Metaheuristic Development Methodology. Fall 2009 Instructor: Dr. Masoud Yaghini

56:272 Integer Programming & Network Flows Final Examination -- December 14, 1998

The Vehicle Routing Problem with Time Windows

Oracle Spatial Summit

Solution Methods for the Multi-trip Elementary Shortest Path Problem with Resource Constraints

Randomized rounding of semidefinite programs and primal-dual method for integer linear programming. Reza Moosavi Dr. Saeedeh Parsaeefard Dec.

Theorem 2.9: nearest addition algorithm

A Firework Algorithm for Solving Capacitated Vehicle Routing Problem

A SWEEP BASED ALGORITHM FOR THE FLEET SIZE AND MIX VEHICLE ROUTING PROBLEM

Fundamentals of Integer Programming

Algorithms for Integer Programming

Rich Vehicle Routing Problems Challenges and Prospects in Exploring the Power of Parallelism. Andreas Reinholz. 1 st COLLAB Workshop

Heuristic Search Methodologies

7KH9HKLFOH5RXWLQJSUREOHP

Outline. Optimales Recycling - Tourenplanung in der Altglasentsorgung

Pre-requisite Material for Course Heuristics and Approximation Algorithms

of optimization problems. In this chapter, it is explained that what network design

Open Vehicle Routing Problem Optimization under Realistic Assumptions

A Steady-State Genetic Algorithm for Traveling Salesman Problem with Pickup and Delivery

Optimal tour along pubs in the UK

6. Tabu Search 6.1 Basic Concepts. Fall 2010 Instructor: Dr. Masoud Yaghini

Dynamic programming. Trivial problems are solved first More complex solutions are composed from the simpler solutions already computed

Parallel Computing in Combinatorial Optimization

Optimization Techniques for Design Space Exploration

Tour splitting algorithms for vehicle routing problems

Branch-Cut-and-Price solver for Vehicle Routing Problems

arxiv: v1 [math.oc] 9 Jan 2019

PROBLEM SOLVING AND SEARCH IN ARTIFICIAL INTELLIGENCE

Evolutionary Algorithms for Vehicle Routing

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

Using SAS/OR to Optimize Scheduling and Routing of Service Vehicles

Adaptive Large Neighborhood Search

A Bucket Graph Based Labelling Algorithm for the Resource Constrained Shortest Path Problem with Applications to Vehicle Routing

6 Randomized rounding of semidefinite programs

Simplicial Global Optimization

COORDINATED teams of autonomous robots are often

PICKUP AND DELIVERY WITH TIME WINDOWS: ALGORITHMS AND TEST CASE GENERATION. School of Computing, National University of Singapore, Singapore

The Heuristic (Dark) Side of MIP Solvers. Asja Derviskadic, EPFL Vit Prochazka, NHH Christoph Schaefer, EPFL

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

Building Ride-sharing and Routing Engine for Autonomous Vehicles: A State-space-time Network Modeling Approach

Fuzzy Inspired Hybrid Genetic Approach to Optimize Travelling Salesman Problem

Calculation of the shortest-time path for traversal of an obstacle course by a robot

Assignment 3b: The traveling salesman problem

An Agent-Based Approach to Vehicle Routing Problem

An Introduction to Dual Ascent Heuristics

Travelling salesman problem using reduced algorithmic Branch and bound approach P. Ranjana Hindustan Institute of Technology and Science

val(y, I) α (9.0.2) α (9.0.3)

TSP! Find a tour (hamiltonian circuit) that visits! every city exactly once and is of minimal cost.!

Introduction VLSI PHYSICAL DESIGN AUTOMATION

Lecture 7. s.t. e = (u,v) E x u + x v 1 (2) v V x v 0 (3)

Introduction to Combinatorial Algorithms

to the Traveling Salesman Problem 1 Susanne Timsj Applied Optimization and Modeling Group (TOM) Department of Mathematics and Physics

Hybrid ant colony optimization algorithm for two echelon vehicle routing problem

Lagrangian Relaxation in CP

Very Large Scale Neighborhood Search. Collaborators include: Ravi Ahuja, Ozlem Ergun, Abraham Punnen, Dushyant Sharma

PBW 654 Applied Statistics - I Urban Operations Research. Unit 3. Network Modelling

LEAST COST ROUTING ALGORITHM WITH THE STATE SPACE RELAXATION IN A CENTRALIZED NETWORK

Computational problems. Lecture 2: Combinatorial search and optimisation problems. Computational problems. Examples. Example

Exact Algorithms for NP-hard problems

PROBLEM SOLVING AND SEARCH IN ARTIFICIAL INTELLIGENCE

Algorithms for Euclidean TSP

Improved methods for the Travelling Salesperson with Hotel Selection

SENSITIVITY ANALYSIS OF CRITICAL PATH AND ITS VISUALIZATION IN JOB SHOP SCHEDULING

Manpower Planning: Task Scheduling. Anders Høeg Dohn

An iteration of Branch and Bound One iteration of Branch and Bound consists of the following four steps: Some definitions. Branch and Bound.

15.082J and 6.855J. Lagrangian Relaxation 2 Algorithms Application to LPs

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

Resource Constrained Project Scheduling. Reservations and Timetabling

Mathematical Tools for Engineering and Management

Time dependent optimization problems in networks

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

Algorithm Design Methods. Some Methods Not Covered

Application of Improved Discrete Particle Swarm Optimization in Logistics Distribution Routing Problem

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

Massively Parallel Approximation Algorithms for the Traveling Salesman Problem

Integer Programming and Network Modeis

Discrete Covering. Location. Problems. Louis. Luangkesorn. Housekeeping. Dijkstra s Shortest Path. Discrete. Covering. Models.

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

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

Design and Analysis of Algorithms

A Parallel Architecture for the Generalized Traveling Salesman Problem

The districting problem: applications and solving methods

Transcription:

Computational Complexity CSC 5802 Professor: Tom Altman Capacitated Problem

Agenda: Definition Example Solution Techniques Implementation

Capacitated VRP (CPRV) CVRP is a Vehicle Routing Problem (VRP) in which a fixed fleet of delivery vehicles of uniform capacity must service known customer demands for a single commodity from a common depot at minimum transit cost. That is, CVRP is like VRP with the additional constraint that every vehicle must have uniform capacity of a single commodity.

Objective: The objective is to minimize the vehicle fleet and the sum of travel time, and the total demand of commodities for each route may not exceed the capacity of the vehicle which serves that route. Feasibility: A solution is feasible if the total quantity assigned to each route does not exceed the capacity of the vehicle which services the route.

Capacitated Vehicle Routing Problem Given: Complete graph G = (N, E) Set of nodes N = {0, 1,..., n} Set of Edges E = { (i, j) i, j N ; i < j } Cost of traveling from node i to node j Cij Demand per node di ( i N {0} ) Vehicle capacity C Number of vehicles K

Capacitated Vehicle Routing Problem Find: A set of at most K vehicle routes of total minimum cost such that: Every route starts and ends at the depot. Each customer is visited exactly once. The sum of the demands in each vehicle route does not exceed the vehicle s capacity.

The Typical input and output for a Vehicle Routing Problem An input for a Vehicle Routing Problem An output for the instance above

Formulation: Let Q denote the capacity of a vehicle. Mathematically, a solution for the CVRP is the same that VRP's one, but with the additional restriction that the total demand of all customers supplied on a route Ri does not exceed the vehicle capacity Q: m i 1 di Q

Example of CVRP instance CVRP

Solution Techniques for VRP Exact Approaches Heuristics Meta-Heuristics Branch and Bound Branch and Cut Constructive Methods Savings Matching Based Multi-route Improvement 2-Phase Algorithm Cluster-First, Route Second Route-First, Cluster-Second Ant Algorithms Constraint Programming Deterministic Annealing Genetic Algorithms Simulated Annealing Tabu Search

Solution Techniques for VRP: 1 - Exact Approaches: Propose to compute every possible solution until one of the bests is reached. Branch and bound (Fisher 1994) Branch and cut 2 - Heuristics: Perform a relatively limited exploration of the search space and typically produce good quality solutions within modest computing times.

Constructive Methods: Gradually build a feasible solution while keeping an eye on solution cost. Matching Based Multi-route Improvement Heuristics o Thompson and Psaraftis (1993) o Van Breedam (1994) o Kinderwater and Savelsbergh (1997)

2-Phase Algorithm: The problem is decomposed into its two natural components: 1 - Clustering of vertices into feasible routes 2 - Actual route construction with possible feedback loops between the two stages. Cluster-First, Route-Second Algorithms o Fisher and Jaikumar (1981) o The Petal Algorithm o The Sweep Algorithm o Taillard (1993) Route-First, Cluster-Second Algorithms

Meta-Heuristics: The emphasis is on performing a deep exploration of the most promising regions of the solution space. The quality of solutions produced by these methods is much higher than that obtained by classical heuristics. Ant Algorithms Constraint Programming Deterministic Annealing Genetic Algorithms Simulated Annealing Tabu Search o Granular Tabu o The adaptative memory procedure o Kelly and Xu (1999)

Matching Based Savings Algorithm: This is an interesting modification to the standard Savings algorithm. Wherein at each iteration the saving obtained by merging routes p and q is computed as: Sij = t(si) + t(sj) t(si Sj) Where Sk is the vertex set of route k, and t(sk) is the length of an optimal TSP solution on Sk.

A matching problem over the sets Sk is solved using the Sij values as matching costs, and the routes corresponding to optimal matchings are merged providing feasibility is maintained. One possible variant of this basic algorithm consists on approximating the t(sk) values instead of computing them exactly.

Multi-Route Improvement Algorithm: Improvement algorithms attempt to upgrade any feasible solution by performing a sequence of edge or vertex exchanges within or between vehicle routes. Multi-route improvement heuristics for the VRP operate on each vehicle route taken on several routes at a time.

Thompson and Psaraftis 1993: Propose a method based on the concept of cyclic k-transfers that involves transferring simultaneously j ( j) k demands from route I to route I for each j and fixed integer k. r The set of routes {I }, with r = 1,..., m, constitutes a feasible solution and δ is a cyclic permutation of a subset of {1,..., m}.

In particular, when δ has fixed cardinality C, we obtain a C-cyclic k-transfer. By allowing k dummy demands on each route, demand transfers can be performed among permutations rather than cyclic permutations of routes. Due to the complexity of the cyclic transfer neighborhood search, it is performed heuristically. The 3-cyclic 2-transfer operator is illustrated in the figure below.

The cyclic transfer operator The basic idea is to transfer simultaneously the customers denoted by white circles in cyclical manner between the routes. More precisely here customers a and c in route 1, f and j in route 2 and o and p in route 4 are simultaneously transferred to routes 2, 4, and 1 respectively and route 3 remains untouched.

Van Breedam 1994: Van Breedam classifies the improvement operations as "string cross", "string exchange", "string relocation", and "string mix", which can all be viewed as special cases of 2-cyclic exchanges, and provides a computational analysis on a restricted number of test problems. In Van Breedam's analysis, there are considered four operations:

1 - String Cross (SC): Two strings (or chains) of vertices are exchanged by crossing two edges of two different routes.

2 - String Exchange (SE): Two strings of at most k vertices are exchanged between two routes.

3 - String Relocation (SR): A string of at most k vertices is moved from one route to another, typically with k = 1 or 2.

4 - String Mix (SM): The best move between SE and SR is selected. To evaluate these moves, Van Breedam considers two local improvement strategies: 1 - First Improvement (FI): Consists of implementing the first move that improves the objective function. 2 - Best Improvement (BI): Evaluates all the possible moves and implements the best one.

Van Breedam then defines a set of parameters that can influence the behavior of the local improvement procedure: The initial solution (poor, good) The string length (k) for moves of type SE, SR, SM (k = 1 or 2) The selection strategy (FI, BI) The evaluation procedure for a string length k > 1 (evaluate all possible string lengths between a pair of routes, increase k when a whole evaluation cycle has been completed without identifying an improvement move).

Kinderwater and Savelsbergh 1997: Heuristic tours are not considered in isolation, so paths and customers are exchanged between different tours. The operations that make these changes are: 1 - Customer Relocation 2 Crossover 3 - Customer Exchange

1 - Customer Relocation: A customer located at one route is changed to another one:

2 - Crossover: Two routes are mixed at one point

3 - Customer Exchange: Two customers of two different routes are interchanged between the two routes

More Complex Examples:

Fisher and Jaikumar Algorithm 1981: This is well known algorithm and it solves a Generalized Assignment Problem (GAP) to form the clusters. The number of vehicles K is fixed. The algorithm can be described as follows:

Step1. Seed Selection: Choose seed points jk in V to initialize each cluster k. Step2. Allocation of Customers to Seeds: Compute the cost dik of allocating each customer i to each cluster k as. dijk = min{c0i+cijk+cjk0,c0jk+cjki+ci0} (c0jk+cjk0) Step3. Generalized Assignment: Solve a GAP with costs dij, customer weights qi and vehicle capacity Q. Step4. TSP Solution: Solve a TSP for each cluster corresponding to the GAP solution.

Petal Algorithm: It is a natural extension of the sweep algorithm It is used to generate several routes, called petals, and make a final selection by solving a set partitioning problem of the form: min k s d k xk subject to: a ki xk = 1, ( i = 1,..., n ), k s xk = 1 or 0, ( k S )

Where: S is the set of routes, xk = 1 if and only if route k belongs to the solution, aik is the binary parameter equal to 1 only if vertex i belongs to route k, dk is the cost of petal k. If routes correspond to contiguous sectors of vertices, then this problem possesses the column circular property and be solved in polynomial time.

The Sweep Algorithm: The sweep algorithm applies to planar instances of the VRP. It consists of two parts: Split: Feasible clusters are initialed formed rotating a ray centered at the depot. TSP: A vehicle routing is then obtained for each cluster by solving a TSP.

Some implementations include a post-optimization phase in which vertices are exchanged between adjacent clusters, and routes are reoptimized. A simple implementation of this method is as follows, where we assume that each vertex i is represented by its polar coordinates (ɵi, pi), where ɵi is the angle and pi is the ray length.

Step1. Route Initialization: Choose an unused vehicle k. Step2. Route Construction: Starting from the unrouted vertex having the smallest angle, assign vertices to the vehicle k as long as its capacity or the maximal route length is not exceeded. If unrouted vertices remain go to Step1. Step3. Route Optimization: Optimize each vehicle route separately by solving the corresponding TSP.

Taillard's Algorithm 1993: Uses the λ-interchange generation mechanism where individual routes are reoptimized. Decomposes the main problems into subproblems. In planar problems, these subproblems are obtained by initially partitioning vertices into sectors centered at the depot, and into concentric regions within each sector. Each subproblem can be solved independently, but periodical moves of vertices to adjacent sectors are necessary.

This make sense when the depot is centered and vertices are uniformly distributed in the plane. This decomposition method is particularly well suited for parallel implementation as subproblems can then be distributed among the various processors.

Route-First Cluster-Second Method: Route-first, cluster-second methods construct in a first phase a giant TSP tour, disregarding side constraints, and decompose this tour into feasible vehicle routes in a second phase. This idea applies to problems with a free number of vehicles. It was first put forward by Beasley who observed that the second phase problem is a standard shortest path problem on an acyclic graph and can thus be solved in O(n²) time.

In the shortest path algorithm, the cost dij of traveling between nodes i and j is equal to c0i + c0j + lij, where lij is the cost of traveling from i to j on the TSP tour.

Conclusion: Near all of The techniques the are used for solving Vehicle Routing Problems are heuristics and metaheuristics because no exact algorithm can be guaranteed to find optimal tours within reasonable computing time when the number of cities is large. This is due to the NP-Hardness of the problem.

The Implementation

References 1 - The VRP Web. http://neo.lcc.uma.es/radiaeb/webvrp/. 2 - The Capacitated Vehicle Routing Problem (CVRP). http://columbus.uniandes.edu.co:5050/ dspace/bitstream/1992/772/5/jga-cvrp-example.pdf