CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 24: Introduction to Submodular Functions. Instructor: Shaddin Dughmi

Similar documents
1 Submodular functions

CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 17: Combinatorial Problems as Linear Programs III. Instructor: Shaddin Dughmi

Submodular Functions Properties Algorithms Machine Learning

CSE541 Class 22. Jeremy Buhler. November 22, Today: how to generalize some well-known approximation results

Optimization of Submodular Functions Tutorial - lecture I

9. Submodular function optimization

EECS 495: Combinatorial Optimization Lecture Manolis, Nima Mechanism Design with Rounding

Monotone Submodular Maximization over a Matroid

Submodularity in Machine Learning

1 Maximizing a Submodular Function

EE595A Submodular functions, their optimization and applications Spring 2011

1 Overview. 2 Multilinear Extension. AM 221: Advanced Optimization Spring 2016

Submodular Functions: Extensions, Distributions, and Algorithms A Survey

CS599: Algorithm Design in Strategic Settings Fall 2012 Lecture 12: Approximate Mechanism Design in Multi-Parameter Bayesian Settings

Learning with Submodular Functions: A Convex Optimization Perspective

1 Matroid intersection

Submodular Functions and Their Applications

Nonlinear Programming (NLP)

Submodular Functions, Optimization, and Applications to Machine Learning

1 Continuous extensions of submodular functions

Semidefinite Programming Basics and Applications

Mathematical Economics: Lecture 16

CS675: Convex and Combinatorial Optimization Fall 2014 Combinatorial Problems as Linear Programs. Instructor: Shaddin Dughmi

Minimization of Symmetric Submodular Functions under Hereditary Constraints

Welfare Maximization with Friends-of-Friends Network Externalities

An Introduction to Submodular Functions and Optimization. Maurice Queyranne University of British Columbia, and IMA Visitor (Fall 2002)

Diffusion of Innovation and Influence Maximization

CS675: Convex and Combinatorial Optimization Fall 2016 Combinatorial Problems as Linear and Convex Programs. Instructor: Shaddin Dughmi

Symmetry and hardness of submodular maximization problems

Maximization of Submodular Set Functions

CS675: Convex and Combinatorial Optimization Fall 2016 Convex Optimization Problems. Instructor: Shaddin Dughmi

Submodular Functions, Optimization, and Applications to Machine Learning

From query complexity to computational complexity (for optimization of submodular functions)

Advanced Combinatorial Optimization Updated April 29, Lecture 20. Lecturer: Michel X. Goemans Scribe: Claudio Telha (Nov 17, 2009)

Gross Substitutes Tutorial

1 Lecture notes Classication. Denition 1. Let z be a set function on the nite set V i.e. z : 2 V R, then z is submodular if

The Steiner Network Problem

1 Lecture 25: Extreme values

arxiv: v3 [cs.ds] 22 Aug 2012

BBM402-Lecture 20: LP Duality

Submodular function optimization: A brief tutorial (Part I)

Approximating Submodular Functions. Nick Harvey University of British Columbia

An algorithm to increase the node-connectivity of a digraph by one

Query and Computational Complexity of Combinatorial Auctions

CS599: Algorithm Design in Strategic Settings Fall 2012 Lecture 11: Ironing and Approximate Mechanism Design in Single-Parameter Bayesian Settings

CS599: Algorithm Design in Strategic Settings Fall 2012 Lecture 7: Prior-Free Multi-Parameter Mechanism Design. Instructor: Shaddin Dughmi

Submodular Functions, Optimization, and Applications to Machine Learning

Integer Linear Programs

Greedy Maximization Framework for Graph-based Influence Functions

x y More precisely, this equation means that given any ε > 0, there exists some δ > 0 such that

Maximizing the Spread of Influence through a Social Network. David Kempe, Jon Kleinberg, Éva Tardos SIGKDD 03

Matroid Optimisation Problems with Nested Non-linear Monomials in the Objective Function

