• Verkeerd document? Gratis ruilen
  • Geschreven door studenten die geslaagd zijn
  • Direct beschikbaar na je betaling
  • Online lezen of als PDF
Verkopen
Kies je studieland
Kies je taal
Document preview thumbnail
Voorbeeld 4 van de 50 pagina's
Samenvatting

Samenvatting operationeel onderzoek HIR 15/20 EERSTE ZIT

Document preview thumbnail
Voorbeeld 4 van de 50 pagina's

Samenvatting van alle hoorcolleges en lesmateriaal voor het vak operationeel onderzoek gegeven door Roel Leus in het derde jaar HIR an de KU Leuven. Met deze samenvatting heb ik een 15/20 kunnen behalen in de eerste zit.

Voorbeeld van de inhoud

Operationeel Onderzoek
Operationeel onderzoek: het gebruik van wiskundige technieken voor optimalisatie en voor
analyse van ‘operaties’. Operaties = het gebruik van hulpmiddelen – kapitaal, materialen,
technologie, menselijke vaardigheden/kennis, . . . – bij de productie en distributie van
goederen en diensten.

=> Kijk voor het starten van deze cursus naar de herhaling bundels over het vak LO van
vorig jaar.




1.​Deel 1: Geheeltallige Programmering
1.1 Geheeltallige variabelen
Geheeltallige programmering = integer programming (IP): als in een scenario de gewoonlijke
deelbaarheidsassumptie (de variabelen mogen eender welk reëel getal zijn) niet opgaat dan
moeten we expliciet vermelden dat Σ𝑖𝑥𝑖 ∈ {...., − 1, 0, 1,...}. We gebruiken dit bij problemen
waarbij we enkel gehele waarden als antwoord mogen bekomen, bv men kan geen halve
tafel produceren. Als we deze geheeltalligheidseis weglaten dan spreken we van een
LP-relaxatie.

Standaardvorm: een LP met variabelen 𝑥𝑖 is in standaardvorm als:
-​ Alle 𝑥𝑖 ≥ 0 zijn.
-​ Op de tekenbeperkingen na, alle beperkingen gelijkheden zijn.
-​ Alle rechterleden ≥ 0 zijn.

De kanonieke vorm van een lineair programmeringsprobleem is wanneer:
-​ Je een maximalisatieprobleem hebt,
-​ Alle restricties zijn gelijkheden (dus niet ≤ of ≥, maar gewoon =),
-​ Alle variabelen zijn niet-negatief (𝑥𝑖 ≥ 0).
BV (basisvariabele) komen voor met als kolom een eenheidsvector: 0’en en één keer 1. Er is
dus één individuele rij per B.

=> Een toelaatbare b.o. (tbo) heeft alle variabelen ≥ 0.
=> Stelling: Elk extreem punt van de LP-oplossingsruimte is een tbo, en omgekeerd.

De oplossingsruimte van een IP is niet convex; het concept van ‘extreem punt’ is hier zelfs
niet gedefinieerd. . . Kunnen we LP gebruiken om het IP op te lossen?
-​ Afronden zal niet altijd een optimum leveren (zelfs een toelaatbare vinden kan lastig
zijn).
-​ Wat indien de oplossing van de LP-relaxatie geheeltallig is?

, -​ De oplossingsruimte van een IP is een deelverzameling van de oplossingsruimte van
* *
de LP-relaxatie. Bijgevolg is: min-probleem: 𝑍 ≥ 𝑍𝐿𝑃; max-probleem: 𝑍𝐿𝑃 ≥ 𝑍 ; met
*
𝑍𝐿𝑃 de optimale doelfunctiewaarde van de LP-relaxatie en 𝑍 de waarde voor het
IP-optimum. We hebben dus een beneden-, resp. bovengrens.
-​ Eender welk toelaatbaar punt heeft 𝑥1 ≤ 3 ofwel 𝑥1 ≥ 4. Partitioneren van de
zoekruimte: branching (vertakken).

=> Branch-and-bound (B&B; ‘vertak-en-begrens’):
-​ Los LP-relaxatie op, indien geheeltallig stop.
-​ Opsplitsen (branching) van de oplossingsruimte van de LP-relaxatie in
deelverzamelingen door beperkingen toe te voegen op de waarden van de
geheeltallige beslissingsvariabelen (wederzijds exclusief en gezamenlijk exhaustief,
of dus een ‘partitie’ van de oplossingsruimte).
-​ Los een LP op over één deelverzameling (simplex niet meer te kennen).
-​ Indien geheeltallig, bewaar de best gevonden geheeltallige oplossing (=
kandidaat-oplossing, ‘incumbent’, momenteel beste GLB= global lower bound) en
backtrack. Anders moet je verder vertakken, behalve indien een LP-relaxatie (lokale
bovengrens) een slechtere (of dezelfde) doelfunctiewaarde heeft dan de huidige
incumbent: dan moet je niet verder opsplitsen en kan je deze tak elimineren in de
zoekboom (= ‘fathomed’ = afgewerkt), want de doelfunctiewaarde zal lager in de
boom nooit verbeteren.
-​ Je kan ook met toleranties werken: bvb. fathom een tak ook als de LP-relaxatie beter
is dan de huidige incumbent, maar op slechts 5% of minder daarvan ligt.

