column generation applied to a special case of the hub

104
Technische Universit¨ at M¨ unchen Department of Mathematics Master Thesis Column Generation applied to a special Case of the Hub Location and Routing Problem Laura-Luisa Velikonja Supervisor: Dr. Michael Rier Advisor: Prof. Dr. Raymond Hemmecke Submission Date: 2014-09-30

Upload: others

Post on 06-May-2022

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Column Generation applied to a special Case of the Hub

Technische Universitat Munchen

Department of Mathematics

Master Thesis

Column Generation applied to a specialCase of the Hub Location and Routing

ProblemLaura-Luisa Velikonja

Supervisor: Dr. Michael Ri�erAdvisor: Prof. Dr. Raymond HemmeckeSubmission Date: 2014-09-30

Page 2: Column Generation applied to a special Case of the Hub

I assure the single handed composition of this master thesis only supported by declared re-sources.

Garching,

Page 3: Column Generation applied to a special Case of the Hub

AbstractMotivated by the increasing complexity in logistics networks and hereby the rise in trans-portation costs, this present thesis examines a special case of the Hub Location and RoutingProblem (HLRP). It is wri�en in cooperation with the fourth-party logistics provider 4�owwhich supports companies in planning their transportation networks by using a combinationof di�erent heuristics. �is thesis examines the practicability and improvement of an exactsolution in comparison to the state-of-the-art solution at 4�ow. �e work is driven by thequestion whether modeling and solving real logistics instances by an exact algorithm is pos-sible. Apart from that, solving the problem by exact methods using edge-based formulationswas a�empted by 4�ow before. In contrast to the heuristic method, the inclusion of the rout-ing option Milkrun was not possible there. In this thesis a path-based formulation, which doesinclude Milkruns, is developed instead.In the �rst chapter a brief introduction to 4�ow, the project RobuNet and relevant logisticsterms and processes is given to understand the assumptions and constraints of the specialHLRP which 4�ow copes with. In chapter 2 the problem is classi�ed among the literature ofvehicle routing, location and nonlinear-cost problems. A short overview and a model formu-lation of every problem are given and the components, which are relevant for modeling thespecial transportation problem, are presented. In chapter 3 a model of the special HLRP isdeveloped by starting with a mathematical formulation of the logistics terms and assumptionswhich repeat the logistics processes mentioned in chapter 1 in a mathematical manner. Here-upon a MIP is formulated in a straightforward approach which is then improved by anotherformulation. By using Special Ordered Sets of type 1, introducing penalty costs to handle theproblem of symmetry e�ects and making use of knowledge about the routing option Milkrun,performance and complexity can be improved. However the algorithm still grows exponen-tially with the input data and by additionally dealing with a usual size of more than 1,000nodes and 10,000 edges, the problem becomes intractable. Consequently a method for solvinglarge-scale LP’s - Column Generation - is introduced and applied to the improved modelingapproach in chapter 4. To generate a feasible start solution for Column Generation a succes-sive algorithm is presented as well. Finally in chapter 5 case studies, which consist of networkdata deriving from customers of 4�ow, are presented �rst. �en the exact solution method,which was developed in this thesis, is applied. A major drawback of the algorithm on the net-work instances is identi�ed due to their special demand structure. �e last chapter sums theseinsights up, explaining the impossibility of a solely exact solution method, and closes with abrief outlook.

Page 4: Column Generation applied to a special Case of the Hub

ZusammenfassungAufgrund einer immer starker zunehmenden Komplexitat in Logistiknetzwerken und des da-durch bedingten Anstiegs von Transportkosten bescha�igt sich diese Masterarbeit mit einerVariante des Hub Location und Routing Problems (HLRP). Sie wurde in Zusammenarbeit mitdem Logistikdienstleister 4�ow erstellt, der die Netzwerkplanung seiner Kunden durch eineKombination verschiedener Heuristiken unterstutzt. Die vorliegende Arbeit untersucht, obein exakter Losungsansatz bei realen Netzwerkinstanzen moglich ist und das heuristische Ver-fahren dadurch verbessert werden kann. Verschiedene �ussbasierte Algorithmen wurden bei4�ow neben der heuristischen Methode entwickelt, die einen exakten Losungsansatz umset-zen. Die Routingmoglichkeit Milkrun, auf die in der vorliegenden Arbeit ausfuhrlich einge-gangen wird, wird in diesen exakten Verfahren nicht modelliert. In dieser Arbeit hingegenwird eine pfadbasierte Formulierung gewahlt, um diese Routingoption abbilden zu konnen.Im ersten Kapitel werden das Unternehmen 4�ow, das Projekt RobuNet und Begri�e aus derTransportlogistik vorgestellt, die fur das spezielle Hub Location and Routing Problem relevantsind. Im darau�olgenden Kapitel wird ein Literaturuberblick uber Vehicle Routing, Locationund Nonlinear-Cost Probleme gegeben, da diese zusammen mit anderen speziellen Annahmendie Variante des HLRP bilden. Nachdem in Kapitel 3 zunachst De�nitionen und Annahmen,die bereits in Kapitel 1 besprochen wurden, mathematisch formuliert werden, wird das Pro-blem in einem ersten Ansatz als MIP modelliert. Dieser wird in einem zweiten Ansatz durchSpecial Ordered Sets vom Typ 1, durch die Vermeidung von Symmetriee�ekten anhand vonStra�osten und durch das Einbeziehen von Informationen uber Milkruns verbessert. BeideAnsatze werden hinsichtlich ihrer Komplexitat verglichen. Dennoch bleibt das Problem auf-grund der exponentiell wachsenden Anzahl von Entscheidungsvariablen und der Große derNetzwerkinstanzen von bis zu 1.000 Knoten und 100.000 Kanten erheblich komplex, sodassdie Methode Column Generation durchgefuhrt wird. Im Kapitel 4 wird diese vorgestellt undauf den verbesserten Modellierungsansatz angewandt. Desweiteren wird in diesem Kapiteleine Methode zur Generierung einer zulassigen Startlosung erarbeitet. Im vorletzten Kapitelwerden zunachst Fallstudien prasentiert, die von 4�ow zur Verfugung gestellt wurden. An-schließend wird der Algorithmus getestet und die nicht zufriedenstellenden Ergebnissse an-hand der speziellen Nachfragestruktur der gegebenen Logistiknetzwerke erklart.Aus den vorliegenden Untersuchungen und Ergebnissen lasst sich das Fazit herleiten, dass einrein exakter Losungsansatz bei den gegebenen Netzwerken unter Einbeziehung von Milkrunszum jetzigen Zeitpunkt nicht moglch ist.Ein kurzer Ausblick auf angrenzende Forschungsmoglichkeiten schließt die Arbeit.

Page 5: Column Generation applied to a special Case of the Hub

Contents

List of Acronyms i

List of Symbols iii

1 Introduction 11.1 4�ow AG and RobuNet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.2 Network Optimization and Transportation Planning . . . . . . . . . . . . . . . 21.3 �e Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

2 Literature Review and Research Gap 92.1 Vehicle Routing Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92.2 Location Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112.3 Nonlinear-Cost Transportation Problems . . . . . . . . . . . . . . . . . . . . . 142.4 �e special Hub Location and Routing Problem . . . . . . . . . . . . . . . . . 16

2.4.1 Location and Routing Problems . . . . . . . . . . . . . . . . . . . . . . 162.4.2 Hub Location and Routing Problems . . . . . . . . . . . . . . . . . . . 172.4.3 Modi�cation to the Hub Location and Routing Problem . . . . . . . . 18

3 �e Model 213.1 De�nitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223.2 Assumptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243.3 Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263.4 First Modeling Approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

3.4.1 Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303.4.2 Objective Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363.4.3 Complexity and First Computational Results . . . . . . . . . . . . . . . 36

3.5 Advanced Modeling Approach . . . . . . . . . . . . . . . . . . . . . . . . . . . 373.5.1 A special Case: Origin-Origin Edges Eoo . . . . . . . . . . . . . . . . . 383.5.2 Special Ordered Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383.5.3 Symmetries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403.5.4 New Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423.5.5 Complexity and Computational Improvement . . . . . . . . . . . . . . 44

4 Column Generation 454.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454.2 Masterproblem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464.3 Subproblem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

Page 6: Column Generation applied to a special Case of the Hub

4.4 Preprocessing Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 594.5 Starting Solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

5 Optimization Results 695.1 Case Studies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 695.2 Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 695.3 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 705.4 Drawback of Column Generation for Logistics Networks . . . . . . . . . . . . 725.5 Heuristic Solution to Drawback . . . . . . . . . . . . . . . . . . . . . . . . . . 74

6 Conclusion and Outlook 77

Appendix 77

A Entire Model of First Modeling Approach 81

B Content of USB Stick 83B.1 Data Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83B.2 Python Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84B.3 Mosel Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84

Page 7: Column Generation applied to a special Case of the Hub

List of Acronyms

FCTP Fixed-Charged Transportation ProblemFTL Full-TruckloadHLP Hub Location ProblemHLRP Hub Location and Routing ProblemLDM Loading MeterLRP Location and Routing ProblemLTL Less-�an-TruckloadMDVRP Mulidepot Vehicle Routing ProblemNLCTP Nonlinear-Cost Transportation ProblemOVRP Open Vehicle Routing ProblemSFCTP Step Fixed-Charge Transportation ProblemSOS Special Ordered SetUFLP Uncapacitated Facility Location ProblemVRP Vehicle Routing ProblemVRPPD Vehicle Routing Problem with Pickup and Deliv-

ery

i

Page 8: Column Generation applied to a special Case of the Hub
Page 9: Column Generation applied to a special Case of the Hub

List of Symbols

C capacity of transportation vehicleCE(e) consolidation e�ect on edge e ∈ Ecse transportation costs using cost segment s ∈ S

on edge e ∈ Ech handling costs per unit of goods at hub h ∈ HCLt

s cluster for centroid s ∈ St in iteration step tcmr transportation costs on milkrun mr ∈MRCs capacity of cost segment s ∈ SD set of destinationsdisti,j distance between node i and j, i, j ∈ VDistmax maximal distance between two stops allowed for

milkrunsdisth(x, y) haversine distance between two vectors x, y ∈

R2

daggv sum over all demands per frequency originatingor ending in node v ∈ V

dod average weekly demand to be transported fromorigin o to destination d, (o, d) = od ∈ OD

Demts total demand originating from or ending in clus-

ter CLts,s ∈ St in iteration t

E set of directed edges, E ⊂ V × VEhd subset of directed edges, linking hubs and desti-

nationsEhh subset of directed edges, linking hubsEod subset of directed edges, linking origins and des-

tinationsEoh subset of directed edges, linking origins and

hubsEoo subset of directed edges, linking originsG digraph, G = (V,E)H set of hubsHHDistmin minimum distance which needs to be ful�lled by

edges e ∈ Ehh to be createdHmax maximal number of hubs to use

iii

Page 10: Column Generation applied to a special Case of the Hub

Hubcrit critical value of vehicle capacity which shouldnot be exceeded by demand dod of od-pair od tobe routed via hub

h(v) assigned hub of node v ∈ V \H , h(v) ∈ HK set of delivery frequenciesl(v) latitude and longitude of node v ∈ V , l(v) ∈ R2

maggv minimum delivery frequency of od-pairs con-

taining node v ∈ Vmod minimal weekly delivery frequency for od-pair

od ∈ ODMrrmin minimal mainrun ratio allowed for milkrunsMruncrit critical value of vehicle capacity which should

be consumed by the demand per frequency daggo

of origin o to be connected to a milkrunN(o) neighborhood of origin o ∈ O containing set of

other origins to extend milkrunO set of originsOD set of origin-destination pairs OD ⊆ O ×DODdirect subset of origin-destination pairs which should

be routed using direct-transports p ∈ P direct

ODhub subset of origin-destination pairs od ∈ ODwhose demand dod is below some critical valueHubcrit, should be routed via hub

HDistmin maximum distance which needs to be ful�lled byedges e ∈ Ehh

Omrun subset of origins o ∈ O whose aggregated de-mand per frequency daggo is above some criticalvalue Mruncrit, should be routed via milkruns

P set of pathsP direct set of direct-paths, which consist of exactly one

edge e ∈ Eod, P direct ⊂ PP hub set of hub-paths, whose edges (e1, . . . , e2) ⊂ E

pass a hub h ∈ H , P hub ⊂ PPod set of paths for od-pair od ∈ ODQo(o

′) total quantity on milkrun which starts at o ∈ Owhen additionally routing over o′ ∈ O

S set of tari� segmentsSt set of centroids of iteration step tStopsmax maximal number of stops allowed for milkrunsT transportation network T = (G,OD)TDistmax maximal total distance allowed for milkrunsV set of nodes, V = O ∪H ∪DV hub subset of nodes v1 ∈ V \ H which build an od-

pair (v1, v2) ∈ ODhub with some node v2 ∈ V \H

Page 11: Column Generation applied to a special Case of the Hub

V nomrun subset of nodes v ∈ V whose aggregated de-mand per frequency daggv is below some criti-cal value Mruncrit, should not be routed viamilkruns

wv weight of node v ∈ V \H representing the por-tion of its aggregated demand daggv compared tothe total within cluster demand Demt

s in itera-tion t

Page 12: Column Generation applied to a special Case of the Hub
Page 13: Column Generation applied to a special Case of the Hub

Chapter 1

Introduction

1.1 4�ow AG and RobuNet4�ow AG is a leading company in supply chain consulting, so�ware and fourth-party logistics(4PL) services. 4�ow optimizes supply chains and transportation networks.�e company is based in Berlin and has more than 280 employees in ten subsidiaries all overthe world. 4�ow is divided into three business units - 4�ow consulting, 4�ow management,4�ow so�ware - which are constantly supported by the research department and the trainingacademy.

Figure 1.1: Business units at 4�ow, source:4�ow

4�ow research supports all three business units by the following responsibilities:

• development of practical innovations and visions

• conduction of industry-relevant studies

• publication of research results

1

Page 14: Column Generation applied to a special Case of the Hub

2 CHAPTER 1. INTRODUCTION

• participation in conferences

• mentoring of young academics

�e three core topics of 4�ow research are green logistics, risk management and optimizationalgorithms. [4�]Practical innovations are developed through research projects, which are �nanced by the Ger-man Department of Commerce and the Innovation Program of the European Union and con-ducted in cooperation with industry-related companies and other research facilities like uni-versities.One of these research projects is ”Robust network design for large-scale logistics networks”(RobuNet), which started in August 2012. �is project develops innovative solutions for robustand e�cient network design. �e goal is to realistically model and e�ciently optimize large-scale and complex supply networks while considering uncertain planning parameters. 4�owis partnering with the Combinatorial Optimization & Graph Algorithms (COGA) team at theTechnical University of Berlin. �e project will be �nalized in August 2015. [Rob]In the course of RobuNet, this master thesis is generated. While the aim of RobuNet is to modellarge-scale transportation networks under uncertain parameters without modeling a certainrouting option called Milkruns, this master thesis develops an exact solution method to thetransportation problem considering deterministic parameters, but including Milkruns.

1.2 Network Optimization and Transportation PlanningNetwork optimization is realized at 4�ow through one of its main products 4�ow vista® whichlets the customers analyze, plan and optimize their transportation networks. �e logisticsterms and processes, which are modeled in 4�ow vista® and which are important to understandthe assumptions and constraints for the special case of the Hub Location and Routing Problem,are explained in the following.

Hubs

Hubs are facilities that work as consolidating, connecting and switching points for �ows be-tween di�erent suppliers and customers [AKK12].In a many-to-many transportation network, meaning many suppliers serving many customers,direct transportation links are o�en not economical: when low quantities need to be trans-ported relative high transportation costs occur. �erefore, �ows from one supplier to dif-ferent customers, or from di�erent suppliers to one customer are routed together to pro�tfrom lower transportation costs per unit of goods. Hub network concepts are widely used inthe telecommunication industry, as well as in the logistics, airline and public transit indus-try. [FHAN13][p.1]�ey also play a signi�cant role in postal delivery and cargo delivery. [RMSGY14, p.2]

Hub location problems in transportation networks must be solved at a strategic level, whereasvehicle routing is determined at a tactical or operational level to meet short-notice changesin customer demands. Vehicle routing describes �nding a path from a supplier to a customer

Page 15: Column Generation applied to a special Case of the Hub

1.2. NETWORK OPTIMIZATION AND TRANSPORTATION PLANNING 3

which he1 supplies. �e exact de�nition of a transportation network and a transportationroute is presented later. It is common to plan the hub network once a year and change therouting weekly. �e following �gure shows the process of transportation network planningat 4�ow:

Figure 1.2: Transportation planning, source:4�ow

�e �gure visualizes that the overall network structure, which determines the location of hubs,is planned once a year. Every month the transportation routes are planned based on call-o�s.�en the routes are actually implemented which means that carriers are booked for �xeddates. �e balancing team at 4�ow updates the transportation routes weekly based on the ac-tual demands, whereas on a daily basis exceptions can be made because of tra�c or manpowerchanges.Consequently it is common and also reasonable that facility location and vehicle routing deci-sions are made independently from each other. However, this approach can lead to excessivecosts: �e network planning implicitly allocates suppliers and customers to hubs. A�er thisprocedure the routing is done for all suppliers and customers connected to the same hub.Hence a number of independent vehicle routing problems is solved. When detecting a routebeing cheaper over a di�erent hub, the changes need to be made in operational planning,which is cumbersome and cost demanding as several parties like logistics provider and carri-ers are involved.�erefore in this thesis, the hub location and routing problem (HLRP) which tackles these twokinds of decisions simultaneously is examined.

1�roughout this thesis he is used when the gender is not known.

Page 16: Column Generation applied to a special Case of the Hub

4 CHAPTER 1. INTRODUCTION

Minimum delivery frequency

�e term delivery frequency describes how o�en a customer is supplied with a certain articleper time period.Since every customer has a production plan, he has a minimum frequency in which he wantsto be supplied with goods. �is might be once a week, once a month or even 5 times duringa quarter. If there was no delivery frequency imposed, the supplier would wait for su�cientdemand to accumulate so that it was worth routing directly to the customer without using ahub.Besides goods would not be transported together with goods from other suppliers. Usually aminimum delivery frequency is required, whereas a maximum is not needed: Supplying tooo�en and the resulting storage of goods is not as expensive as le�ing production wait becauseof undersupply and the following declining of service level to the end customer.�erefore only the minimum delivery frequency is one main driver of transportation cost.

Consolidation and economies of scale

Consolidation describes combining two or more shipments in order to realize lower trans-portation rates [dic].Economies of scale is a term for the phenomenon whereby larger volumes of production re-duce unit cost by distributing �xed costs over a larger quantity [dic].Consolidation is o�en desired because it carries out the e�ects of economies of scale. �is ef-fect is due to �xed costs with respect to the quantity transported and it emerges in production,transportation, company acquisition and many other business sections. It explains amongstother factors the goal of growth. In transportation networks economies of scale is the reasonfor the concave structure of cost functions. Consequently it is always preferred to transport ahigh amount of goods per vehicle because �xed transportation costs occur with every vehicleused.�e main aspect in this thesis is to achieve a highly utilized capacity per transport vehicle.

Milkruns

Milkruns are transportation routes to or from a hub which include more than one supplier orcustomer respectively.Goods are collected or distributed together through the network, as shown in �gures 1.4 and1.3. �e dashed line indicated the amount which needs to be delivered from a supplier to acustomer, whereas the solid line represents the route which is chosen. In the �rst schemegoods from di�erent suppliers are picked up and the total amount of four units is togethertransported to a hub. From there the goods are distributed to customers. Figure 1.3 showsthe equivalent case for delivering goods together. �e term milkrun comes from the Americandairy industry and refers to a milkman who distributes and collects empty milk bo�les fromcustomers.In logistics the term milkrun was �rst used by Meusel [Meu93] in 1993. He concluded that byusing milkruns the utilized capacity of a transport vehicle can be increased and transportationcosts reduced.

Page 17: Column Generation applied to a special Case of the Hub

1.2. NETWORK OPTIMIZATION AND TRANSPORTATION PLANNING 5

o d1

one unit of good needs be delivered from o to d

o1 o21

one unit of good is transported from o1 to o2

o1

o2

o3

o4

h1

d1

d2

d3

1

2

34

1

2

1

1

11

1

Figure 1.3: Inbound milkrun with one huband three customers

o1

o2

o3

o4

h1

d1

d2

d3

4 3

1

1111

1

11

1

Figure 1.4: Outbound milkrun with onehub and four suppliers

Wildemann explains in [WN09] that in industry projects transportation costs can be reducedby an average of 30 % using milkrun concepts. �is is due to the increased utilization of thetransport vehicle: He states that the average degree of capacity utilization for direct-transportsto a hub or customers are 60-70 % whereas the average utilization by using milkrun conceptsamounts up to 90 %.Inbound milkruns as seen in �gure 1.4 are used when the amount of goods is small and sup-pliers are close to each other. Hereby the goal is to quickly collect goods and transport themat high capacity utilization to a hub or directly to a customer.�e equivalent case for customers is the outbound milkrun as depicted in �gure 1.3. Both casescan be combined. �is is realized seldom because the distance usually becomes too long forone transportation vehicle.

Transport tari�s

Transport tari�s are the fees by a carrier asks for its service [dic].When designing transportation networks tari�s in the form of cost functions are one of themain challenges: �e tari�s for delivering goods from suppliers to customers are nontrans-parent and depend on di�erent factors with respect to the carrier, which make them di�cultto compare and evaluate. �e costs can e.g. depend on the country the supplier is located in,the customer, the kilometers covered and the amount carried. �e dependencies on distanceand quantity are usually monotone and piecewise linear, but also cost functions which are noteven monotone do exist.

Page 18: Column Generation applied to a special Case of the Hub

6 CHAPTER 1. INTRODUCTION

When making a strategic decision actual tari�s are not known. Only a�er the decision for acarrier is made, tari�s are negotiated depending on factors such as the amount carried and thekilometers covered, as mentioned before. �erefore 4�ow uses so called planning tari�s whichare based on past and current tari�s with carriers.

�ere are three main types of tari�s which are of interest for this thesis:

1. Full-Truckload (FTL) tari�s

2. Less-�an-Truckload (LTL) tari�s

3. Milkrun tari�s

FTL tari�s usually exclusively depend on the distance driven plus a �xed price. �ey do notdepend on the amount carried, whereas LTL tari�s cover di�erent cost segments according tothe amounting quantity. Generally FTL tari�s are cheaper for large quantities, whereas LTLtari�s are chosen for smaller quantities. In strategic planning a tari� is chosen for one routebetween an supplier and a customer whereas in operational planning e.g. 5 FTL plus 1 LTLtari� are more realistic.Milkrun tari�s apply when doing several stops before arriving at the destination. �ese costsinclude �xed costs, variable costs per kilometer and costs per stop. �e di�erence to FTL tari�sare the additional costs per stop. Milkrun tari�s are favored for small distances between thesuppliers and large distances to the customers or hubs. Again, as FTL tari�s are not dependingon the quantity carried, they are only favored if the utilized capacity of a truck is high a�erhaving collected all goods.

For a given distance FTL and LTL tari�s can be visualized together in one function, whichis de�ned on the range of the capacity of the used transportation vehicle. �is tari� functioncan have three typical forms, which are shown in �gures 1.5 to 1.7.A piecewise constant function, which is also called staircase structured, is the most commoncase in transportation networks according to 4�ow. A segmentation of the range of a vehicleexists and for each segment constant costs apply.

1.3 �e Problem

A�er having explained relevant logistics terms, the problem of this thesis will be outlinedbrie�y. �ere is a logistics network with suppliers serving customers and minimum deliveryfrequencies in which customers ought to be supplied. Furthermore, three di�erent transporttari�s - LTL, FTL and milkrun - de�ne costs for routing from suppliers to customers. In addi-tion, a certain number of hubs at which costs for handling goods evolve, is given. �e purposeof this thesis is to decide on a subset of these hubs with certain size and on the routing betweenevery supplier and the customers he supplies, altogether exploiting consolidation to minimizecosts arising from handling costs at hubs and transportation costs on routes.

Page 19: Column Generation applied to a special Case of the Hub

