De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

Didactisch materiaal bij de cursus Academiejaar 2010-2011 Tel: 09/264.33.85 Fax: 09/264.42.95.

Verwante presentaties


Presentatie over: "Didactisch materiaal bij de cursus Academiejaar 2010-2011 Tel: 09/264.33.85 Fax: 09/264.42.95."— Transcript van de presentatie:

1 Didactisch materiaal bij de cursus Academiejaar 2010-2011 philips@telin.UGent.be http://telin.UGent.be/~philips/optimalisatie/ Tel: 09/264.33.85 Fax: 09/264.42.95 Prof. dr. ir. W. Philips Optimalisatietechnieken

2 © W. Philips, Universiteit Gent, 1998-2011versie: 21/2/2011 02d. 2 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-2002” 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. PhilipsE-mail: philips@telin.UGent.be Department of Telecommunications and Information ProcessingFax: 32-9-264.42.95 University of GentTel: 32-9-264.33.85 St.-Pietersnieuwstraat 41, B9000 Gent, Belgium

3 Lineair programmeren De simplex-methode

4 © W. Philips, Universiteit Gent, 1998-2011versie: 21/2/2011 02d. 4 Simplexmethode: Voorbeeld... x 1 = 0, x 2 = 0 zijn geldige NB-variabelen (op zicht!) De corresponderende oplossing x=(0, 0, 1000, 1500, 1750, 4800) is niet-negatief  x is een extreem punt  kies x (0) = x x 1 +x 3 = 1000 x 2 +x 4 = 1500 x 1 +x 2 +x 5 = 1750 4 x 1 + 2 x 2 +x 6 = 4800 x 1, x 2, x 3, x 4, x 5, x 6  0 Trofeeprobleem: Maximaliseer 12 x 1 +9 x 2 waarbij Stap 1: bepaal de simplex-richtingen: bereken de B-variabelen x b = ( x 3, x 4, x 5, x 6 ) in functie van de NB-variabelen x nb = ( x 1, x 2 ) Stap 0: zoek een initieel extreem punt x (0) x 3 = 1000 -x 1 x 4 = 1500 -x 2 x 5 = 1750 - x 1 -x 2 x 6 = 4800 -4 x 1 - 2 x 2

5 © W. Philips, Universiteit Gent, 1998-2011versie: 21/2/2011 02d. 5 …Voorbeeld: simplextableau Extreem punt: x (0)= (0, 0, 1000, 1500, 1750, 4800) NB-variabelen: x 1, x 2 Maximaliseer 12 x 1 +9 x 2 waarbij NB-variabelen B-variabelen gelijkheden Simplextableau: Waarden B-variabelen in extreem punt Winstfunctie: 12 x 1 +9 x 2 x 3 = 1000 -x 1 x 4 = 1500 -x 2 x 5 = 1750 - x 1 -x 2 x 6 = 4800 -4 x 1 - 2 x 2

6 © W. Philips, Universiteit Gent, 1998-2011versie: 21/2/2011 02d. 6 De simplexrichtingen kunnen eenvoudig worden afgelezen ribbe A:  ( x 1, x 2 )=  (1, 0) ribbe B:  ( x 1, x 2 )=  (0, 1)  ( x 1, x 2 )=(1, 0)  ( x 1, x 2 )=(0, 1) Simplextableau: …Voorbeeld: simplexrichtingen... Ribbe A en B doen de winst stijgen; we kiezen ribbe A max = 1000 want voor  > 1000 wordt de eerste B-variabele, n.l. x 3, negatief Nieuw extreem punt: x (1) = (1000, 0, 0, 1500, 750, 800)   x =  (1, 0, -1, 0, -1, -4)   x =  (0, 1, 0, -1, -1, -2) Simplex-richtingen kunnen worden afgelezen uit het tableau:

