vorlesung graphenzeichnen [1ex] order in the underground ... · grafiken mit perl perl & lwp...
TRANSCRIPT
Our ModelNP-HardnessOur Solution
Vorlesung Graphenzeichnen
Order in the Underground orHow to automate drawing metro maps?
Martin Nöllenburg
Institute of Theoretical Informatics
Karlsruhe Institute of Technology
07.12.2011
Martin Nöllenburg 1 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
Outline
Modeling the Metro Map ProblemWhat is a Metro Map?Hard and Soft Constraints
NP-Hardness: Bad News—Nice ProofRectilinear vs. Octilinear DrawingReduction from PLANAR 3-SAT
MIP Formulation & ExperimentsMixed-Integer Programming FormulationLabelingExperiments
Martin Nöllenburg 2 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
What is a Metro Map?Hard and Soft Constraints
Outline
Modeling the Metro Map ProblemWhat is a Metro Map?Hard and Soft Constraints
NP-Hardness: Bad News—Nice ProofRectilinear vs. Octilinear DrawingReduction from PLANAR 3-SAT
MIP Formulation & ExperimentsMixed-Integer Programming FormulationLabelingExperiments
Martin Nöllenburg 3 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
What is a Metro Map?Hard and Soft Constraints
What is a Metro Map?
schematic diagram for public transportvisualizes lines and stationsgoal: ease navigation for passengers
“How do I get from A to B?”“Where to get off and change trains?”
distorts geometry and scaleimproves readabilitycompromise betweenschematic road map↔ abstract graph
Martin Nöllenburg 4 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
What is a Metro Map?Hard and Soft Constraints
Why Automate Drawing Metro Maps?
current maps designedmanually
assist graphic designers toimprove/extend mapsmetro map metaphor
metabolic pathways[Hahn, Weinberg ’02]
web page maps [Nesbitt ’04]
product lines [O’Reilly ’03]
VLSI: X-architectureredrawing sketches[Brandes et al. ’03]
Martin Nöllenburg 5 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
What is a Metro Map?Hard and Soft Constraints
Why Automate Drawing Metro Maps?
current maps designedmanuallyassist graphic designers toimprove/extend maps
metro map metaphor
metabolic pathways[Hahn, Weinberg ’02]
web page maps [Nesbitt ’04]
product lines [O’Reilly ’03]
VLSI: X-architectureredrawing sketches[Brandes et al. ’03]
P
P
P
P
P
P
P
P
PP
P
P
P
PP
P
P
P
P
P
P
P
P
P
P
P
P
P
P
Under construction
FutureE
xtension
Subject toFundin
g
To Sacramento
To Tracy/Stockton
To Stockton
To Gilroy
SanFranciscoInternationalAirport
OaklandInternationalAirport
AirBART
SanJoseInternationalAirport
19th St /OaklandOakland City Center/12th StLake Merritt
West Oakland
EmbarcaderoMontgomery St
Powell StCivic Center
16th St Mission24th St Mission
Glen Park
Balboa Park
SouthSan Francisco
SanBruno
Millbrae
Daly City
Fruitvale
San Leandro
Bay Fair
HaywardCastro Valley
South Hayward
Union City
Coliseum /Oakland Airport
MacArthurRockridge
OrindaLafayette
Walnut Creek
Pleasant Hill
Concord
Ashby
Downtown Berkeley
El Cerrito PlazaNorth Berkeley
El Cerrito del Norte
North Concord /Martinez
Colma
Dublin/Pleasanton
Richmond
Fremont
Pittsburg /Bay Point
FosterCity
SantaClara
Pacifica
Newark WarmSprings
Fremont
Larkspur
CorteMadera
MillValley
Sausalito
Pinole
SanPablo
Rodeo
Hercules
Danville
SanRamon
Dublin
Livermore
Irvington
Pleasanton
MartinezAntioch
SanFrancisco
SanJose
NT
TP
ACE (Altamont CommuterExpress)
Regional Rail Transfer Point
Capitol Corridor (Amtrak)
San Joaquin (Amtrak)
Caltrain
BART Parking
BART Dublin/Pleasanton–Colma
BART Pittsburg /Bay Point –Colma
BART Fremont –Richmond
BART Fremont –Daly City
BART Richmond –Daly City
T
T
BART System Map
Hwy4
Hwy580
Hwy680
Hwy680
Hwy24
Hwy4
Hwy80
Hwy80
Hwy680
Hwy680
Hwy237
Hwy880
Hwy92
Hwy84
Hwy101
Hwy101
Hwy280
Hwy1
Hwy1
Martin Nöllenburg 5 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
What is a Metro Map?Hard and Soft Constraints
Why Automate Drawing Metro Maps?
current maps designedmanuallyassist graphic designers toimprove/extend mapsmetro map metaphor
metabolic pathways[Hahn, Weinberg ’02]
web page maps [Nesbitt ’04]
product lines [O’Reilly ’03]
VLSI: X-architectureredrawing sketches[Brandes et al. ’03]
Martin Nöllenburg 5 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
What is a Metro Map?Hard and Soft Constraints
Why Automate Drawing Metro Maps?
current maps designedmanuallyassist graphic designers toimprove/extend mapsmetro map metaphor
metabolic pathways[Hahn, Weinberg ’02]
web page maps [Nesbitt ’04]
product lines [O’Reilly ’03]
VLSI: X-architectureredrawing sketches[Brandes et al. ’03]
Martin Nöllenburg 5 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
What is a Metro Map?Hard and Soft Constraints
Why Automate Drawing Metro Maps?
current maps designedmanuallyassist graphic designers toimprove/extend mapsmetro map metaphor
metabolic pathways[Hahn, Weinberg ’02]
web page maps [Nesbitt ’04]
product lines [O’Reilly ’03]
VLSI: X-architectureredrawing sketches[Brandes et al. ’03]
2003 OPEN SOURCE ROUTE MAP
Perl/TkPocket Reference
Perl für System-
Administration
Perl in a Nutshell
Web
Netzwerk-& System-Administration
Nutshell & Taschen-bibliothek(kurz & gut)
Nutshell & Taschenbibliothek
(kurz & gut)
Unix
MacOSX
Netzwerk- & System-Administration
Unix
Perl Linux
WebPerl Linux
Programming WebServices with Perl
LPI Linux Certificationin a Nutshell
Linux in aNutshell
Perl kurz & gut XML in a
Nutshell
Web, Graphics & Perl/Tk:Best of The Perl Journal
Python in a Nutshell
Python & XML
Java™ & XML
Programmieren vonGrafiken mit Perl
Perl & LWP
Programmieren mit Perl DBI
Free as in Freedom
Peer-to-Peer
The Cathedral& The Bazaar
Open Sources DatabaseNation
Beyond Contact
Linux – Wegweiser für Netzwerker
Tcl/Tkin a Nutshell
AppleScriptin a Nutshell
Mac OS Xkurz & gut
Advanced PerlProgramming
Algorithmen mit Perl
Reguläre Ausdrücke
Mastering Perl/Tk
Perl Kochbuch
Programmieren mit PHP
PHP Kochbuch
Web Services Essentials
PHP kurz & gut
Running Weblogs with Slash
DocBook: The Definitive Guide
SVG Essentials
Einführung in XML
XML Schema
HTML &XHTML – Das umfassendeReferenzwerk
Creating Applications with Mozilla
Einführung in Perl
Computer Science & Perl Programming:Best of The Perl Journal
Games, Diversions & Perl Culture:Best of The Perl Journal
Einführung in Perl für Bioinformatik
Programmieren mit PerlLearning the Korn Shell
Programming Python
Apachekurz & gut
Understanding the Linux Kernel
Linux Gerätetreiber
Linux – Wegweiser zurInstallation & Konfiguration
Linux Security Cookbook
Managing RAID on Linux
Samba kurz & gut
Unix System-Administration
Programmingwith Qt
MySQL – Einsatz &Programmierung
JythonEssentials
Webdatenbank-applikationen mit
PHP & MySQL
Programmingwith GNUSoftware
Learning GNU Emacs
Writing GNU EmacsExtensions
sed & awk
Effective awkProgramming
Textverarbeitung mitden vi-Editor
Unix – Ein praktischerEinstieg
MySQL Reference Manual
MySQL Cookbook
Learningthe bashShell
PracticalPostgreSQL
UnixPowerTools
GNU Emacskurz & gut
vi kurz & gut
sed & awkkurz & gut
ExploringExpect
Samba
Writing Apache Modules with Perl and C
Exim: The MailTransfer Agent sendmail
Sichere Server mit Linux
Python Cookbook
Python Standard-Bibliothek
Einführung in Python
Python kurz & gut
Learning Perl on Win 32 Systems
PythonProgramming on Win32
Perl für Website-Management
Practical mod_perl
Perl & XML
Mason
Technologie &Gesellschaft Technologie & Gesellschaft
Apache – Das umfassende
Referenzwerk
SSH – Dasumfassende Handbuch
NetworkSecuritywithOpenSSL
Java™
Ant: TheDefinitiveGuide
NetBeans:The DefinitiveGuide
SAX2
Einführung inUnix für MacOSX
Mac OS X:The Missing
Manual
Mac OS X for Unix
DevelopersUsing csh& tcsh
Developing Bioinformatics Computer Skills
Java™
O’REILLY ®
Web
Perl
Unix
XML
Linux
Nutshell & Taschen-bibliothek (kurz & gut)
Netzwerk- & System-Administration
Technologie & Gesellschaft
Java™
Bioinformatik
Python
Mac OS X
L E G E N D E
Die Grübelei hat ein Ende!Bücher von O’Reilly
&LINUX
KONSORTEN
Learning Red Hat Linux
Building EmbeddedLinux Systems
LinuxServer Hacks
www.oreilly.de
PythonXML
Martin Nöllenburg 5 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
What is a Metro Map?Hard and Soft Constraints
Why Automate Drawing Metro Maps?
current maps designedmanuallyassist graphic designers toimprove/extend mapsmetro map metaphor
metabolic pathways[Hahn, Weinberg ’02]
web page maps [Nesbitt ’04]
product lines [O’Reilly ’03]
VLSI: X-architecture
redrawing sketches[Brandes et al. ’03]
Martin Nöllenburg 5 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
What is a Metro Map?Hard and Soft Constraints
Why Automate Drawing Metro Maps?
current maps designedmanuallyassist graphic designers toimprove/extend mapsmetro map metaphor
metabolic pathways[Hahn, Weinberg ’02]
web page maps [Nesbitt ’04]
product lines [O’Reilly ’03]
VLSI: X-architectureredrawing sketches[Brandes et al. ’03]
Martin Nöllenburg 5 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
What is a Metro Map?Hard and Soft Constraints
More Formally
The Metro Map Problem
Given: planar embedded graph G = (V ,E), V ⊂ R2,line cover L of paths or cycles in G (the metro lines),
Goal: draw G and L nicely.
Martin Nöllenburg 6 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
What is a Metro Map?Hard and Soft Constraints
More Formally
The Metro Map Problem
Given: planar embedded graph G = (V ,E), V ⊂ R2,line cover L of paths or cycles in G (the metro lines),
Goal: draw G and L nicely.
What is a nice drawing?Look at real-world metro maps drawn by graphic designersand model their design principles as
hard constraints – must be fulfilled,soft constraints – should hold as tightly as possible.
Martin Nöllenburg 6 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
What is a Metro Map?Hard and Soft Constraints
Hard Constraints
(H1) preserve embedding of G
(H2) draw all edges as octilinear line segments,i.e. horizontal, vertical or diagonal (45 degrees)
(H3) draw each edge e with length ≥ `e(H4) keep edges dmin away from non-incident edges (→ planar)
Martin Nöllenburg 7 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
What is a Metro Map?Hard and Soft Constraints
Hard Constraints
(H1) preserve embedding of G(H2) draw all edges as octilinear line segments,
i.e. horizontal, vertical or diagonal (45 degrees)
(H3) draw each edge e with length ≥ `e(H4) keep edges dmin away from non-incident edges (→ planar)
Martin Nöllenburg 7 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
What is a Metro Map?Hard and Soft Constraints
Hard Constraints
(H1) preserve embedding of G(H2) draw all edges as octilinear line segments,
i.e. horizontal, vertical or diagonal (45 degrees)(H3) draw each edge e with length ≥ `e
(H4) keep edges dmin away from non-incident edges (→ planar)
Martin Nöllenburg 7 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
What is a Metro Map?Hard and Soft Constraints
Hard Constraints
(H1) preserve embedding of G(H2) draw all edges as octilinear line segments,
i.e. horizontal, vertical or diagonal (45 degrees)(H3) draw each edge e with length ≥ `e(H4) keep edges dmin away from non-incident edges (→ planar)
Martin Nöllenburg 7 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
What is a Metro Map?Hard and Soft Constraints
Soft Constraints
(S1) draw metro lines with few bends
(S2) keep total edge length small(S3) draw each octilinear edge similar to its geographical
orientation: keep relative position of adjacent vertices
Martin Nöllenburg 8 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
What is a Metro Map?Hard and Soft Constraints
Soft Constraints
(S1) draw metro lines with few bends(S2) keep total edge length small
(S3) draw each octilinear edge similar to its geographicalorientation: keep relative position of adjacent vertices
Martin Nöllenburg 8 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
What is a Metro Map?Hard and Soft Constraints
Soft Constraints
(S1) draw metro lines with few bends(S2) keep total edge length small(S3) draw each octilinear edge similar to its geographical
orientation: keep relative position of adjacent vertices
Martin Nöllenburg 8 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
Rectilinear vs. Octilinear DrawingReduction from PLANAR 3-SAT
Outline
Modeling the Metro Map ProblemWhat is a Metro Map?Hard and Soft Constraints
NP-Hardness: Bad News—Nice ProofRectilinear vs. Octilinear DrawingReduction from PLANAR 3-SAT
MIP Formulation & ExperimentsMixed-Integer Programming FormulationLabelingExperiments
Martin Nöllenburg 9 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
Rectilinear vs. Octilinear DrawingReduction from PLANAR 3-SAT
A Related Problem
RECTILINEARGRAPHDRAWING Decision ProblemGiven a planar embedded graph G with max degree 4.Is there a drawing of G that
preserves the embedding,uses straight-line edges,is rectilinear?
Theorem (Tamassia SIAMJComp’87)
RECTILINEARGRAPHDRAWING can be solved efficiently.
Proof.By reduction to a flow problem.
Martin Nöllenburg 10 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
Rectilinear vs. Octilinear DrawingReduction from PLANAR 3-SAT
A Related Problem
RECTILINEARGRAPHDRAWING Decision ProblemGiven a planar embedded graph G with max degree 4.Is there a drawing of G that
preserves the embedding,uses straight-line edges,is rectilinear?
Theorem (Tamassia SIAMJComp’87)
RECTILINEARGRAPHDRAWING can be solved efficiently.
Proof.By reduction to a flow problem.
Martin Nöllenburg 10 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
Rectilinear vs. Octilinear DrawingReduction from PLANAR 3-SAT
A Related Problem
RECTILINEARGRAPHDRAWING Decision ProblemGiven a planar embedded graph G with max degree 4.Is there a drawing of G that
preserves the embedding,uses straight-line edges,is rectilinear?
Theorem (Tamassia SIAMJComp’87)
RECTILINEARGRAPHDRAWING can be solved efficiently.
Proof.By reduction to a flow problem.
Martin Nöllenburg 10 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
Rectilinear vs. Octilinear DrawingReduction from PLANAR 3-SAT
A Related Problem
RECTILINEARGRAPHDRAWING Decision ProblemGiven a planar embedded graph G with max degree 4.Is there a drawing of G that
preserves the embedding,uses straight-line edges,is rectilinear?
Theorem (Tamassia SIAMJComp’87)
RECTILINEARGRAPHDRAWING can be solved efficiently.
Proof.By reduction to a flow problem.
Martin Nöllenburg 10 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
Rectilinear vs. Octilinear DrawingReduction from PLANAR 3-SAT
Our Problem
METROMAPLAYOUT Decision ProblemGiven a planar embedded graph G with max degree 8.Is there a drawing of G that
preserves the embedding,uses straight-line edges,is octilinear?
TheoremMETROMAPLAYOUT is NP-hard.
Proof.By Reduction from PLANAR 3-SAT to METROMAPLAYOUT.
Martin Nöllenburg 11 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
Rectilinear vs. Octilinear DrawingReduction from PLANAR 3-SAT
Outline of the Reduction
x1 ∨ x2 ∨ x3
x1 ∨ x3 ∨ x4
x1 ∨ x2 ∨ x4
x2 ∨ x3 ∨ x4
x1 x2 x3 x4
Input: planar 3-SAT formula ϕ =(x1 ∨ x3 ∨ x4) ∧ (x1 ∨ x2 ∨ x3) ∧ . . .
Goal: planar embedded graph Gϕ with:Gϕ has a metro map drawing ⇔ ϕ satisfiable.
Martin Nöllenburg 12 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
Rectilinear vs. Octilinear DrawingReduction from PLANAR 3-SAT
Outline of the Reduction
x1 ∨ x2 ∨ x3
x1 ∨ x3 ∨ x4
x1 ∨ x2 ∨ x4
x2 ∨ x3 ∨ x4
x1 x2 x3 x4
Input: planar 3-SAT formula ϕ =(x1 ∨ x3 ∨ x4) ∧ (x1 ∨ x2 ∨ x3) ∧ . . .
Goal: planar embedded graph Gϕ with:Gϕ has a metro map drawing ⇔ ϕ satisfiable.
Martin Nöllenburg 12 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
Rectilinear vs. Octilinear DrawingReduction from PLANAR 3-SAT
Outline of the Reduction
x1 ∨ x2 ∨ x3
x1 ∨ x3 ∨ x4
x1 ∨ x2 ∨ x4
x2 ∨ x3 ∨ x4
x1 x2 x3 x4
Input: planar 3-SAT formula ϕ =(x1 ∨ x3 ∨ x4) ∧ (x1 ∨ x2 ∨ x3) ∧ . . .
Goal: planar embedded graph Gϕ with:Gϕ has a metro map drawing ⇔ ϕ satisfiable.
Martin Nöllenburg 12 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
Rectilinear vs. Octilinear DrawingReduction from PLANAR 3-SAT
Variable Gadget
. . .
. . .
. . .
......
...
...
...
......
......
x = true
x x
x
false true
true
Martin Nöllenburg 13 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
Rectilinear vs. Octilinear DrawingReduction from PLANAR 3-SAT
Variable Gadget
. . .
. . .
. . .
......
......
......
...
......
x = false
x x
x
true false
false
Martin Nöllenburg 13 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
Rectilinear vs. Octilinear DrawingReduction from PLANAR 3-SAT
Outline of the Reduction
x1 ∨ x2 ∨ x3
x1 ∨ x3 ∨ x4
x1 ∨ x2 ∨ x4
x2 ∨ x3 ∨ x4
x1 x2 x3 x4
Input: planar 3-SAT formula ϕ =(x1 ∨ x3 ∨ x4) ∧ (x1 ∨ x2 ∨ x3) ∧ . . .
Goal: planar embedded graph Gϕ with:Gϕ has a metro map drawing ⇔ ϕ satisfiable.
Martin Nöllenburg 14 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
Rectilinear vs. Octilinear DrawingReduction from PLANAR 3-SAT
Clause Gadget
Martin Nöllenburg 15 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
Rectilinear vs. Octilinear DrawingReduction from PLANAR 3-SAT
Clause Gadget
Martin Nöllenburg 15 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
Rectilinear vs. Octilinear DrawingReduction from PLANAR 3-SAT
Clause Gadget
Martin Nöllenburg 15 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
Rectilinear vs. Octilinear DrawingReduction from PLANAR 3-SAT
Clause Gadget
Martin Nöllenburg 15 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
Rectilinear vs. Octilinear DrawingReduction from PLANAR 3-SAT
Clause Gadget
Martin Nöllenburg 15 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
Rectilinear vs. Octilinear DrawingReduction from PLANAR 3-SAT
Clause Gadget
Martin Nöllenburg 15 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
Rectilinear vs. Octilinear DrawingReduction from PLANAR 3-SAT
Clause Gadget
Martin Nöllenburg 15 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
Rectilinear vs. Octilinear DrawingReduction from PLANAR 3-SAT
Summary of the Reduction
→. . .
. . .
. . .
......
...
...
...
......
......
x = true
x x
x
false true
true
x1 ∨ x2 ∨ x3
x1 ∨ x3 ∨ x4
x1 ∨ x2 ∨ x4
x2 ∨ x3 ∨ x4
x1 x2 x3 x4
Indeed we have:ϕ satisfiable ⇒ corresponding MM drawing of Gϕ
Gϕ has MM drawing ⇒ satisfying truth assignment of ϕ
Martin Nöllenburg 16 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Outline
Modeling the Metro Map ProblemWhat is a Metro Map?Hard and Soft Constraints
NP-Hardness: Bad News—Nice ProofRectilinear vs. Octilinear DrawingReduction from PLANAR 3-SAT
MIP Formulation & ExperimentsMixed-Integer Programming FormulationLabelingExperiments
Martin Nöllenburg 17 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Mathematical Programming
Linear Programming: efficientoptimization method for
linear constraintslinear objective functionreal-valued variables
Mixed-Integer Programming (MIP)allows also integer variablesNP-hard in generalstill practical method for manyhard optimization problems
Theorem (GD’05 / TVCG’11)The metro map layout problem can be formulated as a MIP s.th.
hard constraints → linear constraintssoft constraints → objective function
Martin Nöllenburg 18 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Mathematical Programming
Linear Programming: efficientoptimization method for
linear constraintslinear objective functionreal-valued variablesexample:maximize x + 2ysubject toy ≤ 0.9x + 1.5y ≥ 1.4x − 1.3
Mixed-Integer Programming (MIP)allows also integer variablesNP-hard in generalstill practical method for manyhard optimization problems
Theorem (GD’05 / TVCG’11)The metro map layout problem can be formulated as a MIP s.th.
hard constraints → linear constraintssoft constraints → objective function
Martin Nöllenburg 18 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Mathematical Programming
Linear Programming: efficientoptimization method for
linear constraintslinear objective functionreal-valued variablesexample:maximize x + 2ysubject toy ≤ 0.9x + 1.5y ≥ 1.4x − 1.3
Mixed-Integer Programming (MIP)allows also integer variablesNP-hard in generalstill practical method for manyhard optimization problems
Theorem (GD’05 / TVCG’11)The metro map layout problem can be formulated as a MIP s.th.
hard constraints → linear constraintssoft constraints → objective function
Martin Nöllenburg 18 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Mathematical Programming
Linear Programming: efficientoptimization method for
linear constraintslinear objective functionreal-valued variablesexample:maximize x + 2ysubject toy ≤ 0.9x + 1.5y ≥ 1.4x − 1.3
Mixed-Integer Programming (MIP)allows also integer variablesNP-hard in generalstill practical method for manyhard optimization problems
Theorem (GD’05 / TVCG’11)The metro map layout problem can be formulated as a MIP s.th.
hard constraints → linear constraintssoft constraints → objective function
Martin Nöllenburg 18 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Mathematical Programming
Linear Programming: efficientoptimization method for
linear constraintslinear objective functionreal-valued variables
Mixed-Integer Programming (MIP)allows also integer variablesNP-hard in generalstill practical method for manyhard optimization problems
Theorem (GD’05 / TVCG’11)The metro map layout problem can be formulated as a MIP s.th.
hard constraints → linear constraintssoft constraints → objective function
Martin Nöllenburg 18 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Mathematical Programming
Linear Programming: efficientoptimization method for
linear constraintslinear objective functionreal-valued variables
Mixed-Integer Programming (MIP)allows also integer variablesNP-hard in generalstill practical method for manyhard optimization problems
Theorem (GD’05 / TVCG’11)The metro map layout problem can be formulated as a MIP s.th.
hard constraints → linear constraintssoft constraints → objective function
Martin Nöllenburg 18 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Mathematical Programming
Linear Programming: efficientoptimization method for
linear constraintslinear objective functionreal-valued variables
Mixed-Integer Programming (MIP)allows also integer variablesNP-hard in generalstill practical method for manyhard optimization problems
Theorem (GD’05 / TVCG’11)The metro map layout problem can be formulated as a MIP s.th.
hard constraints → linear constraintssoft constraints → objective function
Martin Nöllenburg 18 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Definitions: Sectors and Coordinates
u
12
3
4
56
0
7v
Sectors– for each vtx. u partition plane into sectors 0–7
here: sec(u, v) = 5 (input)
– number octilinear edge directions accordinglye.g. dir(u, v) = 4 (output)
x
y z1
z2
Coordinatesassign z1- and z2-coordinates to each vertex v :
z1(v) = x(v) + y(v)z2(v) = x(v)− y(v)
Martin Nöllenburg 19 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Definitions: Sectors and Coordinates
u
12
3
4
56
0
7v
Sectors– for each vtx. u partition plane into sectors 0–7
here: sec(u, v) = 5 (input)
– number octilinear edge directions accordinglye.g. dir(u, v) = 4 (output)
x
y z1
z2
Coordinatesassign z1- and z2-coordinates to each vertex v :
z1(v) = x(v) + y(v)z2(v) = x(v)− y(v)
Martin Nöllenburg 19 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Definitions: Sectors and Coordinates
u
12
3
4
56
0
7v
Sectors– for each vtx. u partition plane into sectors 0–7
here: sec(u, v) = 5 (input)
– number octilinear edge directions accordinglye.g. dir(u, v) = 4 (output)
x
y z1
z2
Coordinatesassign z1- and z2-coordinates to each vertex v :
z1(v) = x(v) + y(v)z2(v) = x(v)− y(v)
Martin Nöllenburg 19 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Octilinearity and Relative Position (H2, H3, S3)
Goal
u
12
3
4
56
0
7v
pred
origsucc
Draw edge uvoctilinearlywith minimum length `uv
restricted to 3 directions
How to model this using linear constraints?
Binary Variables
αpred(u, v) + αorig(u, v) + αsucc(u, v) = 1
Martin Nöllenburg 20 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Octilinearity and Relative Position (H2, H3, S3)
Goal
u
12
3
4
56
0
7v
pred
origsucc
Draw edge uvoctilinearlywith minimum length `uv
restricted to 3 directions
How to model this using linear constraints?
Binary Variables
αpred(u, v) + αorig(u, v) + αsucc(u, v) = 1
Martin Nöllenburg 20 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Octilinearity and Relative Position (H2, H3, S3)
Goal
u
12
3
4
56
0
7v
pred
origsucc
Draw edge uvoctilinearlywith minimum length `uv
restricted to 3 directions
How to model this using linear constraints?
Binary Variables
αpred(u, v) + αorig(u, v) + αsucc(u, v) = 1
Martin Nöllenburg 20 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Octilinearity and Relative Position
u
12
3
4
56
0
7v
pred
origsucc
Predecessor Sector
y(u)− y(v) ≤ M(1− αpred(u, v))−y(u) + y(v) ≤ M(1− αpred(u, v))
x(u)− x(v) ≥ −M(1− αpred(u, v)) + `uv
Martin Nöllenburg 21 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Octilinearity and Relative Position
u
12
3
4
56
0
7v
pred
origsucc
Predecessor Sector
y(u)− y(v) ≤ M(1− αpred(u, v))−y(u) + y(v) ≤ M(1− αpred(u, v))
x(u)− x(v) ≥ −M(1− αpred(u, v)) + `uv
How does this work?
Martin Nöllenburg 21 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Octilinearity and Relative Position
u
12
3
4
56
0
7v
pred
origsucc
Predecessor Sector
y(u)− y(v) ≤ M(1− αpred(u, v))−y(u) + y(v) ≤ M(1− αpred(u, v))
x(u)− x(v) ≥ −M(1− αpred(u, v)) + `uv
How does this work?Case 1: αpred(u, v) = 0
y(u)− y(v) ≤ M−y(u) + y(v) ≤ M
x(u)− x(v) ≥ `uv −M
Martin Nöllenburg 21 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Octilinearity and Relative Position
u
12
3
4
56
0
7v
pred
origsucc
Predecessor Sector
y(u)− y(v) ≤ M(1− αpred(u, v))−y(u) + y(v) ≤ M(1− αpred(u, v))
x(u)− x(v) ≥ −M(1− αpred(u, v)) + `uv
How does this work?Case 2: αpred(u, v) = 1
y(u)− y(v) ≤ 0−y(u) + y(v) ≤ 0
x(u)− x(v) ≥ `uv
Martin Nöllenburg 21 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Octilinearity and Relative Position (H2, H3, S3)
u
12
3
4
56
0
7v
pred
origsucc
Original Sector
z2(u)− z2(v) ≤ M(1− αorig(u, v))−z2(u) + z2(v) ≤ M(1− αorig(u, v))
z1(u)− z1(v) ≥ −M(1− αorig(u, v)) + 2`uv
Successor Sector
x(u)− x(v) ≤ M(1− αsucc(u, v))−x(u) + x(v) ≤ M(1− αsucc(u, v))
y(u)− y(v) ≥ −M(1− αsucc(u, v)) + `uv
Martin Nöllenburg 22 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Octilinearity and Relative Position (H2, H3, S3)
u
12
3
4
56
0
7v
pred
origsucc
Original Sector
z2(u)− z2(v) ≤ M(1− αorig(u, v))−z2(u) + z2(v) ≤ M(1− αorig(u, v))
z1(u)− z1(v) ≥ −M(1− αorig(u, v)) + 2`uv
u
12
3
4
56
0
7v
pred
origsucc
Successor Sector
x(u)− x(v) ≤ M(1− αsucc(u, v))−x(u) + x(v) ≤ M(1− αsucc(u, v))
y(u)− y(v) ≥ −M(1− αsucc(u, v)) + `uv
Martin Nöllenburg 22 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Preserving the Embedding (H1)
DefinitionTwo planar drawings of G have the same embedding if theinduced orderings on the neighbors of each vertex are equal.
Same Embedding
1
2
3
4
5
2
14
3
5
Martin Nöllenburg 23 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Preserving the Embedding (H1)
DefinitionTwo planar drawings of G have the same embedding if theinduced orderings on the neighbors of each vertex are equal.
Different Embeddings
1
2
3
4
5 1
2
3
4
5
Martin Nöllenburg 23 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Preserving the Embedding (H1)
Constraints (Example)
N(v) = {u1,u2,u3,u4}circular input order: u1 < u2 < u3 < u4 < u1
All but one of the following inequalities must hold
dir(v ,u1) < dir(v ,u2) < dir(v ,u3) < dir(v ,u4) < dir(v ,u1)
Input
vu1
u2
u3u4
Output
v
u1
u2
u3u4
Martin Nöllenburg 24 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Preserving the Embedding (H1)
Constraints (Example)
N(v) = {u1,u2,u3,u4}circular input order: u1 < u2 < u3 < u4 < u1
All but one of the following inequalities must hold
dir(v ,u1) ≮ dir(v ,u2) < dir(v ,u3) < dir(v ,u4) < dir(v ,u1)
Input
vu1
u2
u3u4
Output
v
u1
u2
u3u4
Martin Nöllenburg 24 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Planarity (H4)
Observation
For octilinear, straight edge e1 non-incidentedge e2 must be placed dmin to the
east, northeast, north, northwest,west, southwest, south, or southeast
E
Constraintsmodel as MIP with binary variablesαE + αNE + αN + αNW + αW + αSW + αS + αSE ≥ 1required for each pair of non-incident edges
Martin Nöllenburg 25 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Planarity (H4)
Observation
For octilinear, straight edge e1 non-incidentedge e2 must be placed dmin to the
east, northeast, north, northwest,west, southwest, south, or southeast
NE
Constraintsmodel as MIP with binary variablesαE + αNE + αN + αNW + αW + αSW + αS + αSE ≥ 1required for each pair of non-incident edges
Martin Nöllenburg 25 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Planarity (H4)
Observation
For octilinear, straight edge e1 non-incidentedge e2 must be placed dmin to the
east, northeast, north, northwest,west, southwest, south, or southeast
N
Constraintsmodel as MIP with binary variablesαE + αNE + αN + αNW + αW + αSW + αS + αSE ≥ 1required for each pair of non-incident edges
Martin Nöllenburg 25 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Planarity (H4)
Observation
For octilinear, straight edge e1 non-incidentedge e2 must be placed dmin to the
east, northeast, north, northwest,west, southwest, south, or southeast
NW
Constraintsmodel as MIP with binary variablesαE + αNE + αN + αNW + αW + αSW + αS + αSE ≥ 1required for each pair of non-incident edges
Martin Nöllenburg 25 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Planarity (H4)
Observation
For octilinear, straight edge e1 non-incidentedge e2 must be placed dmin to the
east, northeast, north, northwest,west, southwest, south, or southeast
W
Constraintsmodel as MIP with binary variablesαE + αNE + αN + αNW + αW + αSW + αS + αSE ≥ 1required for each pair of non-incident edges
Martin Nöllenburg 25 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Planarity (H4)
Observation
For octilinear, straight edge e1 non-incidentedge e2 must be placed dmin to the
east, northeast, north, northwest,west, southwest, south, or southeast
SW
Constraintsmodel as MIP with binary variablesαE + αNE + αN + αNW + αW + αSW + αS + αSE ≥ 1required for each pair of non-incident edges
Martin Nöllenburg 25 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Planarity (H4)
Observation
For octilinear, straight edge e1 non-incidentedge e2 must be placed dmin to the
east, northeast, north, northwest,west, southwest, south, or southeast S
Constraintsmodel as MIP with binary variablesαE + αNE + αN + αNW + αW + αSW + αS + αSE ≥ 1required for each pair of non-incident edges
Martin Nöllenburg 25 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Planarity (H4)
Observation
For octilinear, straight edge e1 non-incidentedge e2 must be placed dmin to the
east, northeast, north, northwest,west, southwest, south, or southeast
SE
Constraintsmodel as MIP with binary variablesαE + αNE + αN + αNW + αW + αSW + αS + αSE ≥ 1required for each pair of non-incident edges
Martin Nöllenburg 25 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Planarity (H4)
Observation
For octilinear, straight edge e1 non-incidentedge e2 must be placed dmin to the
east, northeast, north, northwest,west, southwest, south, or southeast
SE
Constraintsmodel as MIP with binary variablesαE + αNE + αN + αNW + αW + αSW + αS + αSE ≥ 1required for each pair of non-incident edges
Martin Nöllenburg 25 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Objective Function
Objective Functioncorresponds to soft constraints (S1)–(S3)weighted sum of individual cost functions
minimize λbends costbends + λlength costlength + λrelpos costrelpos
Line Bends (S1)
Edges uv and vw on a metro line L ∈ Ldraw as straight as possibleincrease cost bend(u, v ,w) forincreasing acuteness of ∠(uv , vw)
Martin Nöllenburg 26 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Objective Function
Objective Functioncorresponds to soft constraints (S1)–(S3)weighted sum of individual cost functions
minimize λbends costbends + λlength costlength + λrelpos costrelpos
Line Bends (S1)
vu3
w Edges uv and vw on a metro line L ∈ Ldraw as straight as possibleincrease cost bend(u, v ,w) forincreasing acuteness of ∠(uv , vw)
Martin Nöllenburg 26 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Objective Function
Objective Functioncorresponds to soft constraints (S1)–(S3)weighted sum of individual cost functions
minimize λbends costbends + λlength costlength + λrelpos costrelpos
Line Bends (S1)
vu
2w
Edges uv and vw on a metro line L ∈ Ldraw as straight as possibleincrease cost bend(u, v ,w) forincreasing acuteness of ∠(uv , vw)
Martin Nöllenburg 26 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Objective Function
Objective Functioncorresponds to soft constraints (S1)–(S3)weighted sum of individual cost functions
minimize λbends costbends + λlength costlength + λrelpos costrelpos
Line Bends (S1)
vu
1w Edges uv and vw on a metro line L ∈ L
draw as straight as possibleincrease cost bend(u, v ,w) forincreasing acuteness of ∠(uv , vw)
Martin Nöllenburg 26 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Objective Function
Objective Functioncorresponds to soft constraints (S1)–(S3)weighted sum of individual cost functions
minimize λbends costbends + λlength costlength + λrelpos costrelpos
Line Bends (S1)
vu 0 w
Edges uv and vw on a metro line L ∈ Ldraw as straight as possibleincrease cost bend(u, v ,w) forincreasing acuteness of ∠(uv , vw)
Martin Nöllenburg 26 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Objective Function
Objective Functioncorresponds to soft constraints (S1)–(S3)weighted sum of individual cost functions
minimize λbends costbends + λlength costlength + λrelpos costrelpos
Line Bends (S1)
vu
1w
Edges uv and vw on a metro line L ∈ Ldraw as straight as possibleincrease cost bend(u, v ,w) forincreasing acuteness of ∠(uv , vw)
Martin Nöllenburg 26 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Objective Function
Objective Functioncorresponds to soft constraints (S1)–(S3)weighted sum of individual cost functions
minimize λbends costbends + λlength costlength + λrelpos costrelpos
Line Bends (S1)
vu
2w
Edges uv and vw on a metro line L ∈ Ldraw as straight as possibleincrease cost bend(u, v ,w) forincreasing acuteness of ∠(uv , vw)
Martin Nöllenburg 26 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Objective Function
Objective Functioncorresponds to soft constraints (S1)–(S3)weighted sum of individual cost functions
minimize λbends costbends + λlength costlength + λrelpos costrelpos
Line Bends (S1)
vu
3w
Edges uv and vw on a metro line L ∈ Ldraw as straight as possibleincrease cost bend(u, v ,w) forincreasing acuteness of ∠(uv , vw)
Martin Nöllenburg 26 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Objective Function
Objective Functioncorresponds to soft constraints (S1)–(S3)weighted sum of individual cost functions
minimize λbends costbends + λlength costlength + λrelpos costrelpos
Line Bends (S1)
vu
3w
Edges uv and vw on a metro line L ∈ Ldraw as straight as possibleincrease cost bend(u, v ,w) forincreasing acuteness of ∠(uv , vw)
costbends =∑L∈L
∑uv ,vw∈L
bend(u, v ,w)
Martin Nöllenburg 26 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Objective Function
Total Edge Length (S2)
costlength =∑
uv∈E
length(uv)
Relative Position (S3)
only three directions possible
charge 1 if edge deviates fromoriginal sector
Martin Nöllenburg 27 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Objective Function
Total Edge Length (S2)
costlength =∑
uv∈E
length(uv)
Relative Position (S3)
u
12
3
4
56
0
7v
only three directions possible
charge 1 if edge deviates fromoriginal sector
Martin Nöllenburg 27 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Objective Function
Total Edge Length (S2)
costlength =∑
uv∈E
length(uv)
Relative Position (S3)
u
12
3
4
56
0
7v
1
only three directions possiblecharge 1 if edge deviates fromoriginal sector
Martin Nöllenburg 27 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Objective Function
Total Edge Length (S2)
costlength =∑
uv∈E
length(uv)
Relative Position (S3)
u
12
3
4
56
0
7v
1
0
only three directions possiblecharge 1 if edge deviates fromoriginal sector
Martin Nöllenburg 27 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Objective Function
Total Edge Length (S2)
costlength =∑
uv∈E
length(uv)
Relative Position (S3)
u
12
3
4
56
0
7v
1
01
only three directions possiblecharge 1 if edge deviates fromoriginal sector
Martin Nöllenburg 27 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Objective Function
Total Edge Length (S2)
costlength =∑
uv∈E
length(uv)
Relative Position (S3)
u
12
3
4
56
0
7v
1
01
only three directions possiblecharge 1 if edge deviates fromoriginal sector
costrelpos =∑
uv∈E
relpos(uv)
Martin Nöllenburg 27 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Effects of the Soft ConstraintsObjective Function
corresponds to soft constraints (S1)–(S3)weighted sum of individual cost functions
minimize λbends costbends + λlength costlength + λrelpos costrelpos
Input Output
Martin Nöllenburg 28 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Effects of the Soft ConstraintsObjective Function
corresponds to soft constraints (S1)–(S3)weighted sum of individual cost functions
minimize λbends costbends + λlength costlength + λrelpos costrelpos
Input Output
Martin Nöllenburg 28 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Effects of the Soft ConstraintsObjective Function
corresponds to soft constraints (S1)–(S3)weighted sum of individual cost functions
minimize λbends costbends + λlength costlength + λrelpos costrelpos
Input Output
Martin Nöllenburg 28 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Summary of the MIP
hard constraints:octilinearityminimum edge length(partially) relative positionpreservation of embeddingplanarity
soft constraints:
minimize λbends costbends+λlength costlength+λrelpos costrelpos
models METROMAPLAYOUT as MIPin total O(|V |2) constraints and variables
Martin Nöllenburg 29 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Summary of the MIP
hard constraints:octilinearityminimum edge length(partially) relative positionpreservation of embeddingplanarity
soft constraints:
minimize λbends costbends+λlength costlength+λrelpos costrelpos
models METROMAPLAYOUT as MIPin total O(|V |2) constraints and variables
Martin Nöllenburg 29 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Summary of the MIP
hard constraints:octilinearityminimum edge length(partially) relative positionpreservation of embeddingplanarity
soft constraints:
minimize λbends costbends+λlength costlength+λrelpos costrelpos
models METROMAPLAYOUT as MIP
in total O(|V |2) constraints and variables
Martin Nöllenburg 29 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Summary of the MIP
hard constraints:octilinearityminimum edge length(partially) relative positionpreservation of embeddingplanarity
soft constraints:
minimize λbends costbends+λlength costlength+λrelpos costrelpos
models METROMAPLAYOUT as MIPin total O(|V |2) constraints and variables
Martin Nöllenburg 29 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Summary of the MIP
hard constraints:octilinearityminimum edge length(partially) relative positionpreservation of embeddingplanarity
soft constraints:
minimize λbends costbends+λlength costlength+λrelpos costrelpos
models METROMAPLAYOUT as MIPin total O(|V |2) constraints and variables
Martin Nöllenburg 29 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Speed-Up Techniques: Reduce Graph Size
metro graphs have many degree-2 verticeswant to optimize line straightness
Idea 1 collapse all degree-2 vertices
low flexibility
Idea 2 keep two joints
higher flexibilitymore similar to input
Martin Nöllenburg 30 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Speed-Up Techniques: Reduce Graph Size
metro graphs have many degree-2 verticeswant to optimize line straightness
Idea 1 collapse all degree-2 vertices
low flexibilityIdea 2 keep two joints
higher flexibilitymore similar to input
Martin Nöllenburg 30 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Speed-Up Techniques: Reduce Graph Size
metro graphs have many degree-2 verticeswant to optimize line straightness
Idea 1 collapse all degree-2 vertices
low flexibilityIdea 2 keep two joints
higher flexibilitymore similar to input
Martin Nöllenburg 30 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Speed-Up Techniques: Reduce Graph Size
metro graphs have many degree-2 verticeswant to optimize line straightness
Idea 1 collapse all degree-2 vertices
low flexibilityIdea 2 keep two joints
higher flexibilitymore similar to input
Martin Nöllenburg 30 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Speed-Up Techniques: Reduce Graph Size
metro graphs have many degree-2 verticeswant to optimize line straightness
Idea 1 collapse all degree-2 vertices
low flexibilityIdea 2 keep two joints
higher flexibilitymore similar to input
Martin Nöllenburg 30 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Speed-Up Techniques: Reduce Graph Size
metro graphs have many degree-2 verticeswant to optimize line straightness
Idea 1 collapse all degree-2 verticeslow flexibility
Idea 2 keep two joints
higher flexibilitymore similar to input
Martin Nöllenburg 30 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Speed-Up Techniques: Reduce Graph Size
metro graphs have many degree-2 verticeswant to optimize line straightness
Idea 1 collapse all degree-2 verticeslow flexibility
Idea 2 keep two joints
higher flexibilitymore similar to input
Martin Nöllenburg 30 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Speed-Up Techniques: Reduce Graph Size
metro graphs have many degree-2 verticeswant to optimize line straightness
Idea 1 collapse all degree-2 verticeslow flexibility
Idea 2 keep two joints
higher flexibilitymore similar to input
Martin Nöllenburg 30 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Speed-Up Techniques: Reduce Graph Size
metro graphs have many degree-2 verticeswant to optimize line straightness
Idea 1 collapse all degree-2 verticeslow flexibility
Idea 2 keep two joints
higher flexibilitymore similar to input
Martin Nöllenburg 30 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Speed-Up Techniques: Reduce Graph Size
metro graphs have many degree-2 verticeswant to optimize line straightness
Idea 1 collapse all degree-2 verticeslow flexibility
Idea 2 keep two joints
higher flexibilitymore similar to input
Martin Nöllenburg 30 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Speed-Up Techniques: Reduce Graph Size
metro graphs have many degree-2 verticeswant to optimize line straightness
Idea 1 collapse all degree-2 verticeslow flexibility
Idea 2 keep two jointshigher flexibilitymore similar to input
Martin Nöllenburg 30 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Speed-Up Techniques: Reduce MIP Size
O(|V |2) planarity constraints (for each pair of edges...)in practice 95–99% of constraints
Observation 1consider only pairs of edges incident to the same facestill O(|V |2) constraints
Observation 2in practice no or only few crossings due to soft constraints
Martin Nöllenburg 31 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Speed-Up Techniques: Reduce MIP Size
O(|V |2) planarity constraints (for each pair of edges...)in practice 95–99% of constraints
Observation 1consider only pairs of edges incident to the same facestill O(|V |2) constraints
Observation 2in practice no or only few crossings due to soft constraints
Martin Nöllenburg 31 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Speed-Up Techniques: Reduce MIP Size
O(|V |2) planarity constraints (for each pair of edges...)in practice 95–99% of constraints
Observation 1consider only pairs of edges incident to the same facestill O(|V |2) constraints
Observation 2in practice no or only few crossings due to soft constraints
Martin Nöllenburg 31 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Speed-Up Techniques: Reduce MIP Size
O(|V |2) planarity constraints (for each pair of edges...)in practice 95–99% of constraints
Observation 1consider only pairs of edges incident to the same facestill O(|V |2) constraints
Observation 2in practice no or only few crossings due to soft constraints
Martin Nöllenburg 31 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Speed-Up Techniques: Reduce MIP Size
O(|V |2) planarity constraints (for each pair of edges...)in practice 95–99% of constraints
Observation 1consider only pairs of edges incident to the same facestill O(|V |2) constraints
Observation 2in practice no or only few crossings due to soft constraints
Martin Nöllenburg 31 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Speed-Up Techniques: Callback Functions
MIP optimizer CPLEX offers advanced callback functionsadd required planarity constraints on the fly
Algorithm1 start solving MIP without planarity constraints2 for each new solution
1 interrupt CPLEX2 if solution is not planar
add planarity constraints for intersecting edgesreject solution
elseaccept solution
3 continue solving the MIP (until optimal)
Martin Nöllenburg 32 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Labeling
unlabeled metro map oflittle use in practice
labelsoccupy spacemay not overlap
static edge labeling isNP-hard [Tollis, Kakoulis ’01]
combine layout andlabeling for better results
N8
N7
N6
N5
N4
N3
N2
N1
N4
Martin Nöllenburg 33 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Labeling
unlabeled metro map oflittle use in practicelabels
occupy spacemay not overlap
static edge labeling isNP-hard [Tollis, Kakoulis ’01]
combine layout andlabeling for better results
N8
N7
N6
N5
N4
N3
N2
N1
Zentral-station
Neuhäuser TorDetmolderTor
Michaelstr.Heiersstr.
Am Bogen
Kasseler StraßeWesterntor
Maspernplatz
Gierstor
NordbahnhofHeinrichskirche
UhlandstraßeSteubenstraße
Gottfried-Keller-Weg
Mörikestraße
Englische Siedlung
Berline
r Ring
Langer Weg
Fröbelstr.
Piepen-turmweg
Schulze-Delitzsch-Straße
Lipps
pring
er Str
.
Kirchb
rede
Buchh
olz
Papenberg
Postweg
Kloster
garte
n
Ronc
allipl
atz
Beksch
er Berg
Druhe
imer
Straß
e
Holtgre
vens
traße
Bf Kasseler Tor
Schulbrede
Hilligenbusch
Uni/Schöne Aussicht
Am Laugrund
Corveyer Weg
Bahneinschnitt
Hochs
tiftss
tr.
Südr
ing
Uni/Sü
dring
Im SpiringsfeldeGertru-denstr.
KilianplatzQuerweg
Stephanusstraße
Elisabethkirche
Kilian
bad
Mälzerstr.Abtsbrede
Sighardstr.Ilseweg
Breslau
er Str
.
Walden
burge
r Str.
Grüner Weg
Frank
furte
r Weg
BetriebshofBarkhausen
StembergKleestraßeIm Tigg
WinkelsgartenFixberg
Weikenberg
Delbrücker WegTriftweg Im
Lich
tenfel
de
Voessingweg
Neuenheerser WegLiethstaudamm
Auf der LiethBürener Weg
Borgentreicher WegPeckelsheimer Weg
Vinsebecker WegWeißdornweg
Mistelweg
Bussardweg
Kaukenberg
Kleing
. Dah
ler W
eg
Iggen
haus
er Weg
Lang
efeld
Bergso
hle
Dahler
Heid
e
Dahl P
ost
Braken
berg
Lülingsberg
Pastorskamp
Win-friedstr.Josefs-krankenhausFrauenklinik
Im BruchhofRummelsberg
Am Zollhaus Zwetschenweg
Ludwigsfelder Ring
Am NiesenteichDr.-Mertens-Weg
Anhalter WegGerold
Füllers HeideStadtheide
Talle-TerrassenWaldweg
SchlesierwegIm Vogtland
Zum KampeMarienloh Mitte
SennewegVon-Dript-Weg
Dören-Park
Schwabenweg
Hauptbahnhof
Klöcknerstraße
PontanusstraßeTechn. Rathaus
WestfriedhofIm Lohfeld
Riemecker Feld
DelpstraßeHeinz-Nixdorf-Ring
Alme Aue
Am Almerfeld
OstalleeCarl-Diem-StraßeWewerstraße
Blumenstraße
Spritzenhaus
Von-Ketteler-StraßeElsen Schule
BohlenwegGasthof Zur Heide
MühlenteichstraßeKarl-Arnold-Straße
Sander Straße
FürstenwegRolandsweg
Freibad/SchützenplatzFerrariweg
MuseumsForumPadersee
An der KapelleFürstenallee
Marienloher Str.
RothewegGustav-Schultze-StraßeBonifatiuskircheWürttemberger WegIngolstädter Weg
An der
Talle
Schloß Neuhaus
AntoniusstraßeUrbanstraße
Verner Straße
Almeri
ng
Mersch
weg
Mentro
pstra
ße
Mittelw
eg
Gesam
tschu
le
Fries
enweg
TÜV
Abzw. F
ischt
eiche
Schil
lerstr
aße
Hohe Kamp
Sande Kirche
Ostenländer Straße
Anemonenweg
Sande Schule
Dirksfeld
Hagebuttenweg
Sunderkampstr.
Sander Friedhof
Dubelohstraße
Schatenweg
HatzfelderPlatz
Memelstraße
Mastbruch Schule
Mastbruch Gaststätte
Dietrichstraße
Husarenstraße
Habichtsweg
Fasanenweg
Bahnkreuzung
Thunebrücke
Hauptwache
Salvatorstraße
Pionierweg
Infanterieweg
Schleswiger WegWilseder Weg
PirolwegAusbesserungswerk
Schützenplatz Nord
Obernheideweg
Lesteweg
*
* Inbetriebnahme nach baulicher Fertigstellung
Marienloh
Neuenbeken
Benhausen
Kaukenberg
Auf derLieth
Dahl
Wewer
Elsen
Gesseln
Sande
Schloß Neuhaus
Mastbruch
Sennelager
Gültig ab 13.02.2005
In den Nächten von Freitag auf Samstag, Samstag auf Sonntag und vor
ausgewählten Feiertagenab Zentralstation Paderborn
www.padersprinter.de
N4 Dahl
Nachtliniennetz [Nachtbus]im Stadtgebiet Paderborn
www.nachtbusse-paderborn.de
Martin Nöllenburg 33 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Labeling
unlabeled metro map oflittle use in practicelabels
occupy spacemay not overlap
static edge labeling isNP-hard [Tollis, Kakoulis ’01]
combine layout andlabeling for better results
N8
N7
N6
N5
N4
N3
N2
N1
Zentral-station
Neuhäuser TorDetmolderTor
Michaelstr.Heiersstr.
Am Bogen
Kasseler StraßeWesterntor
Maspernplatz
Gierstor
NordbahnhofHeinrichskirche
UhlandstraßeSteubenstraße
Gottfried-Keller-Weg
Mörikestraße
Englische Siedlung
Berline
r Ring
Langer Weg
Fröbelstr.
Piepen-turmweg
Schulze-Delitzsch-Straße
Lipps
pring
er Str
.
Kirchb
rede
Buchh
olz
Papenberg
Postweg
Kloster
garte
n
Ronc
allipl
atz
Beksch
er Berg
Druhe
imer
Straß
e
Holtgre
vens
traße
Bf Kasseler Tor
Schulbrede
Hilligenbusch
Uni/Schöne Aussicht
Am Laugrund
Corveyer Weg
Bahneinschnitt
Hochs
tiftss
tr.
Südr
ing
Uni/Sü
dring
Im SpiringsfeldeGertru-denstr.
KilianplatzQuerweg
Stephanusstraße
Elisabethkirche
Kilian
bad
Mälzerstr.Abtsbrede
Sighardstr.Ilseweg
Breslau
er Str
.
Walden
burge
r Str.
Grüner Weg
Frank
furte
r Weg
BetriebshofBarkhausen
StembergKleestraßeIm Tigg
WinkelsgartenFixberg
Weikenberg
Delbrücker WegTriftweg Im
Lich
tenfel
de
Voessingweg
Neuenheerser WegLiethstaudamm
Auf der LiethBürener Weg
Borgentreicher WegPeckelsheimer Weg
Vinsebecker WegWeißdornweg
Mistelweg
Bussardweg
Kaukenberg
Kleing
. Dah
ler W
eg
Iggen
haus
er Weg
Lang
efeld
Bergso
hle
Dahler
Heid
e
Dahl P
ost
Braken
berg
Lülingsberg
Pastorskamp
Win-friedstr.Josefs-krankenhausFrauenklinik
Im BruchhofRummelsberg
Am Zollhaus Zwetschenweg
Ludwigsfelder Ring
Am NiesenteichDr.-Mertens-Weg
Anhalter WegGerold
Füllers HeideStadtheide
Talle-TerrassenWaldweg
SchlesierwegIm Vogtland
Zum KampeMarienloh Mitte
SennewegVon-Dript-Weg
Dören-Park
Schwabenweg
Hauptbahnhof
Klöcknerstraße
PontanusstraßeTechn. Rathaus
WestfriedhofIm Lohfeld
Riemecker Feld
DelpstraßeHeinz-Nixdorf-Ring
Alme Aue
Am Almerfeld
OstalleeCarl-Diem-StraßeWewerstraße
Blumenstraße
Spritzenhaus
Von-Ketteler-StraßeElsen Schule
BohlenwegGasthof Zur Heide
MühlenteichstraßeKarl-Arnold-Straße
Sander Straße
FürstenwegRolandsweg
Freibad/SchützenplatzFerrariweg
MuseumsForumPadersee
An der KapelleFürstenallee
Marienloher Str.
RothewegGustav-Schultze-StraßeBonifatiuskircheWürttemberger WegIngolstädter Weg
An der
Talle
Schloß Neuhaus
AntoniusstraßeUrbanstraße
Verner Straße
Almeri
ng
Mersch
weg
Mentro
pstra
ße
Mittelw
eg
Gesam
tschu
le
Fries
enweg
TÜV
Abzw. F
ischt
eiche
Schil
lerstr
aße
Hohe Kamp
Sande Kirche
Ostenländer Straße
Anemonenweg
Sande Schule
Dirksfeld
Hagebuttenweg
Sunderkampstr.
Sander Friedhof
Dubelohstraße
Schatenweg
HatzfelderPlatz
Memelstraße
Mastbruch Schule
Mastbruch Gaststätte
Dietrichstraße
Husarenstraße
Habichtsweg
Fasanenweg
Bahnkreuzung
Thunebrücke
Hauptwache
Salvatorstraße
Pionierweg
Infanterieweg
Schleswiger WegWilseder Weg
PirolwegAusbesserungswerk
Schützenplatz Nord
Obernheideweg
Lesteweg
*
* Inbetriebnahme nach baulicher Fertigstellung
Marienloh
Neuenbeken
Benhausen
Kaukenberg
Auf derLieth
Dahl
Wewer
Elsen
Gesseln
Sande
Schloß Neuhaus
Mastbruch
Sennelager
Gültig ab 13.02.2005
In den Nächten von Freitag auf Samstag, Samstag auf Sonntag und vor
ausgewählten Feiertagenab Zentralstation Paderborn
www.padersprinter.de
N4 Dahl
Nachtliniennetz [Nachtbus]im Stadtgebiet Paderborn
www.nachtbusse-paderborn.de
Martin Nöllenburg 33 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Labeling
unlabeled metro map oflittle use in practicelabels
occupy spacemay not overlap
static edge labeling isNP-hard [Tollis, Kakoulis ’01]
combine layout andlabeling for better results
N8
N7
N6
N5
N4
N3
N2
N1
Zentral-station
Neuhäuser TorDetmolderTor
Michaelstr.Heiersstr.
Am Bogen
Kasseler StraßeWesterntor
Maspernplatz
Gierstor
NordbahnhofHeinrichskirche
UhlandstraßeSteubenstraße
Gottfried-Keller-Weg
Mörikestraße
Englische Siedlung
Berline
r Ring
Langer Weg
Fröbelstr.
Piepen-turmweg
Schulze-Delitzsch-Straße
Lipps
pring
er Str
.
Kirchb
rede
Buchh
olz
Papenberg
Postweg
Kloster
garte
n
Ronc
allipl
atz
Beksch
er Berg
Druhe
imer
Straß
e
Holtgre
vens
traße
Bf Kasseler Tor
Schulbrede
Hilligenbusch
Uni/Schöne Aussicht
Am Laugrund
Corveyer Weg
Bahneinschnitt
Hochs
tiftss
tr.
Südr
ing
Uni/Sü
dring
Im SpiringsfeldeGertru-denstr.
KilianplatzQuerweg
Stephanusstraße
Elisabethkirche
Kilian
bad
Mälzerstr.Abtsbrede
Sighardstr.Ilseweg
Breslau
er Str
.
Walden
burge
r Str.
Grüner Weg
Frank
furte
r Weg
BetriebshofBarkhausen
StembergKleestraßeIm Tigg
WinkelsgartenFixberg
Weikenberg
Delbrücker WegTriftweg Im
Lich
tenfel
de
Voessingweg
Neuenheerser WegLiethstaudamm
Auf der LiethBürener Weg
Borgentreicher WegPeckelsheimer Weg
Vinsebecker WegWeißdornweg
Mistelweg
Bussardweg
Kaukenberg
Kleing
. Dah
ler W
eg
Iggen
haus
er Weg
Lang
efeld
Bergso
hle
Dahler
Heid
e
Dahl P
ost
Braken
berg
Lülingsberg
Pastorskamp
Win-friedstr.Josefs-krankenhausFrauenklinik
Im BruchhofRummelsberg
Am Zollhaus Zwetschenweg
Ludwigsfelder Ring
Am NiesenteichDr.-Mertens-Weg
Anhalter WegGerold
Füllers HeideStadtheide
Talle-TerrassenWaldweg
SchlesierwegIm Vogtland
Zum KampeMarienloh Mitte
SennewegVon-Dript-Weg
Dören-Park
Schwabenweg
Hauptbahnhof
Klöcknerstraße
PontanusstraßeTechn. Rathaus
WestfriedhofIm Lohfeld
Riemecker Feld
DelpstraßeHeinz-Nixdorf-Ring
Alme Aue
Am Almerfeld
OstalleeCarl-Diem-StraßeWewerstraße
Blumenstraße
Spritzenhaus
Von-Ketteler-StraßeElsen Schule
BohlenwegGasthof Zur Heide
MühlenteichstraßeKarl-Arnold-Straße
Sander Straße
FürstenwegRolandsweg
Freibad/SchützenplatzFerrariweg
MuseumsForumPadersee
An der KapelleFürstenallee
Marienloher Str.
RothewegGustav-Schultze-StraßeBonifatiuskircheWürttemberger WegIngolstädter Weg
An der
Talle
Schloß Neuhaus
AntoniusstraßeUrbanstraße
Verner Straße
Almeri
ng
Mersch
weg
Mentro
pstra
ße
Mittelw
eg
Gesam
tschu
le
Fries
enweg
TÜV
Abzw. F
ischt
eiche
Schil
lerstr
aße
Hohe Kamp
Sande Kirche
Ostenländer Straße
Anemonenweg
Sande Schule
Dirksfeld
Hagebuttenweg
Sunderkampstr.
Sander Friedhof
Dubelohstraße
Schatenweg
HatzfelderPlatz
Memelstraße
Mastbruch Schule
Mastbruch Gaststätte
Dietrichstraße
Husarenstraße
Habichtsweg
Fasanenweg
Bahnkreuzung
Thunebrücke
Hauptwache
Salvatorstraße
Pionierweg
Infanterieweg
Schleswiger WegWilseder Weg
PirolwegAusbesserungswerk
Schützenplatz Nord
Obernheideweg
Lesteweg
*
* Inbetriebnahme nach baulicher Fertigstellung
Marienloh
Neuenbeken
Benhausen
Kaukenberg
Auf derLieth
Dahl
Wewer
Elsen
Gesseln
Sande
Schloß Neuhaus
Mastbruch
Sennelager
Gültig ab 13.02.2005
In den Nächten von Freitag auf Samstag, Samstag auf Sonntag und vor
ausgewählten Feiertagenab Zentralstation Paderborn
www.padersprinter.de
N4 Dahl
Nachtliniennetz [Nachtbus]im Stadtgebiet Paderborn
www.nachtbusse-paderborn.de
Martin Nöllenburg 33 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Modeling Labels
Model labels as special metro lines:
put all labels between eachpair of interchange stationsinto one parallelogram,
allow parallelograms tochange sides,bad news: a lot moreplanarity constraintsgood news: callbackmethod helps
v
w
r
s
t
u
Frankfurt (Main)
Mainz
Heidelberg
Karlsruhe
Mannheim
Martin Nöllenburg 34 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Modeling Labels
Model labels as special metro lines:
put all labels between eachpair of interchange stationsinto one parallelogram,allow parallelograms tochange sides,
bad news: a lot moreplanarity constraintsgood news: callbackmethod helps
v
w
r
s
t
u
Frankfurt (Main)
Mainz
Heidelberg
Karlsruhe
Mannheim
Martin Nöllenburg 34 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Modeling Labels
Model labels as special metro lines:
put all labels between eachpair of interchange stationsinto one parallelogram,allow parallelograms tochange sides,
bad news: a lot moreplanarity constraintsgood news: callbackmethod helps
Frankfurt (Main)
Mainz
Heidelberg
Karlsruhe
Mannheim
vr
s
t
u w
Martin Nöllenburg 34 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Modeling Labels
Model labels as special metro lines:
put all labels between eachpair of interchange stationsinto one parallelogram,allow parallelograms tochange sides,bad news: a lot moreplanarity constraints
good news: callbackmethod helps
Frankfurt (Main)
Mainz
Heidelberg
Karlsruhe
Mannheim
vr
s
t
u w
Martin Nöllenburg 34 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Modeling Labels
Model labels as special metro lines:
put all labels between eachpair of interchange stationsinto one parallelogram,allow parallelograms tochange sides,bad news: a lot moreplanarity constraintsgood news: callbackmethod helps
Frankfurt (Main)
Mainz
Heidelberg
Karlsruhe
Mannheim
vr
s
t
u w
Martin Nöllenburg 34 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Results – Sydney unlabeledInput Input |V | |E | fcs. |L|
full 174 183reduced 88 97
11 10
Martin Nöllenburg 35 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Results – Sydney unlabeledInput Input |V | |E | fcs. |L|
full 174 183reduced 88 97
11 10
↓MIP constr. var.
full 152,194 37,802callback 3,529 4,834skipped? 3,034 1,642
Martin Nöllenburg 35 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Results – Sydney unlabeledInput Input |V | |E | fcs. |L|
full 174 183reduced 88 97
11 10
↓MIP constr. var.
full 152,194 37,802callback? 3,529 4,834skipped? 3,034 1,642
?) 23 minutes w/o proof of opt.?) constr. of 3 edge pairs added
Martin Nöllenburg 35 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Results – Sydney unlabeledInput Output (23 min.)
Martin Nöllenburg 35 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Results – Sydney unlabeledOfficial map Output (23 min.)
Martin Nöllenburg 35 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Results – Sydney labeledInput Input |V | |E | fcs. |L|
full 174 183reduced 88 97
1110
labeled 242 270 30
Martin Nöllenburg 36 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Results – Sydney labeledInput Input |V | |E | fcs. |L|
full 174 183reduced 88 97
1110
labeled 242 270 30
↓MIP constr. var.
full 1,191,406 290,137callback 21,988 92,681skipped? 6,838 2,969
Martin Nöllenburg 36 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Results – Sydney labeledInput Input |V | |E | fcs. |L|
full 174 183reduced 88 97
1110
labeled 242 270 30
↓MIP constr. var.
full 1,191,406 290,137callback? 21,988 92,681skipped? 6,838 2,969
?) 10:30 hours w/o proof of opt.?) add constr. of 123 edge pairs
Martin Nöllenburg 36 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Results – Sydney labeledInput Output (10:30 hrs.)
Doons
ide
Rooty
Hill
Mt D
ruitt
St Mar
ys
Wer
ringt
on
Kingsw
ood
Penrit
h
Emu
Plains
Canley Vale
Fairfield
Yennora
Guildford
Berala
Loftus
Engadine
Heathcote
Waterfall
Wynyard
Glenfield
Town Hall
North Sydney
Circula
r Qua
y
Seven Hills
Toongabbie
Pendle Hill
Wentworthville
Westmead
Parramatta
Hornsby
Central
Kirraw
ee
Gymea
Mira
nda
Caring
bah
Woo
loowar
e
Cronu
lla
Normanhurst
Thornleigh
Pennant Hills
Beecroft
Cheltenham
Epping
Eastwood
Denistone
West Ryde
Meadowbank
Rhodes
Concord West
North Strathfield
Tempe
Cabramatta
Sutherland
Wolli Creek
Milsons Point
Asquith
Mt Colah
Mt Kuring−gai
Berowra
Waverton
Wollstonecraft
St Leonards
Artarmon
Chatswood
Roseville
Lindfield
Killara
Gordon
Pymble
Turramurra
Warrawee
Wahroonga
Waitara
Mac
dona
ldtow
n
Newto
wn
Stanm
ore
Peter
sham
Lewish
am
Summ
er H
ill
Ashfie
ld
Croyd
on
Burwoo
d
Liverpool
Sefto
n
Rosehill
Camellia
Rydalmere
Dundas
Telopea
Carlingford
St James
Merrylands
Museum
Erskineville
St Peters
Arncliffe
Banksia
Rockdale
Kogarah
Carlton
Allawah
Hurstville
Penshurst
Mortdale
Oatley
Como
Jannali
Holswor
thy
East H
ills
Panan
ia
Reves
by
Padsto
w
Riverw
ood
Narwee
Bever
ly Hills
Kingsg
rove
Bexley
Nor
th
Bardw
ell P
ark
Turre
lla
Clyde
Olympic Park
Granville
Casula
Leumeah
Minto
Ingleburn
Macquarie Fields
Harris Park
Martin Place
Strathfield
Campbelltown
Flemington
International
Domestic
Mascot
Green SquareRegents Park
Birrong
Mar
rickv
ille
Dulwich
Hill
Hurlst
one
Park
Cante
rbur
y
Camps
ie
Belmor
e
Lake
mba
Wile
y Par
k
Punch
bowl
Banks
town
Yagoo
na
Kings C
ross
Edgec
liff
Bondi
Junc
tion
Carra
mar
Villawoo
d
Leigh
tonf
ield
Cheste
r Hill
Lidcombe
Blacktown
Homeb
ush
Warwick Farm
Auburn
Marayong
Quakers Hill
Schofields
Riverstone
Vineyard
Mulgrave
Windsor
Clarendon
East Richmond
Richmond
Macarthur
Syden
ham
Redfern
Martin Nöllenburg 36 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Results – Sydney labeledOfficial map Output (10:30 hrs.)
Doons
ide
Rooty
Hill
Mt D
ruitt
St Mar
ys
Wer
ringt
on
Kingsw
ood
Penrit
h
Emu
Plains
Canley Vale
Fairfield
Yennora
Guildford
Berala
Loftus
Engadine
Heathcote
Waterfall
Wynyard
Glenfield
Town Hall
North Sydney
Circula
r Qua
y
Seven Hills
Toongabbie
Pendle Hill
Wentworthville
Westmead
Parramatta
Hornsby
Central
Kirraw
ee
Gymea
Mira
nda
Caring
bah
Woo
loowar
e
Cronu
lla
Normanhurst
Thornleigh
Pennant Hills
Beecroft
Cheltenham
Epping
Eastwood
Denistone
West Ryde
Meadowbank
Rhodes
Concord West
North Strathfield
Tempe
Cabramatta
Sutherland
Wolli Creek
Milsons Point
Asquith
Mt Colah
Mt Kuring−gai
Berowra
Waverton
Wollstonecraft
St Leonards
Artarmon
Chatswood
Roseville
Lindfield
Killara
Gordon
Pymble
Turramurra
Warrawee
Wahroonga
Waitara
Mac
dona
ldtow
n
Newto
wn
Stanm
ore
Peter
sham
Lewish
am
Summ
er H
ill
Ashfie
ld
Croyd
on
Burwoo
d
Liverpool
Sefto
n
Rosehill
Camellia
Rydalmere
Dundas
Telopea
Carlingford
St James
Merrylands
Museum
Erskineville
St Peters
Arncliffe
Banksia
Rockdale
Kogarah
Carlton
Allawah
Hurstville
Penshurst
Mortdale
Oatley
Como
Jannali
Holswor
thy
East H
ills
Panan
ia
Reves
by
Padsto
w
Riverw
ood
Narwee
Bever
ly Hills
Kingsg
rove
Bexley
Nor
th
Bardw
ell P
ark
Turre
lla
Clyde
Olympic Park
Granville
Casula
Leumeah
Minto
Ingleburn
Macquarie Fields
Harris Park
Martin Place
Strathfield
Campbelltown
Flemington
International
Domestic
Mascot
Green SquareRegents Park
Birrong
Mar
rickv
ille
Dulwich
Hill
Hurlst
one
Park
Cante
rbur
y
Camps
ie
Belmor
e
Lake
mba
Wile
y Par
k
Punch
bowl
Banks
town
Yagoo
na
Kings C
ross
Edgec
liff
Bondi
Junc
tion
Carra
mar
Villawoo
d
Leigh
tonf
ield
Cheste
r Hill
Lidcombe
Blacktown
Homeb
ush
Warwick Farm
Auburn
Marayong
Quakers Hill
Schofields
Riverstone
Vineyard
Mulgrave
Windsor
Clarendon
East Richmond
Richmond
Macarthur
Syden
ham
Redfern
Martin Nöllenburg 36 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Results – Sydney labeledOfficial map Output (1:40 hrs.)
Doonside
Rooty Hill
Mt Druitt
St Marys
Werrington
Kingswood
Penrith
Emu Plains
Canley Vale
Fairfield
Yennora
Guildford
Berala
Loftus
Engadine
Heathcote
Waterfall
Wynyard
Glenfield
Town Hall
North Sydney
Circ
ular
Qua
y
Seven Hills
Toongabbie
Pendle Hill
Wentworthville
Westmead
Parramatta
Hornsby
Central
Kirraw
ee
Gym
ea
Mira
nda
Car
ingb
ah
Woo
loow
are
Cro
nulla
Normanhurst
Thornleigh
Pennant Hills
Beecroft
Cheltenham
Epping
Eastwood
Denistone
West Ryde
Meadowbank
Rhodes
Concord West
North Strathfield
Tempe
Cabramatta
Sutherland
Wolli Creek
Milsons Point
Asquith
Mt Colah
Mt Kuring−gai
Berowra
Waverton
Wollstonecraft
St Leonards
Artarmon
Chatswood
Roseville
Lindfield
Killara
Gordon
Pymble
Turramurra
Warrawee
Wahroonga
Waitara
Mac
dona
ldto
wn
New
town
Stanm
ore
Peter
sham
Lewisha
m
Summ
er H
ill
Ashfie
ld
Cro
ydon
Burwoo
d
Liverpool
Sefto
n
Rosehill
Camellia
Rydalmere
Dundas
Telopea
Carlingford
St James
Merrylands
Museum
Erskineville
St Peters
Arncliffe
Banksia
Rockdale
Kogarah
Carlton
Allawah
Hurstville
Penshurst
Mortdale
Oatley
Como
Jannali
Holsw
orth
y
East H
ills
Panan
ia
Rev
esby
Padstow
River
woo
d
Nar
wee
Bever
ly H
ills
Kings
grov
e
Bexley Nor
th
Bardw
ell P
ark
Turre
lla
Clyde
Olympic Park
Granville
Casula
Leumeah
Minto
Ingleburn
Macquarie Fields
Harris Park
Martin Place
Strathfield
Campbelltown
Flemington
International
Domestic
Mascot
Green SquareRegents Park
Birrong
Mar
rickv
ille
Dulwich
Hill
Hur
lsto
ne P
ark
Can
terb
ury
Cam
psie
Belm
ore
Lake
mba
Wile
y Par
k
Punch
bowl
Banks
town
Yagoo
na
Kings
Cro
ss
Edgec
liff
Bondi Jun
ction
Car
ram
ar
Villawoo
d
Leight
onfie
ld
Che
ster
Hill
Lidcombe
Blacktown
Hom
ebus
h
Warwick Farm
Auburn
Marayong
Quakers Hill
Schofields
Riverstone
Vineyard
Mulgrave
Windsor
Clarendon
East Richmond
Richmond
Macarthur
Sydenham
Redfern
Martin Nöllenburg 36 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Sydney: Related Work[Hong et al. GD’04] (7.6 sec.) Our output (10:30 hrs.)
Doons
ide
Rooty
Hill
Mt D
ruitt
St Mar
ys
Wer
ringt
on
Kingsw
ood
Penrit
h
Emu
Plains
Canley Vale
Fairfield
Yennora
Guildford
Berala
Loftus
Engadine
Heathcote
Waterfall
Wynyard
Glenfield
Town Hall
North Sydney
Circula
r Qua
y
Seven Hills
Toongabbie
Pendle Hill
Wentworthville
Westmead
Parramatta
Hornsby
Central
Kirraw
ee
Gymea
Mira
nda
Caring
bah
Woo
loowar
e
Cronu
lla
Normanhurst
Thornleigh
Pennant Hills
Beecroft
Cheltenham
Epping
Eastwood
Denistone
West Ryde
Meadowbank
Rhodes
Concord West
North Strathfield
Tempe
Cabramatta
Sutherland
Wolli Creek
Milsons Point
Asquith
Mt Colah
Mt Kuring−gai
Berowra
Waverton
Wollstonecraft
St Leonards
Artarmon
Chatswood
Roseville
Lindfield
Killara
Gordon
Pymble
Turramurra
Warrawee
Wahroonga
Waitara
Mac
dona
ldtow
n
Newto
wn
Stanm
ore
Peter
sham
Lewish
am
Summ
er H
ill
Ashfie
ld
Croyd
on
Burwoo
d
Liverpool
Sefto
n
Rosehill
Camellia
Rydalmere
Dundas
Telopea
Carlingford
St James
Merrylands
Museum
Erskineville
St Peters
Arncliffe
Banksia
Rockdale
Kogarah
Carlton
Allawah
Hurstville
Penshurst
Mortdale
Oatley
Como
Jannali
Holswor
thy
East H
ills
Panan
ia
Reves
by
Padsto
w
Riverw
ood
Narwee
Bever
ly Hills
Kingsg
rove
Bexley
Nor
th
Bardw
ell P
ark
Turre
lla
Clyde
Olympic Park
Granville
Casula
Leumeah
Minto
Ingleburn
Macquarie Fields
Harris Park
Martin Place
Strathfield
Campbelltown
Flemington
International
Domestic
Mascot
Green SquareRegents Park
Birrong
Mar
rickv
ille
Dulwich
Hill
Hurlst
one
Park
Cante
rbur
y
Camps
ie
Belmor
e
Lake
mba
Wile
y Par
k
Punch
bowl
Banks
town
Yagoo
na
Kings C
ross
Edgec
liff
Bondi
Junc
tion
Carra
mar
Villawoo
d
Leigh
tonf
ield
Cheste
r Hill
Lidcombe
Blacktown
Homeb
ush
Warwick Farm
Auburn
Marayong
Quakers Hill
Schofields
Riverstone
Vineyard
Mulgrave
Windsor
Clarendon
East Richmond
Richmond
Macarthur
Syden
ham
Redfern
Martin Nöllenburg 37 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Sydney: Related Work[Stott, Rodgers TVCG’10] (2 hrs.)
Marayong
QuakersHill
Schofields
Riverstone
Vineyard
Mulgrave
Windsor
Clarendon
EastRichmond
Richmond
DoonsideRooty
HillMt
DruittSt
MarysWerrington
Kingswood
Penrith
EmuPlains
Blacktown
SevenHills
ToongabbiePendle
Hill
Wentworthville
Westmead
Parramatta
Rosehill
Camellia
Rydalmere
Dundas
TelopeaCarlingford
Clyde
Granville
CanleyVale
Fairfield
Yennora
Guildford
Merrylands
HarrisPark
Berala
OlympicPark
StrathfieldFlemington
RegentsParkBirrong
Lidcombe
HomebushAuburn
Normanhurst
Thornleigh
PennantHills
Beecroft
Cheltenham
Epping
Eastwood
Denistone
WestRyde
Meadowbank
Rhodes
ConcordWest
NorthStrathfield
Hornsby
Asquith
MtColah
MtKuring-gai
Berowra
Waverton
Wollstonecraft
StLeonards
Artarmon
Chatswood
Roseville
Lindfield
Killara
Gordon
Pymble
Turramurra
Warrawee
Wahroonga
Waitara
NorthSydney
CircularQuay
MilsonsPoint
KingsCross
Edgecliff BondiJunction
Wynyard
TownHall
Central
StJames
Museum
MartinPlace
Redfern
Loftus
Engadine
HeathcoteWaterfall
KirraweeGymeaMirandaCaringbah
Woolooware
Cronulla
Sutherland
Como
Jannali
Arncliffe
Banksia
Rockdale
Kogarah
Carlton
Allawah
Hurstville
Penshurst
Mortdale
Oatley
WolliCreek
InternationalAirport
DomesticAirport
Mascot
GreenSquare
Holsworthy
EastHills
PananiaRevesby
Padstow Riverwood NarweeBeverly
HillsKingsgrove
BexleyNorth
BardwellPark Turrella
MarrickvilleDulwichHill
HurlstonePark
Canterbury
Campsie
Belmore
Lakemba
WileyPark
Punchbowl
Bankstown
Yagoona
Sydenham
Tempe
Erskineville
StPeters
Macdonaldtown
Newtown
Stanmore
Petersham
Lewisham
SummerHill
AshfieldCroydon
Burwood
Glenfield
Cabramatta
Liverpool
Sefton
Casula
CarramarVillawood
Leightonfield
ChesterHill
WarwickFarm
Leumeah
Minto
Ingleburn
MacquarieFields
Campbelltown
Macarthur
Our output (10:30 hrs.)
Doons
ide
Rooty
Hill
Mt D
ruitt
St Mar
ys
Wer
ringt
on
Kingsw
ood
Penrit
h
Emu
Plains
Canley Vale
Fairfield
Yennora
Guildford
Berala
Loftus
Engadine
Heathcote
Waterfall
Wynyard
Glenfield
Town Hall
North Sydney
Circula
r Qua
y
Seven Hills
Toongabbie
Pendle Hill
Wentworthville
Westmead
Parramatta
Hornsby
Central
Kirraw
ee
Gymea
Mira
nda
Caring
bah
Woo
loowar
e
Cronu
lla
Normanhurst
Thornleigh
Pennant Hills
Beecroft
Cheltenham
Epping
Eastwood
Denistone
West Ryde
Meadowbank
Rhodes
Concord West
North Strathfield
Tempe
Cabramatta
Sutherland
Wolli Creek
Milsons Point
Asquith
Mt Colah
Mt Kuring−gai
Berowra
Waverton
Wollstonecraft
St Leonards
Artarmon
Chatswood
Roseville
Lindfield
Killara
Gordon
Pymble
Turramurra
Warrawee
Wahroonga
Waitara
Mac
dona
ldtow
n
Newto
wn
Stanm
ore
Peter
sham
Lewish
am
Summ
er H
ill
Ashfie
ld
Croyd
on
Burwoo
d
Liverpool
Sefto
n
Rosehill
Camellia
Rydalmere
Dundas
Telopea
Carlingford
St James
Merrylands
Museum
Erskineville
St Peters
Arncliffe
Banksia
Rockdale
Kogarah
Carlton
Allawah
Hurstville
Penshurst
Mortdale
Oatley
Como
Jannali
Holswor
thy
East H
ills
Panan
ia
Reves
by
Padsto
w
Riverw
ood
Narwee
Bever
ly Hills
Kingsg
rove
Bexley
Nor
th
Bardw
ell P
ark
Turre
lla
Clyde
Olympic Park
Granville
Casula
Leumeah
Minto
Ingleburn
Macquarie Fields
Harris Park
Martin Place
Strathfield
Campbelltown
Flemington
International
Domestic
Mascot
Green SquareRegents Park
Birrong
Mar
rickv
ille
Dulwich
Hill
Hurlst
one
Park
Cante
rbur
y
Camps
ie
Belmor
e
Lake
mba
Wile
y Par
k
Punch
bowl
Banks
town
Yagoo
na
Kings C
ross
Edgec
liff
Bondi
Junc
tion
Carra
mar
Villawoo
d
Leigh
tonf
ield
Cheste
r Hill
Lidcombe
Blacktown
Homeb
ush
Warwick Farm
Auburn
Marayong
Quakers Hill
Schofields
Riverstone
Vineyard
Mulgrave
Windsor
Clarendon
East Richmond
Richmond
Macarthur
Syden
ham
Redfern
Martin Nöllenburg 37 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Large Example: London
2 2
2
2
2
45
8 8 6
2
4
4
65
41
3
2
43
3
33 1
1
3
3
59 7 7Special fares apply
5
5
6
4
4River Thames
A
B
C
D
E
F
1 2 3 4 5 6 7 8 9
1 2 3 4 5 76 8 9
A
B
C
D
E
F
This diagram is an evolution of the original design conceived in 1931 by Harry BeckCorrect at time of going to print, October 2010
Transport for LondonMAYOR OF LONDON
Transport for London
AmershamChorleywood
Mill Hill East
Rickmansworth
Perivale
KentishTown West
CamdenRoad
Dalston Kingsland
Hackney CentralWanstead Park
Vauxhall
Hanger Lane
Edgware
Burnt Oak
Colindale
Hendon Central
Brent Cross
Golders Green
West Silvertown
Pontoon Dock
London City Airport
Woolwich Arsenal
King George V
Hampstead
Belsize Park
Chalk Farm
Chalfont &Latimer
Chesham
New Cross Gate
Moor Park
NorthwoodNorthwoodHills
Pinner
North Harrow
Custom House for ExCeL
Prince Regent
Royal Albert
Beckton Park
Cyprus
Gallions Reach
Beckton
Watford
Croxley
Fulham Broadway
LambethNorth
HeathrowTerminal 4
Harrow-on-the-Hill
KensalRise
Canonbury
BethnalGreen
Westferry
SevenSisters
Blackwall
BrondesburyPark
HampsteadHeath
HarringayGreen Lanes
LeytonstoneHigh Road
LeytonMidland Road
NorthwickPark
PrestonRoad
RoyalVictoria
WembleyPark
Rayners Lane
Watford High Street
RuislipGardens
South Ruislip
Greenford
Northolt
South Harrow
Sudbury Hill
Sudbury Town
Alperton
Pimlico
Park Royal
North Ealing
Acton Central
South Acton
Ealing Broadway
Watford Junction
West Ruislip
Bushey
Carpenders Park
Hatch End
North Wembley
West Brompton
Ealing Common
South Kenton
Kenton
Wembley Central
Kensal Green
Queen’s Park
Gunnersbury
Kew Gardens
Richmond
Stockwell
Bow Church
Stonebridge Park
Harlesden
Camden Town
Willesden Junction
Headstone Lane
Parsons Green
Putney Bridge
East Putney
Southfields
Wimbledon Park
Wimbledon
Island Gardens
Greenwich
Deptford Bridge
South Quay
Crossharbour
Mudchute
Heron Quays
West India Quay
Elverson Road
Oakwood
Cockfosters
Southgate
Arnos Grove
Bounds Green
Theydon Bois
Epping
Debden
Loughton
Buckhurst Hill
WalthamstowQueen’s Road
Woodgrange Park
Leytonstone
Leyton
Wood Green
Turnpike Lane
Manor House
Stanmore
Canons Park
Queensbury
Kingsbury
High Barnet
Totteridge & Whetstone
Woodside Park
West Finchley
Finchley Central
Woodford
South Woodford
Snaresbrook
Hainault
Fairlop
Barkingside
Newbury Park
East Finchley
Highgate
Archway
Devons Road
Langdon Park
All Saints
Tufnell Park
Kentish Town
Neasden
Dollis Hill
Willesden Green
South Tottenham
Swiss Cottage
ImperialWharf
Brixton
Kilburn
West Hampstead
Blackhorse Road
Acton Town
CanningTown
Finchley Road
Highbury &Islington
Canary Wharf
Stratford
FinsburyPark
Elephant & Castle
Stepney Green
Barking
East HamUpton Park
Plaistow
Poplar
West Ham
Upper Holloway
PuddingMill Lane
Kennington
Borough
Elm ParkDagenhamEast
DagenhamHeathway
Becontree
Upney
Heathrow Terminal 5
Finchley Road& Frognal
Crouch Hill
Northfields
Boston Manor
South Ealing
Osterley
Hounslow Central
Hounslow East
Clapham North
Oval
Clapham Common
Clapham South
Balham
Tooting Bec
Tooting Broadway
Colliers Wood
South Wimbledon
Arsenal
Holloway Road
Caledonian Road
Morden West Croydon
HounslowWest
Hatton Cross
HeathrowTerminals 1, 2, 3
ClaphamJunction
WestHarrow
BrondesburyCaledonian
Road &Barnsbury
TottenhamHale
WalthamstowCentral
HackneyWick
Homerton
WestActon
Limehouse EastIndia
Crystal Palace
ChiswickPark
RodingValley
GrangeHill
Chigwell
Redbridge
GantsHill
Wanstead
Ickenham
TurnhamGreen
Uxbridge
Hillingdon Ruislip
GospelOak
Mile End
Bow Road
Bromley-by-Bow
Upminster
Upminster Bridge
Hornchurch
Norwood Junction
Sydenham
Forest Hill
Anerley
Penge West
Honor Oak Park
Brockley
Harrow &Wealdstone
Cutty Sark for Maritime Greenwich
RuislipManor
Eastcote
Wapping
Shadwell
New Cross
CanadaWater
Surrey Quays
Whitechapel
Lewisham
Kilburn Park
Regent’s Park
KilburnHigh Road
EdgwareRoad
SouthHampstead
GoodgeStreet
Shepherd’s BushMarket
Goldhawk Road
Hammersmith
Bayswater
Warren Street
Aldgate
Euston
Farringdon
BarbicanRussellSquare
Kensington(Olympia)
MorningtonCrescent
High StreetKensington
Old Street
St. John’s Wood
Green Park
BakerStreet
NottingHill Gate
Victoria
AldgateEast
Blackfriars
Mansion House
Cannon Street
OxfordCircus
BondStreet
TowerHill
Westminster
TottenhamCourt Road
PiccadillyCircus
CharingCross
Holborn
Tower Gateway
Monument
Moorgate
Leicester Square
London Bridge
St. Paul’s
Hyde Park Corner
Knightsbridge
StamfordBrook
RavenscourtPark
WestKensington
NorthActon
HollandPark
Marylebone
Angel
Queensway MarbleArch
SouthKensington
Earl’sCourt
SloaneSquare
Covent Garden
LiverpoolStreet
GreatPortland
Street
Bank
EastActon
ChanceryLane
LancasterGate
Warwick AvenueMaida Vale
Fenchurch Street
Paddington
BaronsCourt
GloucesterRoad St. James’s
Park Temple
Latimer Road
Ladbroke Grove
Royal Oak
Westbourne Park
Bermondsey
Rotherhithe
ShoreditchHigh Street
Dalston Junction
Haggerston
Hoxton
Wood Lane
Shepherd’sBush
WhiteCity
King’s CrossSt. Pancras
EustonSquareEdgware
Road
Waterloo
Southwark
Embankment NorthGreenwichfor The O2
Tube map
Key to lines Check before you travelBakerloo
Central
No special arrangements
Circle
ChigwellGrange HillRoding Valley
Served until about 2400
Hammersmith& City
No special arrangements
Canary WharfJubilee Step-free interchange between Underground, Canary Wharf DLR andHeron Quays DLR stations at street level
Metropolitan Chesham Change at Chalfont & Latimer on most trains
Northern
Blackfriars
Cannon Street
Underground station closed until late 2011Open until 2100 Mondays to Fridays.Closed Saturdaysand Sundays
District Blackfriars
Cannon Street
Kensington (Olympia)
Underground station closed until late 2011Open until 2100 Mondays to Fridays.Closed Saturdaysand Sundays
Camden Town
Charing Cross branch
Mill Hill East
From 1300 until 1730 Sundays open for interchange and exit onlyChange at Kennington at off-peak times if travelling towards or from MordenChange at Finchley Central at off-peak times
Piccadilly Covent Garden
Eastcote to Uxbridge
Heathrow Terminal 4
Hounslow West
Turnham Green
A short walk from either Leicester Square (6 minutes) or Holborn (9 minutes)
Not served by Piccadilly line trains early mornings
Open until 2400 Mondays to Saturdays and until 2330 Sundays. Trains may wait for eight minutes before continuing to Terminals 1,2,3
Step-free access for wheelchair users only
Served by Piccadilly line trains early mornings and late evenings only
No special arrangements
No special arrangements
Heron Quays
West India Quay
Overground
DLR
Victoria
Waterloo & City Bank to Waterloo
Step-free interchange between Heron Quays and Canary Wharf Underground station at street level.
Not served by DLR trains from Bank towards Lewisham at peak times
Open 0615 until 2148 Mondays to Fridays and 0800 until 1830 Saturdays. Closed Sundays and public holidays
Served 0700 until 2345 Mondays to Saturdays and 0800 until 2345 Sundays
Martin Nöllenburg 38 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Large Example: London10:24 hrs.
Martin Nöllenburg 38 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Large Example: London15:08 min.
Martin Nöllenburg 38 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Are we done yet?
more user interactionhow to handle large stations and many parallel lines?formulate global aesthetics like symmetry and balanceoctilinear maps are not necessarily always best – how tocompute curved metro maps?
Martin Nöllenburg 39 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Summary
METROMAPLAYOUT is NP-hardformulation of hard and soft constraints as MIPcombined layout and labelingMIP size & runtime reductionshigh-quality resultsMIP can schematize any kind of graph sketch
For more info see:
M. Nöllenburg and A. Wolff. Drawing and labeling high-quality metromaps by mixed-integer programming. IEEE Trans. Visualization andComputer Graphics 17(5):626–641, 2011.
Martin Nöllenburg 40 40 Drawing Metro Maps
Our ModelNP-HardnessOur Solution
MIP FormulationLabelingExperiments
Summary
METROMAPLAYOUT is NP-hardformulation of hard and soft constraints as MIPcombined layout and labelingMIP size & runtime reductionshigh-quality resultsMIP can schematize any kind of graph sketch
For more info see:
M. Nöllenburg and A. Wolff. Drawing and labeling high-quality metromaps by mixed-integer programming. IEEE Trans. Visualization andComputer Graphics 17(5):626–641, 2011.
Martin Nöllenburg 40 40 Drawing Metro Maps