(x): i - Telin - Universiteit Gent

Download Report

Transcript (x): i - Telin - Universiteit Gent

Didactisch materiaal bij de cursus
Optimalisatietechnieken
http://telin.UGent.be/~philips/optimalisatie/
Academiejaar 2011-2012
Prof. dr. ir. W. Philips
[email protected]
Tel: 09/264.33.85 Fax: 09/264.42.95
UNIVERSITEIT
GENT
Telecommunicatie en
Informatieverwerking
versie: 23/4/2012
© W. Philips, Universiteit Gent, 1998-2012
Copyright notice
This powerpoint presentation was developed as an educational aid to the renewed course “Optimisation Techniques” (Optimalisatietechnieken), taught at the University of
Gent, Belgium as of 1998.
This presentation may be used, modified and copied free of charge for non-commercial purposes by individuals and non-for-profit organisations and distributed free of charge
by individuals and non-for-profit organisations to individuals and non-for-profit organisations, either in electronic form on a physical storage medium such as a CD-rom,
provided that the following conditions are observed:
1. If you use this presentation as a whole or in part either in original or modified form, you should include the copyright notice “© W. Philips, Universiteit Gent, 1998” in a
font size of at least 10 point on each slide;
2. You should include this slide (with the copyright conditions) once in each document (by which is meant either a computer file or a reproduction derived from such a
file);
3. If you modify the presentation, you should clearly state so in the presentation;
4. You may not charge a fee for presenting or distributing the presentation, except to cover your costs pertaining to distribution. In other words, you or your organisation
should not intend to make or make a profit from the activity for which you use or distribute the presentation;
5. You may not distribute the presentations electronically through a network (e.g., an HTTP or FTP server) without express permission by the author.
In case the presentation is modified these requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the presentation, and
can be reasonably considered independent and separate works in themselves, then these requirements do not apply to those sections when you distribute them as separate
works. But when you distribute the same sections as part of a whole which is a work based on the presentation, the distribution of the whole must be on the terms of this
License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. In particular note that condition 4 also
applies to the modified work (i.e., you may not charge for it).
“Using and distributing the presentation” means using it for any purpose, including but not limited to viewing it, presenting it to an audience in a lecture, distributing it to
students or employees for self-teaching purposes, ...
Use, modification, copying and distribution for commercial purposes or by commercial organisations is not covered by this licence and is not permitted without the author’s
consent. A fee may be charged for such use.
Disclaimer: Note that no warrantee is offered, neither for the correctness of the contents of this presentation, nor to the safety of its use. Electronic documents such as this
one are inherently unsafe because they may become infected by macro viruses. The programs used to view and modify this software are also inherently unsafe and may
contain bugs that might corrupt the data or the operating system on your computer.
If you use this presentation, I would appreciate being notified of this by email. I would also like to be informed of any errors or omissions that you discover. Finally, if you have
developed similar presentations I would be grateful if you allow me to use these in my course lectures.
Prof. dr. ir. W. Philips
Department of Telecommunications and Information Processing
University of Gent
St.-Pietersnieuwstraat 41, B9000 Gent, Belgium
E-mail: [email protected]
Fax: 32-9-264.42.95
Tel: 32-9-264.33.85
09c.2
Niet-lineaire programma’s met
randvoorwaarden
Problemen met gelijkheden
versie: 23/4/2012
© W. Philips, Universiteit Gent, 1998-2012
Optimalisatie met randvoorwaarden
f (x,y)
f (x(t),y(t)) met g (x(t),y(t))=0
Randvoorwaarden:
•gelijkheden: maximaliseer f (x,y) waarbij g(x,y)=0
•ongelijkheden: maximaliseer f (x,y) waarbij x  0, y  0, g(x,y)<0, ...
09c.4
versie: 23/4/2012
© W. Philips, Universiteit Gent, 1998-2012
Optimalisatie met randvoorwaarden…
Maximaliseer f (x) mits gi(x)=0, i=1…m
Randvoorwaarden beperken mogelijke stappen rond potentieel optimum
•potentieel optimum x voldoet aan gi(x)=0, i=1…m
•mogelijke stap x voldoet aan gi(x+x)=0, i=1…m
 gi (x)  gi (x)  x    0  gi (x)  x    0