EE595A Submodular functions, their optimization and applications Spring 2011

Economics 204 Fall 2011 Problem Set 2 Suggested Solutions

Submodular Functions, Optimization, and Applications to Machine Learning

Caculus 221. Possible questions for Exam II. March 19, 2002

Lecture notes on the ellipsoid algorithm

A necessary and sufficient condition for the existence of a spanning tree with specified vertices having large degrees

LINEAR PROGRAMMING II

Lecture 10 (Submodular function)

Submodular Maximization with Cardinality Constraints

Provable Approximation via Linear Programming

Fast algorithms for even/odd minimum cuts and generalizations

Convex envelopes, cardinality constrained optimization and LASSO. An application in supervised learning: support vector machines (SVMs)

Constrained Maximization of Non-Monotone Submodular Functions

8.7 Taylor s Inequality Math 2300 Section 005 Calculus II. f(x) = ln(1 + x) f(0) = 0

The Complexity of Maximum. Matroid-Greedoid Intersection and. Weighted Greedoid Maximization

Announcements. Topics: Homework: - sections , 6.1 (extreme values) * Read these sections and study solved examples in your textbook!

LMI Methods in Optimal and Robust Control

K-center Hardness and Max-Coverage (Greedy)

Word Alignment via Submodular Maximization over Matroids

6.254 : Game Theory with Engineering Applications Lecture 7: Supermodular Games

NETS 412: Algorithmic Game Theory March 28 and 30, Lecture Approximation in Mechanism Design. X(v) = arg max v i (a)

arxiv: v2 [cs.ds] 28 Aug 2014

MIT Algebraic techniques and semidefinite optimization February 14, Lecture 3

Applications of Derivatives

Going from graphic solutions to algebraic

Streaming Algorithms for Submodular Function Maximization

Approximation Basics

The Simplex Method for Some Special Problems

Finite Metric Spaces & Their Embeddings: Introduction and Basic Tools

SCRIBERS: SOROOSH SHAFIEEZADEH-ABADEH, MICHAËL DEFFERRARD

Submodular Secretary Problem and Extensions

Calculus 221 worksheet

CS675: Convex and Combinatorial Optimization Spring 2018 The Ellipsoid Algorithm. Instructor: Shaddin Dughmi

On the Power of Robust Solutions in Two-Stage Stochastic and Adaptive Optimization Problems

Preferences and Utility

Nonlinear Discrete Optimization

1 Perfect Matching and Matching Polytopes

Locally Adaptive Optimization: Adaptive Seeding for Monotone Submodular Functions

Semidefinite and Second Order Cone Programming Seminar Fall 2001 Lecture 5

Submodular Maximization by Simulated Annealing

A submodular-supermodular procedure with applications to discriminative structure learning

Maximizing Non-monotone Submodular Set Functions Subject to Different Constraints: Combined Algorithms

Information Theory + Polyhedral Combinatorics

On the Power of Robust Solutions in Two-Stage Stochastic and Adaptive Optimization Problems

Suppose that f is continuous on [a, b] and differentiable on (a, b). Then

MVE165/MMG631 Linear and integer optimization with applications Lecture 8 Discrete optimization: theory and algorithms

Maximization Problems with Submodular Objective Functions

Lecture 1: January 12

Transcription:

CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 24: Introduction to Submodular Functions Instructor: Shaddin Dughmi

Announcements

Introduction We saw how matroids form a class of feasible sets over which optimization of modular objectives is tractable If matroids are discrete analogues of convex sets, then submodular functions are discrete analogues of convex/concave functions Submodular functions behave like convex functions sometimes (minimization) and concave other times (maximization) Today we will introduce submodular functions, go through some examples, and mention some of their properties

Outline 1 Introduction to Submodular Functions

Introduction to Submodular Functions 2/13 Set Functions A set function takes as input a set, and outputs a real number Inputs are subsets of some ground set X f : 2 X R We will focus on set functions where X is finite, and denote n = X

