Post on 28-May-2018
Connectivity andTiling Algorithms
Stefan van Zwam
Department of MathematicsLouisiana State University
Phylanx Kick-off meetingBaton Rouge, August 24, 2017
2/29
Stefan van Zwam Connectivity and Tiling Algorithms
Part IMy research area: matroid theory
3/29
Stefan van Zwam Connectivity and Tiling Algorithms
Matroids everywhere!Matroid circuits generalize
• Minimal linearly dependent subsets of vectors
• Cycles in graphs
• Min-weight codewords in error-correcting codes
• . . .
3/29
Stefan van Zwam Connectivity and Tiling Algorithms
Matroids everywhere!Matroid circuits generalize
• Minimal linearly dependent subsets of vectors
• Cycles in graphs
• Min-weight codewords in error-correcting codes
• . . .Concepts borrowed/generalized/unified:
• Deletion, contraction (=projection): minors
• Duality (orthogonality)
• Connectivity
4/29
Stefan van Zwam Connectivity and Tiling Algorithms
Connectivity in graphs and matroidsDefinition.A graph is vertically k-connected if it has no vertexcut of size < k.
4/29
Stefan van Zwam Connectivity and Tiling Algorithms
Connectivity in graphs and matroidsDefinition.A graph is vertically k-connected if it has no vertexcut of size < k.
Definition.A matroid is k-connected if it has no -separation oforder < k.
4/29
Stefan van Zwam Connectivity and Tiling Algorithms
Connectivity in graphs and matroidsDefinition.A graph is vertically k-connected if it has no vertexcut of size < k.
Definition.A matroid is k-connected if it has no -separation oforder < k.
Definition.A k-separation is a partition (A,B) with |A|, |B| ≥ kand λ(A) < k, where
λ(A) = r(A) + r(B) − r(A ∪ B)�
≥ r(A ∩ B)�
5/29
Stefan van Zwam Connectivity and Tiling Algorithms
Connectivity in graphs and matroids
BA BA
6/29
Stefan van Zwam Connectivity and Tiling Algorithms
ApplicationTheorem (Whitney).3-connected planar graphs have a uniqueplane embedding.
6/29
Stefan van Zwam Connectivity and Tiling Algorithms
ApplicationTheorem (Whitney).3-connected planar graphs have a uniqueplane embedding.
7/29
Stefan van Zwam Connectivity and Tiling Algorithms
Obtaining 3-connectivityDecompose graph/matroid into 3-connected pieces:
8/29
Stefan van Zwam Connectivity and Tiling Algorithms
Globally highly connected matroids
9/29
Stefan van Zwam Connectivity and Tiling Algorithms
Tangles, the idea
10/29
Stefan van Zwam Connectivity and Tiling Algorithms
TangleDefinition.
λ(X) = r(X) + r(E − X) − r(M).
Definition.T is a tangle of M of order θ if
• λ(X) < θ ⇒ X ∈ T or E − X ∈ T• X ∈ T ⇒ λ(X) < θ
• X, Y, Z ∈ T ⇒ X ∪ Y ∪ Z 6= E(M)• E − {e} 6∈ T for all e ∈ E(M)
10/29
Stefan van Zwam Connectivity and Tiling Algorithms
TangleDefinition.
λ(X) = r(X) + r(E − X) − r(M).
Definition.T is a tangle of M of order θ if
• λ(X) < θ ⇒ X ∈ T or E − X ∈ T• X ∈ T ⇒ λ(X) < θ
• X, Y, Z ∈ T ⇒ X ∪ Y ∪ Z 6= E(M)• E − {e} 6∈ T for all e ∈ E(M)
Definition.Branch width is maximum θ such that M has tangleof order θ.
11/29
Stefan van Zwam Connectivity and Tiling Algorithms
Algorithmic consequences• Small branch width =⇒ thin class of graphs, dy-
namic programming
• Large branch width =⇒ large grid minor =⇒redundant vertex
11/29
Stefan van Zwam Connectivity and Tiling Algorithms
Algorithmic consequences• Small branch width =⇒ thin class of graphs, dy-
namic programming
• Large branch width =⇒ large grid minor =⇒redundant vertex
Theorem (Geelen, Gerards, Whittle 2008).Let M be representable over GF(q). If branch widthsufficiently large, then M has k × k grid minor.
12/29
Stefan van Zwam Connectivity and Tiling Algorithms
Tangle matroidTheorem (Geelen, Gerards, Robertson, Whit-tle).
ρ(X) :=§
min{λ(Y) : X ⊆ Y ∈ T } if X ⊆ Y ∈ Tθ otherwise.
Then ρ is the rank function of a matroid, M(T ).
12/29
Stefan van Zwam Connectivity and Tiling Algorithms
Tangle matroidTheorem (Geelen, Gerards, Robertson, Whit-tle).
ρ(X) :=§
min{λ(Y) : X ⊆ Y ∈ T } if X ⊆ Y ∈ Tθ otherwise.
Then ρ is the rank function of a matroid, M(T ).
Question.Do tangles help analysis of big data sets?
Observation (Whittle, Diestel 2016).Might help to identify features in images.
13/29
Stefan van Zwam Connectivity and Tiling Algorithms
The Structure of Highly Connected Ma-troidsGeelen, Gerards, Whittle announced the following:
Theorem. Let M be proper minor-closed class ofbinary matroids. There exist k, t such that every k-connected matroid M ∈ M has M or M∗ equal to arank-t perturbation of a graphic matroid.
13/29
Stefan van Zwam Connectivity and Tiling Algorithms
The Structure of Highly Connected Ma-troidsGeelen, Gerards, Whittle announced the following:
Theorem. Let M be proper minor-closed class ofbinary matroids. There exist k, t such that every k-connected matroid M ∈ M has M or M∗ equal to arank-t perturbation of a graphic matroid.
Perturbation: add low-rank matrix to representa-tion. Matroidal view: small number of lifts and pro-jections.
14/29
Stefan van Zwam Connectivity and Tiling Algorithms
Application: error-correcting codes
Noise
Channel
e
+ e
15/29
Stefan van Zwam Connectivity and Tiling Algorithms
Application: error-correcting codes
Noise
Channel DecoderEncoder y
e
y + e
16/29
Stefan van Zwam Connectivity and Tiling Algorithms
Application: error-correcting codes
17/29
Stefan van Zwam Connectivity and Tiling Algorithms
Asymptotically good codes• Family C1, C2, . . . of linear codes with parameters[n, k, d] is asymptotically good if, for someϵ > 0:
(i) Growing size: n→∞ as →∞(ii) Constant rate: k/n ≥ ϵ(iii) Growing minimum distance: d/n ≥ ϵ
17/29
Stefan van Zwam Connectivity and Tiling Algorithms
Asymptotically good codes• Family C1, C2, . . . of linear codes with parameters[n, k, d] is asymptotically good if, for someϵ > 0:
(i) Growing size: n→∞ as →∞(ii) Constant rate: k/n ≥ ϵ(iii) Growing minimum distance: d/n ≥ ϵ
Theorem. Asymptotically good codes exist.
18/29
Stefan van Zwam Connectivity and Tiling Algorithms
Asymptotically good codes: structure?Operations on a code:
• Puncturing: C\ , remove th coordinate fromeach word
• Shortening: C/, take {c ∈ C : c = 0}, thenremove th coordinate.
18/29
Stefan van Zwam Connectivity and Tiling Algorithms
Asymptotically good codes: structure?Operations on a code:
• Puncturing: C\ , remove th coordinate fromeach word
• Shortening: C/, take {c ∈ C : c = 0}, thenremove th coordinate.
Theorem (Nelson, vZ 2015). Let M be a class ofbinary linear codes closed under puncturing, short-ening. If M contains an asymptotically good se-quence, then M contains all codes.
19/29
Stefan van Zwam Connectivity and Tiling Algorithms
Computational matroid theoryUse computer to
• Generate all small members of matroid classes
• Explore structure
• Perform finite case analysis
20/29
Stefan van Zwam Connectivity and Tiling Algorithms
SageMathSageMath is
• A computer algebra system similar to Maple,Mathematica
• Open source
• Common interface to lots of specialized software
• Well-supported:
É bug trackingÉ sage-support@googlegroups.comÉ AskSage
• In the cloud
• Google Summer of Code Mentor Organization
21/29
Stefan van Zwam Connectivity and Tiling Algorithms
SageMathN = Matroid(field=GF(5),
matrix=[[1,0,0,1,1],[0,1,0,1,0],[0,0,1,1,1]] )
L = [M for M in N.linear_extensions()if M.has_minor(matroids.Uniform(2,5))]
22/29
Stefan van Zwam Connectivity and Tiling Algorithms
Part IITiling algorithms
23/29
Stefan van Zwam Connectivity and Tiling Algorithms
The Spartan system• NumPy-like programming language, implement-
ing 50+ NumPy built-ins
• Lazy evaluation captures these in expressiongraph
• Evaluate when a variable is used, or a user en-forces execution
• Tiling heuristic: greedy. Tile node with mostneighbors first.
24/29
Stefan van Zwam Connectivity and Tiling Algorithms
Spartan’s Tiling Performance
(source: Huang, Chen, Wang, Power, Ortiz, Li, Xiao2015)
25/29
Stefan van Zwam Connectivity and Tiling Algorithms
The Spartan problemTILING(K):INPUT:
• Acyclic expression digraph
• node groups for each call to an operator
• Cost function on edges
PROBLEM: Is there a tiling (representative choice)from each node group such that inputs/outputs arecompatible and sum of edge costs of “activated”edges is less than K?
25/29
Stefan van Zwam Connectivity and Tiling Algorithms
The Spartan problemTILING(K):INPUT:
• Acyclic expression digraph
• node groups for each call to an operator
• Cost function on edges
PROBLEM: Is there a tiling (representative choice)from each node group such that inputs/outputs arecompatible and sum of edge costs of “activated”edges is less than K?
MIN-TILING:Find a tiling that minimizes the sum of edge costs.
26/29
Stefan van Zwam Connectivity and Tiling Algorithms
Theorem (Huang, Chen, Wang, Power, Ortiz,Li, Xiao 2015).MIN-TILING is NP-hard.
26/29
Stefan van Zwam Connectivity and Tiling Algorithms
Theorem (Huang, Chen, Wang, Power, Ortiz,Li, Xiao 2015).MIN-TILING is NP-hard.TILING(K) is NP-complete.
26/29
Stefan van Zwam Connectivity and Tiling Algorithms
Theorem (Huang, Chen, Wang, Power, Ortiz,Li, Xiao 2015).MIN-TILING is NP-hard.TILING(K) is NP-complete.
Proof: Reduction to NAE-3SAT.
27/29
Stefan van Zwam Connectivity and Tiling Algorithms
Approximation AlgorithmsLet P be a minimization problem, usually NP-hard.
Definition.A c-approximation algorithm for P is an efficient al-gorithm that, for every instance of P with optimumvalue OPT(), outputs a feasible solution with cost atmost c ·OPT().
27/29
Stefan van Zwam Connectivity and Tiling Algorithms
Approximation AlgorithmsLet P be a minimization problem, usually NP-hard.
Definition.A c-approximation algorithm for P is an efficient al-gorithm that, for every instance of P with optimumvalue OPT(), outputs a feasible solution with cost atmost c ·OPT().
c can be:
• (F)PTAS: c = 1+ ϵ, but running time depends on ϵ;
• Constant
• Function of input size
28/29
Stefan van Zwam Connectivity and Tiling Algorithms
Tools• Approximation-preserving reductions
• Randomized algorithms
• Primal-dual algorithms
• Ad-hoc techniques
Great success when submodularity appears in prob-lem description (work by Vondrák, Iwata, manyothers)
28/29
Stefan van Zwam Connectivity and Tiling Algorithms
Tools• Approximation-preserving reductions
• Randomized algorithms
• Primal-dual algorithms
• Ad-hoc techniques
Great success when submodularity appears in prob-lem description (work by Vondrák, Iwata, manyothers)
Question.Is there an approximation-preserving NP-hardnessreduction for MIN-TILING?
28/29
Stefan van Zwam Connectivity and Tiling Algorithms
Tools• Approximation-preserving reductions
• Randomized algorithms
• Primal-dual algorithms
• Ad-hoc techniques
Great success when submodularity appears in prob-lem description (work by Vondrák, Iwata, manyothers)
Question.Is there an approximation-preserving NP-hardnessreduction for MIN-TILING?Question.Does MIN-TILING admit an FPTAS? PTAS? Constant-factor approximation?
29/29
Stefan van Zwam Connectivity and Tiling Algorithms
Other analysis: FPT (Fixed-ParameterTractability)Find the optimal solution in running time O(ƒ (k) · n)where
• n is size of the input
• k is some parameter of the input, like branchwidth.
29/29
Stefan van Zwam Connectivity and Tiling Algorithms
Other analysis: FPT (Fixed-ParameterTractability)Find the optimal solution in running time O(ƒ (k) · n)where
• n is size of the input
• k is some parameter of the input, like branchwidth.
Question.Does MIN-TILING admit an FPT algorithm? With re-spect to which parameters?
30/29
Stefan van Zwam Connectivity and Tiling Algorithms
Other analysis: Online Algorithms• Have to make decisions in real time as input gets
slowly revealed
• k-competitive: solution produced by online algo-rithm is at most k times worse than optimal.
30/29
Stefan van Zwam Connectivity and Tiling Algorithms
Other analysis: Online Algorithms• Have to make decisions in real time as input gets
slowly revealed
• k-competitive: solution produced by online algo-rithm is at most k times worse than optimal.
Question.For which k does MIN-TILING admit a k-competitivealgorithm?
31/29
Stefan van Zwam Connectivity and Tiling Algorithms
Meta-questions• Is TILING the appropriate encoding of the prob-
lem?
• Do we have the right cost functions on the edges?
• Can we analyze loops?
• What running times are acceptable?
• In the online setting, how long can we delay a de-cision?
• Is there a huge difference between average-case(practical applications) and worst-case inputs?
32/29
Stefan van Zwam Connectivity and Tiling Algorithms
http://www.math.lsu.edu/~svanzwam/
The End