xδfxx
Optimizasyon probleminiz olduğunu düşünün:
minimize (over x)subject tof(x)∀j∈{1…k}gj(x)≤0
Burada ve kısıtlamaları vardır.x∈Rnk
Let gradyanı gösteren bir sütun vektörü değerlendirildi .∇f(x)fx
Bu duruma uygulandığında Farkas Lemma , herhangi bir nokta için nin aşağıdaki ifadelerden birinin tam olarak geçerli olduğunu belirtmektedir :x∈Rn
- Orada var olan , öyle ki veλ∈Rk∑kj=1λj∇gj(x)=−∇f(x)λ≥0
- Orada var şekilde veδ∈Rn∀jδ′gj(x)≤0δ′∇f(x)<0
Ne anlama geliyor? Bu, herhangi bir olası nokta için , aşağıdakilerden biri anlamına gelir :x
- Koşul (1) geçerlidir ve KKT koşulları karşılanır.
- Koşul (2), kısıtlamalarını arttırmadan objektif işlevi geliştiren uygun bir yön vardır . (örneğin , den geçerek iyileştirebilirsiniz )δfgjfxx+ϵδ
Koşul (1) , KKT koşullarının noktasında karşılandığı şekilde negatif olmayan çarpanları olduğunu belirtir . (Geometrik olarak, , kısıtlamaların gradyanları tarafından tanımlanan dışbükey yatar.)λx−∇f
Koşul (2), noktasında yönünün (yerel olarak) şu şekilde hareket edeceğini belirtir:xδ
- yönünde hareket etmek objektif işlevi azaltır (çünkü ve nokta çarpımı sıfırdan küçüktür).δ∇f(x)δ
- yönünde hareket etmek kısıtlamaların değerini artırmaz (çünkü ve nokta çarpımı için sıfırdan küçük veya ona eşittir kısıtlamalar ).δ∇gj(x)δj
(Geometrik olarak, uygulanabilir yön vektörü ve vektörleri tarafından tanımlanan dışbükey koni arasında bir ayırma .)δ−∇f(x)∇gj(x)
(Not: Bu harita Farkas lemması tanımlar, matris )A=[∇g1,∇g2,…,∇gk]
Bu argüman size KKT koşullarının gerekliliğini (ancak yeterli olmamasını) en uygun şekilde sağlar. KKT koşulları karşılanmazsa (ve kısıtlama nitelikleri karşılanırsa), kısıtlamaları ihlal etmeden hedefi iyileştirmek mümkündür.
Kısıt yeterliliklerin rolü
Ne yanlış gidebilir? Kısıtların gradyanlarının taşınacak uygun yönleri doğru bir şekilde tanımlamadığı dejenere durumlar elde edebilirsiniz.
Yukarıdaki argümanın çalışmasına izin verecek çok sayıda farklı kısıtlama niteliği vardır .
Min, maks yorumlama (en sezgisel imho)
Lagrange'yi oluşturun
L(x,λ)=f(x)+∑j=1kλjgj(x)
Bunun yerine en aza indirmenin kısıtlamalarına tabi , en aza indirmek için çalışıyoruz hayal bazı rakip bunu maksimize etmeye çalışırken. Çarpanları kısıtlamaları ihlal ettiği için (bazı rakipler tarafından seçilen) ceza olarak yorumlayabilirsiniz . g j L λ ifgjLλi
Orijinal optimizasyon sorununun çözümü şuna eşdeğerdir:
minxmaxλL(x,λ)
Yani:
- Lagrange yi en aza indirmek için ilk olarak i seçersiniz .xL
- Daha sonra Lagrange'yi en üst düzeye çıkarmak için seçeceğim (pick gözlemledikten sonra ).λx
Örneğin, kısıtlamasını ihlal , sonsuza ayarlayarak sizi cezalandırabilirim !g2λ2
Zayıf ikilik
Herhangi bir fonksiyonu için aşağıdakilere dikkat edin:f(x,y)
∀x^,y^minxf(x,y^)≤f(x^,y^)≤maxyf(x^,y)
Bu ve için geçerli olduğu için:
x^y^
maxyminxf(x,y)≤minxmaxyf(x,y)
Langrian ayarında bu sonuç zayıf ikilik olarak bilinir.maxλminxL(x,λ)≤minxmaxλL(x,λ)
İkili sorun size çözüm üzerinde bir alt sınır verirmaxλminxL(x,λ)
Güçlü ikilik
Belirli özel koşullar altında (örn. Slater koşulunun bulunduğu dışbükey problemi), güçlü bir ikilik (yani eyer noktası özelliği) vardır.
maxλminxL(x,λ)=minxmaxλL(x,λ)
Bu güzel sonuç, sorunun sırasını tersine çevirebileceğiniz anlamına gelir.
Lagrange'yi en üst düzeye çıkarmak için ilk olarak cezaları seçiyorum .λ
Daha sonra Lagrange yi simge durumuna küçültmek için i seçersiniz .LxL
bu süreçte seti kısıtlamalarını ihlal fiyatları vardır ve fiyatları ne kısıtlamaları ihlal asla böyle ayarlanır.λ