Active-Set-Methoden

Klasse iterativer Lösungen

Active-Set-Methoden sind eine Klasse iterativer Algorithmen zur Lösung von quadratischen Optimierungsproblemen.

Mathematische Problemstellung

Bearbeiten

Jedes quadratische Programm kann in eine standardisierte Form überführt werden:[1]

 

wobei   die Anzahl der Entscheidungsvariablen ist. In der Zielfunktion   entspricht   der Hesse-Matrix, die Mengen   und   indizieren die Ungleichheits- und Gleichheitsbedingungen. Oft wird dabei gefordert, dass die Matrix   positiv semidefinit ist, da dann das Optimierungsproblem konvex ist.

Active Set

Bearbeiten

Eine Nebenbedingung   ist aktiv an einem Punkt  , wenn   gilt.

Das Active Set   ist die Menge aller aktiven Bedingungen an einem gültigen Punkt  :

 

Algorithmus

Bearbeiten

Active-Set-Methoden setzen eine initiale gültige Lösung   voraus. Die Algorithmen berechnen dann in jeder Iteration einen gültigen Punkt  , bis ein Optimum erreicht ist. Dabei wird eine Menge   verwaltet, die angibt, welche Nebenbedingungen in der aktuellen Iteration aktiv sein sollen.[2]

 1  Gegeben: gültiger Punkt  ,  
 2
 3  for k=0,1,.. do
 4  berechne eine Suchrichtung  
 5  if  
 6    berechne Lagrange-Multiplikatoren  
 7    if  
 8      terminiere und gib   aus
 9    else
10      finde Ungleichheitsbedingung   mit  
11       
12    end
13  else
14    berechne Schrittlänge  
15    if  
16      finde Nebenbedingung j die   beschränkt
17       
18    end
19     
20  end

Berechnung der Suchrichtung pk

Bearbeiten

Die Nebenbedingungen in   definieren einen Unterraum. Wenn   in der optimalen Lösung der Zielfunktion in diesem Unterraum ist, kann man die Suchrichtung als   definieren. Substituiert man dies in die Zielfunktion, erhält man die Suchrichtung   durch Lösen eines quadratischen Subproblems:[3]

 

wobei   der Gradient an der aktuellen Lösung ist und die Spalten der Matrix   die Vektoren   sind.

Dieses Subproblem kann auf verschiedenen Weisen gelöst werden. Eine Möglichkeit ist dabei ein Nullspace-Ansatz: [4]

Hat man eine Matrix  , deren Spalten eine Basis für den Kern der Matrix   bilden, kann man den gültigen Bereich des Subproblems durch   parametrisieren. Löst man nun das Gleichungssystem

 ,

wobei   die reduzierte Hesse-Matrix ist, erhält man die Suchrichtung im originalen Problem.

Berechnung der Lagrange-Multiplikatoren λi

Bearbeiten

Falls die Suchrichtung   ist, ist   bereits optimal im aktuellen Unterraum. Man muss dann eine geeignete Ungleichheitsbedingung aus   entfernen. Die Lagrange-Multiplikatoren   erhält man durch Lösen eines linearen Gleichungssystems:

 

Falls alle   sind, erfüllen   und   die Karush-Kuhn-Tucker-Bedingungen, welche notwendige Kriterien für die Optimalität sind. Wenn zudem die Hesse-Matrix   positiv semidefinit ist, sind diese Bedingungen hinreichend und   ist die optimale Lösung des Problems. Entfernt man eine Ungleichheitsbedingung mit negativem Lagrange-Multiplikator aus   erhält man in der nächsten Iteration eine Suchrichtung.[5]

Berechnung der Schrittlänge αk

Bearbeiten

Hat man eine Suchrichtung  , muss man die maximale Schrittlänge   berechnen. Eine volle Schrittlänge mit   führt direkt zum Minimum im durch   definierten Unterraum. Die Schrittlänge ist jedoch häufig durch eine Nebenbedingung   beschränkt.

Alle Nebenbedingungen in   mit   sind auch am Punkt   für alle   erfüllt, da dann die Ungleichung

 

gilt. Alle Nebenbedingungen   mit   werden am neuen Punkt nur dann eingehalten, wenn für diese Nebenbedingungen die Ungleichung

 

gilt. Dies ist äquivalent mit der Bedingung

 

Um so nah wie möglich an das Optimum im aktuellen Unterraum zu kommen, kann man die maximale Schrittlänge durch diese Formel berechnen:

 

Die Nebenbedingung, die diese Länge beschränkt, wird in die Menge   aufgenommen, da diese Nebenbedingung nun aktiv ist.[6]

Literatur

Bearbeiten

Einzelnachweise

Bearbeiten
  1. Jorge Nocedal, Stephen J. Wright: Numerical Optimization. Second Edition. Springer, New York 2006, ISBN 978-0387-30303-1, S. 449.
  2. Jorge Nocedal, Stephen J. Wright: Numerical Optimization. Second Edition. Springer, New York 2006, ISBN 978-0387-30303-1, S. 472.
  3. Jorge Nocedal, Stephen J. Wright: Numerical Optimization. Second Edition. Springer, New York 2006, ISBN 978-0387-30303-1, S. 468.
  4. Roger Fletcher: Stable reduced Hessian updates for indefinite quadratic programming. Mathematical Programming (87.2) 2000, S. 251–264.
  5. Jorge Nocedal, Stephen J. Wright: Numerical Optimization. Second Edition. Springer, New York 2006, ISBN 978-0387-30303-1, S. 469f.
  6. Jorge Nocedal, Stephen J. Wright: Numerical Optimization. Second Edition. Springer, New York 2006, ISBN 978-0387-30303-1, S. 468f.