Enkel als g i (x)  0 (zoniet benadering met meer termen nodig)
Nodige voorwaarde voor een maximum
•x is maximum
 f (x+x) < f (x) voor alle x0
voor alle kleine x met g i (x)  x  0 i  1m
•Dit kan enkel als f (x)  x  0
voor alle kleine x met g i (x)  x  0 i  1m
Opmerkingen:
•f (x) hoeft hier niet (maar vervult wel de voorwaarden)
•indien gi (x) voor sommige i  hogere-orde benaderingen nodig
09c.5
versie: 23/4/2012
© W. Philips, Universiteit Gent, 1998-2012
Voorbeeld
optimum, want f (x)  W
f (x)
f (x)
d.w.z. f (x)  x, voor alle kleine x
met xW
g1(x,y,z)=0
W: mogelijke oplossingen
g2(x,y,z)=b1
niet optimaal
Deze techniek is enkel bruikbaar als alle beperkingen gelijkheden zijn:
optimaliseer f (x) mits g1 (x)=0 en g2 (x)=0
09c.6
versie: 23/4/2012
© W. Philips, Universiteit Gent, 1998-2012
…Optimalisatie met randvoorwaarden…
mogelijke x
W = ruimte van alle
vectoren  op alle gi (x)
Enerzijds: x moet voldoen aan de beperkingen
•gi (x)·x=0: alle mogelijke stappen x0
moeten  staan op alle gi (x)
f (x) moet hier
 x W
in zitten om
W= ruimte
van alle
vectoren 
op W
optimum te hebben
Anderzijds: optimale x
• f (x)·x=0: f (x) moet  op alle
mogelijke stappen x0
f (x) W (“orthogonaal complement” van W)
En W is de verzameling van vectoren van de vorm
m
 i g i (x)
i 1
m
 i g i (x)
i 1
Besluit: nodige voorwaarde voor optimum: f (x) 
m
 i g i (x)
i 1
09c.7
versie: 23/4/2012
© W. Philips, Universiteit Gent, 1998-2012
…Optimalisatie met randvoorwaarden
Stel dat x een kandidaat optimum is: f (x) 
m
 i g i (x)
i 1
 f (x)·x=0 voor elke mogelijke stap x
Voor alle mogelijke x, d.w.z. voor alle x0  op alle gi (x)
vereenvoudigt de Taylorreeksbenadering rond x tot:
1
f (x  x)  f (x)  f (x)  x  x t Hx  
2
0
1
maximum in x vereist ook: x t Hx  0 voor alle x0  op alle gi (x)
2
Besluit: Nodige voorwaarde voor een maximum
f ( x ) 
m
 i g i (x)
i 1
1 t
x Hx  0 voor alle x0  op alle gi (x)
2
o.a. voldaan als H negatief definiet is, maar kan ook
voldaan zijn als H niet negatief definiet is
09c.8
Niet-lineaire programma’s met
randvoorwaarden
Problemen met ongelijkheden
versie: 23/4/2012
© W. Philips, Universiteit Gent, 1998-2012
Problemen met ongelijkheden…
P: Maximaliseer f (x) mits gi (x)=0, i=1,… m’-1 en gi (x)0, i=m’,… m
Als een mogelijke oplossing x een lokaal maximum is, dan kunnen we in
een kleine omgeving geen enkele stap zetten naar een betere mogelijke
oplossing x+xx , d.w.z. naar een x+xx met
gi(x+x)=0, i=1…m’-1 en gi (x+x)0, i=m’… m en f (x+x) > f (x)
Taylorreeksbenadering:
•x is een lokaal maximum  er bestaat geen enkele kleine x0 met
0  g i (x)  x    0 i  1m '1
gi (x)  gi (x)  x    0 i  m'm
(stap moet naar mogelijke
oplossing gaan)
f (x)  x  0 (stap moet naar betere winst leiden)
Opmerkingen:
•Dit zijn dus nodige, maar geen voldoende voorwaarden
•als b.v. sommige gi (x)=0 of f (x)=0 kunnen de voorwaarden vervuld
zijn zonder dat er een maximum is
09c.10
versie: 23/4/2012
© W. Philips, Universiteit Gent, 1998-2012
…Problemen met ongelijkheden…
Taylorreeksbenadering:
•x is een lokaal maximum  er bestaat geen enkele kleine x0 met
0  g i (x)  x    0 i  1m '1
gi (x)  gi (x)  x    0 i  m'm
(stap moet naar mogelijke
oplossing gaan)
f (x)  x  0 (stap moet naar betere winst leiden)
Interpretatie:
•lineair programma in de variabelen x met winstfunctie f (x)  x
•vertaling: “x lokaal maximum  het lineair programma heeft geen
enkele mogelijke oplossing x
• met strikt positieve winst
en met voldoend kleine x
mag geschrapt worden want als x aan de voorwaarden voldoet,
dan voldoet ook x met >0 een willekeurig klein getal
09c.11
versie: 23/4/2012
© W. Philips, Universiteit Gent, 1998-2012
…Problemen met ongelijkheden
Taylorreeksbenadering:
• x is een lokaal maximum  optimale winst van volgend programma =0:
max f (x)  x mits
 gi (x)  x  0 i  1m '1
 g i (x)  x  g i (x) i  m'm
