SlideShare a Scribd company logo
1 of 76
Download to read offline
Forfatter:
Søren Aabling
Vejleder:
Sanne Wøhlk
Analyse af Transportomkostningerne i
Indsamlingsprocessen for Fraktioneret Dagrenovation
Case Study: Reno Djurs I/S
Kandidatafhandling, Maj 2015
Institut for Økonomi
School of Business & Social Sciences, Aarhus Universitet
Abstract
The increased focus on sustainability from the European Parliament, the Commission and the Council of
Ministers have inevitably inuenced the Danish Governments environmental policy, which the waste policy
is part of. The overall goals in the waste policy is consequently to recycle more and burn less of the solid waste.
It is the responsibility of the municipalities to collect and process the solid waste, which for the south and
northern parts of Djursland is handled by the general partnership called Reno Djurs. In order to comply to the
waste policy the company has developed a number of master thesis projects with a focus on the collection process
in collaboration with Associate Professor Sanne Wøhlk from the Department of Economics and Business. This
master thesis is founded in the project concerning synchronization of waste fractions in the collection process
of fractionated solid waste.
This master thesis presents an analysis of the cost of transportation for the collection process of fractionated
solid waste in two dierent scenarios. The analysis is a part of the restructuring in the waste collection for Reno
Djurs, and results in a recommendation to the decision-making process.
The problem for the two scenarios are viewed as a routing problem that theoretically is identied as a
generalization of the Mixed Capacitated General Routing Problem (MCGRP). This identication is due to the
use of Topology Aggregation in the data process, which reduces the problem instance signicantly. The hybrid
metaheuristic Adaptive Iterated Local Search is chosen as solution method and modied to accommodate the
generalization of MCGRP.
Based on the results the scenario containing synchronization of waste fractions is recommended. The crucial
result in this choice is the traverse time, which is assumed to have a linear relation to the cost of the collection
process. The traverse time was lower for the scenario containing synchronization of waste fractions. A sensitivity
analysis showed however that this result was sensitive to changes in the instance.
Finally some areas related to the analysis that could have been interesting to look deeper into are presented.
Also more general subjects within practical and theoretical routing are discussed with suggestions to some
changes of the general practice.
i
Anerkendelse
Først og fremmest vil jeg rette en stor tak til lektor Sanne Wøhlk for sin motiverende og spændende vejledning
gennem specialeskrivningen. Det er tydeligt gennem hendes pædagogiske og grundige vejledning at hun har
en stor interesse for sine specialestuderende. Yderligere vil jeg sige tak for hendes interesse og sparring i mine
fremtidsplaner indenfor ruteplanlægning og for at måtte benytte mig af hendes netværk i den henseende.
Virksomhederne Reno Djurs, Hørkram Foodservice, Grøn Cater og Dansk Pakke Ekspres skal have en tak
for deres samarbejde omkring projekter på min bachelor og kandidat. Deres åbenhed overfor at anvende et
akademisk perspektiv på deres praktiske ruteplanlægingsproblemer har givet mig en dyb forståelse for hvordan
teori kan anvendes i praksis.
Yderligere vil jeg gerne sige tak for den store eksibilitet som Studenterlauget og Danske Commodities har
vist mig i mine studiejobs. Danske Commodities har givet mig uvurderlig erfaring som man sjælendt nder i et
studiejob.
Da dette er afslutningen på min skolegang, vil jeg benytte lejligheden til at takke de to af mine lærere der
har haft den største indydelse på hvor jeg er idag. Derfor en stor tak til min klasselærer Lene Krabbe og min
matematiklærer Inge-Lis Andersen for støtten og troen gennem mine første 7 folkeskoleår på Vester Vedsted
Skole.
Jeg vil gerne takke mine forældre, Anders og Tove, for at give mig frihed og støtte til selv at bestemme
hvilken retning jeg vælger. En speciel tanke går til min mor som desværre må se mine bedrifter fra himmels.
Jeg vil naturligvis gerne takke mine to dejlige søstre, Anne og Marie, for mange gode minder, og fordi vi stadig
holder sammen trods vores forskelligheder. En tak går også til min Moster, Else, for at have støttet mig gennem
nogle svære perioder, hvilket jeg sætter mere pris på end jeg kan sige. Vigtigst af alt er jeg taknemlig for
kærligheden, støtten og tolerancen gennem snart 8 år fra min kæreste Katrine Skeby, hun har en stor andel i
hvor jeg er idag.
ii
Indhold
Indhold iii
1 Indledning 1
1.1 Virksomheds- og situationsbeskrivelse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1.1 Nuværende Dagrenovation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1.2 Alternativ Dagrenovation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2 Problemformulering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.3 Metode og Struktur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2 Litteraturgennemgang 5
2.1 Renovation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.1.1 Green Logistics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.1.2 Reverse Logistics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.1.3 Waste Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.2 Ruteplanlægning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.2.1 The Capacitated Vehicle Routing Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.2.2 The Capacitated Arc Routing Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.2.3 The General Routing Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.2.4 The Mixed Capacitated General Routing Problem . . . . . . . . . . . . . . . . . . . . . . 10
2.3 Beregningskompleksitet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.4 Løsningsmetoder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.4.1 Banebaserede Metaheuristikker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.4.1.1 Simulated Annealing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.4.1.2 Tabu Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.4.1.3 Greedy Randomized Adaptive Search Procedure . . . . . . . . . . . . . . . . . . 16
2.4.1.4 Variable Neigborhood Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.4.1.5 Guided Local Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.4.1.6 Iterated Local Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.4.1.7 Large Neighborhood Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.4.2 Populationsbaserede Metaheuristikker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.4.2.1 Evolutionary Computation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.4.2.2 Ant Colony Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3 Anvendt Teori 21
3.1 Mixed Capacitated General Routing Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.1.1 Distance-Constrained MCGRP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.1.2 MCGRP with Probabilistic Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.1.3 The Periodic MCGRP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.1.4 The Periodic Distance-Constrained MCGRP with Probabilistic Constraints . . . . . . . . 24
3.2 Topology Aggregation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.3 Adaptive Iterated Local Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.3.1 Augment-Merge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.3.2 Local Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.3.3 Adaptive Large Neighborhood Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
4 Emperi 33
iii
iv INDHOLD
4.1 Datagrundlag . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
4.2 Databeskrivelse og -antagelser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
4.2.1 Vognpark . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
4.2.2 Afstandsmatricer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
4.2.3 Efterspørgsel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
4.2.4 Beholdere . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
4.2.5 Anmodninger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
4.2.6 Kunder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
4.2.7 Chauører . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
4.2.8 Ruter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
4.2.9 Omkostninger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
4.3 Databehandling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
4.3.1 Topology Aggregation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
5 Løsningsprocedure 38
5.1 Visual Basics for Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
5.2 Implementeret Løsningsmetode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
5.2.1 Supplerende betingelser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
5.2.2 Augment-Merge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
5.2.3 Local Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
5.2.4 Adaptive Large Neighborhood Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
6 Tuning 42
6.1 Tuningsproces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
6.2 Forudinstillede Parametre  Mekanismer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
6.3 Tuningsfase 1 - Undgå Ikke-Produktiv Søgning . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
6.4 Tuningsfase 2 - Intensivering i Søgningen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
6.5 Tuningsfase 3 - Diversicering i Søgningen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
7 Resultater 50
7.1 Scenarieanalyse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
7.1.1 Scenarie 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
7.1.1.1 Restaald . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
7.1.1.2 Organisk aald . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
7.1.1.3 Samlet Vurdering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
7.1.2 Scenarie 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
7.1.2.1 Restaald . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
7.1.2.2 Organisk aald . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
7.1.2.3 Samlet Vurdering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
7.2 Følsomhedsanalyse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
7.2.1 Traverseringstid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
7.2.2 Udnyttelse af rådighedstiden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
7.2.3 Kapacitetsudnyttelse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
7.2.4 Kvalitet af Ruterne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
7.2.5 Kvalitet af Ruteplanlægning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
7.3 Sammenfatning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
7.4 Diskussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
8 Konklusion 62
9 Perspektivering 63
Litteratur 65
Forkortelser
ACO Ant Colony Optimization
AILS Adaptive Iterated Local Search
ALNS Adaptive Large Neighborhood Search
ARP Arc Routing Problem
CARP Capacitated Arc Routing Problem
CARPMD Capacitated Arc Routing Problem with Mobile Depots
CARPTW Capacitated Arc Routing Problem with Time Windows
CARPVD Capacitated Arc Routing Problem with Vehicle Dependencies
CCPP Capacitated Chinese Postman Problem
CGRP Capacitated General Routing Problems
CGRP-m Capacitated General Routing Problems on Mixed Graphs
CPP Chinese Postman Problem
CVRP Capacitated Vehicle Routing Problem
DCMCGRP Distance-Constrained Mixed Capacitated General Routing Problem
EC Evolutionary Computation
GA Genetic Algorithms
GIS Geographic Information System
GLS Guided Local Search
GRASP Greedy Randomized Adaptive Search Procedure
GRP General Routing Problems
ILS Iterated Local Search
LNS Large Neighborhood Search
LS Local Search
MA Memetic Algorithm
MCGRP Mixed Capacitated General Routing Problem
MCGRPPC Mixed Capacitated General Routing Problem with Probabilistic Constraints
MDCARP Multi Depot Capacitated Arc Routing Problem
MDVRP Multi Depot Vehicle Routing Problem
MGRP Mixed General Routing Problem
NEARP Node, Edge and Arc Routing Problem
NRP Node Routing Problem
PCARP Periodic Capacitated Arc Routing Problem
PDCMCGRPPC Periodic Distance-Constrained Mixed Capacitated General Routing Problem with
Probabilistic Constraints
PMCGRP Periodic Mixed Capacitated General Routing Problem
PVRP Periodic Capacitated Vehicle Routing Problem
RCL Restricted Candidate List
Rich VRP Rich Vehicle Routing Problems
RPP Rural Postman Problem
SA Simulated Annealing
SCARP Stochastic Capacitated Arc Routing Problem
TSP Traveling Salesman Problem
VBA Visual Basics for Applications
VNS Variable Neighborhood Search
VRPB Vehicle Routing Problem with Backhauls
VRPPD Vehicle Routing Problem with Pickup and Delivery
VRPTW Vehicle Routing Problem with Time Windows
v
Kapitel 1
Indledning
I juni 2013 afsluttedes forhandlingerne mellem Europa Parlamentet, Kommissionen og EU's ministerråd om det
nye miljøhandlingsprogram, EU's 7. miljøhandlingsprogram Living well, within the limits of our planet [30].
EU's 7. miljøhandlingsprogram er køreplan for et ressourceeektivt EU og danner rammen om EU's samlede
miljøpolitikudvikling. I EU's miljøpolitik har man fastsat nogle målsætninger i forhold til øget genanvendelse af
husholdningsaald, hvor et af de centrale mål er at udsortere 50 % af det ikke-organiske husholdningsaald. Den
danske aaldspolitik er naturligt inueret af EU's miljøpolitik, og i oktober 2013 lancerede den danske regering
ressourcestrategien Danmark uden aald [68]. Med ressourcestrategien forventes Danmark at opfylde en række
af de EU-mål, der er fastsat i EU's 7. miljøhandlingsprogram. Ressourcestrategien præsenterer overordnet et
Danmark som på sigt genanvender mere og forbrænder mindre aald og har følgende fem fokusområder:
• Forbrænd mindre aald og udnyt de værdier og ressourcer som er i det.
• Reducér miljøpåvirkningen fra aald.
• Kvalitet i genanvendelsen.
• Omlægning af aaldshåndteringen gennem styrket oentlig-privat samarbejde.
• Overvåg udviklingen på aaldsområdet, især genanvendelsen.
Med fokus på disse områder sætter regeringen det mål at Danmark i 2022 skal udsortere og genanvende
50 % både ikke-organisk og organisk husholdningsaald. Dette mål skal ses i forhold til 2011-tal hvor 22 % af
husholdningsaaldet blev genanvendt, hvilket placerer Danmark på en 8. plads bland de 28 EU-landende. Målet
om en fordobling af genanvendelsen af husholdningsaaldet forventes opnået gennem implementering af nogle
initiativer som retter sig mod fokusområderne.
Det er kommunerne der har det primære ansvar på aaldsområdet i forhold til husstandes aald. Dette ansvar
for at sikre indsamling og behandling af husstandenes aald er i de este tilfælde håndteret af et kommunalt
ejet interessentskab. Det er dennes opgave at indrette indsamlingsordningen i den enkelte kommune, hvilket
er et vigtigt element for at øge genanvendelsen af aald fra husholdningerne. Derfor er et centralt initiativ i
ressourcestrategien mod fokusområderne fremsat som følgende:
Understøttelse af udviklingen af nye indsamlingsordninger i kommunerne, der sikrer borgerne let adgang til at
sortere og dermed genanvende mere husholdningsaald, herunder organisk aald, plast- og metalaald. [68]
Reno Djurs I/S (Reno Djurs) er et af disse kommunalt ejede interessentskaber, ejet af Syddjurs og Norddjurs
kommuner. Det er deres opgave at indrette indsamlingsordningen af aald i det geograske område som Syddjurs
kommune og Norddjurs kommune omfatter. Med en genanvendelse i 2013 på 31 % er det nødvendigt at øge
genanvendelsen for at leve op til regeringens målsætning om at genanvende 50 % både ikke-organisk og organisk
1
2 KAPITEL 1. INDLEDNING
husholdningsaald i 2022. Reno Djurs mener ikke at genanvendelsesprocenten bør være målet i sig selv, men
ønsker at løfte en endnu større mængde aald opad i aaldshierarkiet til genanvendelse, hvis det giver mening
miljømæssigt og økonomisk [46]. I samarbejde med lektor Sanne Wøhlk fra Institut for Økonomi, Aarhus Uni-
versitet har en række specialeprojekter med fokus på udvikling af nye indsamlingsordninger været udbudt til de
studerende i 2014. Denne afhandling vil tage udgangspunkt i det projekt som omhandler indsamlingsstrategier
og om selve indsamlingensprocessen på tværs af fraktionerne bør synkroniseres eller ej.
1.1 Virksomheds- og situationsbeskrivelse
Reno Djurs er et nonprot interessentskab som siden 1996 har været Djurslandkommunernes aaldsselskab, først
mellem de daværende 8 kommuner på Djursland, og efter kommunalreformen i 2007, mellem Syddjurs Kommune
og Norddjurs Kommune. Det er selskabets opgave at varetage aaldshåndteringen i de 2 kommuner, og driver
derfor et behandlingsanlæg i Glatved samt 10 genbrugsstationer på Djursland og Anholt. Selskabets hoved-
driftsaktiviteter er behandling af forbrændings- og deponeringsegnet aald, dagrenovation, genbrugsstationer,
indsamlingsordninger for bundfældningstanke, olie-, benzin- og fedtudskillere, samt samletanke og indsamling af
klinisk aald. Selve indsamlingen af dagrenovation er på nuværende tidspunkt udliciteret til selskabet MiljøTeam
A/S som er specialiseret indenfor aaldsindsamling. Reno Djurs har 42 medarbejdere, som årligt varetager en
aaldsmængde på ca. 144.000 tons, heraf er ca. 20 % fra dagrenovation. Dagrenovationen er indsamlet fra ca.
36.000 hustande, 1.200 virksomheder og 15.000 sommerhuse [46].
1.1.1 Nuværende Dagrenovation
Den nuværende dagrenovationsordning (nuværende ordning) omfatter indsamling af aald hos Reno Djurs'
kunder; husstande, virksomheder og sommerhuse i de 2 kommuner. Sommerhuse og virksomheder falder udenfor
afgrænsningen af denne afhandling og bliver derfor ikke behandlet yderligere. Den nuværende ordning har en
høj kundetilpasning, da kunderne selv kan vælge en kombination af beholder og tømningsfrekvens. Kunderne
skal til restaald vælge mellem 5 typer af beholderstørrelser; 110, 140, 240, 400 eller 600 liter, denne tømmes
en gang hver uge eller hver 14. dag. Til papir kan kunderne vælge mellem 2 typer af beholderstørrelser; 140
eller 240 liter, som tømmes en gang hver 4. uge. På den nuværende ordning er der pålagt et grundgebyr og et
forbrugsgebyr. Grundgebyret er en fast ydelse som giver brugsret til genbrugsstationer og kuber på Djursland
samt tømning af papirbeholder. Forbrugsgebyret er en variabel ydelse for tømning af restaald som afhænger af
hvilken beholder og tømningsfrekvens kunderne vælger [46]. Kildesorteringen er opdelt i 4 fraktioner: restaald,
papir, glas og batterier. Sammensætningen af disse i 2013 kan ses i tabel 1.1 [47].
Rest Papir Glas Batterier Total
79 % 17 % 4 % 0 % 100 %
Tabel 1.1: Vægtsammensætningen i dagrenovationen af kildesorterede fraktioner for Syd- og Norddjurs kommu-
ner i 2013.
Indsamlingen i den nuværende ordning af restaald og batterier sker fra adressen, mens glas indsamles fra
kuber og papir indsamles fra begge steder [46].
1.1.2 Alternativ Dagrenovation
I 2011 udgav Miljøstyrelsen et idékatalog som beskriver de tekniske og økonomiske konsekvenser for en række
alternative dagrenovationsordninger, desværre er antagelsen om oplandsstørrelsen ikke repræsentativ for Reno
Djurs [2]. Derfor har Reno Djurs i 2012, med udgangspunkt i Miljøstyrelsens idekatalog, bedt Econet A/S om
1.2. PROBLEMFORMULERING 3
at udarbejde et idékatalog hvor deres nuværende og en række alternative dagrenovationsordninger bliver vurde-
ret [2]. Den nuværende ordning er beskrevet i sektion 1.1.1, men idékataloget tilføjer en væsentlig information
vedrørende aaldssammensætningen som beskrives her. En udsortering af aaldet i 2010 opdeler aaldet i ti
fraktioner, seks af fraktionerne er for enkelthedens skyld aggregeret under betegnelsen Mindre fraktioner. De
fem fraktioner er opdelt i procent i forhold til vægtsammensætningen og kan ses i tabel 1.2. Det organiske aald
er den eneste væsentlige fraktion som i den nuværende ordning ikke kildesorteres, dette trods en andel på 38 %.
Rest Papir Glas Organisk Mindre Fraktioner
19 % 23 % 6 % 38 % 14 %
Tabel 1.2: Vægtsammensætningen i dagrenovationen af udsorterede fraktioner for Syd- og Norddjurs kommuner
i 2010.
Idékataloget beskriver 8 alternative dagrenovationsordninger som illustrerer forskellige muligheder for at
øge genanvendelsen i forhold til den nuværende ordning. Det andet alternativ i idékataloget refereres til i
denne afhandling som den alternative ordning, da de resterende alternative dagrenovationsordninger falder
udenfor afgrænsningen af denne afhandling. Den alternative ordning fokuserer på indsamlingen af de re største
fraktioner i aaldssammensætningen som kan ses i tabel 1.2; organisk, papir, rest og glas.
I den alternative ordning skal indsamlingen af aaldet planlægges over to uger, denne planlægning skal så
repeteres gennem året. Aaldet kildesorteres således at det organisk aald er sin egen fraktion hvilket i den
nuværende ordning er en del af restaaldet. Da restaald og organisk aald er fokusområdet for den alternative
dagrenovation og papir og glas ikke er, falder disse fraktioner udenfor afgrænsningen af denne afhandling.
Indsamlingen af restaald og organisk aald vil ske i særskilte beholdere fra adressen af forskellige vogne som
transporterer det til behandlingsanlægget i Glatved.
Idékataloget har beregnet at kildesortering af det organiske aald vil øge genanvendelsen med 25 %-point.
1.2 Problemformulering
Reno Djurs vil gerne leve op til regeringens målsætning om at genanvende 50 % af husaaldet i 2022, hvilket
kræver en stigning på 19 %-point i forhold til den nuværende ordning. Ved at kildesorter det organiske aald
kan Reno Djurs opnå en stigning på 25 %-point, hvilket vil tilfredsstille regeringens målsætning. Da Reno Djurs
ikke mener at genanvendelsesprocenten i sig selv skal være målet, ønsker de at få undersøgt de økonomiske
omkostninger der følger med en omlægning af den nuværende ordning til den alternative ordning der indeholder
kildesortering af det organiske aald. Med udgangspunkt i denne omlægning ønskes en analyse af den økonomiske
forskel mellem følgende to scenarier:
1. Hvad er de økonomiske omkostninger i indsamlingsprocessen ved den alternative dagrenovation hvor ind-
samlingen på tværs af fraktionerne synkroniseres?
2. Hvad er de økonomiske omkostninger i indsamlingsprocessen ved den alternative dagrenovation hvor ind-
samlingen på tværs af fraktionerne ikke synkroniseres?
De økonomiske omkostninger i indsamlingsprocessen ved den alternative ordning kan estimeres ved at betrag-
te problemstillingen som et ruteplanlægningsproblem. I ruteplanlægningsproblemer har de økonomiske omkost-
ninger oftest et lineært forhold med ruteplanlægningen målt i afstand, hvilket også er tilfældet her. Afstanden
er derfor objektet der skal minimeres i de to scenarier, og på baggrund heraf drages en konklusion af hvilket
scenarie der er økonomisk er mest fordelagtigt. Denne konklusion bør ikke være det endelige beslutningskriterie
for hvilket scenarie der skal vælges, men bør være et væsentligt element i Reno Djurs' beslutningsprocess hvor
andre elementer, som f.eks. serviceniveau og omstillingsparathed, også bør inddrages.
4 KAPITEL 1. INDLEDNING
Formålet for denne afhandling formuleres som følgende:
Formålet med denne afhandling er at analysere de økonomiske omkostninger i indsamlingsprocessen ved de to
ovennævnte scenarier med en anbefaling til Reno Djurs om hvilket scenarie, set fra et
ruteplanlægningssynspunkt, der er mest fordelagtig.
1.3 Metode og Struktur
Videnskabsteoretisk har denne afhandling en positivistisk tilgang. Denne tilgang bygger på positive erfaringer,
hvilket vil sige at kun det der kan iagttages og måles accepteres som videnskabelig erkendelse [77]. Ifølge
positivismen skal videnskabslige teorier kunne bekræftes på baggrund af objektive iagttagelser af virkeligheden.
Videnskaben bør kun beskæftige sig med det, der kan gøres til genstand for direkte observation.
I afhandlingen anvendes et casestudie baseret på et empirisk datagrundlag og videnskabelig litteratur in-
denfor Operational Research til at undersøge problemstillingen. Undersøgelsen af problemstilling indebærer en
afgrænsningen af denne, dette vil gøres gennem afhandlingen hvor det ndes naturligt. Valg af løsningsmetode
til det praktiske ruteplanlægningsproblems teoretiske ækvivalent er baseret på præstationsevnen beskrevet i
litteraturen. Løsningsmetoden er herefter modiceret for at passe til det teoretiske ruteplanlægningsproblem og
det anvendte programmeringssprog.
I det følgende kapitel vil der blive foretaget en bred litteraturgennemgang indenfor ruteplanlægning. Dette
omfatter teori vedrørende renovation, ruteplanlægningsproblemer og løsningsmetoder til disse. Herefter er der
lagt vægt på en dyb redegørelse af den teori som anvendes til at løse afhandlingens problemstillingen. Inden
en præsentation af løsningsproceduren, vil datagrundlag, antagelser for problemstillingen og databehandlingen
beskrives. Løsningsproceduren omhandler det valgte programmeringssprog og udviklingen af den implementere-
de løsningsmetode. Nogle udvalgte parametre og mekanismer i den implementerede løsningsmetoden er herefter
tunet. Den tunede løsningsmetode er anvendt på det teoretiske ruteplanlægningsproblem samt nogle modicere-
de tilfælde. Resultaterne for disse er præsenteret i en scenarieanalyse og en følsomhedsanalyse. På baggrund af
resultaterne præsenteres afhandlingens konklusion på problemstillingen. Slutteligt perspektiveres der til emner
som relatere sig til afhandlingen samt en diskussion af generelle emner indenfor praktisk og teoretisk ruteplan-
lægning.
Kapitel 2
Litteraturgennemgang
Dette kapitel redegør for den relevante teori i forhold til afhandlingens problemstilling. Der er lagt vægt på en
bred redegørelse af teori indenfor ruteplanlægning, da formålet med dette kapitel er at vise en bred forståelse
af forskningsområdet.
I sektion 2.1 redegøres der for teori vedrørende renovation, dette omfatter Green Logistics, Reverse Lo-
gistics og Waste Management. I sektion 2.2 redegøres der for teori indenfor ruteplanlægning, dette omfatter
Capacitated Vehicle Routing Problem (CVRP), Capacitated Arc Routing Problem (CARP) og Mixed Capacita-
ted General Routing Problem (MCGRP). I sektion 2.2.4 redegøres der for løsningsmetoder indenfor klassen af
Metaheuristikker til førnævnte ruteplanlægningsproblemer.
2.1 Renovation
Reno Djurs ønsker at løfte en større mængde aald opad i aaldshierarkiet til genanvendelse hvis det giver me-
ning miljømæssigt og økonomisk. Da objekterne er de miljømæssige og økonomiske faktorer, inddrages teorierne
Green Logistics, Reverse Logistics og Waste Management da disse er relateret til problemstillingen.
2.1.1 Green Logistics
Green Logistic kan ifølge Shibi et al. [72] deneres som processen ved at producere eller distribuere varer
på en bæredygtig måde, hvor de miljømæssige og sociale faktorer tages med i overvejelserne. Objektet for
organisationens logistikstrategier er derfor ikke kun den økonomiske eekt, men også de større eekter på
samfundet. Traditionelt har logistikmodeller til produktion eller distribution primært koncentreret sig om at
minimere en økonomisk faktor i forhold til organisationens begrænsninger i driften. Men når der skal tages hensyn
til objekter indenfor Green Logistics er det nødvendigt at anvende modeller som har dette inkorporeret [72].
Figur 2.1: Komplemetærmængde for Green
Logistics, Reverse Logistics og Waste Mana-
gement.
Udviklingen af selve begrebet Green Logistics er ifølge Murp-
hy et al. [59] svært at sætte et præcist tidspunkt på, men det
menes at have haft et meget begrænset fokus før 1960'erne. Det
vi i dag kender som Green Logistics repræsenterer konvergens
fra ere grene af teorier som er blevet udviklet siden da. Disse
teorier klassiceres med rette ofte under Green Logistics, men i
selve udviklingen af teorierne har det ikke været med det formål.
Derfor har disse teorier en komplementærmængde af problem-
stillinger til Green Logistics. To af disse er Reverse Logistics og
Waste Management, og er illustreret i gur 2.1.
Ifølge KcKinnon et al. [57] er aktiviteter der genanvender af-
fald eller emballage en væsentlig del af Green Logistics. Denne
fællesmængde af problemstillinger mellem Reverse Logistics og
5
6 KAPITEL 2. LITTERATURGENNEMGANG
Green Logistics klassicerer Reverse Logistics under Green Logi-
stics. Ifølge Rogers et al. [69] er det dog vigtigt at kunne skelne mellem Green Logistics og Reverse Logistics.
For eksempel, at designe et produkt der har som objekt at forurene mindre ved at forbruge mindre plastik er
Green Logistics, men ikke Reverse Logistics. Hvis produktet involverer en aktivitet der genanvender emballagen
og dermed forbruger mindre plastik er dette både Green Logistics og Reverse Logistics. Hvis objektet kun er
økonomisk og aktiviteten at indsamle emballagen til genanvendelse har en økonomisk fordel, men forurener mere
end produktion af nyt emballage, så er det Reverse Logistics, men ikke Green Logistics.
Ifølge Shibi et al. [72] er Waste Management en væsentlig proces i at beskytte miljøet og bevare ressourcer.
De aktiviteter der er i forbindelse med transporten af aald er de miljømæssige aspekter af Waste Management,
og dermed også en del af Green Logistics.
2.1.2 Reverse Logistics
Reverse Logistics inkluderer alle aktiviteter som er inkluderet i denitionen af logistik, forskellen ligger i at
alle disse aktiviteter opererer bagudrettet. Derfor kan Reverse Logistics deneres som processen at planlæg-
ge, implementere og kontrollere bagudrettede ows af råmaterialer fra lager, pakning eller anvendelsessted hos
producent, distributør eller anvendelsessted til et sted for genanvendelse eller korrekt bortskaelse [23]. Kort
sagt handler processen Reverse Logistics om at tage råvarer fra deres slutdestination med det formål at opnå
en ekstra værdi eller bortskae det korrekt. Dette inkluderer de åbenlyse aktiviteter som at genanvende be-
holdere og emballage, men per denition inkluderer også aktiviteter som at genfremstille og renovere. Reno
Djurs kan implementere Reverse Logistics ved at kildesortere det organiske aald. Det organiske aald vil blive
transporteret til et biogasanlæg i Vejen og har dermed det formål at opnå en ekstra værdi i form af biogas.
2.1.3 Waste Management
Waste management deneres som indsamling, transport, behandling og bortskaelse af det aald der er produ-
ceret af menneskelig aktivitet for at reducere eekten på menneskers helbred eller bekvemmelighed [18]. Selvom
Waste Management og Reverse Logistics er relateret til hinanden er det denitionen af aald der adskiller dem
fra hinanden. Reverse Logistics koncentrerer sig om de bagudrettede ows som der kan udnyttes til at skabe
værdi og indgå i en ny forsyningskæde, mens Waste Management koncentrerer sig om det aald der ikke kan
udnyttes [23].
I forhold til afhandlingens problemstilling er Waste Management denitionen meget generel, og da pro-
blemstillingen kun inddrager fast aald introduceres Solid Waste Management. Solid Waste Management kan
deneres som kontrol af dannelse, opbevaring, indsamling, transfer og transport samt behandling og bortskaelse
af fast aald der er i overenstemmelse med de bedst kendte principper indenfor sundhed, økonomi, ingeniør-
videnskab, konservering, æstetik og miljømæssige overvejelser og som reagerer på den oentlige holdning [76].
Indsamlingsaktiviteten (Waste Collection) er den problemstilling i Solids Waste Management som er relevant for
denne afhandling. Indenfor Waste Collection ndes 4 primære problemstillinger, Residential Collection, Com-
mercial Collection, Roll-On/Roll-O Collection og Hazard Waste Collection. Residential Collection involverer
indsamling af aaldsbeholdere hos boliger i et vejnetværk. Commercial Collection involverer indsamlingen af
aaldscontainere hos virksomheder i et lokationsnetværk. Roll-On/Roll-O Collection involverer indsamling og
uddeling af henholdsvis fulde og tomme containere hos byggepladser i et lokationsnetværk. Og Hazard Wa-
ste Collection involverer indsamling, omlastning og opbevaring af farligt aald i et lokationsnetværk [72, 78].
Residential Collection og Commercial Collection er relevante problemstillinger i forhold til afhandlingens pro-
blemstilling og uddybes derfor. I begge problemstillinger er chauørerne begrænset af arbejdstiden og vognens
kapacitet. Når en vogn er fuld skal den tømmes på en genbrugsstation eller et behandlingsanlæg før den igen
kan indsamle aald.
2.2. RUTEPLANLÆGNING 7
Residential Collection involverer besøg på veje med boliger i et vejnetværk, og deneres derfor som et
Arc Routing Problem (ARP), se også sektion 2.2. I et ARP ligger efterspørgslen altid på vejen, lokationernes
efterspørgsel er ofte aggregeret, og derfor serviceres vejen. Da boliger ofte har en begrænset mængde aald
anvender de aaldsbeholdere til at opbevare deres aald i. Boligerne besøges typisk hver eller hver anden uge
af vogne som tømmer aaldsbeholderne.
Commercial Collection involverer besøg på lokationer med virksomheder i et lokationsnetværk, og deneres
derfor som et Node Routing Problem (NRP), se også sektion 2.2. I et NRP ligger efterspørgslen altid på lokatio-
nen, og derfor serviceres denne. Da virksomhederne ofte har en betydelig mængde aald anvender de containere
til at opbevare deres aald i. Virksomhederne besøges typisk en eller ere gange om ugen af vogne som tømmer
containerne for aald.
2.2 Ruteplanlægning
Ruteplanlægningsproblemer er i litteraturen traditionelt dedikeret til to problemklasser; NRP og ARP. I NRP
forekommer serviceanmodningen i alle eller en delmængde af knuder, hvorimod serviceanmodningen i ARP
forekommer i alle eller en delmængde af kanter. En mere generel og eektiv klasse af problemer er General
Routing Problems (GRP), her forekommer serviceanmodningen både i alle eller en delmængde af knuder og i
alle eller en delmængde af kanter [12].
MCGRP er af klassen GRP og en generalisering af denne anvendes her som den teoretiske ækvivalent til
det praktiske ruteplanlægningsproblem for den alternative ordning som beskrevet i sektion 2.1. På baggrund af
datagrundlaget burde den teoretiske ækvivalent være et CARP, dog anvendes Topology Aggregation metoden i
sektion 4.3.1, hvilket omdanner datagrundlaget til et MCGRP.
MCGRP er en generalisering af tre ruteplanlægningsproblemer, CVRP indenfor NRP, CARP indenfor ARP
og GRP indenfor GRP, dette er illustreret i gur 2.2. Det ndes nødvendigt at redegøre for CVRP, CARP, GRP
og MCGRP, og det antages at læseren er bekendt med grundlæggende ruteplanlægningsproblemer som f.eks.
the Traveling Salesman Problem (TSP) og the Rural Postman Problem (RPP).
Figur 2.2: Klassicering af ruteplanlægningsproblemer og deres relation til hinanden [24].
2.2.1 The Capacitated Vehicle Routing Problem
CVRP er en del af klassen NRP og blev deneret af Dantzig et al. [21] i 1959 som en generalisering af TSP.
CVRP anvendes i praksis til at modellere f.eks. distribution af varer fra et depot til kunder [78]. Indenfor
8 KAPITEL 2. LITTERATURGENNEMGANG
Operational Research har CVRP været genstand for stor opmærksomhed siden Dantzig et al. denerede pro-
blemet. Dette er grundet den brede anvendelighed og betydningen i at optimere operationelle omkostninger i et
distributionsnetværk [52]. For videnskabelig litteratur omhandlende CVRP samt generaliseringer henvises der
til Toth et al. [78], Golden et al. [37] og Laporte et al. [55].
I CVRP forsøges det at identicere de ruter med minimale omkostninger under forudsætning af at et givet
sæt knuder er serviceret ved at traversere på et sæt af kanter. Knuderne er typisk anvendt til at repræsentere
den geograske placering af kunder. Til hver kunde er tilknyttet en givet efterspørgsel med en tilsvarende
serviceringsomkostning. Kanterne er ofte anvendt til at repræsentere veje mellem kunderne. Hver vej er tilknyttet
en traverseringsafstand med en tilsvarende traverseringsomkostning.
Mere formelt kan CVRP formuleres som det følgende grafteoretiske problem. Lad G = (N, E) denere en
komplet ikke-orienteret graf når omkostningsmatricen c er symmetrisk og G = (N, A) denere en komplet
orienteret graf når omkostningsmatricen c er asymmetrisk. Lad N = {0, . . . , n} betegne sættet af knuder hvor
knude i = 0 denerer depotet, lad E = {(i, j) : i, j ∈ N, i  j} betegne sættet af ikke-orienteret kanter og lad
A = {(i, j) : i, j ∈ N, i = j} betegne sættet af orienterede kanter. Lad N ⊆ N betegne sættet af servicekrævende
knuder. Lad cij betegne en ikke-negativ traverseringsomkostning ved at traversere kant (i, j) ∈ E ∨ A. Brugen
af lukkede kredsløb (i, i) er ikke tilladt, og deneres derfor cii = +∞ for i ∈ N. Lad qi for i ∈ N betegne
efterspørgselsmængden og pi for i ∈ N betegne serviceringsomkostningen. Lad K = {1, . . . , m} betegne sættet
af homogene vogne til rådighed i depotet med en kapacitet Q. For at sikre gennemførlighed antages det at
qi ≤ Q for i ∈ N . Formålet med CVRP er at identicere et antal ruter hvor vognen starter og slutter i depotet
sådan at hver knude i ∈ N er serviceret af nøjagtig en vogn hvor den aggregerede leveringsmængde på ruten
ikke overstiger Q og de totale omkostninger er minimerede.
Adskillige generaliseringer af CVRP er blevet præsenteret i litteraturen, de mest væsentlige introduceres kort.
I et VRP with Time Windows (VRPTW) har hver knude tilknyttet et tidsinterval som vognen skal servicere
knuden indenfor. I et VRP with Backhauls (VRPB) er sættet af kunder delt i to, det ene sæt kunder skal have
levering og det andet sæt skal have opsamling. I en rute servicerer vognen først de kunder som har levering og
derefter de kunder der har opsamling. I et VRP with Pickup and Delivery (VRPPD) har hver knude tilknyttet en
levering samt dens oprindelse og/eller en opsamling samt dens destination [78]. I et Periodic VRP (PVRP) skal
knuderne serviceres af vogne en eller ere gange i løbet af en planlægningshorisont bestående af ere perioder
med ruter i hver periode [15]. Det kan påvises at PVRP svarer til the Multi Depot VRP (MDVRP) hvis perioder
substitueres med depoter [35].
Løsningsmetoder til CVRP og dens generaliseringer kan kategoriseres indenfor 3 klasser, eksakte, heuristikker
og metaheuristikker. Eksakte løsningsmetoder kan løse tilfælde med op til omtrent 100 knuder indenfor rimelig
tid. Da størrelsen af CVRP i praksis ofte overstiger 100 knuder, er de mest anvendte løsningsmetoder i praksis
heuristikker og metaheuristikker[52]. I sektion 2.4 redegøres for de mest anvendte løsningsmetoder indenfor
klassen af metaheuristikker.
2.2.2 The Capacitated Arc Routing Problem
CARP er en del af klassen ARP og blev deneret af Golden et al. [38] i 1981 som en generalisering af RPP.
Teoretisk er CARP indenfor ARP modstykket til CVRP indenfor NRP [82]. CARP anvendes i praksis til at
modellere f.eks. indsamling af aald, rydning af sne og uddeling af post [78]. CARP har indenfor Operational
Research været genstand for en øget opmærksomhed de seneste 15 år, dog ikke i samme grad som CVRP. Dette
er grundet stigende interesse i praksis hvor kanter frem for knuder har behov for servicering. For videnskabelig
litteratur omhandlende løsningsmetoder til CARP og dens generaliseringer henvises til Assad et al. [3], Dror et
al. [28] og Wøhlk [82].
I CARP forsøges det at identicere ruter med minimale omkostninger under forudsætning af at et givet sæt
af kanter er serviceret. Knuderne er typisk anvendt til at repræsentere den geograske placering af vejkryds.
2.2. RUTEPLANLÆGNING 9
Kanterne er typisk anvendt til at repræsentere veje, hvor kunder samt deres tilhørende efterspørgsel er aggregeret
på vejen. Til hver vej er der ofte tilknyttet en traverseringsafstand med en tilsvarende traverseringsomkostning.
Ydermere har hver vej med efterspørgsel også en tilknyttet serviceringsomkostning.
Mere formelt kan CARP formuleres som det følgende grafteoretiske problem. Lad G = (N, E) denere en
komplet ikke-orienteret graf når omkostningsmatricen c er symmetrisk og lad G = (N, A) denere en komplet
orienteret graf når omkostningsmatricen c er asymmetrisk. Lad N = {0, . . . , n} betegne sættet af knuder hvor
knude i = 0 denerer depotet, lad E = {(i, j) : i, j ∈ N, i  j} betegne sættet af ikke-orienterede kanter og
A = {(i, j) : i, j ∈ N, i = j} betegne sættet af orienterede kanter. Lad E ⊆ E betegne sættet af servicekrævende
ikke-orienterede kanter og A ⊆ A betegne sættet af servicekrævende orienterede kanter. Lad cij betegne en
ikke-negativ traverseringsomkostning ved at traversere kant (i, j) ∈ E ∨ A. Brugen af lukkede kredsløb (i, i) er
ikke tilladt, og deneres derfor cii = +∞ for i ∈ N. Lad qij for (i, j) ∈ E ∨ A betegne efterspørgselsmængden
og pij for (i, j) ∈ E ∨ A betegne serviceringsomkostningen. Lad K = {1, . . . , m} betegne sættet af homogene
vogne til rådighed i depotet med en kapacitet Q. For at sikre gennemførlighed antages det at qij ≤ Q for
(i, j) ∈ E ∨ A . Formålet med CARP er at identicere et antal ruter hvor vognen starter og slutter i depotet
sådan at hver kant (i, j) ∈ E ∨ A er serviceret af nøjagtig en vogn hvor den aggregerede leveringsmængde på
ruten ikke overstiger Q og de totale omkostninger er minimeret [8].
Adskillige generaliseringer af CARP er blevet præsenteret i litteraturen, de mest væsentlige introduceres
kort. I et Mixed CARP deneres grafen som en komplet multigraf, hvilket er en graf som både indeholder ikke-
orienterede og orienterede kanter. I et CARP with Time Windows (CARPTW) har hver kant med service et
tilknyttet tidsinterval hvori vognen skal serviceres. I et Multi Depot CARP (MDCARP) er hver vogn tilknyttet
et af ere depoter hvorfra den skal starte og slutte en rute. I et CARP with Mobile Depots (CARPMD) har
sættet med vogne to 2 typer, en som læsser af ved depotet og en vogn som læsser af på den første type vogn. I et
CARP with Vehicle Dependencies (CARPVD) har sættet med vogne mange typer, hvor hver kant er tilknyttet
en eller ere vogntyper. I et Periodic CARP (PCARP) skal kanterne serviceres af vogne en eller ere gange i
løbet af en planlægningshorisont af adskillige perioder med ruter i hver periode. I et Stochastic CARP (SCARP)
er leveringerne på kanterne stokastiske, dvs. efterspørgslen ikke er kendt på forhånd [82].
Ligesom indenfor CVRP kan løsningsmetoderne til CARP og dens generaliseringer kategoriseres indenfor 3
klasser; eksakte, heuristikker og metaheuristikker. Da størrelsesordnen af CARP i praksis ofte også er meget
store, er de mest anvendte løsningsmetoder også her heuristikker og metaheuristikker.
2.2.3 The General Routing Problem
GRP blev deneret af Orlo [61] i 1974 som generalisering af TSP og the Chinese Postman Problem (CPP).
GRP er en del af klassen GRP som kombinere klasserne ARP og NRP. GRP anvendes i praksis til at modellere
f.eks. indsamling af aald hvor husholdninger repræsenteres på kanterne mens virksomheder og etageboliger
repræsenteres i knuder. For videnskabelig litteratur omhandlende metoder til løsning af GRP og generaliseringer
af GRP henvises til Pandi et al. [63], Corberán et al. [19] og Gutiérrez et al. [39].
GRP forsøger at identicere ruter med minimale omkostninger under forudsætning af at et givet sæt af kanter
og knuder er serviceret. Knuderne anvendes typisk til at repræsentere den geograske placering af vejkryds og
kunder. Hver kunde er tilknyttet en given efterspørgsel med en tilsvarende serviceringsomkostning. Kanterne
er ofte anvendt til at repræsentere veje mellem individuelle kunder eller vejkryds, hvor kunder samt deres
tilhørende efterspørgsel kan være aggregeret på vejen. Ydermere har hver vej med efterspørgsel også en tilknyttet
serviceringsomkostning.
Mere formelt kan GRP formuleres som det følgende grafteoretiske problem. Lad G = (N, E) denere en
komplet ikke-orienteret graf når omkostningsmatricen c er symmetrisk og lad G = (N, A) denere en komplet
orienteret graf når omkostningsmatricen c er asymmetrisk. Lad N = {0, . . . , n} betegne sættet af knuder hvor
knude i = 0 denerer depotet, E = {(i, j) : i, j ∈ N, i  j} betegne sættet af ikke-orienterede kanter og
10 KAPITEL 2. LITTERATURGENNEMGANG
A = {(i, j) : i, j ∈ N, i = j} betegne sættet af orienterede kanter. Lad N ⊆ N betegne sættet af servicekræ-
vende knuder, E ⊆ E betegne sættet af servicekrævende ikke-orienterede kanter og A ⊆ A betegne sættet af
servicekrævende orienterede kanter. Lad cij betegne en ikke-negativ traverseringsomkostning ved at traversere
kant (i, j) ∈ E ∨ A. Brugen af lukkede kredsløb (i, i) er ikke tilladt, og deneres derfor cii = +∞ for i ∈ N.
Formålet med GRP er at identicere den rute hvor vognen starter og slutter i depotet sådan at hver kant
(i, j) ∈ E ∪ A og hver knude i ∈ N er serviceret og de totale omkostninger er minimeret [60].
GRP har indenfor Operational Research ikke været genstand for lige så stor opmærksomhed som CVRP
og CARP, og derfor introduceres kun de to væsentligste generaliseringer the Mixed General Routing Problem
(MGRP) og the Capacitated GRP (CGRP). I et MGRP deneres grafen som en komplet multigraf, hvilket er
en graf som både indeholder ikke-orienterede og orienterede kanter [19]. I et CGRP er et sæt af vogne med en
given kapacitet til rådighed i depotet [63].
2.2.4 The Mixed Capacitated General Routing Problem
Der har en tendens i den videnskabelige litteratur til at klassicere ruteplanlægningsproblemer som værende
enten et tilfælde af NRP eller et tilfælde af ARP. Der er imidlertid betydningsfulde virkelige ruteplanlægnings-
problemer hvis karaktertræk ikke kan modelleres i hverken CVRP eller CARP, da de indeholder efterspørgsel
både i knuder og på kanter. I nogle tilfælde af aaldsindsamling i urbane områder er det for det meste til-
strækkeligt at efterspørgslen modelleres på kanterne, men for nogle lokationer med en stor efterspørgsel som
f.eks. private virksomheder eller oentlige institutioner, er det mere fordelagtigt at modellere efterspørgslen i
knuderne.
Til at løse denne udfordring har forskere for nyligt haft et større fokus på et bestemt ruteplanlægningspro-
blem indenfor klassen GRP. Ruteplanlægningsproblemet MCGRP, også betegnet Node, Edge and Arc Routing
Problem (NEARP), giver mulighed for at modellere nogle virkelige ruteplanlægningsproblemer som ikke før har
været mulige. I MCGRP er efterspørgslen lokaliseret i en delmængde af knuder og kanter i en given vægtet
multigraf, og en vognpark af identiske kapacitetsbegrænsede vogne i et centralt depot er brugt til at tilfredsstille
efterspørgslen til de minimale omkostninger mens kapacitetsbegrænsningerne overholdes.
Ruteplanlægningsproblemer anses generelt for at skulle løses med et praktisk formål, og derfor fokuserer
forskere på at udvikle nye generaliseringer og større benchmark tilfælde. De generaliseringer som kommer tæt
på at modellere alle væsentlige aspekter af virkelige ruteplanlægningsproblemer betegnes i litteraturen som
såkaldte Rich Vehicle Routing Problems (Rich VRP). Introduktion af MCGRP, som er en generalisering af
CVRP og CARP, og en kapacitetsudvidelse af MGRP, var et signikant skridt fremad indenfor Rich VRP [4].
MCGRP blev deneret af Prins et al. [67] i 2004, men på trods af dens vigtige betydning i forhold til prakti-
ske ruteplanlægningsproblemer, er videnskabelig litteratur indenfor dette ruteplanlægningsproblem begrænset.
Uformelt har MCGRP været adresseret tidligere i den videnskabelige litteratur, dog som generaliseringer af
GRP. Dette ses for eksempel hos Pandi et al. [64] der i 1995 præsenterede en generalisering af MCGRP med
en heterogen, fast vognpark og en tidsbegrænsning på den enkelte rute, som betegnes CGRP. De præsenterede
en Route-First Cluster-Second heuristik og testede algoritmen på et benchmark tilfælde indenfor the Capaci-
tated CPP (CCPP) litteraturen. Derudover præsenterede Gutiérrez et al. [39] i 2002 CGRP med en homogen
fast vognpark, som betegnes the Capacitated GRP on Mixed Graphs (CGRP-m). Ruteplanlægningsproblemet
dierentierer sig fra MCGRP ved at håndtere en begrænset vognpark. Gutiérrez et al. [39] præsenterer en
Cluster-First Route-Second heuristik og sammenligner den med heuristikken af Pandi et al. [64], hvor først-
nævnte opnår bedre beregningsmæssige resultater på benchmarktilfældet når der anvendes en homogen fast
vognpark.
Da Prins et al. [67] i 2004 denerede MCGRP, præsenterede de en memetisk løsningsmetode som blev
testet på benchmarktilfælde fra CVRP og CARP litteraturen, og på et sæt MCGRP benchmarktilfælde be-
tegnet CBMix [67]. Kokubugata et al. [51] undersøgte i 2007 CVRP og MCGRP og præsenterede en Simulated
2.2. RUTEPLANLÆGNING 11
Annealing (SA) løsningsmetode. Algoritmen blev testet på CBMix [67] og leverede adskillige nye bedst kendte
løsningsforslag. Hasle et al. [40] diskuterer i 2012 Upper Bound procedure som opnår interessante beregnings-
mæssige resultater med deres kommercielle VRP løser Spider [40]. Bach et al. [5] præsenterede i 2013 den første
Lower Bound procedure til MCGRP, som blev udviklet ved at tilpasse en procedure oprindeligt præsenteret
til CARP af Wøhlk [81] i 2006. Lower Bound proceduren blev testet på CBMix [67] benchmarket og på to
nye MCGRP benchmarktilfælde; BHW [5], DI-NEARP [5], disse kan alle ndes i bilag 1 - Benchmarks. Bosco et
al. [12] præsenterede i 2013 den første heltalsprogrammeringsformulering af MCGRP, ved anvendelse af 3-index
variable til knuder og 2-index variable til kanter. De udvidede nogle gyldige uligheder til MCGRP, som oprin-
deligt blev introduceret til CARP, og inkorporerede dem i en Branch-and-Cut løsningsmetode. løsningsmetode
blev testet på 12 tilfælde som de havde generaliseret fra CARP benchmarks. De løste kun små tilfælde som
involverede op til syv vogne, og testede løsningsmetoden på de re mindste CBMix [67] tilfælde, hvor de leve-
rede to optimale løsningsforslag. For nyligt præsenterede Beraldi et al. [9] en generalisering af MCGRP med
stokastisk efterspørgsel, som betegnes MCGRP with Probabilistic Constraints (MCGRPPC). De præsenterer en
formulering der sikrer at kapacitetsbegrænsningen overholdes for en given sandsynlighed. Derefter introducere
de en tilsvarende deterministisk formulering under forudsætning af at efterspørgslen følger en normalfordeling.
De præsenterer en Branch-and-Cut løsningsmetode og en Neighborhood Search løsningsmetode til MCGRPPC.
Formelt kan MCGRP formuleres som det følgende grafteoretiske problem. MCGRP er deneret på en vægtet
multigraf G = (N, E, A), hvor N = {0, . . . , n} betegner sættet af knuder, E = {(i, j) : i, j ⊆ N, i  j} betegner
sættet af ikke-orienterede kanter og A = {(i, j) : i, j ⊆ N, i = j} betegner sættet af orienterede kanter. Lad
L = E ∪ A betegne sættet af kanter, hvor cij betegner en ikke-negativ traverseringsomkostning tilknyttet hver
kant (i, j) ∈ L. Traverseringsomkostningen er lig 0 for hver knude i ∈ N, og brugen af lukkede kredsløb (i, i) er
ikke tilladt, og deneres derfor cii = +∞ for i ∈ N. De tre delmængder NR ⊆ N, ER ⊆ E og AR ⊆ A betegner
anmodninger fra henholdsvis knuder, ikke-orienterede kanter og orienterede kanter som har efterspørgsel. Lad
LR = ER ∪ AR betegne delmængden af kanter med anmodninger og R = |NR| + |LR| betegne det totale antal
anmodninger. Hver kant (i, j) ∈ L kan traverseres hvilket som helst antal gange og hver kant (i, j) ∈ LR skal
serviceres én gang. Hver anmodning har tilknyttet en ikke-negativ efterspørgsel, qi ∈ NR og qij ∈ LR. Lad
knude 0 ∈ N betegne depotet og K = {1, . . . , m} betegne en ubegrænset vognpark af homogene vogne med
kapaciteten Q, som anvendes til at servicere anmodningerne. Vognparken er lokaliseret i depotknuden. For at
sikre gennemførlighed antages det at qij ≤ Q for (i, j) ∈ LR og qi ≤ Q for i ∈ NR. Hver vogn udfører højest
en rute, det vil sige, den starter i depotet, servicerer et antal anmodninger og slutter i depotet. En rute er
gennemførlig når den aggregerede efterspørgsel på ruten ikke overstiger kapaciteten.
Givet en delmængde S ⊂ N knuder, lad så ¯S betegne dets komplementære sæt ¯S ⊂ N S. For de orienterede
kanter lad δ+
A(S) = {(i, j) ∈ A : i ∈ S ∧ j ∈ ¯S} betegne sættet som afgår fra S, lad δ−
A (S) = {(i, j) ∈ A : i ∈
¯S ∧ j ∈ S} betegne sættet som tilgår til S, lad δ+
AR
(S) = {(i, j) ∈ AR : i ∈ S ∧ j ∈ ¯S} betegne sættet med
anmodninger som afgår fra S, lad δ−
AR
(S) = {(i, j) ∈ AR : i ∈ ¯S ∧ j ∈ S} betegne sættet med anmodninger som
tilgår til S. For de ikke-orienterede kanter lad δE(S) = {(i, j) ∈ E : i ∈ S ∧ j ∈ ¯S, or i ∈ ¯S ∧ j ∈ S} betegne
sættet som er indfaldende i S, lad δER
(S) = {(i, j) ∈ ER : i ∈ S ∧ j ∈ ¯S, or i ∈ ¯S ∧ j ∈ S} betegne sættet med
anmodninger som er indfaldende i S. For kanter generelt lad δL(S) = δ+
A(S) ∪ δ−
A (S) ∪ δE(S) betegne sættet
af kanter som er indfaldende i S og lad δLR
(S) = δ+
AR
(S) ∪ δ−
AR
(S) ∪ δER
(S) betegne sættet af kanter med
anmodninger som er indfaldende i S.
Når S = {v} forbliver den foregående notation gyldig så længe S er erstattet af v, og ¯S af ¯v, eller N  {v}.
Ydermere, lad SR = S ∩ NR betegne sættet af knuder med anmodninger tilhørende i S, lad AR(S) = {(i, j) ∈
AR : i ∈ S ∧ j ∈ S} betegne sættet af orienterede kanter med anmodninger tilhørende i S, lad ER(S) =
{(i, j) ∈ ER : i ∈ S ∧ j ∈ S} betegne sættet af ikke-orienterede kanter med anmodninger tilhørende i S og lad
R(S) = AR(S) ∪ ER(S) ∪ SR betegne sættet af elementer med anmodning i S.
Ved anvendelse af heltalsprogrammering kan problemet matematisk opstilles som følger. Lad xk
i og xk
ij
betegne binære variable, som er lig med 1 hvis henholdsvis knude i ∈ NR og kant (i, j) ∈ LR er serviceret af
12 KAPITEL 2. LITTERATURGENNEMGANG
vogn k. Lad yk
ij betegne en ikke-negativ variabel, som er lig med antallet af traverseringer uden service på kant
(i, j) ∈ L af vogn k.
min
(i,j)∈E k∈K
cij(yk
ij + yk
ji) +
(i,j)∈A k∈K
cijyk
ij (2.1)
k∈K
xk
i = 1 ∀ i ∈ NR (2.2)
k∈K
xk
ij = 1 ∀ (i, j) ∈ AR (2.3)
k∈K
(xk
ij + xk
ji) = 1 ∀ (i, j) ∈ ER (2.4)
i∈NR
dixk
i +
(i,j)∈AR
dijxk
ij +
(i,j)∈ER
dij(xk
ij + xk
ji) ≤ Q ∀ k ∈ K (2.5)
j:(i,j)∈δ+
AR
(i)
xk
ij +
j:(i,j)∈δ+
A(i)
yk
ij −
j:(j,i)∈δ−
AR
(i)
xk
ji −
j:(j,i)∈δ−
A (i)
yk
ji =
j:(i,j)∈δER
(i)
xk
ji +
j:(i,j)∈δ(i)
yk
ji −
j:(i,j)∈δER
(i)
xk
ij −
j:(i,j)∈δ(i)
yk
ij ∀ i ∈ N, k ∈ K (2.6)
(i,j)∈δ+
AR
(S)
xk
ij +
(j,i)∈δ−
AR
(S)
xk
ji +
(i,j)∈δER
(S)
(xk
ij + xk
ji)+
(i,j)∈δ+
A(S)
yk
ij +
(j,i)∈δ−
A (S)
yk
ji +
(i,j)∈δE (S)
(yk
ij + yk
ji) ≥



