1 / 29

Lentokoneiden reititys ja skedulointi

Lentokoneiden reititys ja skedulointi. Esitelmä 23 – Olli Kaplas. Lentokoneiden reititys ja skedulointi. Ongelmana 1 päivän aikataulun luominen laivueelle Koneet voivat olla erilaisia

dacia
Download Presentation

Lentokoneiden reititys ja skedulointi

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Lentokoneiden reititys ja skedulointi Esitelmä 23 – Olli Kaplas

  2. Lentokoneiden reititys ja skedulointi • Ongelmana 1 päivän aikataulun luominen laivueelle • Koneet voivat olla erilaisia • Aikataulu koostuu lentoreiteistä (legs), jotka täytyy lentää tiettyissä aikaikkunoissa, joilla on kestot ja kustannukset/voitot lentokonetyyppiä kohden • Ensimmäinen ongelma on reititysongelma, eli missä järjestyksessä lennetään mitkäkin reitit • Toinen ongelma on skedulointiongelma, jossa yritetään löytää tarkat lentoajat, kun kysyntä tiedetään eri aikoina

  3. Lentokoneiden reititys ja skedulointi • Jokaiselta lentokentältä täytyy lähteä joka päivä yhtäpaljon lentokoneita samaa tyyppiä olevia lentokoneita kuin sinne tulee takaisin, jotta päivittäinen aikataulu voi rullata uudestaan.

  4. Määritelmiä (1/3) • Jokaisella lentoreitillä (leg) on määritetty kysyntä eri aikaväleillä, jonka aikana se voidaan lentää • Reitti j • Lentokonetyypit i=1,...., T • mi konetta tyyppia i ja koneita yhteensä, • Käyvät aikataulutl ϵ Si lentokonetyypille l, sisältävät lentoreittejä • Liniiden lentoreittien joukko, jotka voidaan lentää lentokonetyypillä i

  5. Määritelmiä (2/3) • Vakio aijlon 1 jos aikataulu l sisältää reitin j konetyypillä i ja 0 muuten • πijvoitto, jos lentoreitti j lennetään i tyypin koneella • Odotettavissa oleva voitto lentokonetyypille i aikataululla l: • πi0jos lentokone ei ole missään aikataulussa voidaan antaa positiivinen tai negatiivinen ”voitto/tappio” • P kaikkien lentokenttien joukko ja Pi, tyyppin i lentokoneille sopivien lentokenttien joukko

  6. Määritelmiä (3/3) • Vakio oipl on 1 jos aikataulun l ϵ Si lähtökenttä on p ja 0 muuten • Vakio diplon 1, jos aikataulun l saapumiskenttä on lentokenttä p ja 0 muuten • Päätösmuuttuja xilsaa arvon 1, jos lentoaika l lennetään koneella tyyppiä i • Päätösmuuttuja xiomerkitsee käyttämättömien i tyypin koneiden määrän

  7. Optimointimalli Maksimoidaan voittoa • Jokainen reitti i kuljetaan vain kerran • Jokaista konetyyppiä i on maksimissaan mikpl • Aikataulun päätteeksi ja lopetuksesi määritetyt kentät täytyy täsmätä

  8. 3. Rajoitusehto • Selkeämpi muoto 3. rajoituksesta: • Jokaisella kentällä pitää alkaa yhtä monta lentoa kuin sinne loppuu niillä lentoaikatauluilla, jotka valitaan

  9. Branch & Bound: branch-and-price • Idea on, että jaetaan ongelma pää- ja aliongelmiin. • Ylärajat (UB) saadaan relaksoimalla kokonaislukurajoite ja korvaamalle se xil≥ 0 (1. rajoitus takaa, että xil≤ 1) • Kutsutaan myös sarakkeiden generointi proseduuriksi, koska huomiotta jätetyt päätösmuuttujat oletaan nolliksi.(Ne muodostavat sarakkeita alkup. ongelman yhtälöihin)

  10. Branch & price : Pää- ja aliongelmat • Pääongelma: • Generoidaan alijoukko kaikista mahdollisista lentoaikatauluista • Ratkaistaan linaariseksi relaksoitu ongelma tällä verrattain pienellä määrällä päätösmuuttujia (eli lentoaikatauluja) • Lasketaan ratkaisun duaali-muuttujien arvot; ne edustavat ”resurssien”, kuten lentoreittien, lentokoneiden ja lentokenttien yksikkökustannuksia. • Aliongelma: • Tehtävä on testata onko pääongelman (kuitenkin lineerisen) tämänhetkinen ratkaisu optimaalinen kaikilla mahdollisilla aikatauluilla, käyttäen duaalimuuttujia • Duaali-muuttujia käytetään muiden kandidaattaikataulujen potentiaalisten voittojen laskemiseen,

  11. Branch & price : Pää- ja aliongelmat • Aliongelma jatkuu... • Aliongelma vastaa pisimmän polun ongelmaa aikaikkunoiden kanssa. Tämä voidaan ratkaista dynaamisella ohjelmoinnilla. • Ratkaisu pää-ongelmaan ei ole optimaalinen jos löytyy sellaisia aikatauluja, joilla on positiivinen potentiaalinen voitto • Tällöin täytyy generoida lisää kandidaattiaikatauluja aikataulujen joukkoon pääongelmaan

  12. Aliongelman kuvaaminen graafilla • Viisi erilaista kaarta: • Lähdekaari menee lähdesolmusta lähtölentokenttäsolmuun • Nielukaari menee päätelentokenttäsolmusta nielusolmuun • Aikataulun aloituskaari lähtee lähtölentokenttäsolmusta ja menee lentoreittisolmuun (aikataulun täytyy alkaa näistä solmuista) • Aikataulun lopetuskaari menee päätelentokenttä solmuun (aikataulun täytyy loppua joihinkin näistä solmuista) • Käännöskaaria (turnarc) eri lentoreittisolmujen välillä. Kahden lentosolmun välillä oleva kaari on olemassa vain silloin, kun aikaikkuna vaatimukset täyttyvät (ottaen huomioon kääntymisaika lentokentällä) ja lennot voidaan lentää peräkkäin samalla koneella

  13. Aliongelman kuvaaminen graafilla jatkuu... • eij on aikaisin mahdollinen lähtemisaika reitillä j ja lentokonetyypillä i • lij on myöhäisin mahdollinen lähtemisaika reitillä j lentokonetyypillä i • τij on lentoreitin j lentoaika, konetyypillä i • δijkon lentoreitin j ja lentoreitin k välinen ”kääntymisaika” (turnaround time) • Kääntymiskaari reittejen j ja k välillä on olemassa jos

  14. Aliongelman kuvaaminen graafilla Graafilla Gi(Ni,Bi) voidaan etsiä käypiä aikatauluja lentokoneille.

  15. Aliongelma jatkuu... • Jokaiseen kääntymiskaareen liitetään siihen liittyvä voitto πij(nämä vakiot tunnetaan) • Merkataan αj,βijaγiprajoitteisiin 1,2 ja 3 liittyviä duaalimuuttujien arvoja. • Duaalimuuttujat kuvaavat voittoa siitä että näiden rajoitusten oikeapuolta kasvatetaan yhdellä ( relaksoidussa pää-ongelmassa) • Potentiaalinen voitto aikataululle l suhteessa tämänhetkiseen ratkaisuun voidaan laskea:

  16. Graafin polkujen potentiaalisen voiton tulkinta • Jokaisen graafin Gi polun (aikataulun) potentiaalinen voitto voidaan laskea kaariin liitettyvien voittojen summana • Kun ajatellaan voittoja ”matkoina” voidaan käyttää pisimmän polun algoritmia löytämään suurimman potentiaalisen voiton polku graafista Gi

  17. Aliongelma jatkuu... • Jos suurin potentiaalinen voitto positiivinen, lisätään aikataulu pää-ongelmaan, joka ratkaistaan uudestaan ja saadaan uusi UB. (Myös muita positiivisen potentiaalisen voiton omaavia aikatauluja voidaan lisätä) • Jos minkään polun potentiaalinen voitto ei ole positiivinen, on nykyinen ratkaisu optimaalinen

  18. Aliongelma loppuu • Branchaamisstrategia pitää myös päättää • esim vanha kunnon 1-0 branchaaminen • Lopuksi täytyy vielä päättää mitkä sarakkeet, eli päätösmuuttujat (aikataulut) pidetään mukana. • Voidaan pitää kaikki generoidut • Voidaan myös jollain algoritmilla karsia vanhoja pois

  19. Esimerkki: Lentokoneiden reititys ja skedulointi • 2 eri tyyppistä lentokoneetta T=2, m1=2 ja m2=2 • 4 lentokenttää: p=1: San Francisco (SFO) p=2: Los Angeles (LAX) p=3: New York (NYC) p=4: Seattle (SEA) • Kummallakin konetyypillä voidaan lentää mikä tahansa reitti, vain voittojen määrä on eri • a.m lennon täytyy lähteä 05:00 jälkeen ja laskeutua ennen klo 14:00, p.m täytyy lähteä 14:00 jälkeen ja laskeutua viim. 05:00 seuraavana päivänä

  20. Ensimmäisten kandidaatti-aikataulujen luominen 1/2 Aikataulut tyypin 1 koneille: 3. 3. 3. 10 12 12 10 11 9 4. 4. 4. 7 5 6 Aikataulu 7 Aikataulu 8 Aikataulu 2 1. 1. 1. 7 2 4 2. 2. 2.

  21. Ensimmäisten kandidaatti-aikataulujen luominen 2/2 Aikataulut tyypin 2 koneille vastaavasti:

  22. Potentiaalisten voittojen laskeminen eri lentoaikatauluille • Lentoreittien pot. voitot • 1 tyypin koneiden aikataulujen pot. voitot • 2 tyypin koneiden aikataulujen pot.voitot

  23. Standardin B&B:n implementoiminen ongelmaan

  24. Duaalimuutujien arvot: • Aliongelma täytyy muodostaa, jotta voidaan löytää käyvät aikataulut, joilla on potentiaalisia voittoja • β1 = -16.67 ja β2= 0 (x11 =1 eli 1 tyypin kone on käyttämättä)

  25. Graafi G1aikataulujen 11 ja 12 kanssa Generoidaan ”pitkiä” ja käypiä ratkaisuja Käypyysehto reitin lentämiselle:

  26. Potentiaaliset voitot generoiduille uusille aikatauluille tyyppiä 1 • G1generoidut aikataulut • Nyt otetaan mukaan aikataulut 11, 14 ja 15 koska niillä on positiiviset potentiaaliset voitot

  27. Potentiaaliset voitot generoiduille uusille aikatauluille tyyppiä 2 • G2generoidut aikataulut • Nyt otetaan mukaan aikataulut 10, 13 ja 14 koska niillä on positiiviset potentiaaliset voitot

  28. Pää-ongelman ratkaisu uudelleen • Opitimi löydetään kun x110=x111=x21= x22 =1 • Kaikki potentiaaliset voitot ovat ei-positiivia

  29. Kotitehtävä • Miettikää miten lentokoneiden aikataulun ja reitityksen optimointimallia voisi parantaa, mitä se ei ota huomioon. • Palautus 18.1.2010 ? (Tenttiviikoilla ja joululomalla ei voi olla palautuksia) Ei kotitehtävää

More Related