4.10.19 · D1 · Maths › Advanced Topics (Elite Level) › KKT conditions for constrained optimization
Tum ek landscape ka sabse nichla point dhundna chahte ho, lekin tum ek fenced yard ke andar band ho. KKT conditions exactly woh rulebook hai jo batata hai "ball ruk gayi hai" — downhill pull ya toh flat ground se cancel ho rahi hai, ya woh fences rok rahi hain jine tum lean kar rahe ho. Neeche sab kuch woh vocabulary hai jo tumhe chahiye taaki woh sentence poora samajh aaye.
Yeh page har woh symbol build karta hai jo the parent KKT note mein use hote hain, bilkul zero se. Isko upar se neeche padho: har item sirf unhi cheezon ka use karta hai jo usse pehle aaye hain.
Definition Standing assumption: sab kuch smooth hai (
C 1 )
Poore note mein hum assume karte hain ki f , har fence g i , aur har wire h j continuously differentiable (C 1 ) hain: inme koi jumps, kinks, ya corners nahi hain, aur inki slopes smoothly vary karti hain. Kyun matter karta hai: poori KKT story arrows ∇ f , ∇ g i , ∇ h j se bani hai (§3). Woh arrows tabhi exist karte hain jab functions differentiable hon. Ek sharp kink par koi ek well-defined slope nahi hoti, toh koi gradient nahi — aur neeche ke arguments collapse ho jaate. Isko apne dimag mein rakho: no smoothness, no gradients, no KKT.
Definition Objective function
f
f ek machine hai: isko ek point do, woh ek number bahar deta hai — cost . Hum likhte hain f ( x ) = "point x par cost." Minimize karne ka matlab hai woh input dhundna jo us number ko jitna ho sake utna chhota kar de.
Ek landscape ki imagine karo. Horizontal floor woh jagah hai jahan tumhara input rehta hai; har jagah ke upar ki height f hai. Nichle valleys = saste; uunche peaks = mehenge.
Worked example Figure s01 padhna
Blue rings contours hain — har ring un sabhi points ko jodti hai jo equal cost par hain, jaise hiking map par height lines hoti hain. Paas-paas rings = steep; door-door rings = gentle. Center mein yellow dot valley floor hai, sabse kam cost ka ek point. Jab tum rings ke paas se bahar jaate ho, f badhti hai. Yeh ek picture hi "minimum" ki definition hai: woh jagah jise koi ring neeche se nahi gherta.
Yeh topic kyun chahiye isse: poora game hai "sabse nichla reachable height dhundo." Cost function ke bina kuch bhi minimize karne ko nahi hai.
x ∗ (arg min)
x ∗ (padho "x -star") hamara naam hai winning input ke liye — woh point jahan f apni sabse kam allowed value achieve karta hai. Hum likhte hain x ∗ = arg min f , "woh argument (input) jo minimum achieve karta hai." Dhyan raho: min f sabse chhoti cost hai (ek number, valley floor ki height); x ∗ woh location hai jo use achieve karta hai (floor par coordinates). Figure s01 mein yellow dot ki height min f hai; yellow dot ki position x ∗ hai. Baad mein is page ki har condition ek statement hai ki x ∗ par kya sach hona chahiye.
x ∈ R n
x ek point hai — n numbers ki ek list, jahan tum khade ho uske coordinates. R ka matlab "koi bhi real number"; R n ka matlab "unme se n ki ek list." Chhota symbol ∈ padha jaata hai "belongs to / is an element of."
n = 1 : x ek line par ek single slider hai.
n = 2 : x = ( x , y ) ek flat map par ek dot hai — upar wale landscape ka wahi floor jis par figure s01 apne contours kheenchta hai.
n = 3 : ek room mein ek point. Isse aage draw nahi kar sakte, lekin algebra bilkul same hai.
Yeh topic kyun chahiye isse: ball is space mein kahin bhi ho sakti hai. Constraints us part ko carve out kar denge jahan woh allowed hai, aur winner x ∗ (upar defined) ek specific aisa hi point hai.
min x ∈ R n f ( x ) padhna
Isse words mein toro: "R n mein saare points x par min , f ( x ) ka" = "jo allowed jagah hai wahan ghoom aur sabse chhoti cost report karo." min ke neeche chhota x bas batata hai kya hum choose karne ke liye free hain .
Ab hum yard ka kuch hissa forbid karte hain.
Definition Inequality constraint
g i ( x ) ≤ 0 — ek fence
g i ek aur cost-jaisi machine hai. Rule g i ( x ) ≤ 0 kehta hai "sirf wahan khado jahan yeh machine zero ya negative read kare." Allowed points ka set ek fence se bordered hai: woh curve jahan g i ( x ) = 0 hai.
Definition Equality constraint
h j ( x ) = 0 — ek wire
h j ( x ) = 0 tumhe ek patli curve par force karta hai — ek wire jis par tum slide karte ho, use chhod nahi sakte.
i aur j
Kai saari fences aur kai saare wires ho sakte hain. i = 1 … m fences count karta hai (m of them); j = 1 … p wires count karta hai (p of them). Ek subscript bas ek name tag hai: g 3 hai "teesri fence."
Worked example Figure s02 padhna
Red line ek fence ki border hai, jahan g = 0 hai; pink shaded band allowed side hai (g ≤ 0 , yahan x + y ≥ 1 ). Yellow line ek wire hai, jahan h = 0 hai — tumhe bilkul usi par khana padega. Green dot yellow wire par aur pink allowed band ke andar baithta hai, toh woh dono ek saath satisfy karta hai: yahi "feasible" dikhta hai. Sign story notice karo: fence border par g = 0 ; pink mein step lo aur g < 0 (allowed); red ke paar unshaded region mein step lo aur g > 0 (forbidden).
Definition Feasible point
Ek point feasible hai agar woh har fence aur har wire ek saath maanta ho. Feasible = "yahan khana legally allowed hai." Optimum x ∗ feasible hona chahiye.
≤ 0 convention kyun? Koi bhi inequality is shape mein push ki ja sakti hai: g ( x ) ≥ 0 ban jaata hai − g ( x ) ≤ 0 ; "x + y ≥ 1 " ban jaata hai "1 − x − y ≤ 0 ." Ek convention → ek saaf rulebook.
≤ aur ≥ interchangeable hain, sign matter nahi karta."
Kyun sahi lagta hai: dono bas yard carve karte hain.
Fix: multiplier ka sign (§6) ≤ 0 convention se tied hai. Pehle convert karo , phir KKT apply karo, nahi toh har sign flip ho jaayega.
Yeh KKT ka star hai, toh hum ise carefully build karte hain. (Upar wala C 1 standing assumption yaad karo — wahi exactly hai jo hamein ∇ f likhne deta hai.)
Intuition Yahan naya tool kyun chahiye
"Minimum" ka matlab hai "kisi bhi chhoti step se f decrease nahi kar sakte." Isko check karne ke liye hume jaanna hai kaun si direction f sabse tezi se decrease karti hai , aur kitni. Woh direction exactly wahi hai jo gradient measure karta hai — koi doosra single tool "kaun si taraf downhill hai aur kitna steep?" ka jawab nahi deta.
Definition Partial derivative
∂ x k ∂ f
k -th ke alawa har coordinate ko freeze karo, sirf x k ko wiggle karo, aur pucho "f kitni tezi se change hota hai?" Woh rate partial derivative hai. Curly ∂ (d nahi) yaad dilata hai: "baaki variables still hain." (Yeh exactly isliye well-defined hai kyunki f smooth hai.)
∇ f ( x )
Saari partials ko ek arrow mein stack karo:
∇ f ( x ) = ( ∂ x 1 ∂ f , ∂ x 2 ∂ f , … , ∂ x n ∂ f ) .
Symbol ∇ ("nabla") = "gradient of." Yeh arrow f ki steepest increase ki direction mein point karta hai; uski length batati hai kitna steep hai.
Worked example Figure s03 padhna
Same blue contour rings jaise pehle. White dot par green arrow ∇ f hai: woh rings ke seedha paar higher cost ki taraf point karta hai — steepest way up . Red arrow − ∇ f hai, bilkul ulta: steepest way down , woh direction jis taraf ek released ball roll karna chahegi. Do cheezein notice karo: (1) dono arrows us contour ring ke perpendicular hain jis par woh start hote hain — uphill hamesha height lines ke "seedha paar" hota hai; (2) figure s01 ke valley floor par gradient phir bhi exist karta hai — woh bas zero vector hai ∇ f = 0 (zero length ka ek arrow, toh woh kahin point nahi karta), aur yahi wajah hai ki ground flat hai aur ball ruk jaati hai.
∇ f uphill point karta hai → toh − ∇ f downhill point karta hai (steepest descent — woh direction jis taraf rolling ball jaana chahti hai, aur Gradient Descent and Projected Gradient ka engine).
Jahan ground flat hai, har partial zero hai, toh gradient zero vector hai ∇ f = 0 (woh phir bhi exist karta hai — bas koi length nahi). Yahi unconstrained minimum test hai.
∇ g i same arrow hai jo ek fence se bana hai: woh allowed region ke bahar point karta hai (bade g i ki taraf, yaani g i > 0 ki taraf, forbidden side).
Yeh topic kyun chahiye isse: KKT completely arrows ke baare mein ek statement hai — − ∇ f kahin point kar sakta hai jab fences use box kar lein.
a ⋅ b
Do arrows a = ( a 1 , … , a n ) aur b = ( b 1 , … , b n ) jinka coordinates ki same number ho. Unka dot product ek single number hai, matching coordinates multiply karke add karne se banta hai:
a ⋅ b = ∑ k = 1 n a k b k = a 1 b 1 + a 2 b 2 + ⋯ + a n b n .
∑ k = 1 n (capital sigma) ka matlab bas hai "ise k = 1 , 2 , … , n ke liye add karo." Result positive hota hai agar arrows roughly direction mein agree karein, negative agar oppose karein, aur zero agar right angle par milein.
Definition Perpendicular ⟂
Do arrows perpendicular (⟂) hain exactly jab unka dot product 0 ho: a ⋅ b = 0 . Quick check: ( 1 , 0 ) ⋅ ( 0 , 1 ) = 1 ⋅ 0 + 0 ⋅ 1 = 0 ✓ — do axes sach mein right angle par hain.
Intuition "Wire ke along flat hone" ka matlab perpendicular kyun hai
Wire h = 0 ke along, allowed moves woh directions hain jo wire ke tangent hain. Agar ∇ f ka koi piece wire ke along point karta, toh tum us taraf slide karte aur f kum kar lete. Toh wire-constrained minimum par, ∇ f wire ke perpendicular hona chahiye — yaani wire ke apne gradient ∇ h ke parallel. Yahi Lagrange Multipliers ka seed hai.
Isse pehle ki hum baat karein ki kaun se fence-arrows matter karte hain, hume pata hona chahiye ki ek point par tum actually kaun si fences ko touch kar rahe ho.
Definition Active vs inactive fence
Point x ∗ par (optimum, §0 mein defined):
g i ( x ∗ ) < 0 → strictly allowed region ke andar → inactive (tum woh fence touch nahi kar rahe — locally koi role nahi).
g i ( x ∗ ) = 0 → border par → active (iske upar lean kar rahe — push back kar sakta hai).
Sirf active fences push kar sakti hain, toh sirf unke gradients ∇ g i neeche ki picture mein aate hain.
Definition Linear combination
Arrows v 1 , … , v k ki ek linear combination koi bhi sum c 1 v 1 + c 2 v 2 + … hai jisme number weights c i hain. Yeh hai "in arrows ko kisi proportion mein mix karo."
Definition Cone (of active constraint gradients)
Sirf active fences ke gradients ∇ g i lo (abhi defined wale). Agar hum unhe non-negative weights (c i ≥ 0 ) se mix karein, toh arrows ka reachable set ek wedge hai jise cone kehte hain. Active fence-normal arrows fanning out ki imagine karo; cone woh sab kuch hai jo tum positive amounts se add karke bana sakte ho.
Worked example Figure s04 padhna
Do red arrows outward gradients ∇ g 1 , ∇ g 2 hain do active fences ke jo tum optimum x ∗ (white dot) par lean kar rahe ho. Yellow wedge unka cone hai: har woh arrow jo tum c 1 ∇ g 1 + c 2 ∇ g 2 se bana sakte ho jab c 1 , c 2 ≥ 0 hon. Green arrow − ∇ f (downhill) hai, aur woh yellow wedge ke andar land karta hai — yahi ball ke trapped hone ki picture hai: ek hi downhill direction hai jo "fences ke andar" ka positive mix hai, jise fences forbid karti hain.
Intuition Geometric soul, vocabulary ke saath restated
KKT optimum x ∗ par, − ∇ f (downhill) active fence-gradients ke cone ke andar baith jaata hai (wahi cone jo abhi upar defined hua, figure s04 mein draw hai). Har woh escape direction jo f kum karti hai woh kisi fence ke paar jayegi. Ball trapped hai.
Non-negative weights kyun? Ek fence sirf push kar sakti hai, kabhi pull nahi. Push = uske outward arrow ka ≥ 0 amount. Yeh single restriction wahi hai jo inequality constraints ko wires se alag banati hai — aur yahi rule λ i ≥ 0 ban jaata hai.
Definition Lagrange multipliers
μ j (wires) aur KKT multipliers λ i (fences)
Har constraint ko ek number milta hai — woh optimum par kitna "push back" karta hai.
μ j wire h j se belong karta hai. Ek wire dono taraf push kar sakti hai (tum wire ke dono sides se dhakele ja sakte ho), toh μ j sign mein free hai — positive, negative, ya zero.
λ i fence g i se belong karta hai. Ek fence sirf ek taraf push karti hai (outward), toh λ i ≥ 0 . §5 se yaad karo ki sirf active fences push karti hain, toh inactive fence ka λ i = 0 hoga.
Common mistake "Saare multipliers
≥ 0 hone chahiye."
Kyun sahi lagta hai: tumne λ i ≥ 0 yaad kiya aur sab par laga diya.
Fix: sirf fence multipliers λ i non-negative hain. Wire multipliers μ j unrestricted hain, bilkul ordinary Lagrange multipliers ki tarah.
Definition Complementary slackness
λ i g i ( x ∗ ) = 0
"Fence i kitna push karti hai" (λ i ) aur "fence i ka signed slack" (g i ( x ∗ ) ) ka product hamesha zero hota hai. Yahan g i ( x ∗ ) ek signed constraint value hai, distance nahi: g i = 0 matlab "bilkul border par," aur g i < 0 matlab "allowed side par safely, gunjayish ke saath" (slack). Words mein: ek fence tabhi push karti hai jab tumhara slack khatam ho jaaye (tum ise touch kar rahe ho). Ya toh g i = 0 (active, touching) ya λ i = 0 (inactive, no push) — kabhi dono nonzero nahi.
g i ( x ∗ ) < 0 measure karta hai main kitna andar hoon."
Kyun sahi lagta hai: zyada negative lagta hai "deeper in."
Fix: g i ek signed constraint function hai, ruler nahi. Uski numeric value is par depend karti hai ki tumne constraint kaise likhi (ise 2 se scale karo aur har value double ho jaati hai). KKT sirf sign / whether it is zero se matlab rakhta hai, koi true geometric distance nahi.
Definition The Lagrangian
L ( x , λ , μ ) = f ( x ) + ∑ i λ i g i ( x ) + ∑ j μ j h j ( x ) .
Yeh cost f hai plus har constraint ke liye ek penalty term , uske multiplier se weighted. ∑ i (capital sigma, §4 mein mili) matlab "saari fences i par add karo."
Intuition Bundle kyun karein?
Is tarah package ho jaane ke baad, KKT ki messy "stationarity" condition ek clean line mein collapse ho jaati hai: ∇ x L = 0 — "bundled function ka gradient, x variables mein, flat hai." Multipliers is tarah tune kiye jaate hain ki fence-penalties downhill pull ko exactly cancel kar dein. Yahi object Duality and the Dual Problem ko power deta hai.
Definition Convex function / set
Ek function convex hai agar uska graph ek bowl hai — uske kisi bhi do points ke beech ki seedhi line graph ke neeche kabhi nahi jaati. Ek set convex hai agar uske kisi bhi do points ke beech ka seedha segment andar rahe. Dekho Convex Optimization .
Intuition Convexity kyun matter karti hai
Bowl ke liye exactly ek valley hai aur koi false bottoms nahi. Toh ek convex problem ke liye, KKT sirf ek candidate suggest nahi karta — woh global minimum guarantee karta hai. Non-convex landscapes mein kai dips hote hain, toh KKT maxima aur saddles bhi flag kar sakta hai.
Definition Constraint qualification — fine print jo KKT ko valid banata hai
KKT sirf tabhi optimum x ∗ par hold karne ki guarantee deta hai jab ek constraint qualification (constraints par ek regularity condition) satisfy ho. Do standard ones:
LICQ (Linear Independence Constraint Qualification): x ∗ par saari active fences aur saare wires ke gradients linearly independent hain — unme se koi bhi baaki ke linear combination nahi hai. Imagine karo active arrows genuinely alag directions mein point kar rahe hain, ek doosre ke upar stacked nahi ya kisi lower dimension mein squashed nahi.
Slater's condition (convex problems ke liye): kam se kam ek strictly feasible point exist karta hai — ek aisa point jahan har inequality slack ho (g i ( x ) < 0 , strictly har fence ke andar) jabki wires hold karein. Imagine karo allowed yard ke interior mein comfortably baitha ek point, koi fence touch nahi kar raha.
Intuition Qualification ki zaroorat kyun hai
Agar active fence-gradients degenerate hain — jaise do fences ek sharp cusp mein milti hain toh unke arrows line up ho jaate hain — toh multipliers λ i exist karna fail kar sakte hain even though x ∗ genuinely optimal hai. LICQ (ya Slater) us pathology ko rule out karta hai, guarantee karta hai ki multipliers exist karein taaki rulebook apply ho sake. Dekho Constraint Qualifications (LICQ, Slater) .
Yeh foundations directly flagship application Support Vector Machines mein combine hoti hain, jahan upar ke har symbol dobara aata hai.
gradient nabla f uphill arrow
optimal point x star arg min
constraints g fences and h wires
perpendicular and dot product
linear combination and cone
multipliers lambda and mu
convexity and constraint qualification
Cover the right side and recite before moving to the main note.
f , g i , h j ko kaisi smoothness chahiye, aur kyun?Continuously differentiable (C 1 ) — warna gradients ∇ f , ∇ g i , ∇ h j exist hi nahi karte aur KKT likha bhi nahi ja sakta.
x ∈ R n ka matlab kya hai?Ek point = n real-number coordinates ki ek list; landscape mein jahan tum khade ho.
x ∗ kya hai, aur min f se kaise alag hai?x ∗ = arg min f optimal location hai (input); min f optimal cost hai (woh number/height jo woh achieve karta hai).
f ( x ) kya measure karta hai?Point x par cost / height — woh cheez jo hum minimize karte hain.
"x + y ≥ 1 " ko standard fence form mein convert karo. 1 − x − y ≤ 0 (sab kuch ek side mein ≤ 0 ki tarah move karo).
Gradient ∇ f kahin point karta hai, aur − ∇ f ? ∇ f steepest uphill point karta hai; − ∇ f steepest downhill point karta hai.
Valley floor par, kya gradient vanish hota hai ya exist karna band ho jaata hai? Woh phir bhi exist karta hai — woh zero vector hai ∇ f = 0 (zero length ka arrow).
Dot product formula aur perpendicular test likho. a ⋅ b = ∑ k a k b k ; perpendicular jab a ⋅ b = 0 ho.
x ∗ par fence "active" vs "inactive" kya banata hai?Active: g i ( x ∗ ) = 0 (touching). Inactive: g i ( x ∗ ) < 0 (strictly andar).
Gradients ka cone kya hai, aur non-negative weights kyun? Active fence-arrows ke saare sums ≥ 0 weights ke saath; kyunki fence sirf outward push kar sakti hai, kabhi pull nahi.
Kaun se multipliers ≥ 0 hain aur kaun se sign mein free hain? Fence (inequality) multipliers λ i ≥ 0 ; wire (equality) multipliers μ j free.
Kya g i ( x ∗ ) < 0 ek distance hai? Nahi — yeh ek signed constraint value hai (slack); KKT sirf uske sign / whether it's zero se matlab rakhta hai.
Complementary slackness ko words mein bolo. Ek fence tabhi push karti hai jab uska slack khatam ho jaaye: λ i g i = 0 .
Convexity golden property kyun hai? Ek valley, no false bottoms → KKT global minimum ke liye sufficient ban jaate hain.
Ek constraint qualification bolo. LICQ — x ∗ par active fence aur wire gradients linearly independent hain; ya Slater — ek strictly feasible interior point exist karta hai.
Agar constraint qualification fail ho toh kya toot jaata hai? Multipliers exist hi nahi kar sakte even at a true optimum, toh KKT applicable nahi ho sakta.