Presentasjon lastes. Vennligst vent

Presentasjon lastes. Vennligst vent

Heuristics for the set partitioning problem. 12. september 2003Christian M. Berg Fritt Fall Flyselskap AS Flyr 2x BGO-OSL, OSL-MOL, MOL-BGO Dette gir.

Liknende presentasjoner


Presentasjon om: "Heuristics for the set partitioning problem. 12. september 2003Christian M. Berg Fritt Fall Flyselskap AS Flyr 2x BGO-OSL, OSL-MOL, MOL-BGO Dette gir."— Utskrift av presentasjonen:

1 Heuristics for the set partitioning problem

2 12. september 2003Christian M. Berg Fritt Fall Flyselskap AS Flyr 2x BGO-OSL, OSL-MOL, MOL-BGO Dette gir åtte flyvninger (inkl returer): Bergen-Oslo (grytidlig) + retur (1, 2) Oslo-Molde (tidlig) + retur (3, 4) Molde-Bergen (litt senere) + retur (5, 6) Bergen-Oslo (fryktelig sent) + retur (7, 8) Disse skal alle ha ett mannskap

3 12. september 2003Christian M. Berg Hvem kan fly når? FFFAS har tenkt og kommet frem til at følgende skiftplaner er lovlige og ser ut til å være ganske billige: Skift I kan fly: 1, 2; $1000 Skift II: 3, 4; $1250 Skift III: 3, 4, 7, 8; $2220 Skift IV: 5, 6; $1500 Skift V: 5, 6, 7, 8; $

4 Problemmatrise IIIIIIIVVVIVIIVIIIIXX XXX 2XXX 3XXX 4XXX 5XXXX 6XXXX 7XXX 8XXX

5 12. september 2003Christian M. Berg Regler for valg av skift Vi skal fylle opp alle flygningene med skift Vi skal bare ha ett skift per flygning Vi vil selvfølgelig velge skift slik at totalregningen blir så liten som mulig Dette er et eksempel på et set partitioning problem

6 Løsninger for Fritt Fall IIIIIIIVVVIVIIVIIIIXX XXX 2XXX 3XXX 4XXX 5XXXX 6XXXX 7XXX 8XXX

7 12. september 2003Christian M. Berg Løsninger for Fritt Fall Tre skift til $4600 To skift til $4420 Fire skift til $4300 Flere løsninger er mulige i dette tilfellet

8 12. september 2003Christian M. Berg Set partitioning-problemet Set partitioning går altså ut på å finne billigst mulige partisjon av en mengde:

9 12. september 2003Christian M. Berg Relaterte problem To problemer er svært like: Set covering tillater overdekning Set packing tillater underdekning, men er ikke et minimeringsproblem I fly-, og en del andre, sammenhenger, kan coveringløsninger tolereres

10 12. september 2003Christian M. Berg Motivasjon for SPPheuristikker Vanlige flyselskaper har mange flere ruter og mange flere ansatte enn Fritt Fall og problemene vil dermed kunne bli svært store Samtidig er bemanning flyselskapenes nest høyeste utgift – etter drivstoff Gode løsninger er altså verdifulle Set partitioning problemet er NP-komplett

11 12. september 2003Christian M. Berg Tidligere arbeid Ikke særlig omfattende mengde publikasjoner om heuristikker for SPP Mest om genetiske algoritmer Beasley og Chu (1998) Glover og Kochenberger (1996) har gode resultater for multidimensional knapsack, som kan reduseres til set packing SPP-heuristikken er basert på Glover og Kochenbergers MK-heuristikk

12 12. september 2003Christian M. Berg Heuristisk løsningsmetode Lokalsøk Tabusøk Critical event memory Bevegelse i søkerommet

13 12. september 2003Christian M. Berg Kort om lokalsøk Man starter helst fra en god, lovlig løsning Forandrer på noen variabler for å finne en annen løsning som er i den førstes nabolag Denne nye løsningen kan være dyrere En grådig algoritme vil alltid velge billigste nabo, og vil derfor kunne sirkle rundt lokale optima Tabusøk er en løsning på dette sirklingsproblemet

14 12. september 2003Christian M. Berg Lokalsøk - nabolag På grunn av at SPP er vanskelig, kan man ikke sikre seg at man alltid har lovlige løsninger Definisjonen av nabolag blir dermed noget vag: Et sted du kan komme til ved å gjennomføre x forkastinger og y tillegginger av kolonner til løsningen

15 12. september 2003Christian M. Berg Lokalsøk - oscillering Dette gir to veger fra en løsning til den neste Fjern kolonner fra den gamle løsningen, legg så til nye til man finner en ny løsning Legg til kolonner til den gamle løsningen, fjern kolonner til man finner en ny løsning Ingen garanti for å finne løsninger: En fase må stoppe ved overgangen mellom covering- og packing-løsninger

16 12. september 2003Christian M. Berg Grådig søk SPP-heuristikken er i utgangspunktet grådig Kolonnene rangeres etter kostnad/antall Dette er en ”surrogate constraint”-verdi I et ”trekk” vil den beste kolonnen legges til, eller den dårligste forkastes