max. ct x over x
mits x  0 en Ax  b
dualiteit
Duaal lineair programma:
m '1
m
i 1
i  m'
minimaliseer  yi 0   yi g i (x) mits
m
  yi g i (x)  f (x)
i 1
minimaliseer bt y over y
mits y  0 en At y  c
“=“ want geen x0 voorwaarden in primaal
yi vrij i  1m'  1 (primale gelijkheden  vrije duale variabelen)
yi  0 i  m'm
(primale ≤ ongelijkheden  duale yi≥0)
09c.12
versie: 23/4/2012
© W. Philips, Universiteit Gent, 1998-2012
…Problemen met ongelijkheden
Taylorreeksbenadering:
• x is een lokaal maximum  optimale winst van volgend programma =0:
max f (x)  x mits
 gi (x)  x  0 i  1m '1
 g i (x)  x  g i (x) i  m'm
(nodige voorwaarden
voor stap naar andere
mogelijke oplossing)
Duaal lineair programma:
m '1
m
i 1
i  m'
minimaliseer  yi 0   yi g i (x) mits
m
  yi g i (x)  f (x)
i 1
yi vrij i  1m'  1
deze term is 0 want gi (x)0
en yi0 voor i=m’… m
De optimale winst is dus ≥0
en kan maar 0 zijn als
voor alle i: yigi(x)=0
yi  0 i  m'm
Indien duaal programma minstens 1 mogelijke oplossing heeft
met yi gi (x) =0, i=m’… m  duale optimale kost =0
09c.13
versie: 23/4/2012
© W. Philips, Universiteit Gent, 1998-2012
…Problemen met ongelijkheden…
Taylorreeksbenadering:
• x is een lokaal maximum  optimale winst van volgend programma =0:
max f (x)  x mits
 gi (x)  x  0 i  1m '1
 g i (x)  x  g i (x) i  m'm
(nodige voorwaarden
voor stap naar andere
mogelijke oplossing)
Indien duaal programma minstens één mogelijke oplossing heeft met
yi gi (x) =0, i=m’… m  duale optimale kost =0
Wegens sterke dualiteit:  primale maximale winst =0
 geen enkele mogelijke stap heeft een strikt positieve winst:
max f (x)  x  0  f (x)  x  0 x
Besluit: als duaal programma minstens één mogelijke oplossing heeft
met yi gi (x) =0, i=m’… m
 er bestaat geen lokaal verbeterende richting in x
 x kan een maximum zijn
09c.14
versie: 23/4/2012
© W. Philips, Universiteit Gent, 1998-2012
…Problemen met ongelijkheden
Omgekeerd: als er geen lokaal verbeterende richting bestaat in x
Twee gevallen:
•de primale optimale winst is 0
 de duale optimale kost is ook 0  er bestaat minstens één duale
mogelijke oplossing met yi gi (x) =0, voor alle i=m’… m
•het primaal probleem heeft geen mogelijke oplossingen
 dit kan niet want x=0 is een mogelijke oplossing
Samengevat:
•deze slide: als er geen lokaal verbeterende richting bestaat in x
 er bestaat minstens één mogelijke oplossing van het duaal programma
met yi gi (x) =0, voor alle i=m’… m
•vorige slide: als er minstens één mogelijke oplossing van het duaal
programma met yi gi (x) =0, i=m’… m bestaat
 er bestaat geen lokaal verbeterende richting in x
