Didactisch materiaal bij de cursus Academiejaar 2010-2011 [email protected]...

28
Didactisch materiaal bij de cursus Academiejaar 2010-2011 [email protected] http://telin.UGent.be/~philips/optimalisatie/ Tel: 09/264.33.85 Fax: 09/264.42.95 Prof. dr. ir. W. Philips Optimalisatietechnieken Telecommunicatie en Informatieverwerki UNIVERSITEIT GENT

Transcript of Didactisch materiaal bij de cursus Academiejaar 2010-2011 [email protected]...

Page 1: Didactisch materiaal bij de cursus Academiejaar 2010-2011 philips@telin.UGent.be philips/optimalisatie/ Tel: 09/264.33.85 Fax: 09/264.42.95.

Didactisch materiaal bij de cursus

Academiejaar 2010-2011

[email protected]

http://telin.UGent.be/~philips/optimalisatie/

Tel: 09/264.33.85 Fax: 09/264.42.95

Prof. dr. ir. W. Philips

Optimalisatietechnieken

Telecommunicatie en Informatieverwerking

UNIVERSITEITGENT

Page 2: Didactisch materiaal bij de cursus Academiejaar 2010-2011 philips@telin.UGent.be philips/optimalisatie/ Tel: 09/264.33.85 Fax: 09/264.42.95.

06d

.2

© W. Philips, Universiteit Gent, 1998-2011versie: 28/3/2011

Copyright noticeThis 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 E-mail: [email protected] of Telecommunications and Information Processing Fax: 32-9-264.42.95University of Gent Tel: 32-9-264.33.85St.-Pietersnieuwstraat 41, B9000 Gent, Belgium

Page 3: Didactisch materiaal bij de cursus Academiejaar 2010-2011 philips@telin.UGent.be philips/optimalisatie/ Tel: 09/264.33.85 Fax: 09/264.42.95.

Dynamisch programmeren

Page 4: Didactisch materiaal bij de cursus Academiejaar 2010-2011 philips@telin.UGent.be philips/optimalisatie/ Tel: 09/264.33.85 Fax: 09/264.42.95.

06d

.4

© W. Philips, Universiteit Gent, 1998-2011versie: 28/3/2011

Dynamisch programmeren…

Voorbeeld: het Floyd algoritme voor kortste paden•origineel probleem: vind alle kortste paden tussen alle paren van knopen

•hulpproblemen: vind alle kortste paden tussen alle paren van knopen die enkel knopen 1, … t als intermediaire knopen gebruiken

Principe van dynamisch programmeren•soms lost men een optimalisatieprobleem gemakkelijker op door eerst een aantal verwante problemen met toenemende moeilijkheid op te lossen•dit is het geval als er sterke verbanden bestaan tussen al deze problemen zodat de oplossing van een probleem de oplossing van een ander vergemakkelijkt

Page 5: Didactisch materiaal bij de cursus Academiejaar 2010-2011 philips@telin.UGent.be philips/optimalisatie/ Tel: 09/264.33.85 Fax: 09/264.42.95.

06d

.5

© W. Philips, Universiteit Gent, 1998-2011versie: 28/3/2011

…Dynamisch programmeren

Dynamisch programmeren heeft pas zin•als de som van de complexiteiten (rekentijd) van de hulp-problemen kleiner is dan de complexiteit van een directe oplossing van het origineel probleem

•of als men ook geïnteresseerd is in de oplossing van de hulpproblemen

Voorbeeld: maximaliseer f(x,y,z) mits (x,y,z) •hou eerst x en y vast en optimaliseer over z•laat vervolgens ook y vrij en optimaliseer over y en z•laat tenslotte ook x vrij en optimaliseer over x, y en z

Gebruik hierbij in elke stap de oplossingen van de vorige stap

Page 6: Didactisch materiaal bij de cursus Academiejaar 2010-2011 philips@telin.UGent.be philips/optimalisatie/ Tel: 09/264.33.85 Fax: 09/264.42.95.

Dynamisch programmeren

Optimale paden in acyclische grafen

Page 7: Didactisch materiaal bij de cursus Academiejaar 2010-2011 philips@telin.UGent.be philips/optimalisatie/ Tel: 09/264.33.85 Fax: 09/264.42.95.

06d

