network algorithmsbetten/pub/network.pdftypical network problems combinatorial optimization abstract...
TRANSCRIPT
![Page 1: Network Algorithmsbetten/pub/network.pdfTypical Network Problems Combinatorial Optimization Abstract The talk presents some ideas on how combinatorial optimization can be used to design](https://reader034.vdocuments.site/reader034/viewer/2022042023/5e7afa68857b9a75a879e89e/html5/thumbnails/1.jpg)
Typical Network Problems Combinatorial Optimization
Network Algorithms
Anton Betten
Department of MathematicsColorado State University
April, 2006
![Page 2: Network Algorithmsbetten/pub/network.pdfTypical Network Problems Combinatorial Optimization Abstract The talk presents some ideas on how combinatorial optimization can be used to design](https://reader034.vdocuments.site/reader034/viewer/2022042023/5e7afa68857b9a75a879e89e/html5/thumbnails/2.jpg)
Typical Network Problems Combinatorial Optimization
Outline
Typical Network ProblemsMinimum Cost Spanning TreeAll Pairs Shortest Distance / PathsMaximum Network FlowTravelling Sales Person (TSP)Graph Clustering
Combinatorial OptimizationWhat is an Optimization Problem?What is a Global Optimum?What is a Local Optimum?Lin-Kernighan 2-optLocal SearchApplication: The Domino Portrait Problem
![Page 3: Network Algorithmsbetten/pub/network.pdfTypical Network Problems Combinatorial Optimization Abstract The talk presents some ideas on how combinatorial optimization can be used to design](https://reader034.vdocuments.site/reader034/viewer/2022042023/5e7afa68857b9a75a879e89e/html5/thumbnails/3.jpg)
Typical Network Problems Combinatorial Optimization
Abstract
The talk presents some ideas on how combinatorialoptimization can be used to design efficient algorithms forgraphs and networks. Local Search is a relatively simplemethod which was proven to be effective in many areas, forinstance graph clustering problems.
![Page 4: Network Algorithmsbetten/pub/network.pdfTypical Network Problems Combinatorial Optimization Abstract The talk presents some ideas on how combinatorial optimization can be used to design](https://reader034.vdocuments.site/reader034/viewer/2022042023/5e7afa68857b9a75a879e89e/html5/thumbnails/4.jpg)
Typical Network Problems Combinatorial Optimization
Typical Network Problems:
1. Minimum Cost Spanning Tree2. All Pairs Shortest Distance / Paths3. Maximum Network Flow (between two nodes, called
source and target)4. Travelling Sales Person (TSP)5. Clustering
![Page 5: Network Algorithmsbetten/pub/network.pdfTypical Network Problems Combinatorial Optimization Abstract The talk presents some ideas on how combinatorial optimization can be used to design](https://reader034.vdocuments.site/reader034/viewer/2022042023/5e7afa68857b9a75a879e89e/html5/thumbnails/5.jpg)
Typical Network Problems Combinatorial Optimization
Minimum Cost Spanning Tree:
Find the cheapest spanning tree(“connect the dots without creating cycles”)
![Page 6: Network Algorithmsbetten/pub/network.pdfTypical Network Problems Combinatorial Optimization Abstract The talk presents some ideas on how combinatorial optimization can be used to design](https://reader034.vdocuments.site/reader034/viewer/2022042023/5e7afa68857b9a75a879e89e/html5/thumbnails/6.jpg)
Typical Network Problems Combinatorial Optimization
![Page 7: Network Algorithmsbetten/pub/network.pdfTypical Network Problems Combinatorial Optimization Abstract The talk presents some ideas on how combinatorial optimization can be used to design](https://reader034.vdocuments.site/reader034/viewer/2022042023/5e7afa68857b9a75a879e89e/html5/thumbnails/7.jpg)
Typical Network Problems Combinatorial Optimization
![Page 8: Network Algorithmsbetten/pub/network.pdfTypical Network Problems Combinatorial Optimization Abstract The talk presents some ideas on how combinatorial optimization can be used to design](https://reader034.vdocuments.site/reader034/viewer/2022042023/5e7afa68857b9a75a879e89e/html5/thumbnails/8.jpg)
Typical Network Problems Combinatorial Optimization
Algorithms by Kruskal and by Prim, very effective:
“Add the cheapest edge which is still possible until everything isconnected.”
Movie 1
![Page 9: Network Algorithmsbetten/pub/network.pdfTypical Network Problems Combinatorial Optimization Abstract The talk presents some ideas on how combinatorial optimization can be used to design](https://reader034.vdocuments.site/reader034/viewer/2022042023/5e7afa68857b9a75a879e89e/html5/thumbnails/9.jpg)
Typical Network Problems Combinatorial Optimization
All Pairs Shortest Distance / Paths
Dijkstra’s algorithm
![Page 10: Network Algorithmsbetten/pub/network.pdfTypical Network Problems Combinatorial Optimization Abstract The talk presents some ideas on how combinatorial optimization can be used to design](https://reader034.vdocuments.site/reader034/viewer/2022042023/5e7afa68857b9a75a879e89e/html5/thumbnails/10.jpg)
Typical Network Problems Combinatorial Optimization
Maximum Network Flow
Algorithm of Ford and Fulkerson:
“augment the current flows until no augmenting path can befound anymore”
![Page 11: Network Algorithmsbetten/pub/network.pdfTypical Network Problems Combinatorial Optimization Abstract The talk presents some ideas on how combinatorial optimization can be used to design](https://reader034.vdocuments.site/reader034/viewer/2022042023/5e7afa68857b9a75a879e89e/html5/thumbnails/11.jpg)
Typical Network Problems Combinatorial Optimization
Travelling Salesman
Visit all cities on a cyclic tour.
Algorithm: Lin / Kernighan: “2-opt”
![Page 12: Network Algorithmsbetten/pub/network.pdfTypical Network Problems Combinatorial Optimization Abstract The talk presents some ideas on how combinatorial optimization can be used to design](https://reader034.vdocuments.site/reader034/viewer/2022042023/5e7afa68857b9a75a879e89e/html5/thumbnails/12.jpg)
Typical Network Problems Combinatorial Optimization
![Page 13: Network Algorithmsbetten/pub/network.pdfTypical Network Problems Combinatorial Optimization Abstract The talk presents some ideas on how combinatorial optimization can be used to design](https://reader034.vdocuments.site/reader034/viewer/2022042023/5e7afa68857b9a75a879e89e/html5/thumbnails/13.jpg)
Typical Network Problems Combinatorial Optimization
Graph Clustering:
![Page 14: Network Algorithmsbetten/pub/network.pdfTypical Network Problems Combinatorial Optimization Abstract The talk presents some ideas on how combinatorial optimization can be used to design](https://reader034.vdocuments.site/reader034/viewer/2022042023/5e7afa68857b9a75a879e89e/html5/thumbnails/14.jpg)
Typical Network Problems Combinatorial Optimization
find “clusters”, for instance:
Example taken fromAndrew King: Graph Clustering with Restricted NeighbourhoodSearch, Ph.D. thesis, University of Toronto, Department ofComputer Science.
![Page 15: Network Algorithmsbetten/pub/network.pdfTypical Network Problems Combinatorial Optimization Abstract The talk presents some ideas on how combinatorial optimization can be used to design](https://reader034.vdocuments.site/reader034/viewer/2022042023/5e7afa68857b9a75a879e89e/html5/thumbnails/15.jpg)
Typical Network Problems Combinatorial Optimization
What is an Optimization Problem?
An instance of an optimization problem is a pair (F , c) where
1. F is a set, whose elements are called “feasible solutions”2. c : F → R a cost function
![Page 16: Network Algorithmsbetten/pub/network.pdfTypical Network Problems Combinatorial Optimization Abstract The talk presents some ideas on how combinatorial optimization can be used to design](https://reader034.vdocuments.site/reader034/viewer/2022042023/5e7afa68857b9a75a879e89e/html5/thumbnails/16.jpg)
Typical Network Problems Combinatorial Optimization
What is a Global Optimum?
An element x ∈ F with c(x) ≤ c(y) for all y ∈ F is called aglobal optimum.
It is often too hard determine a global optimum.
The set F may be prohibitively large.
![Page 17: Network Algorithmsbetten/pub/network.pdfTypical Network Problems Combinatorial Optimization Abstract The talk presents some ideas on how combinatorial optimization can be used to design](https://reader034.vdocuments.site/reader034/viewer/2022042023/5e7afa68857b9a75a879e89e/html5/thumbnails/17.jpg)
Typical Network Problems Combinatorial Optimization
What is a Local Optimum?
An element x ∈ F with c(x) ≤ c(y) for all y ∈ F which are“close” to x is called local optimum.
For this to make sense, one needs to define a concept of“neighborhood”
This is problem dependent.
Sometimes it is hard to find even a single point in F .
![Page 18: Network Algorithmsbetten/pub/network.pdfTypical Network Problems Combinatorial Optimization Abstract The talk presents some ideas on how combinatorial optimization can be used to design](https://reader034.vdocuments.site/reader034/viewer/2022042023/5e7afa68857b9a75a879e89e/html5/thumbnails/18.jpg)
Typical Network Problems Combinatorial Optimization
Lin-Kernighan 2-opt
Let F be the set of all tours, i.e. sequences
[i1, i2, . . . , in] which are permutations of the cities 1, . . . , n
the tour is i1 − i2 − i3 − · · · − in − i1 (cyclically).
The size of F is prohibitively large
![Page 19: Network Algorithmsbetten/pub/network.pdfTypical Network Problems Combinatorial Optimization Abstract The talk presents some ideas on how combinatorial optimization can be used to design](https://reader034.vdocuments.site/reader034/viewer/2022042023/5e7afa68857b9a75a879e89e/html5/thumbnails/19.jpg)
Typical Network Problems Combinatorial Optimization
Lin-Kernighan 2-opt
Let
c([i1, i2, . . . , in]
)=
n−1∑j=1
dist(ij , ij+1) + dist(in, i1),
i.e., the cost of a tour is the sum of the distances travelled.
![Page 20: Network Algorithmsbetten/pub/network.pdfTypical Network Problems Combinatorial Optimization Abstract The talk presents some ideas on how combinatorial optimization can be used to design](https://reader034.vdocuments.site/reader034/viewer/2022042023/5e7afa68857b9a75a879e89e/html5/thumbnails/20.jpg)
Typical Network Problems Combinatorial Optimization
Lin-Kernighan 2-opt
Start with a random tour x ∈ F ,
x = [i1, i2, . . . , in]
i.e.,i1 7→ i2 7→ · · · 7→ in 7→ i1
![Page 21: Network Algorithmsbetten/pub/network.pdfTypical Network Problems Combinatorial Optimization Abstract The talk presents some ideas on how combinatorial optimization can be used to design](https://reader034.vdocuments.site/reader034/viewer/2022042023/5e7afa68857b9a75a879e89e/html5/thumbnails/21.jpg)
Typical Network Problems Combinatorial Optimization
Lin-Kernighan 2-optChoose two random numbers a, b with 1 ≤ a ≤ b ≤ n and a, bat cyclic distance ≥ 2.
Reconnect as follows:
i1 7→ · · · 7→ ia 7→ ib−1 7→ ib−2 7→ · · · 7→ ia+1 7→ ib 7→ · · · 7→ in 7→ i1.
![Page 22: Network Algorithmsbetten/pub/network.pdfTypical Network Problems Combinatorial Optimization Abstract The talk presents some ideas on how combinatorial optimization can be used to design](https://reader034.vdocuments.site/reader034/viewer/2022042023/5e7afa68857b9a75a879e89e/html5/thumbnails/22.jpg)
Typical Network Problems Combinatorial Optimization
Local SearchIdea:given x ∈ Fwe try to find an improvement in a “neighborhood” N(x)
![Page 23: Network Algorithmsbetten/pub/network.pdfTypical Network Problems Combinatorial Optimization Abstract The talk presents some ideas on how combinatorial optimization can be used to design](https://reader034.vdocuments.site/reader034/viewer/2022042023/5e7afa68857b9a75a879e89e/html5/thumbnails/23.jpg)
Typical Network Problems Combinatorial Optimization
Local Search: Variable Depth
Idea:
do a (random) number of neighbor’s neighbors.
Only the last of this chain of neighbors is compared to thecurrent point.
The hope is that this allows us to go through a valley (or climbover a mountain)
![Page 24: Network Algorithmsbetten/pub/network.pdfTypical Network Problems Combinatorial Optimization Abstract The talk presents some ideas on how combinatorial optimization can be used to design](https://reader034.vdocuments.site/reader034/viewer/2022042023/5e7afa68857b9a75a879e89e/html5/thumbnails/24.jpg)
Typical Network Problems Combinatorial Optimization
Local Search: Variable Depth
The last two pictures are taken from:Papadimitriou/Steiglitz: Combinatorial Optimization.
![Page 25: Network Algorithmsbetten/pub/network.pdfTypical Network Problems Combinatorial Optimization Abstract The talk presents some ideas on how combinatorial optimization can be used to design](https://reader034.vdocuments.site/reader034/viewer/2022042023/5e7afa68857b9a75a879e89e/html5/thumbnails/25.jpg)
Typical Network Problems Combinatorial Optimization
Application: The Domino Portrait Problem
We want to approximate a foto portrait using Dominos (doublenine, say).
We wish to use a fixed number of complete sets.
![Page 26: Network Algorithmsbetten/pub/network.pdfTypical Network Problems Combinatorial Optimization Abstract The talk presents some ideas on how combinatorial optimization can be used to design](https://reader034.vdocuments.site/reader034/viewer/2022042023/5e7afa68857b9a75a879e89e/html5/thumbnails/26.jpg)
Typical Network Problems Combinatorial Optimization
Bader Al-Shamarey: Two Topics in Combinatorial Optimization.Ph.D. thesis, CSU, 2007.