2(xk
uv + xk
vu),
2xk
uv,
2zk
h,
∀ (u, v) ∈ ER(S)
∀ (u, v) ∈ AR(S)
∀ h ∈ SR
(2.7)
xk
ij ∈ {0, 1} ∀ (i, j) ∈ LR, k ∈ K (2.8)
xk
ji ∈ {0, 1} ∀ (i, j) ∈ ER, k ∈ K (2.9)
xk
i ∈ {0, 1} ∀ i ∈ NR, k ∈ K (2.10)
yk
ij ∈ {0, 1} ∀ (i, j) ∈ LR, k ∈ K (2.11)
yk
ji ∈ {0, 1} ∀ (i, j) ∈ ER, k ∈ K (2.12)
Hej
Det skal noteres at de totale traverseringsomkostninger for kanter der serviceres (i, j) ∈ LR er konstant over
alle gennemførlige løsninger og derfor er disse ikke inkluderet i objektfunktionen, således er det tilstrækkeligt
at minimere de totale traverseringsomkostninger uden service.
Objektfunktionen (2.1) minimerer de totale traverseringsomkostninger uden service. Betingelserne (2.2 - 2.4)
sikrer at hver anmodning er serviceret nøjagtig en gang af en vogn, og betegnes som Assignment Constraint.
Betingelse (2.5), og betegnes som Knapsack Constraint og sikrer en efterspørgselsbegrænsning pålagt af ka-
paciteten på hver vogn. Betingelse (2.6) sikrer et symmetriforhold i hver knude, hvilket betegnes som Flow
Constraint. En Connectivity Constraint (2.7) sikrer hver delmængde af knuder som indeholder en anmodning
serviceret af en vogn, mindst skal have to kanter indfaldende i delmængden til at besøge den. Denne betingelse
eliminerer også delture som ikke er forbundet med depotet. Betingelserne (2.8 - 2.12) sikrer denitionsmængden
for beslutningsvariablene.
2.3 Beregningskompleksitet
Problemer kan opdeles i to typer, medgørlige og umedgørlige. Et problem siges at være medgørligt når det
kan løses af en eektiv algoritme, og umedgørlig når det ikke kan. En eektiv algoritme er deterministisk
2.3. BEREGNINGSKOMPLEKSITET 13
og beregningstiden er opad begrænset af et polynomium, og en ineektiv algoritme er ikke-deterministisk og
beregningstiden vokser eksponentielt med størrelsen af inputtet. Problemer som kan løses eektivt siges at tilhøre
kompleksitetsklassen P og problemer som ikke kan, siges at tilhøre kompleksitetsklassen NP. P problemer kan
løses med en deterministisk algoritme i polynomiel tid, og NP problemer kan løses ved en ikke-deterministisk
algoritme i polynomiel tid. Et problem X i kompleksitetsklassen NP siges at være NP-komplet hvis ethvert
andet problem Y i kompleksitetsklassen NP kan reduceres til problem X med en eektiv algoritme. Det der gør
NP-komplette problemer betydningsfulde er at hvis en eektiv algoritme kan ndes som løsningsmetode til et
af dem, vil ethvert NP problem være løseligt deterministisk indenfor polynomiel tid. Et problem siges at være
NP-hårdt når det er mere vanskeligt end NP-komplette problemer, dog tilhører et NP-hårdt problem ikke
altid kompleksitetsklassen NP da problemet ikke nødvendigvis er et beslutningsproblem [33]. Sammenhængen
mellem kompleksitetsklasserne når P = NP og P = NP er illustreret i gur 2.3.
Figur 2.3: Grask repræsentation af kompleksitetsklasser og deres
sammenhæng [33].
Ruteplanlægningsproblemerne CVRP,
CARP og GRP er alle NP-hårde proble-
mer, og da MCGRP er en generalisering
af disse kan det udledes at MCGRP også
er et NP-hårdt problem [84]. Der ndes
to typer løsningsmetoder til ruteplanlæg-
ningsproblemer, eksakte og approksimati-
ve. Eksakte løsningsmetoder kan i mod-
sætning til approksimative garanteret det
globale optimum, dog er det kendt at de
er begrænset til NP-hårde problemer af
en moderat størrelse. Approksimative løs-
ningsmetoder, som kan inddeles i klasserne
klassiske heuristikker og metaheuristikker,
er derfor ofte de foretrukne løsningsmetoder til NP-hårde problemer af en praktisk størrelse [43]. Det vurderes
at størrelsen på det praktiske ruteplanlægningsproblem i den alternative ordning ikke er af moderat størrelse,
derfor falder eksakte løsningsmetoder udenfor afgrænsningen af denne afhandling [11].
Klassiske heuristikker omfatter primært konstruktions- og forbedringsheuristikker, og blev overvejende ud-
viklet mellem 1960 og 1990. Siden da er interessen for metaheuristikker vokset, og de er ofte den foretrukne
løsningsmetode til NP-hårde problemer af en praktisk størrelse. Klassiske heuristikker foretager en relativ be-
grænset undersøgelse af løsningsrummet, og producerer kvalitetsmæssigt gode løsninger indenfor en beskeden
beregningstid. I metaheuristikker er der lagt vægt på at foretage en dyb undersøgelse af de mest lovende regio-
ner af løsningsrummet, hvilket ofte involverer nabosøgningsregler, hukommelsesstrukturer og rekombination af
løsninger. Kvaliteten af løsningerne fra metaheuristikker er meget bedre end løsningerne produceret af klassiske
heuristikker, dog er omkostningen for forbedringen en stigning i beregningstiden [78].
Valget af fremgangsmåde bygger på en vurdering af hvilken type løsningsmetode der vil komme tættest på
det globale optimum indenfor rimelig tid. Det vurderes at ruteplanlægningsproblemet i den alternative ordning
kan løses mest optimalt ved anvendelse af approksimative algoritmer. Ydermere vurderes det at metaheuristikker
vil kunne opnå en bedre løsningskvalitet indenfor rimelig tid i forhold til den aktuelle problemstilling. Derfor
vælges klassen af metaheuristikker som udgangspunkt til løsning af den teoretiske ækvivalent til det praktiske
ruteplanlægningsproblem for den alternative ordning, og derfor falder klassen af klassiske heuristikker udenfor
denne afhandling.
14 KAPITEL 2. LITTERATURGENNEMGANG
2.4 Løsningsmetoder
Mange optimeringsproblemer omhandler kongurationen af et sæt af variable med det formål at opfylde nogle
mål. Optimeringsproblemer hvor løsningen er repræsenteret af diskrete variable klassiceres som kombinatoriske
optimeringsproblemer, og er karakteriseret ved at der søges efter et objekt blandt et endeligt, men ofte meget
stort antal muligheder. Et kombinatorisk optimeringsproblem P = (S, f) kan deneres som følgende:
• Et sæt variable X = {x1, . . . , xn},
• Et sæt beslutningsvariable D1, . . . , Dn,
• Betingelser mellem variablene,
• En objektfunktion f som skal minimeres,
Lad S = {s = {(x1, v1), . . . , (xn, vn)}|vi ∈ Di, s overholder alle betingelser} betegne løsningsrummet, hvor
alle gennemførlige løsninger er indeholdt. Et kombinatorisk optimeringsproblem løses ved at nde det globale
optimum s∗
∈ S hvor objektfunktionen har den optimale, i dette tilfælde minimale, værdi, f(s∗
) ≤ f(s), ∀s ∈
S  [11].
Både CVRP, CARP, GRP og MCGRP er eksempler på kombinatoriske optimeringsproblemer, og der er
grundet deres praktiske betydning udviklet mange algoritmer til at håndtere dem. Som nævnt i sektion 2.3,
omhandler dette afsnit algoritmer i klassen af metaheuristikker, grundet det praktiske ruteplanlægningsproblem
for den alternative ordning.
Metaheuristikker er fundamentalt set en kombination af basale heuristiske metoder i en højere struktur
som bestræber sig på eektivt at undersøge løsningsrummet, hvilket ofte involverer en form for lokalsøgning.
Lokalsøgning begynder fra en initialløsning som iterativt ændres og erstatter den nuværende løsning med en
bedre naboløsning fra en deneret nabolagsstruktur til den nuværende løsning. Nabolagsstrukturen er formelt
deneret som en funktion N : S → 2S
som tilknytter et sæt naboer N(s) ⊆ S til hver s ∈ S, hvor N(s) er
betegnet som nabolaget til s. Denitionen af nabolagsstrukturen tillader at kunne denere lokale optimums som
værende en nuværende løsning ˆs der ikke har en tilknyttet naboløsning af bedre kvalitet, ∀s ∈ N(ˆs) : f(ˆs) ≤ f(s).
Ved anvendelse af pseudokode ses lokalsøgnings strategien i algoritme 1.
s ← Initialløsning
while Lokal Optimum = Falsk do
s ← Forbedre(N(s))
end
Algorithm 1: Pseudokode for lokalsøgning
En lokalsøgning denerer en mange-til-en kortlæg-
ning fra S til det mindre sæt S∗
= {s∗
} som betegner
løsninger i lokale optimums. Sættet af løsninger s der
er kortlagt til et lokalt optimum gennem lokalsøgnin-
gen betegnes som Basin of Attraction til det lokale
optimum [27]. Det lokale optimum vil altid være på
bunden af det tilknyttede Basin of Attraction.
Betegnelsen metaheuristik blev introduceret af
Glover [36] i 1986, og er aedt af sammensætningen
af to græske ord. Heuristik er aedt fra udsagnsordet heuriskein som betyder at nde, mens tillægsordet meta
betyder hensides, på et højere niveau. Selvom denne betegnelse er meget passende, refereres metaheuristikker
også til i litteraturen som Modern Heuristics.
Metaheuristikker er karakteriseret ved, at de har højniveau strategier for hvordan en søgeproces til at ge-
nerere næroptimale eller optimale løsninger i løsningsrummet udføres eektivt. Strategierne har inkorporeret
mekanismer som undgår at algoritmen bliver fanget i et lokalt optimum i løsningsrummet. Der ndes adskillige
måder at dierentiere og derved klassicere metaheuristikker på. I denne afhandling klassiceres metaheuristik-
ker som enten banebaserede eller populationsbaserede, og dierentieres ved antallet af midlertidige løsninger
der anvendes i hvert trin af algoritmen. De Banebaserede metaheuristikker behandler én midlertidig løsning ad
2.4. LØSNINGSMETODER 15
gangen, og derfor er denne hurtig til at nde et lokalt optimum. Klassen refereres også til som udnyttelsesoriente-
rede metaheuristikker da de intensiverer søgningen i løsningsrummet. De populationsbaserede metaheuristikker
behandler ere midlertidige løsninger ad gangen, og derfor tager de længere tid om at nde et lokalt opti-
mum. Klassen refereres også til som udforskningsorienterede metaheuristikker da de diversicerer søgningen i
løsningsrummet.
2.4.1 Banebaserede Metaheuristikker
Denne sektion beskriver de banebaserede metaheuristikker der er vurderet som de mest betydningsfulde in-
denfor klassen. Klassen af metaheuristikker betegnes som banebaserede da søgeprocessen danner en bane i
løsningsrummet.
2.4.1.1 Simulated Annealing
SA blev deneret af Kirkpatrick et al. [50] i 1983. I 1993 foreslog Osman [62] en SA algoritme til løsning af
CVRP hvor nabolagsstrukturen anvender op til λ udvekslinger af noder mellem to ruter [1]. Wøhlk [80] forslog
i 2005 en SA algoritme til løsning af CARP hvor rækkefølgen af kanterne på en Giant Tour ændres i løbet af
algoritmen, og den optimale opdeling af ruten beregnes i hvert trin af algoritmen [82].
Algoritmen begynder ved at generere en initialløsning og initialisere temperaturparameteren T. Initialløs-
ningen genereres enten tilfældigt eller ved anvendelse af en konstruktionsheuristik. Herefter itererer algoritmen
indtil en afslutningsbetingelse er sand, dette kan være den maksimale CPU tid, et maksimalt antal iterationer,
en nuværende løsning s med f(s) som er mindre end en predeneret grænseværdi eller et maksimalt antal ite-
rationer uden en forbedring. Hver iteration består af en tilfældig udvælgelse af en naboløsning s i nabolaget til
den nuværende løsning N(s). Den valgte naboløsning s erstatter den nuværende løsning s når f(s )  f(s) eller
med en sandsynlighed som følger en Boltzmann fordeling exp(−f(s −f(s))
T ) når f(s ) ≥ f(s). Når en naboløs-
ning af ringere kvalitet erstatter den nuværende løsning betegnes det som Hill Climbing hvilket anvendes til at
undslippe det lokale optimums Basin of Attraction. Temperaturen T reduceres gennem søgeprocessen, således
vil algoritmen i begyndelsesfasen være diversicerende og i afslutningsfasen være intensiverende. Ved anvendelse
af pseudokodning ses SA strategien i algoritme 2.
s ← Initialløsning
T ← T0
while Afslut = Falsk do
s ← Tilfældig N(s)
if f(s )  f(s) then
s ← s
else if P(T, f(s ), f(s))  rand[0,1] then
s ← s
end
Opdater T
end
Algorithm 2: Pseudokode for SA
Valget af en passende kølingsrate er afgørende for
præstationen af algoritmen. Kølingsplanen er dene-
ret som værdien af T i hver iteration k, Tk+1 =
Q(Tk, k), hvor Q(Tk, k) er en funktion af tempera-
turen og antallet af iterationer. Kølingsplanen skal
tilpasses det kombinatoriske optimeringsproblem så-
ledes at der er en balance mellem diversicering og
intensivering i søgeprocessen.
2.4.1.2 Tabu Search
Tabu Search (TS) blev deneret af Glover et al. [36]
i 1986. I 1993 foreslog Taillard [75] den første simple
implementering af TS til CVRP, som stadig er en af
de mest eektive [1]. Hertz et al. [41] forslog i 2000 en
TS algoritme kaldet CARPET hvor ugennemførlige løsninger er tilladte, men straet i objektfunktionen. Selv i
dag er denne en af de bedst præsterende algoritmer til CARP [82].
Algoritmen anvender lokalsøgning og korttidshukommelse som grundelementer. Lokalsøgningen betegnes
Best Improvement og anvender korttidshukommelsen til at undslippe lokale optimums og undgå løsnings-
kredsløb. Korttidshukommelsen betegnes Tabu List og indeholder nyligt besøgte løsninger og forbyder træk
16 KAPITEL 2. LITTERATURGENNEMGANG
mod dem. Dermed er nabolaget til den nuværende løsning N(s) begrænset til naboløsninger s som ikke er
indeholdt i Tabu List.
s ← Initialløsning
Tabu List ← ∅
while Afslut = Falsk do
s ← BedstAf N(s) ∈ TabuList
Opdater(TabuList)
end
Algorithm 3: Pseudokode for TS
TS begynder ved at generere en initialløsning og
initialisere Tabu List. Herefter itererer algoritmen ind-
til en afslutningsbetingelse er sand eller hvis Tabu List
indeholder alle naboløsninger til den nuværende løs-
ning. I hver iteration erstattes den nuværende løsning
af den bedste naboløsning, ligeledes erstattes den tid-
ligst indkomne løsning i Tabu List også af den bedste
naboløsning. Da den nuværende løsning erstattes af
den bedste naboløsning, vil den i lokal optimum ac-
ceptere naboløsninger af ringere kvalitet. På den måde undslipper algoritmen det lokale optimums Basin of
Attraction ved anvendelse af Hill-Climbing. TS strategien ses i algoritme 3.
Længden af tabulisten kontrollerer hukommelsen i søgeprocessen. En større hukommelse diversicerer søg-
ningen ved at undersøge et stort område, mens en kortere hukommelse intensiverer søgningen ved at undersøge
et mindre område. Ved at lade længden af Tabu List være dynamisk, kan algoritmen blive mere robust, f.eks.
ved at øge længden af Tabu List når der er tegn på gentagelser af løsninger, og mindske længden af Tabu List
når der ikke er forbedringer.
2.4.1.3 Greedy Randomized Adaptive Search Procedure
Greedy Randomized Adaptive Search Procedure (GRASP) blev deneret af Feo et al. [56] i 1995. I 2003 foreslog
Baker et al. [7] en GRASP til løsning af CVRP med en grask brugergrænseade. Brugeren har i denne kontrol
over løsningsforslagene, og kan derved sikre at de er anvendelige i praksis [1]. Labadi et al. [54] foreslog i 2007
en GRASP with Path Relinking til løsning af CARP med tidsvinduer.
s ← ∅
α ← LængdeRCL
while LøsningKomplet = Falsk do
RCLα ← GenererRCL(s)
x ← TilfældigtElement(RCLα)
s ← s ∪ {x}
OpdaterGrådighedsfunktion(s)
end
Algorithm 4: Pseudokode for løsnings-
konstruktion i GRASP
GRASP anvender perturbation og lokalsøgning som grund-
elementer til henholdsvis at konstruere løsninger og forbedre løs-
ninger. Perturbation anvendes til at undslippe lokale optimums
ved at springe fra et Basin of Attraction til et andet. Algoritmen
fortsætter indtil en afslutningsbetingelse er sand, hvorefter den
bedste løsning returneres. I hver iteration gennemgås to faser;
løsningskonstruktion og løsningsforbedring. Løsningskonstruktio-
nen er karakteriseret ved en dynamisk konstruktionsheuristik og
tilfældighed. Under antagelse af at den nuværende løsning s be-
står af en delmængde af løsningselementer, bliver den nuværende
løsning s konstrueret ved at tilføje et nyt element ad gangen.
Elementet som skal tilføjes er valgt tilfældigt fra en kandidatliste, Restricted Candidate List (RCL), bestående
af de α bedste elementer. Elementerne i RCL er rangeret efter en score som er et udtryk for fordelen ved at
indsætte elementet i s. En dynamisk konstruktionsheuristik angiver at scoren for de resterende elementer opda-
teres løbende afhængigt af hvilke elementer der indsættes og på hvilket tidspunkt. Løsningskonstruktionen fra
GRASP strategien ses i algoritme 4.
while Afslut = Falsk do
s ← KonstruerLøsning()
AnvendLokalSøgning(s)
HuskBedstFundneLøsning()
end
Algorithm 5: Pseudokode for GRASP
Løsningsforbedringen er karakteriseret ved en lo-
kalsøgning, som f.eks. kan være en forbedringsheuri-
stik, eller løsningsmetoder som f.eks. SA fra sek-
tion 2.4.1.1 og TS fra sektion 2.4.1.2. GRASP stra-
tegien kan ses i algoritme 5.
2.4. LØSNINGSMETODER 17
2.4.1.4 Variable Neigborhood Search
Variable Neighborhood Search (VNS) blev deneret af Mladenovic et al. [58] i 1999. I 2003 foreslog Bräysy [13]
en reaktiv Variable Neighborhood Search til CVRPTW.
VNS anvender perturbation og lokalsøgning som grundelementer, og begynder med at udvælge et sæt af
nabolagsstrukturer Nk. Dernæst genereres en initialløsning og algoritmen itereres indtil en afslutningsbetingelsen
er sand. Hver iteration består af tre faser; shaking, lokalsøgning og move. Variable Neighborhood Search strategien
kan ses i algoritme 6.
VælgSættetAfNabolagsstrukturer Nk
s ← Initialløsning
while Afslut = Falsk do
k ← 1
while k  kmaks do
s ← VælgTilfælig(Nk(s))
s ← LokalSøgning(s )
if f(s )  f(s) then
s ← s
k ← 1
else
k ← k + 1
end
end
end
Algorithm 6: Pseudokode for Variable
Neighborhood Search
Ved shaking er naboløsning s tilfældigt valgt
i nabolaget k til den nuværende løsning Nk(s).
Lokalsøgningen begynder fra naboløsningen s og
kan anvende alle nabolagsstrukturer. Den er der-
for ikke begrænset til sættet Nk. Når afslut-
ningsbetingelsen for lokalsøgningen er opfyldt er-
statter løsningen fra lokalsøgningen s den nu-
værende løsning s hvis den er af bedre kvali-
tet. Såfremt dette ikke er tilfældet, øges k og
en ny rystefase begynder i et nyt naboområde.
Formålet med rystefasen er at give lokalsøgnin-
gen en god startløsning, og valget af nyt nabo-
lag i tilfælde af en ringe løsningskvalitet i lokal-
søgning er anvendt for at diversicere søgeprocedu-
ren.
2.4.1.5 Guided Local Search
Guided Local Search (GLS) blev deneret af Voudouris et al. [79] i 1996, og i 1997 foreslog Kilby et al. [66] en GLS
til løsning af CVRPTW, som i sin samtid leverede fremragende resultater. Buellens et al. [10] udvidede i 2003
GLS til CARP, hvor distancen af hver kant straes i forhold til en funktion som tilpasses gennem algoritmen.
GLS anvender en strafbaseret tilgang som ændrer på løsningsrummet, kombineret med en lokalsøgning. Ved
at ændre på objektfunktionen f, ændres landskabet i løsningsrummet, og lokalsøgningen kan på den måde
hjælpes væk fra lokale optimums uden at anvende Hill-Climbing eller Perturbation. I GLS anvendes elementer
der kan dierentiere mellem løsninger, og derefter anvendes funktionen (2.13) til at indikere om løsningselement
i er repræsenteret i den nuværende løsning s.
Ii(s) =