.7

© W. Philips, Universiteit Gent, 1998-2011versie: 28/3/2011

Productieplanning (Wagner)

Twee soorten productiekosten (elk afhankelijk van de maand k):•opstartkosten: sk per productie “run”•de marginale productiekost: pk per eenheid product

productie opslag verkoop

Er zijn ook opslagkosten: hk per eenheid productVraag: plan de productie zodat de som van productie- en opslagkosten minimaal wordt en aan de vraag voldaan wordtBepaal dus

•in welke maanden we moeten produceren•en hoeveel we in die maanden moeten produceren

Vraag in maand k: vk (afhankelijk van de maand k):

Page 8: Didactisch materiaal bij de cursus Academiejaar 2010-2011 philips@telin.UGent.be philips/optimalisatie/ Tel: 09/264.33.85 Fax: 09/264.42.95.

06d

.8

© W. Philips, Universiteit Gent, 1998-2011versie: 28/3/2011

Voorbeeld: afweging

productie opslag verkoop

Men kan willekeurig veel produceren in elke periode (veronderstelling!)

•men kan b.v. in maand 1 alles produceren voor maand 1-6 slechts 1 maal opstartkosten, maar veel opslagkosten

•men kan ook elke maand enkel produceren voor die maand geen opslagkosten, maar elke maand opstartkosten

Vraag: plan de productie zodat de som van productie- en opslagkosten minimaal wordt en aan de vraag voldaan wordtBelangrijk inzicht: in een optimale oplossing zal er nooit geproduceerd worden als er nog voorraad is een optimale oplossing levert dus ofwel de vraag voor een maand k ofwel volledig uit voorraad ofwel volledig uit productie maar niet uit een combinatie van beide

Page 9: Didactisch materiaal bij de cursus Academiejaar 2010-2011 philips@telin.UGent.be philips/optimalisatie/ Tel: 09/264.33.85 Fax: 09/264.42.95.

06d

.9

© W. Philips, Universiteit Gent, 1998-2011versie: 28/3/2011

Extra uitleg

Een concrete situatie waarin het Wagner-voorbeeld van toepassing is, is de volgende:

een Belgisch bedrijf verkoopt speeldgoedpoppen van het type “Samson” op de Belgische markt en heeft daarop de exclusiviteit. Deze poppen worden gemaakt door het moederbedrijf in Finland. Het maken van een groot aantal poppen duurt op zich niet lang (b.v. 1 of 2 dagen), maar de machine moet er wel voor worden aangepast wat een belangrijke opstartkost met zich meebrengt.

Vermits Samson enkel in België wordt verkocht, maakt het moederbedrijf de poppen enkel aan op vraag van het Belgisch bedrijf. Het moederbedrijf rekent dus per (interne) bestelling van het Belgisch bedrijf telkens een opstartkost aan (sk, aanpassen van de machine) en een kost per eenheid (pk). Elke bestelling wordt in één keer geproduceerd.

Vanuit het standpunt van het Belgisch bedrijf komt het erop neer om het totaal aantal te verkopen poppen optimaal te spreiden over één of meerdere bestellingen om zodoende de totale kostprijs (bestelkosten en opslagkosten) voor het Belgisch bedrijf te minimaliseren. Elke bestelling wordt aan het begin van de maand doorgegeven aan het moederbedrijf dat dan de machine aanpast, de poppen produceert, en voor de rest van de maand de machine gebruikt (na heraanpassen van de machine) voor de productie van andere types poppen voor andere landen.

Page 10: Didactisch materiaal bij de cursus Academiejaar 2010-2011 philips@telin.UGent.be philips/optimalisatie/ Tel: 09/264.33.85 Fax: 09/264.42.95.

06d.

10

© W. Philips, Universiteit Gent, 1998-2011versie: 28/3/2011

Totale kost: (s’l+s’k)+pkvk+axkvk met a=hl+hl+1+… hk-1+pl -pk

Geval 1: a<0 de kost daalt als xk stijgt •het optimum is xk=1 met kost s’l+s’k+pkvk+avk

•vermits 1-xk=0 is het misschien niet eens nodig om in maand k de productie op te starten de kost wordt dan nog kleiner, n.l.

s’l+pkvk+avk