7 © W. Philips, Universiteit Gent, 1998-2011versie: 21/2/2011 02d. 7 Simplextableau: …Voorbeeld... De NB-variabelen x 1, x 2 zijn niet meer geldig (want x 1  0) Gevonden extreme punten x 3 = 1000 -x 1 x 4 = 1500 -x 2 x 5 = 1750 - x 1 -x 2 x 6 = 4800 -4 x 1 - 2 x 2 x 1 = 1000 -x 3 x 4 = 1500 -x 2 x 5 = 1750 -(1000 -x 3 ) -x 2 x 6 = 4800 -4(1000 -x 3 ) - 2 x 2 nieuwe winst: 12 x 1 + 9 x 2 =12(1000)+9(0)  we kiezen x 2 = 0, x 3 = 0 als nieuwe NB-variabelen voor x (1) We drukken nu de nieuwe B-variabelen uit in functie van x 2, x 3

8 © W. Philips, Universiteit Gent, 1998-2011versie: 21/2/2011 02d. 8 Nieuw simplextableau: …Voorbeeld… x 1 = 1000 -x 3 x 4 = 1500 -x 2 x 5 = 1750 - (1000 -x 3 ) -x 2 x 6 = 4800 -4(1000 -x 3 ) - 2 x 2 x 1 = 1000 -x 3 x 4 = 1500 -x 2 x 5 = 750 +x 3 -x 2 x 6 = 800 + 4 x 3 - 2 x 2 Nieuwe simplex-richtingen ribbe A:  x =  (-1, 0, 1, 0, 1, 4) ribbe B:  x =  (0, 1, 0, -1, -1, -2) Nieuwe winstfunctie: 12 x 1 + 9 x 2 = 12(1000 -x 3 ) + 9 x 2 = 12000 - 12 x 3 + 9 x 2 nieuwe gelijkheden verslechterend verbeterend max = 400; x (2) = (1000, 400, 0, 1100, 350, 0)

9 © W. Philips, Universiteit Gent, 1998-2011versie: 21/2/2011 02d. 9 x 1 = 1000 -x 3 x 4 = 1500 -x 2 x 5 = 750 +x 3 -x 2 x 6 = 800 + 4 x 3 - 2 x 2 …Voorbeeld… Simplextableau Gevonden extreme punten nieuwe winst: 12 x 1 + 9 x 2 =12(1000)+9(400) We stappen nu over van de niet meer geldige NB-variabelen x 2, x 3 naar nieuwe NB-variabelen x 6, x 3 voor x (2) We drukken nu de nieuwe B-variabelen uit in functie van x 6, x 3 x 4 = 1500 - (800 + 4 x 3 -x 6 )/2 x 5 = 750 +x 3 - (800 + 4 x 3 -x 6 )/2 x 2 = (800 + 4 x 3 -x 6 )/2 x 1 = 1000 -x 3

10 © W. Philips, Universiteit Gent, 1998-2011versie: 21/2/2011 02d. 10 controle: =nieuwe winst Nieuw simplextableau: …Voorbeeld… x 1 = 1000 -x 3 x 4 = 1100 - 2 x 3 + 0.5 x 6 x 5 = 350 -x 3 + 0.5 x 6 x 2 = 400 + 2 x 3 - 0.5 x 6 Nieuwe simplex-richtingen ribbe A:  x =  (-1, 2, 1, -2, -1, 0) ribbe B:  x =  (0, -0.5, 0, 0.5, 0.5, 1) Nieuwe winstfunctie: 12 x 1 + 9 x 2 = 12(1000 -x 3 ) + 9 (400 + 2 x 3 - 0.5 x 6 ) = 15600 + 6 x 3 - 4.5 x 6 nieuwe gelijkheden verbeterend verslechterend max = 350; x (3) = (650, 1100, 350, 400, 0, 0) x 4 = 1500 - (800 + 4 x 3 -x 6 )/2 x 5 = 750 +x 3 - (800 + 4 x 3 -x 6 )/2 x 2 = (800 + 4 x 3 -x 6 )/2 x 1 = 1000 -x 3