Introduction to Submodular Functions 2/13 Set Functions A set function takes as input a set, and outputs a real number Inputs are subsets of some ground set X f : 2 X R We will focus on set functions where X is finite, and denote n = X Equivalently: map points in the hypercube {0, 1} n to the real numbers Can be plotted as 2 n points in n + 1 dimensional space

Set Functions Introduction to Submodular Functions 3/13 We have already seen modular set functions Associate a weight w i with each i X, and set f(s) = i S w i Discrete analogue of linear functions

Set Functions Introduction to Submodular Functions 3/13 We have already seen modular set functions Associate a weight w i with each i X, and set f(s) = i S w i Discrete analogue of linear functions Direct definition of modularity: f(a) + f(b) = f(a B) + f(a B)

Set Functions Introduction to Submodular Functions 3/13 We have already seen modular set functions Associate a weight w i with each i X, and set f(s) = i S w i Discrete analogue of linear functions Direct definition of modularity: f(a) + f(b) = f(a B) + f(a B) Supmodular/supermodular functions are weak analogues to convex/concave functions (in no particular order!)

Set Functions Introduction to Submodular Functions 3/13 We have already seen modular set functions Associate a weight w i with each i X, and set f(s) = i S w i Discrete analogue of linear functions Direct definition of modularity: f(a) + f(b) = f(a B) + f(a B) Supmodular/supermodular functions are weak analogues to convex/concave functions (in no particular order!) Other possibly useful properties a set function may have: Monotone increasing or decreasing Nonnegative: f(a) 0 for all S X Normalized: f( ) = 0.

Submodular Functions Introduction to Submodular Functions 4/13 Definition 1 A set function f : 2 X R is submodular if and only if f(a) + f(b) f(a B) + f(a B) for all A, B X. Uncrossing two sets reduces their total function value A B A B

Introduction to Submodular Functions 5/13 Submodular Functions Definition 2 A set function f : 2 X R is submodular if and only if f(b {i}) f(b) f(a {i}) f(a)) for all A B X. The marginal value of an additional element exhibits diminishing marginal returns A B i Should remind of concavity

Supermodular Functions Introduction to Submodular Functions 6/13 Definition 0 A set function f : 2 X R is supermodular if and only if f is submodular.

Supermodular Functions Introduction to Submodular Functions 6/13 Definition 0 A set function f : 2 X R is supermodular if and only if f is submodular. Definition 1 A set function f : 2 X R is supermodular if and only if for all A, B X. f(a) + f(b) f(a B) + f(a B)

Supermodular Functions Introduction to Submodular Functions 6/13 Definition 0 A set function f : 2 X R is supermodular if and only if f is submodular. Definition 1 A set function f : 2 X R is supermodular if and only if for all A, B X. Definition 2 f(a) + f(b) f(a B) + f(a B) A set function f : 2 X R is supermodular if and only if for all A B X. f(b {i}) f(b) f(a {i}) f(a))

Introduction to Submodular Functions 7/13 Examples Many common examples are monotone, normalized, and submodular. We mention some. Coverage Functions X is the left hand side of a graph, and f(s) is the total number of neighbors of S. Can think of i X as a set, and f(s) as the total coverage of S.

Introduction to Submodular Functions 7/13 Examples Many common examples are monotone, normalized, and submodular. We mention some. Coverage Functions X is the left hand side of a graph, and f(s) is the total number of neighbors of S. Can think of i X as a set, and f(s) as the total coverage of S. Probability X is a set of probability events, and f(s) is the probability at least one of them occurs.

Examples Social Influence X is the family of nodes in a social network A meme, idea, or product is adopted at a set of nodes S The idea propagates through the network through some random diffusion process Many different models f(s) is the expected number of nodes in the network which end up adopting the idea. Introduction to Submodular Functions 8/13