1 : Element i er repræsenteret s
0 : Element i er ikke repræsenteret s
(2.13)
Den oprindelige objektfunktion f er modiceret således at den modicerede objektfunktion (2.14) er afhængig
af m elementer, hvor pi betegner strafparametre og λ betegner en reguleringsparameter. Strafparametrene vægter
betydningen af elementer, således at elementet har høj betydning ved en høj pi og det giver dermed en højere
omkostning at have elementet i løsningen. Reguleringsparametren balancerer elementernes relevans i forhold til
objektfunktionen f. indikere om løsningselement i er repræsenteret i den nuværende løsning s.
f (s) = f(s) + λ
m
i=1
piIi(s) (2.14)
18 KAPITEL 2. LITTERATURGENNEMGANG
s ← Initialløsning
while Afslut = Falsk do
s ← Lokalsøgning(s, f )
for elementer med høj nytteværdi Util(s, i)
do
pi ← pi + 1
end
Opdater(f , p)
end
Algorithm 7: Pseudokode for GLS
Algoritmen starter ved at generere en initialløs-
ning og itererer så indtil en afslutningsbetingelse er
sand. Hver iteration anvender lokalsøgning indtil et
lokalt optimum er nået. Herefter opdateres vektoren
med strafparametre p = (p1, . . . , pm) ved at øge straf-
parameter pi hvis elementet har en høj nytteværdi i
den nuværende løsning. GLS strategien kan ses i al-
goritme 7.
Der er tilknyttet en omkostning ci til hvert element
i, som betegner betydningen i forhold til de andre
elementer i løsningen. En høj omkostning medfører en høj nytteværdi (2.15), og omkostningen er skaleret af
strafparametrene for at forhindre at omkostningen påvirker algoritmen for meget.
Util(s, i) = II(s)
ci
1 + pi
(2.15)
2.4.1.6 Iterated Local Search
Iterated Local Search er blevet beskrevet af mange forskellige forfattere, og derfor er det svært at denere hvem
der oprindeligt denerede Iterated Local Search (ILS). Algoritmen er en af de mest anvendte strategier, og
anvendes ofte som struktur for andre metaheuristikker eller implementeres som en komponent. Lokalsøgning og
perturbation er grundelementer i algoritmen.
s ← Initialløsning
s ← Lokalsøgning(s)
while Afslut = Falsk do
s ← Perturbation(s , Historik)
s ← Lokalsøgning(s )
s ←
AcceptKriterie(s , s , Historik)
end
Algorithm 8: Pseudokode for Iterated Lo-
cal Search
ILS genererer en initialløsning s og anvender lokalsøgning på
denne indtil en naboløsning s i et lokalt optimum er nået. I al-
goritmen indgår tre faser i hver iteration der fortsætter indtil
en afslutningsbetingelse er opfyldt. Den første fase er en pertur-
bation, den anden fase er en lokalsøgning og den tredje fase er
et accept kriterie der bestemmer om løsninger skal accepteres.
Accept kriteriet kan fungere ved at acceptere løsninger af bedre
kvalitet, ved altid at acceptere nye løsninger, eller en mellemting
som i SA fra sektion 2.4.1.1. På den måde kan accept kriteriet
fungere som en modvægt til perturbation da den giver feedback
omkring det nyligt opnåede lokale optimum. ILS strategien ses i algoritme 8.
2.4.1.7 Large Neighborhood Search
s ← Initialløsning
s∗
← s
while Afslut = Falsk do
s ← r(d(s))
s ← AcceptKriterie(s , s)
s∗
← AcceptKriterie(s, s∗
)
end
Algorithm 9: Pseudokode for Large Neig-
hborhood Search
Large Neighborhood Search (LNS) blev deneret af Shaw [74] i
1999. Algoritmen tilhører en klasse af metaheuristikker som søger
i store nabolag for at nde bedre optimums end dem der ville
være blevet fundet ved søgning i mindre nabolag.
Algoritmen begynder ved at generere en initialløsning s som
også tildeles som den bedste løsning hidtil. Herefter itererer al-
goritmen indtil en afslutningsbetingelse er sand. I hver iteration
anvendes en destroy funktion og en repair funktion til at opnå en
naboløsning s . Destroy funktionen returnerer en delvis ødelagt
løsning fra den nuværende løsning s, og repair funktionen reparerer den delvist ødelagte løsning til nabo-
løsningen s . Herefter erstatter naboløsningen den nuværende løsning hvis accept kriteriet er opfyldt, og den
nuværende løsning erstatter den bedste løsning hvis kvaliteten er bedre [66]. Strategien for LNS ses i algoritme 9.
2.4. LØSNINGSMETODER 19
2.4.2 Populationsbaserede Metaheuristikker
Denne sektion beskriver de populationsbaserede metaheuristikker, og de inkluderede algoritmer vurderes som
de mest betydningsfulde indenfor klassen. Klassen af metaheuristikker betegnes som populationsbaseret da
søgeprocessen er karakteriseret ved at behandle en population af løsninger i stedet for en enkel løsning i hver
iteration.
2.4.2.1 Evolutionary Computation
Evolutionary Computation (EC) er algoritmer som er inspireret af naturens evne til at udvikle dyr som er godt
tilpasset til deres omgivelser. Disse algoritmer kan karakteriseres som modeller af en evolutionær proces. Ved
hver iteration anvendes et antal operationer på individer i den nuværende population for at generere individer
til næste generations population. Til at frembringe nye individer kombineres to eller ere individer ofte ved
anvendelse af operationerne recombination eller crossover. Til at tilpasse det enkelte individ anvendes ofte
operationerne mutation og modication. Drivkraften i disse algoritmer er udvælgelsen af individer baseret på
deres egnethed i populationen, hvilket svarer til deres bidrag til objektfunktionen i den nuværende løsning.
Individer med en høj egnethed beholdes ofte som medlemmer af populationen i den næste generation.
Overordnet set ndes der tre kategorier af EC algoritmer, Evolutionary Programming, Evolutionary Stra-
tegies og Genetic Algorithms (GA). GA er de mest brugte til kombinatoriske optimeringsproblemer, men den
fundamentale struktur af de tre kategorier er ens.
P ← Initialpopulation
Evaluer(P)
while Afslut = Falsk do
P ← Rekombiner(P)
P ← Mutere(P )
Evaluer(P ) P ← Vælg(P ∪ P)
end
Algorithm 10: Pseudokode for Evolutionary Com-
putation
GA blev deneret af Holland [42] i 1975, og Ba-
ker et al. [6] foreslog i 2003 GA til CVRP. Fleury et
al. [32] foreslog i 2004 en Memetic Algorithm (MA) til
et stokastisk CARP, hvilket resulterede i robuste løs-
ninger uden signikant øgede omkostninger i forhold
til det tilsvarende deterministiske CARP. En MA er
en udvidelse af den traditionelle GA, men kategorise-
res under GA.
Algoritmen starter ved at generere en initialpopu-
lation P som evalueres. Operationerne recombination
og mutation generer et afkom. Herefter evalueres den
nuværende population og den næste generations population er valgt som en kombination af den nuværende
population og afkommet. EC strategien ses i algoritme 10.
2.4.2.2 Ant Colony Optimization
Inspirationskilden til Ant Colony Optimization (ACO) er fourageringsadfærden blandt myrer, som gør det muligt
at nde den korteste vej mellem fødekilden og deres myretue. Mens de vandrer mellem fødekilden og myretuen
udskiller myren et duftstof på vejen. Når de skal afgøre hvilken retning er bedst, vælger de den retning som er
markeret med den højeste koncentration af duftstof. Denne adfærd er fundamentet for et fælles samarbejde som
fører til den korteste vej.
ACO er baseret på en parametriseret probabilistisk model, the Pheromone Model, som bruges til at modellere
kemiske duftstofspor. Kunstige myrer konstruerer trinvist en løsning ved at tilføje løsningselementer til løsningen.
Dette gøres ved at de kunstige myrer følger en tilfældig vej på en komplet graf G = (N, E) hvor knuder er
betegnet som løsningselementerne N og kanterne er betegnet som løsningselementerne E. Hver komponent har
tilknyttet et duftstofspor, hvor sættet af duftstofspor er betegnet T. Yderligere er der tilknyttet en heuristisk
værdi H til hver komponent som repræsenterer en erfaring om problemet. H anvendes af de kunstige myrer
til at tage probabilistiske beslutninger om retningen. Sættet af kunstige myrer betegnes A, hvor hver løsning
konstrueret af en myre betegnes sa.
20 KAPITEL 2. LITTERATURGENNEMGANG
Initialiser(T)
while Afslut = Falsk do
for a ∈ A do
sa ← KonstruktionsLøsning(T, H)
end
Opdater(T, {sa|a ∈ A})
end
Algorithm 11: Pseudokode for Ant Colony Optimiza-
tion
I 1975 denerede Dorigo [26] ACO og Bullnheimer
et al. [14] udvidede i 1999 den til VRP. Lacomme et
al. [53] foreslog i 2004 ACO til CARP som resultat-
mæssigt var konkurrencedygtig, dog ikke beregnings-
mæssigt.
Algoritmen begynder ved at initialisere sættet
med duftstofsspor T med meget små værdier. I hver
gentagelse konstruerer hver kunstig myre en løsning,
anvendes til at opdatere T. Dette gentages indtil en
afslutningsbetingelse er opfyldt. I algoritme 11 ses ACO strategien.
Kapitel 3
Anvendt Teori
Dette kapitel redegør for den teori der er anvendt til at løse problemstillingen. Der er lagt vægt på en dyb
redegørelse af den anvendte teori, da formålet med dette kapitel er at vise en dyb forståelse for løsningsmodellen
og -metoden.
Sektion 3.1 redegør for den anvendte løsningsmodel The Periodic Distance-Constrained MCGRP with Pro-
babilistic Constraints (PDCMCGRPPC) der betegner den teoretiske ækvivalent til det praktiske ruteplan-
lægningsproblem for den alternative ordning. Selve udledningen af den anvendte løsningsmodel kræver ere
generaliseringer af MCGRP, som der redegøres for inden beskrivelsen af PDMCGRPPC. I sektion 3.2 redegø-
res der for aggregeringsmetoden, Topology Aggregation, som anvendes på datagrundlaget med det resultat at
løsningsmodellen skal modelleres indenfor klassen GRP. Sektion 3.3 redegør for den anvendte løsningsmetode,
den hybride metaheuristik Adaptive Iterated Local Search (AILS). Motivationen for anvendelse af netop denne
løsningsmetoden er baseret på at den har givet rigtig gode resultater på 5 benchmarktilfældene til MCGRP, 4
benchmarktilfældene til CVRP og 7 standard tilfælde til CARP [24].
3.1 Mixed Capacitated General Routing Problem
I denne sektion redegøres der for 4 løsningsmodeller som er generaliseringer af MCGRP. I sektion 3.1.1 - 3.1.3
præsenteres Distance-Constrained MCGRP (DCMCGRP), MCGRP with Probabilistic Constraints (MCGRP-
PC) og Periodic MCGRP (PMCGRP). I sektion 3.1.4 præsenteres den anvendte løsningsmodel The Periodic
Distance-Constrained MCGRP with Probabilistic Constraints (PDCMCGRPPC) som er en generalisering af de
tre forgående løsningsmodeller.
Da den videnskabelige litteratur ikke omfatter generaliseringerne DMCGRP, PMCGRP og PDCMCGRPPC
er det grafteoretiske problem og heltalsprogrammeringsformuleringen frembragt ved egen udvikling. I sektionerne
som omhandler disse generaliseringer refereres der ikke til videnskabelig litteratur, men der henvises til at
generaliseringernes ækvivalente indenfor CVRP [34, 55, 78], CARP [16, 28, 82] samt MCGRP [9, 24] er anvendt
som inspiration til denne udledning.
3.1.1 Distance-Constrained MCGRP
DMCGRP er en generalisering af MCGRP hvor hver rute har en afstandsbegrænsning som kan måles i enten
distance eller tid, det følger derfor at dette tilføjes til det grafteoretiske problem og heltalsprogrammeringsfor-
muleringen præsenteret i sektion 2.2.4. Lad tij betegne en ikke-negativ traverseringsafstand tilknyttet hver kant
(i, j) ∈ L, og T betegne den maksimale afstand på en rute. Lad si for i ∈ NR og sij for (i, j) ∈ LR betegne servi-
ceringstiden på henholdsvis knuder og kanter når traverseringsafstanden T måles i tid, og traverseringsafstanden
tij for (i, j) ∈ LR er aggregeret ind i servicetiden sij. Generelt er traverseringsomkostningen og traverseringsaf-
standen sammenfaldende, dvs. cij = tij for (i, j) ∈ L, hvorved objektet er at minimere traverseringsafstanden.
21
22 KAPITEL 3. ANVENDT TEORI
i∈NR
sixk
i +
(i,j)∈AR
sijxk
ij +
(i,j)∈ER
sij(xk
ij + xk
ji)+
i∈N
tiyk
i +
(i,j)∈A
tijyk
ij +
(i,j)∈E
tij(yk
ij + yk
ji) ≤ T ∀ k ∈ K (3.1)
Betingelse (3.1) sikrer en afstandsbegrænsning på hver vogn.
3.1.2 MCGRP with Probabilistic Constraints
MCGRPPC er en generalisering af MCGRP hvor efterspørgslen er stokastisk hvilket naturligt påvirker betingelse
(2.5) [9]. Følgende tilføjes til det grafteoretiske problem og heltalsprogrammeringensformuleringen; lad di(ω) og
dij(ω) betegne den stokastiske efterspørgsel som følger en normalfordeling for henholdsvis knude i ∈ NR og kant
(i, j) ∈ LR og lad α betegne signikansniveauet som skal overholdes for ikke at forkaste rutens gennemførlighed.
P(
i∈NR
di(ω)xk
i +
(i,j)∈AR
dij(ω)xk
ij +
(i,j)∈ER
dij(ω)(xk
ij + xk
ji) ≤ Q) ≥ α ∀ k ∈ K (3.2)
Betingelse (3.2) sikrer at sandsynligheden for ikke at overstige efterspørgselsbegrænsningen pålagt af kapa-
citeten på hver vogn er større end det valgte signikansniveau.
3.1.3 The Periodic MCGRP
PMCGRP er en generalisering af MCGRP hvor en tidshorisont bestående af perioder er inddraget sådan at
knuder og kanter kan anmode om service i en eller ere perioder. Følgende tilføjes til det grafteoretiske problem;
lad P = {1, . . . , p} betegne planlægningshorisonten. Lad Fi = {1, . . . , f} for i ∈ NR og Fij = {1, . . . , f} for
(i, j) ∈ LR betegne et sæt af servicekombinationer for henholdsvis knuder og kanter, hvor en servicekombina-
tionen implicit indeholder antallet af anmodninger i planlægningshorisonten P.
Matematisk kan problemet, ved brug af heltalsprogrammeringsformulering, opstilles som følger; lad xkfp
i og
xkfp
ij betegne binære variable, som er lig med 1 hvis henholdsvis knude i ∈ NR og kant (i, j) ∈ LR er serviceret
af vogn k i periode p over servicekombination f ∈ Fi og f ∈ Fij. Lad ykp
ij betegne en ikke-negativ variabel,
som er lig med antallet af traverseringer uden service på kant (i, j) ∈ L af vogn k i periode p. Lad zf
i og
zf
ij betegne binære variable, som er lig med 1 hvis henholdsvis knude i ∈ NR og kant (i, j) ∈ LR anvender
servicekombination f ∈ Fi og f ∈ Fij. Servicekombinationer er indekseret fra 1 til f og deneret ved matricen
A, hvor Afp
= 1 når servicekombination f anvendes i periode p.
min
(i,j)∈E k∈K p∈P
cij(ykp
ij + ykp
ji ) +
(i,j)∈A k∈K p∈P
cijykp
ij (3.3)
f∈Fi
zf
i = 1 ∀ i ∈ NR (3.4)
f∈Fij
zf
ij = 1 ∀ (i, j) ∈ LR (3.5)
k∈K
xkfp
i = Afp
zf
i ∀ i ∈ NR, f ∈ Fi, p ∈ P (3.6)
k∈K
xkfp
ij = Afp
zf
ij ∀ (i, j) ∈ AR, f ∈ Fi, p ∈ P (3.7)
k∈K
(xkfp
ij + xkfp
ji ) = Afp
zf
ij ∀ (i, j) ∈ ER, f ∈ Fi, p ∈ P (3.8)
3.1. MIXED CAPACITATED GENERAL ROUTING PROBLEM 23
i∈NRf∈Fi
dixkfp
i+
(i,j)∈ARf∈Fij
dijxkfp
ij+
(i,j)∈ERf∈Fij
dij(xkfp
ij+xkfp
ji)≤Q∀p∈P,k∈K(3.9)
j:(i,j)∈δ+
AR
(i)
xkfp
ij+
j:(i,j)∈δ+
A(i)
ykp
ij−
j:(j,i)∈δ−
AR
(i)
xkfp
ji−
j:(j,i)∈δ−
A(i)
ykp
ji=
j:(i,j)∈δER
(i)
xkfp
ji+
j:(i,j)∈δ(i)
ykp
ji−
j:(i,j)∈δER
(i)
xkfp
ij−
j:(i,j)∈δ(i)
ykp
ij∀i∈N,f∈Fi,p∈P,k∈K(3.10)
(i,j)∈δ+
AR
(S)
xkfp
ij+
(j,i)∈δ−
AR
(S)
xkfp
ji+
(i,j)∈δER
(S)
(xkfp
ij+xkfp
ji)+
(i,j)∈δ+
A(S)
ykfp
ij+
(j,i)∈δ−
A(S)
ykfp
ji+
(i,j)∈δE(S)
(ykfp
ij+ykfp
ji)≥



