Download presentation
Presentation is loading. Please wait.
Published byBritton Bryan Modified over 8 years ago
1
Polyhedral Optimization Lecture 5 – Part 3 M. Pawan Kumar pawan.kumar@ecp.fr Slides available online http://cvn.ecp.fr/personnel/pawan/
2
Maximizing Submodular Functions Greedy Algorithm Analysis Outline
3
Submodular Function Maximization max T ⊆ S f(T) We will assume f is non-negative If not, we can add a constant But we have to be careful during analysis
4
Submodular Function Maximization max T ⊆ S f(T) We will assume f is non-decreasing There exists a trivial solution T = S |T| ≤ k Constraints on the solution
5
Maximizing Submodular Functions Greedy Algorithm Analysis Outline
6
Greedy Algorithm Start with the null set Find an element of S that maximizes gain Add that element to the set While size of set is less than k End
7
Greedy Algorithm Start with the null set Find an element of S that maximizes gain Add that element to the set While size of set is less than k End Define d f (s|T) = f(T ∪ {s}) - f(T)
8
Greedy Algorithm Start with the null set Find an element of S that maximizes gain Add that element to the set While size of set is less than k End Define d f (s|T) = f(T ∪ {s}) - f(T)
9
Greedy Algorithm Find an element of S that maximizes gain Add that element to the set While size of set is less than k End Define d f (s|T) = f(T ∪ {s}) - f(T) Set T 0 = null set and i = 0
10
Greedy Algorithm Find an element of S that maximizes gain Add that element to the set End Define d f (s|T) = f(T ∪ {s}) - f(T) Set T 0 = null set and i = 0 While i < k
11
Greedy Algorithm Add that element to the set End Define d f (s|T) = f(T ∪ {s}) - f(T) Set T 0 = null set and i = 0 While i < k s i = argmax s d f (s| T i ) such that s ∉ T i
12
Greedy Algorithm Define d f (s|T) = f(T ∪ {s}) - f(T) Set T 0 = null set and i = 0 s i = argmax s d f (s| T i ) such that s ∉ T i T i+1 = T i ∪ {s i } While i < k i = i + 1 End
13
Maximizing Submodular Functions Greedy Algorithm Analysis Outline
14
Analysis Let T* = {s* 1, s* 2, … s* k } be an optimal solution We will prove that f(T k ) ≥ (1 - 1/e) f(T*) 1-1/e is approximately 0.63 Multiplicative bound What happens if we had to add a constant?
15
Analysis Let T* = {s* 1, s* 2, … s* k } be an optimal solution Consider the solution T i obtained at iteration i f(T*) ≤ f(T* ∪ T i ) Why?f is non-decreasing
16
Analysis Let T* = {s* 1, s* 2, … s* k } be an optimal solution Consider the solution T i obtained at iteration i f(T*) ≤ f(T* ∪ T i ) = f(T i ) + ∑ j ∈ {1,2,…,k} d f (s* j | T i ∪ {s* 1,…,s* j-1 }) Why?By definition of d f
17
Analysis Let T* = {s* 1, s* 2, … s* k } be an optimal solution Consider the solution T i obtained at iteration i f(T*) ≤ f(T* ∪ T i ) = f(T i ) + ∑ j ∈ {1,2,…,k} d f (s* j | T i ∪ {s* 1,…,s* j-1 }) ≤ f(T i ) + ∑ s* ∈ T* d f (s* | T i ) Why?f is submodular
18
Analysis Let T* = {s* 1, s* 2, … s* k } be an optimal solution Consider the solution T i obtained at iteration i f(T*) ≤ f(T* ∪ T i ) = f(T i ) + ∑ j ∈ {1,2,…,k} d f (s* j | T i ∪ {s* 1,…,s* j-1 }) ≤ f(T i ) + ∑ s* ∈ T* d f (s* | T i ) ≤ f(T i ) + ∑ s* ∈ T* (f(T i+1 ) - f(T i )) Why?Property of the greedy algorithm
19
Analysis Let T* = {s* 1, s* 2, … s* k } be an optimal solution Consider the solution T i obtained at iteration i f(T*) ≤ f(T* ∪ T i ) = f(T i ) + ∑ j ∈ {1,2,…,k} d f (s* j | T i ∪ {s* 1,…,s* j-1 }) ≤ f(T i ) + ∑ s* ∈ T* d f (s* | T i ) ≤ f(T i ) + ∑ s* ∈ T* (f(T i+1 ) - f(T i )) = f(T i ) + k(f(T i+1 ) - f(T i ))
20
Analysis f(T*) - f(T i ) ≤ k(f(T i+1 ) - f(T i )) f(T*) - f(T i+1 ) ≤ (1 - 1/k) (f(T*) - f(T i )) f(T*) - f(T k ) ≤ (1-1/k) k (f(T*) - f(null set)) f(T*) - f(T k ) ≤ (1-1/k) k f(T*) (1- 1/e) f(T*) ≤ f(T k ) ≤ 1/e f(T*)
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.