Examples Social Influence X is the family of nodes in a social network A meme, idea, or product is adopted at a set of nodes S The idea propagates through the network through some random diffusion process Many different models f(s) is the expected number of nodes in the network which end up adopting the idea. Utility Functions When X is a set of goods, f(s) can represent the utility of an agent for a bundle of these goods. Utilities which exhibit diminishing marginal returns are natural in many settings. Introduction to Submodular Functions 8/13

Introduction to Submodular Functions 9/13 Examples Entropy X is a set of random events, and f(s) is the entropy of events S.

Examples Entropy X is a set of random events, and f(s) is the entropy of events S. Matroid Rank The rank function of a matroid is monotone, submodular, and normalized. Introduction to Submodular Functions 9/13

Examples Entropy X is a set of random events, and f(s) is the entropy of events S. Matroid Rank The rank function of a matroid is monotone, submodular, and normalized. Clustering Quality X is the set of nodes in a graph G, and f(s) = E(S) is the internal connectedness of cluster S. Supermodular Introduction to Submodular Functions 9/13

Introduction to Submodular Functions 10/13 Examples There are fewer examples of non-monotone submodular/supermodular functions, which are nontheless fundamental. Graph Cuts X is the set of nodes in a graph G, and f(s) is the number of edges crossing the cut (S, X \ S). Submodular Non-monotone.

Examples Introduction to Submodular Functions 10/13 There are fewer examples of non-monotone submodular/supermodular functions, which are nontheless fundamental. Graph Cuts X is the set of nodes in a graph G, and f(s) is the number of edges crossing the cut (S, X \ S). Submodular Non-monotone. Graph Density X is the set of nodes in a graph G, and f(s) = E(S) S number of edges with both endpoints in S. Non-monotone Neither submodular nor supermodular where E(S) is the

Examples Introduction to Submodular Functions 10/13 There are fewer examples of non-monotone submodular/supermodular functions, which are nontheless fundamental. Graph Cuts X is the set of nodes in a graph G, and f(s) is the number of edges crossing the cut (S, X \ S). Submodular Non-monotone. Graph Density X is the set of nodes in a graph G, and f(s) = E(S) S number of edges with both endpoints in S. Non-monotone Neither submodular nor supermodular where E(S) is the However, maximizing it reduces to maximizing supermodular function E(S) α S for various α > 0 (binary search)

Equivalence of Both Definitions Introduction to Submodular Functions 11/13 Definition 1 f(a) + f(b) f(a B) + f(a B) A B Definition 2 A B i f(b {i}) f(b) f(a {i}) f(a))

Equivalence of Both Definitions Definition 1 f(a) + f(b) f(a B) + f(a B) A B Definition 2 A B i f(b {i}) f(b) f(a {i}) f(a)) Definition 1 Definition 2 To prove (2), let A = A {i} and B = B and apply (1) f(a {i}) + f(b) = f(a ) + f(b ) f(a B ) + f(a B ) = f(a) + f(b {i}) Introduction to Submodular Functions 11/13

Equivalence of Both Definitions Definition 1 A B f(a) + f(b) f(a B) + f(a B) Definition 2 A B i f(b {i}) f(b) f(a {i}) f(a)) Definition 2 Definition 1 To prove (1), start with A = B and repeatedly elements to one but not the other At each step, (2) implies that the LHS of inequality (1) increases more than the RHS Introduction to Submodular Functions 11/13

Operations Preserving Submodularity Introduction to Submodular Functions 12/13 Nonnegative-weighted combinations (a.k.a. conic combinations): If f 1,..., f k are submodular, and w 1,..., w k 0, then g(s) = i w if i (S) is also submodular Special case: adding or subtracting a modular function

Introduction to Submodular Functions 12/13 Operations Preserving Submodularity Nonnegative-weighted combinations (a.k.a. conic combinations): If f 1,..., f k are submodular, and w 1,..., w k 0, then g(s) = i w if i (S) is also submodular Special case: adding or subtracting a modular function Restriction: If f is a submodular function on X, and T X, then g(s) = f(s T ) is submodular