2(xkfp
uv+xkfp
vu),
2xkfp
uv,
2zkfp
h,
∀(u,v)∈ER(S),f∈Fi,p∈P,k∈K
∀(u,v)∈AR(S),f∈Fi,p∈P,k∈K
∀h∈SR,f∈Fi,p∈P,k∈K
(3.11)
xkfp
ij∈{0,1}∀(i,j)∈LR,f∈Fi,p∈P,k∈K(3.12)
xkfp
ji∈{0,1}∀(i,j)∈ER,f∈Fi,p∈P,k∈K(3.13)
xkfp
i∈{0,1}∀i∈NR,f∈Fi,p∈P,k∈K(3.14)
ykp
ij∈Z+∀(i,j)∈L,p∈P,k∈K(3.15)
ykp
ji∈Z+∀(i,j)∈E,p∈P,k∈K(3.16)
zf
ji∈{0,1}∀(i,j)∈LR,f∈Fi(3.17)
zf
i∈{0,1}∀i∈NR,f∈Fi(3.18)
24 KAPITEL 3. ANVENDT TEORI
Objektfunktionen (3.3) minimerer de totale traverseringsomkostninger uden service. Betingelserne (3.4 -
3.5) sikrer at hver anmodning er tilknyttet nøjagtig én servicekombination, hvor betingelserne (3.6 - 3.9), som
betegnes Assignment Constraints, sikrer at anmodningerne er serviceret i forhold til den tilknyttede servicekom-
bination. Betingelse (3.9) sikrer en efterspørgselsbegrænsning pålagt af kapaciteten på hver vogn, og betegnes
som Knapsack Constraint. Betingelse (3.10) sikrer et symmetriforhold i hver knude, og betegnet som Flow Con-
straint. En Connectivity Constraint (3.11) sikrer at hver delmængde af knuder som indeholder en anmodning
serviceret af en vogn, skal have mindst to kanter indfaldende i delmængden til at besøge den. Denne betingelse
eliminerer også delture som ikke er forbundet med depotet. Betingelserne (3.12 - 3.18) sikrer denitionsmængden
for beslutningsvariablene.
3.1.4 The Periodic Distance-Constrained MCGRP with Probabilistic Constraints
PDCMCGRPPC er en generalisering af DCMCGRP, MCGRPPC og PMCGRP som blev præsenteret i sek-
tion 3.1.1 - 3.1.3. Denne generalisering medtager det fundamentale fra MCGRP og tilføjer afstandsbegrænsning,
stokastisk efterspørgsel og periodisering, og anvendes som den teoretiske ækvivalent til det praktiske ruteplan-
lægningsproblem for den alternative ordning beskrevet i sektion 2.1.
Matematisk kan problemet, ved brug af heltalsprogrammeringsformulering, opstilles som følger; lad xkfp
i og
xkfp
ij betegne binære variable, som er lig med 1 hvis henholdsvis knude i ∈ NR og kant (i, j) ∈ LR er serviceret
af vogn k i periode p over servicekombination f ∈ Fi og f ∈ Fij. Lad ykp
ij betegne en ikke-negativ variabel,
som er lig med antallet af traverseringer uden service på kant (i, j) ∈ L af vogn k i periode p. Lad zf
i og
zf
ij betegne binære variable, som er lig med 1 hvis henholdsvis knude i ∈ NR og kant (i, j) ∈ LR anvender
servicekombination f ∈ Fi og f ∈ Fij. Servicekombinationer er indekseret fra 1 til f og deneret ved matricen
A, hvor Afp
= 1 når servicekombination f anvendes i periode p.
min
(i,j)∈E k∈K p∈P
cij(ykp
ij + ykp
ji ) +
(i,j)∈A k∈K p∈P
cijykp
ij (3.19)
f∈Fi
zf
i = 1 ∀ i ∈ NR (3.20)
f∈Fij
zf
ij = 1 ∀ (i, j) ∈ LR (3.21)
k∈K
xkfp
i = Afp
zf
i ∀ i ∈ NR, f ∈ Fi, p ∈ P (3.22)
k∈K
xkfp
ij = Afp
zf
ij ∀ (i, j) ∈ AR, f ∈ Fi, p ∈ P (3.23)
k∈K
(xkfp
ij + xkfp
ji ) = Afp
zf
ij ∀ (i, j) ∈ ER, f ∈ Fi, p ∈ P (3.24)
Denitionen af objektfunktionen (3.19) og betingelserne (3.20 - 3.28) kan ndes i de foregående sektioner,
og gentages derfor ikke her.
3.2 Topology Aggregation
I ruteplanlægningsproblemer, som f.eks. indsamling af aald, hvor det praktiske ruteplanlægningsproblem ofte
betegnes som Large Scale, er det en udfordring for selv de bedste algoritmer at generere løsninger af rimelig kva-
litet. Afstandsmatricen kan i disse tilfælde være så stor at computerens tilgængelige korttidshukommelse (RAM)
ikke kan indeholde dataene, hvilket er strengt nødvendigt for at computerens beregner (Processor) eektivt kan
tilgå disse. Operatorerne bliver ligeledes langsommere i takt med at problemstørrelsen øges, hvilket naturligt
giver en lavere løsningskvalitet da færre løsninger vil blive overvejet indenfor den tilgængelige beregningstid.
3.2. TOPOLOGY AGGREGATION 25
P(
i∈NRf∈Fi
dixkfp
i+
(i,j)∈ARf∈Fij
dijxkfp
ij+
(i,j)∈ERf∈Fij
dij(xkfp
ij+xkfp
ji)≤Q)≥α∀p∈P,k∈K(3.25)
i∈NR
sixkfp
i+
(i,j)∈AR
sijxkfp
ij+
(i,j)∈ER
sij(xkfp
ij+xkfp
ji)+
i∈N
tiykp
i+
(i,j)∈A
tijykp
ij+
(i,j)∈E
tij(ykp
ij+ykp
ji)≤T∀p∈P,k∈K(3.26)
j:(i,j)∈δ+
AR
(i)
xkfp
ij+
j:(i,j)∈δ+
A(i)
ykp
ij−
j:(j,i)∈δ−
AR
(i)
xkfp
ji−
j:(j,i)∈δ−
A(i)
ykp
ji=
j:(i,j)∈δER
(i)
xkfp
ji+
j:(i,j)∈δ(i)
ykp
ji−
j:(i,j)∈δER
(i)
xkfp
ij−
j:(i,j)∈δ(i)
ykp
ij∀i∈N,f∈Fi,p∈P,k∈K(3.27)
(i,j)∈δ+
AR
(S)
xkfp
ij+
(j,i)∈δ−
AR
(S)
xkfp
ji+
(i,j)∈δER
(S)
(xkfp
ij+xkfp
ji)+
(i,j)∈δ+
A(S)
ykfp
ij+
(j,i)∈δ−
A(S)
ykfp
ji+
(i,j)∈δE(S)
(ykfp
ij+ykfp
ji)≥



2(xkfp
uv+xkfp
vu),
2xkfp
uv,
2zkfp
h,
∀(u,v)∈ER(S),f∈Fi,p∈P,k∈K
∀(u,v)∈AR(S),f∈Fi,p∈P,k∈K
∀h∈SR,f∈Fi,p∈P,k∈K
(3.28)
xkfp
ij∈{0,1}∀(i,j)∈LR,f∈Fi,p∈P,k∈K(3.29)
xkfp
ji∈{0,1}∀(i,j)∈ER,f∈Fi,p∈P,k∈K(3.30)
xkfp
i∈{0,1}∀i∈NR,f∈Fi,p∈P,k∈K(3.31)
ykp
ij∈Z+∀(i,j)∈L,p∈P,k∈K(3.32)
ykp
ji∈Z+∀(i,j)∈E,p∈P,k∈K(3.33)
zf
ji∈{0,1}∀(i,j)∈LR,f∈Fi(3.34)
zf
i∈{0,1}∀i∈NR,f∈Fi(3.35)
26 KAPITEL 3. ANVENDT TEORI
Topology Aggregation er en teknik til at reducere problemets størrelse og fungerer ved at aggregere data
baseret på dets topologi. Det aggregerede data er en repræsentation af det underliggende data og betegnes derfor
som Aggregated Representation. Når data aggregeres vil det være på bekostning af granularitet, og det er derfor
nødvendigt at lave en afvejning mellem nøjagtighed af data og størrelsen af den aggregerede repræsentation[49].
Litteratur omhandlende Topology Aggregation indenfor ruteplanlægning er begrænset, dog yderst relevant i
forhold til Rich VRP. Ifølge Flatberg et al. [31] kan aggregeringen bestå af to niveauer; første aggregering er
udført af distributionsvirksomheden hvor typisk 5-10 anmodninger aggregeres, ere i byområder med blokke,
disse betegnes som moduler; anden aggregering udføres typisk af en heuristisk procedure, der aggregerer og
ordner rækkefølgen på alle moduler som tilhører samme vejstykke eller tilstødende veje som ikke er afbrudt af
et vejkryds. Aggregeringen er begrænset af grænseværdier for efterspørgsel og servicetid.
3.3 Adaptive Iterated Local Search
I denne sektion vil metaheuristikken AILS præsenteres som den anvendte løsningsmetode til PDCMCGRPPC.
AILS blev præsenteret af Hasle et al. [24] i 2014 og har præsteret konkurrencedygtige resultater på bench-
marktilfælde indenfor både MCGRP, CVRP og CARP. Formålet med AILS er at undgå en ikke-produktiv
søgeprocess og samtidig sikre en god balance mellem intensivering og diversicering. Algoritmen er illustreret i
algoritme 12 og 13. I algoritme refalg:ID449 ses det at algoritmen itererer i et ydre while-loop og et indlejrede
for-loop. Det ydre while-loop sikrer diversiceringen i søgeprocessen ved at bruge metaheuristikken ILS, mens
det indre for-loop sørger for intensivering med Adaptive Large Neighborhood Search (ALNS) og Local Search
(LS). ALNS er en adaptiv generalisering af Large Neighborhood Search der er beskrevet i sektion 2.4.1.7.
Hasle et al. [24] præsenterer det overordnede design af AILS som indeholder mange alternativer for de mest
væsentlige mekanismer. Gennem komparative eksperimenter er modellen tunet på fem benchmarktilfælde in-
denfor MCGRP; CBMix [67], BHW [5], DI-NEARP [5], mggdb [12] og mgval [12]. Denne tunede model er fundet
konkurrencedygtig indenfor ere klasser af ruteplanlægningsproblemer, og danner derfor grundlag for redegø-
relsen af AILS.
Function Ails
IterCount = 0
IterStage = ITER_STAGE
KickCount = KICK_COUNT
ResetScore()
sInit = Initial_Solution(Instance)
sGlobIncu = sLocaIncu = LS_Full(sInit)
while TimeOut() = True do
sCurr = sStag = sLocaIncu
for IterCountStage = 0 to IterStage do
IterCoun += 1
NewBest = Alns_and_LS()
if NewBest = TRUE then
IterStage = ITER_STAGE - 1
KickCount = KICK_COUNT
Break
end
end
IterStage += 1
end
Algorithm 12: Pseudokode for AILS
I det følgende gennemgås implementeringen af
AILS algoritmen, de anvendte parametre, variable,
funktioner og procedurer samt tuningen af model-
len. Herefter præsenteres de løsningsmetoder som al-
goritmen anvender som procedure, hvilket omfatter
en redegørelse af Augment-Merge, ALNS og LS i sek-
tion 3.3.1 - 3.3.3. ILS kan ndes i sektion 2.4.1.6 og
medtages derfor ikke her.
Algoritmen begynder ved en initialisering af de
globale variable, IterCount, IterStage, KickCount, og
φ. IterCount tæller antallet af iterationer og initiali-
seres til nul. IterStage holder styr på antallet af ite-
rationer i det indre loop og initialiseres til værdien af
parametren ITER_STAGE. KickCount tæller ned, og
angiver antallet af iterationer før næste perturbation.
KickCount initialiseres til værdien af parametren KI-
CK_COUNT. Gennem tuning på fornævnte bench-
marks er ITER_STAGE og KICK_COUNT sat til
henholdsvis 20.000 og 10. Score matricen φ holder et
mål for eektiviteten af et operatorpar, en Destructor
og en Constructor. Den initialiseres ved at kalde pro-
Master Thesis
Master Thesis
Master Thesis
Master Thesis
Master Thesis
Master Thesis
Master Thesis
Master Thesis
Master Thesis
Master Thesis
Master Thesis
Master Thesis
Master Thesis
Master Thesis
Master Thesis
Master Thesis
Master Thesis
Master Thesis
Master Thesis
Master Thesis
Master Thesis
Master Thesis
Master Thesis
Master Thesis
Master Thesis
Master Thesis
Master Thesis
Master Thesis
Master Thesis
Master Thesis
Master Thesis
Master Thesis
Master Thesis
Master Thesis
Master Thesis
Master Thesis
Master Thesis
Master Thesis
Master Thesis
Master Thesis
Master Thesis
Master Thesis
Master Thesis

More Related Content

Similar to Master Thesis

ABCD modellen til udvikling af lokalsamfund
ABCD modellen til udvikling af lokalsamfundABCD modellen til udvikling af lokalsamfund
ABCD modellen til udvikling af lokalsamfundTyge Mortensen
 
Læring og multimedier - rapporteksempel
Læring og multimedier - rapporteksempelLæring og multimedier - rapporteksempel
Læring og multimedier - rapporteksempelClaus Scheuer-Larsen
 
Hvorfor Fejler EA
Hvorfor Fejler EAHvorfor Fejler EA
Hvorfor Fejler EAckortenkamp
 
73 B7 Daffc50244 D5 B1020 B8572923 Eaf
73 B7 Daffc50244 D5 B1020 B8572923 Eaf73 B7 Daffc50244 D5 B1020 B8572923 Eaf
73 B7 Daffc50244 D5 B1020 B8572923 Eafchuisman
 
Omdannelse og uddannelse - Gitte Miller Balslev afhandling 2012
Omdannelse og uddannelse  - Gitte Miller Balslev afhandling 2012Omdannelse og uddannelse  - Gitte Miller Balslev afhandling 2012
Omdannelse og uddannelse - Gitte Miller Balslev afhandling 2012Tyge Mortensen
 
Lopslag og absolutte referencer excel 2013
Lopslag og absolutte referencer excel 2013Lopslag og absolutte referencer excel 2013
Lopslag og absolutte referencer excel 2013Officekonsulenterne
 