=> LUB geeft aan wat de hoogste doelfunctiewaarde kan zijn in een gegeven tak!!

=> De beste keuze voor zowel de vertakking beslissing als de keuze van volgorde van
oplossen van sub-problemen is probleem-afhankelijk.
Vertakkingsschema van voorbeeld op pagina 10:

,Zelfde stappenplan als net besproken maar makkelijker verwoord door ChatGPT:
-​ Los het gewone LP op (relaxatie):
-​ Negeer even de eis dat variabelen integer moeten zijn.
*
-​ Vind een optimale oplossing 𝑥 met LP.
-​ Controleer:
*
-​ Is 𝑥 integer? → Klaar! Dit is je oplossing.
*
-​ Is 𝑥 niet-integer? → Dan moet je branch-en.
-​ Branch:
-​ Kies een variabele die een niet-geheel getal is, bv. 𝑥1 = 2, 5.
-​ Maak 2 nieuwe deelproblemen:
-​ 𝑥1 ≤ 2
-​ 𝑥1 ≥ 3
-​ Bound:
-​ Los elk deelprobleem op met LP:
-​ Als de oplossing slechter is dan wat je al had (bij maximalisatie:
lagere waarde), verwerp die tak.
-​ Als de oplossing beter is en integer, update je beste oplossing.
-​ Als de oplossing beter maar niet-integer is, branch opnieuw.
-​ Herhaal totdat je overal integeroplossingen hebt gevonden, of ziet dat een tak niet
beter kan zijn.


1.2 Knapzak
0/1-knapzak: Je moet objecten kiezen: Elk object: neem je volledig of helemaal niet (dus
𝑥𝑖 ∈ {0, 1}). Je wil maximale waarde en de totale massa mag de capaciteit van de knapzak
niet overschrijden (zoals het investeringsprobleem in de cursus). Het is eigenlijk een
geheeltallige versie van het klassieke knapzakprobleem, we nemen een object volledig mee
of niet (0/1).


1.3 Set covering/packing/partitioning
(Set=verzameling)

Brandweerstation-probleem (set-covering-probleem): Lokaliseer
brandweerstations zodat elk district een brandweer-station heeft, of
vlak naast zo’n district ligt. Minimaliseer het aantal benodigde stations.
De beperkingen in dit probleem zullen we bekomen door voor elke
gemeente de beperking op te stellen dat er minstens één
brandweerstation moet zijn in de gemeente zelf of in een omliggende
gemeente: bv voor gemeente 1: 𝑥1 + 𝑥2 + 𝑥4 + 𝑥5 ≥ 1:
=> De coefficientenmatrix die we bekomen bij de beperkingen noemen
we een incidentiematrix.

=> Set-covering-probleem: we hebben objecten (hier de gemeentes) in kolommen en
deelverzamelingen in rijen (potentiële kazernes). In essentie minimaliseren we de

, hoeveelheid rijen die we moeten nemen terwijl we ervoor zorgen dat elke kolom minstens
één keer voorkomt.

Multicriteria beslissingsanalyse: = multi-attribuut beslissingsanalyse = beslissen
(/optimalisatie) met meerdere doelfuncties = multi-objectieve optimalisatie. Tot nu toe
hebben we modellen besproken met één objectieffunctie.

Een oplossing A voor een multi-objectief optimalisatieprobleem domineert oplossing B als A
even goed doet op alle doelfuncties en strikt beter op minstens één doelfunctie.




Een oplossing A is Pareto-optimaal als geen andere oplossing bestaat die even goed doet
als A op alle doelfuncties en strikt beter op minstens één. Een oplossing is dus
Pareto-optimaal als ze niet gedomineerd is. De verzameling van alle Pareto-optimale punten
wordt het Pareto-front of “efficient frontier”genoemd; voor LP bekom je zo een trade-off
curve.




