Submodular functions and optimization. ([2005])