Visuel Kommunikation På Myspace
Visuel Kommunikation På MyspaceVisuel Kommunikation På Myspace
Visuel Kommunikation På MyspaceMariPou
 
6. semesterprojekt - Bygningsingeniør - Konstruktion og Energi - Rapport + A1...
6. semesterprojekt - Bygningsingeniør - Konstruktion og Energi - Rapport + A1...6. semesterprojekt - Bygningsingeniør - Konstruktion og Energi - Rapport + A1...
6. semesterprojekt - Bygningsingeniør - Konstruktion og Energi - Rapport + A1...PawHS80
 
Digitale læringsressourcer dream-2009
Digitale læringsressourcer dream-2009Digitale læringsressourcer dream-2009
Digitale læringsressourcer dream-2009Jeppe Akselbo
 
Digitale læringsressourcer dream
Digitale læringsressourcer dreamDigitale læringsressourcer dream
Digitale læringsressourcer dreamJeppe Akselbo
 
En strategisk analyse & værdiansættelse af gn store nord
En strategisk analyse & værdiansættelse af gn store nordEn strategisk analyse & værdiansættelse af gn store nord
En strategisk analyse & værdiansættelse af gn store nordJesper Krebs Andersen
 
Telemedicinsk sårvurdering MedCom 2016
Telemedicinsk sårvurdering MedCom 2016Telemedicinsk sårvurdering MedCom 2016
Telemedicinsk sårvurdering MedCom 2016Thomas Funch Peckham
 
2 Projekt Tnt
2  Projekt Tnt2  Projekt Tnt
2 Projekt TntNatascha
 

Similar to Master Thesis (20)

speciale 4. sem.[MASTER]
speciale 4. sem.[MASTER]speciale 4. sem.[MASTER]
speciale 4. sem.[MASTER]
 
Endelig speciale
Endelig specialeEndelig speciale
Endelig speciale
 
ABCD modellen til udvikling af lokalsamfund
ABCD modellen til udvikling af lokalsamfundABCD modellen til udvikling af lokalsamfund
ABCD modellen til udvikling af lokalsamfund
 
speciale-thilde
speciale-thildespeciale-thilde
speciale-thilde
 
Læring og multimedier - rapporteksempel
Læring og multimedier - rapporteksempelLæring og multimedier - rapporteksempel
Læring og multimedier - rapporteksempel
 
Hvorfor Fejler EA
Hvorfor Fejler EAHvorfor Fejler EA
Hvorfor Fejler EA
 
SPECIALE
SPECIALESPECIALE
SPECIALE
 
73 B7 Daffc50244 D5 B1020 B8572923 Eaf
73 B7 Daffc50244 D5 B1020 B8572923 Eaf73 B7 Daffc50244 D5 B1020 B8572923 Eaf
73 B7 Daffc50244 D5 B1020 B8572923 Eaf
 
Omdannelse og uddannelse - Gitte Miller Balslev afhandling 2012
Omdannelse og uddannelse  - Gitte Miller Balslev afhandling 2012Omdannelse og uddannelse  - Gitte Miller Balslev afhandling 2012
Omdannelse og uddannelse - Gitte Miller Balslev afhandling 2012
 
Lopslag og absolutte referencer excel 2013
Lopslag og absolutte referencer excel 2013Lopslag og absolutte referencer excel 2013
Lopslag og absolutte referencer excel 2013
 
Visuel Kommunikation På Myspace
Visuel Kommunikation På MyspaceVisuel Kommunikation På Myspace
Visuel Kommunikation På Myspace
 
6. semesterprojekt - Bygningsingeniør - Konstruktion og Energi - Rapport + A1...
6. semesterprojekt - Bygningsingeniør - Konstruktion og Energi - Rapport + A1...6. semesterprojekt - Bygningsingeniør - Konstruktion og Energi - Rapport + A1...
6. semesterprojekt - Bygningsingeniør - Konstruktion og Energi - Rapport + A1...
 
Speciale 2. udgave
Speciale 2. udgaveSpeciale 2. udgave
Speciale 2. udgave
 
Digitale læringsressourcer dream-2009
Digitale læringsressourcer dream-2009Digitale læringsressourcer dream-2009
Digitale læringsressourcer dream-2009
 
Digitale læringsressourcer dream
Digitale læringsressourcer dreamDigitale læringsressourcer dream
Digitale læringsressourcer dream
 
En strategisk analyse & værdiansættelse af gn store nord
En strategisk analyse & værdiansættelse af gn store nordEn strategisk analyse & værdiansættelse af gn store nord
En strategisk analyse & værdiansættelse af gn store nord
 
En treenighed - 12 6
En treenighed - 12 6En treenighed - 12 6
En treenighed - 12 6
 
Telemedicinsk sårvurdering MedCom 2016
Telemedicinsk sårvurdering MedCom 2016Telemedicinsk sårvurdering MedCom 2016
Telemedicinsk sårvurdering MedCom 2016
 
2 Projekt Tnt
2  Projekt Tnt2  Projekt Tnt
2 Projekt Tnt
 
Frafald - og hvad så
Frafald - og hvad såFrafald - og hvad så
Frafald - og hvad så
 

