Submodulare Funktion

Eine submodulare Funktion ist eine Mengenfunktion, die die Rangfunktion eines Matroids verallgemeinert. Submodulare Funktionen spielen in der kombinatorischen Optimierung eine wichtige Rolle.

Definition

Sei S {\displaystyle S} eine Menge. Eine Mengenfunktion f : P ( S ) R {\displaystyle f\colon {\mathcal {P}}(S)\to \mathbb {R} } heißt submodular, wenn für alle T , U S {\displaystyle T,U\subseteq S} gilt, dass

f ( T U ) + f ( T U ) f ( T ) + f ( U ) {\displaystyle f(T\cap U)+f(T\cup U)\leq f(T)+f(U)}

Beispiel

Sei A R m × n {\displaystyle A\in \mathbb {R} ^{m\times n}} . Dann ist die Funktion f : P ( { 1 , , n } ) R {\displaystyle f\colon {\mathcal {P}}(\{1,\dotsc ,n\})\to \mathbb {R} } , die jeder Menge von Spaltenindizes die Dimension des von den entsprechenden Spalten von A {\displaystyle A} aufgespannten Vektorraumes zuordnet, submodular.

Eigenschaften

Sei f : P ( S ) R {\displaystyle f\colon {\mathcal {P}}(S)\to \mathbb {R} } . Dann sind die folgenden Aussagen äquivalent:

  • f {\displaystyle f} ist submodular
  • f ( T { s } ) f ( T ) f ( U { s } ) f ( U ) {\displaystyle f(T\cup \{s\})-f(T)\geq f(U\cup \{s\})-f(U)} für alle s S U {\displaystyle s\in S\backslash U} und T , U S {\displaystyle T,U\subseteq S} mit T U {\displaystyle T\subseteq U}
  • f ( U { s } ) + f ( U { t } ) f ( U ) + f ( U { s , t } ) {\displaystyle f(U\cup \{s\})+f(U\cup \{t\})\geq f(U)+f(U\cup \{s,t\})} für alle U S {\displaystyle U\subseteq S} und alle s , t S {\displaystyle s,t\in S} .

Anwendung in der kombinatorischen Optimierung

Sei S = { 1 , , n } {\displaystyle S=\{1,\dotsc ,n\}} und f : P ( S ) R {\displaystyle f\colon {\mathcal {P}}(S)\to \mathbb {R} } eine Mengenfunktion. Dann heißt die Menge

E P f := { x R n j U x j f ( U )  für alle  U S } {\displaystyle EP_{f}:=\{x\in \mathbb {R} ^{n}\mid \sum _{j\in U}x_{j}\leq f(U){\text{ für alle }}U\subset S\}}

das erweiterte Polymatroid zu f {\displaystyle f} . Wenn f {\displaystyle f} submodular ist und f ( ) = 0 {\displaystyle f(\emptyset )=0} , kann das Minimum einer linearen Funktion über E P f {\displaystyle EP_{f}} mit einem Greedy-Algorithmus in Zeit polynomial in n {\displaystyle n} gefunden werden. Nimmt ferner f {\displaystyle f} nur ganzzahlige Werte an, so sind sämtliche Ecken von E P f {\displaystyle EP_{f}} ganzzahlig, so dass auch eine ganzzahlige Lösung effizient berechnet werden kann.

Literatur

  • Alexander Schrijver: Combinatorial Optimization. Polyhedra and Efficiency. Springer, Berlin 2003, ISBN 3-540-44389-4.