11 © W. Philips, Universiteit Gent, 1998-2011versie: 21/2/2011 02d. 11 x 1 = 1000 -x 3 x 4 = 1100 - 2 x 3 + 0.5 x 6 x 5 = 350 -x 3 + 0.5 x 6 x 2 = 400 + 2 x 3 - 0.5 x 6 …Voorbeeld... Gevonden extreme punten nieuwe winst: 12 x 1 + 9 x 2 =12(650)+9(1100) We stappen nu over van de niet meer geldige NB-variabelen x 3, x 6 naar nieuwe NB-variabelen x 5, x 6 voor x (3) We drukken nu de nieuwe B-variabelen uit in functie van x 5, x 6 x 3 = 350 -x 5 + 0.5 x 6 x 2 = 400 + 2(350 -x 5 + 0.5 x 6 ) - 0.5 x 6 x 1 = 1000 - (350 -x 5 + 0.5 x 6 ) Simplextableau: x 4 = 1100 - 2(350 -x 5 + 0.5 x 6 ) + 0.5 x 6

12 © W. Philips, Universiteit Gent, 1998-2011versie: 21/2/2011 02d. 12 Nieuw simplextableau: …Voorbeeld... x 1 = 650 +x 5 - 0.5 x 6 x 4 = 400 + 2 x 5 - 0.5 x 6 x 3 = 350 -x 5 + 0.5 x 6 x 2 = 1100 - 2 x 5 + 0.5 x 6 Nieuwe simplex-richtingen ribbe A:  x =  (1, -2, -1, 2, 1, 0) ribbe B:  x =  (-0.5, 0.5, 0.5, -0.5, 0, 1) Nieuwe winstfunctie: 12 x 1 + 9 x 2 = 17700 - 6 x 5 - 1.5 x 6 nieuwe gelijkheden verslechterend x 3 = 350 -x 5 + 0.5 x 6 x 2 = 400 + 2(350 -x 5 + 0.5 x 6 ) - 0.5 x 6 x 1 = 1000 - (350 -x 5 + 0.5 x 6 ) x 4 = 1100 - 2(350 -x 5 + 0.5 x 6 ) + 0.5 x 6 Geen verbeterende ribben  optimum bereikt

13 © W. Philips, Universiteit Gent, 1998-2011versie: 21/2/2011 02d. 13 Gevonden extreme punten …Voorbeeld: grafische voorstelling 1000 2000 10002000 A B C D E F x1x1 x2x2 B: x 4  0 A: x 3  0 C: x 5  0 D: x 6  0 E: x 1  0 F: x 2  0 Standaardvorm: extreem punt x (0) x (2) x (3) x (4)

14 © W. Philips, Universiteit Gent, 1998-2011versie: 21/2/2011 02d. 14 Stopvoorwaarde en optimaliteit... Bewijs: stel dat we vanuit het eindpunt een stap  x zetten in een willekeurige richting naar een andere mogelijke oplossing  al deze  x hebben  x 5  0 en  x 6  0 omdat x 5 en x 6 positief moeten blijven Simplextableau: We hebben gestopt omdat geen enkele simplexrichting tot een betere winst leidt, maar misschien bestaan er verbeterende richtingen die geen simplexrichting zijn? Neen, toch niet! Dergelijke stappen vergroten echter nooit de winst omdat de coëfficiënten van x 5 en x 6 in de winst negatief zijn Als de coëfficiënten van de winst in het simplex-tableau allemaal negatief zijn zitten we dus zeker in een optimum

15 © W. Philips, Universiteit Gent, 1998-2011versie: 21/2/2011 02d. 15 Opmerking Simplextableau: Wat als geen enkele winst- coëfficiënt strikt positief is, maar ze niet allemaal strikt negatief zijn? In dit geval kan men vanuit het huidig extreem punt geen stappen zetten naar een mogelijke oplossing met een strikt betere winst  we zitten wel degelijk in een optimum Optima: (650 - , 1100 + , 350 + , 400 - , 0, ), met 0,800  maar wel naar mogelijke oplossingen met gelijke winst  er zijn meerdere optima Men vindt alle optima door de NB-variabelen met nulcoëffici- enten alle mogelijke niet-negatieve waarden te laten aannemen waarvoor de B-variabelen niet-negatief blijven