•opmerking: opstarten in maand k is toch nodig als we beslis-sen om dan voorraad op te bouwen om later te verkopen

Productie of voorraad, maar niet beide…Stel dat we in de k-de maand aan een deel xkvk van de vraag voldoen uit voorraad (met producten geproduceerd in maand l) en de rest, n.l. (1-xk)vk nu produceren (0 xk 1)

kost van de producten uit voorraad:s’l+pl xkvk+(hl+hl+1+… hk-1) xkvk (als xk>0)kost van de nieuw geproduceerde producten: s’k+pk (1-xk)vk (als xk<1)

(deel van) opstartkost

Page 11: Didactisch materiaal bij de cursus Academiejaar 2010-2011 philips@telin.UGent.be philips/optimalisatie/ Tel: 09/264.33.85 Fax: 09/264.42.95.

06d.

11

© W. Philips, Universiteit Gent, 1998-2011versie: 28/3/2011

…Productie of voorraad, maar niet beide

Besluit: in alle gevallen kunnen we een oplossing met gelijktijdige voorraad en

productie (dus met xk 0 en xk 1) verbeteren; een dergelijke oplossing is dus nooit optimaal!

Totale kost: (s’l+s’k)+pkvk+axkvk met a=hl+hl+1+… hk-1+pl -pk

Geval 2: a>0 de kost daalt als xk daalt

•het optimum is xk=0 met kost s’l+s’k+pkvk

•vermits xk=0 is het misschien niet eens nodig om in maand l de productie op te starten de kost wordt dan nog kleiner, n.l. s’k+pkvk+avk

•opmerking: opstarten in maand l is toch nodig als we beslis-sen om dan voorraad op te bouwen om later (maar dus niet in maand k) te verkopen

Geval 3: a=0 keuze: optimum xk=0 of xk=1 (naargelang welk van de twee goedkoper is; opstartkosten zouden weer geheel of gedeeltelijk kunnen vervallen)

Page 12: Didactisch materiaal bij de cursus Academiejaar 2010-2011 philips@telin.UGent.be philips/optimalisatie/ Tel: 09/264.33.85 Fax: 09/264.42.95.

06d.

12

© W. Philips, Universiteit Gent, 1998-2011versie: 28/3/2011

...Productieplanning: graafvoorstelling

Reden: het geen zin heeft te produceren terwijl er nog voorraad is een oplossing die geen pad is, kan nooit optimaal zijn

Besluit: het probleem is herleid tot het zoeken van een optimaal pad in een acyclische graaf (geen circuits aanwezig!)

1 2 3 4 5 6 7

Elke knoop k is een mogelijk productietijdstip (begin maand k)just in time

r1 r2 r3 r4 r5 r6

2 runs

r1

r3

Het begin van pijl is de effectieve productie van een hoeveelheid

Het eind van een pijl is het moment waarop de geproduceerde hoeveelheid volledig is verkochtOns productieplan is een pad (en dus niet een willekeurige verzameling takken)

Page 13: Didactisch materiaal bij de cursus Academiejaar 2010-2011 philips@telin.UGent.be philips/optimalisatie/ Tel: 09/264.33.85 Fax: 09/264.42.95.

06d.

13

© W. Philips, Universiteit Gent, 1998-2011versie: 28/3/2011

...Productieplanning: graafvoorstelling...

1 2 3 4 5 6 7

Besluit: we zoeken een optimaal pad in een graaf•de graaf is volledig geconnecteerd •de graaf is acyclisch (hij bevat geen circuits)

De kost van een pijl (k,l ) ligt nu volledig vast omdat de aanwezigheid van (k,l ) in een pad betekent dat de productie in maand k gelijk is aan de vraag in de periode k…l -1:

geen pad = gelijktijdige voorraad/productie niet optimaal

paden misschien optimaal

c(k,l)=sk+(vk+…+ vl-1) pk

+ (vk+1+…+ vl-1) hk+(vk+2+…+ vl-1)hk+1+…

productiekost

opslagkost

Page 14: Didactisch materiaal bij de cursus Academiejaar 2010-2011 philips@telin.UGent.be philips/optimalisatie/ Tel: 09/264.33.85 Fax: 09/264.42.95.

06d.

14

© W. Philips, Universiteit Gent, 1998-2011versie: 28/3/2011