=> Hoe kunnen we deze punten nu vinden?
-​ Stapsgewijs: preëmptieve programmering (er is een hiërarchie in de doelfuncties)
optimaliseer één objectieffunctie, dan optimaliseer je de tweede met bijkomende
beperking dat objectief 1 de bekomen waarde heeft. Hierna gaan we telkens de
tweede functie blijven optimaliseren gegeven dat objectieffunctie 1
≤ 𝑤𝑎𝑎𝑟𝑑𝑒𝑛 𝑖𝑛 𝑑𝑒 𝑏𝑢𝑢𝑟𝑡 𝑣𝑎𝑛 ℎ𝑒𝑡 𝑔𝑒𝑣𝑜𝑛𝑑𝑒𝑛 𝑜𝑝𝑡𝑖𝑚𝑢𝑚 (bij een minimalisatieprobleem).
-​ Gewogen gemiddelde doelfunctie.

We spreken van een cover als de unie van alle deelverzamelingen gelijk is aan de
hoofdverzameling (elk element van de hoofdverzameling komt dus voor in een
deelverzameling) 𝐴𝑥 ≥ 1. We spreken van een packing als er geen elementen overlappen
tussen de deelverzamelingen (elk element zit in maar in maximum één verzameling, denk
aan potentiële boekingen bij een airline, elke stoel kan maar bij één boeking horen (of leeg
zijn en dus tot geen enkele boeking behoren)) 𝐴𝑥 ≤ 1. We spreken van partitie als het
zowel een cover als een pakking is (dus elk element komt exact één keer voor in de
deelverzamelingen, denk maar aan een klaslokaal opdelen in groepjes studenten) 𝐴𝑥 = 1.

Inhoudsopgave

  1. 01 Operationeel Onderzoek 1
  2. 02 1.​Deel 1: Geheeltallige Programmering 1
    1. 1.1 Geheeltallige variabelen 1
    2. 1.2 Knapzak 3
    3. 1.3 Set covering/packing/partitioning 3
    4. 1.4 Vaste kosten / ‘fixed charge’ 5
    5. 1.5 Logische restricties 6
    6. 1.6 Magazijnvestiging 6
    7. 1.7 Meer over ‘Grote-M’ 8
    8. 1.8 Cutting-plane algoritme 8
    9. 1.9 Grafentheorie: inleiding 11
    10. 1.10 Handelsreizigersprobleem 11
    11. 1.11 Refresher: transport en toewijzing 12
    12. 1.12 Asymmetrische TSP: MTZ-formulering 14
    13. 1.13-1.17 Extra voorbeelden, oefeningen en LINGO 14
  3. 03 2.​Deel 2: Combinatorische Optimalisatie 15
    1. 2.1 Combinatorische optimalisatie 15
    2. 2.2 Een B&B-algoritme voor asymmetrisch TSP 15
    3. 2.3 Heuristieken 16
    4. 2.4 Projectplanning 17
    5. 2.5 Refresher: transitoprobleem 18
    6. 2.6 Kortste/langste pad via math pgm 18
    7. 2.7 Dynamische programmering 19
    8. 2.8 Kortste/langste pad: vervolg 19
    9. 2.9 Groei van functies 21
    10. 2.10 Knapzak-probleem 22
    11. 2.11 Pseudo-polynomiale algoritmes 24
    12. 2.12 Meer over knapzak 24
    13. 2.13 Systeembetrouwbaarheid 25
    14. 2.14 Kortste pad vanuit één knooppunt naar alle andere 25
    15. 2.15 Vervangingsproblemen 27
    16. 2.16 Karakteristieken van DP 28
    17. 2.17 DP voor TSP 28
    18. 2.18 Niet-additieve recursies 29
    19. 2.19 Stochastische DP 29
    20. 2.20-21 Voorbeeldoefeningen en extra materiaal uit het handboek bij sommige oefeningen 30
  4. 04 3.​Deel 3: Netwerkmodellen 30
    1. 3.1 Maxflow 30
    2. 3.2 MCNFP 31
    3. 3.2.1-3.2.2 Toepassingen 31
    4. 3.2.3 Het negatieve-lus-algoritme voor MCNFP 31
    5. 3.2.4 Het vinden van een negatieve lus in G(N,R(x)) 33
    6. 3.2.5 Extra oefening (oude examenvraag) 33
    7. 3.3 Meer over maxflow 33
    8. 3.3.1 Ford-Fulkerson-algoritme 33
    9. 3.3.2 Natuurpark (FF) 34
    10. 3.3.3 Wat is het nut van achterwaartse pijlen? 34
    11. 3.3.4 Natuurpark (optimaal) 34
    12. 3.3.5 Theoretische beschouwingen bij maxflow 34
    13. 3.3.6 Vinden van een toelaatbare stroom bij MCNFP 34
    14. 3.4 Tijdscomplexiteit van voorgaande algoritmes 35
    15. 3.5 Voorbeeldoefeningen 35
  5. 05 4.​Deel 4: Complexiteitstheorie 36
    1. 4.1 Moeilijkheid van problemen 36
    2. 4.2 Reducties 36
    3. 4.3 P versus NP 38
    4. 4.4 Nabeschouwing 39
    5. 4.5 LP: enkele mijlpalen 39
    6. 4.6 Matchmaking 39
    7. 4.7 Hamiltoniaans circuit 40
    8. 4.8 Euler-circuit 40
    9. 4.9 MST 40
    10. 4.10-11 Oefening (oude examenvraag) en Extra illustratie 41
  6. 06 5.​Deel 5: Wachtlijnen I 41
    1. 5.1 Wachttijdparadox 41
    2. 5.2 Wachtlijnen 41
    3. 5.2.1 Aankomsten-patroon 42
    4. 5.2.2 Bedieningstijd 42
    5. 5.2.3 Prestatiemaatstaven voor wachtlijnsystemen 42
    6. 5.3 Stochastische processen 42
    7. 5.4 Refresher: Poisson-proces 43
    8. 5.4.1 Verdeling aantal aankomsten in Poisson-proces 43
    9. 5.4.2 Verdeling tussenaankomsttijden in Poisson-proces 44
    10. 5.5 Erlang-verdeling 44
    11. 5.6 Geboorte-/sterfteproces 44
    12. 5.6.1 Opstellen van ritme-diagram 45
    13. 5.6.2 Evenwichtskansen berekenen 45
    14. 5.7 Kendall-Lee notatie: 1/2/3/4/5/6 46
    15. 5.8 Wachtlijndiscipline 46
    16. 5.9 Toepassing: Indiana Bell 47
  7. 07 5.​Deel 5: Wachtlijnen II 47
    1. 5.1 Één server 47
    2. 5.1.1 M/M/1/GD/∞/∞ 47
    3. 5.1.2 M/M/1/GD/c/∞ 48
    4. 5.1.3 M/G/1/GD/∞/∞ 48
    5. 5.2 Meerdere servers in parallel 48
    6. 5.2.1 M/M/3/GD/∞/∞ 48
    7. 5.2.2 M/M/s/GD/∞/∞ 48
    8. 5.2.3 Pooling 48
    9. 5.2.4 M/G/∞/GD/∞/∞ 49
    10. 5.2.5 M/G/s/GD/s/∞ 49
    11. 5.2.6 M/M/R/GD/K/K 49
    12. 5.3 Netwerken 50
    13. 5.3.1 Seriële netwerken 50
    14. 5.3.2 Open netwerken 50