16 © W. Philips, Universiteit Gent, 1998-2011versie: 21/2/2011 02d. 16 Nulstappen Als er verbeterende simplexrichtingen zijn mogen we niet stoppen en moeten we één van die richtingen volgen Dit kan echter niet als alle verbeterende simplexrichtingen gedegenereerd zijn d.w.z. als voor elke verbeterende simplexrichting max = 0  er zijn dus verbeterende simplexrichtingen, maar we kunnen langs geen enkele van die richtingen een stap zetten Zonder bewijs: het simplexalgoritme werkt toch, mits de volgende aanpassing indien mogelijk, volg een verbeterende richting met max > 0 zoniet, kies dan een gedegenereerde verbeterende simplexrichting (een richting met verbeterende winst en met max = 0) en doe verder alsof max zeer klein en positief was op die manier forceert men de keuze van nieuwe NB- variabelen

17 © W. Philips, Universiteit Gent, 1998-2011versie: 21/2/2011 02d. 17 Voorbeeld met 0-stappen... NB-variabelen Simplextableau: Winstfunctie: 2 x 1 -x 2 Dit probleem is al in standaardvorm x 1 = 0, x 2 = 0 zijn geldige NB-variabelen (op zicht!) Extreem punt x (0) =(0, 0, 0) x 1 -x 2 +x 3 = 0 x 1, x 2, x 3  0 Maximaliseer 2 x 1 -x 2 waarbij Enige gelijkheid Simplex-richtingen ribbe A:  x =  (1, 0, -1) ribbe B:  x =  (0, 1, 1) verbeterend verslechterend max = 0; x (1) = (0, 0, 0) = x (0) We doen verder alsof max > 0 en dus ook x 1 >0

18 © W. Philips, Universiteit Gent, 1998-2011versie: 21/2/2011 02d. 18 …Voorbeeld met 0-stappen... Gevonden extreme punten We stappen nu over van de (zogezegd) niet meer geldige NB- variabelen x 1, x 2 naar nieuwe NB-variabelen x 2, x 3 voor x (2) Simplextableau: Nieuw simplextableau: Winstfunctie: 2 x 1 -x 2 = 2 ( x 2 -x 3 ) -x 2 = x 2 - 2 x 3 x 1 -x 2 +x 3 = 0  x 1 = x 2 -x 3 Simplex-richtingen: ribbe A:  x =  (1, 1, 0) ribbe B:  x =  (-1, 0, 1) verbeterend verslechterend max = +   optimale winst +  We drukken nu de nieuwe B-variabelen uit in functie van x 2, x 3 

19 © W. Philips, Universiteit Gent, 1998-2011versie: 21/2/2011 02d. 19 x1x1 x2x2 x 3 = 0 mogelijke oplossingen …Voorbeeld met 0-stappen Filosofie: Stap 1: x 1 >0, x 1 =x 3 = 0 x1x1 x2x2 gedegenereerd extreem punt x 3 = 0 x 1 -x 2 +x 3 = 0 x 1, x 2, x 3  0 x (0) x (1) Stap 2: x 2 >0, x 2 =x 3 = 0 De tekening is natuurlijk overdreven Besluit: nul-stappen helpen ons ontsnappen uit een gedegenereerd extreem punt (hier toevallig naar +  ) 

20 © W. Philips, Universiteit Gent, 1998-2011versie: 21/2/2011 02d. 20 Nulstappen: probleem In de praktijk komt dit gelukkig zeer zelden voor Men kan bewijzen dat men zo een cyclus altijd kan doorbreken d.w.z. dat men in een bepaalde stap een andere keuze voor de NB-variabelen kan maken die uiteindelijk de cyclus doorbreekt Een praktisch algoritme moet dus in staat zijn cycli te de- tecteren en in “de tweede ronde” een andere keuze maken NB={ x 1, x 2 } nulstap NB={ x 1, x 3 } nulstap NB={ x 2, x 3 } nulstap NB={ x 2, x 1 } cyclus Opmerking: in theorie is het mogelijk dat men een cyclus van nulstappen zet