1.3. THE PROBLEM 7

total price

quantity

LTL

FTLcapacity ofvehicle

Figure 1.5: Piecewise linear monotone concave function

total price

quantity

LTL

FTLcapacity ofvehicle

Figure 1.6: Piecewise linear monotone concave functionwith jumps at discontinuities

total price

quantity

LTL

FTLcapacity ofvehicle

Figure 1.7: Piecewise constant monotone concave func-tion with jumps at discontinuities

Page 20: Column Generation applied to a special Case of the Hub

8 CHAPTER 1. INTRODUCTION

Page 21: Column Generation applied to a special Case of the Hub

Chapter 2

Literature Review and Research Gap

In this chapter �rst a literature overview about problems related to the HLRP is given. It is notclaimed to be complete. A�er presenting the additional assumption for the special case of theHLRP, a classi�cation of the problem is made.

2.1 Vehicle Routing Problems

�e basic Vehicle Routing Problem was �rst addressed by Dantzig und Ramser (1959) [DRSO59].It is a multiple TSP with additional capacity constraints: given a number of nodes with knowndemand and a �eet of vehicles with capacity constraints, the goal is to assign a vehicle to everynode so that demands and capacity constraints are ful�lled and total transportation costs areminimized.

LetK set of vehiclesI set of nodes, index 1 is the depotbk capacity of vehicle kai demand of node icij transportation cost from node i to node j

and the decision variable

xijk =