Documentinformatie

Geüpload op
12 augustus 2025
Aantal pagina's
50
Geschreven in
2024/2025
Type
Samenvatting
€14,99

Verkeerd document? Gratis ruilen Binnen 14 dagen na aankoop en voor het downloaden kan je een ander document kiezen. Je kan het bedrag gewoon opnieuw besteden.
Geschreven door studenten die geslaagd zijn
Direct beschikbaar na je betaling
Online lezen of als PDF

Seller avatar
De reputatie van een verkoper is gebaseerd op het aantal documenten dat iemand tegen betaling verkocht heeft en de beoordelingen die voor die items ontvangen zijn. Er zijn drie niveau’s te onderscheiden: brons, zilver en goud. Hoe beter de reputatie, hoe meer de kwaliteit van zijn of haar werk te vertrouwen is.
adamloots
4,0
(14)
Verkocht
218
Volgers
31
Items
30
Laatst verkocht
2 dagen geleden


Reviews van geverifieerde kopers




Waarom studenten kiezen voor Stuvia

Gemaakt door medestudenten, geverifieerd door reviews

Kwaliteit die je kunt vertrouwen: geschreven door studenten die slaagden en beoordeeld door anderen die dit document gebruikten.

Niet tevreden? Kies een ander document

Geen zorgen! Je kunt voor hetzelfde geld direct een ander document kiezen dat beter past bij wat je zoekt.

Betaal zoals je wilt, start meteen met leren

Geen abonnement, geen verplichtingen. Betaal zoals je gewend bent via Bancontact, iDeal of creditcard en download je PDF-document meteen.

Student with book image

“Gekocht, gedownload en geslaagd. Zo eenvoudig kan het zijn.”

Alisha Student

Bezig met je bronvermelding?

Maak nauwkeurige citaten in APA, MLA en Harvard met onze gratis bronnengenerator.

Bezig met je bronvermelding?

Veelgestelde vragen