21 © W. Philips, Universiteit Gent, 1998-2011versie: 21/2/2011 02d. 21 Convergentie Als max >0 in elke simplexstap dan stopt het algoritme na een eindig aantal stappen met ofwel een optimale oplossing ofwel met de conclusie dat het optimum  is Het stopt omdat er maar eindig veel extreme punten zijn en we in dit geval nooit terugkeren in een extreem punt Het resultaat is optimaal omdat we in de eindsituatie geen stap kunnen zetten die winst of kost verbetert Als er gedegenereerde extreme punten zijn kan max = 0 zijn het algoritme convergeert dan nog steeds op voorwaarde dat men maatregelen neemt om cycli van nulstappen te doorbreken deze situatie is zeldzaam

22 © W. Philips, Universiteit Gent, 1998-2011versie: 21/2/2011 02d. 22 Initiële keuze voor snelle winsttoename...efficiëntie van simplex... betere winst x (0) optimum Alternatieve keuze  7 stappen  2 stappen Besluit: er zijn geen goede regels om te kiezen tussen verschillende verbeterende simplexrichtingen

23 Initieel extreem punt zelfstudie

24 © W. Philips, Universiteit Gent, 1998-2011versie: 21/2/2011 02d. 24 Initieel extreem punt... Het simplexalgoritme begint met een initieel extreem punt x (0)  Hoe vinden we dit? Zo een initieel extreem punt moet mogelijk zijn: voldoen aan alle gelijkheden en aan alle “niet- negatief” voorwaarden een basisoplossing zijn: voldoende variabelen x j = 0 hebben die de oplossing uniek bepalen Oplossing: het zoeken van een mogelijke oplossing van het origineel probleem wordt als een hulpsimplexprobleem geformuleerd en dit zodanig dat een initieel extreem punt vinden voor dit hulpprobleem wel eenvoudig is het oplossen van het hulpprobleem levert een mogelijke oplossing van het origineel probleem; deze oplossing blijkt zelfs een extreem punt te zijn

25 © W. Philips, Universiteit Gent, 1998-2011versie: 21/2/2011 02d. 25...Initieel extreem punt: Methode... 1. Maak alle b i  0 door eventueel een vergelijking met -1 te vermenigvuldigen 2. Vorm een stelsel (S’) door het invoeren van hulpvariabelen z i en (S): (S’):  Elke mogelijke oplossing van het origineel probleem voldoet aan (S’) met alle z i = 0 en met alle x j  0 3. Beschouw nu het volgende hulpsimplexprobleem in x j en z i : minimaliseer z 1 +z 2 +… z m mits (S’), alle x j  0 en alle z i  0 Als de optimale kost 0 is dan is z 1 =… =z m = 0 en hebben we een mogelijke oplossing x voor het origineel probleem en een initieel extreem punt kiezen voor het hulpprobleem is triviaal: kies alle x j = 0   i: z i =b i  0

26 © W. Philips, Universiteit Gent, 1998-2011versie: 21/2/2011 02d. 26...Initieel extreem punt: Methode (S’): De oplossing van het hulpprobleem kan op 2 manieren stoppen: ofwel is de optimale kost z 1 +z 2 +… z m > 0 ofwel is de optimale kost z 1 +z 2 +… z m = 0 Minimaliseer z 1 +z 2 +… z m mits en alle x j  0 en alle z i  0  (S’) heeft geen oplossingen met alle z i = 0 en met alle x j  0  het origineel probleem heeft geen mogelijke oplossingen  de eindoplossing ( z, x ) is extreem voor het hulpprobleem  x is een mogelijke oplossing voor het origineel probleem en is ook extreem Reden: ( z, x ) bevat als extreem punt ( n+m ) - ( m ) = n nulvariabelen (aantal onbekenden-aantal vergelijkingen), waaronder alle m z i -variabelen en dus nog n-m x j -variabelen  x heeft net voldoende nulcomponenten om een extreem punt te zijn in het origineel probleem