© Rardin, fig 9.13 525

305

100

65555511017060

170

135180

280

315

360

270

305

350

515

14570

1 2 3 4 5 6 7

...Productieplanning...

optimale oplossing

Page 15: Didactisch materiaal bij de cursus Academiejaar 2010-2011 philips@telin.UGent.be philips/optimalisatie/ Tel: 09/264.33.85 Fax: 09/264.42.95.

06d.

15

© W. Philips, Universiteit Gent, 1998-2011versie: 28/3/2011

Kortste paden in de Wagner graaf

Oplossingsmethode: tabelmethode

Het is niet nodig expliciet een graaf te construeren eenvoudiger datastructuren

We hebben een acyclische graaf het optimaal pad naar k kan enkel 1… k-1 als intermediaire knopen hebben

het optimaal pad naar k is dus een ééntaksuitbreiding van één van de optimale paden naar 1… k-1

Definieer d(k): de kost van het beste pad van 1 naar kAlgoritme:

•Initialisatie: d(1)=0

•Voor k=2,… n:

d(k)=min{ d(l)+c(l,k): 1 l < k }Complexiteit: O(n2/2) optellingen en evenveel vergelijkingenDit algoritme doet dezelfde berekeningen als Bellman-Ford maar in een andere volgorde

Page 16: Didactisch materiaal bij de cursus Academiejaar 2010-2011 philips@telin.UGent.be philips/optimalisatie/ Tel: 09/264.33.85 Fax: 09/264.42.95.

Zelfstudie

Page 17: Didactisch materiaal bij de cursus Academiejaar 2010-2011 philips@telin.UGent.be philips/optimalisatie/ Tel: 09/264.33.85 Fax: 09/264.42.95.

06d.

17

© W. Philips, Universiteit Gent, 1998-2011versie: 28/3/2011

Graafmodellering van knapzakprobleemInvestering: totaal budget 8 (miljoen $)Mogelijke investeringen: A B C D Kost ak opbrengst ck (later!): 58 13 24 710

8Nogbeschikbaar

einde8

3

310

10

8

7

6

5

4

3

2

1

0

8

7

6

5

4

3

2

1

0

8

7

6

5

4

3

2

1

0

4

4

4

4

Maximum-winst padin een graaf!

niet kopenkopen

Page 18: Didactisch materiaal bij de cursus Academiejaar 2010-2011 philips@telin.UGent.be philips/optimalisatie/ Tel: 09/264.33.85 Fax: 09/264.42.95.

06d.

18

© W. Philips, Universiteit Gent, 1998-2011versie: 28/3/2011

Staten en beslissingen

De graaf in dynamisch programmeren is dikwijls een beslissingsgraaf (cfr. het knapzakprobleem):

•elke kolom correspondeert met een beslissingsstadium•elke knoop correspondeert met een toestand: b.v. de knoop in kolom 3 op rij 4 = “we hebben al een beslissing genomen voor A en B en hebben nog 5 miljoen over”

•elke tak correspondeert met een beslissing genomen in een bepaalde toestand: C kopen

Het principe “deelpaden van een optimaal pad moeten ook optimaal zijn” maakt dynamisch programmeren hier efficiënt:

•Voorbeeld: als we nog 5 miljoen over hebben op het moment dat we over C beslissen heeft het geen belang hoe we tot die 5 miljoen gekomen zijn (alleen de toestand is van belang)

Belangrijke beperking: deze graafmodellering heeft maar zin als het aantal mogelijke toestanden beperkt blijkt

Page 19: Didactisch materiaal bij de cursus Academiejaar 2010-2011 philips@telin.UGent.be philips/optimalisatie/ Tel: 09/264.33.85 Fax: 09/264.42.95.

06d.

19

© W. Philips, Universiteit Gent, 1998-2011versie: 28/3/2011

Functionele vergelijkingen

Zij dk[i] de maximale opbrengst als men over i miljoen beschikt waarmee men (b.v. de laatste) k objecten mag kopen (en d0[i]=0)Als men nu k+1 i.p.v. k objecten mag kopen met de i miljoen:

•als men het nieuwe object niet koopt dan heeft men i over om een keuze te maken uit de oude objecten opbrengst 0 +dk[i]