Master Thesis

  • 1. Forfatter: Søren Aabling Vejleder: Sanne Wøhlk Analyse af Transportomkostningerne i Indsamlingsprocessen for Fraktioneret Dagrenovation Case Study: Reno Djurs I/S Kandidatafhandling, Maj 2015 Institut for Økonomi School of Business & Social Sciences, Aarhus Universitet
  • 2. Abstract The increased focus on sustainability from the European Parliament, the Commission and the Council of Ministers have inevitably inuenced the Danish Governments environmental policy, which the waste policy is part of. The overall goals in the waste policy is consequently to recycle more and burn less of the solid waste. It is the responsibility of the municipalities to collect and process the solid waste, which for the south and northern parts of Djursland is handled by the general partnership called Reno Djurs. In order to comply to the waste policy the company has developed a number of master thesis projects with a focus on the collection process in collaboration with Associate Professor Sanne Wøhlk from the Department of Economics and Business. This master thesis is founded in the project concerning synchronization of waste fractions in the collection process of fractionated solid waste. This master thesis presents an analysis of the cost of transportation for the collection process of fractionated solid waste in two dierent scenarios. The analysis is a part of the restructuring in the waste collection for Reno Djurs, and results in a recommendation to the decision-making process. The problem for the two scenarios are viewed as a routing problem that theoretically is identied as a generalization of the Mixed Capacitated General Routing Problem (MCGRP). This identication is due to the use of Topology Aggregation in the data process, which reduces the problem instance signicantly. The hybrid metaheuristic Adaptive Iterated Local Search is chosen as solution method and modied to accommodate the generalization of MCGRP. Based on the results the scenario containing synchronization of waste fractions is recommended. The crucial result in this choice is the traverse time, which is assumed to have a linear relation to the cost of the collection process. The traverse time was lower for the scenario containing synchronization of waste fractions. A sensitivity analysis showed however that this result was sensitive to changes in the instance. Finally some areas related to the analysis that could have been interesting to look deeper into are presented. Also more general subjects within practical and theoretical routing are discussed with suggestions to some changes of the general practice. i
  • 3. Anerkendelse Først og fremmest vil jeg rette en stor tak til lektor Sanne Wøhlk for sin motiverende og spændende vejledning gennem specialeskrivningen. Det er tydeligt gennem hendes pædagogiske og grundige vejledning at hun har en stor interesse for sine specialestuderende. Yderligere vil jeg sige tak for hendes interesse og sparring i mine fremtidsplaner indenfor ruteplanlægning og for at måtte benytte mig af hendes netværk i den henseende. Virksomhederne Reno Djurs, Hørkram Foodservice, Grøn Cater og Dansk Pakke Ekspres skal have en tak for deres samarbejde omkring projekter på min bachelor og kandidat. Deres åbenhed overfor at anvende et akademisk perspektiv på deres praktiske ruteplanlægingsproblemer har givet mig en dyb forståelse for hvordan teori kan anvendes i praksis. Yderligere vil jeg gerne sige tak for den store eksibilitet som Studenterlauget og Danske Commodities har vist mig i mine studiejobs. Danske Commodities har givet mig uvurderlig erfaring som man sjælendt nder i et studiejob. Da dette er afslutningen på min skolegang, vil jeg benytte lejligheden til at takke de to af mine lærere der har haft den største indydelse på hvor jeg er idag. Derfor en stor tak til min klasselærer Lene Krabbe og min matematiklærer Inge-Lis Andersen for støtten og troen gennem mine første 7 folkeskoleår på Vester Vedsted Skole. Jeg vil gerne takke mine forældre, Anders og Tove, for at give mig frihed og støtte til selv at bestemme hvilken retning jeg vælger. En speciel tanke går til min mor som desværre må se mine bedrifter fra himmels. Jeg vil naturligvis gerne takke mine to dejlige søstre, Anne og Marie, for mange gode minder, og fordi vi stadig holder sammen trods vores forskelligheder. En tak går også til min Moster, Else, for at have støttet mig gennem nogle svære perioder, hvilket jeg sætter mere pris på end jeg kan sige. Vigtigst af alt er jeg taknemlig for kærligheden, støtten og tolerancen gennem snart 8 år fra min kæreste Katrine Skeby, hun har en stor andel i hvor jeg er idag. ii
  • 4. Indhold Indhold iii 1 Indledning 1 1.1 Virksomheds- og situationsbeskrivelse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.1.1 Nuværende Dagrenovation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.1.2 Alternativ Dagrenovation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.2 Problemformulering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.3 Metode og Struktur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2 Litteraturgennemgang 5 2.1 Renovation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 2.1.1 Green Logistics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 2.1.2 Reverse Logistics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 2.1.3 Waste Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 2.2 Ruteplanlægning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 2.2.1 The Capacitated Vehicle Routing Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 2.2.2 The Capacitated Arc Routing Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 2.2.3 The General Routing Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2.2.4 The Mixed Capacitated General Routing Problem . . . . . . . . . . . . . . . . . . . . . . 10 2.3 Beregningskompleksitet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 2.4 Løsningsmetoder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 2.4.1 Banebaserede Metaheuristikker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 2.4.1.1 Simulated Annealing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 2.4.1.2 Tabu Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 2.4.1.3 Greedy Randomized Adaptive Search Procedure . . . . . . . . . . . . . . . . . . 16 2.4.1.4 Variable Neigborhood Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 2.4.1.5 Guided Local Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 2.4.1.6 Iterated Local Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 2.4.1.7 Large Neighborhood Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 2.4.2 Populationsbaserede Metaheuristikker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 2.4.2.1 Evolutionary Computation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 2.4.2.2 Ant Colony Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 3 Anvendt Teori 21 3.1 Mixed Capacitated General Routing Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 3.1.1 Distance-Constrained MCGRP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 3.1.2 MCGRP with Probabilistic Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 3.1.3 The Periodic MCGRP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 3.1.4 The Periodic Distance-Constrained MCGRP with Probabilistic Constraints . . . . . . . . 24 3.2 Topology Aggregation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 3.3 Adaptive Iterated Local Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 3.3.1 Augment-Merge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 3.3.2 Local Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 3.3.3 Adaptive Large Neighborhood Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 4 Emperi 33 iii
  • 5. iv INDHOLD 4.1 Datagrundlag . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 4.2 Databeskrivelse og -antagelser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 4.2.1 Vognpark . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 4.2.2 Afstandsmatricer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 4.2.3 Efterspørgsel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 4.2.4 Beholdere . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 4.2.5 Anmodninger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 4.2.6 Kunder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 4.2.7 Chauører . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 4.2.8 Ruter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 4.2.9 Omkostninger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 4.3 Databehandling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 4.3.1 Topology Aggregation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 5 Løsningsprocedure 38 5.1 Visual Basics for Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 5.2 Implementeret Løsningsmetode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 5.2.1 Supplerende betingelser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 5.2.2 Augment-Merge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 5.2.3 Local Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 5.2.4 Adaptive Large Neighborhood Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 6 Tuning 42 6.1 Tuningsproces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 6.2 Forudinstillede Parametre Mekanismer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 6.3 Tuningsfase 1 - Undgå Ikke-Produktiv Søgning . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 6.4 Tuningsfase 2 - Intensivering i Søgningen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 6.5 Tuningsfase 3 - Diversicering i Søgningen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 7 Resultater 50 7.1 Scenarieanalyse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 7.1.1 Scenarie 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 7.1.1.1 Restaald . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 7.1.1.2 Organisk aald . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 7.1.1.3 Samlet Vurdering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 7.1.2 Scenarie 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 7.1.2.1 Restaald . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 7.1.2.2 Organisk aald . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 7.1.2.3 Samlet Vurdering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 7.2 Følsomhedsanalyse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 7.2.1 Traverseringstid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 7.2.2 Udnyttelse af rådighedstiden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 7.2.3 Kapacitetsudnyttelse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 7.2.4 Kvalitet af Ruterne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 7.2.5 Kvalitet af Ruteplanlægning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 7.3 Sammenfatning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 7.4 Diskussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 8 Konklusion 62 9 Perspektivering 63 Litteratur 65
  • 6. Forkortelser ACO Ant Colony Optimization AILS Adaptive Iterated Local Search ALNS Adaptive Large Neighborhood Search ARP Arc Routing Problem CARP Capacitated Arc Routing Problem CARPMD Capacitated Arc Routing Problem with Mobile Depots CARPTW Capacitated Arc Routing Problem with Time Windows CARPVD Capacitated Arc Routing Problem with Vehicle Dependencies CCPP Capacitated Chinese Postman Problem CGRP Capacitated General Routing Problems CGRP-m Capacitated General Routing Problems on Mixed Graphs CPP Chinese Postman Problem CVRP Capacitated Vehicle Routing Problem DCMCGRP Distance-Constrained Mixed Capacitated General Routing Problem EC Evolutionary Computation GA Genetic Algorithms GIS Geographic Information System GLS Guided Local Search GRASP Greedy Randomized Adaptive Search Procedure GRP General Routing Problems ILS Iterated Local Search LNS Large Neighborhood Search LS Local Search MA Memetic Algorithm MCGRP Mixed Capacitated General Routing Problem MCGRPPC Mixed Capacitated General Routing Problem with Probabilistic Constraints MDCARP Multi Depot Capacitated Arc Routing Problem MDVRP Multi Depot Vehicle Routing Problem MGRP Mixed General Routing Problem NEARP Node, Edge and Arc Routing Problem NRP Node Routing Problem PCARP Periodic Capacitated Arc Routing Problem PDCMCGRPPC Periodic Distance-Constrained Mixed Capacitated General Routing Problem with Probabilistic Constraints PMCGRP Periodic Mixed Capacitated General Routing Problem PVRP Periodic Capacitated Vehicle Routing Problem RCL Restricted Candidate List Rich VRP Rich Vehicle Routing Problems RPP Rural Postman Problem SA Simulated Annealing SCARP Stochastic Capacitated Arc Routing Problem TSP Traveling Salesman Problem VBA Visual Basics for Applications VNS Variable Neighborhood Search VRPB Vehicle Routing Problem with Backhauls VRPPD Vehicle Routing Problem with Pickup and Delivery VRPTW Vehicle Routing Problem with Time Windows v
  • 7.
  • 8. Kapitel 1 Indledning I juni 2013 afsluttedes forhandlingerne mellem Europa Parlamentet, Kommissionen og EU's ministerråd om det nye miljøhandlingsprogram, EU's 7. miljøhandlingsprogram Living well, within the limits of our planet [30]. EU's 7. miljøhandlingsprogram er køreplan for et ressourceeektivt EU og danner rammen om EU's samlede miljøpolitikudvikling. I EU's miljøpolitik har man fastsat nogle målsætninger i forhold til øget genanvendelse af husholdningsaald, hvor et af de centrale mål er at udsortere 50 % af det ikke-organiske husholdningsaald. Den danske aaldspolitik er naturligt inueret af EU's miljøpolitik, og i oktober 2013 lancerede den danske regering ressourcestrategien Danmark uden aald [68]. Med ressourcestrategien forventes Danmark at opfylde en række af de EU-mål, der er fastsat i EU's 7. miljøhandlingsprogram. Ressourcestrategien præsenterer overordnet et Danmark som på sigt genanvender mere og forbrænder mindre aald og har følgende fem fokusområder: • Forbrænd mindre aald og udnyt de værdier og ressourcer som er i det. • Reducér miljøpåvirkningen fra aald. • Kvalitet i genanvendelsen. • Omlægning af aaldshåndteringen gennem styrket oentlig-privat samarbejde. • Overvåg udviklingen på aaldsområdet, især genanvendelsen. Med fokus på disse områder sætter regeringen det mål at Danmark i 2022 skal udsortere og genanvende 50 % både ikke-organisk og organisk husholdningsaald. Dette mål skal ses i forhold til 2011-tal hvor 22 % af husholdningsaaldet blev genanvendt, hvilket placerer Danmark på en 8. plads bland de 28 EU-landende. Målet om en fordobling af genanvendelsen af husholdningsaaldet forventes opnået gennem implementering af nogle initiativer som retter sig mod fokusområderne. Det er kommunerne der har det primære ansvar på aaldsområdet i forhold til husstandes aald. Dette ansvar for at sikre indsamling og behandling af husstandenes aald er i de este tilfælde håndteret af et kommunalt ejet interessentskab. Det er dennes opgave at indrette indsamlingsordningen i den enkelte kommune, hvilket er et vigtigt element for at øge genanvendelsen af aald fra husholdningerne. Derfor er et centralt initiativ i ressourcestrategien mod fokusområderne fremsat som følgende: Understøttelse af udviklingen af nye indsamlingsordninger i kommunerne, der sikrer borgerne let adgang til at sortere og dermed genanvende mere husholdningsaald, herunder organisk aald, plast- og metalaald. [68] Reno Djurs I/S (Reno Djurs) er et af disse kommunalt ejede interessentskaber, ejet af Syddjurs og Norddjurs kommuner. Det er deres opgave at indrette indsamlingsordningen af aald i det geograske område som Syddjurs kommune og Norddjurs kommune omfatter. Med en genanvendelse i 2013 på 31 % er det nødvendigt at øge genanvendelsen for at leve op til regeringens målsætning om at genanvende 50 % både ikke-organisk og organisk 1
  • 9. 2 KAPITEL 1. INDLEDNING husholdningsaald i 2022. Reno Djurs mener ikke at genanvendelsesprocenten bør være målet i sig selv, men ønsker at løfte en endnu større mængde aald opad i aaldshierarkiet til genanvendelse, hvis det giver mening miljømæssigt og økonomisk [46]. I samarbejde med lektor Sanne Wøhlk fra Institut for Økonomi, Aarhus Uni- versitet har en række specialeprojekter med fokus på udvikling af nye indsamlingsordninger været udbudt til de studerende i 2014. Denne afhandling vil tage udgangspunkt i det projekt som omhandler indsamlingsstrategier og om selve indsamlingensprocessen på tværs af fraktionerne bør synkroniseres eller ej. 1.1 Virksomheds- og situationsbeskrivelse Reno Djurs er et nonprot interessentskab som siden 1996 har været Djurslandkommunernes aaldsselskab, først mellem de daværende 8 kommuner på Djursland, og efter kommunalreformen i 2007, mellem Syddjurs Kommune og Norddjurs Kommune. Det er selskabets opgave at varetage aaldshåndteringen i de 2 kommuner, og driver derfor et behandlingsanlæg i Glatved samt 10 genbrugsstationer på Djursland og Anholt. Selskabets hoved- driftsaktiviteter er behandling af forbrændings- og deponeringsegnet aald, dagrenovation, genbrugsstationer, indsamlingsordninger for bundfældningstanke, olie-, benzin- og fedtudskillere, samt samletanke og indsamling af klinisk aald. Selve indsamlingen af dagrenovation er på nuværende tidspunkt udliciteret til selskabet MiljøTeam A/S som er specialiseret indenfor aaldsindsamling. Reno Djurs har 42 medarbejdere, som årligt varetager en aaldsmængde på ca. 144.000 tons, heraf er ca. 20 % fra dagrenovation. Dagrenovationen er indsamlet fra ca. 36.000 hustande, 1.200 virksomheder og 15.000 sommerhuse [46]. 1.1.1 Nuværende Dagrenovation Den nuværende dagrenovationsordning (nuværende ordning) omfatter indsamling af aald hos Reno Djurs' kunder; husstande, virksomheder og sommerhuse i de 2 kommuner. Sommerhuse og virksomheder falder udenfor afgrænsningen af denne afhandling og bliver derfor ikke behandlet yderligere. Den nuværende ordning har en høj kundetilpasning, da kunderne selv kan vælge en kombination af beholder og tømningsfrekvens. Kunderne skal til restaald vælge mellem 5 typer af beholderstørrelser; 110, 140, 240, 400 eller 600 liter, denne tømmes en gang hver uge eller hver 14. dag. Til papir kan kunderne vælge mellem 2 typer af beholderstørrelser; 140 eller 240 liter, som tømmes en gang hver 4. uge. På den nuværende ordning er der pålagt et grundgebyr og et forbrugsgebyr. Grundgebyret er en fast ydelse som giver brugsret til genbrugsstationer og kuber på Djursland samt tømning af papirbeholder. Forbrugsgebyret er en variabel ydelse for tømning af restaald som afhænger af hvilken beholder og tømningsfrekvens kunderne vælger [46]. Kildesorteringen er opdelt i 4 fraktioner: restaald, papir, glas og batterier. Sammensætningen af disse i 2013 kan ses i tabel 1.1 [47]. Rest Papir Glas Batterier Total 79 % 17 % 4 % 0 % 100 % Tabel 1.1: Vægtsammensætningen i dagrenovationen af kildesorterede fraktioner for Syd- og Norddjurs kommu- ner i 2013. Indsamlingen i den nuværende ordning af restaald og batterier sker fra adressen, mens glas indsamles fra kuber og papir indsamles fra begge steder [46]. 1.1.2 Alternativ Dagrenovation I 2011 udgav Miljøstyrelsen et idékatalog som beskriver de tekniske og økonomiske konsekvenser for en række alternative dagrenovationsordninger, desværre er antagelsen om oplandsstørrelsen ikke repræsentativ for Reno Djurs [2]. Derfor har Reno Djurs i 2012, med udgangspunkt i Miljøstyrelsens idekatalog, bedt Econet A/S om
  • 10. 1.2. PROBLEMFORMULERING 3 at udarbejde et idékatalog hvor deres nuværende og en række alternative dagrenovationsordninger bliver vurde- ret [2]. Den nuværende ordning er beskrevet i sektion 1.1.1, men idékataloget tilføjer en væsentlig information vedrørende aaldssammensætningen som beskrives her. En udsortering af aaldet i 2010 opdeler aaldet i ti fraktioner, seks af fraktionerne er for enkelthedens skyld aggregeret under betegnelsen Mindre fraktioner. De fem fraktioner er opdelt i procent i forhold til vægtsammensætningen og kan ses i tabel 1.2. Det organiske aald er den eneste væsentlige fraktion som i den nuværende ordning ikke kildesorteres, dette trods en andel på 38 %. Rest Papir Glas Organisk Mindre Fraktioner 19 % 23 % 6 % 38 % 14 % Tabel 1.2: Vægtsammensætningen i dagrenovationen af udsorterede fraktioner for Syd- og Norddjurs kommuner i 2010. Idékataloget beskriver 8 alternative dagrenovationsordninger som illustrerer forskellige muligheder for at øge genanvendelsen i forhold til den nuværende ordning. Det andet alternativ i idékataloget refereres til i denne afhandling som den alternative ordning, da de resterende alternative dagrenovationsordninger falder udenfor afgrænsningen af denne afhandling. Den alternative ordning fokuserer på indsamlingen af de re største fraktioner i aaldssammensætningen som kan ses i tabel 1.2; organisk, papir, rest og glas. I den alternative ordning skal indsamlingen af aaldet planlægges over to uger, denne planlægning skal så repeteres gennem året. Aaldet kildesorteres således at det organisk aald er sin egen fraktion hvilket i den nuværende ordning er en del af restaaldet. Da restaald og organisk aald er fokusområdet for den alternative dagrenovation og papir og glas ikke er, falder disse fraktioner udenfor afgrænsningen af denne afhandling. Indsamlingen af restaald og organisk aald vil ske i særskilte beholdere fra adressen af forskellige vogne som transporterer det til behandlingsanlægget i Glatved. Idékataloget har beregnet at kildesortering af det organiske aald vil øge genanvendelsen med 25 %-point. 1.2 Problemformulering Reno Djurs vil gerne leve op til regeringens målsætning om at genanvende 50 % af husaaldet i 2022, hvilket kræver en stigning på 19 %-point i forhold til den nuværende ordning. Ved at kildesorter det organiske aald kan Reno Djurs opnå en stigning på 25 %-point, hvilket vil tilfredsstille regeringens målsætning. Da Reno Djurs ikke mener at genanvendelsesprocenten i sig selv skal være målet, ønsker de at få undersøgt de økonomiske omkostninger der følger med en omlægning af den nuværende ordning til den alternative ordning der indeholder kildesortering af det organiske aald. Med udgangspunkt i denne omlægning ønskes en analyse af den økonomiske forskel mellem følgende to scenarier: 1. Hvad er de økonomiske omkostninger i indsamlingsprocessen ved den alternative dagrenovation hvor ind- samlingen på tværs af fraktionerne synkroniseres? 2. Hvad er de økonomiske omkostninger i indsamlingsprocessen ved den alternative dagrenovation hvor ind- samlingen på tværs af fraktionerne ikke synkroniseres? De økonomiske omkostninger i indsamlingsprocessen ved den alternative ordning kan estimeres ved at betrag- te problemstillingen som et ruteplanlægningsproblem. I ruteplanlægningsproblemer har de økonomiske omkost- ninger oftest et lineært forhold med ruteplanlægningen målt i afstand, hvilket også er tilfældet her. Afstanden er derfor objektet der skal minimeres i de to scenarier, og på baggrund heraf drages en konklusion af hvilket scenarie der er økonomisk er mest fordelagtigt. Denne konklusion bør ikke være det endelige beslutningskriterie for hvilket scenarie der skal vælges, men bør være et væsentligt element i Reno Djurs' beslutningsprocess hvor andre elementer, som f.eks. serviceniveau og omstillingsparathed, også bør inddrages.
  • 11. 4 KAPITEL 1. INDLEDNING Formålet for denne afhandling formuleres som følgende: Formålet med denne afhandling er at analysere de økonomiske omkostninger i indsamlingsprocessen ved de to ovennævnte scenarier med en anbefaling til Reno Djurs om hvilket scenarie, set fra et ruteplanlægningssynspunkt, der er mest fordelagtig. 1.3 Metode og Struktur Videnskabsteoretisk har denne afhandling en positivistisk tilgang. Denne tilgang bygger på positive erfaringer, hvilket vil sige at kun det der kan iagttages og måles accepteres som videnskabelig erkendelse [77]. Ifølge positivismen skal videnskabslige teorier kunne bekræftes på baggrund af objektive iagttagelser af virkeligheden. Videnskaben bør kun beskæftige sig med det, der kan gøres til genstand for direkte observation. I afhandlingen anvendes et casestudie baseret på et empirisk datagrundlag og videnskabelig litteratur in- denfor Operational Research til at undersøge problemstillingen. Undersøgelsen af problemstilling indebærer en afgrænsningen af denne, dette vil gøres gennem afhandlingen hvor det ndes naturligt. Valg af løsningsmetode til det praktiske ruteplanlægningsproblems teoretiske ækvivalent er baseret på præstationsevnen beskrevet i litteraturen. Løsningsmetoden er herefter modiceret for at passe til det teoretiske ruteplanlægningsproblem og det anvendte programmeringssprog. I det følgende kapitel vil der blive foretaget en bred litteraturgennemgang indenfor ruteplanlægning. Dette omfatter teori vedrørende renovation, ruteplanlægningsproblemer og løsningsmetoder til disse. Herefter er der lagt vægt på en dyb redegørelse af den teori som anvendes til at løse afhandlingens problemstillingen. Inden en præsentation af løsningsproceduren, vil datagrundlag, antagelser for problemstillingen og databehandlingen beskrives. Løsningsproceduren omhandler det valgte programmeringssprog og udviklingen af den implementere- de løsningsmetode. Nogle udvalgte parametre og mekanismer i den implementerede løsningsmetoden er herefter tunet. Den tunede løsningsmetode er anvendt på det teoretiske ruteplanlægningsproblem samt nogle modicere- de tilfælde. Resultaterne for disse er præsenteret i en scenarieanalyse og en følsomhedsanalyse. På baggrund af resultaterne præsenteres afhandlingens konklusion på problemstillingen. Slutteligt perspektiveres der til emner som relatere sig til afhandlingen samt en diskussion af generelle emner indenfor praktisk og teoretisk ruteplan- lægning.
  • 12. Kapitel 2 Litteraturgennemgang Dette kapitel redegør for den relevante teori i forhold til afhandlingens problemstilling. Der er lagt vægt på en bred redegørelse af teori indenfor ruteplanlægning, da formålet med dette kapitel er at vise en bred forståelse af forskningsområdet. I sektion 2.1 redegøres der for teori vedrørende renovation, dette omfatter Green Logistics, Reverse Lo- gistics og Waste Management. I sektion 2.2 redegøres der for teori indenfor ruteplanlægning, dette omfatter Capacitated Vehicle Routing Problem (CVRP), Capacitated Arc Routing Problem (CARP) og Mixed Capacita- ted General Routing Problem (MCGRP). I sektion 2.2.4 redegøres der for løsningsmetoder indenfor klassen af Metaheuristikker til førnævnte ruteplanlægningsproblemer. 2.1 Renovation Reno Djurs ønsker at løfte en større mængde aald opad i aaldshierarkiet til genanvendelse hvis det giver me- ning miljømæssigt og økonomisk. Da objekterne er de miljømæssige og økonomiske faktorer, inddrages teorierne Green Logistics, Reverse Logistics og Waste Management da disse er relateret til problemstillingen. 2.1.1 Green Logistics Green Logistic kan ifølge Shibi et al. [72] deneres som processen ved at producere eller distribuere varer på en bæredygtig måde, hvor de miljømæssige og sociale faktorer tages med i overvejelserne. Objektet for organisationens logistikstrategier er derfor ikke kun den økonomiske eekt, men også de større eekter på samfundet. Traditionelt har logistikmodeller til produktion eller distribution primært koncentreret sig om at minimere en økonomisk faktor i forhold til organisationens begrænsninger i driften. Men når der skal tages hensyn til objekter indenfor Green Logistics er det nødvendigt at anvende modeller som har dette inkorporeret [72]. Figur 2.1: Komplemetærmængde for Green Logistics, Reverse Logistics og Waste Mana- gement. Udviklingen af selve begrebet Green Logistics er ifølge Murp- hy et al. [59] svært at sætte et præcist tidspunkt på, men det menes at have haft et meget begrænset fokus før 1960'erne. Det vi i dag kender som Green Logistics repræsenterer konvergens fra ere grene af teorier som er blevet udviklet siden da. Disse teorier klassiceres med rette ofte under Green Logistics, men i selve udviklingen af teorierne har det ikke været med det formål. Derfor har disse teorier en komplementærmængde af problem- stillinger til Green Logistics. To af disse er Reverse Logistics og Waste Management, og er illustreret i gur 2.1. Ifølge KcKinnon et al. [57] er aktiviteter der genanvender af- fald eller emballage en væsentlig del af Green Logistics. Denne fællesmængde af problemstillinger mellem Reverse Logistics og 5
  • 13. 6 KAPITEL 2. LITTERATURGENNEMGANG Green Logistics klassicerer Reverse Logistics under Green Logi- stics. Ifølge Rogers et al. [69] er det dog vigtigt at kunne skelne mellem Green Logistics og Reverse Logistics. For eksempel, at designe et produkt der har som objekt at forurene mindre ved at forbruge mindre plastik er Green Logistics, men ikke Reverse Logistics. Hvis produktet involverer en aktivitet der genanvender emballagen og dermed forbruger mindre plastik er dette både Green Logistics og Reverse Logistics. Hvis objektet kun er økonomisk og aktiviteten at indsamle emballagen til genanvendelse har en økonomisk fordel, men forurener mere end produktion af nyt emballage, så er det Reverse Logistics, men ikke Green Logistics. Ifølge Shibi et al. [72] er Waste Management en væsentlig proces i at beskytte miljøet og bevare ressourcer. De aktiviteter der er i forbindelse med transporten af aald er de miljømæssige aspekter af Waste Management, og dermed også en del af Green Logistics. 2.1.2 Reverse Logistics Reverse Logistics inkluderer alle aktiviteter som er inkluderet i denitionen af logistik, forskellen ligger i at alle disse aktiviteter opererer bagudrettet. Derfor kan Reverse Logistics deneres som processen at planlæg- ge, implementere og kontrollere bagudrettede ows af råmaterialer fra lager, pakning eller anvendelsessted hos producent, distributør eller anvendelsessted til et sted for genanvendelse eller korrekt bortskaelse [23]. Kort sagt handler processen Reverse Logistics om at tage råvarer fra deres slutdestination med det formål at opnå en ekstra værdi eller bortskae det korrekt. Dette inkluderer de åbenlyse aktiviteter som at genanvende be- holdere og emballage, men per denition inkluderer også aktiviteter som at genfremstille og renovere. Reno Djurs kan implementere Reverse Logistics ved at kildesortere det organiske aald. Det organiske aald vil blive transporteret til et biogasanlæg i Vejen og har dermed det formål at opnå en ekstra værdi i form af biogas. 2.1.3 Waste Management Waste management deneres som indsamling, transport, behandling og bortskaelse af det aald der er produ- ceret af menneskelig aktivitet for at reducere eekten på menneskers helbred eller bekvemmelighed [18]. Selvom Waste Management og Reverse Logistics er relateret til hinanden er det denitionen af aald der adskiller dem fra hinanden. Reverse Logistics koncentrerer sig om de bagudrettede ows som der kan udnyttes til at skabe værdi og indgå i en ny forsyningskæde, mens Waste Management koncentrerer sig om det aald der ikke kan udnyttes [23]. I forhold til afhandlingens problemstilling er Waste Management denitionen meget generel, og da pro- blemstillingen kun inddrager fast aald introduceres Solid Waste Management. Solid Waste Management kan deneres som kontrol af dannelse, opbevaring, indsamling, transfer og transport samt behandling og bortskaelse af fast aald der er i overenstemmelse med de bedst kendte principper indenfor sundhed, økonomi, ingeniør- videnskab, konservering, æstetik og miljømæssige overvejelser og som reagerer på den oentlige holdning [76]. Indsamlingsaktiviteten (Waste Collection) er den problemstilling i Solids Waste Management som er relevant for denne afhandling. Indenfor Waste Collection ndes 4 primære problemstillinger, Residential Collection, Com- mercial Collection, Roll-On/Roll-O Collection og Hazard Waste Collection. Residential Collection involverer indsamling af aaldsbeholdere hos boliger i et vejnetværk. Commercial Collection involverer indsamlingen af aaldscontainere hos virksomheder i et lokationsnetværk. Roll-On/Roll-O Collection involverer indsamling og uddeling af henholdsvis fulde og tomme containere hos byggepladser i et lokationsnetværk. Og Hazard Wa- ste Collection involverer indsamling, omlastning og opbevaring af farligt aald i et lokationsnetværk [72, 78]. Residential Collection og Commercial Collection er relevante problemstillinger i forhold til afhandlingens pro- blemstilling og uddybes derfor. I begge problemstillinger er chauørerne begrænset af arbejdstiden og vognens kapacitet. Når en vogn er fuld skal den tømmes på en genbrugsstation eller et behandlingsanlæg før den igen kan indsamle aald.
  • 14. 2.2. RUTEPLANLÆGNING 7 Residential Collection involverer besøg på veje med boliger i et vejnetværk, og deneres derfor som et Arc Routing Problem (ARP), se også sektion 2.2. I et ARP ligger efterspørgslen altid på vejen, lokationernes efterspørgsel er ofte aggregeret, og derfor serviceres vejen. Da boliger ofte har en begrænset mængde aald anvender de aaldsbeholdere til at opbevare deres aald i. Boligerne besøges typisk hver eller hver anden uge af vogne som tømmer aaldsbeholderne. Commercial Collection involverer besøg på lokationer med virksomheder i et lokationsnetværk, og deneres derfor som et Node Routing Problem (NRP), se også sektion 2.2. I et NRP ligger efterspørgslen altid på lokatio- nen, og derfor serviceres denne. Da virksomhederne ofte har en betydelig mængde aald anvender de containere til at opbevare deres aald i. Virksomhederne besøges typisk en eller ere gange om ugen af vogne som tømmer containerne for aald. 2.2 Ruteplanlægning Ruteplanlægningsproblemer er i litteraturen traditionelt dedikeret til to problemklasser; NRP og ARP. I NRP forekommer serviceanmodningen i alle eller en delmængde af knuder, hvorimod serviceanmodningen i ARP forekommer i alle eller en delmængde af kanter. En mere generel og eektiv klasse af problemer er General Routing Problems (GRP), her forekommer serviceanmodningen både i alle eller en delmængde af knuder og i alle eller en delmængde af kanter [12]. MCGRP er af klassen GRP og en generalisering af denne anvendes her som den teoretiske ækvivalent til det praktiske ruteplanlægningsproblem for den alternative ordning som beskrevet i sektion 2.1. På baggrund af datagrundlaget burde den teoretiske ækvivalent være et CARP, dog anvendes Topology Aggregation metoden i sektion 4.3.1, hvilket omdanner datagrundlaget til et MCGRP. MCGRP er en generalisering af tre ruteplanlægningsproblemer, CVRP indenfor NRP, CARP indenfor ARP og GRP indenfor GRP, dette er illustreret i gur 2.2. Det ndes nødvendigt at redegøre for CVRP, CARP, GRP og MCGRP, og det antages at læseren er bekendt med grundlæggende ruteplanlægningsproblemer som f.eks. the Traveling Salesman Problem (TSP) og the Rural Postman Problem (RPP). Figur 2.2: Klassicering af ruteplanlægningsproblemer og deres relation til hinanden [24]. 2.2.1 The Capacitated Vehicle Routing Problem CVRP er en del af klassen NRP og blev deneret af Dantzig et al. [21] i 1959 som en generalisering af TSP. CVRP anvendes i praksis til at modellere f.eks. distribution af varer fra et depot til kunder [78]. Indenfor
  • 15. 8 KAPITEL 2. LITTERATURGENNEMGANG Operational Research har CVRP været genstand for stor opmærksomhed siden Dantzig et al. denerede pro- blemet. Dette er grundet den brede anvendelighed og betydningen i at optimere operationelle omkostninger i et distributionsnetværk [52]. For videnskabelig litteratur omhandlende CVRP samt generaliseringer henvises der til Toth et al. [78], Golden et al. [37] og Laporte et al. [55]. I CVRP forsøges det at identicere de ruter med minimale omkostninger under forudsætning af at et givet sæt knuder er serviceret ved at traversere på et sæt af kanter. Knuderne er typisk anvendt til at repræsentere den geograske placering af kunder. Til hver kunde er tilknyttet en givet efterspørgsel med en tilsvarende serviceringsomkostning. Kanterne er ofte anvendt til at repræsentere veje mellem kunderne. Hver vej er tilknyttet en traverseringsafstand med en tilsvarende traverseringsomkostning. Mere formelt kan CVRP formuleres som det følgende grafteoretiske problem. Lad G = (N, E) denere en komplet ikke-orienteret graf når omkostningsmatricen c er symmetrisk og G = (N, A) denere en komplet orienteret graf når omkostningsmatricen c er asymmetrisk. Lad N = {0, . . . , n} betegne sættet af knuder hvor knude i = 0 denerer depotet, lad E = {(i, j) : i, j ∈ N, i j} betegne sættet af ikke-orienteret kanter og lad A = {(i, j) : i, j ∈ N, i = j} betegne sættet af orienterede kanter. Lad N ⊆ N betegne sættet af servicekrævende knuder. Lad cij betegne en ikke-negativ traverseringsomkostning ved at traversere kant (i, j) ∈ E ∨ A. Brugen af lukkede kredsløb (i, i) er ikke tilladt, og deneres derfor cii = +∞ for i ∈ N. Lad qi for i ∈ N betegne efterspørgselsmængden og pi for i ∈ N betegne serviceringsomkostningen. Lad K = {1, . . . , m} betegne sættet af homogene vogne til rådighed i depotet med en kapacitet Q. For at sikre gennemførlighed antages det at qi ≤ Q for i ∈ N . Formålet med CVRP er at identicere et antal ruter hvor vognen starter og slutter i depotet sådan at hver knude i ∈ N er serviceret af nøjagtig en vogn hvor den aggregerede leveringsmængde på ruten ikke overstiger Q og de totale omkostninger er minimerede. Adskillige generaliseringer af CVRP er blevet præsenteret i litteraturen, de mest væsentlige introduceres kort. I et VRP with Time Windows (VRPTW) har hver knude tilknyttet et tidsinterval som vognen skal servicere knuden indenfor. I et VRP with Backhauls (VRPB) er sættet af kunder delt i to, det ene sæt kunder skal have levering og det andet sæt skal have opsamling. I en rute servicerer vognen først de kunder som har levering og derefter de kunder der har opsamling. I et VRP with Pickup and Delivery (VRPPD) har hver knude tilknyttet en levering samt dens oprindelse og/eller en opsamling samt dens destination [78]. I et Periodic VRP (PVRP) skal knuderne serviceres af vogne en eller ere gange i løbet af en planlægningshorisont bestående af ere perioder med ruter i hver periode [15]. Det kan påvises at PVRP svarer til the Multi Depot VRP (MDVRP) hvis perioder substitueres med depoter [35]. Løsningsmetoder til CVRP og dens generaliseringer kan kategoriseres indenfor 3 klasser, eksakte, heuristikker og metaheuristikker. Eksakte løsningsmetoder kan løse tilfælde med op til omtrent 100 knuder indenfor rimelig tid. Da størrelsen af CVRP i praksis ofte overstiger 100 knuder, er de mest anvendte løsningsmetoder i praksis heuristikker og metaheuristikker[52]. I sektion 2.4 redegøres for de mest anvendte løsningsmetoder indenfor klassen af metaheuristikker. 2.2.2 The Capacitated Arc Routing Problem CARP er en del af klassen ARP og blev deneret af Golden et al. [38] i 1981 som en generalisering af RPP. Teoretisk er CARP indenfor ARP modstykket til CVRP indenfor NRP [82]. CARP anvendes i praksis til at modellere f.eks. indsamling af aald, rydning af sne og uddeling af post [78]. CARP har indenfor Operational Research været genstand for en øget opmærksomhed de seneste 15 år, dog ikke i samme grad som CVRP. Dette er grundet stigende interesse i praksis hvor kanter frem for knuder har behov for servicering. For videnskabelig litteratur omhandlende løsningsmetoder til CARP og dens generaliseringer henvises til Assad et al. [3], Dror et al. [28] og Wøhlk [82]. I CARP forsøges det at identicere ruter med minimale omkostninger under forudsætning af at et givet sæt af kanter er serviceret. Knuderne er typisk anvendt til at repræsentere den geograske placering af vejkryds.
  • 16. 2.2. RUTEPLANLÆGNING 9 Kanterne er typisk anvendt til at repræsentere veje, hvor kunder samt deres tilhørende efterspørgsel er aggregeret på vejen. Til hver vej er der ofte tilknyttet en traverseringsafstand med en tilsvarende traverseringsomkostning. Ydermere har hver vej med efterspørgsel også en tilknyttet serviceringsomkostning. Mere formelt kan CARP formuleres som det følgende grafteoretiske problem. Lad G = (N, E) denere en komplet ikke-orienteret graf når omkostningsmatricen c er symmetrisk og lad G = (N, A) denere en komplet orienteret graf når omkostningsmatricen c er asymmetrisk. Lad N = {0, . . . , n} betegne sættet af knuder hvor knude i = 0 denerer depotet, lad E = {(i, j) : i, j ∈ N, i j} betegne sættet af ikke-orienterede kanter og A = {(i, j) : i, j ∈ N, i = j} betegne sættet af orienterede kanter. Lad E ⊆ E betegne sættet af servicekrævende ikke-orienterede kanter og A ⊆ A betegne sættet af servicekrævende orienterede kanter. Lad cij betegne en ikke-negativ traverseringsomkostning ved at traversere kant (i, j) ∈ E ∨ A. Brugen af lukkede kredsløb (i, i) er ikke tilladt, og deneres derfor cii = +∞ for i ∈ N. Lad qij for (i, j) ∈ E ∨ A betegne efterspørgselsmængden og pij for (i, j) ∈ E ∨ A betegne serviceringsomkostningen. Lad K = {1, . . . , m} betegne sættet af homogene vogne til rådighed i depotet med en kapacitet Q. For at sikre gennemførlighed antages det at qij ≤ Q for (i, j) ∈ E ∨ A . Formålet med CARP er at identicere et antal ruter hvor vognen starter og slutter i depotet sådan at hver kant (i, j) ∈ E ∨ A er serviceret af nøjagtig en vogn hvor den aggregerede leveringsmængde på ruten ikke overstiger Q og de totale omkostninger er minimeret [8]. Adskillige generaliseringer af CARP er blevet præsenteret i litteraturen, de mest væsentlige introduceres kort. I et Mixed CARP deneres grafen som en komplet multigraf, hvilket er en graf som både indeholder ikke- orienterede og orienterede kanter. I et CARP with Time Windows (CARPTW) har hver kant med service et tilknyttet tidsinterval hvori vognen skal serviceres. I et Multi Depot CARP (MDCARP) er hver vogn tilknyttet et af ere depoter hvorfra den skal starte og slutte en rute. I et CARP with Mobile Depots (CARPMD) har sættet med vogne to 2 typer, en som læsser af ved depotet og en vogn som læsser af på den første type vogn. I et CARP with Vehicle Dependencies (CARPVD) har sættet med vogne mange typer, hvor hver kant er tilknyttet en eller ere vogntyper. I et Periodic CARP (PCARP) skal kanterne serviceres af vogne en eller ere gange i løbet af en planlægningshorisont af adskillige perioder med ruter i hver periode. I et Stochastic CARP (SCARP) er leveringerne på kanterne stokastiske, dvs. efterspørgslen ikke er kendt på forhånd [82]. Ligesom indenfor CVRP kan løsningsmetoderne til CARP og dens generaliseringer kategoriseres indenfor 3 klasser; eksakte, heuristikker og metaheuristikker. Da størrelsesordnen af CARP i praksis ofte også er meget store, er de mest anvendte løsningsmetoder også her heuristikker og metaheuristikker. 2.2.3 The General Routing Problem GRP blev deneret af Orlo [61] i 1974 som generalisering af TSP og the Chinese Postman Problem (CPP). GRP er en del af klassen GRP som kombinere klasserne ARP og NRP. GRP anvendes i praksis til at modellere f.eks. indsamling af aald hvor husholdninger repræsenteres på kanterne mens virksomheder og etageboliger repræsenteres i knuder. For videnskabelig litteratur omhandlende metoder til løsning af GRP og generaliseringer af GRP henvises til Pandi et al. [63], Corberán et al. [19] og Gutiérrez et al. [39]. GRP forsøger at identicere ruter med minimale omkostninger under forudsætning af at et givet sæt af kanter og knuder er serviceret. Knuderne anvendes typisk til at repræsentere den geograske placering af vejkryds og kunder. Hver kunde er tilknyttet en given efterspørgsel med en tilsvarende serviceringsomkostning. Kanterne er ofte anvendt til at repræsentere veje mellem individuelle kunder eller vejkryds, hvor kunder samt deres tilhørende efterspørgsel kan være aggregeret på vejen. Ydermere har hver vej med efterspørgsel også en tilknyttet serviceringsomkostning. Mere formelt kan GRP formuleres som det følgende grafteoretiske problem. Lad G = (N, E) denere en komplet ikke-orienteret graf når omkostningsmatricen c er symmetrisk og lad G = (N, A) denere en komplet orienteret graf når omkostningsmatricen c er asymmetrisk. Lad N = {0, . . . , n} betegne sættet af knuder hvor knude i = 0 denerer depotet, E = {(i, j) : i, j ∈ N, i j} betegne sættet af ikke-orienterede kanter og
  • 17. 10 KAPITEL 2. LITTERATURGENNEMGANG A = {(i, j) : i, j ∈ N, i = j} betegne sættet af orienterede kanter. Lad N ⊆ N betegne sættet af servicekræ- vende knuder, E ⊆ E betegne sættet af servicekrævende ikke-orienterede kanter og A ⊆ A betegne sættet af servicekrævende orienterede kanter. Lad cij betegne en ikke-negativ traverseringsomkostning ved at traversere kant (i, j) ∈ E ∨ A. Brugen af lukkede kredsløb (i, i) er ikke tilladt, og deneres derfor cii = +∞ for i ∈ N. Formålet med GRP er at identicere den rute hvor vognen starter og slutter i depotet sådan at hver kant (i, j) ∈ E ∪ A og hver knude i ∈ N er serviceret og de totale omkostninger er minimeret [60]. GRP har indenfor Operational Research ikke været genstand for lige så stor opmærksomhed som CVRP og CARP, og derfor introduceres kun de to væsentligste generaliseringer the Mixed General Routing Problem (MGRP) og the Capacitated GRP (CGRP). I et MGRP deneres grafen som en komplet multigraf, hvilket er en graf som både indeholder ikke-orienterede og orienterede kanter [19]. I et CGRP er et sæt af vogne med en given kapacitet til rådighed i depotet [63]. 2.2.4 The Mixed Capacitated General Routing Problem Der har en tendens i den videnskabelige litteratur til at klassicere ruteplanlægningsproblemer som værende enten et tilfælde af NRP eller et tilfælde af ARP. Der er imidlertid betydningsfulde virkelige ruteplanlægnings- problemer hvis karaktertræk ikke kan modelleres i hverken CVRP eller CARP, da de indeholder efterspørgsel både i knuder og på kanter. I nogle tilfælde af aaldsindsamling i urbane områder er det for det meste til- strækkeligt at efterspørgslen modelleres på kanterne, men for nogle lokationer med en stor efterspørgsel som f.eks. private virksomheder eller oentlige institutioner, er det mere fordelagtigt at modellere efterspørgslen i knuderne. Til at løse denne udfordring har forskere for nyligt haft et større fokus på et bestemt ruteplanlægningspro- blem indenfor klassen GRP. Ruteplanlægningsproblemet MCGRP, også betegnet Node, Edge and Arc Routing Problem (NEARP), giver mulighed for at modellere nogle virkelige ruteplanlægningsproblemer som ikke før har været mulige. I MCGRP er efterspørgslen lokaliseret i en delmængde af knuder og kanter i en given vægtet multigraf, og en vognpark af identiske kapacitetsbegrænsede vogne i et centralt depot er brugt til at tilfredsstille efterspørgslen til de minimale omkostninger mens kapacitetsbegrænsningerne overholdes. Ruteplanlægningsproblemer anses generelt for at skulle løses med et praktisk formål, og derfor fokuserer forskere på at udvikle nye generaliseringer og større benchmark tilfælde. De generaliseringer som kommer tæt på at modellere alle væsentlige aspekter af virkelige ruteplanlægningsproblemer betegnes i litteraturen som såkaldte Rich Vehicle Routing Problems (Rich VRP). Introduktion af MCGRP, som er en generalisering af CVRP og CARP, og en kapacitetsudvidelse af MGRP, var et signikant skridt fremad indenfor Rich VRP [4]. MCGRP blev deneret af Prins et al. [67] i 2004, men på trods af dens vigtige betydning i forhold til prakti- ske ruteplanlægningsproblemer, er videnskabelig litteratur indenfor dette ruteplanlægningsproblem begrænset. Uformelt har MCGRP været adresseret tidligere i den videnskabelige litteratur, dog som generaliseringer af GRP. Dette ses for eksempel hos Pandi et al. [64] der i 1995 præsenterede en generalisering af MCGRP med en heterogen, fast vognpark og en tidsbegrænsning på den enkelte rute, som betegnes CGRP. De præsenterede en Route-First Cluster-Second heuristik og testede algoritmen på et benchmark tilfælde indenfor the Capaci- tated CPP (CCPP) litteraturen. Derudover præsenterede Gutiérrez et al. [39] i 2002 CGRP med en homogen fast vognpark, som betegnes the Capacitated GRP on Mixed Graphs (CGRP-m). Ruteplanlægningsproblemet dierentierer sig fra MCGRP ved at håndtere en begrænset vognpark. Gutiérrez et al. [39] præsenterer en Cluster-First Route-Second heuristik og sammenligner den med heuristikken af Pandi et al. [64], hvor først- nævnte opnår bedre beregningsmæssige resultater på benchmarktilfældet når der anvendes en homogen fast vognpark. Da Prins et al. [67] i 2004 denerede MCGRP, præsenterede de en memetisk løsningsmetode som blev testet på benchmarktilfælde fra CVRP og CARP litteraturen, og på et sæt MCGRP benchmarktilfælde be- tegnet CBMix [67]. Kokubugata et al. [51] undersøgte i 2007 CVRP og MCGRP og præsenterede en Simulated
  • 18. 2.2. RUTEPLANLÆGNING 11 Annealing (SA) løsningsmetode. Algoritmen blev testet på CBMix [67] og leverede adskillige nye bedst kendte løsningsforslag. Hasle et al. [40] diskuterer i 2012 Upper Bound procedure som opnår interessante beregnings- mæssige resultater med deres kommercielle VRP løser Spider [40]. Bach et al. [5] præsenterede i 2013 den første Lower Bound procedure til MCGRP, som blev udviklet ved at tilpasse en procedure oprindeligt præsenteret til CARP af Wøhlk [81] i 2006. Lower Bound proceduren blev testet på CBMix [67] benchmarket og på to nye MCGRP benchmarktilfælde; BHW [5], DI-NEARP [5], disse kan alle ndes i bilag 1 - Benchmarks. Bosco et al. [12] præsenterede i 2013 den første heltalsprogrammeringsformulering af MCGRP, ved anvendelse af 3-index variable til knuder og 2-index variable til kanter. De udvidede nogle gyldige uligheder til MCGRP, som oprin- deligt blev introduceret til CARP, og inkorporerede dem i en Branch-and-Cut løsningsmetode. løsningsmetode blev testet på 12 tilfælde som de havde generaliseret fra CARP benchmarks. De løste kun små tilfælde som involverede op til syv vogne, og testede løsningsmetoden på de re mindste CBMix [67] tilfælde, hvor de leve- rede to optimale løsningsforslag. For nyligt præsenterede Beraldi et al. [9] en generalisering af MCGRP med stokastisk efterspørgsel, som betegnes MCGRP with Probabilistic Constraints (MCGRPPC). De præsenterer en formulering der sikrer at kapacitetsbegrænsningen overholdes for en given sandsynlighed. Derefter introducere de en tilsvarende deterministisk formulering under forudsætning af at efterspørgslen følger en normalfordeling. De præsenterer en Branch-and-Cut løsningsmetode og en Neighborhood Search løsningsmetode til MCGRPPC. Formelt kan MCGRP formuleres som det følgende grafteoretiske problem. MCGRP er deneret på en vægtet multigraf G = (N, E, A), hvor N = {0, . . . , n} betegner sættet af knuder, E = {(i, j) : i, j ⊆ N, i j} betegner sættet af ikke-orienterede kanter og A = {(i, j) : i, j ⊆ N, i = j} betegner sættet af orienterede kanter. Lad L = E ∪ A betegne sættet af kanter, hvor cij betegner en ikke-negativ traverseringsomkostning tilknyttet hver kant (i, j) ∈ L. Traverseringsomkostningen er lig 0 for hver knude i ∈ N, og brugen af lukkede kredsløb (i, i) er ikke tilladt, og deneres derfor cii = +∞ for i ∈ N. De tre delmængder NR ⊆ N, ER ⊆ E og AR ⊆ A betegner anmodninger fra henholdsvis knuder, ikke-orienterede kanter og orienterede kanter som har efterspørgsel. Lad LR = ER ∪ AR betegne delmængden af kanter med anmodninger og R = |NR| + |LR| betegne det totale antal anmodninger. Hver kant (i, j) ∈ L kan traverseres hvilket som helst antal gange og hver kant (i, j) ∈ LR skal serviceres én gang. Hver anmodning har tilknyttet en ikke-negativ efterspørgsel, qi ∈ NR og qij ∈ LR. Lad knude 0 ∈ N betegne depotet og K = {1, . . . , m} betegne en ubegrænset vognpark af homogene vogne med kapaciteten Q, som anvendes til at servicere anmodningerne. Vognparken er lokaliseret i depotknuden. For at sikre gennemførlighed antages det at qij ≤ Q for (i, j) ∈ LR og qi ≤ Q for i ∈ NR. Hver vogn udfører højest en rute, det vil sige, den starter i depotet, servicerer et antal anmodninger og slutter i depotet. En rute er gennemførlig når den aggregerede efterspørgsel på ruten ikke overstiger kapaciteten. Givet en delmængde S ⊂ N knuder, lad så ¯S betegne dets komplementære sæt ¯S ⊂ N S. For de orienterede kanter lad δ+ A(S) = {(i, j) ∈ A : i ∈ S ∧ j ∈ ¯S} betegne sættet som afgår fra S, lad δ− A (S) = {(i, j) ∈ A : i ∈ ¯S ∧ j ∈ S} betegne sættet som tilgår til S, lad δ+ AR (S) = {(i, j) ∈ AR : i ∈ S ∧ j ∈ ¯S} betegne sættet med anmodninger som afgår fra S, lad δ− AR (S) = {(i, j) ∈ AR : i ∈ ¯S ∧ j ∈ S} betegne sættet med anmodninger som tilgår til S. For de ikke-orienterede kanter lad δE(S) = {(i, j) ∈ E : i ∈ S ∧ j ∈ ¯S, or i ∈ ¯S ∧ j ∈ S} betegne sættet som er indfaldende i S, lad δER (S) = {(i, j) ∈ ER : i ∈ S ∧ j ∈ ¯S, or i ∈ ¯S ∧ j ∈ S} betegne sættet med anmodninger som er indfaldende i S. For kanter generelt lad δL(S) = δ+ A(S) ∪ δ− A (S) ∪ δE(S) betegne sættet af kanter som er indfaldende i S og lad δLR (S) = δ+ AR (S) ∪ δ− AR (S) ∪ δER (S) betegne sættet af kanter med anmodninger som er indfaldende i S. Når S = {v} forbliver den foregående notation gyldig så længe S er erstattet af v, og ¯S af ¯v, eller N {v}. Ydermere, lad SR = S ∩ NR betegne sættet af knuder med anmodninger tilhørende i S, lad AR(S) = {(i, j) ∈ AR : i ∈ S ∧ j ∈ S} betegne sættet af orienterede kanter med anmodninger tilhørende i S, lad ER(S) = {(i, j) ∈ ER : i ∈ S ∧ j ∈ S} betegne sættet af ikke-orienterede kanter med anmodninger tilhørende i S og lad R(S) = AR(S) ∪ ER(S) ∪ SR betegne sættet af elementer med anmodning i S. Ved anvendelse af heltalsprogrammering kan problemet matematisk opstilles som følger. Lad xk i og xk ij betegne binære variable, som er lig med 1 hvis henholdsvis knude i ∈ NR og kant (i, j) ∈ LR er serviceret af
  • 19. 12 KAPITEL 2. LITTERATURGENNEMGANG vogn k. Lad yk ij betegne en ikke-negativ variabel, som er lig med antallet af traverseringer uden service på kant (i, j) ∈ L af vogn k. min (i,j)∈E k∈K cij(yk ij + yk ji) + (i,j)∈A k∈K cijyk ij (2.1) k∈K xk i = 1 ∀ i ∈ NR (2.2) k∈K xk ij = 1 ∀ (i, j) ∈ AR (2.3) k∈K (xk ij + xk ji) = 1 ∀ (i, j) ∈ ER (2.4) i∈NR dixk i + (i,j)∈AR dijxk ij + (i,j)∈ER dij(xk ij + xk ji) ≤ Q ∀ k ∈ K (2.5) j:(i,j)∈δ+ AR (i) xk ij + j:(i,j)∈δ+ A(i) yk ij − j:(j,i)∈δ− AR (i) xk ji − j:(j,i)∈δ− A (i) yk ji = j:(i,j)∈δER (i) xk ji + j:(i,j)∈δ(i) yk ji − j:(i,j)∈δER (i) xk ij − j:(i,j)∈δ(i) yk ij ∀ i ∈ N, k ∈ K (2.6) (i,j)∈δ+ AR (S) xk ij + (j,i)∈δ− AR (S) xk ji + (i,j)∈δER (S) (xk ij + xk ji)+ (i,j)∈δ+ A(S) yk ij + (j,i)∈δ− A (S) yk ji + (i,j)∈δE (S) (yk ij + yk ji) ≥    2(xk uv + xk vu), 2xk uv, 2zk h, ∀ (u, v) ∈ ER(S) ∀ (u, v) ∈ AR(S) ∀ h ∈ SR (2.7) xk ij ∈ {0, 1} ∀ (i, j) ∈ LR, k ∈ K (2.8) xk ji ∈ {0, 1} ∀ (i, j) ∈ ER, k ∈ K (2.9) xk i ∈ {0, 1} ∀ i ∈ NR, k ∈ K (2.10) yk ij ∈ {0, 1} ∀ (i, j) ∈ LR, k ∈ K (2.11) yk ji ∈ {0, 1} ∀ (i, j) ∈ ER, k ∈ K (2.12) Hej Det skal noteres at de totale traverseringsomkostninger for kanter der serviceres (i, j) ∈ LR er konstant over alle gennemførlige løsninger og derfor er disse ikke inkluderet i objektfunktionen, således er det tilstrækkeligt at minimere de totale traverseringsomkostninger uden service. Objektfunktionen (2.1) minimerer de totale traverseringsomkostninger uden service. Betingelserne (2.2 - 2.4) sikrer at hver anmodning er serviceret nøjagtig en gang af en vogn, og betegnes som Assignment Constraint. Betingelse (2.5), og betegnes som Knapsack Constraint og sikrer en efterspørgselsbegrænsning pålagt af ka- paciteten på hver vogn. Betingelse (2.6) sikrer et symmetriforhold i hver knude, hvilket betegnes som Flow Constraint. En Connectivity Constraint (2.7) sikrer hver delmængde af knuder som indeholder en anmodning serviceret af en vogn, mindst skal have to kanter indfaldende i delmængden til at besøge den. Denne betingelse eliminerer også delture som ikke er forbundet med depotet. Betingelserne (2.8 - 2.12) sikrer denitionsmængden for beslutningsvariablene. 2.3 Beregningskompleksitet Problemer kan opdeles i to typer, medgørlige og umedgørlige. Et problem siges at være medgørligt når det kan løses af en eektiv algoritme, og umedgørlig når det ikke kan. En eektiv algoritme er deterministisk
  • 20. 2.3. BEREGNINGSKOMPLEKSITET 13 og beregningstiden er opad begrænset af et polynomium, og en ineektiv algoritme er ikke-deterministisk og beregningstiden vokser eksponentielt med størrelsen af inputtet. Problemer som kan løses eektivt siges at tilhøre kompleksitetsklassen P og problemer som ikke kan, siges at tilhøre kompleksitetsklassen NP. P problemer kan løses med en deterministisk algoritme i polynomiel tid, og NP problemer kan løses ved en ikke-deterministisk algoritme i polynomiel tid. Et problem X i kompleksitetsklassen NP siges at være NP-komplet hvis ethvert andet problem Y i kompleksitetsklassen NP kan reduceres til problem X med en eektiv algoritme. Det der gør NP-komplette problemer betydningsfulde er at hvis en eektiv algoritme kan ndes som løsningsmetode til et af dem, vil ethvert NP problem være løseligt deterministisk indenfor polynomiel tid. Et problem siges at være NP-hårdt når det er mere vanskeligt end NP-komplette problemer, dog tilhører et NP-hårdt problem ikke altid kompleksitetsklassen NP da problemet ikke nødvendigvis er et beslutningsproblem [33]. Sammenhængen mellem kompleksitetsklasserne når P = NP og P = NP er illustreret i gur 2.3. Figur 2.3: Grask repræsentation af kompleksitetsklasser og deres sammenhæng [33]. Ruteplanlægningsproblemerne CVRP, CARP og GRP er alle NP-hårde proble- mer, og da MCGRP er en generalisering af disse kan det udledes at MCGRP også er et NP-hårdt problem [84]. Der ndes to typer løsningsmetoder til ruteplanlæg- ningsproblemer, eksakte og approksimati- ve. Eksakte løsningsmetoder kan i mod- sætning til approksimative garanteret det globale optimum, dog er det kendt at de er begrænset til NP-hårde problemer af en moderat størrelse. Approksimative løs- ningsmetoder, som kan inddeles i klasserne klassiske heuristikker og metaheuristikker, er derfor ofte de foretrukne løsningsmetoder til NP-hårde problemer af en praktisk størrelse [43]. Det vurderes at størrelsen på det praktiske ruteplanlægningsproblem i den alternative ordning ikke er af moderat størrelse, derfor falder eksakte løsningsmetoder udenfor afgrænsningen af denne afhandling [11]. Klassiske heuristikker omfatter primært konstruktions- og forbedringsheuristikker, og blev overvejende ud- viklet mellem 1960 og 1990. Siden da er interessen for metaheuristikker vokset, og de er ofte den foretrukne løsningsmetode til NP-hårde problemer af en praktisk størrelse. Klassiske heuristikker foretager en relativ be- grænset undersøgelse af løsningsrummet, og producerer kvalitetsmæssigt gode løsninger indenfor en beskeden beregningstid. I metaheuristikker er der lagt vægt på at foretage en dyb undersøgelse af de mest lovende regio- ner af løsningsrummet, hvilket ofte involverer nabosøgningsregler, hukommelsesstrukturer og rekombination af løsninger. Kvaliteten af løsningerne fra metaheuristikker er meget bedre end løsningerne produceret af klassiske heuristikker, dog er omkostningen for forbedringen en stigning i beregningstiden [78]. Valget af fremgangsmåde bygger på en vurdering af hvilken type løsningsmetode der vil komme tættest på det globale optimum indenfor rimelig tid. Det vurderes at ruteplanlægningsproblemet i den alternative ordning kan løses mest optimalt ved anvendelse af approksimative algoritmer. Ydermere vurderes det at metaheuristikker vil kunne opnå en bedre løsningskvalitet indenfor rimelig tid i forhold til den aktuelle problemstilling. Derfor vælges klassen af metaheuristikker som udgangspunkt til løsning af den teoretiske ækvivalent til det praktiske ruteplanlægningsproblem for den alternative ordning, og derfor falder klassen af klassiske heuristikker udenfor denne afhandling.
  • 21. 14 KAPITEL 2. LITTERATURGENNEMGANG 2.4 Løsningsmetoder Mange optimeringsproblemer omhandler kongurationen af et sæt af variable med det formål at opfylde nogle mål. Optimeringsproblemer hvor løsningen er repræsenteret af diskrete variable klassiceres som kombinatoriske optimeringsproblemer, og er karakteriseret ved at der søges efter et objekt blandt et endeligt, men ofte meget stort antal muligheder. Et kombinatorisk optimeringsproblem P = (S, f) kan deneres som følgende: • Et sæt variable X = {x1, . . . , xn}, • Et sæt beslutningsvariable D1, . . . , Dn, • Betingelser mellem variablene, • En objektfunktion f som skal minimeres, Lad S = {s = {(x1, v1), . . . , (xn, vn)}|vi ∈ Di, s overholder alle betingelser} betegne løsningsrummet, hvor alle gennemførlige løsninger er indeholdt. Et kombinatorisk optimeringsproblem løses ved at nde det globale optimum s∗ ∈ S hvor objektfunktionen har den optimale, i dette tilfælde minimale, værdi, f(s∗ ) ≤ f(s), ∀s ∈ S [11]. Både CVRP, CARP, GRP og MCGRP er eksempler på kombinatoriske optimeringsproblemer, og der er grundet deres praktiske betydning udviklet mange algoritmer til at håndtere dem. Som nævnt i sektion 2.3, omhandler dette afsnit algoritmer i klassen af metaheuristikker, grundet det praktiske ruteplanlægningsproblem for den alternative ordning. Metaheuristikker er fundamentalt set en kombination af basale heuristiske metoder i en højere struktur som bestræber sig på eektivt at undersøge løsningsrummet, hvilket ofte involverer en form for lokalsøgning. Lokalsøgning begynder fra en initialløsning som iterativt ændres og erstatter den nuværende løsning med en bedre naboløsning fra en deneret nabolagsstruktur til den nuværende løsning. Nabolagsstrukturen er formelt deneret som en funktion N : S → 2S som tilknytter et sæt naboer N(s) ⊆ S til hver s ∈ S, hvor N(s) er betegnet som nabolaget til s. Denitionen af nabolagsstrukturen tillader at kunne denere lokale optimums som værende en nuværende løsning ˆs der ikke har en tilknyttet naboløsning af bedre kvalitet, ∀s ∈ N(ˆs) : f(ˆs) ≤ f(s). Ved anvendelse af pseudokode ses lokalsøgnings strategien i algoritme 1. s ← Initialløsning while Lokal Optimum = Falsk do s ← Forbedre(N(s)) end Algorithm 1: Pseudokode for lokalsøgning En lokalsøgning denerer en mange-til-en kortlæg- ning fra S til det mindre sæt S∗ = {s∗ } som betegner løsninger i lokale optimums. Sættet af løsninger s der er kortlagt til et lokalt optimum gennem lokalsøgnin- gen betegnes som Basin of Attraction til det lokale optimum [27]. Det lokale optimum vil altid være på bunden af det tilknyttede Basin of Attraction. Betegnelsen metaheuristik blev introduceret af Glover [36] i 1986, og er aedt af sammensætningen af to græske ord. Heuristik er aedt fra udsagnsordet heuriskein som betyder at nde, mens tillægsordet meta betyder hensides, på et højere niveau. Selvom denne betegnelse er meget passende, refereres metaheuristikker også til i litteraturen som Modern Heuristics. Metaheuristikker er karakteriseret ved, at de har højniveau strategier for hvordan en søgeproces til at ge- nerere næroptimale eller optimale løsninger i løsningsrummet udføres eektivt. Strategierne har inkorporeret mekanismer som undgår at algoritmen bliver fanget i et lokalt optimum i løsningsrummet. Der ndes adskillige måder at dierentiere og derved klassicere metaheuristikker på. I denne afhandling klassiceres metaheuristik- ker som enten banebaserede eller populationsbaserede, og dierentieres ved antallet af midlertidige løsninger der anvendes i hvert trin af algoritmen. De Banebaserede metaheuristikker behandler én midlertidig løsning ad
  • 22. 2.4. LØSNINGSMETODER 15 gangen, og derfor er denne hurtig til at nde et lokalt optimum. Klassen refereres også til som udnyttelsesoriente- rede metaheuristikker da de intensiverer søgningen i løsningsrummet. De populationsbaserede metaheuristikker behandler ere midlertidige løsninger ad gangen, og derfor tager de længere tid om at nde et lokalt opti- mum. Klassen refereres også til som udforskningsorienterede metaheuristikker da de diversicerer søgningen i løsningsrummet. 2.4.1 Banebaserede Metaheuristikker Denne sektion beskriver de banebaserede metaheuristikker der er vurderet som de mest betydningsfulde in- denfor klassen. Klassen af metaheuristikker betegnes som banebaserede da søgeprocessen danner en bane i løsningsrummet. 2.4.1.1 Simulated Annealing SA blev deneret af Kirkpatrick et al. [50] i 1983. I 1993 foreslog Osman [62] en SA algoritme til løsning af CVRP hvor nabolagsstrukturen anvender op til λ udvekslinger af noder mellem to ruter [1]. Wøhlk [80] forslog i 2005 en SA algoritme til løsning af CARP hvor rækkefølgen af kanterne på en Giant Tour ændres i løbet af algoritmen, og den optimale opdeling af ruten beregnes i hvert trin af algoritmen [82]. Algoritmen begynder ved at generere en initialløsning og initialisere temperaturparameteren T. Initialløs- ningen genereres enten tilfældigt eller ved anvendelse af en konstruktionsheuristik. Herefter itererer algoritmen indtil en afslutningsbetingelse er sand, dette kan være den maksimale CPU tid, et maksimalt antal iterationer, en nuværende løsning s med f(s) som er mindre end en predeneret grænseværdi eller et maksimalt antal ite- rationer uden en forbedring. Hver iteration består af en tilfældig udvælgelse af en naboløsning s i nabolaget til den nuværende løsning N(s). Den valgte naboløsning s erstatter den nuværende løsning s når f(s ) f(s) eller med en sandsynlighed som følger en Boltzmann fordeling exp(−f(s −f(s)) T ) når f(s ) ≥ f(s). Når en naboløs- ning af ringere kvalitet erstatter den nuværende løsning betegnes det som Hill Climbing hvilket anvendes til at undslippe det lokale optimums Basin of Attraction. Temperaturen T reduceres gennem søgeprocessen, således vil algoritmen i begyndelsesfasen være diversicerende og i afslutningsfasen være intensiverende. Ved anvendelse af pseudokodning ses SA strategien i algoritme 2. s ← Initialløsning T ← T0 while Afslut = Falsk do s ← Tilfældig N(s) if f(s ) f(s) then s ← s else if P(T, f(s ), f(s)) rand[0,1] then s ← s end Opdater T end Algorithm 2: Pseudokode for SA Valget af en passende kølingsrate er afgørende for præstationen af algoritmen. Kølingsplanen er dene- ret som værdien af T i hver iteration k, Tk+1 = Q(Tk, k), hvor Q(Tk, k) er en funktion af tempera- turen og antallet af iterationer. Kølingsplanen skal tilpasses det kombinatoriske optimeringsproblem så- ledes at der er en balance mellem diversicering og intensivering i søgeprocessen. 2.4.1.2 Tabu Search Tabu Search (TS) blev deneret af Glover et al. [36] i 1986. I 1993 foreslog Taillard [75] den første simple implementering af TS til CVRP, som stadig er en af de mest eektive [1]. Hertz et al. [41] forslog i 2000 en TS algoritme kaldet CARPET hvor ugennemførlige løsninger er tilladte, men straet i objektfunktionen. Selv i dag er denne en af de bedst præsterende algoritmer til CARP [82]. Algoritmen anvender lokalsøgning og korttidshukommelse som grundelementer. Lokalsøgningen betegnes Best Improvement og anvender korttidshukommelsen til at undslippe lokale optimums og undgå løsnings- kredsløb. Korttidshukommelsen betegnes Tabu List og indeholder nyligt besøgte løsninger og forbyder træk
  • 23. 16 KAPITEL 2. LITTERATURGENNEMGANG mod dem. Dermed er nabolaget til den nuværende løsning N(s) begrænset til naboløsninger s som ikke er indeholdt i Tabu List. s ← Initialløsning Tabu List ← ∅ while Afslut = Falsk do s ← BedstAf N(s) ∈ TabuList Opdater(TabuList) end Algorithm 3: Pseudokode for TS TS begynder ved at generere en initialløsning og initialisere Tabu List. Herefter itererer algoritmen ind- til en afslutningsbetingelse er sand eller hvis Tabu List indeholder alle naboløsninger til den nuværende løs- ning. I hver iteration erstattes den nuværende løsning af den bedste naboløsning, ligeledes erstattes den tid- ligst indkomne løsning i Tabu List også af den bedste naboløsning. Da den nuværende løsning erstattes af den bedste naboløsning, vil den i lokal optimum ac- ceptere naboløsninger af ringere kvalitet. På den måde undslipper algoritmen det lokale optimums Basin of Attraction ved anvendelse af Hill-Climbing. TS strategien ses i algoritme 3. Længden af tabulisten kontrollerer hukommelsen i søgeprocessen. En større hukommelse diversicerer søg- ningen ved at undersøge et stort område, mens en kortere hukommelse intensiverer søgningen ved at undersøge et mindre område. Ved at lade længden af Tabu List være dynamisk, kan algoritmen blive mere robust, f.eks. ved at øge længden af Tabu List når der er tegn på gentagelser af løsninger, og mindske længden af Tabu List når der ikke er forbedringer. 2.4.1.3 Greedy Randomized Adaptive Search Procedure Greedy Randomized Adaptive Search Procedure (GRASP) blev deneret af Feo et al. [56] i 1995. I 2003 foreslog Baker et al. [7] en GRASP til løsning af CVRP med en grask brugergrænseade. Brugeren har i denne kontrol over løsningsforslagene, og kan derved sikre at de er anvendelige i praksis [1]. Labadi et al. [54] foreslog i 2007 en GRASP with Path Relinking til løsning af CARP med tidsvinduer. s ← ∅ α ← LængdeRCL while LøsningKomplet = Falsk do RCLα ← GenererRCL(s) x ← TilfældigtElement(RCLα) s ← s ∪ {x} OpdaterGrådighedsfunktion(s) end Algorithm 4: Pseudokode for løsnings- konstruktion i GRASP GRASP anvender perturbation og lokalsøgning som grund- elementer til henholdsvis at konstruere løsninger og forbedre løs- ninger. Perturbation anvendes til at undslippe lokale optimums ved at springe fra et Basin of Attraction til et andet. Algoritmen fortsætter indtil en afslutningsbetingelse er sand, hvorefter den bedste løsning returneres. I hver iteration gennemgås to faser; løsningskonstruktion og løsningsforbedring. Løsningskonstruktio- nen er karakteriseret ved en dynamisk konstruktionsheuristik og tilfældighed. Under antagelse af at den nuværende løsning s be- står af en delmængde af løsningselementer, bliver den nuværende løsning s konstrueret ved at tilføje et nyt element ad gangen. Elementet som skal tilføjes er valgt tilfældigt fra en kandidatliste, Restricted Candidate List (RCL), bestående af de α bedste elementer. Elementerne i RCL er rangeret efter en score som er et udtryk for fordelen ved at indsætte elementet i s. En dynamisk konstruktionsheuristik angiver at scoren for de resterende elementer opda- teres løbende afhængigt af hvilke elementer der indsættes og på hvilket tidspunkt. Løsningskonstruktionen fra GRASP strategien ses i algoritme 4. while Afslut = Falsk do s ← KonstruerLøsning() AnvendLokalSøgning(s) HuskBedstFundneLøsning() end Algorithm 5: Pseudokode for GRASP Løsningsforbedringen er karakteriseret ved en lo- kalsøgning, som f.eks. kan være en forbedringsheuri- stik, eller løsningsmetoder som f.eks. SA fra sek- tion 2.4.1.1 og TS fra sektion 2.4.1.2. GRASP stra- tegien kan ses i algoritme 5.
  • 24. 2.4. LØSNINGSMETODER 17 2.4.1.4 Variable Neigborhood Search Variable Neighborhood Search (VNS) blev deneret af Mladenovic et al. [58] i 1999. I 2003 foreslog Bräysy [13] en reaktiv Variable Neighborhood Search til CVRPTW. VNS anvender perturbation og lokalsøgning som grundelementer, og begynder med at udvælge et sæt af nabolagsstrukturer Nk. Dernæst genereres en initialløsning og algoritmen itereres indtil en afslutningsbetingelsen er sand. Hver iteration består af tre faser; shaking, lokalsøgning og move. Variable Neighborhood Search strategien kan ses i algoritme 6. VælgSættetAfNabolagsstrukturer Nk s ← Initialløsning while Afslut = Falsk do k ← 1 while k kmaks do s ← VælgTilfælig(Nk(s)) s ← LokalSøgning(s ) if f(s ) f(s) then s ← s k ← 1 else k ← k + 1 end end end Algorithm 6: Pseudokode for Variable Neighborhood Search Ved shaking er naboløsning s tilfældigt valgt i nabolaget k til den nuværende løsning Nk(s). Lokalsøgningen begynder fra naboløsningen s og kan anvende alle nabolagsstrukturer. Den er der- for ikke begrænset til sættet Nk. Når afslut- ningsbetingelsen for lokalsøgningen er opfyldt er- statter løsningen fra lokalsøgningen s den nu- værende løsning s hvis den er af bedre kvali- tet. Såfremt dette ikke er tilfældet, øges k og en ny rystefase begynder i et nyt naboområde. Formålet med rystefasen er at give lokalsøgnin- gen en god startløsning, og valget af nyt nabo- lag i tilfælde af en ringe løsningskvalitet i lokal- søgning er anvendt for at diversicere søgeprocedu- ren. 2.4.1.5 Guided Local Search Guided Local Search (GLS) blev deneret af Voudouris et al. [79] i 1996, og i 1997 foreslog Kilby et al. [66] en GLS til løsning af CVRPTW, som i sin samtid leverede fremragende resultater. Buellens et al. [10] udvidede i 2003 GLS til CARP, hvor distancen af hver kant straes i forhold til en funktion som tilpasses gennem algoritmen. GLS anvender en strafbaseret tilgang som ændrer på løsningsrummet, kombineret med en lokalsøgning. Ved at ændre på objektfunktionen f, ændres landskabet i løsningsrummet, og lokalsøgningen kan på den måde hjælpes væk fra lokale optimums uden at anvende Hill-Climbing eller Perturbation. I GLS anvendes elementer der kan dierentiere mellem løsninger, og derefter anvendes funktionen (2.13) til at indikere om løsningselement i er repræsenteret i den nuværende løsning s. Ii(s) =    1 : Element i er repræsenteret s 0 : Element i er ikke repræsenteret s (2.13) Den oprindelige objektfunktion f er modiceret således at den modicerede objektfunktion (2.14) er afhængig af m elementer, hvor pi betegner strafparametre og λ betegner en reguleringsparameter. Strafparametrene vægter betydningen af elementer, således at elementet har høj betydning ved en høj pi og det giver dermed en højere omkostning at have elementet i løsningen. Reguleringsparametren balancerer elementernes relevans i forhold til objektfunktionen f. indikere om løsningselement i er repræsenteret i den nuværende løsning s. f (s) = f(s) + λ m i=1 piIi(s) (2.14)
  • 25. 18 KAPITEL 2. LITTERATURGENNEMGANG s ← Initialløsning while Afslut = Falsk do s ← Lokalsøgning(s, f ) for elementer med høj nytteværdi Util(s, i) do pi ← pi + 1 end Opdater(f , p) end Algorithm 7: Pseudokode for GLS Algoritmen starter ved at generere en initialløs- ning og itererer så indtil en afslutningsbetingelse er sand. Hver iteration anvender lokalsøgning indtil et lokalt optimum er nået. Herefter opdateres vektoren med strafparametre p = (p1, . . . , pm) ved at øge straf- parameter pi hvis elementet har en høj nytteværdi i den nuværende løsning. GLS strategien kan ses i al- goritme 7. Der er tilknyttet en omkostning ci til hvert element i, som betegner betydningen i forhold til de andre elementer i løsningen. En høj omkostning medfører en høj nytteværdi (2.15), og omkostningen er skaleret af strafparametrene for at forhindre at omkostningen påvirker algoritmen for meget. Util(s, i) = II(s) ci 1 + pi (2.15) 2.4.1.6 Iterated Local Search Iterated Local Search er blevet beskrevet af mange forskellige forfattere, og derfor er det svært at denere hvem der oprindeligt denerede Iterated Local Search (ILS). Algoritmen er en af de mest anvendte strategier, og anvendes ofte som struktur for andre metaheuristikker eller implementeres som en komponent. Lokalsøgning og perturbation er grundelementer i algoritmen. s ← Initialløsning s ← Lokalsøgning(s) while Afslut = Falsk do s ← Perturbation(s , Historik) s ← Lokalsøgning(s ) s ← AcceptKriterie(s , s , Historik) end Algorithm 8: Pseudokode for Iterated Lo- cal Search ILS genererer en initialløsning s og anvender lokalsøgning på denne indtil en naboløsning s i et lokalt optimum er nået. I al- goritmen indgår tre faser i hver iteration der fortsætter indtil en afslutningsbetingelse er opfyldt. Den første fase er en pertur- bation, den anden fase er en lokalsøgning og den tredje fase er et accept kriterie der bestemmer om løsninger skal accepteres. Accept kriteriet kan fungere ved at acceptere løsninger af bedre kvalitet, ved altid at acceptere nye løsninger, eller en mellemting som i SA fra sektion 2.4.1.1. På den måde kan accept kriteriet fungere som en modvægt til perturbation da den giver feedback omkring det nyligt opnåede lokale optimum. ILS strategien ses i algoritme 8. 2.4.1.7 Large Neighborhood Search s ← Initialløsning s∗ ← s while Afslut = Falsk do s ← r(d(s)) s ← AcceptKriterie(s , s) s∗ ← AcceptKriterie(s, s∗ ) end Algorithm 9: Pseudokode for Large Neig- hborhood Search Large Neighborhood Search (LNS) blev deneret af Shaw [74] i 1999. Algoritmen tilhører en klasse af metaheuristikker som søger i store nabolag for at nde bedre optimums end dem der ville være blevet fundet ved søgning i mindre nabolag. Algoritmen begynder ved at generere en initialløsning s som også tildeles som den bedste løsning hidtil. Herefter itererer al- goritmen indtil en afslutningsbetingelse er sand. I hver iteration anvendes en destroy funktion og en repair funktion til at opnå en naboløsning s . Destroy funktionen returnerer en delvis ødelagt løsning fra den nuværende løsning s, og repair funktionen reparerer den delvist ødelagte løsning til nabo- løsningen s . Herefter erstatter naboløsningen den nuværende løsning hvis accept kriteriet er opfyldt, og den nuværende løsning erstatter den bedste løsning hvis kvaliteten er bedre [66]. Strategien for LNS ses i algoritme 9.
  • 26. 2.4. LØSNINGSMETODER 19 2.4.2 Populationsbaserede Metaheuristikker Denne sektion beskriver de populationsbaserede metaheuristikker, og de inkluderede algoritmer vurderes som de mest betydningsfulde indenfor klassen. Klassen af metaheuristikker betegnes som populationsbaseret da søgeprocessen er karakteriseret ved at behandle en population af løsninger i stedet for en enkel løsning i hver iteration. 2.4.2.1 Evolutionary Computation Evolutionary Computation (EC) er algoritmer som er inspireret af naturens evne til at udvikle dyr som er godt tilpasset til deres omgivelser. Disse algoritmer kan karakteriseres som modeller af en evolutionær proces. Ved hver iteration anvendes et antal operationer på individer i den nuværende population for at generere individer til næste generations population. Til at frembringe nye individer kombineres to eller ere individer ofte ved anvendelse af operationerne recombination eller crossover. Til at tilpasse det enkelte individ anvendes ofte operationerne mutation og modication. Drivkraften i disse algoritmer er udvælgelsen af individer baseret på deres egnethed i populationen, hvilket svarer til deres bidrag til objektfunktionen i den nuværende løsning. Individer med en høj egnethed beholdes ofte som medlemmer af populationen i den næste generation. Overordnet set ndes der tre kategorier af EC algoritmer, Evolutionary Programming, Evolutionary Stra- tegies og Genetic Algorithms (GA). GA er de mest brugte til kombinatoriske optimeringsproblemer, men den fundamentale struktur af de tre kategorier er ens. P ← Initialpopulation Evaluer(P) while Afslut = Falsk do P ← Rekombiner(P) P ← Mutere(P ) Evaluer(P ) P ← Vælg(P ∪ P) end Algorithm 10: Pseudokode for Evolutionary Com- putation GA blev deneret af Holland [42] i 1975, og Ba- ker et al. [6] foreslog i 2003 GA til CVRP. Fleury et al. [32] foreslog i 2004 en Memetic Algorithm (MA) til et stokastisk CARP, hvilket resulterede i robuste løs- ninger uden signikant øgede omkostninger i forhold til det tilsvarende deterministiske CARP. En MA er en udvidelse af den traditionelle GA, men kategorise- res under GA. Algoritmen starter ved at generere en initialpopu- lation P som evalueres. Operationerne recombination og mutation generer et afkom. Herefter evalueres den nuværende population og den næste generations population er valgt som en kombination af den nuværende population og afkommet. EC strategien ses i algoritme 10. 2.4.2.2 Ant Colony Optimization Inspirationskilden til Ant Colony Optimization (ACO) er fourageringsadfærden blandt myrer, som gør det muligt at nde den korteste vej mellem fødekilden og deres myretue. Mens de vandrer mellem fødekilden og myretuen udskiller myren et duftstof på vejen. Når de skal afgøre hvilken retning er bedst, vælger de den retning som er markeret med den højeste koncentration af duftstof. Denne adfærd er fundamentet for et fælles samarbejde som fører til den korteste vej. ACO er baseret på en parametriseret probabilistisk model, the Pheromone Model, som bruges til at modellere kemiske duftstofspor. Kunstige myrer konstruerer trinvist en løsning ved at tilføje løsningselementer til løsningen. Dette gøres ved at de kunstige myrer følger en tilfældig vej på en komplet graf G = (N, E) hvor knuder er betegnet som løsningselementerne N og kanterne er betegnet som løsningselementerne E. Hver komponent har tilknyttet et duftstofspor, hvor sættet af duftstofspor er betegnet T. Yderligere er der tilknyttet en heuristisk værdi H til hver komponent som repræsenterer en erfaring om problemet. H anvendes af de kunstige myrer til at tage probabilistiske beslutninger om retningen. Sættet af kunstige myrer betegnes A, hvor hver løsning konstrueret af en myre betegnes sa.
  • 27. 20 KAPITEL 2. LITTERATURGENNEMGANG Initialiser(T) while Afslut = Falsk do for a ∈ A do sa ← KonstruktionsLøsning(T, H) end Opdater(T, {sa|a ∈ A}) end Algorithm 11: Pseudokode for Ant Colony Optimiza- tion I 1975 denerede Dorigo [26] ACO og Bullnheimer et al. [14] udvidede i 1999 den til VRP. Lacomme et al. [53] foreslog i 2004 ACO til CARP som resultat- mæssigt var konkurrencedygtig, dog ikke beregnings- mæssigt. Algoritmen begynder ved at initialisere sættet med duftstofsspor T med meget små værdier. I hver gentagelse konstruerer hver kunstig myre en løsning, anvendes til at opdatere T. Dette gentages indtil en afslutningsbetingelse er opfyldt. I algoritme 11 ses ACO strategien.
  • 28. Kapitel 3 Anvendt Teori Dette kapitel redegør for den teori der er anvendt til at løse problemstillingen. Der er lagt vægt på en dyb redegørelse af den anvendte teori, da formålet med dette kapitel er at vise en dyb forståelse for løsningsmodellen og -metoden. Sektion 3.1 redegør for den anvendte løsningsmodel The Periodic Distance-Constrained MCGRP with Pro- babilistic Constraints (PDCMCGRPPC) der betegner den teoretiske ækvivalent til det praktiske ruteplan- lægningsproblem for den alternative ordning. Selve udledningen af den anvendte løsningsmodel kræver ere generaliseringer af MCGRP, som der redegøres for inden beskrivelsen af PDMCGRPPC. I sektion 3.2 redegø- res der for aggregeringsmetoden, Topology Aggregation, som anvendes på datagrundlaget med det resultat at løsningsmodellen skal modelleres indenfor klassen GRP. Sektion 3.3 redegør for den anvendte løsningsmetode, den hybride metaheuristik Adaptive Iterated Local Search (AILS). Motivationen for anvendelse af netop denne løsningsmetoden er baseret på at den har givet rigtig gode resultater på 5 benchmarktilfældene til MCGRP, 4 benchmarktilfældene til CVRP og 7 standard tilfælde til CARP [24]. 3.1 Mixed Capacitated General Routing Problem I denne sektion redegøres der for 4 løsningsmodeller som er generaliseringer af MCGRP. I sektion 3.1.1 - 3.1.3 præsenteres Distance-Constrained MCGRP (DCMCGRP), MCGRP with Probabilistic Constraints (MCGRP- PC) og Periodic MCGRP (PMCGRP). I sektion 3.1.4 præsenteres den anvendte løsningsmodel The Periodic Distance-Constrained MCGRP with Probabilistic Constraints (PDCMCGRPPC) som er en generalisering af de tre forgående løsningsmodeller. Da den videnskabelige litteratur ikke omfatter generaliseringerne DMCGRP, PMCGRP og PDCMCGRPPC er det grafteoretiske problem og heltalsprogrammeringsformuleringen frembragt ved egen udvikling. I sektionerne som omhandler disse generaliseringer refereres der ikke til videnskabelig litteratur, men der henvises til at generaliseringernes ækvivalente indenfor CVRP [34, 55, 78], CARP [16, 28, 82] samt MCGRP [9, 24] er anvendt som inspiration til denne udledning. 3.1.1 Distance-Constrained MCGRP DMCGRP er en generalisering af MCGRP hvor hver rute har en afstandsbegrænsning som kan måles i enten distance eller tid, det følger derfor at dette tilføjes til det grafteoretiske problem og heltalsprogrammeringsfor- muleringen præsenteret i sektion 2.2.4. Lad tij betegne en ikke-negativ traverseringsafstand tilknyttet hver kant (i, j) ∈ L, og T betegne den maksimale afstand på en rute. Lad si for i ∈ NR og sij for (i, j) ∈ LR betegne servi- ceringstiden på henholdsvis knuder og kanter når traverseringsafstanden T måles i tid, og traverseringsafstanden tij for (i, j) ∈ LR er aggregeret ind i servicetiden sij. Generelt er traverseringsomkostningen og traverseringsaf- standen sammenfaldende, dvs. cij = tij for (i, j) ∈ L, hvorved objektet er at minimere traverseringsafstanden. 21
  • 29. 22 KAPITEL 3. ANVENDT TEORI i∈NR sixk i + (i,j)∈AR sijxk ij + (i,j)∈ER sij(xk ij + xk ji)+ i∈N tiyk i + (i,j)∈A tijyk ij + (i,j)∈E tij(yk ij + yk ji) ≤ T ∀ k ∈ K (3.1) Betingelse (3.1) sikrer en afstandsbegrænsning på hver vogn. 3.1.2 MCGRP with Probabilistic Constraints MCGRPPC er en generalisering af MCGRP hvor efterspørgslen er stokastisk hvilket naturligt påvirker betingelse (2.5) [9]. Følgende tilføjes til det grafteoretiske problem og heltalsprogrammeringensformuleringen; lad di(ω) og dij(ω) betegne den stokastiske efterspørgsel som følger en normalfordeling for henholdsvis knude i ∈ NR og kant (i, j) ∈ LR og lad α betegne signikansniveauet som skal overholdes for ikke at forkaste rutens gennemførlighed. P( i∈NR di(ω)xk i + (i,j)∈AR dij(ω)xk ij + (i,j)∈ER dij(ω)(xk ij + xk ji) ≤ Q) ≥ α ∀ k ∈ K (3.2) Betingelse (3.2) sikrer at sandsynligheden for ikke at overstige efterspørgselsbegrænsningen pålagt af kapa- citeten på hver vogn er større end det valgte signikansniveau. 3.1.3 The Periodic MCGRP PMCGRP er en generalisering af MCGRP hvor en tidshorisont bestående af perioder er inddraget sådan at knuder og kanter kan anmode om service i en eller ere perioder. Følgende tilføjes til det grafteoretiske problem; lad P = {1, . . . , p} betegne planlægningshorisonten. Lad Fi = {1, . . . , f} for i ∈ NR og Fij = {1, . . . , f} for (i, j) ∈ LR betegne et sæt af servicekombinationer for henholdsvis knuder og kanter, hvor en servicekombina- tionen implicit indeholder antallet af anmodninger i planlægningshorisonten P. Matematisk kan problemet, ved brug af heltalsprogrammeringsformulering, opstilles som følger; lad xkfp i og xkfp ij betegne binære variable, som er lig med 1 hvis henholdsvis knude i ∈ NR og kant (i, j) ∈ LR er serviceret af vogn k i periode p over servicekombination f ∈ Fi og f ∈ Fij. Lad ykp ij betegne en ikke-negativ variabel, som er lig med antallet af traverseringer uden service på kant (i, j) ∈ L af vogn k i periode p. Lad zf i og zf ij betegne binære variable, som er lig med 1 hvis henholdsvis knude i ∈ NR og kant (i, j) ∈ LR anvender servicekombination f ∈ Fi og f ∈ Fij. Servicekombinationer er indekseret fra 1 til f og deneret ved matricen A, hvor Afp = 1 når servicekombination f anvendes i periode p. min (i,j)∈E k∈K p∈P cij(ykp ij + ykp ji ) + (i,j)∈A k∈K p∈P cijykp ij (3.3) f∈Fi zf i = 1 ∀ i ∈ NR (3.4) f∈Fij zf ij = 1 ∀ (i, j) ∈ LR (3.5) k∈K xkfp i = Afp zf i ∀ i ∈ NR, f ∈ Fi, p ∈ P (3.6) k∈K xkfp ij = Afp zf ij ∀ (i, j) ∈ AR, f ∈ Fi, p ∈ P (3.7) k∈K (xkfp ij + xkfp ji ) = Afp zf ij ∀ (i, j) ∈ ER, f ∈ Fi, p ∈ P (3.8)
  • 30. 3.1. MIXED CAPACITATED GENERAL ROUTING PROBLEM 23 i∈NRf∈Fi dixkfp i+ (i,j)∈ARf∈Fij dijxkfp ij+ (i,j)∈ERf∈Fij dij(xkfp ij+xkfp ji)≤Q∀p∈P,k∈K(3.9) j:(i,j)∈δ+ AR (i) xkfp ij+ j:(i,j)∈δ+ A(i) ykp ij− j:(j,i)∈δ− AR (i) xkfp ji− j:(j,i)∈δ− A(i) ykp ji= j:(i,j)∈δER (i) xkfp ji+ j:(i,j)∈δ(i) ykp ji− j:(i,j)∈δER (i) xkfp ij− j:(i,j)∈δ(i) ykp ij∀i∈N,f∈Fi,p∈P,k∈K(3.10) (i,j)∈δ+ AR (S) xkfp ij+ (j,i)∈δ− AR (S) xkfp ji+ (i,j)∈δER (S) (xkfp ij+xkfp ji)+ (i,j)∈δ+ A(S) ykfp ij+ (j,i)∈δ− A(S) ykfp ji+ (i,j)∈δE(S) (ykfp ij+ykfp ji)≥    2(xkfp uv+xkfp vu), 2xkfp uv, 2zkfp h, ∀(u,v)∈ER(S),f∈Fi,p∈P,k∈K ∀(u,v)∈AR(S),f∈Fi,p∈P,k∈K ∀h∈SR,f∈Fi,p∈P,k∈K (3.11) xkfp ij∈{0,1}∀(i,j)∈LR,f∈Fi,p∈P,k∈K(3.12) xkfp ji∈{0,1}∀(i,j)∈ER,f∈Fi,p∈P,k∈K(3.13) xkfp i∈{0,1}∀i∈NR,f∈Fi,p∈P,k∈K(3.14) ykp ij∈Z+∀(i,j)∈L,p∈P,k∈K(3.15) ykp ji∈Z+∀(i,j)∈E,p∈P,k∈K(3.16) zf ji∈{0,1}∀(i,j)∈LR,f∈Fi(3.17) zf i∈{0,1}∀i∈NR,f∈Fi(3.18)
  • 31. 24 KAPITEL 3. ANVENDT TEORI Objektfunktionen (3.3) minimerer de totale traverseringsomkostninger uden service. Betingelserne (3.4 - 3.5) sikrer at hver anmodning er tilknyttet nøjagtig én servicekombination, hvor betingelserne (3.6 - 3.9), som betegnes Assignment Constraints, sikrer at anmodningerne er serviceret i forhold til den tilknyttede servicekom- bination. Betingelse (3.9) sikrer en efterspørgselsbegrænsning pålagt af kapaciteten på hver vogn, og betegnes som Knapsack Constraint. Betingelse (3.10) sikrer et symmetriforhold i hver knude, og betegnet som Flow Con- straint. En Connectivity Constraint (3.11) sikrer at hver delmængde af knuder som indeholder en anmodning serviceret af en vogn, skal have mindst to kanter indfaldende i delmængden til at besøge den. Denne betingelse eliminerer også delture som ikke er forbundet med depotet. Betingelserne (3.12 - 3.18) sikrer denitionsmængden for beslutningsvariablene. 3.1.4 The Periodic Distance-Constrained MCGRP with Probabilistic Constraints PDCMCGRPPC er en generalisering af DCMCGRP, MCGRPPC og PMCGRP som blev præsenteret i sek- tion 3.1.1 - 3.1.3. Denne generalisering medtager det fundamentale fra MCGRP og tilføjer afstandsbegrænsning, stokastisk efterspørgsel og periodisering, og anvendes som den teoretiske ækvivalent til det praktiske ruteplan- lægningsproblem for den alternative ordning beskrevet i sektion 2.1. Matematisk kan problemet, ved brug af heltalsprogrammeringsformulering, opstilles som følger; lad xkfp i og xkfp ij betegne binære variable, som er lig med 1 hvis henholdsvis knude i ∈ NR og kant (i, j) ∈ LR er serviceret af vogn k i periode p over servicekombination f ∈ Fi og f ∈ Fij. Lad ykp ij betegne en ikke-negativ variabel, som er lig med antallet af traverseringer uden service på kant (i, j) ∈ L af vogn k i periode p. Lad zf i og zf ij betegne binære variable, som er lig med 1 hvis henholdsvis knude i ∈ NR og kant (i, j) ∈ LR anvender servicekombination f ∈ Fi og f ∈ Fij. Servicekombinationer er indekseret fra 1 til f og deneret ved matricen A, hvor Afp = 1 når servicekombination f anvendes i periode p. min (i,j)∈E k∈K p∈P cij(ykp ij + ykp ji ) + (i,j)∈A k∈K p∈P cijykp ij (3.19) f∈Fi zf i = 1 ∀ i ∈ NR (3.20) f∈Fij zf ij = 1 ∀ (i, j) ∈ LR (3.21) k∈K xkfp i = Afp zf i ∀ i ∈ NR, f ∈ Fi, p ∈ P (3.22) k∈K xkfp ij = Afp zf ij ∀ (i, j) ∈ AR, f ∈ Fi, p ∈ P (3.23) k∈K (xkfp ij + xkfp ji ) = Afp zf ij ∀ (i, j) ∈ ER, f ∈ Fi, p ∈ P (3.24) Denitionen af objektfunktionen (3.19) og betingelserne (3.20 - 3.28) kan ndes i de foregående sektioner, og gentages derfor ikke her. 3.2 Topology Aggregation I ruteplanlægningsproblemer, som f.eks. indsamling af aald, hvor det praktiske ruteplanlægningsproblem ofte betegnes som Large Scale, er det en udfordring for selv de bedste algoritmer at generere løsninger af rimelig kva- litet. Afstandsmatricen kan i disse tilfælde være så stor at computerens tilgængelige korttidshukommelse (RAM) ikke kan indeholde dataene, hvilket er strengt nødvendigt for at computerens beregner (Processor) eektivt kan tilgå disse. Operatorerne bliver ligeledes langsommere i takt med at problemstørrelsen øges, hvilket naturligt giver en lavere løsningskvalitet da færre løsninger vil blive overvejet indenfor den tilgængelige beregningstid.
  • 32. 3.2. TOPOLOGY AGGREGATION 25 P( i∈NRf∈Fi dixkfp i+ (i,j)∈ARf∈Fij dijxkfp ij+ (i,j)∈ERf∈Fij dij(xkfp ij+xkfp ji)≤Q)≥α∀p∈P,k∈K(3.25) i∈NR sixkfp i+ (i,j)∈AR sijxkfp ij+ (i,j)∈ER sij(xkfp ij+xkfp ji)+ i∈N tiykp i+ (i,j)∈A tijykp ij+ (i,j)∈E tij(ykp ij+ykp ji)≤T∀p∈P,k∈K(3.26) j:(i,j)∈δ+ AR (i) xkfp ij+ j:(i,j)∈δ+ A(i) ykp ij− j:(j,i)∈δ− AR (i) xkfp ji− j:(j,i)∈δ− A(i) ykp ji= j:(i,j)∈δER (i) xkfp ji+ j:(i,j)∈δ(i) ykp ji− j:(i,j)∈δER (i) xkfp ij− j:(i,j)∈δ(i) ykp ij∀i∈N,f∈Fi,p∈P,k∈K(3.27) (i,j)∈δ+ AR (S) xkfp ij+ (j,i)∈δ− AR (S) xkfp ji+ (i,j)∈δER (S) (xkfp ij+xkfp ji)+ (i,j)∈δ+ A(S) ykfp ij+ (j,i)∈δ− A(S) ykfp ji+ (i,j)∈δE(S) (ykfp ij+ykfp ji)≥    2(xkfp uv+xkfp vu), 2xkfp uv, 2zkfp h, ∀(u,v)∈ER(S),f∈Fi,p∈P,k∈K ∀(u,v)∈AR(S),f∈Fi,p∈P,k∈K ∀h∈SR,f∈Fi,p∈P,k∈K (3.28) xkfp ij∈{0,1}∀(i,j)∈LR,f∈Fi,p∈P,k∈K(3.29) xkfp ji∈{0,1}∀(i,j)∈ER,f∈Fi,p∈P,k∈K(3.30) xkfp i∈{0,1}∀i∈NR,f∈Fi,p∈P,k∈K(3.31) ykp ij∈Z+∀(i,j)∈L,p∈P,k∈K(3.32) ykp ji∈Z+∀(i,j)∈E,p∈P,k∈K(3.33) zf ji∈{0,1}∀(i,j)∈LR,f∈Fi(3.34) zf i∈{0,1}∀i∈NR,f∈Fi(3.35)
  • 33. 26 KAPITEL 3. ANVENDT TEORI Topology Aggregation er en teknik til at reducere problemets størrelse og fungerer ved at aggregere data baseret på dets topologi. Det aggregerede data er en repræsentation af det underliggende data og betegnes derfor som Aggregated Representation. Når data aggregeres vil det være på bekostning af granularitet, og det er derfor nødvendigt at lave en afvejning mellem nøjagtighed af data og størrelsen af den aggregerede repræsentation[49]. Litteratur omhandlende Topology Aggregation indenfor ruteplanlægning er begrænset, dog yderst relevant i forhold til Rich VRP. Ifølge Flatberg et al. [31] kan aggregeringen bestå af to niveauer; første aggregering er udført af distributionsvirksomheden hvor typisk 5-10 anmodninger aggregeres, ere i byområder med blokke, disse betegnes som moduler; anden aggregering udføres typisk af en heuristisk procedure, der aggregerer og ordner rækkefølgen på alle moduler som tilhører samme vejstykke eller tilstødende veje som ikke er afbrudt af et vejkryds. Aggregeringen er begrænset af grænseværdier for efterspørgsel og servicetid. 3.3 Adaptive Iterated Local Search I denne sektion vil metaheuristikken AILS præsenteres som den anvendte løsningsmetode til PDCMCGRPPC. AILS blev præsenteret af Hasle et al. [24] i 2014 og har præsteret konkurrencedygtige resultater på bench- marktilfælde indenfor både MCGRP, CVRP og CARP. Formålet med AILS er at undgå en ikke-produktiv søgeprocess og samtidig sikre en god balance mellem intensivering og diversicering. Algoritmen er illustreret i algoritme 12 og 13. I algoritme refalg:ID449 ses det at algoritmen itererer i et ydre while-loop og et indlejrede for-loop. Det ydre while-loop sikrer diversiceringen i søgeprocessen ved at bruge metaheuristikken ILS, mens det indre for-loop sørger for intensivering med Adaptive Large Neighborhood Search (ALNS) og Local Search (LS). ALNS er en adaptiv generalisering af Large Neighborhood Search der er beskrevet i sektion 2.4.1.7. Hasle et al. [24] præsenterer det overordnede design af AILS som indeholder mange alternativer for de mest væsentlige mekanismer. Gennem komparative eksperimenter er modellen tunet på fem benchmarktilfælde in- denfor MCGRP; CBMix [67], BHW [5], DI-NEARP [5], mggdb [12] og mgval [12]. Denne tunede model er fundet konkurrencedygtig indenfor ere klasser af ruteplanlægningsproblemer, og danner derfor grundlag for redegø- relsen af AILS. Function Ails IterCount = 0 IterStage = ITER_STAGE KickCount = KICK_COUNT ResetScore() sInit = Initial_Solution(Instance) sGlobIncu = sLocaIncu = LS_Full(sInit) while TimeOut() = True do sCurr = sStag = sLocaIncu for IterCountStage = 0 to IterStage do IterCoun += 1 NewBest = Alns_and_LS() if NewBest = TRUE then IterStage = ITER_STAGE - 1 KickCount = KICK_COUNT Break end end IterStage += 1 end Algorithm 12: Pseudokode for AILS I det følgende gennemgås implementeringen af AILS algoritmen, de anvendte parametre, variable, funktioner og procedurer samt tuningen af model- len. Herefter præsenteres de løsningsmetoder som al- goritmen anvender som procedure, hvilket omfatter en redegørelse af Augment-Merge, ALNS og LS i sek- tion 3.3.1 - 3.3.3. ILS kan ndes i sektion 2.4.1.6 og medtages derfor ikke her. Algoritmen begynder ved en initialisering af de globale variable, IterCount, IterStage, KickCount, og φ. IterCount tæller antallet af iterationer og initiali- seres til nul. IterStage holder styr på antallet af ite- rationer i det indre loop og initialiseres til værdien af parametren ITER_STAGE. KickCount tæller ned, og angiver antallet af iterationer før næste perturbation. KickCount initialiseres til værdien af parametren KI- CK_COUNT. Gennem tuning på fornævnte bench- marks er ITER_STAGE og KICK_COUNT sat til henholdsvis 20.000 og 10. Score matricen φ holder et mål for eektiviteten af et operatorpar, en Destructor og en Constructor. Den initialiseres ved at kalde pro-