27 © W. Philips, Universiteit Gent, 1998-2011versie: 21/2/2011 02d. 27 Voorbeeld Fase 1: Minimaliseer z 1 +z 2 +z 3 +z 4 mits alle x j  0 en alle z i  0 Maximaliseer 14 x 1 - 9 x 3 +x 4 mits x j  0 en 8 x 1 +x 2 -x 3 = 74 4 x 2 - 7 x 3 +x 4 = -21 x 2 +x 3 = 11 x 2 +x 3 +x 5 = 4 z 1 = 74 -8 x 1 -x 2 +x 3 z 2 = -21 -4 x 2 + 7 x 3 -x 4 z 2 = - (-21-4 x 2 + 7 x 3 -x 4 ) Initieel extreem punt voor dit hulpprobleem: x 1 =x 2 =x 3 =x 4 =x 5 = 0, z 1 = 74, z 2 = 21, z 3 = 11 z 3 = 11 - x 2 -x 3 z 4 = 4 - x 2 -x 3 -x 5

28 © W. Philips, Universiteit Gent, 1998-2011versie: 21/2/2011 02d. 28 Minder hulpvariabelen… Fase 1: Minimaliseer z 1 +z 2 mits alle x j  0 en alle z j  0 8 x 1 +x 2 -x 3 = 74 4 x 2 - 7 x 3 +x 4 = -21 x 2 +x 3 = 11 Initieel extreem punt van dit hulpprobleem: x 2 =x 3 =x 4 = 0, x 1 = 9.25, x 5 = 4, z 1 = 21, z 2 = 11 x 1 = (74 -x 2 +x 3 ) / 8 z 1 = -(-21 -4 x 2 + 7 x 3 -x 4 ) z 2 = 11- x 2 -x 3 Soms kan men minder hulpvariabelen invoeren: x 2 +x 3 +x 5 = 4 x 5 = 4 -x 2 -x 3 Voordeel: minder variabelen  sneller en met minder geheugenruimte op te lossen als een bepaalde x k slechts in één vergelijking voorkomt en die x k het zelfde teken heeft als de constante term  x k zal altijd niet-negatief zijn als we de andere x j op 0 zetten

29 © W. Philips, Universiteit Gent, 1998-2011versie: 21/2/2011 02d. 29 verbeterend (doet kost dalen!) z 1 en z 2 …Minder hulpvariabelen Fase 1: Minimaliseer z 1 +z 2 mits alle x j  0 en alle z j  0 Fase 1: initieel extreem punt: x 1 = (74 -x 2 +x 3 ) / 8 z 1 = -(-21 -4 x 2 + 7 x 3 -x 4 ) z 2 = 11 - x 2 +x 3 x 5 = 4 -x 2 -x 3 Kostfunctie: z 1 +z 2 = 32 + 3 x 2 - 6 x 3 +x 4 max = 3; x (1) = (9.625, 0, 3, 0, 1; 0, 14) … x (0) = (9.25, 0, 0, 0, 4; 21, 11)

30 © W. Philips, Universiteit Gent, 1998-2011versie: 21/2/2011 02d. 30 Besluit: 2-fasen simplexmethode  2 mogelijkheden de oplossing heeft kost > 0  het origineel probleem heeft geen mogelijke en dus ook geen optimale oplossing de oplossing heeft kost 0  we hebben x (0) Stap 4: los het origineel probleem in standaardvorm op, gebruik makend van x (0) Stap 1: breng het probleem in standaardvorm Stap 2: construeer het artificieel fase-1 probleem om een initieel extreem punt te vinden Stap 3: los het fase-1 probleem op Opmerking: het fase-1 probleem heeft bij constructie mogelijke oplossingen en een eindige minimumkost stap 2 en 3 zijn overbodig als men om een of andere reden al een extreem punt kent

31 Zelfstudie: simplex met onder- en bovengrenzen