Introduction to Submodular Functions 12/13 Operations Preserving Submodularity Nonnegative-weighted combinations (a.k.a. conic combinations): If f 1,..., f k are submodular, and w 1,..., w k 0, then g(s) = i w if i (S) is also submodular Special case: adding or subtracting a modular function Restriction: If f is a submodular function on X, and T X, then g(s) = f(s T ) is submodular Contraction (a.k.a conditioning): If f is a submodular function on X, and T X, then f T (S) = f(s T ) is submodular

Introduction to Submodular Functions 12/13 Operations Preserving Submodularity Nonnegative-weighted combinations (a.k.a. conic combinations): If f 1,..., f k are submodular, and w 1,..., w k 0, then g(s) = i w if i (S) is also submodular Special case: adding or subtracting a modular function Restriction: If f is a submodular function on X, and T X, then g(s) = f(s T ) is submodular Contraction (a.k.a conditioning): If f is a submodular function on X, and T X, then f T (S) = f(s T ) is submodular Reflection: If f is a submodular function on X, then f(s) = f(x \ S) is also submodular

Introduction to Submodular Functions 12/13 Operations Preserving Submodularity Nonnegative-weighted combinations (a.k.a. conic combinations): If f 1,..., f k are submodular, and w 1,..., w k 0, then g(s) = i w if i (S) is also submodular Special case: adding or subtracting a modular function Restriction: If f is a submodular function on X, and T X, then g(s) = f(s T ) is submodular Contraction (a.k.a conditioning): If f is a submodular function on X, and T X, then f T (S) = f(s T ) is submodular Reflection: If f is a submodular function on X, then f(s) = f(x \ S) is also submodular Others: Dilworth trucation, convolution with modular functions,...

Operations Preserving Submodularity Note Nonnegative-weighted combinations (a.k.a. conic combinations): If f 1,..., f k are submodular, and w 1,..., w k 0, then g(s) = i w if i (S) is also submodular Special case: adding or subtracting a modular function Restriction: If f is a submodular function on X, and T X, then g(s) = f(s T ) is submodular Contraction (a.k.a conditioning): If f is a submodular function on X, and T X, then f T (S) = f(s T ) is submodular Reflection: If f is a submodular function on X, then f(s) = f(x \ S) is also submodular Others: Dilworth trucation, convolution with modular functions,... The minimum or maximum of two submodular functions is not necessarily submodular Introduction to Submodular Functions 12/13

Optimizing Submodular Functions Introduction to Submodular Functions 13/13 As our examples suggest, optimization problems involving submodular functions are very common These can be classified on two axes: constrained/unconstrained and maximization/minimization Maximization Minimization Unconstrained NP-hard Polynomial time 1 2 approximation via convex opt Constrained Usually NP-hard Usually NP-hard to apx. 1 1/e (mono, matroid) Few easy special cases O(1) ( nice constriants)

Optimizing Submodular Functions Introduction to Submodular Functions 13/13 As our examples suggest, optimization problems involving submodular functions are very common These can be classified on two axes: constrained/unconstrained and maximization/minimization Maximization Minimization Unconstrained NP-hard Polynomial time 1 2 approximation via convex opt Constrained Usually NP-hard Usually NP-hard to apx. 1 1/e (mono, matroid) Few easy special cases O(1) ( nice constriants)

Optimizing Submodular Functions Introduction to Submodular Functions 13/13 As our examples suggest, optimization problems involving submodular functions are very common These can be classified on two axes: constrained/unconstrained and maximization/minimization Maximization Minimization Unconstrained NP-hard Polynomial time 1 2 approximation via convex opt Constrained Usually NP-hard Usually NP-hard to apx. 1 1/e (mono, matroid) Few easy special cases O(1) ( nice constriants) Representation In order to generalize all our examples, algorithmic results are often posed in the value oracle model. Namely, we only assume we have access to a subroutine evaluating f(s).