This document discusses the minimum fill-in problem for sparse matrices. It begins with an introduction to fill-in that occurs during Gaussian elimination due to the introduction of new non-zero elements. It describes how the minimum fill-in problem is NP-hard and discusses various heuristics to minimize fill-in, including minimum degree ordering and nested dissection. The minimum degree algorithm works by repeatedly eliminating the vertex with minimum degree but does not always produce optimal orderings. The document provides examples to illustrate minimum degree and discusses enhancements like mass elimination to improve its performance.
2. Overview
Introduction
• What is Fill-In ?
• Perfect Elimination and Chordal Graphs
• The Minimum Fill-In Problem
Heuristics
• Minimum Degree
• Minimum Deficiency
• Nested Dissection
• Hybrid Algorithm
Approximation Algorithm
3. Sparse Systems of Linear Equations Ax = b
sparse, symmetric, positive definite matrices arise frequently
in physical applications such as
• finite element method
• electrical network analysis
• analysis of structural systems
famous direct methods to solve a linear system Ax = b are
• Gauss Elimination
• Cholesky Factorization
8. Disadvantages of Fill-In
Fill-In increases the storage requirement
Fill-In increases the arithmetic operations needed to solve the system
Questions that arise:
1. Are there instances where no fill is introduced?
2. Is there a way to minimize the Fill-In introduced during elimination ?
9. Modelling the Elimination Process on a Graph
Let the graph G = (V, E) correspond to A and let the vertex vi correspond to xi.
Theorem: Elimination Graph [Parter 1961] Eliminating xi from the subsequent
equations, the new graph Gvi
of the remaining system is formed by:
1. eliminating the vertex vi that corresponds to xi from Gvi−1
2. pair-wise connecting the vertices of N(vi).
v1
v2 v2
v3 v3 v3
v4v4 v4v4
G Gv1
Gv2
Gv3
→→ →
10. Modelling the Elimination Process on a Graph
Proof:
assume aii = 0, then xi = −1/aii k=i aikxk + yi/aii
if aij = 0 no substitution need be made
if aij = 0 and aik = 0 then
• introduce xj to the kth equation and
• introduce xk to the jth equation
12. Solving Ax = b with Cholesky
We can decompose A into A = LLT
We know aij =< li, lj >
constructing L
• Algorithm at blackboard
A = LLT
= LU, where LT
= U
14. Overview
Introduction
• What is Fill-In ?
• Perfect Elimination and Chordal Graphs
• The Minimum Fill-In Problem
Heuristics
• Minimum Degree
• Minimum Deficiency
• Nested Dissection
• Hybrid Algorithm
Approximation Algorithm
15. Perfect Elimination
Definition: [Rose 1972] A is a perfect elimination matrix if there exists a permutation matrix
P such that ˜A = PAPT
= LLT
and aij = 0 ⇒ lij = 0, i < j.
Definition: For a graph G = (V, E) with |V | = n an ordering of V is a bijection
σ : {1, 2, . . . , n} → V .
1 1
22
3 3
4 4
v1v1 v1v1
v2v2 v2v2
v3v3 v3v3
v4 v4v4 v4
×
×
×
× ×
×
×
××
×
×
×
×
×
×
×
×
×
×
×
×
×
××
×
×
×
××
×
×
×××
•
••
→
LT
= LT
=
16. Chordal Graph (Hanjal und Suranyi [1958])
Definition: A Graph G = (V, E) is chordal if every cycle of length ≥ 4 has a chord.
A chord is an edge connecting two nonconsecutive vertices of the cycle.
G1
chordal
G2
not chordal
G3
not chordal
The class of chordal graphs is the class of perfect elimination graphs.
17. Definition: The ordered graph Gσ is monotone transitive when
∀v ∈ V (v, u1) ∈ E and (v, u2) ∈ E =⇒ (u1, u2) ∈ E,
with σ−1
(v) < σ−1
(u1) and σ−1
(v) < σ−1
(u2)
Theorem: (Rose [1972]) For G = (V, E) the following statements are equivalent:
A is a perfect elimination matrix.
∃ an ordering σ of V such that Gσ is monotone transitive
σ is a perfect elimination order
G is chordal
36. The filled graph G+
v1 v2 v3
v4 v5 v6
G+
σ1
The implicit ordering σ1 of the vertices causes a fill of 4.
G+
σ1
= (V, E ∪ F) is the filled graph, where |F| is the size of the fill.
38. Chordal Completion
G+
σ is monotone transitive
Eliminate vertices from G+
σ according to the same order σ used to obtain G+
σ from G
G+
= (V, E ∪ F) is chordal.
G+
is the chordal completion of G
v1 v1v2 v2v3 v3
v4 v4v5 v5v6 v6
G+
σ2
G+
σ1
39. Overview
Introduction
• What is Fill-In ?
• Perfect Elimination and Chordal Graphs
• The Minimum Fill-In Problem
Heuristics
• Minimum Degree
• Minimum Deficiency
• Nested Dissection
• Hybrid Algorithm
Approximation Algorithm
40. Problem Formulation
Minimum Fill-In Problem
Instance: Graph G = (V, E)
Task: Find a set of edges F of smallest size such that
G = (V, E ∪ F) is chordal.
also known as Minimum chordal graph completion Problem
41. Minimum Fill-In is NP-hard
SAT
↓
3 - SAT
↓
Simple Max Cut
↓
Simple Optimal Linear Arrangement ⇒ Optimal Linear Arrangement
↓
Minimum Fill-In
42. Minimum Fill-In vs. Minimal Fill-In
G minimal
chordal completion
minimum
chordal completion
• minimal chordal completion (inclusion-minimal set of edges) can be computed in poly-
nomial time
• can be far from minimum
43. Overview
Introduction
• What is Fill-In ?
• Perfect Elimination and Chordal Graphs
• The Minimum Fill-In Problem
Heuristics
• Minimum Degree
• Minimum Deficiency
• Nested Dissection
• Hybrid Algorithm
Approximation Algorithm
44. Minimum Degree Algorithm
repeatedly finds a vertex of minimum degree and eliminates it
Enhancements
• Mass Elimination using Supernodes [George, Liu 1980]
• Multiple Elimination [Liu 1985]
• External Degree [Liu 1985]
• Approximate Degree [Amestoy, Davis, Duff 1996]
fast algorithm, runs in O(nm+
), where m+
= |E ∪ F|
52. Advantages - Disadvantages Minimum Degree Algorithm
Advantages Disadvantages
fast algorithm does not recognize chordal graphs
does not in general produce a minimal ordering
triangulation produced is arbitrarily
greater than a minimum triangulation
74. Minimum Degree Algorithm
repeatedly finds a vertex of minimum degree and eliminates it
Enhancements
• Mass Elimination using Supernodes [George, Liu 1980]
• Multiple Elimination [Liu 1985]
• External Degree [Liu 1985]
• Approximate Degree [Amestoy, Davis, Duff 1996]
fast algorithm
75. Quotientgraph and Mass Elimination
1. Quotientgraph - Supernodes and Enodes, Reachable Set
2. Mass Elimination - u, v ∈ V are indistinguishable in G if NG(u)∪{u} = NG(v)∪{v}
76. Minimum Degree Algorithm
repeatedly finds a vertex of minimum degree and eliminates it
Enhancements
• Mass Elimination using Supernodes [George, Liu 1980]
• Multiple Elimination [Liu 1985]
• External Degree [Liu 1985]
• Approximate Degree [Amestoy, Davis, Duff 1996]
fast algorithm
77. Multiple Elimination
Determine the minimum degree
Choose the vertices that have the minimum degree
Mark their neighbors as unknown degree
98. Minimum Degree Algorithm
repeatedly finds a vertex of minimum degree and eliminates it
Enhancements
• Mass Elimination using Supernodes [George, Liu 1980]
• Multiple Elimination [Liu 1985]
• External Degree [Liu 1985]
• Approximate Degree [Amestoy, Davis, Duff 1996]
fast algorithm
99. External and Approximate Degree
For a set of vertices X ⊂ V , N(X) = v∈X N(v) − X
external degree of X is |N(X)|, that is the number of adjacent vertices that belong to
other supernodes. NOT the number of adjacent supernodes
approximate degree computes an upper bound on the degrees inexpensively instead of
computing the exact degrees
101. Overview
Introduction
• What is Fill-In ?
• Perfect Elimination and Chordal Graphs
• The Minimum Fill-In Problem
Heuristics
• Minimum Degree
• Minimum Deficiency
• Nested Dissection
• Hybrid Algorithm
Approximation Algorithm
102. Minimum Deficiency
The deficiency of v is the number of edges needed to turn the neighborhood
of a vertex v into a clique
The deficiency corresponds to the number of fill edges introduced
by eliminating v
Try to minimize the overall amount of fill by, at each step,
choosing to eliminate a vertex with minimum deficiency
110. Advantages - Disadvantages Minimum Deficiency Algorithm
Advantages Disadvantages
good quality ordering implementation too expensive
recognizes chordal graphs not always a minimal triangulation
1
1
1
1
1
11
33
111. Overview
Introduction
• What is Fill-In ?
• Perfect Elimination and Chordal Graphs
• The Minimum Fill-In Problem
Heuristics
• Minimum Degree
• Minimum Deficiency
• Nested Dissection
• Hybrid Algorithm
Approximation Algorithm
112. Nested Dissection [George 1973]
Nested Dissection examines the graph as a whole before ordering
• orders the vertices of the graph backwards
• begins by deciding which vertices should be eliminated last
works by selecting a balanced separator
• a set of vertices, that when removed from the graph, partitions it into connected
components
vertices in the separator are placed last in the elimination order
recursively orders each of the connected components
118. Performance Bound
At most O(n log n) fill for graphs with small separators (O(
√
n))[Lipton, Rose, Tarja 1979]
• planar graphs
• graphs with bounded genus
• graphs with bounded degree
Approximation algorithm [Agraval, Klein, Ravi 1990] with performance bound O(
√
d log4
n)
• for bounded degree graphs
Theoretical result [Gilbert 1989]: for any graph there exisits a ND algorithm whose fill is
within O(d log n) of minimum, where d is the maximum degree.
119. Advantages - Disadvantages Nested Dissection
Advantages Disadvantages
good ordering for limited practical use
solving Ax = b in parallel
finding a minimum balanced separator
is NP-hard
no fast algorithms for
finding approximate separators
120. Questions left
What properties should the vertex separator have?
What algorithms should be used to find the vertex separator?
When should the nested recursion be halted?
How should the separator vertices be ordered?
In Practice
When connected component small enough use Minimum Degree Algorithm
121. Overview
Introduction
• What is Fill-In ?
• Perfect Elimination and Chordal Graphs
• The Minimum Fill-In Problem
Heuristics
• Minimum Degree
• Minimum Deficiency
• Nested Dissection
• Hybrid Algorithm
Approximation Algorithm
122. Hybrid Algorithms
take advantage of of the best characteristics of
Minimum Degree and Nested Dissection
using a few levels of separators to control the fill
introduced by minimum degree orders
Hendrickson and Rothberg[1996] is the current champion
of ordering algorithms - BEND (Bruce and Ed’s Nested Dissection)
algorithm has neither known worst case fill nor work analysis
123. BEND - Combining Nested Dissection and Minimum Degree
compress the graph
Nested Dissection finds a few levels of separators until
connected components have size at most n/32 vertices
• using a multilevel algorithm to find vertex separators,
allowing some imbalance
invoke Minimum Degree on the subgraphs
finally apply Minimum Degree to reorder all separator vertices
124. Difference between Nested Dissection and BEND
Nested Dissection BEND
select a balanced separator use multilevel to find separator
allowing some imbalance
recursively order each subgraph recursively order each subgraph
until small enough until n/32
vertices in separator are reorder separator vertices
placed last in any order using Minimum Degree
125. Overview
Introduction
• What is Fill-In ?
• Perfect Elimination and Chordal Graphs
• The Minimum Fill-In Problem
Heuristics
• Minimum Degree
• Minimum Deficiency
• Nested Dissection
• Hybrid Algorithm
Approximation Algorithm
126. Approximation Algorithm
Approximation Ratio is O(8 · OPT)
G = (V, E) has minimum fill size k
identify in G a kernel set of vertices A ⊆ V , |A| ≤ 4k
• using ideas of the partition algorithm
•
triangulate G by adding only edges between vertices of A
no prior knowledge of k