•als i ak+1met ak+1 de prijs van het nieuwe object en als men dit object koopt dan heeft men i-ak+1 over om optimaal te kiezen uit de oude objecten opbrengst ck+1 +dk[i-ak+1]

Beste opbrengst: dk+1[i] = max(ck+1 +dk[i-ak+1], dk[i] ) als i ak+1

ni: toestand:Nogbeschikbaar

n

0

n

0

n

0

k=0 k=1 k=2 … k=m-1

0

k: stadium (waarin men mag kiezen uit k objecten)

en dk+1[i] = dk[i] als i < ak+1

Page 20: Didactisch materiaal bij de cursus Academiejaar 2010-2011 philips@telin.UGent.be philips/optimalisatie/ Tel: 09/264.33.85 Fax: 09/264.42.95.

06d.

20

© W. Philips, Universiteit Gent, 1998-2011versie: 28/3/2011

Oplossingsmethoden...

Complexiteit: O(mn)

dk[i]=max(ck +dk-1[i-ak], dk-1[i] ) als … en dk[i]=dk-1[i] als ….

D? C? B? A?k 0 1 2 3 4

a(k) 7 2 1 5c(k) 10 4 3 8

0 0 0 0 0 01 0 0 0 3 32 0 0 4 4 43 0 0 4 7 74 0 0 4 7 75 0 0 4 7 86 0 0 4 7 117 0 10 10 10 128 0 10 10 13 15

i

Methode 1: los de functionele vergelijkingen op voor alle k,i: for(k=0;k<=m;k++)

for(i=0;i<=n;i++)…

Men heeft meteen ook het resultaat voor kleiner budget

beste opbrengst als men 4 miljoen mag spenderen aan D,C en/of B

Page 21: Didactisch materiaal bij de cursus Academiejaar 2010-2011 philips@telin.UGent.be philips/optimalisatie/ Tel: 09/264.33.85 Fax: 09/264.42.95.

06d.

21

© W. Philips, Universiteit Gent, 1998-2011versie: 28/3/2011

...Oplossingsmethoden...

D? C? B? A?k 0 1 2 3 4

ak 7 2 1 5ck 10 4 3 80 0 0 0 0 01 0 0 0 3 32 0 0 4 4 43 0 0 4 7 74 0 0 4 7 75 0 0 4 7 86 0 0 4 7 117 0 10 10 10 128 0 10 10 13 15

i

Men kan genomen beslis-singen gemakkelijk terug-vinden

verschillend, dus A werd gekocht

B gekochtC gekocht

D niet gekocht

Page 22: Didactisch materiaal bij de cursus Academiejaar 2010-2011 philips@telin.UGent.be philips/optimalisatie/ Tel: 09/264.33.85 Fax: 09/264.42.95.

06d.

22

© W. Philips, Universiteit Gent, 1998-2011versie: 28/3/2011

...Oplossingsmethoden

Opmerking: de tabelmethode doet overbodige berekeningenHet is voldoende de gekleurde cellen te berekenenAlternatieve methode:

•eerst de te berekenen cellen opsporen (van rechts naar links)

De graaf is precies deze van enkele slides geleden (in spiegelbeeld)

D? C? B? A?k 0 1 2 3 4

ak 7 2 1 5ck 10 4 3 80 0 0 0 0 01 0 0 0 3 32 0 0 4 4 43 0 0 4 7 74 0 0 4 7 75 0 0 4 7 86 0 0 4 7 117 0 10 10 10 128 0 10 10 13 15

i

•vervolgens de waarde van de cellen berekenen (van links naar rechts)

Dit is dan weer een zuiver graafalgoritme

•stap 1: opstellen graaf•stap 2: berekenen optimaal pad

Page 23: Didactisch materiaal bij de cursus Academiejaar 2010-2011 philips@telin.UGent.be philips/optimalisatie/ Tel: 09/264.33.85 Fax: 09/264.42.95.

06d.

23

© W. Philips, Universiteit Gent, 1998-2011versie: 28/3/2011

Literatuur

Rardin, hfdst. 9: blzn. 458-468

Page 24: Didactisch materiaal bij de cursus Academiejaar 2010-2011 philips@telin.UGent.be philips/optimalisatie/ Tel: 09/264.33.85 Fax: 09/264.42.95.