17 12. september 2003Christian M. Berg Tabusøk Kolonner som nylig har endret status (i eller utenfor løsning), får ikke endre sin status igjen før en viss mengde tid har passert Med mindre endringen gir en ny beste løsning Dermed kan ikke heuristikken gå tilbake til et lokalt optimum, men må fortsette søket andre steder

18 12. september 2003Christian M. Berg Grådig søk med og uten tabu

19 12. september 2003Christian M. Berg Tabu Flere taburegimer ble testet Statisk: Alle kolonner er tabu for et gitt antall iterasjoner Dynamisk: Kolonner er tabu for et antall iterasjoner som ligger i et gitt intervall Asynkron: Kolonner som legges til og forkastes er ikke tabu like lenge Ymse kombinasjoner av disse politikkene

20 12. september 2003Christian M. Berg Tabu Dynamisk tabu virket å være betydelig bedre enn de andre Et unntak dog: Asynkron statisk tabu var ikke mye dårligere

21 12. september 2003Christian M. Berg Spredning Et grådig søk risikerer allikevel å bli værende i en begrenset del av søkeområdet Tre metoder for spredning av søket er benyttet: Critical event memory Restart Probabilistiske valg av trekk

22 12. september 2003Christian M. Berg Critical event memory Søket oscillerer mellom covering og packing løsninger På enkelte stadier i denne oscilleringen oppstår kritiske hendelser:

23 12. september 2003Christian M. Berg Critical event memory Kolonner som er i løsningen ved kritiske hendelser straffes Vektene (kostnad/antall) økes slik at det blir mindre sannsynlig at akkurat disse kolonnene velges igjen ved senere anledninger Kolonner som er ofte i løsninger, straffes dermed hardere Vi ønsker å promotere valg av nye og potensielt mer spennende kolonner

24 12. september 2003Christian M. Berg Critical event memory Critical event memory gir et positivt bidrag til søket Flere formler for å beregne straff har vært prøvd Selve formlene virker mindre viktige så lenge selve straffene er godt utmålte og balanserte CEM reduserer behovet for dynamisk (fremfor statisk) tabu og andre antisirklingsmekanismer

25 12. september 2003Christian M. Berg Restart Ved gitte tidspunkt konstrueres nye startløsninger, og søket flyttes til denne Startløsninger kan konstrueres på tre måter Ingen konstruksjon – heuristikken må bygge fra tom løsning med en normal legg-til-fase Konstruktiv Tilfeldig Konstruktiv oppbygning ga litt bedre resultater; særlig på bruk ved første startløsning Ikke nevneverdig mer tidsbruk enn tilfeldig oppbygging

26 12. september 2003Christian M. Berg Probabilistiske trekkvalg Det er ikke nødvendigvis noen korrelasjon mellom ”best evaluert” og ”beste valg” Derfor velger man ikke alltid den best evaluerte kolonne Derimot antas en korrelasjon mellom ”godt evaluert” og ”godt valg” Selv med en sannsynlighet på 33% for å velge den best evaluerte, er sannsynligheten stor for å velge blant de best evaluerte – altså gjøre et godt valg

27 12. september 2003Christian M. Berg Probabilistiske trekkvalg Gir et positivt bidrag til søket 69% sjanse for å velge beste ga gode forbedringer

28 12. september 2003Christian M. Berg Partisjoneringstrekk For å kunne finne partisjoneringsløsninger med denne strategiske oscilleringen, må man til enhver tid ha en lovlig løsning på enten packing- eller covering-problemet Dette medfører restriksjoner på valg av kolonner å legge til eller forkaste inntil man er tvunget til å bytte løsningstype Det viser seg at dette ikke gjør heuristikken særlig nyttig for å finne gode løsninger av vanskelige set packing-problemer

29 12. september 2003Christian M. Berg Problemreduksjoner Fem regler for problemreduksjoner ble implementert (Beasley og Chu, 1998) Noen av de enkleste var mest effektive: Fjern dyreste av like kolonner Fjern kolonner som ikke kan kobles med noen annen til en lovlig løsning CPLEX greier ytterligere reduksjoner, så reglene er ikke gode nok til å redusere problemene til sine konvekse hull.

30 12. september 2003Christian M. Berg Noen resultater Problemene er testet på en portefølje med problemer fra flyindustrien Optimal løsning funnet på 25 av 54 problemer Ytterligere 3 under 1% fra optimal løsning Enda 7 under 5% fra optimal løsning Seks problemer ble aldri løst

31 12. september 2003Christian M. Berg Tidsbruk Avhenger av problemenes vanskelighetsgrad Fra godt under sekundet Til timer – på store og vanskelige problemer Mest sannsynlig kan dog algoritmene reimplementeres på mer effektivt vis

32 12. september 2003Christian M. Berg Forbedringspotensiale Resultatene er noenlunde på linje med de første genetiske algoritmene (Levine, 1994) Eliminasjonen av kolonner som ser gode ut, men ikke fører til optimale løsninger (eller løsning i det hele tatt), er ikke god nok Muligens kan dette endres gjennom en raffinert trekkevalueringsfunksjon


Laste ned ppt "Heuristics for the set partitioning problem. 12. september 2003Christian M. Berg Fritt Fall Flyselskap AS Flyr 2x BGO-OSL, OSL-MOL, MOL-BGO Dette gir."

Liknende presentasjoner


Annonser fra Google