1.45k likes | 1.45k Views
Discrete Optimization Lecture 4 – Part 1. M. Pawan Kumar pawan.kumar@ecp.fr. Slides available online http:// mpawankumar.info. €1000. Steal at most 2 items. €400. €1000. €700. Greedy Algorithm. Steal at most 1 item. €400. €1000. €1700. €700. Greedy Algorithm. Steal at most 0 items.
E N D
Discrete OptimizationLecture 4 – Part 1 M. Pawan Kumar pawan.kumar@ecp.fr Slides available online http://mpawankumar.info
€1000 Steal at most 2 items €400 €1000 €700 Greedy Algorithm
Steal at most 1 item €400 €1000 €1700 €700 Greedy Algorithm
Steal at most 0 items €400 €1700 Greedy Algorithm Success
€1000 Steal at most 2.5 kg 2 kg €400 €1000 1 kg 2 kg €700 Greedy Algorithm (Most Expensive) 1.5 kg
Steal at most 0.5 kg €400 €1000 1 kg 2 kg €700 Greedy Algorithm (Most Expensive) 1.5 kg Failure
€1000 Steal at most 2.5 kg 2 kg €400 €1000 1 kg 2 kg €700 Greedy Algorithm (Best Ratio) 1.5 kg
Steal at most 0.5 kg €400 Why? €1000 1 kg 2 kg €700 Greedy Algorithm (Best Ratio) 1.5 kg Failure
Outline • Matroids • Examples of Matroids • Dual Matroid
Subset System Set S Non-empty collection of subsets I Property: If X I and Y⊆X, then Y I (S, I) is a subset system
Hereditary Property Set S Non-empty collection of subsets I Property: If X I and Y⊆X, then Y I (S, I) is a subset system
Example Set S = {1,2,…,m} I = Set of all X ⊆ S such that |X| ≤ k Is (S, I) a subset system? Yes
Example Set S = {1,2,…,m}, w ≥ 0 I = Set of all X ⊆ S such that ΣsX w(s) ≤ W Is (S, I) a subset system Yes Not true if w can be negative
Matroid Subset system (S, I) Property: If X, Y I and |X| < |Y| then there exists a s Y\X such that X∪{s} I M = (S, I) is a matroid
Augmentation/Exchange Property Subset system (S,I) Property: If X, Y I and |X| < |Y| then there exists a s Y\X such that X∪{s} I M = (S, I) is a matroid
Example Set S = {1,2,…,m} I = Set of all X ⊆ S such that |X| ≤ k Is M = (S,I) a matroid? Yes Uniform matroid
Example Set S = {1,2,…,m}, w ≥ 0 I = Set of all X ⊆ S such that ΣsX w(s) ≤ W Is M = (S,I) a matroid? No Coincidence? No
Matroids (S, I) is a matroid ⟹ (S, I) admits an optimal greedy algorithm
Matroids (S, I) is a matroid ⟹ (S, I) admits an optimal greedy algorithm Why? We will find out by the end of the lecture
Outline • Matroids • Connection to Linear Algebra • Connection to Graph Theory • Examples of Matroids • Dual Matroid
1 2 1 2 2 2 2 2 1 2 1 2 2 4 2 4 1 2 3 4 2 4 6 8 3 3 3 3 2 4 2 4 1 1 1 1 Matrix A Subset of columns {a1,a2,…,ak} ✗ Linearly independent (LI)? There exists no α ≠ 0 such that Σi αiai = 0
1 2 1 2 2 2 2 2 1 2 1 2 2 4 2 4 1 2 3 4 2 4 6 8 3 3 3 3 2 4 2 4 1 1 1 1 Matrix A Subset of columns {a1,a2,…,ak} ✓ Linearly independent (LI)? There exists no α ≠ 0 such that Σi αiai = 0
1 2 1 2 2 2 2 2 1 2 1 2 2 4 2 4 1 2 3 4 2 4 6 8 3 3 3 3 2 4 2 4 1 1 1 1 Matrix A Subset of columns {a1,a2,…,ak} ✓ Linearly independent (LI)? There exists no α ≠ 0 such that Σi αiai = 0
1 2 1 2 2 2 2 2 1 2 1 2 2 4 2 4 1 2 3 4 2 4 6 8 3 3 3 3 2 4 2 4 1 1 1 1 Matrix A Subset of columns {a1,a2,…,ak} ✓ Linearly independent (LI)? There exists no α ≠ 0 such that Σi αiai = 0
1 2 1 2 2 2 2 2 1 2 1 2 2 4 2 4 1 2 3 4 2 4 6 8 3 3 3 3 2 4 2 4 1 1 1 1 Matrix A Subset of columns {a1,a2,…,ak} Subset of LI columns are LI Define a subset system
Subset System Matrix A of size n x m, S = {1,2,…,m} X ⊆ S, A(X) = set of columns of A indexed by X X I if and only if A(X) are linearly independent Is M = (S,I) a matroid?
Answer Yes Linear Matroid Matroids connected to Linear Algebra Inspires some naming conventions
Independent Set Matroid M = (S, I) X ⊆ S is independent if X I X ⊆ S is dependent if X ∉ I
Independent Sets of Linear Matroid Matrix A of size n x m, S = {1,2,…,m} X ⊆ S, A(X) = set of columns of A indexed by X X ⊆ S is independent if column vectors A(X) are linearly independent
Independent Sets of Uniform Matroid S = {1,2,…,m} X ⊆ S X ⊆ S is independent if |X| ≤ k
Base of a Subset Matroid M = (S, I) X is a base of U ⊆S if it satisfies three properties (i) X ⊆ U (ii) X ∈ I (iii) There exists no U’∈I, such that X ⊂ U’ ⊆ U Inclusionwise maximal independent subset of U
Base of a Subset (Linear Matroid) 1 2 1 2 2 2 2 2 1 2 1 2 2 4 2 4 1 2 3 4 2 4 6 8 3 3 3 3 2 4 2 4 1 1 1 1 U ✗ Is X a base of U?
Base of a Subset (Linear Matroid) 1 2 1 2 2 2 2 2 1 2 1 2 2 4 2 4 1 2 3 4 2 4 6 8 3 3 3 3 2 4 2 4 1 1 1 1 U ✗ Is X a base of U?
Base of a Subset (Linear Matroid) 1 2 1 2 2 2 2 2 1 2 1 2 2 4 2 4 1 2 3 4 2 4 6 8 3 3 3 3 2 4 2 4 1 1 1 1 U ✓ Is X a base of U?
Base of a Subset (Linear Matroid) 1 2 1 2 2 2 2 2 1 2 1 2 2 4 2 4 1 2 3 4 2 4 6 8 3 3 3 3 2 4 2 4 1 1 1 1 U ✗ Is X a base of U?
Base of a Subset (Linear Matroid) 1 2 1 2 2 2 2 2 1 2 1 2 2 4 2 4 1 2 3 4 2 4 6 8 3 3 3 3 2 4 2 4 1 1 1 1 U ✓ Is X a base of U?
Base of a Subset (Linear Matroid) 1 2 1 2 2 2 2 2 1 2 1 2 2 4 2 4 1 2 3 4 2 4 6 8 3 3 3 3 2 4 2 4 1 1 1 1 U ✓ Is X a base of U?
Base of a Subset (Linear Matroid) 1 2 1 2 2 2 2 2 1 2 1 2 2 4 2 4 1 2 3 4 2 4 6 8 3 3 3 3 2 4 2 4 1 1 1 1 U Base of U?
Base of a Subset (Linear Matroid) Matrix A of size n x m, S = {1,2,…,m} X ⊆ S, A(X) = set of columns of A indexed by X X I if and only if A(X) are linearly independent X ⊆ S is base of U if A(X) is a base of A(U)
Base of a Subset (Uniform Matroid) S = {1,2,…,m} X ⊆ S I = Set of all X ⊆ S such that |X| ≤ k X ⊆ S is base of U if X ⊆ U and |X| = min{|U|,k}
An Interesting Property M = (S, I) is a subset system M is a matroid ⟹ For all U ⊆ S, all bases of U have same size Proof?
An Interesting Property M = (S, I) is a subset system M is a matroid ⟹ For all U ⊆ S, all bases of U have same size Proof?
An Interesting Property M = (S, I) is a subset system M is a matroid ⟺ For all U ⊆ S, all bases of U have same size An alternate definition for matroids
Rank of a Subset Matroid M = (S, I) U ⊆S rM(U) = Size of a base of U
Rank of a Subset (Linear Matroid) 1 2 1 2 2 2 2 2 1 2 1 2 2 4 2 4 1 2 3 4 2 4 6 8 3 3 3 3 2 4 2 4 1 1 1 1 U 2 rM(U)?
Rank of a Subset (Linear Matroid) 1 2 1 2 2 2 2 2 1 2 1 2 2 4 2 4 1 2 3 4 2 4 6 8 3 3 3 3 2 4 2 4 1 1 1 1 U 1 rM(U)?
Rank of a Subset (Linear Matroid) Matrix A of size n x m, S = {1,2,…,m} X ⊆ S, A(X) = set of columns of A indexed by X X I if and only if A(X) are linearly independent rM(U) is equal to rank of the matrix with columns A(U)
Rank of a Subset (Uniform Matroid) S = {1,2,…,m} X ⊆ S I = Set of all X ⊆ S such that |X| ≤ k rM(U) is equal to min{|U|,k}
Base of a Matroid Matroid M = (S, I) X is a base S
Base of a Linear Matroid 1 2 1 2 2 2 2 2 1 2 1 2 2 4 2 4 1 2 3 4 2 4 6 8 3 3 3 3 2 4 2 4 1 1 1 1 ✗ Is X a base?