{1 if vehicle k is used from i to j0 otherwise

yik =

{1 if node i is served by vehicle k0 otherwise

�en a standard formulation, which is e.g. found in Fisher (1981) [FJ81], is:

9

Page 22: Column Generation applied to a special Case of the Hub

10 CHAPTER 2. LITERATURE REVIEW AND RESEARCH GAP

min∑i∈I

∑j∈I

∑k∈K

cijkxijk (2.1)∑i∈I

aiyik ≤ bk ∀k ∈ K (2.2)

∑k∈K

yik =

{|K| if i = 11 if i ∈ I \ {1} (2.3)∑

i∈I

xijk = yjk ∀j ∈ I, k ∈ K (2.4)∑j∈I

xijk = yik ∀i ∈ I, k ∈ K (2.5)∑i∈I

∑k∈K

xijk ≤ |S| − 1 ∀S ⊆ |I|, 2 ≤ |S| ≤ |I| − 1, k ∈ K (2.6)

yik ∈ {0, 1} ∀i ∈ I, k ∈ K (2.7)xijk ∈ {0, 1} ∀i ∈ I, j ∈ I, k ∈ K (2.8)

�e objective is to minimize the costs for all vehicles used for all routes. Equation (2.2) as-sures that the demand transported on one vehicle ful�lls the capacity constraint. Equation(2.3) states that every node gets assigned exactly one vehicle, but the depot, from which all|K| vehicles have to originate and end. Equations (2.4) and (2.5) ensure that the routes for onevehicle k are connected, and equation (2.6) is the subtour elimination constraint.Equations (2.7) and (2.8) make xijk and yik binary variables.Since the TSP is a NP-hard problem, the VRP - being a multiple TSP with additional constraints- is NP-hard as well.

�ere are a number of variations of the classical VRP. For example:

• Split Delivery VRP (one node can be served by more than one vehicle)

• Stochastic VRP (parameters as number of nodes, demand or travel times are uncertain)

• VRP with Time Windows (a time window is associated with each node in which it hasto be supplied)

• Multiple Depot VRP (more than one depot from which vehicles can originate and endto service nodes)

• Open VRP (vehicles do not need to end at the depot from where they started)

• VRP with Pick-Up and Deliveries (at each stop of a vehicle route goods can be deliveredto a node and others picked-up)

�e special case of the HLRP incorporates the last three variations, but excludes pick-ups.

Page 23: Column Generation applied to a special Case of the Hub

2.2. LOCATION PROBLEMS 11

2.2 Location Problems�e probably �rst facility problem was the one stated by Alfred Weber in 1909 [Web09] whichis also known under the name Steiner-Weber model and which aims to �nd one facility Pthat is closest in Euclidean norm to a number of nodes. �e Weber model got extended to amultiple Weber problem by adding more facilities. Today a great variety of facility problemsexists extending and modifying the original constraints and assumptions. �e �rst mathemat-ical models of facility location problems date back to the one by Kuehn in 1963 [KH63] andHakimi in 1964 [Hak64], who stated a Simple Plant Location Problem and a p-Median Problemrespectively.�e classical and o�en studied location problem is the uncapacitated facility location problem(UFLP)(also known as warehouse location problem) where the objective is to choose a subsetof given facilities to minimize opening costs for facilities and transportation costs to connectcustomers under certain restrictions.A formulation given in 1989 by Galvao and Raggi [GaR89] is

min∑i∈F

fiyi +∑i∈F

∑j∈J

cijxij (2.9)∑i∈F

xij = 1 ∀j ∈ J (2.10)∑i∈F

yi ≤ p (2.11)

xij ≤ yi ∀i ∈ F, j ∈ J (2.12)xij ∈ {0, 1} ∀i ∈ F, j ∈ J (2.13)

yi ∈ {0, 1} ∀i ∈ F (2.14)

with

F set of possible facilitiesJ set of customersfi costs for opening facility icij transportation costs from facility i to customer jp bound on the number of facilities to open

and the decision variables

xij =

{1 if customer j is supplied by facility i0 otherwise

yi =

{1 if facility i is opened0 otherwise

�e objective function (2.9) consists of costs for opening facilities and transportation routes.�e �rst constraint (2.10) assures that every customer is being supplied. Equation (2.11) limitsthe number of hubs to open to p and equation (2.12) makes sure that a customer j can onlybe linked to facility i if the facility is opened. �e last two constraints de�ne the decisionvariables as zero-one variables.

Page 24: Column Generation applied to a special Case of the Hub

12 CHAPTER 2. LITERATURE REVIEW AND RESEARCH GAP

In contrast to the UFLP, the p-median problem stated by Hakimi involves locating p facilitieson a network, so that the total weighted distance of serving all customers is minimized. �edistance can be weighted by costs, demand etc. �e di�erence to the UFLP are the missingopening costs for facilities.

Many other variations to the uncapacitated facility location problem exist, one of them theHub Location Problem (HLP):�e �rst paper addressing the HLP was the one by O’Kelly [O’K86](1986). He was also theone developing a quadratic formulation for the HLP [O’K87]. Given |I| demand nodes, a �owbetween origin-destination pairs and a number of hubs to use, the objective is to minimize thetotal transportation costs to meet customer demand.�e formulation by O’Kelly from 1987 is the following:

min∑i∈I

∑j∈J

wij

(∑h∈H

xihcih +∑m∈H

xjmcjm + α∑h∈H

∑m∈H

xihxjmckm

)(2.15)

(n− p+ 1)xhh −∑i∈I∪J

xih ≥ 0 ∀h ∈ H, (2.16)∑h∈H

xih = 1 ∀i ∈ I ∪ J (2.17)∑h∈H

xhh = p (2.18)

xih ∈ {0, 1} ∀i ∈ I ∪ J ∪H, h ∈ H (2.19)

with the parameters

I set of suppliersJ set of customersH set of hubswi,j the �ow between supplier i and customer jci,j the transportation cost of a unit of �ow between i and jp number of hubs to use

and the decision variables

xih:={

1 if node i ∈ I ∪ J is allocated to hub h0 else

xhh:={

1 if h is a hub and used0 else

�e objective function (2.15) minimizes the sum of transportation costs resulting from trans-ports between nodes and hubs and hubs and hubs. α is a discount factor, assuming that trans-portation costs are less between hub-hub links since economies of scale applies. �e �rstconstraint (2.16) ensures that a node i can only be allocated to a hub h if the hub is used.

Page 25: Column Generation applied to a special Case of the Hub

2.2. LOCATION PROBLEMS 13

Equality (2.18) states that every node i is allocated to exactly one hub and equation (2.19) lim-its the number of hubs to p.�e UFTL can be interpreted as the outbound side of a transportation network, whereas theHLP considers the entire network, as shown in �gure 2.1 and 2.2. �e facilities F in the UFLPare called hubs H in the HLP.

F J

Figure 2.1: �e UFLP

I H J

Figure 2.2: �e HLP

In both problems it needs to be decided on a subset of facilities F (hubs H). �e di�erenceis that the UFLP assumes these facilities F being able to satisfy any demand, whereas in theHLP, the nodesH are also supplied. Another main di�erence is, that in the HLP customer nodej ∈ J do not need to be just covered any more, but a �ow wi,j de�ned on a supplier-customerrelationship satis�ed .

Later Cambell [Cam90] and Aykin [Ayk95] other mathematical formulations for the HLP arepublished. In the work of Farahani of 2013 [FHAN13] the literature about HLPs is classi�edin the following manner:

• domain of possible hubs: discrete or continuous

• objective function:Mini-Max (minimum of the maximal transportation costs from origin to destinationnodes),Mini-Sum (minimum of total hub location plus transportation costs)

• number of hubs: decision variable or parameter

• hub capacity: uncapacitated or capacitated

• cost of locating hubs: none, �xed or variable

• number of hubs: single or multiple

• allocation of non-hub nodes to hubs: single or multiple

• cost for allocation: none, �xed or variable

�e problem stated by O’Kelly [O’K87] which is also called Single Allocation p-Hub MedianProblem (SApHMP), considers the case of a discrete hub domain with the number of hubs p as

Page 26: Column Generation applied to a special Case of the Hub

14 CHAPTER 2. LITERATURE REVIEW AND RESEARCH GAP

parameter. He assumes the hubs to be uncapacitated and no costs for locating them. Besidesnon-hub nodes are connected to exactly one hub.Aykin extended the model in 1995 [Ayk95] by allowing a maximum of two hubs being con-nected to a demand node.

Many papers have been published on the HLR, but most of them are based on the followingassumptions:

• �e hub network is complete

• Each node (origin/destination) is connected to a hub by a direct link (no links amongnon-hub nodes exist)

• Transportation costs are linear

• �e tra�c cost among hubs is discounted by a factor independent of the �ow

A helpful overview about papers until 2007 and about papers from 2008 until 2013 can befound in [AKK12] and [FHAN13] respectively.In this thesis the four main assumptions stated above are relaxed. �e special case of the HLRPmodels a discrete domain of hubs, whose number is given. Furthermore the hub capacity isunlimited, no �xed costs locating hubs evolve and multiple allocation of non-hub nodes tohubs is assumed. �e objective is a Mini-Sum.

2.3 Nonlinear-Cost Transportation ProblemsNetwork �ow problems o�en deal with non-linear cost functions. In many cases though non-linear cost functions are simply replaced by crude linear approximations or one step �xed costsas described by Kumar [Kum14]. Recalling the staircase structured cost function in �gure 1.7,linearization means that costs for a cost segment are divided by the capacity of that segment,resulting in costs per unit of goods, which is shown in �gure 2.3:

total price

quantity

LTL

FTL

capacity of vehicle

Figure 2.3: Linearization of the cost function

Page 27: Column Generation applied to a special Case of the Hub

2.3. NONLINEAR-COST TRANSPORTATION PROBLEMS 15

�is approximation is easy to make, but a crude solution, because it overestimates lower costsegments.

Nonlinear-cost transportation problems can be classi�ed in the following manner: �e �xed-charge transportation problem (FCTP) includes �xed costs for every route plus variable costsproportional to the amount carried. �e problem is NP-hard, a comprehensive literatureoverview on FCTP can be found in Xie and Jia [XJ12].�e step �xed-charge transportation problem (SFCTP) is a variation of the FCTP, in whichthe �xed costs are in the form of a step function depending on the amount of load. Anothersubclass are staircase structured cost problems, in which no variable costs emerge, but only�xed costs following a step structure. As mentioned before, the focus of this work lies on thela�er one.Kowalski [KL08], Croxton [T. 07] and Kumar [Kum14] use a disaggregation technique to dealwith this cost structure. �e variable disaggregation technique imposes a new decision vari-able for every cost segment of.�e costs for routing over edges between nodes i ∈ I and j ∈ J become

∑i∈I

∑j∈J

∑s∈S

ckijzsij

with zsij =

{1 if cost segment s is used0 else

and csij := �xed costs for segment s between supplier i and customer j.

�e following constraints need to be added

0 ≤ qsij ≤ Rszsij ∀i ∈ I, j ∈ J, s ∈ S (2.20)zsij ≥ zs+1

ij ∀ ∈ I, j ∈ J, s ∈ S (2.21)zsij ∈ {0, 1} ∀i ∈ I, j ∈ J (2.22)

with

qsij := quantity shipped between i and j using cost segment s

and

Rs := UBs − LBs = range of segment s.

Constraint (2.20) ensures that the quantity ful�lls the range of the segment chosen, whereasconstraint (2.21) ensures that �rst the lower segments are used and only when the upper boundis reached another segment is opened.In this thesis Kumar’s disaggregation approach is, but the above mentioned constraint (2.21)is not adopted. Only one cost segment can to be chosen.

Page 28: Column Generation applied to a special Case of the Hub

16 CHAPTER 2. LITERATURE REVIEW AND RESEARCH GAP

2.4 �e special Hub Location and Routing Problem

2.4.1 Location and Routing Problems

�ere is extensive literature addressing the facility location problem and the vehicle routingproblem, however the idea of combining these two problems to the location and routing prob-lem (LRP) and solving them simultaneously is relatively new and few literature exists.�e classical LRP can be de�ned on a complete, weighted and undirected graph with a homo-geneous �eet of vehicles with capacity constraints.A MIP formulation was given by Joker and Sahraeian in 2011 [JS12]:

min∑i∈F

oiyi +∑i∈V

∑j∈V

∑k∈K

cijxijk +∑i∈F

∑j∈J

∑k∈K

fixijk (2.23)

∑k∈K

∑i∈V

xijk = 1 ∀j ∈ J (2.24)∑j∈J

∑j∈V

djxijk ≤ C ∀k ∈ K (2.25)∑j∈J

djfij ≤ Wiyi ∀i ∈ F (2.26)∑j∈V

xijk −∑j∈V

xjik = 0 ∀i ∈ V, k ∈ K (2.27)∑i∈F

∑j∈J

xijk ≤ 1 ∀k ∈ K (2.28)∑i∈S

∑j∈S

xijk ≤ |S| − 1 ∀S ⊆ J, k ∈ K (2.29)∑u∈J

xiuk +∑

u∈V {j}

xujk ≤ 1 + fij ∀i ∈ F, j ∈ J, k ∈ K (2.30)

xijk ∈ {0, 1} ∀i ∈ F, j ∈ V, k ∈ K (2.31)yi ∈ {0, 1} ∀i ∈ F (2.32)

fij ∈ {0, 1} ∀i ∈ F, j ∈ J (2.33)

with the parameters

Page 29: Column Generation applied to a special Case of the Hub

2.4. THE SPECIAL HUB LOCATION AND ROUTING PROBLEM 17

K set of identical vehiclesF set of facilitiesJ set of customersV set of all nodes, V = F ∪ Jdj demand of customer ici,j transportation cost of a unit of demand between nodes i ∈ V and j ∈ Vfi facility dependent �xed costs for a vehicle starting thereoi opening cost for facility jWi capacity of facility iC capacity of vehicle

and the decision variables

yi:={

1 if facility i is opened0 else

xijk:={

1 if edge (i, j) is traversed by vehicle k0 else

fij :={

1 if node i is assigned to depot j0 else

�e objective function minimizes the costs arising from opening facilities and transportationincluding �xed costs associated with vehicles used. Constraints (2.24) ensure that each cus-tomer gets assigned exactly one route and it has only one predecessor in its route. Inequalities(2.25) and (2.26) are capacity constraints for routes and facilities respectively. Constraint (2.27)is the preservation of �ow constraint for each vehicle route, whereas (2.28) states that one edgecan only be used once by a vehicle k. Constraint (2.29) is the subtour elimination constraintand (2.30) makes sure that a customer is assigned to a facility if there exists a route connectingthem. V {j} speci�es all nodes to which j is connected through an edge. Eventually constraint(2.31) until (2.33) specify the decision variables to be binary.

Salhi and Rand [SIW13] (1989) presented for the �rst time the bene�ts when solving the LRPin contrast to solving the FLP and VRP independently. Prodhon and Prins [PP14] give a clus-tered overview about recent papers from 2007 onwards:Since the FLP and the VRP are already NP-hard, the literature on exact solving methods for

the LRP is quite small, but in recent years the interest in solving this problem has becomegreater: Belenguer et al. [BBP+11] develop a branch-and-cut algorithm strengthened by validinequalities. Akca, Berger and Ralphs [ABR09] exploits a set partitioning formulation and usea column generation approach. Contardo [Con] uses a branch-and-cut-and-price algorithm.

2.4.2 Hub Location and Routing Problems�e equivalent hub problem to the LRP is the hub location and routing problem (HLRP). Whilstthe literature on the LRP is already limited, for the HLRP it is even smaller. Besides authorshave di�erent opinions about its exact de�nition and the di�erences to the LRP are ambiguous.Authors agree on the issue that the HLRP is a combination of the hub location and the vehiclerouting problem, whereas the exact routing problem is de�ned in di�erent manners:

Page 30: Column Generation applied to a special Case of the Hub

18 CHAPTER 2. LITERATURE REVIEW AND RESEARCH GAP

Kind of location-routing problem 2007 2008 2009 2010 2011 2012 2013 Total

LRP with uncap. vehicles 1 0 0 1 0 1 1 4LRP with uncap. depots 0 1 0 0 1 1 2 5Capacitated LRP 2 1 1 2 4 2 6 18Two-echelon LRP 1 0 1 1 1 4 0 8Truck and trailer routing problem 0 0 2 2 3 1 3 10LRP with multiple objects 1 1 0 1 1 3 0 7Add. a�ributes on nodes & vehicles 1 1 1 0 1 1 1 6Multi-period LRP 0 1 0 1 1 1 0 4Inventory LRP 1 0 0 1 1 0 1 4LRP with uncertain data 0 0 0 1 1 1 3 6

Total 7 5 5 10 14 15 16 72

Table 2.1: Number of papers per year on location-routing problems from 2007 to 2013, source:Prodhon [PP14]

Some authors already describe O’Kelly’s model as a HLRP (QUELLEN), whereas others give adi�erent de�nition of the routing. For example Aykin [Ayk95] whose model was mentionedearlier as an extension of the HLP, classi�es his model as an HLRP and de�nes the routingcomponent as choosing a direct edge between either an origin-destination pair or via one ortwo hubs. For Rodriguez and Martinez [RMSGY14] the routing part of the HLRP consists ofsolving a TSP at every hub connecting its allocated nodes.

In this thesis the model de�nition given by Rieck, Ehrenberg and Zimmermann of 2014 isof interest [REZ14]. Similar to the HLP, which is an extension of the UFLP, the HLRP is anextension of the LRP and speci�c hub assumptions. A detailed model description is givenin [REZ14].

2.4.3 Modi�cation to the Hub Location and Routing Problem�e aspects which will be di�erent in the special HLRP modeled in this thesis to the oneof [REZ14] are the following:

• Instead of a VRP an open VRP is solved: vehicles originate from suppliers and end athubs or customers.

• Since dealing with a many-to-many transportation network, the routing decision ismade for every supplier-customer relationship rather than for every supplier or cus-tomer separately.

• Inter-hub edges are not discounted by a crude factor α. Instead the costs on all edgesdepend on the tari� chosen, which might dependent on the quantity.

• �ere is an additional minimal frequency imposed, in which a customer needs to beserved by a supplier.

Page 31: Column Generation applied to a special Case of the Hub

2.4. THE SPECIAL HUB LOCATION AND ROUTING PROBLEM 19

• �e number of hubs to pass on one route is not limited.

• �ere are two types of cost functions: one which is staircase structured and is de�nedon every edge and another one which is constant and only de�ned on a milkrun thuson a subset of edges.

No mathematical literature was found handling this special case of the HLRP. For the last threepoints, no literature was even found when considering these cases separately.Concerning the inclusion of milkruns, a planning concept is presented by Wildemann in[WN09]. For suppliers, �rst an analysis is conducted, stating whether a supplier is a poten-tial candidate for a milkrun. �en the candidate sets are clustered according to their deliveryfrequencies and consolidated amount of goods. �en for each cluster a routing is determined.�is idea will partly play a role when generating a feasible start solution to the special HLRP.Summing up, the problems described in this chapter and their relation to the special HLRP thefollowing �gure evolves.

VRP UFLP NLCTP

OVRP VRPPD MDVRP

LRP HLP

FCTP

SFCTP

HLRP

special HLRP

Figure 2.4: Classi�cation of the special HLRP

Page 32: Column Generation applied to a special Case of the Hub

20 CHAPTER 2. LITERATURE REVIEW AND RESEARCH GAP

Page 33: Column Generation applied to a special Case of the Hub

Chapter 3

�e Model

A�er having explained the logistics background and given an overview about related liter-ature, the special HLRP will be de�ned as a path-based minimum cost �ow problem in thischapter. �e following notation is used throughout this thesis

Sets

O set of originsD set of destinationsH set of hubsV set of nodes, V = O ∪H ∪DE set of edgesOD set of origin-destination pairs, OD ⊆ O ×DP set of transportation routes in the networkPod set of transportation routes for od-pair od ∈ OD, Pod ⊆ PS set of tari� segmentsK set of delivery frequencies

Parameters

Stopsmax maximal number of stops for one milkrunTDistmax maximal total distance for one milkrunDistmax maximal distance between two stops within one milkrunMrrmin minimal main run ratiodod average weekly demand to be transported from origin o to destination dmod minimal weekly frequency for delivery for od-pair (o, d)disti,j distance between node i and j, i, j ∈ Vcse transportation costs using cost segment s ∈ Scmr transportation costs for milkrun mrch handling costs per unit of goods at hub hHmax maximal number of hubs to useCs capacity constraint of cost segment s

21

Page 34: Column Generation applied to a special Case of the Hub

22 CHAPTER 3. THE MODEL

�e terms origin, destination and node will be used as synonyms for supplier, customer andlocation respectively. Transportation route and path are used likewise as well.In this chapter, �rst, a proper de�nition of the logistics terms, assumptions and constraints aregiven, second, two models are de�ned and compared. �e �rst one evolves when modelingthe constraints in a straightforward approach, while the second model is an advanced versionmaking use of special ordered sets, symmetry e�ects and information about milkruns.

3.1 De�nitionsDe�nition 3.1 (OD-Pair). An od-pair od ∈ OD ⊆ O×D is a two-elementary set, consistingof an origin o ∈ O and a destination d ∈ D between which a demand dod is de�ned.

De�nition 3.2 (Transportation network). A transportation network T = (G,OD) consistsof a digraph G = (V,E) with V = O ∪ H ∪ D, E ⊆ V × V and origin-destination-pairsod ∈ OD.

De�nition 3.3 (Transportation route). Let T = (G,OD) be a transportation network.�en a transportation route (path) p ∈ P is a �nite sequence of edges (e1, e2, . . . , en) where the�rst node of ei+1 is identical to the last node of ei. p is connecting nodes v1, v2, . . . , vn+1 withv1 ∈ O and vn+1 ∈ D. p ∈ P is a feasible transportation route for od-pair (o, d) = od ∈ ODif vi = o for some i ∈ {1, . . . , n} and vn+1 = d. �en p belongs to the subset Pod ⊆ P .

De�nition 3.4 (Direct-transport). Let T = (G,OD) be a transportation network.A transportation route p ∈ P is called direct-transport (direct-path) if it consists of exactlyone edge e ∈ Eod. �e set of direct-transports is denoted by P direct ⊂ P .

De�nition 3.5 (Hub-transport). Let T = (G,OD) be a transportation network.A transportation route p ∈ P is called hub-transport (hub-path) if its set of nodes v1, v2, . . . , vncontains any hub h ∈ H . �e set of hub-transports is denoted by P hub ⊂ P .

De�nition 3.6 (Milkrun). Let T = (G,OD) be a transportation network.�en a milkrun mr ∈ MR is a �nite sequence of edges (e1, e2, . . . , en), where the �rst nodeof ei+1 is identical to the last node of ei. mr is connecting nodes (v1, v2, . . . , vn+1), with eitherv1, ..., vn ∈ O and vn+1 ∈ H (Inbound Milkrun) or v1 ∈ H and v2, ..., vn+1 ∈ D (OutboundMilkrun). For od-pair (o, d) = od ∈ OD, a milkrun mr with vi = o for some i ∈ {1, . . . , n}and vn+1 = h for a hub h ∈ H becomes a feasible transportation route for od if it is comple-mented by the edge (h, d) ∈ Ehd .

Note that only the �rst case v1, ..., vn ∈ O and vn+1 ∈ H (Inbound Milkrun) is considered inthis thesis. Hence if the term milkrun is used the inbound case is meant.Since there is one vehicle assigned to a milkrun, the capacity constraint needs to be ful�lledon all edges e ∈ mr for the �ow of the last edge qen =

∑od∈OD:

od using mrdod. �e exact de�nition of

a �ow is given below.Besides, direct-transports and hub-transports constitute a disjoint partition of transportationroutes. In real logistics networks though, milkruns, which do not pass a hub, evolve. �enroutes, not passing a hub, but consisting of more than one edge, exist. �is case is not consid-ered in this thesis.

Page 35: Column Generation applied to a special Case of the Hub

3.1. DEFINITIONS 23

De�nition 3.7 (Mainrun ratio). �e mainrun ratio of an inbound milkrun mr connectingnodes (v1, v2, . . . , vn+1) with edges (e1, e2, . . . , en) is the ratio of the distance between the lasttwo nodes disten to the total length of the milkrun:

mainrun ratio(mr) =disten∑ni=1 distei

Among all edges of a milkrun, the consolidation e�ect is the highest on the last one en. �erethe highest utilized capacity of a vehicle applies. Consequently this edge should be long com-pared to the rest of the milkrun and a minimal mainrun ratio is set.De�nition 3.8 (Edge �ow). Let T = (G,OD) be a transportation network.Let e ∈ E and P : OD → P, od 7→ pod be a mapping of od-pairs on transportation routes.Let P−1 be its reverse function. �en the �ow Q : E → R, e 7→ qe on e is de�ned as the sumof demands coming from od-pairs whose paths contains e:

qe =∑p∈Pp3e

∑od∈P−1(p)

dod

.De�nition 3.9 (Consolidation and consolidation e�ect). Let T = (G,OD) be a transportationnetwork.�en on edge e ∈ E the set of demands dod coming from od-pairs od ∈ OD whose transporta-tion route pod contains e is called consolidated if one �ow qe is de�ned. Edge e ∈ E is thencalled consolidating.Let C : R → R, q 7→ cq be a cost function, assigning costs to a quantity. �en the consoli-dation e�ect CE on an edge e ∈ E describes the di�erence between costs for the �ow qe andthe sum of costs for demands dod coming from all od-pairs, whose transportation route P(od)uses e:

CE(e) =∑p∈Pp3e

∑od∈P−1(p)

C(dod)− C(qe)

When the consolidation e�ect if positive, cost savings emerge. Note that in logistics networksbesides cost savings also other consolidation e�ects like less organizational complexity andmanpower apply.

De�nition 3.10 (Loading meter). Let lld, wld and hld be the length, width and height of aloading device ld respectively. Let lt, wt and ht be the equivalent measure for a transportvehicle t.�en the loading meter ldm(ld) of the loading device ld is the portion of length lt it consumeswhen packed optimally in truck t:

lt/

[max

(b ltlldcb wt

wld

c, b ltwld

cbwt

lldc)b hthldc]

�e term loading meter is used in the truck industry and describes one meter of a truck’sloading space respective to its length.A loading meter is de�ned on the loading device w.r.t to the used transportation vehicle.�ough for the further understanding of this thesis, the exact de�nition of a loading meter isnot essential, an example is given below to clarify its meaning.

Page 36: Column Generation applied to a special Case of the Hub

24 CHAPTER 3. THE MODEL

Example 3.11. Articles are shipped via euro pale�es of the dimensions 1.2 × 0.8 × 1.44 m(length × width × height). In the automotive industry euro pale�es are assumed to reach aheight of 1 m when loaded.�e usual transportation vehicle is a mega trailer of the dimensions 13.6 × 2.4 × 3 m.To avoid solving a complicated packing problem one assumes that either the pale�es arepacked lengthwise or crosswise but not mixed.

�e two packing options are

13.6m 13.6m

2.4m 33 pale�es 34 pale�es

Figure 3.1: Packing lengthwise versus packing crosswise.

When assuming loading devices being stacked on top of each other, the euro pale�es �t intothe vehicle 102 times when packed in an optimal way, thus in this case crosswise. Hence onepale�e has 13.6/102=0.133 LDM. If necessary the value for one article amounts to 0.00133 ldmgiven that one pale�e can carry up to 100 articles.

3.2 Assumptions�e following assumptions are made to the special HLRP.

• A transportation network T = (G,OD) is given. �e digraph G = (V,E) consists of:

V = O ∪H ∪D

E ⊆ Eod ∪ Eoo ∪ Eoh ∪ Ehh ∪ Ehd

with

Eod = {(v1, v2) ∈ O ×D | (v1, v2) ∈ OD}Eoo = {(v1, v2) ∈ O ×O | distv1,v2 ≤ Distmax}Eoh = {(v1, v2) ∈ O ×H}Ehh = {(v1, v2) ∈ H ×H}Ehd = {(v1, v2) ∈ H ×D}

• A transportation route pod exists for every od-pair od ∈ OD.

• A minimal delivery frequency m : od 7→ mod ∈ R exists for every od-pair od ∈ OD,which has to be ful�lled on all edges of its path pod.

Page 37: Column Generation applied to a special Case of the Hub

3.2. ASSUMPTIONS 25

• Edges e ∈ E are consolidating.

• Handling costs per unit of demand at hubs emerge.�ese costs do not have to be given explicitly, sometimes they are already included intransportation costs.

• �ere is a homogeneous �eet of vehicles.�is assumption is made because the following case studies evolve from the automotivesector, in which the mega trailer, which was specially designed to meet the transporta-tion demand of automotive parts, is mainly used.

• �e number of vehicles is unlimited.�is assumptions is legitimate, because the carrier bears the responsibility for the vehi-cles. If there are too few, he has to lease commi�ed assets. �e costs within the modeldo not change.

• For milkruns mr ∈MR the transportation tari� depends on costs per stop cs and costsper kilometer cd:

c(mr) = cs(mr) + cd(mr)

�e evolving tari� function is constant w.r.t. a given set of edges.

• For edges e ∈ E either FTL or LTL tari�s apply.

– FTL tari�s consist of �xed costs cf and cost per kilometer cd:

cFTL(e) = cf + cd(diste)

�e evolving tari� function is constant w.r.t to a single edge.– LTL tari�s consist of costs per kilometer cd and costs per amount of good carriedcq. �ese costs depend on the quantity segment s ∈ S:

cLTL(e) = csq(qe) + cd(diste) for qe ≤ Cse

�e evolving tari� function is piecewise constant w.r.t to a single edge.

• Only loading meters are used to measure the demand.Usually the three dimensions weight, volume and loading meter of an article are con-sidered and the capacity restriction Cs of the LTL tari� segment has to be ful�lled by allof them. For reasons of simplicity only the last one is considered here.

• On all edges e of a path p only one frequency can be set.

• On all edges e of a path p di�erent numbers of vehicles can be used.

• Since storage is assumed nonexistent, storage costs are not considered.

• For the same reason capacity constraints for hubs do not emerge.

Page 38: Column Generation applied to a special Case of the Hub

26 CHAPTER 3. THE MODEL

• Articles are shipped directly, no loading device is assumed.Usually articles are delivered through the use of loading devices like euro pallets de�ningthe loading meters, but for reasons of simplicity they are neglected and loading metersde�ned on articles.

�ere are a number of constraints considering milkruns and hubs. �ere is a given

• maximal number of stops Stopsmax within one milkrun

• maximal total distance TDistmax covered by one milkrun

• maximal distance Distmax between two milkrun stops

• minimal main run ratio Mrrmin

• maximal number Hmax of hubs to use

�e �rst four constraints will be implicitly modeled through the generation of paths. �e ��hone will be formulated explicitly.

3.3 ProblemA feasible solution to the special HLRP is mapping every od-pair to a transportation routeP : OD → P, od 7→ pod, assigning a delivery frequency to every transportation routeF : P → R+, p 7→ fp and assigning a delivery frequency and number of vehicles to ev-ery edge FV : E → R+ × N, e 7→ (fe, ve) such that demand dod gets transported via podat least mod times per time period for every od-pair od ∈ OD. An optimal solution to thespecial HLRP is a feasible one which minimizes transportation- and hub-costs. �e problem ismodeled as a optimization problem, formulated as a MIP. A path-based formulation is chosen.To clarify the assumptions and constraints imposed on the problem, an example of a trans-portation network and a feasible solution to the special HLRP is given.

Example 3.12. Let the transportation network consist of originsO = {o1, o2, o3}, hubsH ={h1, h2} and destinations D = {d1, d2} and the od-pairs shown in table 3.1.

od-pair(o, d)

demand(dod)

frequency(mod)

(o1,d1) 13 ldm 1(o1,d2) 33 ldm 2(o2,d1) 2 ldm 2(o2,d2) 4 ldm 1(o3,d1) 20 ldm 3

Table 3.1: OD-pairs with demand and frequencies

Let the maximal distance allowed between milkrun nodes beDistmax = 200 km, the maximaltotal distance TDistmax = 1000 km, the maximal number of milkrun stops Stopsmax = 2 and

Page 39: Column Generation applied to a special Case of the Hub

3.3. PROBLEM 27

the maximal number of hubs Hmax = 2.In �gure (3.5) T = (G,OD) is depicted with its edges E. Because ofDistmax, there is no edgebetween o2 and o3 (see table 3.4). Furthermore there is no edge between o3 and d2 as wellbecause (o3, d2) /∈ OD.LTL and FTL tari�s depend on the distance between nodes. By reasons of simplicity let therebe only two di�erent types of edges in the network considering length: edges constitutingdirect-paths Eod and the rest. As in �gure 1.7, for every edge distance, LTL and FTL tari�s canbe modeled in one function which, is shown in tables 3.2 and 3.3. �e highest segment s = 3represents the FTL tari�.

Segment(s)

Cost(cs)

Capacity(Cs)

1 e 70 4 ldm2 e 100 7 ldm3 e 150 13.6 ldm

Figure 3.2: Cost function for Eod

Segment(s)

Cost(cs)

Capacity(Cs)

1 e 40 2 ldm2 e 70 5 ldm3 e 100 13.6 ldm

Figure 3.3: Cost function for E \ Eod

With the given parameters four di�erent milkruns are possible shown in �gure 3.2. Costs areset to e 1/km and e 50/stop.

Milkrun Edges Nodes Costs(cmr)

mr1 e5, e8 o1→ o2→ h1 e 230mr2 e5, e9 o1→ o2→ h2 e 250mr3 e5, e6 o2→ o1→ h1 e 250mr4 e5, e7 o2→ o1→ h2 e 300

Table 3.2: Milkruns and their costs

from(i)

to(j)

distance(disti,j)

o1 o2 100 kmo2 o3 250 kmo1 o3 350 kmo1 h1 100 kmo1 h2 150 kmo2 h1 80 kmo2 h2 100 km

Figure 3.4: Distance between origins andorigins and hubs

�en a feasible solution to the special hub location and routing problem of the transportationnetwork T is presented in (3.6).Four paths are chosen for the �ve od-pairs (path p2 is chosen both for od-pairs (o1, d2) and(o2, d2)). �e �rst od-pair (o1, d1) uses the direct-transport p1 via no hub, due to its quantityit can use the highest cost segment with e 150. �e second, third and fourth od-pairs (o1, d2),(o2, d1) and (o2, d2) use a milkrun mr2 which is included in paths p2 and p3. With 39 ldm onthe last edge e9, the milkrun needs to be used three times. �us costs amount to e 750. Onedge e11 between o3 and h2 20 ldm are transported, requiring only two vehicles. But since theminimal delivery frequency of od-pair (o3, d1) is three, a vehicle needs to be driven at leastthree times. �erefore the quantity per vehicle is 6.67, which accounts to e 100 per vehicle.Edge e12 between the two hubs is used by paths p4 and p3, resulting in a total of 22 ldm and afrequency of three again because of od-pair (o3, d1). �e cost calculation for the other edges

Page 40: Column Generation applied to a special Case of the Hub

28 CHAPTER 3. THE MODEL

is similar, therefore it is not explain in detail.

o1

o2

o3

h2

h1d1

d2

13/1

33/2

4/1

2/2

20/3

demand/frequency ofod-pairedge

e6e7e5 e1e2

e8

e9e3

e10e11

e4

e13

e14

e12e15

e16

Figure 3.5: �e transportation network T = (G,OD)

o1

o2

o3

h2

h1d1

d2

qp

demand transportedpath p is used

p113

33

p239

33

p420

p3 22

22

Figure 3.6: A feasible solution to the special HLRP for T

Page 41: Column Generation applied to a special Case of the Hub

3.4. FIRST MODELING APPROACH 29

3.4 First Modeling ApproachBefore presenting the constraints and the objective function, the modeling of the cost functionis mathematically explained and the choice for the decision variables justi�ed.

Cost function

Since for every edge e ∈ E the distance is �xed, the LTL and the FTL tari�s constitute amonotone staircase function depending only on the quantity. With C denoting the capacityof an entire transport vehicle and Cs, s ∈ S, the capacities for the di�erent tari� segments,the tari� function can be de�ned as C e : [0, C] → R+, qe 7→ cse for Cs−1 < qe ≤ Cs and0 = C0 < C1 < · · · < CS = C . To cope with this non-linear function, the approach ofKumar [Kum14] is applied and for every quantity segment of the cost function a binary deci-sion variable tse introduced. For an edge e ∈ E, tse adopts a nonzero value if and only if costsegment s is used and thus qse greater zero.�e FTL tari� creates the highest segment CS with the capacity equal to the capacity C of thevehicle. �e lower capacity bound for this segment equals zero.

For every milkrun, the number of stops and its distance are �xed, resulting in a constantmilkrun cost function w.r.t the quantity. �e milkrun tari� function is thus de�ned as C mr :[0, C] → R+,

∑e∈mr qe 7→ cmr. However, in the transportation network, every edge should

get assigned a frequency, quantity and also costs. �erefore a helping cost segment h is intro-duced which can only be chosen for an edge out of a milkrun e ∈ Eoo∪Eoh if the correspondingmilkruns is used. �e range of the segment amounts to an entire vehicle.

Decision variables

Decision variables for both edges and paths need to be introduced. Di�erent demand �owscan be de�ned on every edge of one transportation route p ∈ P , thus di�erent cost segmentsof the cost function are chosen. Costs are only de�ned on edges and on milkruns, and requiresthe use of edge decision variables.On the other hand a transportation route p needs to be assigned to every od-pair od ∈ OD.�is could be modeled by edge variables through an all-pairs-shortest-path approach. �eproblem evolves at origin nodes. For a given od-pair (o, d) = od, the path does not need tostart at o when consisting of a milkrun.Furthermore, modeling the problem as a pure minimum cost �ow problem lacks the abilityto impose minimal frequencies and calculate the �ow on edges which both depend on theod-pairs which use these edges in their paths. �is is only known when introducing an extravariable containing the information whether an od-pair uses this path.

Page 42: Column Generation applied to a special Case of the Hub

30 CHAPTER 3. THE MODEL

Let

xp :=

{1 if path p is used0 otherwise

ze :=

{1 if edge e is used0 otherwise

fe := weekly frequency of edge e, fe ∈ Rfp := weekly frequency of path p, fp ∈ Rve := number of vehicles shipping goods on edge e, fe ∈ N0

use :=

{1 if edge e uses cost segment s0 otherwise

wh :=

{1 if hub h is used0 otherwise

qe := amount transported on edge eqse := amount transported on edge ein cost segments

Note that no variable for the number of vehicles on a path is de�ned since di�erent numbersof vehicles are allowed to be used along every edge of one transportation route.In the next part a mixed-integer program is formulated consisting of the explained assump-tions, constraints and the objective to minimize the total transportation and hub costs.

3.4.1 ConstraintsEvery od-pair receives a path

To every origin-destination pair a path through the network needs to be assigned.∑p∈Pod

xp = 1 ∀od ∈ OD (3.1)

Usage of edge

An edge can only be chosen, if at least one path containing this edge is used.

ze ≤∑p∈P :p3e

xp ∀e ∈ E (3.2)

On the other hand, an edge has to be chosen, if there are any assigned paths containing it.�erefore a big M is introduced.

M1ze ≥∑p∈Pp3e

xp ∀e ∈ E (3.3)

�is M should be at least the number of paths that can use the same edge: M1 ≥ |OD|.

Page 43: Column Generation applied to a special Case of the Hub

3.4. FIRST MODELING APPROACH 31

Flow on edge

�e �ow on an edge is the sum of quantities transported over paths using this edge per chosenfrequency.

qe ≥1

fe

∑od∈OD

dod∑

p∈Pod:p3e

xp ∀e ∈ E (3.4)

�e total quantity per delivery depends on the frequency chosen for this edge. Besides thisconstraint is formulated as an inequality instead of an equality for edges e ∈ Eoo in particular.Over the �rst edge used by a milkrun the demand originating from that origin are transported.However this edge should already ful�ll the capacity constraint of the last edge when thedemands originating from all other origins passed during the milkrun were loaded. �ereforeqe rather describes the booked capacity of an edge than the actual amount of goods transportedover it.Since both qe and fe are decision variables (3.4) imposes a nonlinearity.While on an operational planning level rational numbers of frequencies are usual and even anecessity (e.g. 3/2, which means delivering the �rst week once and the second week twice),the strategic planning can deal with discrete frequencies.Additionally their range is very limited (e.g. once a week, twice a week, once a month).�erefore frequencies can be modeled as a �nite set K ⊂ N. A new parameter dod,k for everyod-pair od ∈ OD and possible frequency fk, k ∈ K is de�ned. Besides a new decisionvariables fk

e ∈ {0, 1} and fkp ∈ {0, 1} must be introduced:

dod,k =dodfk

∀od ∈ OD, k ∈ K (3.5)

�en equation (3.4) becomes

qe ≥∑

od∈OD

∑k∈K

fke dod,k

∑p∈Pod:p3e

xp ∀e ∈ E (3.6)

∑k∈K

fke = ze ∀e ∈ E (3.7)

Equation (3.7) makes sure, that exactly one frequency is assigned to every edge used.�e frequency of a path has to equal the frequency of its contained edges. �is is ensured bythe following constraints.

fkp ≤ fk

e ∀p ∈ P, ∀e ∈ p, e ∈ E, ∀k ∈ K (3.8)∑k∈K

fkp = xp ∀p ∈ P (3.9)

Since 3.6 is still not a linear constraint on the edge �ow, a �nal step is needed using the fol-lowing equality, which is explained brie�y∑

k∈K

fke

∑p∈Podp3e

xp =∑p∈Podp3e

∑k∈K

fkp ∀e ∈ E, od ∈ OD

Page 44: Column Generation applied to a special Case of the Hub

32 CHAPTER 3. THE MODEL

With (3.1), exactly one path p ∈ Pod can be set to one for every od-pair od ∈ OD. With (3.7),exactly one frequency can be chosen on an edge. �erefore it is needed to show that∑

k∈K

fke

∑p∈Podp3e

xp = 1⇔∑p∈Podp3e

∑k∈K

fkp = 1

Let∑

k∈K fke = 1. �en it follows with (3.2) and (3.7) that

∑p∈Podp3e

xp = 1. Applying constraint

(3.9) leads to∑

p∈Podp3e

∑k∈K f

kp = 1.

Let∑

p∈Podp3e

∑k∈K f

kp = 1. �en it follows with (3.9) that

∑p∈Podp3e

xp = 1. Applying constraint

(3.3) lead to (3.7)∑

k∈K fke = 1

With this modi�cation constraint (3.6) becomes linear:

qe ≥∑

od∈OD

∑p∈Podp3e

∑k∈K

fkp dod,k ∀e ∈ E (3.10)

Minimal delivery frequency on edge

�e frequency of an edge has to be at least the maximum of all minimal delivery frequenciesof od-pairs using this edge. If for example one od-pair has to be delivered once per week andthe other twice per week and their paths use the same edge, then this edge should have afrequency of at least two.

∑k∈K

fke fk ≥ max

ODmaxp∈Pod:p3e

{xpmod} ∀e ∈ E (3.11)

To linearize (3.11), the following set of inequalities is introduced:∑k∈K

fke fk ≥ xpmod ∀od ∈ OD, ∀p ∈ Pod, ∀e ∈ p, e ∈ E, (3.12)

Same frequency, �ow and number of vehicles on milkrun edge

Every edge used by one milkrun should get assigned the same frequency, the same bookedquantity and also the same number of vehicles.As mentioned before qe is not the actual quantity transported, but the booked one. On the�rst edge of a milkrun only quantities from the �rst origin are transported, on the second onequantities from the �rst and the second one etc.. �erefore the actual transported quantitiesaugment with the number of edges.However, all edges of a milkrun use the same vehicle requiring already the �rst edge to ful�llthe capacity constraint of the last edge. Hence the so called booked quantity is introduced,which has to be the same on every edge of one milkrun.With equation (3.9) and (3.8), which impose the same frequency for a path and its containededges and thus also for its milkrun, only the constraints for the same �ow and the same numberof vehicles need to be added.

qe1xp = qe2xp ∀e1, e2 ∈ (Eoo ∪ Eoh) ∩ p, p ∈ P (3.13)

Page 45: Column Generation applied to a special Case of the Hub

3.4. FIRST MODELING APPROACH 33

ve1xp = ve2xp ∀e1, e2 ∈ (Eoo ∪ Eoh) ∩ p, p ∈ P (3.14)

Equations (3.13) and (3.14) are quadratic. �ey are linearized by introducing big M’s:

qe1 − qe2 ≤M2(1− xp) ∀e1, e2 ∈ (Eoo ∪ Eoh) ∩ p, p ∈ P (3.15)qe1 − qe2 ≥ −M2(1− xp) ∀e1, e2 ∈ (Eoo ∪ Eoh) ∩ p, p ∈ P (3.16)

ve1 − ve2 ≤M3(1− xp) ∀e1, e2 ∈ (Eoo ∪ Eoh) ∩ p, p ∈ P (3.17)ve1 − ve2 ≥ −M3(1− xp) ∀e1, e2 ∈ (Eoo ∪ Eoh) ∩ p, p ∈ P (3.18)

M2 should be greater than the total demand of all od-pairs M2 ≥∑

od∈OD dod, whereas M3

has to be at least the number of vehicles needed to transport the aforementioned total demandM3 ≥

∑od∈OD dod/C .

Maximal number of hubs to use

�e number of hubs to use is limited. ∑h∈H

wh ≤ Hmax (3.19)

�e variable of an edge leading to or originating from a hub can only receive a positive valueif the hub is used. Hence the following constraints are added.

z(o,h) ≤ wh ∀h ∈ H, (o, h) = e ∈ Eoh ∪ Ehh (3.20)z(h,d) ≤ wh ∀h ∈ H, (h, d) = e ∈ Ehh ∪ Ehd (3.21)

Number of cost segments per edge

For every edge exactly one cost segment has to be chosen if the edge is used:∑s∈S

use = ze ∀e ∈ E (3.22)

Besides, the help cost segment can only be chosen, when a path is used which contains amilkrun that passed over this edge:

uhe = 0 ∀e ∈ E \ (Eoo ∪ Eoh) (3.23)

uhe ≤∑p∈P :p3e

p∩Eoo 6=∅

xp ∀e ∈ (Eoh ∪ Eoo) (3.24)

Summing over paths whose intersection with Eoo is not empty ensures that this path doescontain a milkrun.

Page 46: Column Generation applied to a special Case of the Hub

34 CHAPTER 3. THE MODEL

�antity per cost segment and capacity constraint

�e quantity shipped over one edge in one cost segment has to be within the range of the costsegment.

veuseC

s−1 < qse ≤ veuseC

s ∀e ∈ E, ∀s ∈ S (3.25)

To make (3.25) linear a helping variable is introduced:

vk,se := number of vehicles using frequency k and cost segment s on edge e, vk,se ∈ Z

Additionally the equivalent variable for the milkrun part mr(p) of a path p ∈ {p′ ∈ P :p′ ∩ Eoo 6= ∅} must be introduced: Although a variable vp does not exist, the number ofvehicles on its milkrun part must be the same, because edges of one path p can get assigned adi�erent number of vehicles. It will be needed in the objective function.

vkmr(p) = number of vehicles using frequency k on milkrun part mr(p) of path p

Constraint (3.25) rewrites as follows

∑k∈K

vk,se Cs−1 < qse ≤∑k∈K

vk,se Cs ∀e ∈ E, ∀s ∈ S (3.26)

�ere does not need to be an explicit capacity constraint for the milkrun part m(p) for p ∈ P ,because it is implicitly covered by using the help segment h (3.24) on edge e ∈ Eoh of a pathp which contains milkrun.�e booked quantity on an edge equals the quantity in the used cost segment.

qe =∑s∈S

qse ∀e ∈ E (3.27)

Because of (3.22) and (3.26) at most one qse can be greater zero for every edge.

Introducing the new decision variables vk,se and vkmr(p) demands adding the following con-straints.

Page 47: Column Generation applied to a special Case of the Hub

3.4. FIRST MODELING APPROACH 35

fke ≤

∑S

vk,se ∀e ∈ E, k ∈ K (3.28)

ze ≤∑K

∑S

vk,se ∀e ∈ E (3.29)

ve =∑K

∑S

vk,se ∀e ∈ E (3.30)

vse ≤∑K

vk,se ∀e ∈ E, s ∈ S (3.31)∑S

vk,se ≤Mfke ∀e ∈ E, k ∈ K (3.32)∑

K

vk,se ≤Muse ∀e ∈ E, s ∈ S (3.33)

fkp ≤ vkmr(p) ∀p ∈ P, p ∩ Eoo 6= ∅, k ∈ K (3.34)

xp ≤∑k∈K

vkmr(p) ∀p ∈ P, p ∩ Eoo 6= ∅ (3.35)

vmr(p) =∑k∈K

vkmr(p) ∀p ∈ P, p ∩ Eoo 6= ∅ (3.36)

vkmr(p) ≤Mfkp ∀p ∈ P, p ∩ Eoo 6= ∅ (3.37)

Constraint (3.29) is redundant because of inequalities (3.28) and (3.7). �e equivalent constraintfor milkrun part (3.35) is redundant because of inequalities (3.34) and (3.9).

Set constraints

xp ∈ {0, 1} ∀p ∈ P (3.38)ze ∈ {0, 1} ∀e ∈ E (3.39)wh ∈ {0, 1} ∀h ∈ H (3.40)

fke ∈ {0, 1} ∀e ∈ E, ∀k ∈ K (3.41)fkp ∈ {0, 1} ∀e ∈ E, ∀k ∈ K (3.42)

ve ∈ N0 ∀e ∈ E (3.43)vp ∈ N0 ∀p ∈ P, p ∩ Eoo 6= ∅ (3.44)use ∈ {0, 1} ∀e ∈ E, ∀s ∈ S (3.45)qse ∈ R+ ∀e ∈ E, ∀s ∈ S (3.46)

qe ∈ R+ ∀e ∈ E (3.47)vk,se ∈ N ∀e ∈ E, k ∈ K, s ∈ S (3.48)

vkmr(p) ∈ N0 ∀p ∈ P, p ∩ Eoo 6= ∅, k ∈ K (3.49)(3.50)

Page 48: Column Generation applied to a special Case of the Hub

36 CHAPTER 3. THE MODEL

3.4.2 Objective Function�e goal is to minimize the overall costs coming from direct- and hub-transports.

min∑

e∈E\Eoo

∑k∈K

∑s∈S

fkcsev

k,se +

∑p∈P :

p∩Eoo 6=∅p∩Eoh 6=∅

fkcmr(p)vkmr(p) +

∑o∈O∪H

∑h∈H

chqo,h

�e �rst sum describes costs coming from direct- and hub-transports which do not use milkruns.�e second sum considers the costs of milkrun parts of every path. �e last sum describes thehandling costs occurring at hubs.�e entire model can be found in appendix B.

3.4.3 Complexity and First Computational Results�e number of edges grows linearly with the number of od-pairs and quadratic with the num-ber of origins and hubs:

|E| = |Eod|+ |Eoo|+ |Eoh|+ |Ehh|+ |Ehd|≤ |OD|+ |O|2 + |O||H|+ |H|2 + |H||D|= O(OD) +O((|O||H|)2) +O(|H||D|)

�e number of milkruns though grows exponentially with the number of stops:

|MR| =(|O|2

)+

(|O|3

)+ · · ·+

(|O|

(Stopsmax + 1)

)≤Stopsmax|O|Stopsmax+1

=O(|O|Stopsmax+1)

Since paths consists of milkruns, their size must at least grow exponentially with Stopsmax:

|P | =|P direct|+ |P hub|

≤|Eod|+ (|Eoh|+ |MR|)(|H|+(|H|2

)+ · · ·+

(|H|

(Hmax)

))|Ehd|

≤|OD|+ (|O||H|+ Stopsmax|O|Stopsmax+1)|Hmax||H|Hmax|H||D|=O(StopsmaxHmax|D||O|Stopsmax|H|Hmax+1) +O(Hmax|D||O||H|Hmax+2)

Consequently the number of decision variables |P |(2+|K|)+|E|(3+|K|+2|S|+|K||S|)+|H|grows exponentially with the input data Stopsmax and Hmax as well.�e number of constraints amounts to

|OD|+ |P |(3 + |E|(|K|+ |OD|) + |K|+ 4|Eoo ∪ Eoh|) + |E|(7 + 2|K|+ 3|S|)+ |Eoh|+ 2|Ehh|+ |Ehd|+ 1

= O(|OD|) +O(|O|Stopsmax+1HHmax+2)

Page 49: Column Generation applied to a special Case of the Hub

3.5. ADVANCED MODELING APPROACH 37

and thus depends exponentially on Stopsmax and Hmax as well.

�e algorithm was implemented in IVE Xpress on an Intel® Core™ i5 CPU with 2.67GHz and4 GB RAM memory under Windows 7 and tested on an instance of 9 nodes, which is shownin �gure 3.7.

4 origins 2 hubs 3 destinations

8 od-pairs

Figure 3.7: Network data of test instance

Distmax = 200 kmTDistmax = 1000 kmStopsmax = 2Mrrmin = 0.2Hmax = 2

Figure 3.8: Parameter se�ings

�e 4�ow-planning tari�s for the cost function were used, which consist of 29 cost segments.�e parameters are shown in �gure 3.8. �e resulting transportation network consists of 26edges, 9 milkruns and 61 paths. It takes 20 seconds to solve it.

3.5 Advanced Modeling ApproachSince both the size of decision variables and constraints grow exponentially with the inputdata Stopsmax and Hmax, and a very small network instance as in �gure 3.7 already takes upto 20 seconds, the model is modi�ed.�e following aspects are considered:

• Because of the strategic nature of the problem, the frequency of a delivery and the num-ber of vehicles used for one delivery express the same decision. A frequency of n onlyimplies that n vehicles need to be used. Whether they are transported all at once or atdi�erent times is an operational decision.�us instead of deciding on frequency and number of vehicles only one decision needsto be made on the number of travels. A new variable travel per edge te is introducedand ve, fe, fp and their corresponding helping variables vk,se and vkp can be disposed.

• �is new variable te does not need to be integral, because on a strategic level a numberof e.g. 2.5 travels only means that in one time period delivery is made two times, and inthe next one three times.

• A new binary decision variable ymr is introduced which states whether milkrun mr isused. It simpli�es the model because costs are de�ned on edges and milkruns.

• �antity and travel variables qe and te and their corresponding segment variables qse andtse do not need to be de�ned for edges e ∈ Eoo between origins. �e reason is explainedin the next part of this chapter. Formulating a number of constraints on these edgesbecomes unnecessary which decreased the complexity of the model signi�cantly.

Page 50: Column Generation applied to a special Case of the Hub

38 CHAPTER 3. THE MODEL

• Introducing Special Ordered Sets makes the decision variable for the tari� assignmentuse redundant and speeds up the branching process. �ese sets are explained in the nextchapter as well.

• Symmetry e�ects can occur concerning the variables tse w.r.t. to the cost segments s ∈ S.�e exact problem and how it it coped with is explained further on as well.

3.5.1 A special Case: Origin-Origin Edges Eoo

Considering inbound transportation networks, there is a large number of origins. Conse-quently the number of edges e ∈ Eoo is large (O(|O|2). �e number of milkruns, whichdepends on these edges, is one main in�uence factor for the size of the problem.�erefore, variables for these edges are tried to be avoid. It is possible to neither de�ne vari-ables qe (qse) and te (tse) nor their corresponding constraints considering the �ow and the num-ber of travels for e ∈ Eoo. �e reason is explained below.For the capacity constraint it is unneeded to know the exact �ow on edges e ∈ Eoo: Havingassumed that goods can only be picked up at every stop of a milkrun, if the last edge e ∈ Eoh

of a milkrun ful�lls the capacity constraint, also all its precedent edges e ∈ Eoo do. �is argu-mentation also applies to the number of travels.To calculate costs, variables for e ∈ Eoo are not necessary neither, only the maximal demand�ow on edge e ∈ Eoh needs to be known. Having assumed that edges are consolidating, overone edge e ∈ Eoh di�erent milkruns can be de�ned, but only one chosen. As a milkrun isuniquely de�ned by its edges, the costs for the milkrun, and the demand travel frequency areknown on edge e ∈ Eoh.

3.5.2 Special Ordered SetsSpecial ordered sets are a method used in the branch and bound algorithm to speed up thesearch procedure. In contrast to the ordinary branch and bound algorithm, this method brancheson sets of variables and not on individual variables.�e �rst paper addressing special ordered sets was the one by Beale called ”Two transportationproblems” in 1963. �e �rst paper explicitly speaking of special ordered sets was published byBeale and Tomlin [TB70] in 1970. Since then the concept of Special Ordered Sets became animportant tool in mathematical programming and today most of the mathematical program-ming systems support Special Ordered Sets. Below a brief explanation of its concept is given.

A lot of problems deal with multiple-choice sets1, e.g. the problem of deciding which plantsize to build or which job to do on which machine (Job Shop Problem). Especially for noncon-vex functions it is an o�en used tool.

�ere are two kinds of Special Ordered Sets:

• SOS1: a set of variables, of which at least one can take a positive value. All others needto be set to zero.

1 [Tom88]: A set of zero-one variables summing to one is a multiple-choice set

Page 51: Column Generation applied to a special Case of the Hub

3.5. ADVANCED MODELING APPROACH 39

• SOS2: a set of variables, of which at least two can take a positive value. �ey are typicallyused to model non-linear functions.

To determine the cost segment, the decision variables travel per cost segment tse (3.78) andquantity per cost segment qse (3.76) were introduced, of which exactly one has to be non-zerow.r.t. to the segment s ∈ S, thus belonging to SOS1.A formal explanation of the procedure is given by Beale and Tomlin [TB70] by the followinglinear problem:

min∑i∈N

cixi (3.51)∑i∈N

aixi = z (3.52)∑i∈N

xi = 1 (3.53)

xi ∈ {0, 1} (3.54)

In the usual branch and bound procedure one of the current solution variables would be chosenand set to 0 and 1. �e two evolving subproblems P1 and P2 would then be solved. �esolution of P1 might again include several non-zero variables, while the one of P2 ful�lls theintegrality constraint and (3.53) but might be infeasible for constraint (3.52).�is branching procedure is repeated over and over again, producing di�erent sets of non-integral variables in each step. Branching on multiple-choice sets can hence be very ine�cientand there is much more information in the LP relaxation which can be exploited to speed upthe branch and bound procedure.Let the current solutions of the LP relaxation be x∗i1 and x∗i2 and the sum of the used ai1 andai2 be w = ai1x

∗i1

+ ai2x∗i2

. It is supposed that this value satis�es ar ≤ w ≤ ar+1 for anyr ∈ {1, . . . , N}. �en according to Tomlin (ar, ar+1) is called the current interval. If a1 ≤a2 ≤ · · · ≤ aN , then any solution which satis�es constraint (3.52), must either include thevariables x0, . . . , xr or the variables xr+1, . . . , xN .:

Either x0 = x1 = · · · = xr = 0 or xr+1 = xr+2 = · · · = xN = 0

�is information is used to branch on the current interval. �e term ordered references thecoe�cients ai’s which order the variables and build the current interval determining to whichset a variable belongs .�erefore the ai’s are called reference row. In the modeling of the special HLRP there are twokinds of variables which can be modeled as Special Ordered Set of type 1:

• the travel assignment tse• the corresponding quantity variable qse

�e reference row will consist of the capacities of every cost segment Cs. Concerning theimplementation through the usage of SOS1 the bene�t results from an enhanced branch andbound procedure, which speeds up the search process.For concave piecewise linear functions as in �gures 1.5 and 1.6 Special Ordered Sets of type 2can be applied.

Page 52: Column Generation applied to a special Case of the Hub

40 CHAPTER 3. THE MODEL

3.5.3 SymmetriesSymmetries in mixed-integer optimization problems describe the occurrence of a group ofvariables which produce a set of feasible solutions with the same objective value. Symmetriesplay a signi�cant role in mixed-integer optimization problems. In a branch-and-bound process,they lead to a great number of branches that do not change the bound of the parent node.Besides symmetric solutions appear again and again all over the branch-and-bound tree.A formulation and de�nition is given by Margot in 2010 [Mar10]. Let the optimization problembe of the following form

min cTx

Ax ≥ b

x ∈ Rn

where A is a m × n matrix, b an m-vector and c an n-vector. Let Q be the set of feasiblesolutions to the problem. Given a permutation π ∈ Πn of the index set In = {1, . . . , n}, thesymmetry group G of the problem is the set of all permutations π of the n variables whichmap Q on itself and produce the same objective value

G := {π ∈ Πn|cTx = cTπ(x) and π(x) ∈ Q for all x ∈ Q}

If x is a feasible solution to the aforementioned problem, then also π(x), π ∈ G is. Besidesboth feasible solutions have the same objective function. �e equivalence group of x ∈ Rn

which includes all feasible permutations that lead to the same objective function is called anorbit and de�ned as

orb(x,G ) := {x′ ∈ Rn|∃π ∈ G such that x′ = π(x)}

Two main strategies to cope with symmetry e�ects are Orbital Branching and introducingvalid inequalities. Whereas Orbital Branching is a branching method in which only one nodeout of every orbit is evaluated, valid inequalities lead to only one feasible solution remainingin every orbit.In the special case of the HLRP, symmetry e�ects occur on every edge e ∈ E \Eoo concerningthe variables tse. To explain how and why symmetries occur a small example is given.

Example 3.13. Let the quantity qe = 3 ldm need to be transported on edge e. Assume thatthere are two di�erent cost segments s = 1 with range [0, 2] and s = 2 with range ]2, 4]. Costsamount to e 2 and e 3 respectively. �en s = 1 with t1e = 1.5 and s = 2 with t2e = 3 are twofeasible solutions. In both cases the total costs of edge e amount to e 3.

To formalize the problem of symmetries let te = (t1e, t2e, . . . , t

Se ) and ce = (c1e, c

2e, . . . , c

Se ) be

two S-dimensional vectors for an edge e ∈ E \ Eoo. Let the vector of capacity constraintsbe C1 = (C1, C2, . . . , CS) and C2 = (C0, C1, . . . , CS−1). Remember that tse were de�ned asspecial ordered sets regarding s ∈ S in the previous chapter, thus at most one variable of teis greater zero. Let quantity qe of edge e ∈ E \ Eoo be �xed and te a feasible solution, whichmeans that it ful�lls the upper and lower capacity constraints qe ≤ C1te and qe ≥ C2te.�en the symmetry group for quantity qe of is

Gqe = {π ∈ ΠS|cTe te = cTe π(te) and qe ≤ C1π(te) and qe ≥ C2π(te)}

Page 53: Column Generation applied to a special Case of the Hub

3.5. ADVANCED MODELING APPROACH 41

For a feasible solution te the orbit is then

orb(te,Gqe) = {t′e ∈ RS|∃π ∈ Gqe such that t′e = π(te)}

Symmetry e�ects do not evolve on origin-origin edges e ∈ Eoo, because only milkruns canpass them, for which a constant cost function is de�ned. But already when considering onlyedges e ∈ E \ Eoo, the symmetry immensely slows down the branch-and-bound process.

To handle this e�ect the symmetry group Gqe is modi�ed in such a way that only one per-mutation - which is the identity permutation π(x) = x - remains. �en the cardinality ofevery orbit reduces to one. To achieve this the fact is used that in logistics networks travelingone edge more o�en than needed is not reasonable. Even if costs might be lower, the logisticsinvestment such as time and manpower will be higher. �is constraint would turn solutions = 1 of example 3.13. infeasible. Instead of (3.11) from the �rst modeling approach, thefollowing equality would have to be added to the problem

te = max{qeC, maxod∈OD

maxp∈Pod

{xpmod}} ∀ od ∈ OD, p ∈ Pod, p 3 e ∈ E \ Eoo

�is equality presents the maximum of the actually needed travel frequency regarding thecapacity C of a vehicle and the minimal frequency condition mentioned when explaining the�rst model.�is equality is not easy to linearize though and again raises the complexity of the model.�erefore the second condition - the same objective value - which de�nes a permutation π ∈ΠS to belong to Gqe is modi�ed. A penalty factor P ∈ R is added to the objective function forevery te ∈ E \ Eoo which penalizes traveling more o�en than needed.

Page 54: Column Generation applied to a special Case of the Hub

42 CHAPTER 3. THE MODEL

3.5.4 New ModelFor the new model the decision variables and the new parameter are

xp :=

{1 if path p is used0 else

ze :=

{1 if edge e is used0 else

ymr :=

{1 if milkrun mr is used0 else

wh :=

{1 if hub h is used0 else

tmr := number of travels shipping goods on milkrun mr,te := number of travels shipping goods on edge e,tse := number of travels of shipping goods in cost segment sqe := amount transported on edge eqse := amount transported on edge e in cost segment s

P := penalty for using variable te

�e modi�ed model then is

min∑

e∈E\Eoo

∑s∈S

tsecse +

∑mr∈MR

tmrcmr +∑

o∈O∪H

∑h∈H

chqo,h +∑

e∈E\Eoo

Pte (3.55)

∑p∈Pod

xp = 1 ∀od ∈ OD (3.56)

M1ze ≥∑p∈P :p3e

xp ∀e ∈ E \ Eoo (3.57)

ze ≤∑p∈P :p3e

xp ∀e ∈ E \ Eoo (3.58)

ymr ≤∑p∈P :p3mr

xp ∀mr ∈MR (3.59)

M2ymr ≥∑p∈P :p3mr

xp ∀mr ∈MR (3.60)

te ≥∑p∈Podp3e

xpmod ∀e ∈ E \ Eoo, od ∈ OD (3.61)

Page 55: Column Generation applied to a special Case of the Hub

3.5. ADVANCED MODELING APPROACH 43

tmr ≥∑p∈Podp3mr

xpmod ∀m ∈MR, od ∈ OD (3.62)

qe =∑

od∈OD

∑p∈Pod:p3e

dodxp ∀e ∈ E \ Eoo (3.63)

qe =∑s∈S

qse ∀e ∈ E \ Eoo (3.64)

qse ≤ tseCs ∀e ∈ E \ Eoo, s ∈ S (3.65)

qse ≥ tseCs−1 ∀e ∈ E \ Eoo, s ∈ S (3.66)

the = 0 ∀e ∈ E \ Eoh (3.67)

the ≤M3∑

mr∈MR:mr3e

ymr ∀e ∈ Eoh (3.68)

te =∑s∈S

tse ∀e ∈ E \ Eoo (3.69)

te ≤M3ze ∀e ∈ E \ Eoh (3.70)te − tmr ≤M3(1− ymr) ∀e ∈ Eoh, e ∈ mr ∈MR (3.71)te − tmr ≥ −M3(1− ymr) ∀e ∈ Eoh, e ∈ mr ∈MR (3.72)∑

h∈H

wh ≤ Hmax (3.73)

z(o,h) ≤ wh ∀o ∈ O ∪H, h ∈ H (3.74)z(h,d) ≤ wh ∀h ∈ H, d ∈ H ∪D (3.75)

xp ∈ {0, 1} ∀p ∈ P (3.76)ymr ∈ {0, 1} ∀mr ∈MR (3.77)wh ∈ {0, 1} ∀h ∈ H (3.78)

ze ∈ {0, 1} ∀e ∈ E \ Eoo (3.79)tmr ∈ R ∀mr ∈MR (3.80)te ∈ R ∀e ∈ E \ Eoo (3.81)

tse ∈ R ∀e ∈ E \ Eoo, s ∈ S (3.82)he ∈ R ∀e ∈ E \ Eoo (3.83)qe ∈ R ∀e ∈ E \ Eoo (3.84)

qse ∈ R ∀e ∈ E \ Eoo, s ∈ S (3.85)

Equation (3.56) makes sure, that every od-pair receives a path. Constraints (3.57) and (3.58)state that an edge can only be used if and only if a path containing it is used. Not being edge-disjoint, several path can contain the same edge which makes it necessary to introduce againa big M1. �is M1 should be at least the maximal number of paths an edge can be containedin, M1 ≥ |OD| . �e same description applies to inequalities (3.59) and (3.60) just consideringthe usage of milkruns. �ere M2 should be at least the maximal number of paths a milkruncan be contained in. For a given number of allowed milkrun stops Stopsmax there must be at

Page 56: Column Generation applied to a special Case of the Hub

44 CHAPTER 3. THE MODEL

least |O|/(Stopsmax− 1) distinct milkruns and thus paths. With the maximal number of usedpaths amounting to |OD|, this big M results in M2 ≥ |OD|/(|O|/(Stopsmax + 1)).Constraint (3.61) and (3.62) represent the minimum delivery frequency condition for edgesand milkruns respectively. Equation (3.63) determines the �ow on an edge, whereas (3.64)until (3.66) state that the �ow in one cost segment s needs to ful�ll the capacity restrictionsCs of that cost segment. Actually only an upper bound on the capacity exists, and the solvershould, when solving the MIP, choose the highest possible one, since a concave cost function isassumed. However, in the next chapter the method column generation is applied, for which thelinear relaxation of the problem will be �rst solved. �ereby not having to ful�ll the restrictionof using exactly one cost segment, the solver sets a very small amount of �ow qe in the lowestcost segment s1 and uses its frequency ts1e to ful�ll the minimal frequency condition, whilstse�ing all the rest in the cheapest cost segment, which is the cost segment representing theFTL tari�. To avoid this constraint (3.66) is added. Equation (3.67) and inequality (3.68) state,that the helping cost segment h can only be used on an edge e ∈ Eoh, when a milkrun, whichcontains e is used. M3 is set to be the maximal number of required frequency for any milkrun,thus it is the maximum of needed frequency w.r.t to the vehicle capacity C and the minimalfrequencies of od-pairs, M3 ≥ max{

∑od∈OD dod/C, maxod∈ODmod}. Constraints (3.69) and

(3.70) ensure, that the chosen frequency per cost segment accounts for the chosen frequencyon an edge e ∈ E \ Eoo, and that the travel per edge te can only be non-negative when edgee is used. Constraints (3.71) and (3.72) ensure, that origin-hub linking edges e ∈ Eoh getassigned the same frequency as the milkrun, in which they are contained. �is big M equalsM3 as well. �e last constraints (3.73) to (3.75) are the hub related constraints, ensuring thatmaximal Hmax hubs are used. Set constraints (3.76) to (3.85) state which decision variable tobe binary.

3.5.5 Complexity and Computational Improvement�rough not having to de�ne certain constraints and variables for edges e ∈ Eoo, and us-ing one variable te to express the frequency and number of vehicles of one edge together,improvement was achieved concerning the number of constraints:

|OD|(1 + |E \ Eoo|+ |MR|) + 10|E \ Eoo|+ 4|Eoh|+ |Ehd|+ 2|Ehh|+ 2|MR|+ 1

= O(|OD||O|Stopsmax+1) +O(|H|2) +O(|H||D|) +O(|O||H|)

By not being de�ned for entire paths, but only for milkruns, the number of constraints doesnot depend exponentially on the input data Hmax anymore. With up to 85 hubs and a usuallyparameter Hmax = 5 the number of constraints could thus be reduced signi�cantly and nowproblems such as the second case study case1 with 85 hubs become tractable regarding thenumber of constraints.

Implementing the new model and using the test instance in �gure 3.7 results in a total offour solutions until the optimal was reached a�er 0.3 seconds.

�ough still a main problem remains: the exponential growth of decision variables. Trying tode�ne all decision variables for e.g. the network instance case 1 (with parameter se�ings asin 3.8 and Hmax = 5) results in more than 100 billion variables. �erefore a method to handlelarge-scale optimization problems - Column Generation - is applied.

Page 57: Column Generation applied to a special Case of the Hub

Chapter 4

Column Generation

In this chapter �rst Column Generation is brie�y introduced, before being applied to the im-proved modeling formulation of the special HLRP. Both the number of paths and milkrunsgrow exponentially, which imposes a challenge on the formulation a subproblem. �e prob-lem and its solution are explained in detail.

4.1 IntroductionColumn Generation (CG) is used for large-scale LPs pioneered by Dantzig and Wolfe (1960)[DW60] and Gilmore and Gomory (1961) [GG61].As in large-scale linear programs the vast majority of variables is zero at optimality, the mainidea of CG is to consider only a subset of variables and then successively add the ones whichimprove the objective value. �e problem is split into a master- and a subproblem. �e sub-problem is also referred to as pricing problem. �e masterproblem is the original linear pro-gram, but restricted to a subset of variables. Its dual is used to identify columns with negativereduced costs, hence the ones which improve the objective function when entering the basis.�e subproblem determines the column with the highest reduced costs.Let the optimization problem be a minimization problem of the following form

min∑i∈N

cixi∑i∈N

aixi ≥ b

xi ≥ 0 ∀i ∈ N

�en the restricted masterproblem is

min∑

i∈N ′⊂N

cixi

s.t.∑

i∈N ′⊂N

aixi ≥ b

xi ≥ 0 ∀i ∈ N ′ ⊂ N

45

Page 58: Column Generation applied to a special Case of the Hub

46 CHAPTER 4. COLUMN GENERATION

and its dual

max bTy (4.1)s.t. yai ≤ ci ∀i ∈ N ′ (4.2)

y ≥ 0 (4.3)

�e primal variable with the highest negative reduced costs is the one which violates constraint(4.2) the most. �e evolving problem is

min ci − yais.t. i ∈ N

Indices of N correspond to entities which can be described through the feasible domain Λ ofan optimization problem. �e resulting pricing problem becomes the optimization problem

min c(λi)− ya(λi)

s.t. λ ∈ Λ

When a negative solution is produced, the variable xi and its coe�cient column (ci, ai) areadded to the restricted masterproblem. �e masterproblem is solved again and possibly pro-duces an improved objective function.�is procedure is repeated until no more variables with negative reduced costs can be foundin the subproblem. �en the solution is optimal.

4.2 Masterproblem

As the number of paths as well as the number of milkruns grow exponentially and only a smallset of their associated variables will enter the basis solution, paths and milkruns are generatedin the subproblem.�e restricted masterproblem evolves when relaxing the original problem and consideringonly a subset P and MR of paths and milkruns respectively. A method of how to receive afeasible starting subset P and MR is presented at the end of this chapter.In �gure 4.1 and 4.2 the masterproblem and its dual are shown.

Page 59: Column Generation applied to a special Case of the Hub

4.2. MASTERPROBLEM 47

min∑

e∈E\Eoo

∑s∈S

tsecse +∑MR

tmrcmr +∑

o∈O∪H

∑h∈H

chqoh +∑

e∈E\Eoo

Phe

∑p∈Pod

xp = 1 ∀od ∈ OD πod ∈ R (4.4)

M1ze −∑p∈P :p3e

xp ≥ 0 ∀e ∈ E σ1e ≥ 0 (4.5)

−ze +∑p∈P :p3e

xp ≥ 0 ∀e ∈ E σ2e ≥ 0 (4.6)

−ymr +∑p∈P :p3mr

xp ≥ 0 ∀mr ∈MR ω1mr ≥ 0 (4.7)

M2ymr −∑p∈Pp3mr

xp ≥ 0 ∀mr ∈MR ω2mr ≥ 0 (4.8)

te −∑p∈P odp3e

xpmod ≥ 0 ∀e ∈ E \ Eoo, od ∈ OD µ1eod ≥ 0 (4.9)

tmr −∑

p∈Pod:p3mr

xpmod ≥ 0 ∀m ∈MR, od ∈ OD µ2mrod ≥ 0 (4.10)

qe −∑

od∈OD

∑p∈P odp3e

dodxp = 0 ∀e ∈ E \ Eoo τe ∈ R (4.11)

qe −∑s∈S

qse = 0 ∀e ∈ E \ Eoo τ 2e ∈ R (4.12)

−qse + tseCs ≥ 0 ∀e ∈ E \ Eoo, s ∈ S τ 1es ≥ 0 (4.13)

qse − tseCs−1 ≥ 0 ∀e ∈ E \ Eoo τ 2es ≥ 0 (4.14)the = 0 ∀e ∈ E \ Eoh, s ∈ S λ1e ∈ R (4.15)

−the +M3∑

mr∈MR:mr3e

ymr ≥ 0 ∀e ∈ Eoh λ2e ≥ 0 (4.16)

te −∑s∈S

tse = 0 ∀e ∈ E \ Eoo λ3e ∈ R (4.17)

M3ze − te ≥ 0 ∀e ∈ E \ Eoo λ4e ≥ 0 (4.18)−te + tmr −M3ymr ≥ −M3 ∀e ∈ Eoh, e ∈ mr ∈MR ρ1mre ≥ 0 (4.19)te − tmr −M3ymr ≥ −M3 ∀e ∈ Eoh, e ∈ mr ∈MR ρ2mre ≥ 0 (4.20)

−∑h∈H

wh ≥ Hmax β ≥ 0 (4.21)

−ze + wh ≥ 0 ∀e ∈ E \ Eoo, h ∈ H, h ∈ e β1eh ≥ 0 (4.22)

−ze + wh ≥ 0 ∀e ∈ E \ Eoo, h ∈ H, h ∈ e β2eh ≥ 0 (4.23)

Figure 4.1: �e restricted masterproblem and its dual variables

Page 60: Column Generation applied to a special Case of the Hub

48 CHAPTER 4. COLUMN GENERATION

max∑

od∈OD

πod −Hmaxβ −M3∑e∈Eoh

∑mr∈MRmr3e

(ρ1mre − ρ2mre)

∑od∈ODPod3p

πod −∑

e∈E\Eoo:e∈p

(σ1e − σ2

e) +∑

mr∈MR:mr∈p

(ω1mr − ω2

mr)−∑

od∈ODPod3p

∑e∈E\Eoo:

e∈p

modµ1eod

−∑

od∈ODPod3p

∑mr∈MR:mr∈p

modµ2mrod −

∑e∈E\Eoo:

e∈p

∑od∈ODPod3p

dodτe ≤ 0 ∀p ∈ P xp ∈ [0, 1](4.24)

M1σ1e − σ2

e +M3λ4e −∑h∈H

h∈(i,j)=e

β1eh −

∑h∈H

h∈(i,j)=e

β2eh ≤ 0 ∀e ∈ E ze ∈ [0, 1] (4.25)

− ω1mr +M2ω2

mr +M3∑

e∈Eoh∪Eod:e∈mr

λ2e

−M3∑

e∈Eoh:e∈mr

(ρ1mre + ρ2mre) ≤ 0 ∀mr ∈MR ymr ∈ [0, 1](4.26)

τe + τ 2e ≤∑h∈H

h∈(i,j)=e

ch ∀e ∈ E \ Eoo qe ∈ R (4.27)

−τ 2e − τ 1es + τ 2es ≤ 0 ∀e ∈ E \ Eoo, s ∈ S qse ∈ R (4.28)∑od∈OD:Pod3mr

µ2mrod +

∑e∈E:e∈mr

(ρ1mre − ρ2mre) ≤ cmr ∀mr ∈MR tmr (4.29)

−β +∑

e∈E\Eoo:e=(i,j)3h

β1eh +

∑e∈E\Eoo:e=(i,j)3h

β2eh ≤ 0 ∀h ∈ H wh ∈ [0, 1] (4.30)

∑p∈P :p3e

∑od∈ODPod3p

µeod + λ3e − λ4e

−∑

mr∈MR:mr3e

(ρ1mre − ρ2mre) ≤ 0 ∀e ∈ E \ Eoo te ∈ R(4.31)

Csτ 2es + λ3e ≤ cse ∀e ∈ E \ Eoo, s ∈ S \ {h} tse (4.32)Csτ 2es + λ3e − λ2e ≤ cse ∀e ∈ Eoh, s = h tse|s=h (4.33)

Csτ 2es + λ3e + λ1e ≤ cse ∀e ∈ E \ (Eoo ∪ Eoh), s = h tse|s=h (4.34)

Figure 4.2: �e corresponding dual problem and its primal variables

Page 61: Column Generation applied to a special Case of the Hub

4.3. SUBPROBLEM 49

4.3 Subproblem�e aim of the subproblem is to �nd a path and a corresponding milkrun which violate bothconstraints (4.24) and (4.26) the most. If their variables have negative reduced costs, they im-prove the primal objective when entering the basis.

Two main challenges evolve:

1. Both paths and milkruns need to be found.

2. Dual variables ω1mr, ω

2mr, µmrod, ρ

1mre and ρ2mre do not exist for non-existing milkruns

yet.

For the �rst challenge there are the following possibilities

• solve a multi-objective optimization problem

• solve a path-problem which might contain existing and new milkruns

• solve two consecutive problems:

– �rst generate paths without milkruns, then matching milkruns– �rst generate milkruns, then paths

It is decided on the last option: �rst milkruns are generated, then paths.Solving a multi-objective function is avoided because it raises the complexity of the modeleven more, and its bene�t towards a consecutive method is questionable since the exact val-ues of some duals are not known and would have to be estimated.Another alternative is to set up a path problem for every od-pair, which might contain ex-isting and new milkruns. �e evolving constrained shortest-path problem with positive andnegative weights and non-linear objective function would have a greater complexity than themasterproblem: If a path p is generated for an od-pair (o, d) = od, not only od can use thispath, but all other od-pairs whose origin node is passed in the contained milkrun and whosedestination equals d. Additionally, since the path contains a milkrun, it does not have to startat o, hence its start is not �xed. Besides it would have to be identi�ed whether the used milkrunalready exists or not. Even when �xing the start of the milkrun to o, the complexity remains.�erefore the idea of generating paths which might contain new milkruns is dropped.A simpli�cation of the approach described before is to generate paths which do not containany milkruns, and which could be complemented by a milkrun in a second step. �is problemcan be modeled as a constrained shortest-path problem of much lower complexity, the onlyconstraint for the path is not to pass more than Hmax hubs. �is IP is relatively fast (less than2 seconds for the �rst network case1), however, the second step is di�cult. No relationshipbetween a path not containing a milkrun and the same one extended by a milkrun could befound. Actually the reversed linkage exists. If p is already good enough to improve the primalobjective, it does not need to be extended by a milkrun, whilst a path which is not eligible toenter the basis might improve the objective when extended by a milkrun.Hence, the only reasonable option is to generate milkruns in a �rst subproblem and use a sec-ond subproblem to create paths.

Page 62: Column Generation applied to a special Case of the Hub

50 CHAPTER 4. COLUMN GENERATION

To resolve the second challenge both knowledge about the dual variables using complemen-tary slackness1 as well as exact costs are taken to evaluate the goodness of a milkrun.In the next part of this thesis, �rst the subproblem which generates milkruns is presented,then the subproblem which generates paths and might include milkruns follows. A�erwardsan overview of column generation and the two subproblems is given in a �gure.

Milkrun-subproblem

A milkrun which violates constraints (4.26) potentially enhances the primal objective whenincluded in a path. �erefore the goal is to �nd a milkrun which minimizes

ω1mr −M2ω2

mr −M3∑

e∈Eoh:e∈mr

λ2e +M∑

e∈Eoh:e∈mr

(ρ1mre + ρ2mre) (4.35)

with a negative objective value. M2 was set to be the maximum number of paths a milkruncan be contained in. �is number can be reached by a milkrun, however it is very unlikely.�e same applies to M3. �erefore the primal constraints (4.8) and (4.16) are most probablynot binding and thus ω2

mr and λ2e equal zero by complementary slackness. With the otherduals ω1

mr, ρ1mre and ρ2mre being non-negative, (4.35) is non-negative, and thus reduced costs

are always zero or positive. Even when the M ’s were set to a lower value, constraint (4.35)would be di�cult to evaluate because of the missing values for the other duals.Another variable which will be added to the master problem for a new milkrun is the travelvariable tmr. �e corresponding dual constraint is

cmr −∑

od∈OD:Pod3mr

µ2mrod −

∑e∈Eoh:e∈mr

(ρ1mre + ρ2mre) (4.36)

and contains the costs for a milkrun cmr. �e duals µ2mrod and ρ1mre and ρ2mre correspond to

the primal constraint (4.10), (4.19) and (4.20) and together denote the bene�t of routing moreod-pair over the last edge of the milkrun. �is bene�t is though di�cult to estimate.�erefore the goodness of a non-existing milkrun mr is estimated by taking its evolving costscmr and comparing them with the current costs produced by origins o ∈ O which are passedby mr. Let ce denote the current costs on edge e ∈ Eoh. If an origin o is connected directly toa hub, these costs are non-zero. However, if an origin is already contained in a milkrun thesecosts might be zero. �erefore also the costs of existing milkruns which pass the origins ofmr need to be considered. Since the origins can be contained in several milkruns, the averagecosts are used as an estimate. Let |MR(o)| denote the set of milkruns origin o is contained in.�e value for a new milkrun is thus

cmr −∑

(i,j)∈Eoh

i∈mr

ce −∑o∈mr

∑mr′∈MRmr′3o

cmr′/|MR(o)|

Now the problem of �nding a milkrun can be formulated as a minimization problem. Let zmre

be a binary decision variable denoting whether edge e ∈ Eoo ∪ Eoh is used by milkrun mr.1Let min{cTx : Ax ≤ b, A ∈ Rn×m, b ∈ Rm, x ∈ Rn, c ∈ Rn} be a linear program and max{bT y :

AT y ≥ c, y ∈ Rm} its dual. �en yT (Ax− b) = 0 and (AT y − c)Tx = 0.

Page 63: Column Generation applied to a special Case of the Hub

4.3. SUBPROBLEM 51

�e objective function of the resulting IP is then

min cs∑o1∈O

∑o2∈O

zmro1,o2

+ cd∑o1∈O

∑o2∈O∪H

disto1,o2zmro1,o2−∑o∈O

∑i∈O∪H

∑h∈H

c(o,h)zmro,i −∑

o∈O

∑mr′∈MRmr′3o

cmr′/|MR(o)| (4.37)

�e �rst two sums of the objective represent the cost for a milkrun depending on the numberof stops and the total distance. ce =

∑s∈S t

sec

se, thus the third sum are the current transporta-

tion costs ce for all edges between an origin used in the milkrun and a hub. �e last sumrepresents the average costs of all existing milkruns in which the origin of the new milkrun iscontained. �e costs of the new milkrun should be less than the current transportation costs,consequently the solution to the problem should have a negative objective value.It is decided to de�ne ymr and tmr for any feasible solution to the milkrun-subproblem whichproduces a negative objective value. �e reason is that the objective is only an estimation, themilkrun-subproblem is only solved once in every iteration of column generation and one isinterested in a pool of new milkruns. �e path-subproblem, which is explained later on, willbe solved for every od-pair, thus in the milkrun-subproblem several good milkruns should begenerated rather than a single one.

�e constraints of the milkrun-subproblem are∑j∈O∪H(o,j)∈E

zmro,j −

∑j∈O

(j,o)∈E

zmrj,o − starto = 0 ∀o ∈ O (4.38)

∑j∈O

(o,j)∈E

zmro,j +

∑j∈O

(j,o)∈E

zmrj,o = 1 ∀o ∈ O (4.39)

∑j∈O

(j,h)∈E

zmrj,h − endh = 0 ∀h ∈ H (4.40)

∑o1∈O

∑o2∈O

(o1,o2)∈E

zmro1,o2 ≥ 1 (4.41)

∑o1∈O

∑o2∈O

(o1,o2)∈E

zmro1,o2 ≤ Stopsmax (4.42)

∑i∈O

∑j∈O∪H(i,j)∈E

disti,jzmri,j ≤ TDistmax (4.43)

∑i∈O

∑j∈H

(i,j)∈E

disti,jzmri,j ≥Mrrmin

∑i∈O

∑j∈O

(i,j)∈E

disti,jzmri,j (4.44)

∑o∈O

starto = 1 (4.45)∑h∈H

endh = 1 (4.46)

Page 64: Column Generation applied to a special Case of the Hub

52 CHAPTER 4. COLUMN GENERATION

zmri,j ∈ {0, 1} ∀(i, j) = e ∈ Eoo ∪ Eoh (4.47)

starto ∈ {0, 1} ∀o ∈ O (4.48)endh ∈ {0, 1} ∀h ∈ H (4.49)

�e decision variables of the milkrun-subproblem are

zmri,j :=

{1 if edge from i to j is used by milkrun mr0 else

startmro :=

{1 if origin o is used as starting node of milkrun mr0 else

endmrh :=

{1 if hub h is used as ending node of milkrun mr0 else

Equality (4.38) is the conservation of �ow constraint on origins o ∈ O, ensuring that if themilkrun starts at o, no �ow is allowed to pass into o. Equation (4.39) makes sure that an edgee ∈ Eoo can only be used in one direction, whereas constraint (4.40) limits a hub h to be usedif and only if h is the ending node of that milkrun. Constraint (4.41) ensures that at least oneedge between origins is used, otherwise the set of edges would not form a milkrun per de�ni-tion. Inequalities (4.42), (4.43) and (4.44) are the milkrun conditions, whereas (4.45) and (4.46)ensure that the milkrun contains exactly one starting origin and one ending hub. All decisionvariables need to be binary.

To speed up the milkrun-subproblem not all origins are considered. To decide which ori-gins are eligible to build a milkrun, 20,000 milkruns from the case study case1 were evaluated.�e objective function was calculated: costs cmr were compared to the costs occurring if thecontained origins would be directly connected to their closest hubs. As cost function the 4�owplanning tari�s were chosen. �en 6.688 milkruns led to a negative objective value (savings)compared to 13.312 milkruns which produced a non-negative value (loss). Di�erent in�uencefactors were evaluated which could have an impact on the savings and losses of a milkrun,such as distance to hub, distance among origins and total demand. �e highest correlationfactor though occurred between the aggregated demand per frequency which denotes howmuch quantity is originating from one origin to the destinations it supplies at the requiredfrequency. �e required frequency is again the maximum of the minimal frequencies and thefrequency needed considering a vehicle capacity of C . �e aggregated demand per frequencyfor an origin o ∈ O is de�ned as

daggo =∑d∈D

(o,d)∈OD

dod/max{∑d∈D

(o,d)∈OD

dod/C,max∑d∈D(o,d)inOD

mod}

�e correlation between the saving of a milkrun and daggo accounts for 0.41. �erefore it wasfocussed to identify the in�uence of daggo on the height of milkrun savings.

Page 65: Column Generation applied to a special Case of the Hub

4.3. SUBPROBLEM 53

As seen in �gure 4.3 the number of origins whose aggregated demand is less than 1 ldm, thusless than 7.3 % of a vehicle’s capacity, amounts to more than 25.000 for milkruns with loss.Only around 22 % of origin nodes with less than 1 ldm lead to a milkrun with savings. �eexamination of quantiles and the mean capture that 85 % of origins which are used in a milkrunwith loss have an aggregated demand per frequency of less than 1.26 ldm, whilst for milkrunswith savings, the value amounts for 50% of origins to more than 2.18 ldm. �erefore it isreasonable to de�ne a critical value Mruncrit which origins o ∈ O need to ful�ll w.r.t theiraggregated demand per frequency daggo in order to be considered in the milkrun-subproblem.�e resulting subset of origin is called Omrun

0−1

1−2

2−3

3−4

4−5

5−6

6−7

7−8

8−9

9−10

10−

1111

−12

12−

1313

−14

aggregated demand per frequency [ldm]

num

ber

of o

rigin

s

0

5000

10000

15000

20000

25000

milkruns with savings (6688)milkruns with loss (13312)

savings lossMin: 0.00 0.00

25%-�.: 0.22 0.03Median: 1.44 0.16

Mean: 2.18 0.6775%-�.: 3.88 0.4980%-�.: 3.88 0.8385%-�.: 4.66 1.2690%-�.: 5.67 1.6595%-�.: 7.15 3.88

Max: 13.28 13.28

Figure 4.3: Distribution of accumulated demand, n=20.000, case study: case1

Path-subproblem

In the next step a path needs to be generated. A path which maximally violates constraint (4.24)potentially enhances the primal objective. �erefore the goal is to �nd one which minimizes

−∑

od∈ODPod3p

πod +∑

e∈E\Eoo:e∈p

(σ1e − σ2

e)−∑

mr∈MR:mr∈p

(ω1mr − ω2

mr) +∑

od∈ODPod3p

∑e∈E\Eoo:

e∈p

modµ1eod

+∑

od∈ODPod3p

∑mr∈MR:mr∈p

modµ2mrod +

∑e∈E\Eoo:

e∈p

dodτe(4.50)

with a negative objective value.Here all dual variables are known, ω2

mr is always zero as aforementioned. Besides σ1e whose

Page 66: Column Generation applied to a special Case of the Hub

54 CHAPTER 4. COLUMN GENERATION

corresponding primal objective containsM1 is most probably zero as well, since (4.5) is proba-bly not binding. However taking σ1

e into the objective does not add complexity, thus it remains.�ere are two possible approaches to generate new paths

• generate one new path in every iteration without specifying which od-pair might use it

• generate one new path for every od-pair in every iteration

�e �rst option is rejected because a very complex non-linear IP evolves and computationaltime increases a lot due to the heightened number of iteration to generate several new paths.Also the masterproblem would have to be solved much more o�en. �us it is decided togenerate a path-subproblem for every od-pair in one column generation iteration.For a given od-pair (o, d) ∈ OD a new path can be de�ned as either consisting of a milkrunmr plus a set of edges e ∈ Ehh ∪ Ehd originating from the ending node of mr to d or a pathstarting from o and ending at d without using edges e ∈ Eoo.An example is given in �gures 4.4 and 4.5. Assuming that a path has to be found for od-pair(o1, d1), both �gures present a feasible solution. Figure 4.4 shows a path which does not startat o1, which is allowed, since o1 is contained in a milkrun. Also note, that this path is a feasiblepath for od-pair (o2, d1) as well because o2 is passed by mr1 and the destination is the same.In �gure 4.5 no milkrun is used. �us only od-pair (o1, d1) can use this path, which does notcontain any origin-origin edges e ∈ Eoo. �ese �gures contain the two main aspects which

mr1

e2e3

(o1,d1)(o2,d1)

Figure 4.4: A path which contains milkrunmr1

e1

e2e3

(o1,d1)(o2,d1)

Figure 4.5: A path which contains edge e1instead

need to be considered when formulating an IP which generates a path for a given od-pair(o, d). �ey are summed up in the following. When the new path contains a milkrun mr

• All other od-pairs (o′, d′) ∈ OD whose origin o′ is passed by mr and whose destinationd′ equals d can use it.

• �e last edge of the milkrun mr ∩ Eoh needs to be added explicitly.In �gure 4.4 edge e1 would have to be added again, since it was implicitly covered byusing mr1, but will not be considered when evaluating the duals de�ned on edges e ∈Eoh.

Page 67: Column Generation applied to a special Case of the Hub

4.3. SUBPROBLEM 55

�e evolving IP uses the decision variables

zpi,j :=

{1 if edge from i to j is used by path p0 else

ypmr :=

{1 if milkrun mr is used by path p0 else

Given an od-pair od ∈ OD, the objective function is consequently

min − πod −∑

mr∈MR

∑(o′d′)∈ODo 6=o′∈mr

d′=d

πo′d′ypmr

+∑i∈V

∑j∈V \O

(σ1i,j − σ2

i,j)zpi,j +

∑mr∈MR

∑i∈O

∑j∈H

(i,j)∈mr

(σ1i,j − σ2

i,j)ypmr

−∑

mr∈MR

ω1mrey

pmr +

∑mr∈MR

∑(o′d′)∈ODo′∈mrd′=d

mo′d′µ2mrod

+∑i∈V

∑j∈V \O

modµijodzpi,j +

∑mr∈MR

∑i∈V

∑j∈H

(i,j)∈mr

mo′d′µijodypmr

+∑

mr∈MR

∑(o′d′)∈ODo 6=o′∈mr

d′=d

∑i∈V

∑j∈V \O

mo′d′µijo′d′ypmrz

pi,j

+∑i∈V

∑j∈V \O

dodτi,jzpi,j +

∑mr∈MR

∑(o′d′)∈ODo 6=o′∈mr

d′=d

∑i∈V

∑j∈V \O

dodτi,jypmrz

pi,j

�e �rst two rows consider the two aspects mentioned before. In the �rst row od-pairs whichcan also use the path due to a milkrun are added. In the second and fourth one, the last edge ofa milkrun is not counted in the �rst sum when the path contains a milkrun, thus it is added inthe second sum. �e third row consists of the dual variables which are de�ned for milkruns. Aproblem occurs in rows �ve and six since the last sums contain both edges and od-pairs. It isonly known which other od-pairs can use a path, when knowing which milkrun variable ypmr isset to one. Knowing which edges e ∈ Ehh∪Ehd are used is only resolved by the edge variableszpe . �us the last sums in rows �ve and six incorporate a non-linearity. To resolve this problemnew decision variables could be introduced. However they would raise the complexity of thealready very complex subproblem even more. Another loophole is to estimate the values ofthese non-linear sums and generate several paths in every subproblem. Estimation is thoughquite di�cult, which is explained below.

Page 68: Column Generation applied to a special Case of the Hub

56 CHAPTER 4. COLUMN GENERATION

�e sums which evaluate whether a path p should contain a milkrun mr or not are the fol-lowing ones

− ω1mre +

∑od∈ODo′∈mrd′=d

mo′d′µ2mro′d′ +

∑od∈ODo′∈mrd′=d

∑e∈E\Eoo

mo′d′µ1eo′d′z

pe +

∑od∈ODo′∈mrd′=d

∑e∈E\Eoo

do′d′τezpe (4.51)

If a milkrun which leads to a negative value of 4.51, it should be used in a new path, which is,when having negative reduced costs, included in the master problem. For the last two sums thevariables zpe cannot be used, since they impose together with the decision variable for milkrunsypmr a quadratic problem. �e sum can however be evaluated for the last edge e ∈ Eoh of amilkrun, since its corresponding variable zpe is implicitly given by the knowledge about theused milkrun. For edges e ∈ Ehh ∪ Ehd the problem remains. �us the sums

∑od∈ODo′∈mrd′=d

∑e∈E\(Eoo∪Eoh)

mo′d′µ1eo′d′z

pe and

∑od∈ODo′∈mrd′=d

∑e∈E\(Eoo∪Eoh)

do′d′τezpe

would need to be estimated. �e dual µeod corresponds to the primal constraint 4.9 and denoteshow much the di�erence in travel frequency costs when od-pair od uses e. Similarly the dualτe corresponds to the primal constraint 4.11 and represents when positive how much the �owdi�erence on edge e costs, whereas when negative how much more demand dod can �ow overedge e without raising costs. �is is possible because of the piecewise constant cost function.Furthermore by depending edges, these duals are higher, when edges are longer, since costsdepend on distance. One idea is to penalize od-pairs whose minimal frequency is much higherthan the current frequency te on e, since they would lead to an increase of te and thus havehigh dual variable µeod. However the dual τe is di�cult to approximate. Its value stronglydepends on the length of the edge and not on the demand of an od-pair. Estimating thesesums turns out to be di�cult.A strategy is chosen to not include the two non-linear sums in the objective. Looking back at4.51, it could then happen, that a milkrun is included in a path, although it does not lead tonegative reduced costs. Another path, which does not contain any milkrun, could be be�er,but will not be generated. �erefore in the path-subproblem to every path which contains amilkrun, the same path, without this speci�c milkrun, is added. Besides due to the complexsubproblem and the disregard of the non-linear terms, in every subproblem a set of pathsrather than a single one which produce negative reduced costs is generated.

Page 69: Column Generation applied to a special Case of the Hub

4.3. SUBPROBLEM 57

�e constraints which create a feasible path are∑j∈V \O

zpo,j −∑

j∈V \O

zpj,o = 1−∑

mr∈MR

(4.52)

∑j∈V \D

zpj,d = 1 (4.53)

∑j∈H∪{o}

zpi,j −∑

j∈V \O

zpj,i = 1−∑

mr∈MRmr3h

∀h ∈ H (4.54)

∑j∈V

zi,j = 0 ∀i ∈ O \ {o} (4.55)∑j∈V

zj,i = 0 ∀i ∈ O \ {o} (4.56)∑mr∈MR

ypmr +∑h∈H

zpo,h = 1 (4.57)∑mr∈Mr

ypmr ≤ 1 (4.58)∑i∈H

∑j∈H

(i,j)∈Ehh

zpi,j ≤ Hmax − 1 (4.59)

∑mr∈MRmr3h

ypmr ≤∑

j∈H∪{d}

zh,j ∀h ∈ H (4.60)

zpi,j ∈ {0, 1} ∀(i, j) = e ∈ E (4.61)ypmr ∈ {0, 1} ∀mr ∈MR (4.62)

Constraint (4.52) ensures that the path has to start at o if no milkrun is used. If a milkrun isused the right hand side becomes zero and with constraint (4.55), edges ending at the origin ocannot be used, thus the path starts at o. Equality (4.53) enforces the path to end at d, whilstthe in�uence of (4.54) is similar to the �rst constraint: When using a milkrun which ends athub h, every edge variable zj,h should be zero for all j ∈ H ∪ O, since this edge is alreadycovered by the used milkrun. Constraints (4.55) and (4.56) both ensure that no edge e ∈ Eoo isused, since if it was used, it would be contained in a milkrun. To ensure that the path containseither a milkrun or an edge from o to any hub h ∈ H equality (4.57) is de�ned. Inequality(4.58) limits the number of milkruns to one, whereas (4.59) limits the number of passed hubsto Hmax. �e �nal constraint (4.60) claims that if a milkrun is used, an edge which originatesat h has to be used by p.

�e set of od-pairs from the smallest case study provided by 4�ow contains 754 elements.With an average solving time of 10 seconds per path-subproblem, it would take some time togenerate a new path for every od-pair - doing several iteration of column generation wouldbe very tedious. �erefore a subset ODhub ⊂ OD is chosen, which is mainly responsible forthe transportation-and hub costs arising from hub-transports. �e demand of these od-pairslies below some critical value Hcrit. All other od-pairs OD \ ODhub carry enough demand tobe routed using a high cost segment, which is cheap per unit of demand. �ey do not need topro�t from consolidation e�ect, thus will use direct-transports.

Page 70: Column Generation applied to a special Case of the Hub

58 CHAPTER 4. COLUMN GENERATION

relaxedMIP

transportation networkT = (G,OD) without

edges Eod

feasible startset P ofhub-paths and MR of

milkruns

solve restrictedmasterproblem

solve milkrun-subproblem with

o ∈ Omrun

n newmilkruns

solve path-subproblem forevery od-pairsod ∈ ODhub

add direct-pathsdirect-pathsP direct

any column withnegative reduced

costs found?

solve MIP

yes

no

columngeneration

Figure 4.6: CG solution process

Overview of solution process

To clarify the process of generating milkruns and paths, a visualization is given in �gure 4.6.As shown the transportation network T = (G,OD), which will be passed to the solver, doesnot contain any edgesEod between od-pairs. �ese edges and their corresponding direct-pathsare added a�er column generation has �nished. With no interdependencies occurring amongod-pairs on edges e ∈ Eod, the restriction of only choosing one cost segment per edge is re-laxed when generating a new column. �erefore for one such edge e ∈ Eod the solver wouldassign the best possible cost segment - which is the highest cost segment representing FTLcosts. If the minimal frequency constraint is not ful�lled, the solver assigns then a very smallquantity to a cost segment whose corresponding frequency ful�lls the condition. In the �rst

Page 71: Column Generation applied to a special Case of the Hub

4.4. PREPROCESSING PROCEDURES 59

iteration the solver would �nd the edge between an od-pair and would create a direct-path,because these edges would lead to the best improvement of the relaxed objective. Column gen-eration would stop a�er one iteration since the optimum would have been reached. Howeverthis solution is not MIP feasible. �erefore only hub-paths are possible for column generation,by not giving edges e ∈ Eod and direct-paths as input.Apart from that, column generation only stops when no new paths are found. �ere is no in�u-ence on the further process by not generating any new milkruns in the milkrun-subproblem.New paths are still tried to be generated in the path-subproblem.

�e masterproblem of the column generation algorithm needs a starting subset of paths andmilkruns. �erefore a feasible solution to the special HLRP is generated in the next part. Firstthere are preprocessing procedures and then a heuristic, which produces a feasible startingsubset of paths and milkruns, is presented.

4.4 Preprocessing Procedures�e transportation network T = (G,OD) consists of nodes, edges and od-pairs. �e goal isto create T = (G,OD) such that the number of possible paths and milkruns are reduced andconsequently the two subproblems of column generation are sped up. �e following thoughtscan be applied to limit its size:

1. Edges between origins and hubsDirected edges e ∈ Ehh pro�t from the highest consolidation e�ect CE , because all od-pairs might be able to use them in their transportation route, whilst on other edges thenumber of od-pairs and thus the height of the consolidation e�ect is limited. �ereforegoods should be transported to hubs using a short edge e ∈ Eoh and then via hub-hubedges e ∈ Ehh. For example in �gure 4.7 edges e1 and e2 are preferred to edge e3, be-cause the consolidation e�ect on e2 is higher than the additional costs for routing thedetour.

e1

e2e3

Figure 4.7: Edge e3 does not get created

e3

OHDistmax

Figure 4.8: Edge e3 needs to be created

Page 72: Column Generation applied to a special Case of the Hub

60 CHAPTER 4. COLUMN GENERATION

�us edges between origins and hubs which exceed a total length ofOHDistmax wouldnot be part of the solution and hence need not be created.However, purely following this strategy could lead to a location not being connectedto any hub, resulting in direct-paths for all corresponding od-pairs. �erefore edges be-tween origins and hubs are also creating though exceedingOHDistmax when there is nohub in the same direction and within radius OHDistmax, as shown in �gure 4.8, whereedge e3 is created. �e same aspect applies to hub-destination edges e ∈ Ehd, whosenumber is, since examining inbound networks, rather small. �e following algorithm isimplemented.

Algorithm 1 Generate Eoh

for all o ∈ O dofor all h ∈ H do

if d(o, h) < OHDistmax

or {h′ ∈ H : d(o, h′) < OHDistmax and ^( ~oh, ~h′h) ≤ 90◦} = ∅ thencreate edge (e,h)

2. Edges between origins�e number of Eoo depends quadratically on the input data |O| and is responsible forthe size of the milkrun-subproblem although only a small portion will be used in the so-lution: With rather high costs per distance, milkruns are only worthwhile using whena large quantity is transported. With the majority of od-pairs (76% in case1) having ademand of less than 1 ldm, and se�ing the parameter for stops Stopsmax usually belowthree, a high quantity is seldom reached. �is assumption is veri�ed by a positive cor-relation of 0.64 between the savings of a milkrun and the total demand per frequency.In contrast to the milkrun-subproblem here the total demand carried on one milkrunrather than the demand of every individual origin on that milkrun is compared.Figure 4.9 states, that around 95% of milkruns whose total demand per frequency accu-mulates to less than 1 ldm, lead to a milkrun with loss. Only from 4 ldm upwards thenumber of milkruns with savings outperforms the number of milkruns with loss. Fur-thermore 75% of milkruns with a loss transported less than 2.09 ldm, whilst for milkrunswith savings only a portion of 25% transported less than 2.94 ldm.�us also here a critical value Mrunmin can be de�ned (for case study case1 this valueshould be above 4 ldm) which milkruns need to ful�ll. Otherwise they will probably notbe part of the solution and hence edges between their nodes need not be created.�e following algorithm is implemented

Algorithm 2 Generate Eoo

for all Osub ⊂ O with |Osub| ≤ Stopsmax + 1 doif Osub is connected w.r.t. diste ≤ Distmax then

if∑

o∈Osubdaggo ≥MRminC then

create edges for all e ∈ {e′ = (o1, o2) ∈ Osub ×Osub|diste′ ≤ Distmax}

Page 73: Column Generation applied to a special Case of the Hub

4.4. PREPROCESSING PROCEDURES 61

Actually the algorithm would have to verify whether a Hamilton path exists, which isthough NP-complete. By reason of simplicity it is instead tested whether the subgraphis connected.

0−1

1−2

2−3

3−4

4−5

5−6

6−7

7−8

8−9

9−10

10−

1111

−12

12−

1313

−14

total demand per frequency [ldm]

num

ber

of m

ilkru

ns

0

1000

2000

3000

4000

5000

6000

milkruns with savingsmilkruns with loss

milkruns withsavings loss

Min: 0.00 0.0025%-�.: 2.94 0.32Median: 5.13 0.93

Mean: 5.70 1.7875%-�.: 7.85 2.09

Max: 13.60 13.56

Figure 4.9: Distribution of total demand, n=20.000, case study: case1

3. Edges between Hubs�e number of hub-hub edges Ehh depends quadratic on the input data |H| and is re-sponsible for the complexity of the path subproblem. Hubs are used as consolidationpoints. Using an edge between two hubs which are close to each other, decreased theconsolidation e�ect. Rather a few of such edges should be used to consolidate as manydemands as possible. �us within one region, no hub-hub edges would be used in thesolution. �erefore a minimum distance HDistmin is imposed which edges e ∈ Ehh

need to ful�ll to be created. �e parameter is based on experience of 4�ow.

It is noteworthy that although some nodes are physically the same (distance = 0), they areconsidered distinct. �e reason is that larger suppliers and customers have several loadingand reloading points which get connected to di�erent transportation routes.

Page 74: Column Generation applied to a special Case of the Hub

62 CHAPTER 4. COLUMN GENERATION

4.5 Starting Solution

As mentioned before to start generating new column a feasible start solution has to be found.Besides the be�er it is, the less iterations are needed to reach optimality. �erefore the aimis to produce not just a feasible one, but a good starting solution to the special HLRP. A �rstintuitive idea is to use some kind of savings heuristic, which is a widely used algorithm fortransportation planning. Although this heuristic will not be applied, it will be explained brie�y,because the reason for its rejection is a structural one, occurring again when looking at theresults of column generation.

Savings-Algorithm

�e Savings-algorithm, which was developed by Clarke and Wright in 1964, �nds a shortest-path between all pairs of nodes in a network. First every pair is connected by two edges asshown in �gure 4.10. �en for all possible combinations of node pairs one edge is loosenedrespectively and the nodes reconnected. In the scheme, edge e2 is loosened from the �rst pairof nodes and e3 from the second one. �e nodes j1 and j2 are then connected. �e new costson e5 are calculated and this edge kept if it is cheaper than e2 and e3 together. In the savings-algorithm the costs of all possible combination are evaluated and the one chosen which o�ersthe highest savings towards the previous solution. �is procedure is repeated until no moresavings are detected.

i

j1 j2

e1

e2 e3

e4

Figure 4.10: Savings-Algorithm: start so-lution using edges e2 and e3

i

j1 j2

e1

e5

e4

Figure 4.11: Savings-Algorithm: replacingedges e2 and e3 by edge e5

For the special HLRP a reasonable approach is to �rst connect all od-pairs by direct-paths andthen calculate savings for all possibilities of routing two od-pairs together. It can be inter-preted as identifying the routing with the highest di�erence between cost savings throughconsolidation and additional costs due to the necessary detour. Figures 4.12 and 4.13 showsthis idea for two od-pairs.

Page 75: Column Generation applied to a special Case of the Hub

4.5. STARTING SOLUTION 63

Figure 4.12: Modi�ed Savings: start solu-tion using direct-paths

Figure 4.13: Modi�ed Savings: replacingdirect-paths by hub-paths

�e goal is to route as many paths as possible over the same edges. However this idea isnot applicable for the inbound transportation networks which come across at 4�ow. One oftheir characteristic is, that few od-pairs are responsible for a major portion of the total de-mand occurring in the network. Most of the od-pairs correspond to a demand of less than 1ldm. For such low quantities the detour is more expensive than the consolidation e�ect on thecommon edge when considering combinations of two od-pairs. �e Savings-algorithm wouldthus terminate most probably a�er one iteration having found no combination which leads tosavings. To achieve savings the consolidation e�ect needs to outperform the additional costsfor detouring. �erefore in these network instances, more then two od-pairs would need tobe combined. Evaluating all combinations of all possible cardinalities however becomes toocomplex.�is necessity of a critical number of od-pairs routed together over an edge until costs can besaved, will occur again when looking at the results of column generation.

A�er having presented the Savings-algorithm and its drawback, a starting heuristic is de-veloped consisting of three steps - deciding on hubs, building milkruns, improving hub-hubedges. �e single steps are explained, then an overview is given at the end of this chapter in�gure 4.15.

Before, the set of od-pairs is partitioned, which is visualized in �gure 4.14. �e subset isused in a clustering method to determine the hubs. Already in the path-subproblem od-pairsODhub ⊂ OD were assumed to be routed via hubs. �us they are used to determine an initialsoltuion of hubs. ODdirect are routed via direct-paths, and thus are not considered when de-termining hubs. �e subset V nomrn consists of nodes whose demand per frequency is belowMRcrit and which were not considered in the milkrun-subproblem. In the starting heuristicthey will not be considered for milkruns neither. Omrun ⊂ O instead consists of origins whichare eligible for milkruns and for which milkruns are determined. As there are no direct pathsin the starting solution for column generation, od-pairs od ∈ ODdirect get also assigned a pathvia their closest hub.

Cluster into Hmax cluster

To select a maximal number of Hmax hubs, a clustering approach is used. Origins and desti-nation v ∈ V hub = {v ∈ V : ∃v ∈ O ∪ D so that (v, v′) ∈ ODhub or (v′, v) ∈ ODhub} arepartitioned into Hmax clusters according to the places of their locations, then every cluster

Page 76: Column Generation applied to a special Case of the Hub

64 CHAPTER 4. COLUMN GENERATION

OD

ODdirect ODhub

V nomrun Omrun

Relevantfor

Startsolution

Figure 4.14: Partitioning od-pairs and nodes

is connected to exactly one hub. �is approach reasonable because hubs are used to connectorigins and destinations to decrease transportation costs which are proportional to distance.�ere are basically two main types of cluster algorithms: the hierarchical and the partitioningones. Since the number of clusters is known, a partitioning algorithm is chosen. For the easeof implementation and the low performance and memory requirements, a modi�ed versionof Llyod’s algorithm, also know under the name k-means algorithm, is applied. K-Means isa widely used clustering method producing a partition of the entity set into non-overlappingclusters together with within-cluster centroids. It each iteration two steps are carried out. Firstclusters are updated according to a minimum distance rule, second the centroids are updatedaccording to the centers of gravity of the clusters. To start the algorithms, a set of all k startingcentroids must be speci�ed. [Mir12]. �e algorithm terminates a�er the centroids have con-verged to certain points or a stopping criterion has been reached. Further information aboutdi�erent cluster techniques can be found in [Mir12].

For the hub decision in a transportation network the following modi�cations are made toLlyod’s algorithm:

• Instead of the 1- or 2-norm as distance measures, the haversine formula is used to cal-culate the shortest distance between two nodes over the earth surface:Let x, y ∈ R2 be two vectors, each containing the latitude and longitude of a node. Fora sphere with radius r the distance between x and y is then de�ned by

disth(x, y) := arccos (sin(x1) sin(y1) + cos(x1) cos(y1) cos(x2 − y2)) r

For the earth r = 6378.388 is valid. �is value is multiplied by a factor of 1.2 to approx-imate the actual street distance and not only use pure air-line distances.

• Although the clustering considers only od-pairs od ∈ ODhub, which in�uence the trans-portation costs coming from routing via hubs, there can still be a large di�erence in in-

Page 77: Column Generation applied to a special Case of the Hub

4.5. STARTING SOLUTION 65

�uence due to di�erent demands. OD-Pairs with a high demand produce higher trans-portation costs, which should result in a larger in�uence on the hub decision. �ereforea weight wv ∈ R+, which is used in the updating step of Llyod’s algorithm to �nd thenew centers of gravity, is assigned to every node v ∈ V hub. �e weight is the portionof the aggregated demand originating or ending at node v compared to all demandswhich are transported within its cluster. If CLt

s is the current cluster with centroid s initeration t, its total within demand is de�ned as

Demts =

∑o∈O

∑d∈CLst

dod +∑

o∈CLst

∑d∈D

dod

.

Let l(v) denote the vector of latitude and longitude of a node v ∈ O ∪ D. �e followingmodi�ed algorithm is implemented.

Algorithm 3 Modi�ed Llyod’s Algorithmt← 1S0 ← {}choose random start set St:St = {l(v1), l(v2), . . . , l(vHmax)} with vi ∈ V hub for i = 1, . . . , Hmax

while St−1 6= St and t ≤ tmax dofor all s ∈ St do

calculate cluster CLts:

CLts = {v ∈ V hub : disth(s, l(v)) ≤ disth(s′, l(v)) ∀s′ ∈ S \ s}

calculate total within cluster demand Demts

calculate weights wv :for all v ∈ CLt

s dowv = daggv /Demt

s

update centroid:s←

∑v∈CLt

swvl(v)

t← t+ 1

for all s ∈ St doassign hubs to cluster:h(s)← argminh∈H dist

h(h, s)for all v ∈ CLt

s doassign hubs to nodes:h(v)← h(s)

for all o ∈ V hub dofor all od ∈ {o′d′ ∈ OD|o′ = o} do

build paths:pod = {(o, h(o)), (h(o), h(d)), (h(d), d)}P ← P ∪ pod

�e algorithm shows, that a�er having clustered all nodes v ∈ V hub into Hmax cluster, theclosest hub to these clusters is calculated and every node v ∈ V hub gets assigned a hub

Page 78: Column Generation applied to a special Case of the Hub

66 CHAPTER 4. COLUMN GENERATION

H : v 7→ h(v) depending on its cluster. �en every node v ∈ V hub gets connected via anedge e = (v, h(v)) to its assigned hub and paths are built. If the assigned hubs of an originand a destination which build an od-pairs di�er, an edge between these hubs (h(o), h(d)) isadded.

As aforementioned the k-means algorithm is widely used due to its simplicity and fast speed.However the solution is very sensitive to its starting solution. While for the case studies pro-vided by 4�ow, the hub decision did not change, the clusters and thus the routing di�ered inevery run.

Build milkruns

In the previous step all nodes v ∈ V hub got connected to their closest hubs. For every o ∈Omrun edges (o, h(o)) ∈ Eoh are now used to determine other origins in a neighborhood ofo whose aggregated demand can also be transported via (o, h(o)). �en they should form amilkrun.Let qo,h(o) and to,h(o) be the quantity transported and the frequency chosen between node o ∈Omrun and its assigned hub h(o) respectively and C the capacity of a vehicle. When choosingthe milkrun to lead from origin o additionally over origin o′ ∈ Omrun \ {o}, the potentialquantity per vehicle on edge (o, h(o)) is de�ned as

Qpot(o′) :=

qo,h(o) + daggo′

max{to,h(o),qoh+dagg

o′max{C,magg

o′ }}

�e numerator contains the actual quantity qo,h on edge (o, h(o)) and the aggregated demandof o′, whereas the denominator describes the required frequency. �en the neighborhood oforigin o ∈ Omrun is de�ned as

N(o) := {o′ ∈ Omrun|(o, o′) ∈ Eoo and mo′d ≤ to,h(o) and Qpot(o′) < C}

Accordingly the neighborhood of o ∈ Omrun is the set of nodes to which o is connected by anedge and which would not increase the frequency on the edge (o, h(o)) because of a higherminimal frequency. Apart form that transporting the aggregated demand of that origin shouldnot lead to using another vehicle by exceeding the capacity C .Assuming that the consolidation e�ect increases with a larger �ow, the origin o ∈ N(o) whichleads to the highest increase of �ow on edge e = (o, h(o)) ∈ Eoh is chosen, connected too ∈ V hub ∩ O and its quantity added to qo,h(o). �en the neighborhood is updated to the oneof o′ and the process starts over again. �is loop repeats until the maximum number of stopsStopsmax is reached or the neighborhood is empty. �en it is veri�ed whether the createdmilkrun ful�lls the milkrun constraints of a maximal total distance TDistmax and a minimummainrun ratioMrrmin. Besides its quantity qo,h(o) needs to exceed a minimum valueMrunmin,which was already used when limiting the size of edges e ∈ Eoo in the preprocessing steps. Ifany of these conditions is not ful�lled, the milkrun gets deleted, otherwise it is saved and thesearch continues from the beginning.�e following algorithm is implemented.

Page 79: Column Generation applied to a special Case of the Hub

4.5. STARTING SOLUTION 67

Algorithm 4 Build MilkrunsToDo← Omrun

for all o ∈ Omrun doif o ∈ ToDo then

calculate quantity and frequency of edge (o, h(o)):qo,h(o) = daggo , to,h = max{magg

o , daggo

C}

calculate neighborhood N ← N(o)connect to node out of neighborhood until stopping criteria is reached:while N 6= ∅ and j < Stopsmax do

o← maxo′∈N Qpot(o′)

qo,h ← Qpot(o)to,h

N ← N(o)j ← j + 1nodesmr ← nodesmr ∪ {o}distmr ← distmr + disto,o

verify whether milkrun ful�lls milkrun constraints:if distmr ≤ TDistmax and qo,h ≥Mruncrit then

�nalize new milkrun and build pathsMR←MR ∪mr

for all od ∈ {o′d′ ∈ OD|o′ = o} dobuild paths:pod = edgemr ∪ {(h(o), h(d)), (h(d), d))}P ← P ∪ pod

delete milkrun nodes out of ToDo list:ToDo← ToDo \ nodesmr

mr ← mr + 1

In the milkrun-subproblem as well as in the just described process of building milkruns, originso ∈ V nomrun ∩O are excluded. Consequently their od-pairs od ∈ {o′d′ ∈ OD|o′ ∈ V nomrun ∩O} do not get assigned any path which contains a milkrun throughout the entire solutionprocess. To still assign at least one path to one such (o, d) = od which comprised a milkrun,the milkruns generated in Algorithm 4 are tested whether they can be extended by node o. Ifit is possible, these od-pairs get a second path consisting of a milkrun.

Delete hub-hub links

�e steps clustering and building milkruns produce a feasible subset of paths and milkruns tothe special HLRP because every od-pairs receives a path and a maximal number of Hmax hubsis used.However establishing hubs and using edges between hubs is only worthwhile when the �owon an hub-hub edge is high. �erefore the solution is improved by deleted hub-hub edges overwhich a �ow qe lies below the capacity C of one vehicle. All od-pairs using this edge in theirpaths are routed over the next closest hub. C is chosen because it ensures the possibility touse the highest cost segment and make use of the cheapest costs per unit demand.

Page 80: Column Generation applied to a special Case of the Hub

68 CHAPTER 4. COLUMN GENERATION

Overview of solution process

�e �gure 4.15 summarizes the step-by-step process of generating a feasible solution P andMR. �e three dark blue processes were described before in detail. As shown, the hub decisionis quickly made a�er the �rst step, the clustering. �en there are three sources of paths. Forod-pairs whose origins are within the set Omrun paths evolve from the step building milkruns,for Onomrun directly from clustering and then from adding to existing milkruns.

cluster into Hmax cluster

clusters & Hmax hubs

build milkruns

milkrunsMR

connect toassigned hub

extend milkruns

V hubOmrun

paths

paths

paths

hubs

�ow on edgee ∈ Ehh below C?

delete hub-hub links &route di�erently

feasible solution withsubset P , MR and Hmax

hubs

no

yes

Figure 4.15: Generating a feasible solution to the special HLRP

Page 81: Column Generation applied to a special Case of the Hub

Chapter 5

Optimization Results

5.1 Case Studies�e algorithm was veri�ed on arti�cial test instances as well as on real transportation networksprovided by 4�ow. �ese real case studies derive from the automotive industry and representinbound networks. An overview about nodes, od-pairs and relevant key indices is given intable 5.1.

Case study # origins # destinations # od-pairs needed km 1 total ldm 2

testsmall 4 3 8 4,449 22testlarge 250 19 803 762,817 6,070

case1 400 23 754 604,453 5,549case2 1212 39 2598 5,285,809 39,719

Table 5.1: Overview test instances and case studies

�ere are no hubs displayed in this overview, because their number can be varied in everycase study. For the �rst case the algorithm was tested for 5 and 85 hubs which will be denotedas case1 5hubs and case1 85 hubs respectively.

5.2 Implementation�e optimization model was implemented in IVE Xpress. In contrast to the implementation ofthe small test instance in chapter 3.4.3., the model was tested on a Dell PowerEdge R815 sys-tem with 48 cores, 2.2 GHz and 128 GB RAM memory. Python 3.4.1. was used to implementpreprocessing steps and the start solution.Moreover a GUI was developed by means of the Python package Tkinter through which the en-tire solution process can be operated. As seen in �gure 5.1, parameter se�ings can be changedand di�erent case studies chosen. Apart from that the transportation network can be build andthe start solution produced. �en the optimization through Xpress can be started, at whose

1the km needed to travel if there were no hubs imposed, thus only using direct-tranports2the sum of all demands of od-pairs in the network

69

Page 82: Column Generation applied to a special Case of the Hub

70 CHAPTER 5. OPTIMIZATION RESULTS

end a solution �le is provided. �is �le shows the chosen transportation route for every od-pair with its edges and their costs and chosen frequencies. In this python user interface, themeaning of the parameters and the procedure of the execution process are repeated at thebeginning. �e check bu�on, which applies a new strategy to generate a start solution, isexplained later in this chapter.

Figure 5.1: Python user interface

5.3 Results

�e 4�ow planning tari�s were used for FTL and LTL costs on edges, the milkrun costs are�xed to e 30/stop and e 1.1/km.To test the algorithms the parameters shown as default values in the python user interfacewere used for all test instances and case studies. Parameter C , which denotes the vehiclecapacity, is not explicitly mentioned, since it is a �xed value. Due to the planning tari�s,which are de�ned on C and which are only available for a mega trailer, C always amounts to13.6 ldm. �e number of maximal hubs Hmax varies. As �ve hubs are reasonable in logisticsnetworks derived from 4�ow, the algorithm was tested with Hmax set to �ve.Preprocessing results are displayed in table 5.2, showing the number of edges in the networkand its reduction in comparison to not using the ideas presented in chapter 4.4. �e algorithmto generate origin-hub edges leads to a great improvement in comparison with generating allpossible edges. Furthermore by not creating all possible origin-origin edges, a reduction ofedges could be achieved, which, however, could still be improved. Evaluating more aspectswhich might lead to a milkrun with savings is necessary. �e number of hub-hub edges washardly reduced, be�er results might be achieved by increasing the parameter HHDistmin.

Page 83: Column Generation applied to a special Case of the Hub

5.3. RESULTS 71

case study |E| |Eoo| 3 |Eoh|4 |Ehh| 5 |Ehd|testsmall 2hubs 28 12 (-0%) 8 (-0%) 2 (-0%) 6

testlarge 10hubs 9,392 8,819 (-1%) 2134 (-15%) 78(-13%) 190case1 5hubs 17,991 16,288 (-10%) 1568 (-22%) 20 (-0%) 115

case1 81hubs 29,713 16,288 (-10%) 4,168 (-87%) 7,100 (-1%) 1,955case2 12hubs 98,540 88,354 (-12%) 9,590 (-34%) 128(-3%) 468

Table 5.2: Preprocessing results

�e result of partitioning od-pairs and nodes are displayed in �gure 5.2. It is noticed that forall case studies the number of od-pairs which can get assigned a direct-path is rather small,resulting in lots of od-pairs le� for which a path needs to be found in the path-subproblem.A positive result is however achieved by a signi�cant reduction of origins o ∈ V mrun whichin�uences the performance of the milkrun-subproblem.

test

small

test

large

case

1

case

2

0

20

40

60

80

100

Num

bero

fod-

pairs

/Num

bero

fnod

es[%

]

ODhub

ODdirect

O \ V mrun

Vmrun

Figure 5.2: Results of partitioning od-pairs and nodes

�e next step is to produce a feasible start solution and then to improve it through columngeneration. A major insight, which occurred during its implementation, is presented below.It explains the bad performance of column generation, when applied to the logistics networksshown before.

3�e percentage in brackets expresses the reduction compared to the number of e ∈ Eoo generated onlyconsidering the distance constraint.

4�e percentage in brackets expresses the reduction compared to all possible edges for e ∈ Eoh.5Same explanation as 3, applied to edges e ∈ Ehh

Page 84: Column Generation applied to a special Case of the Hub

72 CHAPTER 5. OPTIMIZATION RESULTS

5.4 Drawback ofColumnGeneration for LogisticsNetworksDue to the large size of the case studies provided by 4�ow and the lack of an e�cient solutionfor the path-subproblem, the number of iterations for CG was �xed to one (for the smallestcase study case1 5hubs one iteration takes around three hours).However the results were very sobering. For case study case1 5hubs the improvement throughCG amounts to just above 1 %. For the small test instance testsmall, which consists of only sevennodes, 13 iterations were needed to optimality, with also very li�le improvement in the �rstiterations. �e reason for this unsatisfactory performance are the dual variables µeod and τe,and the same phenomenon which does not lead to detecting savings in the Savings-algorithmdescribed in chapter 4.5. Both is explained in the following.�e primal constraints of µeod and τe express the minimal frequency and the �ow conditions

te −∑p∈P odp3e

xpmod ≥ 0 ∀e ∈ E \ Eoo, od ∈ OD

andqe −

∑od∈OD

∑p∈P odp3e

dodxp = 0 ∀e ∈ E \ Eoo

If an edge e is not used by any path yet - which applies for most of the edges in the largercase studies at the beginning of CG - the le� hand side of both constraints equals zero andany value can be obtained by µeod and τe due to complementary slackness. In the providednetwork instances these duals equal zero in most of the cases. Recapitulating the objectivefunction of the path-subproblem, these duals raise its value, thus in�uence the objective in anegative way, resulting in preferring edges for which these duals amount to zero. �us, whichwas observed for case study case1 5hubs, the path-subproblem chooses edges, which are notcontained in any path yet. But this contradicts the goal of consolidation and its e�ect on costs.Instead of using a lot of edges, the reversed behavior is desired - generating a lot of paths, butusing few edges. To understand this apparent contradiction, again the meaning of the dualvariables needs to be repeated.If od-pair od′ ∈ OD uses edge e then µeod′ denotes how much the di�erence in frequency costson e. If the frequency te is already high enough on that edge because of some other od-pair,it does not increase the travel frequency to additionally route od′ over e, thus in this case µeod

equals zero. Besides the costs of frequency te depends on the distance of the edge. For longeredges the di�erence in frequency is more expensive than for shorter ones.Similarly the dual τe denotes how much the increase of demand costs on an edge e. In contrastto µeod it can also take a negative value, which is the case, when additional demand can berouted over this edge without increasing costs. �is is possible due to the piecewise linearcost function. �is value does not depend on the od-pair. Also here the longer the edge, thehigher the costs for the di�erence in �ow and thus τe.Looking back at the Savings-algorithm, it was identi�ed, that routing two paths from two od-pairs over the same edge does not save costs in most of the cases due to very small demands.�e costs for the additional distance covered are higher than the savings through consolida-tion.�e same phenomenon happens in column generation, because also there, every od-pair and

Page 85: Column Generation applied to a special Case of the Hub

5.4. DRAWBACK OF COLUMN GENERATION FOR LOGISTICS NETWORKS 73

its in�uence on other edges is examined separately. In contrast to the problem in the Savings-algorithm, this phenomenon does not only happen between direct-paths and hub-paths, butbetween every cost segment. Routing a detour, maybe needing to increase the frequency teand switching into a di�erent cost segment, might be more expensive than bene�ting froma negative τe. �e reason is that demands are too low. Or formulating in other words: thedi�erence in costs between the cost segments is too high. Consequently column generationchooses short edges which are not used yet and tries to avoid consolidation with other od-pairs. An example of this case is given in �gure 5.3. �ere p1 and p2 are two new feasiblepaths for od-pair od2. Actually p1 is preferred because it routes over a hub-hub edge which isalready used by od-pair od1. However, assuming that demands of both od-pairs are low, thesolver would probably choose path p2, because the consolidation e�ect on the hub-hub edgeproduces lower savings than the additional distance costs for path p1. Only when τe is neg-ative on this hub-hub edge, meaning that additional demand can �ow over this edge withoutincreasing costs, savings would be higher than costs. When the minimal frequency of od2 ishigher than the one of od1, additionally µeod2 would be non-zero on this hub-hub edges andworsen path p1 even more.Keeping this in mind, only when all edges which do not lead to a cost increase due to longerdistances are used by a path and a certain �ows over these edges occurs, the algorithm might�nally route od-pairs over the same edges. In the �rst case study 85 % of od-pairs had a demanddod below 5 ldm, 60 % below 0.64 ldm. Also the starting solution does not try to maximize thenumber of used edges. Consequently this cost saving e�ect takes several iterations to evolve,which are though not possible due to the size of the case studies provided by 4�ow.

od2

od1

p1

p2

Figure 5.3: Example when consolidation is avoided

Page 86: Column Generation applied to a special Case of the Hub

74 CHAPTER 5. OPTIMIZATION RESULTS

5.5 Heuristic Solution to Drawback

�e problem described before occurs because of generating only one path for every od-pairin the subproblem. Instead as many paths as possible should be found for one edge. Howeverthis approach is not possible due to the chosen model formulation.Modifying this idea and generating as many paths as possible in the start solution to ensurethat most edges are covered by at least one path seems reasonable. Furthermore all edges,which might not lead to an improvement of the objective function although they would getassigned a zero-valued µeod and τe, can be deleted. �e result is that the solver cannot chosethem in the path-subproblem anymore.Both ideas are combined and the generation of a start solution modi�ed. Every node v ∈ V hub

does not only get connected to its assigned hub, which was determined through clustering.It also gets connected to the α ∈ N closest hubs when excluding the already assigned �rsthub. �e �rst assignment ensures, that a feasible initial solution is generated, the other as-signments might produce paths leading over hubs, which did not result from clustering. A�erthis assignment all origins are connected to the destinations which they supply using theirassigned hubs respectively. Similar to the original start heuristic, if the assigned hub fromone origin di�ers to the assigned hub of the destination supplied, a hub-hub edge is used toconnect these hubs. �is strategy generates a lot of paths using hub-hub edges, which shouldbe the focus. �e highest consolidation e�ect is assumed to happen on these edges, thereforea lot of them should be covered by at least one path a�er the start heuristic. �e new strategygenerates, when α = 1, for every od-pair four di�erent paths. Furthermore, it is assumed thatthese α + 1 hubs, to which every origin and destination is connected, represent a solution oforigin-hub and of hub-destination edges which is di�cult to improve when considering otheredges which are not used yet. Consequently all edges e ∈ Eoh ∪Ehd which are not used a�erthe start heuristic has �nished are deleted out of the network. �is approach ensures that alledges, either leading to or originating from a hub and given into column generation, are usedat least by one path. A decision whether to reduce hub-hub edges is case speci�c. For the�rst case study there are only 20 of these edges, most of them will probably be covered by thestrategy mentioned before. For case study case1 85hubs, again the e�ect of choosing edgeswhich are not yet used in the path-subproblem might occur on hub-hub edges, since, with anumber more than 7,000 edges (compare table 5.1), not all of them will be covered by a path.�e aforementioned check bu�on in the python user interface 5.1 applies this new strategy.For smaller instances, as testsmall, it is not necessary.With this insight a modi�ed version of the start heuristic was implemented, producing muchmore paths. For the �rst case study case1 5hubs 3429 paths were generated leading to a signif-icant increase in computational time. One iteration of CG takes more than 9 hours, resultingfrom a more di�cult subproblem because only few edges should have zero-valued duals. Be-sides several paths are generated in every iteration and computational time increases.�e improvement achieved for the LP relaxation a�er one CG iteration amounts to 10 %, whichcan be seen in �gure 5.4. �is is a great improvement towards the initial result of only 1 %.�e �gure shows the costs for the start solutions MIPstart and LPstart of the MIP and its LPrelaxation, respectively. Whereas in the LP relaxation costs cannot be split and are thus onlytracked as total transportation- and hub-costs, for the MIP solution the sources of costs aredisplayed. �en the improvement a�er CG is shown in the solutions LPend and MIPend. Sincecolumn generation only includes hub-paths, direct-paths are added in a �nal step. �e �nal

Page 87: Column Generation applied to a special Case of the Hub

5.5. HEURISTIC SOLUTION TO DRAWBACK 75

solution including direct-paths is seen in MIPfinal. �e �gure excludes penalty costs, whichwere introduced to avoid symmetry e�ect.

0

200

400

600

800

Cost

s[th

s.EU

R]total transportation- and hub-coststransportation costs without milkunsmilkun costshandling costscosts for direct-paths

MIP

start

MIP

end

200

400

600

800

Num

bero

fpat

hs/m

ilkru

ns/e

dges

pathsmilkrunsedges

LPstart

MIP

start

LPen

d

MIP

end

MIP

fin

al

Figure 5.4: Results of start heuristic and column generation of one iterationfor network instance case1

In �gure 5.4 it is shown, that the MIP improved from e 855 thousand to e 770 thousand. �e�nal solution with direct-paths amounts to e 410 thousand. Apart from the improvement incosts through column generation, another aspect is seen in the �gure. From the start solutionMIPstart to the end solution MIPend a reduction of milkrun costs has happened, although onlyslightly less milkruns were used. �is means that costly milkruns must have been exchangedby cheaper ones, indicating that good milkruns were generated in the milkrun-subproblem.Also a reduction of used edges from 312 to 252 can be noticed, which indicates the use of con-solidation. �e high in�uence of direct-paths must also be stated. Summing up, these resultsshow that for the �rst case study the new strategy leads to an exploitation of consolidationand a reduction of costs.However, when keeping this strategy, it is impossible to evaluate the other case studies. Es-pecially when more hubs are included, this strategy might not lead to any improvement dueto the phenomenon, which was described in chapter 5.4, occurring once more. A lot of hub-hub edges will not be used in the start solution and will get assigned zero-valued duals. Be-sides the algorithm would take much longer because of the longer computational time for thepath-subproblem. When trying to implement the original strategy, for the network instancecase1 85hubs, which includes much more hubs than the one for which positive results could be

Page 88: Column Generation applied to a special Case of the Hub

76 CHAPTER 5. OPTIMIZATION RESULTS

obtained seen in �gure 5.4, the path-subproblem takes around 400 seconds per od-pair. Con-sequently the new strategy is not implementable, even when considering that the problem isof strategic nature and only has to be solved once per year.Comparing the results with the solution of 4�ow obtained by di�erent heuristics is di�cult.First of all, the so�ware 4�ow vista® considers not only loading meters, but also the othertwo dimension of a good, which are volume and weight. Besides, it is possible to make useof a higher travel frequency than required, which is not possible in the algorithm developedin this thesis due to the introduction of a penalty factor to avoid symmetry e�ect. Howeverthe solution of 4�ow vista® to case1 5hubs without considering milkruns produces costs ofe 332 thousand. �us the CG approach is outperformed. Furthermore the computational timeneeded to reach the results of the CG approach displayed before are not justi�able.It is concluded that the developed algorithm in this thesis might produce satisfactory resultsfor case study case1 5hubs if the start solution is modi�ed more and the iterations of CG areincreased. But up to now, it is impossible to apply this algorithm on real networks which areusually much larger. In the project RobuNet case study case1 is the smallest one concerningnodes and od-pairs. A size similar to the one of case2 is more usual. With these insights a �nalstatement to the work of this thesis is given in the �nal chapter.

Page 89: Column Generation applied to a special Case of the Hub

Chapter 6

Conclusion and Outlook

�e a�empt to solve the special case of the HLRP by an exact solution method comprehendsthree challenges which make the approach of a solely exact method impossible.�e �rst one is the size of the network instances. Even when using column generation thenumber of iterations and the number of origin-destination-pairs to consider has to be limited.�us the potential of column generation to continue until optimality could not be used.Second milkruns turned out to be very di�cult to integrate. By connecting to a cost function,which is de�ned on a set of edges rather than on single ones as for transports between nodes,milkruns made it impossible to de�ne a single subproblem. Two subproblems had to be used,one of them, the path-subproblem, includes a non-linear term due to milkruns. Further stud-ies and evaluations need to be conducted considering alternative model formulations whichinclude this routing option with its special cost structure. De�ning them on a set of edges doeslead to problems which the MIP comes across over and over.But the major challenge, which became a serious drawback to the success of column gener-ation, is the special demand structure of inbound logistics networks. With the majority ofsuppliers serving li�le demand to customers, a cost-saving e�ect of routing od-pairs over thesame edge occurs only a�er certain iterations of column generation. �is is not possible dueto the size of the instances provided. Only when �nding an e�cient method to solve the twosubproblems, this might be an option. Generating more paths at the beginning and reducingthe number of edges had a positive e�ect on the performance of column generation on the�rst case study. However this method is di�cult to generalize because it is network speci�c,depending on the demand structure, on the subset of hubs and a lot of other factors. Con-sequently at this point column generation does not seem to be the right method to solve thespecial HLRP for the network instances provided. Too many restrictions and modi�cationshad to be made detaching the developed algorithm far away from being exact. Finally a solu-tion was received which does not justify the required computational time.Concerning the start heuristic, further improvement could also be achieved by a deeper studyof milkruns. Only considering demand as main in�uence factor for their goodness, as executedin this thesis, does not seem to be the ultimate approach. Apart from that k-means clusteringcan be improved by determining the starting subset of centroids in a more deliberate manner.

77

Page 90: Column Generation applied to a special Case of the Hub

78 CHAPTER 6. CONCLUSION AND OUTLOOK

Page 91: Column Generation applied to a special Case of the Hub

List of Figures

1.1 Business units at 4�ow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.2 Transportation planning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31.3 Inbound milkrun with one hub and three customers . . . . . . . . . . . . . . . 51.4 Outbound milkrun with one hub and four suppliers . . . . . . . . . . . . . . . 51.5 Piecewise linear monotone concave function . . . . . . . . . . . . . . . . . . . 71.6 Piecewise linear monotone concave function with jumps at discontinuities . . 71.7 Piecewise constant monotone concave function with jumps at discontinuities 7

2.1 �e uncapacitated facility location problem . . . . . . . . . . . . . . . . . . . . 132.2 �e hub location and routing problem . . . . . . . . . . . . . . . . . . . . . . . 132.3 Linearization of the cost function . . . . . . . . . . . . . . . . . . . . . . . . . 142.4 Classi�cation of the special HLRP . . . . . . . . . . . . . . . . . . . . . . . . . 19

3.1 Packing lengthwise versus packing crosswise. . . . . . . . . . . . . . . . . . . 243.2 Example: Tari� 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273.3 Example: Tari� 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273.4 Example: Distance between origins and origins and hubs . . . . . . . . . . . . 273.5 Example: �e transportation network T = (G,OD) . . . . . . . . . . . . . . . 283.6 Example: A feasible solution to the special HLRP for T . . . . . . . . . . . . . 283.7 Network data of test instance . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373.8 Parameter se�ings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

4.1 �e restricted masterproblem and its dual variables . . . . . . . . . . . . . . . 474.2 �e corresponding dual problem and its primal variables . . . . . . . . . . . . 484.3 Distribution of accumulated demand for case study case1 . . . . . . . . . . . . 534.4 Path-subproblem: Path which contains milkrun . . . . . . . . . . . . . . . . . 544.5 Path-subproblem: Path which does not contain a milkrun . . . . . . . . . . . . 544.6 CG solution process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 584.7 Preprocessing: Edges between origin and hubs . . . . . . . . . . . . . . . . . . 594.8 Preprocessing: Edges between origin and hubs . . . . . . . . . . . . . . . . . . 594.9 Distribution of total demand for case study case1 . . . . . . . . . . . . . . . . . 614.10 Savings-Algorithm: start solution using edges e2 and e3 . . . . . . . . . . . . . 624.11 Savings-Algorithm: replacing edges e2 and e3 by edge e5 . . . . . . . . . . . . 624.12 Modi�ed Savings: start solution using direct-paths . . . . . . . . . . . . . . . . 634.13 Modi�ed Savings: replacing direct-paths by hub-paths . . . . . . . . . . . . . 634.14 Start solution: Partitioning od-pairs and nodes . . . . . . . . . . . . . . . . . . 644.15 Generating a feasible solution to the special HLRP . . . . . . . . . . . . . . . . 68

79

Page 92: Column Generation applied to a special Case of the Hub

80 LIST OF FIGURES

5.1 Python user interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 705.2 Results of partitioning od-pairs and nodes . . . . . . . . . . . . . . . . . . . . 715.3 Example when consolidation is avoided . . . . . . . . . . . . . . . . . . . . . . 735.4 Results of start heuristic and column generation of one iteration for network

instance case1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

B.1 Overview of input (I) and output (O) �les of python scripts . . . . . . . . . . . 86B.2 Overview of mosel implementation . . . . . . . . . . . . . . . . . . . . . . . . 87

Page 93: Column Generation applied to a special Case of the Hub

Appendix A

Entire Model of First ModelingApproach

�e model of the �rst approach is

min∑

e∈E\Eoo

∑k∈K

∑s∈S

fkcsev

k,se +

∑p∈P :

p∩Eoo 6=∅p∩Eoh 6=∅

fkcmr(p)vkmr(p) +

∑o∈O∪H

∑h∈H

chqo,h

∑p∈Pod

xp = 1 ∀od ∈ OD

ze ≤∑p∈P :p3e

xp ∀e ∈ E

Mze ≥∑p∈Pp3e

xp ∀e ∈ E

∑k∈K

fke = ze ∀e ∈ E

fkp ≤ fk

e ∀p ∈ P, ∀e ∈ p, e ∈ E, ∀k ∈ K∑k∈K

fkp = xp ∀p ∈ P

qe ≥∑

od∈OD

∑p∈Podp3e

∑k∈K

fkp dod,k ∀e ∈ E

∑k∈K

fke fk ≥ xpmod ∀od ∈ OD, ∀p ∈ Pod, ∀e ∈ p, e ∈ E

qe1 − qe2 ≤M1(1− xp) ∀e1, e2 ∈ (Eoo ∪ Eoh) ∩ p, p ∈ Pqe1 − qe2 ≥ −M1(1− xp) ∀e1, e2 ∈ (Eoo ∪ Eoh) ∩ p, p ∈ Pve1 − ve2 ≤M2(1− xp) ∀e1, e2 ∈ (Eoo ∪ Eoh) ∩ p, p ∈ Pve1 − ve2 ≥ −M2(1− xp) ∀e1, e2 ∈ (Eoo ∪ Eoh) ∩ p, p ∈ P

81

Page 94: Column Generation applied to a special Case of the Hub

82 APPENDIX A. ENTIRE MODEL OF FIRST MODELING APPROACH

∑h∈H

wh ≤ Hmax

zoh ≤ wh ∀o ∈ O ∪H, h ∈ Hzhd ≤ wh ∀h ∈ H, d ∈ H ∪D∑

s∈S

use = ze ∀e ∈ E

uhe = 0 ∀e ∈ E \ (Eoo ∪ Eoh)

uhe ≤∑p∈P :p3e

p∩Eoo 6=∅

xp ∀e ∈ (Eoh ∪ Eoo)

∑k∈K

vk,se ls−1 < qse ≤∑k∈K

vk,se Cs ∀e ∈ E, ∀s ∈ S

qe =∑s∈S

qse ∀e ∈ E

fke ≤

∑S

vk,se ∀e ∈ E, k ∈ K

ve =∑K

∑S

vk,se ∀e ∈ E

vse ≤∑K

vk,se ∀e ∈ E, s ∈ S∑S

vk,se ≤Mfke ∀e ∈ E, k ∈ K∑

K

vk,se ≤Muse ∀e ∈ E, s ∈ S

fkp ≤ vkmr(p) ∀p ∈ P, p ∩ Eoo 6= ∅, k ∈ K

vmr(p) =∑k∈K

vkmr(p) ∀p ∈ P, p ∩ Eoo 6= ∅

vkmr(p) ≤Mfkp ∀p ∈ P, p ∩ Eoo 6= ∅

xp ∈ {0, 1} ∀p ∈ Pze ∈ {0, 1} ∀e ∈ Ewh ∈ {0, 1} ∀h ∈ H

fke ∈ {0, 1} ∀e ∈ E, ∀k ∈ Kfkp ∈ {0, 1} ∀p ∈ P, ∀k ∈ K

ve ∈ N0 ∀e ∈ Evp ∈ N0 ∀p ∈ P, p ∩ Eoo 6= ∅use ∈ {0, 1} ∀e ∈ E, ∀s ∈ Sqse ∈ R ∀e ∈ E, ∀s ∈ S

qe ∈ R ∀e ∈ Evk,se ∈ N ∀e ∈ E, k ∈ K, s ∈ S

vkmr(p) ∈ N0 ∀p ∈ P, p ∩ Eoo 6= ∅, k ∈ K

Page 95: Column Generation applied to a special Case of the Hub

Appendix B

Content of USB Stick

�e stick includes a readme �le containing relevant information about so�ware requirementsto start the entire optimization process for the two a�ached test instances.Besides the stick contains data �les and python and mosel codes. A brief explanation to everycomponent is given below.

B.1 Data Files

Network data is provided in csv. �les in the form described below for the test instances testsmall

and testlarge for 2 and 5 (10) hubs respectively. �ese data �les are anonymized and do notrepresent any existing transportation network. However, both test instances should be similarto real logistics networks considering transportation distances and demand structure.�e 4�ow planning tari�s, which were used in their original form for the case studies, areanonymized and modi�ed. �e data �les to calculate costs are generic and apply for all casestudies, whilst other ones are case speci�c. For every test instance the following �les exist andare needed for the solution process.

Generic �les

�ltari�.csvContent: FTL tari�, depending on country and distance of two locations. Fixed

costs as well as variable costs per km are included.Required for: cost assignment (�les tari�, tari� assignment)

ltltari�.csvContent: LTL tari�, depending on country, distance of two locations and quantity.

Only variable costs per km and cost segment are included.Required for: cost assignment (�les tari�, tari� assignment)

83

Page 96: Column Generation applied to a special Case of the Hub

84 APPENDIX B. CONTENT OF USB STICK

Case speci�c �les

countries.csvContent: county of every locationRequired for: cost assignment (�les tari�, tari� assignment)

geo.csvContent: longitude and latitude of every locationRequired for: �le distance and start solution (clustering)

hub cost.csvContent: handling costs per ldm for every hubRequired for: optimization

locations.csvContent: all locationsRequired for: preprocessing, start solution, optimization

odpairs.csvContent: all od-pairs with demand and minimal frequenciesRequired for: preprocessing, start solution, optimization

B.2 Python CodeNine python scripts are a�ached. Figure B.1 visualizes which input �les are needed, whichoutput �les are produced and how these scripts �t into the solution process of preprocessing,start solution and optimization. �e input csv.�les which are marked in orange, are the ini-tially provided �les presented just before. All other �les are generated.As mentioned in chapter 5.2. the entire process of conducting preprocessing steps, generatinga start solution and �nally using CG, can be accomplished by means of a GUI. �e pythonscript is named 00Gui.py.�e output �les of every test instance, considering preprocessing steps and the start solu-tion, are already contained on the stick, thus the optimization through Xpress can directly bestarted. For the small test instance, the original strategy was used to determine a start solution,whereas for the other ones, the new one was conducted.

B.3 Mosel Code�e mosel �le HLRP.mos contains the implemented optimization model. An overview aboutits structure is given in �gure B.2.Some Xpress parameter se�ings were changed, its reason is brie�y explained. Also the processof generating several milkruns and paths, instead of only single ones, is clari�ed.�e parameter se�ing XPRS MIPABSCUTOFF was set to zero and used in the subproblemsto cut o� nodes which lead to a positive objective value. It speeds up the search process sinceone is only interested in negative objective values.As explained in chapter 4 the goal it to generate several milkruns and several paths in every

Page 97: Column Generation applied to a special Case of the Hub

B.3. MOSEL CODE 85

milkrun-subproblem and path-subproblem respectively. For this purpose a callback functionwas implemented collecting all integer solutions found until reaching the optimum. How-ever it was noticed, that even for larger case studies the optimum was found a�er a lowdepth of the search tree resulting in collecting few integer solution. A lot of times the op-timum was even found in the root node. To avoid this performance which is too good forthe purpose of the subproblems, the heuristic strategy in the solver was disabled by se�ingXPRS HEURSTRATEGY to zero. Besides also strong branching, the presolver and the searchfor special branching structure were turned o� by se�ing the parametersXPRS SBBEST,XPRS BRANCHSTRUCTURAL and XPRS PRESOLVE to zero.But still, even with these se�ings, the optimum was found too fast by the solver. �erefore anew strategy was implemented. A�er having reached an optimal solution, the current objec-tive value is used as a bound. A new iteration starts, in which the objective needs to lie abovethis bound. �is ensures di�erent optimal values in each iteration and possibly detecting newfeasible nodes throughout the search tree. �e number of iterations depends on the size of thecase.

Page 98: Column Generation applied to a special Case of the Hub

86 APPENDIX B. CONTENT OF USB STICK

Pre

pro

cess

ing

Op

tim

izat

ion

So

luti

on

00G

ui.

p

y

01aD

ista

nce

s.

py

01bO

ver

vie

w.

py

02aT

ransp

ort

atio

nN

etw

ork

.py

03aS

tart

solu

tion.

py

03bT

arif

fs.

py

03cD

irec

tPat

hs.

py

HL

RP

.mos

onX

pre

ss.

py

par

amet

ers.

txt

OI

II

II

II

I

_co

un

trie

s.cs

vI

I

_geo

.csv

II

II

_h

ub

_co

st.c

svI

_lo

cati

on

s.cs

vI

II

I

_od

pair

s.cs

vI

II

II

ftl

tari

ff.c

svI

I

ltl

tari

ff.c

svI

I

_dis

tance

s.cs

vO

II

II

I

_dis

tance

s_m

ilkru

n.c

svO

I

_dir

ecti

ons.

csv

OI

_over

vie

w.t

xt

O

_ed

ges

.csv

OI

II

I

_st

arts

olu

tion_over

vie

w.t

xt

O

_om

run.c

svO

I

_ed

ge_

in_m

ilkru

n.c

svO

I

_ed

ge_

in_pat

h.c

svO

I

_m

ilkru

ns.

csv

OI

_m

r_in

_pat

h.c

svO

I

_pat

hs.

csv

OI

_ta

riff

.csv

OI

_ta

riff

_as

signm

ent.

csv

OI

_ed

ge_

in_dir

ectp

ath.c

svO

I

_dir

ectp

aths.

csv

OI

_ta

riff

.csv

OI

_ta

riff

_as

signm

ent.

csv

OI

_so

luti

on_pat

hs.

csv

OI

_so

luti

on_odpai

rs.c

svO

I

_so

luti

on_co

stsp

ered

ge.

csv

OI

_so

luti

on_m

ilkru

n.c

svO

I

_so

luti

on_co

stsp

erm

ilkru

n.c

svO

I

_so

luti

on_tr

ansp

ort

over

vie

w.c

svO

Init

iali

zati

on

Sta

rtso

luti

on

Figu

reB.

1:O

verv

iew

ofin

put(

I)an

dou

tput

(O)�

leso

fpyt

hon

scrip

ts

Page 99: Column Generation applied to a special Case of the Hub

B.3. MOSEL CODE 87

data

�les

para

-m

eter

s

-rea

din

para

met

ers

-rea

din

data

�les

-de�

nese

ts

-de�

neM

IP-s

olve

MIP

-col

umng

ener

atio

n

-add

dire

ctpa

ths

-sol

veM

IP

mod

elHLR

P

whi

lest

oppi

ngcr

iteria

notr

each

ed:

-sol

vem

aste

rpro

blem

-get

dual

s-n

ewm

ilkru

ns-s

olve

mas

terp

robl

em-g

etdu

als

-for

ever

yod

-pai

r:-

new

path

s

proc

edur

eco

lumng

eneration

-de�

nem

ilkru

n-su

bpro

blem

whi

lest

oppi

ngcr

iteria

notr

each

ed-s

olve

milk

un-s

ubpr

oble

m-C

ALL

BACK

colle

ctm

ilkru

ns-a

ddne

wbo

und

limiti

ngob

ject

ive

valu

eproc

edur

ene

wmilk

runs

-de�

nepa

th-s

ubpr

oble

mw

hile

stop

ping

crite

riano

trea

ched

-sol

vepa

th-s

ubpr

oble

m-C

ALL

BACK

colle

ctpa

ths

-add

new

boun

dlim

iting

obje

ctiv

eva

luepr

oced

urene

wpa

ths

-de�

neva

riabl

es-

add

varia

bels

toco

nstra

ints

proc

edur

eco

llectpa

ths

-de�

neva

riabl

es-

add

varia

bels

toco

nstra

ints

proc

edur

eco

llectmilk

runs

colle

ctal

lint

eger

solu

tions

colle

ctal

lint

eger

solu

tions

Figu

reB.

2:O

verv

iew

ofm

osel

impl

emen

tatio

n

Page 100: Column Generation applied to a special Case of the Hub

88 APPENDIX B. CONTENT OF USB STICK

Page 101: Column Generation applied to a special Case of the Hub

Bibliography

[4�] h�p://www.4�ow.de/unternehmen/logistikforschung.html [called on 2014-08-09].

[ABR09] Z. Akca, R. T. Berger, and T. K. Ralphs. A Branch-and-Price Algorithm for Com-bined Location and Routing Problems Under Capacity Restrictions. In OperationsResearch and Cyber-Infrastructure, volume 47, pages 309 – 330. 2009.

[AK08] Sibel Alumur and Bahar Y. Kara. Network hub location problems: �e state ofthe art. European Journal of Operational Research, 190(1):1–21, October 2008.

[AKK12] Sibel a. Alumur, Bahar Y. Kara, and Oya E. Karasan. Multimodal hub location andhub network design. Omega, 40(6):927–939, December 2012.

[Ayk95] Turgut Aykin. �e hub location and routing problem. European Journal of Oper-ational Research, 83:200–219, 1995.

[BBP+11] Jose-Manuel Belenguer, Enrique Benavent, Christian Prins, Caroline Prodhon,and Roberto Wol�er Calvo. A Branch-and-Cut method for the CapacitatedLocation-Routing Problem. Computers &Operations Research, 38(6):931–941, June2011.

[BCM08] Roberto Baldacci, Nicos Christo�des, and Aristide Mingozzi. An exact algorithmfor the vehicle routing problem based on the set partitioning formulation withadditional cuts. Mathematical Programming, 115(2):351–385, 2008.

[Cam90] James F. Campbell. Freight consolidation and routing with transportationeconomies of scale. Transportation Research Part B: Methodological, 24(5):345–361, October 1990.

[Con] Claudio Contardo. A Branch-And-Cut-And-Price Algorithm for the CapacitatedLocation-Routing Problem. INFORMS Journal on Computing, pages 1–44.

[DDS05] Guy Desaulniers, Jascques Desrosiers, and Marius Solomun. Column Generation.Springer edition, 2005.

[dic] www.inboundlogistics.com/ms/logistics-glossary [called on 2014-08-09].

[DRSO59] Author G B Dantzig, J H Ramser, Source Management Science, and No Oct. �eTruck Dispatching Problem. Management Science, 6(1):80–91, 1959.

89

Page 102: Column Generation applied to a special Case of the Hub

90 BIBLIOGRAPHY

[DW60] G. B. Dantzig and P. Wolfe. Decomposition Principle for Linear Programs. Oper-ations Research, 8:101–111, 1960.

[FHAN13] Reza Zanjirani Farahani, Masoud Hekmatfar, Alireza Boloori Arabani, and EhsanNikbakhsh. Hub location problems: A review of models, classi�cation, solutiontechniques, and applications. Computers & Industrial Engineering, 64(4):1096–1109, April 2013.

[FJ81] Marshall L Fisher and Ramchandran Jaikumar. A generalized assignment heuris-tic for vehicle routing. Networks, 11:109–124, 1981.

[GaR89] R.D. Galvao and L.A. Raggi. A method for solving to optimality uncapacitatedlocation problems. Annals of Operations Research, 18:225–244, 1989.

[GG61] P. C. Gilmore and R. E. Gomory. A Linear Programming Approach to the Cu�ing-Stock Problem. Operations Research, 9:849–859, 1961.

[GPS00] Christelle Gueret, Christian Prins, and Marc Sevaux. Applications of optimizationwith Xpress-MP. Dash Optimization Ltd., Paris, France, eyrolles edition, 2000.

[Gri13] Peter Gritzmann. Grundlagen der Mathematischen Optimierung. Springer Spek-trum, Wiesbaden, 2013.

[Hak64] S. L. Hakimi. Optimum Locations of Switching Centers and the Absolute Centersand Medians of a Graph. Operations Research, 12:450–459, 1964.

[Hol94] Kaj Holmberg. Solving the staircase cost facility location and piecewise lineariza-tion. European Journal of Operational Research, 75:41–61, 1994.

[Irn00] Stefan Irnich. A multi-depot pickup and delivery problem with a single hub andheterogeneous vehicles. European Journal of Operational Research, 122(2):310–328, April 2000.

[JS12] Abbas Jokar and Rashed Sahraeian. A Heuristic Based Approach to Solve a Ca-pacitated Location-routing Problem. Journal of Management and Sustainability,2(2):219–226, July 2012.

[KH63] A. A. Kuehn and M. J. Hamburger. A Heuristic Program for Locating Warehouses.Management Science, 9:643–666, 1963.

[KL08] Krzysztof Kowalski and Benjamin Lev. On step �xed-charge transportation prob-lem. Omega, 36:913–917, 2008.

[KLSS10] Volker Kaibel, Leo Liberti, Achill Schurmann, and Renata Sotirov. Mini-Workshop: Exploiting Symmetry in Optimization. Oberwolfach Reports,(38):2245–2281, 2010.

[Kum14] P N Ram Kumar. On Modeling the Step Fixed Charge Transportation Problem. InInternational Conference on Technology and Business Management, pages 273–278,2014.

Page 103: Column Generation applied to a special Case of the Hub

BIBLIOGRAPHY 91

[Mar10] Francois Margot. Symmetry in Integer Linear Programming. In Laurence A.Junger, Michael and Liebling, �omas M. and Naddef, Denis and Nemhauser,George L. and Pulleyblank, William R. and Reinelt, Gerhard and Rinaldi, Giovanniand Wolsey, editor, 50 Years of Integer Programming 1958 - 2008, pages 657–585.Springer Berlin Heidelberg, 2010.

[Mar12] Yannis Marinakis. Multiple Phase Neighborhood Search-GRASP for the Capaci-tated Vehicle Routing Problem. Expert Systemswith Applications, 39(8):6807–6815,June 2012.

[Meu93] Winfried Meusel. Realisierung eines Logistikberater-Arbeitsplatzes fur dasFrachtkostencontrolling mit wissensbasierten Elementen. Peter Lang, europaischedition, 1993.

[Mir12] Boris Mirkin. Clustering: A Data Recovering Approach. Taylor & Francis, secondedition, 2012.

[O’K86] Morton E. O’Kelly. �e Location of Interacting Hub Facilities. TransportationScience, 20:92–106, 1986.

[O’K87] Morton E. O’Kelly. A quadratic integer program for the location of interactinghub facilities. European Journal of Operational Research, 32:393–404, 1987.

[PP14] Caroline Prodhon and Christian Prins. A survey of recent research on location-routing problems. European Journal of Operational Research, 238(1):1–17, October2014.

[REZ14] Julia Rieck, Carsten Ehrenberg, and Jurgen Zimmermann. Many-to-manylocation-routing with inter-hub transport and multi-commodity pickup-and-delivery. European Journal of Operational Research, 236(3):863–878, August 2014.

[RMSGY14] Inmaculada Rodrıguez-Martın, Juan-Jose Salazar-Gonzalez, and Hande Yaman. Abranch-and-cut algorithm for the hub location and routing problem. Computers& Operations Research, 50:161–174, May 2014.

[Rob] h�p://www.robunet.de/ [called on 2014-08-09].

[SHPW13] Frank Straube, Robert Hand�eld, Hans-Christian Pfohl, and Andreas Wieland.Trends and Strategies in Logistics and Supply Chain Management. DVV MediaGroup GmbH, Bremen, 2013.

[SIW13] Said Salhi, Arif Imran, and Niaz a. Wassan. �e multi-depot vehicle routing prob-lem with heterogeneous vehicle �eet: Formulation and a variable neighborhoodsearch implementation. Computers & Operations Research, pages 1–11, May 2013.

[SS97] S Salhi and M Sari. �eory and Methodology A multi-level composite heuristicfor the multi-depot vehicle �eet mix problem 1. European Journal of OperationalResearch, 103:95–112, 1997.

[T. 07] T. Magnanti T. Croxton, B. Gendron. Variable disaggregation in network �owproblems with piecewise linear costs. Operations Research, 55(1):146–157, 2007.

Page 104: Column Generation applied to a special Case of the Hub

92 BIBLIOGRAPHY

[TB70] J.A. Tomlin and E.M.L. Beale. Special Facilities in a General Mathematical Pro-gramming Sytem for Nonconvex Problems Using Ordered Sets of Variables. Op-erational Research, (69):447–454, 1970.

[Tom88] J.A. Tomlin. Special Ordered Sets and an Application to Gas supply OperationsPlanning. Mathematical Programming, (42):69–84, 1988.

[vR14] Guido van Rossum. �e Python Language Reference, volume Release 2. PythonSo�ware Foundation, 2014.

[Wag05] Bernd Wagner. Hub&Spoke-Netzwerke in der Logistik. Deutscher Universitats-Verlag, Wiesbaden, gabler edition, 2005.

[Web09] Alfred Weber. Uber den Standort der Industrien. J.C.B. Mohr, Tubingen, 1909.

[WN09] Horst Wildemann and Axel Niemeyer. Logistikkostensenkung durch auslastung-sorientierte Konsolidierungsplanung. Technical report, TCW Transfer-CentrumGmbH & Co. KG, Munchen, 2009.

[WZ04] Michael Wasner and Gunther Zapfel. An integrated multi-depot hub-location ve-hicle routing model for network planning of parcel service. International Journalof Production Economics, 90(3):403–419, August 2004.

[XJ12] Fanrong Xie and Renan Jia. Nonlinear �xed charge transportation problem byminimum cost �ow-based genetic algorithm. Computers & Industrial Engineering,63(4):763–778, December 2012.