32 © W. Philips, Universiteit Gent, 1998-2011versie: 21/2/2011 02d. 32 Simplex met boven- en ondergrenzen... Minder hulpveranderlijken gebruiken is interessant omdat elke bijkomende hulpveranderlijke een extra kolom of rij toevoegt in het simplextableau (geheugenbesparing) Verbeterde standaardvorm: optimaliseer onder de voorwaarde dat en (O): (S): Nieuwe definitie basisoplossing: stel voldoende variabelen x j gelijk aan l j of u j om het stelsel een unieke oplossing te geven  dit zijn de NB-variabelen een dergelijke oplossing is een basisoplossing Een basisoplossing is een extreem punt als ze voldoet aan (O)

33 © W. Philips, Universiteit Gent, 1998-2011versie: 21/2/2011 02d. 33...Simplex met boven- en ondergrenzen Voorwaarden: en (O): (S): Om een ribbe te volgen laten we nu een NB-variabele x j toenemen of afnemen met een hoeveelheid  als x j =u j dan stellen we x j =u j +  met min   0 als x j =l j dan stellen we x j =l j +  met max   0 Bij  min of  max  wordt een ongelijkheid actief Er zijn twee mogelijkheden: x j bereikt zijn andere grens (b.v.: x j =u j + leidt tot x j =l j ) een B-variabele x k met k  j bereikt een grens u k of l k In het eerste geval blijft x j nu een geldige NB-variabele! In het tweede geval vervangt x k weer x j als NB-variabele

34 © W. Philips, Universiteit Gent, 1998-2011versie: 21/2/2011 02d. 34 Voorbeeld... x 1 = 0, x 2 = 0 zijn geldige NB-variabelen want ze zijn gelijk aan 1 van hun grenzen (hier ondergrenzen) hun waarden bepalen de andere variabelen uniek En de corresponderende B-variabelen voldoen aan hun grenzen Extreem punt x (0) =(0, 0, 1750, 4800) Trofeeprobleem: Maximaliseer 12 x 1 +9 x 2 mits 0  x 1  1000 0  x 2  1500 0  x3 0  x4 0  x3 0  x4  Slechts 2 reservevariabelen nodig i.p.v. 4 Slechts 2 vergelijkingen i.pv. 4 B- in functie van de NB-variabelen: x 3 = 1750 -x 1 -x 2 x 4 = 4800 - 4 x 1 - 2 x 2 x 1 +x 2 +x 3 = 1750 4 x 1 + 2 x 2 +x 4 = 4800

35 © W. Philips, Universiteit Gent, 1998-2011versie: 21/2/2011 02d. 35 …Voorbeeld... Extreem punt: x (0) =(0, 0, 1750, 4800); NB-variabelen: x 1, x 2 Simplextableau: Winstfunctie Maximaliseer 12 x 1 +9 x 2 mits 0  x 1  1000 0  x 2  1500 0  x3 0  x4 0  x3 0  x4  x 3 = 1750 -x 1 -x 2 x 4 = 4800 - 4 x 1 - 2 x 2 Grenzen Voor beide richtingen is  0 (ondergrens); beide verbeteren Grenzen: voor x 1 : 0 +  1000 x 4 : 4800 - 4  0 x 3 : 1750 -  0  max  = 1000; x (1) =(1000, 0, 750, 800)

36 © W. Philips, Universiteit Gent, 1998-2011versie: 21/2/2011 02d. 36 …Voorbeeld... x 1 bereikte zijn bovengrens  x 1 blijft NB-variabele Gevonden extreme punten Simplextableau:  Simplextableau verandert niet Voor de 1e richting is  0 toegelaten en voor de 2e  0 De 1e richting kan uiteraard niet verbeteren; de 2e verbetert wel Grenzen: voor x 2 : 0 +  1500 x 4 : 800 - 2  0 x 3 : 750 -  0  max  = 400; x (2) =(1000, 400, 350, 0) x 4 vervangt x 2 als NB Niet meer de huidige waarden van x 3 en x 4 wegens x 1  0