09c.15
versie: 23/4/2012
© W. Philips, Universiteit Gent, 1998-2012
Samenvatting: KKT-voorwaarden
Er bestaat geen lokaal verbeterende richting in x
 er bestaat een y die samen met x voldoet aan
de “Karush-Kuhn-Tucker” voorwaarden:
gi(x)=0, i=1…m’-1
gi (x)0, i=m’… m
m
(x is een mogelijke oplossing van origineel probleem)
  yi g i (x)  f (x) 
i 1
yi vrij i  1m'  1
x optimaliseert de
“Lagrangiaan”
m
L(x, y )  f (x)   yi g i (x)
i 1
yi  0 i  m'm
yi g i (x)  0
(duale optimale kost=0  complementary slackness!)
Het KKT-stelsel is een nodige en voldoende voorwaarde voor het niet
bestaan van lokaal verbeterende richtingen
Het KKT-stelsel is meestal een nodige voorwaarde voor een lokaal
maximum, maar geen voldoende voorwaarde
09c.16
versie: 23/4/2012
© W. Philips, Universiteit Gent, 1998-2012
Exotisch voorbeeld
In sommige exotische gevallen klopt onze redenering niet en is het KKTstelsel geen nodige voorwaarde voor een lokaal maximum:
Minimaliseer x12  4x2
( x1  1) 2  x22  1
mits
( x1  1) 2  x22  1
KKT-voorwaarde in x1=x2=0:
  2
 2  0 
y1    y 2      geen oplossing!
 0 
0  4
Aan bovenstaande KKT-voorwaarde kan nooit worden voldaan
 KKT theorie zegt: er bestaat wel verbeterende richting
 x1=x2=0 is geen optimimum foute redenering!
De redenering is fout, want:
• x1=x2=0 is mogelijke oplossing
•en er zijn geen andere mogelijke oplossingen  x1=x2=0 is optimaal
Oorzaak: als er geen mogelijke stappen bestaan hoeft f (x) nergens aan te
voldoen; bovenstaande (onmogelijk te voldoene) voorwaarde vervalt dus
In vele probleemklassen voldoen lokale optima wel degelijk aan KKT
•optima waarin alle actieve beperkingen lineair zijn
•optima waarin alle gi lineair onafhankelijk zijn
09c.17
Langrange methoden
versie: 23/4/2012
© W. Philips, Universiteit Gent, 1998-2012
Lagrange-vermenigvuldigers
Optimaliseer f (x) mits gi (x)=0, i=1,… m
enkel gelijkheden hier!
m
 zoek x en y waarvoor f (x)   yi g i (x) en gi (x)=0, i=1,… m
i 1
Techniek van de Lagrange-multiplicatoren: bovenstaande probleem lijkt
m
equivalent met optimaliseer L(x, y )  f (x)   yi g i (x) naar x en y
i 1
Controle: in een optimum van L(x,y) geldt:
m
L
 0  f (x)   yi g i (x)  0
xi
i 1
L
 0  g i ( x)  0
yi
De nodige voorwaarden voor een lokaal optimum van het origineel probleem
(met randvoorwaarden) en het Lagrange-probleem (zonder
randvoorwaarden) zijn dezelfde
Let op: beschouwd als functie van x en y vertoon L(x,y) altijd een zadelpunt in
het oppervlak  technieken als de gradiëntmethode zullen niet werken! 09c.19
versie: 23/4/2012
© W. Philips, Universiteit Gent, 1998-2012
Lagrangiaanse dualiteit
P: Maximaliseer f (x) mits gi (x)=0, i=1,… m’-1 en gi (x)0, i=m’,… m
Hulprobleem P’(y): met y een constante
vector met yi 0 voor i=m’,… m
m
Maximaliseer L(x, y )  f (x)   yi g i (x) naar x zonder randvoorwaarden
i 1
maximum: x*(y) met winst g(y)
g(y) wordt de Lagrangiaanse duale kostfunctie genoemd
Lagrangiaanse dualiteit:
•onder bepaalde voorwaarden vindt men door minimalisatie van g(y)
mits yi 0 voor i=m’,… m het maximum van P:
y* minimum van g(y)  x*(y*) maximum van P
• L(x, y) wordt de Lagrangiaanse winstfunctie genoemd; ze bevat de
“gedualiseerde” gelijkheden en ongelijkheden
•De minimalisatie van g(y) wordt het duaal probleem genoemd
Opmerking: men hoeft niet al de beperkingen te “dualiseren”; voorbeeld:
P: Maximaliseer f (x) mits gi(x)0, i=1… m en mits x 0
m
Hulprobleem: maximaliseer L(x, y )  f (x)   yi g i (x) naar x mits x 0
i 1
09c.20
versie: 23/4/2012
© W. Philips, Universiteit Gent, 1998-2012
Opmerkingen
Vraag
•wat betekent Lagrangiaanse dualiteit in het geval dat er enkel
gelijkheden zijn?
We aanvaarden Lagrangiaanse dualiteit zonder bewijs
De volgende uitspraak is niet 100% correct als het hulpprobleem voor
y=y* meerdere oplossingen heeft
•y* minimum van g(y)  x*(y*) maximum van P
De correcte uitspraak is dan
•y* minimum van g(y)  één van de optima x*(y*) is
het maximum van P
Zie ook http://en.wikipedia.org/wiki/Lagrange_multipliers
09c.21
versie: 23/4/2012
© W. Philips, Universiteit Gent, 1998-2012
Duale optimalisatietechniek
In formulevorm: g (y )  max L(x, y ) x (y )  argmax L(x, y )
x

