Overview

This page collects some material and references related to submodular optimization, with applications in particular in machine learning and AI. Convex optimization has become a main workhorse for many machine learning algorithms during the past ten years. When minimizing a convex loss function for, e.g., training a Support Vector Machine, we can rest assured to efficiently find an optimal solution, even for large problems. In recent years, another fundamental problem structure, which has similar beneficial properties, has emerged as very useful in a variety of machine learning applications: Submodularity is an intuitive diminishing returns property, stating that adding an element to a smaller set helps more than adding it to a larger set. Similarly to convexity, submodularity allows one to efficiently find provably (near-)optimal solutions.

Tutorials

Software, Materials and References

  • High-performance implementation of the minimum norm point algorithm for submodular function minimization with several applications [link]
  • MATLAB Toolbox for submodular function optimization [link] maintained by Andreas Krause. Journal of Machine Learning Research Open Source Software paper [pdf]
  • Survey on Submodular Function Maximization by Daniel Golovin and Andreas Krause. To appear as chapter in Tractability: Practical Approaches to Hard Problems (This draft is for personal use only. No further distribution without permission).
  • Class on Submodular Functions by Jeff Bilmes
  • Annotated bibliography.

Related Meetings and Workshops

This page is maintained by Andreas Krause and Carlos Guestrin. Please send suggested additions or corrections by email.