Appendix

kennen!

Page 25: Didactisch materiaal bij de cursus Academiejaar 2010-2011 philips@telin.UGent.be philips/optimalisatie/ Tel: 09/264.33.85 Fax: 09/264.42.95.

06d.

25

© W. Philips, Universiteit Gent, 1998-2011versie: 28/3/2011

veel kleine (1-dimensionale) optimalisatieproblemen

1 middelgroot (2-dimensionaal) optimalisatieprobleem

1 groot (3-dimensionaal) optimalisatieprobleem

Dynamisch programmeren: voorbeeld...

Hulpprobleem: idem, maar met gegeven vaste x en y•Stel 1(x,y)={z: (x,y,z) }, de verzameling van alle toegelaten oplossingen met gegeven (x,y)

•Stel 1(x,y) de verzameling van alle (x,y) waarvoor 1(x,y) niet leeg is

•Voor alle (x,y) 1(x,y): maximaliseer f(x,y,z) over z 1(x,y)

Maximaliseer f(x,y,z) mits (x,y,z)

Finale oplossing: •maximaliseer f1(x,y) over (x,y) 1(x,y)

optimum: f1(x,y) bereikt bij z=Z1(x,y)

Page 26: Didactisch materiaal bij de cursus Academiejaar 2010-2011 philips@telin.UGent.be philips/optimalisatie/ Tel: 09/264.33.85 Fax: 09/264.42.95.

06d.

26

© W. Philips, Universiteit Gent, 1998-2011versie: 28/3/2011

...Voorbeeld...

Stel dat ={(x,y,z): x, y, z = 1,…1000}

Stel f(x,y,z) heeft geen speciale eigenschappen (zoals continuïteit) de enig mogelijke optimalisatiestrategie bestaat er in alle mogelijke functiewaarden onderling te vergelijken

Directe oplossing: één 3D probleem

dit vraagt 10003 functie-evaluaties (en -vergelijkingen)

Via dynamisch programmeren

•10002 1D hulpproblemen; complexiteit: 100021000

•Eén 2D hulpprobleem; complexiteit: 10002

totale complexiteit 10003+10002 10003

Besluit: • dynamisch programmeren helpt hier niet omdat de deelproblemen elkaar niet helpen oplossen

• het schaadt echter ook niet (veel) ...

Page 27: Didactisch materiaal bij de cursus Academiejaar 2010-2011 philips@telin.UGent.be philips/optimalisatie/ Tel: 09/264.33.85 Fax: 09/264.42.95.

06d.

27

© W. Philips, Universiteit Gent, 1998-2011versie: 28/3/2011

...Voorbeeld

Stel dat 1(x,y)={(x,y,z): x, y, z = 1,…1000}

Stel f(x,y,z)=g(x,y)+h(z)

Via dynamisch programmeren

•10002 1D hulpproblemen elk met vaste g(x,y)

•alle hulpproblemen leiden tot dezelfde oplossing z=z0 omdat

ze in feite h(z) optimaliseren over steeds dezelfde z-waarden

•Complexiteit: 1000 (zoeken van z0)

•Eén 2D hulpprobleem; complexiteit: 10002

totale complexiteit 10002+1000 i.p.v. 10003

Besluit: dynamisch programmeren helpt hier wel omdat de deelproblemen enorm sterk verwant zijn waardoor 10002 problemen oplossen evenveel werk vraagt als er 1 oplossen

Page 28: Didactisch materiaal bij de cursus Academiejaar 2010-2011 philips@telin.UGent.be philips/optimalisatie/ Tel: 09/264.33.85 Fax: 09/264.42.95.

06d.

28

© W. Philips, Universiteit Gent, 1998-2011versie: 28/3/2011

Productieplanning: kostberekening

60 170 110 55 55 65

Periode k

1 2 3 4 5 6

Vraag rk: 10 40 20 5 5 15

Opstartkost sk: 50 50 50 50 50 50

Productiekost pk: 1 3 3 1 1 1

Opslagkost hk: 2 2 2 2 2 2

1 2 3 4 5 6 7

just in time 2 runs

c(1,3)=50+(10+40)1+(40)2=180

180

c(3,7)=50+(20+5+5+15)3+(5+5+15)2+(5+15)2+(15)2=305

305