x
y  argmin g (y)
 argmin max L(x, y )
y 0
max
y 0
x
x (y )  argmax L(x, y )
f (x)  min g (y )  min max L(x, y )
y 0
toegelatenx
y 0
x
minimaliseer g(y) naar
y b.v. met
gradiëntmethode
x
g(y)
y
`
y
bereken g(y)
y
maximaliseer L(x,y)
naar x b.v. met
gradiëntmethode
x
g(y)
x(y)
y
bereken
L(x,y)
09c.22
versie: 23/4/2012
© W. Philips, Universiteit Gent, 1998-2012
Voorbeeld: lineair programma
Gegeven probleem P: Maximaliseer ctx mits Axb en x0
enige niet-gedualiseerde
Hulpprobleem P’(y): met y0 een constante vector:
beperkingen
t
t
Maximaliseer L(x, y)=c x +y (b-Ax) naar x mits x0 naar x
Maximaliseer L(x, y)=ytb+(c-Aty)tx mits x0 naar x
Oplossing: maximum x*(y) met winst g(y)
 x*(y)=0; g(y)=ytb=bty
•als c-Aty0 (d.w.z. cj(Aty)j voor alle j)
•zoniet (als cj(Aty)j voor minstens één j)  g(y)=+
Besluit: g(y)=bty voor alle y met Aty≥c en g(y)=+ voor alle andere y
Minimaliseren van g(y) (stel dat g(y) niet overal + is):
•we minimaliseren over alle y0; we mogen de zoekruimte echter beperken
tot die y met Aty≥c aangezien in de rest van de zoekruimte g(y)=+ wat
zeker niet minimaal is
•besluit: minimaliseer g(y)=bty mits y0 en Aty≥c
het Lagrangiaans duaal probleem is dus equivalent
met het duaal lineair programma
09c.23
versie: 23/4/2012
© W. Philips, Universiteit Gent, 1998-2012
Vraag
Afgaand op de vorige slide: x*(y*)=0 omdat x*(y)=0 voor elke y
Bijgevolg zou het lineair programma “Maximaliseer ctx mits Axb en x0”
als optimum x*=0 hebben, maar dat is nonsens
Op de vorige slide is dus iets over het hoofd gezien/niet volledig correct
•Wat?
09c.24
versie: 23/4/2012
© W. Philips, Universiteit Gent, 1998-2012
Oefening
In de vorige slide hebben we x0 niet “gedualiseerd”
Oefening: leidt de vorige slide af maar behandel hierbij x0 als
bijkomende ongelijkheden die mee “gedualiseerd worden”
Hulpprobleem P’(y) wordt: met y0 en z0 een constante vector:
Maximaliseer L(x, y)=ctx +yt(b-Ax)+ztx naar x naar x
Wat wordt het duaal probleem nu?
09c.25
versie: 23/4/2012
© W. Philips, Universiteit Gent, 1998-2012
Economische interpretatie
Interpretatie in termen van het voetbalprobleem
•marktprijzen: trofeeprijzen c; marktprijzen onderdelen y
•verkoopwaarde van x trofeeën: ctx
•overschot aan ruw materiaal: b-Ax; verkoopwaarde: yt(b-Ax)
•Ons probleem: bedenk productiestrategie (kies aantallen te maken
trofeeën x) zodat opbrengst L(x, y)=ctx +yt(b-Ax) maximaal wordt
optimale opbrengst voor ons
• bty indien Aty≥c (winkel sluiten brengt het meest op)
• zoniet (trofeeën maken en overschot ruw materiaal verkopen) wordt
de opbrengst ingewikkelder en gelijk aan de maximale waarde van
L(x, y) mits Axb en x0, waarbij we minstens één van onze ruwe
materialen volledig opgebruiken
•Van uit het standpunt van de verkoper:
• om ons ruw materiaal te kunnen kopen moet hij de prijzen y zo
kiezen dat Aty≥c en dat kost hem g(y)=bty
• als hij zijn prijzen anders kiest dan willen we voor geen geld alle
ruwe materialen verkopen: g(y)=+
09c.26
versie: 23/4/2012
© W. Philips, Universiteit Gent, 1998-2012
Zwakke en sterke dualiteit
Zwakke dualiteit: De duale Lagrangiaanse kostfunctie g(y) is voor elke
mogelijke y een bovengrens voor de winst f (x) van elke mogelijk x in P
Bewijs: In elke mogelijke x=x0 in P geldt:
m
g (y )  max L(x, y )  L(x 0 , y )  f (x 0 )   yi g i (x 0 )
x
m
i 1
 f (x 0 )   0 g i (x 0 )  f (x 0 ) vermits yi0 en gi(x0)0 voor alle i
i 1
Sterke dualiteit: onder bepaalde voorwaarden is de waarde van het
minimum van g(y) gelijk aan de waarde van het maximum van P
en is x*(y*) het maximum van P
Duale oplossingsmethode: minimaliseer g(y)  x*(y*)
•dit vereist als subroutine vele evaluaties van de functie g(y)
•elke evaluatie is equivalent met het oplossen van een
maximalisatieprobleem zonder (of met vereenvoudigde) randvoorwaarden
•als sterke dualiteit geldt  x*(y*) is optimaal in origineel probleem
09c.27
Sensitiviteitsanalyse
Zelfstudie
versie: 23/4/2012
© W. Philips, Universiteit Gent, 1998-2012
Sensitiviteitsanalyse…
Sensitiviteitsanalyse:
Hoe verandert de optimale kost als één van de ongelijkheden n.l.
gk (x)0 worden vervangen door gk (x)k?
Notaties voor de finale optimale veranderlijken in het nieuw probleem:
•optimale Lagrange-vermenigvuldigers y*(k)
•optimale primale veranderlijken: x*(k) als verkorte notatie voor x*(y*(k))
•oud optimum wordt met deze notaties: y*(0) en x*(0)
Opmerkingen
•in het oude optimum x*(0) zijn sommige ongelijkheden actief (voldaan als
gelijkheid) en andere niet
•in het nieuw optimum x*(k) geldt dit ook, maar in het algemeen zijn niet
dezelfde ongelijkheden actief
•uiteraard zijn in beide gevallen alle gelijkheden actief
Beperkende veronderstelling
•in het oude en het nieuwe optimum zijn dezelfde ongelijkheden actief
•cfr. sensitiviteitsanalyse van lineaire programma’s, waar de formules
enkel gelden zolang de NB-veranderlijken dezelfde bleven
09c.29
versie: 23/4/2012
© W. Philips, Universiteit Gent, 1998-2012
…Sensitiviteitsanalyse…
In het oude en het nieuwe optimum zijn dezelfde ongelijkheden actief
Enkel voor de actieve (on)gelijkheden geldt:
•voor ongelijkheid k die actief blijft:
gk(x*(0))=0  gk(x*(k))=k
•en voor (on)gelijkheid j≠k die actief blijft: gj(x*(0))=0  gj(x*(k))=0
dx 
d


1

g k x (  k )  1  g k x (  k ) 
d k
d k
d
dx 


g j x ( k )  0  g j x ( k ) 
0
d k
d k








Voor de niet-actieve ongelijkheden geldt wegens complementary slackness:
•voor j≠k: yi*(k)(gi(x*(k))=0  yi*(k)=0 omdat gi(x*(k))>0
Optimale winst als functie van k is f (x*(k))

d
dx 
d
x



f x ( k )  f x ( k ) 
  y j ( k )g j x ( k ) 
d k
d k
d k
j







alle termen =0, behalve voor j=k: bij niet-actieve ongelijkheden is de
eerste factor =0; bij actieve ongelijkheden is de tweede factor =0
09c.30
versie: 23/4/2012
© W. Philips, Universiteit Gent, 1998-2012
…Sensitiviteitsanalyse
d
dx 



f x ( k )  f x ( k ) 

d k
d k





j

d
x
y j ( k )g j x ( k ) 
d k


alle termen =0, behalve voor j=k: bij niet-actieve ongelijkheden is de
eerste factor =0; bij actieve ongelijkheden is de tweede factor =0

=0, indien gk(x)≥0
niet actief is
 y k ( k )g k
dx 
x ( k ) 
  y k ( k )
d k



=1, indien gk(x)≥0 actief is
Besluit in oud optimum: sensitiviteit aan een verandering rechterlid
d

f x ( k ) geëvalueerd in k=0
d k


  y k (0) Interpretatie: sensitiviteit aan verandering rechterlid = optimale
waarde van corresponderende Lagrange-multiplicator
Opmerking: indien gk(x)≥0 niet actief is in het oud optimum, dan is de
sensitiviteit 0 (logisch, cfr. lineaire programma’s)
09c.31
Barrière- en penalisatiemethoden
Zelfstudie
versie: 23/4/2012
© W. Philips, Universiteit Gent, 1998-2012
Barrièremethoden
Gevraagd: maximaliseer f (x) mits gi (x) 0, i=1,… m
m
Barrièremethode: maximaliseer F (x)  f (x)    qi (x)
i 1
•met qi(x) een functie die nadert naar + naarmate gi(x)  0, d.w.z.
naarmate x de rand bepaald door gi(x)>0 bereikt
•en  een (gekozen) positief getal
De optimalisatie
•gebeurt met een aangepaste lijnoptimalisatietechniek (aanpassingen om
te vermijden dat men het gebied van mogelijke oplossingen verlaat)
•en wordt herhaald voor verschillende waarden van 
• eerst met grote (om oplossing ver weg van verboden zones te houden)
• nadien met kleinere 
Voorbeelden van penalisatiefuncties:
• -ln(gi(x))
• -1/gi(x)
Voorbeeld: “interne zoekmethoden voor lineaire programma’s”
09c.33
versie: 23/4/2012
© W. Philips, Universiteit Gent, 1998-2012
Penalisatiemethoden...
Vergelijkbaar met barrièremethoden
m
Principe: maximaliseer F (x)  f (x)    pi (x)
i 1
•met pi(x) een penalisatiefunctie die nul is in alle x waar de
corresponderende (on)gelijkheid is voldaan en pi(x)>0
in alle x waar de corresponderende (on)gelijkheid niet is voldaan
•en  een (gekozen) groot positief getal
Veel voorkomende penalisatiefuncties:
•max(0, -gi(x))
en max2(0,-gi(x))
voor gi(x)0 -beperkingen
•|gi(x)|
en |gi(x)|2
voor gi(x)=0-beperkingen
Deze zijn differentieerbaar  men kan (toegevoegde-)
gradiëntmethoden gebruiken
Praktische implementatie: start met een kleine :
•voor die : doe enkele stappen van (toegevoegde) gradiëntmethode
•verhoog  en doe weer enige stappen (dwingt oplossingen weg uit de
verboden zone)
09c.34
versie: 23/4/2012
© W. Philips, Universiteit Gent, 1998-2012
...Penalisatiemethoden
Penalisatiemethoden leiden niet altijd tot de juiste oplossing
Voorbeeld: minimaliseer x mits x  0
penalisatiemethode: minimaliseer F(x)=x+ max2{ 0, -x }
als x  0
dF  1

dx 1  2  x als x  0
 x

2
x   x
als x  0
als x  0
 enig stationair punt: x*=-1/(2)
In het algemeen vinden we enkel voor    de juiste oplossing
Bij de penalisatiefuncties max{ 0, gi(x)- bi} en |gi(x)- bi| bestaat er meestal wel
een eindige  waarvoor men het juiste minimum vindt
Voor alle grotere  vindt men dan ook het juiste optimum
Het is gevaarlijk  te groot te kiezen (b.v. wegens het risico op overflow)
 in de praktijk laat men  tijdens de berekeningen (b.v. iteratieve
minimalisatieprocedure) geleidelijk toenemen
09c.35
Zelfstudie: Convexe niet-linaire
programma’s
versie: 23/4/2012
© W. Philips, Universiteit Gent, 1998-2012
Uniciteit van het optimum...
f(x)
Convex/niet concaaf
Concaaf/niet convex
Niet concaaf/niet convex
Convex en concaaf
x
Een functie f (x) is in een convex domein W
•convex als f ( x1+(1- ) x2)   f (x1)+(1-) f (x2)
•concaaf als f ( x1+(1- ) x2)   f (x1)+(1-) f (x2)
voor alle x1 en x2 in W en voor alle  [ 0, 1 ]
Als er geen beperkingen zijn (d.w.z. W bevat alle mogelijke x):
•dan is elk lokaal minimum (maximum) van een convexe (concave) functie
ook een globaal mimimum (maximum)
•dan is elk stationair punt van een gladde convexe (concave) functie een
globaal minimum (maximum)
09c.37
versie: 23/4/2012
© W. Philips, Universiteit Gent, 1998-2012
Convexe programma’s
Beschouw een algemeen niet-lineair programma:
•maximaliseer f (x) mits
•A: gi (x) 0, i=1…m1
B: gi (x) 0, i=m1+1…m2
•C: gi (x)= bi, i=m2+1…m
Een optimalisatieprobleem is convex als
•de f (x) concaaf is (bij minimalisatie wordt dit: convex)
•alle functies gi (x) in A convex, in B concaaf en in C lineair zijn
d.w.z. als het gebied waarover men optimaliseert convex is
Bijzonder geval: een lineair programma
Belangrijk: elk lokaal optimum van een convex programma is een globaal
optimum  dit vergemakkelijkt de oplossing zeer veel
09c.38
versie: 23/4/2012
© W. Philips, Universiteit Gent, 1998-2012
...Uniciteit van het optimum
f(x)
uniek minimum
en niet convex
f(x)
x
uniek minimum
en niet convex
x
Een functie f (x) kan een uniek optimum hebben en toch niet convex of
concaaf zijn
09c.39
versie: 23/4/2012
© W. Philips, Universiteit Gent, 1998-2012
Convexe/concave functies herkennen
f (x) met continue partiële afgeleiden van 2e orde is convex/ concaaf in een
convex domein W  zijn Hessiaan H is positief/negatief semi-definiet x
Lineaire functies zijn tegelijk convex en concaaf
De som van convexe/concave functies is convex/concaaf
g (x)=max{ gi(x): i=1…k } is convex als alle gi (x) convex zijn
g (x)=min{ gi(x): i=1…k } is concaaf als alle gi (x) concaaf zijn
g (x) concaaf  f (x)=1/g (x) convex in het gebied waar g (x)>0
g (x) convex  f (x)=1/g (x) concaaf in het gebied waar g (x)<0
Enkel voor functies met 1 variabele:
•g ( y) niet-dalend en h (x) convex  f (x)=g (h (x)) convex
•g ( y) niet-stijgend en h (x) convex  f (x)=g (h (x)) concaaf
09c.40
versie: 23/4/2012
© W. Philips, Universiteit Gent, 1998-2012
Voorbeeld
f ( x, y)  qi  ( x  ypi )
convex want lineaire functie

f ( x, y)  maxqi  ( x  ypi ),qi  ( x  ypi )
 qi  ( x  ypi )

f ( x, y )  qi  ( x  ypi ) 8

convex als maximum van 2
convexe functies
convex omdat z8 niet-dalend is in
het gebied waar z > 0
m
f ( x, y )   qi  ( x  ypi ) 8
i 1
convex als som van convexe
functies  uniek minimum
Besluit: convexiteit/concaviteit garandeert een uniek optimum en maakt
optimalisatie veel
09c.41
versie: 23/4/2012
© W. Philips, Universiteit Gent, 1998-2012
Bijzondere gevallen
Niet te kennen
Scheidbare programma’s: Rardin p. 801 +vanderbei (stuksgewijs lineaire
benadering)
Posynomiale kostfuncties: Rardin p. 809 -> z=ln x substitutie
09c.42