Karush-Kuhn-Tucker voorwaarden (boek H 12.7) Als de afgeleide in een punt 0 is en de tweede afgeleide is positief-definiet, dan is het punt lokaal optimaal. Met beperkingen worden deze voorwaarden een stuk ingewikkelder omdat een optimum ook op de rand van gebied kan liggen zonder dat de afgeleide 0 is. We bekijken nu het volgende niet-lineaire optimaliseringsprobleem met niet-lineaire beperkingen: Max z.d.d. en f(x) gi(x) bi voor alle i = 1, …, m xi 0 voor alle i = 1, …, n x* kan een locaal optimale oplossing zijn, precies dan als er getallen u1, …, um zijn zodat: m 1. 2. 3. 4. 5. 6. f ( x ) u i g i ( x * ) 0 * i 1 m f g * x ( x ) u i i ( x * ) 0 voor alle j = 1, …, n x x j i 1 j * j gi(x*) bi voor alle i = 1, …, m ui(gi(x*)-bi) = 0 voor alle i = 1, ..., m x* 0. ui 0. De getallen ui, die elk bij een constraint horen, heten de Lagrange multiplicatoren. Ze zijn niet-negatief en kunnen alleen positief zijn (4.) als de bijbehorende constraint actief is, d.w.z., als gi(x*) = bi, x* ligt op de rand van het gebied dat wordt bepaald door deze constraint. 3. en 5. zijn gewoon de eisen voor toelaatbaarheid: De bovenstaande Karush-Kuhn-Tucker (KKT) voorwaarden karakteriseren de lokaal optimale oplossingen van een optimaliseringsprobleem met randvoorwaarden. Je kunt ze gebruiken om van een punt te controleren (bewijzen) of een punt optimaal is, en in principe zou je zelfs hiermee de optimale oplossingen kunnen bepalen, hoewel dat vaak erg lastig is. Wat volgt hieruit in het ééndimensionale geval? Max z.d.d. en f(x) xb x0 x* is een locaal optimale oplossing, precies dan als er een getal getallen u is zodat: 1. 2. 3. 4. 5. 6. f’(x*) – u 0 x*(f’(x*)-u) = 0 x* b u(x*-b) = 0 x* 0. u 0. Hieruit volgt dat één van de volgende situaties geldt: 1. x* = 0 en f’(0) 0 2. x* = b en f’(b) 0 3. 0 x* b en f’(x*) = 0 Een randextreem links, een randextreem rechts of een extreem inwendig. Voorbeeld: Max z.d.d. en f(x1, x2) = log(x1+1) + x2 2x1 + x2 3 x1, x2 0 De KKT voorwaarden zijn nu: 1a 1 2u1 x1 1 1b u1 1 2a 2b 3 4 5 6 1 x1 2u1 0 x1 1 x2 1 u1 0 2x1 x2 3 u1 2x1 x2 3 0 x1 , x2 0 u1 , u2 0 Volgens 1b is u1 1 en omdat x1 niet-negatief is (5), is 1 2u1 1 2 0 . x1 1 Uit 2a volgt dus dat x1 = 0. Uit 4 volgt dan dat x2 = 3 Uit 2b volgt dat u1 = 1. Het is nu eenvoudig in te zien dat x1 = 0, x2 = 3, u1 = 1 voldoet aan alle KKT condities, dus (0,3) is de optimale oplossing van het probleem en de doelwaarde is f(0, 3) = 3.