37 © W. Philips, Universiteit Gent, 1998-2011versie: 21/2/2011 02d. 37 …Voorbeeld... x 4 bereikte zijn ondergrens  x 4 vervangt x 2 als NB-variabele Gevonden extreme punten Simplextableau: Nieuw tableau: x 3 = 1750 -x 1 -x 2 x 4 = 4800 - 4 x 1 - 2 x 2 x 3 = -650 +x 1 + 0.5 x 4 x 2 = 2400 - 2 x 1 - 0.5 x 4 nieuwe kostfunctie x 4 bevindt zich op ondergrens

38 © W. Philips, Universiteit Gent, 1998-2011versie: 21/2/2011 02d. 38 …Voorbeeld... Gevonden extreme punten Simplextableau: Voor de eerste richting is enkel  0 toegelaten; voor de tweede richting is enkel  0 toegelaten Grenzen: voor x 1 : 1000 +  0 x 2 : 400 - 2  1500  min  = -350; x (3) =(650, 1100, 0, 0) x 3 wordt nieuwe NB x 3 : 350 +  0 Beide richtingen kunnen maar verbeteren voor  0  we veranderen x 1 (d.w.z., laten x 1 zakken)

39 © W. Philips, Universiteit Gent, 1998-2011versie: 21/2/2011 02d. 39 …Voorbeeld... x 3 bereikte zijn ondergrens  x 3 vervangt x 1 als NB-variabele Gevonden extreme punten Simplextableau: Nieuw tableau: x 2 = 1100 - 2 x 3 + 0.5 x 4 x 1 = 650 +x 3 - 0.5 x 4 nieuwe kostfunctie x 3 = -650 +x 1 + 0.5 x 4 x 2 = 2400 - 2 x 1 - 0.5 x 4

40 © W. Philips, Universiteit Gent, 1998-2011versie: 21/2/2011 02d. 40 …Voorbeeld Gevonden extreme punten Simplextableau: Anderzijds verbeteren beide richtingen enkel als  0 We zijn in beide gevallen verplicht  0 te nemen omdat x 3 en x 4 zich beiden op hun ondergrens bevinden Besluit: er zijn geen verbeterende richtingen  we hebben het optimum gevonden

41 © W. Philips, Universiteit Gent, 1998-2011versie: 21/2/2011 02d. 41 Literatuur Rardin, hfdstk. 5: blzn. 175-225, blzn. 238-245 Press, hfdst. 10: blzn. 430-444

42 © W. Philips, Universiteit Gent, 1998-2011versie: 21/2/2011 02d. 42 Opmerking In de les kwamen enkele slides uit deze presentatie niet aan bod; deze slides zijn bedoeld voor zelfstudie tenzij anders vermeld

43 Appendix

44 © W. Philips, Universiteit Gent, 1998-2011versie: 21/2/2011 02d. 44 Gevonden extreme punten Vraag i.v.m. de efficiëntie van simplex... 1000 2000 10002000 A B C D E F x1x1 x2x2 B: x 4  0 A: x 3  0 C: x 5  0 D: x 6  0 E: x 1  0 F: x 2  0 Standaardvorm: x (0) x (2) x (3) x (4) Soms kan men kiezen tussen verschillende verbeterende richtingen: krijgt men dan een snellere oplossing als men de richting kiest die het meest of het snelst verbetert? Antwoord: niet noodzakelijk: enkel het aantal stappen telt

45 © W. Philips, Universiteit Gent, 1998-2011versie: 21/2/2011 02d. 45 optimum...Vraag i.v.m. de efficiëntie van simplex A B C x1x1 x3x3 x2x2 DE F G H I J K L Maximaliseer x 3 Randvoorwaarden: A-L x 1, x 2, x 3  0 x (0) x (1) x (2) x (3) x (4) x (5) x (6) verbeterende kost (=toenemende kost) in standaardvorm correspondeert ieder vlak met een x j = 0 © Rardin, fig. 5.7 snellere oplossing


Download ppt "Didactisch materiaal bij de cursus Academiejaar 2010-2011 Tel: 09/264.33.85 Fax: 09/264.42.95."

Verwante presentaties


Ads door Google