Flöde i nätverk. Flöde i nätverk. Specialfall av minkostnadsflödesproblemet. Specialfall av minkostnadsflödesproblemet. Slutsats.

Relevanta dokument
Flöde i nätverk. Flöde i nätverk. Specialfall av minkostnadsflödesproblemet. Specialfall av minkostnadsflödesproblemet. Slutsats.

Flöde i nätverk. Flöde i nätverk. Specialfall av minkostnadsflödesproblemet

Flöde i nätverk. Flöde i nätverk. Specialfall av minkostnadsflödesproblemet

TAOP88/TEN 1 OPTIMERING FÖR INGENJÖRER

LP-problem. Vårt första exempel. Baslösningar representerar extrempunkter. Baslösningar representerar extrempunkter

Optimeringslära Kaj Holmberg

Optimeringslära Kaj Holmberg

Optimeringslära Kaj Holmberg

min c 1 x 1 + c 2 x 2 då x 1 + x 2 = 1, x 1 {0, 1}, x 2 {0, 1} plus andra bivillkor. Vi måste göra k st av n alternativ:

Optimeringslära Kaj Holmberg

TAOP88/TEN 1 OPTIMERING FÖR INGENJÖRER

Speciell användning av heltalsvariabler. Heltalsprogrammering. Antingen-eller-villkor: Exempel. Speciell användning av heltalsvariabler

min c 1 x 1 + c 2 x 2 då x 1 + x 2 = 1, x 1 {0, 1}, x 2 {0, 1} plus andra bivillkor. Vi måste göra k st av n alternativ:

Optimeringslära Kaj Holmberg

TAOP61/TEN 1 OPTIMERING AV REALISTISKA SAMMANSATTA SYSTEM

TAOP88/TEN 1 OPTIMERING FÖR INGENJÖRER

LP-dualitet: Exempel. Vårt första exempel. LP-dualitet: Relationer. LP-dualitet: Generellt

Tentamensinstruktioner. När Du löser uppgifterna

Vårt första exempel. LP-dualitet: Exempel. LP-dualitet: Generellt. LP-dualitet: Relationer

Lösningsförslag till övningsuppgifter, del III

Tentamensinstruktioner. När Du löser uppgifterna

Optimeringslära Kaj Holmberg

TAOP88/TEN 1 OPTIMERING FÖR INGENJÖRER

Träd. Sats. Grafer. Definition. En fullständig graf har en båge mellan varje par av noder. Definition

5B1816 Tillämpad mat. prog. ickelinjära problem. Optimalitetsvillkor för problem med ickelinjära bivillkor

Lathund, procent med bråk, åk 8

Manual för BPSD registret. Version 6 /

TAOP86/TEN 1 KOMBINATORISK OPTIMERING MED

TAOP86/TEN 1 KOMBINATORISK OPTIMERING MED

a n = A2 n + B4 n. { 2 = A + B 6 = 2A + 4B, S(5, 2) = S(4, 1) + 2S(4, 2) = 1 + 2(S(3, 1) + 2S(3, 2)) = 3 + 4(S(2, 1) + 2S(2, 2)) = = 15.

Tentamensinstruktioner

Eulercykel. Kinesiska brevbärarproblemet. Kinesiska brevbärarproblemet: Metod. Kinesiska brevbärarproblemet: Modell. Definition. Definition.

Föreläsning 10/11! Gruppuppgifter: Gruppuppgift 1: Alla har redovisat. Gruppuppgift 2: Alla har redovisat Gruppuppgift 3: På gång.

Tillståndsmaskiner. 1 Konvertering mellan Mealy och Moore. Ola Dahl och Mattias Krysander Linköpings tekniska högskola, ISY, Datorteknik

N = {i}: noder (hörn) Graf: G = (N, B) Definitioner. Väg: Sekvens av angränsande bågar. Cykel: Väg som startar och slutar i samma nod.

Tentamen i Linjär algebra (TATA31/TEN1) ,

ANVÄNDARHANDLEDNING FÖR

Möbiustransformationer.

OPTIMIZING THE LINE. CAB Group AB Stortorget 11, SE Örebro, Sweden Phone:

TNSL05 Optimering, Modellering och Planering. Föreläsning 10

Idag: Dataabstraktion

Träning i bevisföring

Optimalitetsvillkor. Optimum? Matematisk notation. Optimum? Definition. Definition

Exempel på tentamensuppgifter i LMA100, del 1

Konsten att multiplicera (stora) heltal

Optimering. Optimering

TAOP88/TEN 1 OPTIMERING FÖR INGENJÖRER

Riktlinjer - Rekryteringsprocesser inom Föreningen Ekonomerna skall vara genomtänkta och välplanerade i syfte att säkerhetsställa professionalism.

Kontrollskrivning i Linjär algebra ,

TAOP33/TEN 2 KOMBINATORISK OPTIMERING GRUNDKURS

Observera att alla funktioner kan ritas, men endast linjära funktioner blir räta linjer.

Tentamensinstruktioner. När Du löser uppgifterna

Linjära system av differentialekvationer

TIMREDOVISNINGSSYSTEM

729G04 - Hemuppgift, Diskret matematik

Snabbslumpade uppgifter från flera moment.

Träd. Sats. Grafer. Definition. En fullständig graf har en båge mellan varje par av noder. Definition

Övningshäfte Algebra, ekvationssystem och geometri

Administration Excelimport

TAOP86/TEN 1 KOMBINATORISK OPTIMERING MED

Algebra, polynom & andragradsekvationer en pampig rubrik på ett annars relativt obetydligt dokument

Träd. Sats. Grafer. Definition. En fullständig graf har en båge mellan varje par av noder. Definition

Uppdragsbeskrivning. Digital Skyltning. Version 1.0 Mats Persson. Distributionslista. Namn Åtgärd Info.

DOP-matematik Copyright Tord Persson. Bråktal Läs av vilka tal på tallinjen, som pilarna pekar på. Uppgift nr

Optimeringslära Kaj Holmberg

Användarmanual VX-webben

Idag. Hur vet vi att vår databas är tillräckligt bra?

Efter att du har installerat ExyPlus Office med tillhörande kartpaket börjar du med att göra följande inställningar:

Frågor i ansökan om statsbidrag för läxhjälp år 2016 skolhuvudmän

Lösningar/svar. Uppgift 1. Tekniska Högskolan i Linköping Optimering av realistiska sammansatta system. Optimeringslära Kaj Holmberg

David Wessman, Lund, 30 oktober 2014 Statistisk Termodynamik - Kapitel 5. Sammanfattning av Gunnar Ohléns bok Statistisk Termodynamik.

Manual. Rapportera väntetider i systemet Utbudstjänst SLL

SF1625 Envariabelanalys

Linjära system av differentialekvationer

Föreläsning 14: Försöksplanering

Tentamensinstruktioner. När Du löser uppgifterna

Vad är WordPress? Medlemmar

Avsikt På ett lekfullt sätt färdighetsträna, utveckla elevers känsla för hur vårt talsystem är uppbyggt samt hitta mönster som uppkommer.

Träd. Sats. Grafer. Definition. En fullständig graf har en båge mellan varje par av noder. Definition

Tentamensinstruktioner. När Du löser uppgifterna

konstanterna a och b så att ekvationssystemet x 2y = 1 2x + ay = b 2 a b

TAOP33/TEN 2 KOMBINATORISK OPTIMERING GRUNDKURS

TG7301_7322NE(sw_sw)_QG.fm Page 1 Wednesday, April 9, :15 AM. Klick. Använd endast den medföljande telefonsladden. DSL/ADSL-användare)

Ekvationssystem, Matriser och Eliminationsmetoden

912 Läsförståelse och matematik behöver man lära sig läsa matematik?

ANVÄND NAVIGATIONEN I CAPITEX SÄLJSTÖD

Allmän teori, linjära system

Procent - procentenheter

TAOP88/TEN 1 OPTIMERING FÖR INGENJÖRER

Visualisering av golfboende

Datorövning 2 Diskret fördelning och betingning

1(8) x ijt = antal mobiltelefoner av typ i=1,,m, Som produceras på produktionslina 1,, n, Under vecka t=1,,t.

DATASAMORDNING NYHETERNA I CHAOS Utbildning Chaos/Handledning - Nyheterna i Chaos 3/

Hel tjänstledighet för att prova annan anställning inom Göteborgs universitet.

Kurs: HF1012, Matematisk statistik Lärare: Armin Halilovic Datum: Måndag 30 mars 2015 Skrivtid: 8:15-10:00

Mätning av effekter. Vad är elektrisk effekt? Vad är aktiv-, skenbar- reaktiv- medel- och direkteffekt samt effektfaktor?

Kundservicerapport Luleå kommun 2015

Datorövning 2 Statistik med Excel (Office 2007, svenska)

Föreningen Nordens lokala hemsidor

1. Frekvensfunktionen nedan är given. (3p)

Transkript:

Flöde i nätverk Graf: G = (N, B) Variabeldefinition: x ij = flöde i båge (i, j). Bågdata för båge (i, j): c ij : flödeskostnad per enhet. u ij : övre gräns för flödet. l ij : undre gräns för flödet. Bivillkor: l ij x ij u ij Noddata för nod i: b i : källstyrka/sänkstyrka. (måste vara givet) Nodjämviktsvillkor: x ji x ij = b i för alla i N (in - ut) Krav på indata: i b i = 0. Kaj Holmberg (LiU) TAOP86 Optimering september 06 / Specialfall av kostnadsflödesproblemet Flöde i nätverk Sats Varje anslutningsmatris är fullständigt unimodulär. Slutsats Flödesproblem kan betraktas som LP-problem. Flödet blir automatiskt heltal. Obs: Inga andra bivillkor får finnas. Minkostnadsflödesproblemet Skicka efterfrågade mängder så billigt som möjligt. (i,j) B x ji l ij x ij u ij x ij = b i för alla (i, j) B för alla i N Kaj Holmberg (LiU) TAOP86 Optimering september 06 / Specialfall av kostnadsflödesproblemet Billigaste väg-problemet: Minkostnadsflödesproblem med en källa och en sänka, båda av styrka ett. i = s b i = i = t 0 f ö Riktade brevbärarproblemet: Cirkulerande kostnadsflödesproblem med undre gräns ett för alla bågar. l ij = 0 och u ij stor (men i praktiken ) för alla bågar. Kaj Holmberg (LiU) TAOP86 Optimering september 06 3 / Kaj Holmberg (LiU) TAOP86 Optimering september 06 4 /

Specialfall av kostnadsflödesproblemet Maxflödesproblemet: Inför återbåge (t, s). Sätt c ts = och c ij = 0 för alla (i, j) B \ (ts). Sök cirkulerande flöde (inga källor eller sänkor). max f x ji 0 x ij u ij för alla (i, j) B f fri 0, 5 0, 3 3 f i = s x ij = f i = t 0 f ö 0, 0, 5 0, 4 0, 5 4 5 0, 0, 6 6 för alla i N Specialfall av kostnadsflödesproblemet Transportproblemet: Minkostnadsflödesproblem i tudelad graf. m n n x ij = s i j= m x ij = d j i= x ij 0 i =,... m j =,... n för alla i, j Kan ses som ett matrisproblem, där i står för rader och j för kolumner. Bivillkoren specificerar radsummor och kolumnsummor. (Eftersom detta är ett kostnadsflödesproblem blir lösningen heltal.),m Kaj Holmberg (LiU) TAOP86 Optimering september 06 5 / Specialfall av kostnadsflödesproblemet Tillordningsproblemet: Transportproblem med all tillgång och efterfrågan lika med ett. Varje person i skall göra en uppgift och varje uppgift j ska göras en gång. Variabeldefinition: om person i gör uppgift j. n n n j= n i= x ij 0 i =,... n j =,... n för alla i, j Lösningsmetod: Ungerska metoden. Baseras på LP-dualen. (Eftersom detta är ett kostnadsflödesproblem blir lösningen heltal.) Kaj Holmberg (LiU) TAOP86 Optimering september 06 7 / Kaj Holmberg (LiU) TAOP86 Optimering september 06 6 / Utvidgning av kostnadsflödesproblemet Flervaruflöde: Flödet består av olika sorters varor med separat tillgång/efterfrågan men med gemensamma kapaciteter. Även för olika start- och slutnodsbundna signaler, som i telekomnät. Variabeldefinition: xij k = flöde av sort k i båge (i, j). cij k xij k (i,j) B k C x k ji xij k u ij k C l k ij x k ij u k ij x k ij = b k i för alla i N, k C för alla (i, j) B Bivillkorsmatrisen är ej fullständigt unimodulär. för alla (i, j) B, k C Kaj Holmberg (LiU) TAOP86 Optimering september 06 8 /

Lösningsmetod för kostnadsflödesproblemet (i,j) B x ji l ij x ij u ij x ij = b i för alla (i, j) B för alla i N Simplexmetoden ( Vore det inte bättre att skicka så istället? Metodiskt!) Baslösning: Icke-basvariabler: x ij = l ij eller x ij = u ij. (Övre och undre gränser behandlas implicit.) Hur många basvariabler? Ett av nodjämviktsvillkoren är redundant. En n n-matris vore linjärt beroende. Kan bara ha bas av dimension n. Alltså n basvariabler. Simplexmetoden för kostnadsflödesproblemet En iteration: Basvariablerna ger ett uppspännande träd. Inkommande variabel bildar en unik cykel. Man vill skicka runt så mycket som möjligt i cykeln. Utgående variabel begränsar flödesändringen i cykeln. Den hamnar på övre eller undre gräns. Utgående variabel bryter upp cykeln. En cykel motsvarar linjärt beroende. Alltså ingen cykel i basen. Slutsats: En bas motsvarar ett uppspännande träd. Kaj Holmberg (LiU) TAOP86 Optimering september 06 9 / Simplexmetoden för kostnadsflödesproblemet Hur välja inkommande variabel? y: dualvariabler till nodjämviktsvillkoren. y i kallas nodpris för nod i. Reducerade kostnader: ĉ ij = c ij + y i y j. (Nod i till j: Jämför skillnaden i nodpris, y j y i, med direktvägen, c ij.) Minimering ĉ ij < 0 Båge (i, j) billig. Skicka så mycket som möjligt. Öka x ij. x ij = u ij är optimalt. ĉ ij > 0 Båge (i, j) dyr. Skicka så lite som möjligt. Minska x ij. x ij = l ij är optimalt. Optimalitetsvillkor ĉ ij < 0 x ij = u ij, (billig ickebas) ĉ ij > 0 x ij = l ij (dyr ickebas) samt l ij < x ij < u ij ĉ ij = 0 (bas). (Används för att räkna ut y.) Kaj Holmberg (LiU) TAOP86 Optimering september 06 / Kaj Holmberg (LiU) TAOP86 Optimering september 06 0 / Simplexmetoden för kostnadsflödesproblemet 0. Finn tillåten startbas (träd).. Sätt y = 0. Beräkna resterande y via basträdet. (c ij = y j y i för alla basbågar.). Beräkna reducerade kostnader ĉ ij = c ij + y i y j för alla icke-basbågar. 3. Kontrollera optimalitet. Om optimum: Stopp. 4. Välj mest lovande variabel som inkommande. 5. Finn cykeln som bildas. 6. Ändra flödet i cykeln maximalt i önskad riktning. 7. Välj den variabel som begränsar ändringen som utgående variabel. 8. Gå till. Kaj Holmberg (LiU) TAOP86 Optimering september 06 /

Simplexmetoden för kostnadsflöde: Exempel Simplexmetoden för kostnadsflödesproblemet Indata: 3 6,,0 3,, Startlösning Bågdata: c,u,x,, 3,,,, 5,,,,0 Känslighetsanalys Ändring av kostnad för icke-basbåge eller införande av ny båge: Beräkna ny reducerad kostnad, ĉ ij = c ij + y i y j och kontrollera optimalitet. 5,, 4 Kaj Holmberg (LiU) TAOP86 Optimering september 06 3 / Busacker-Gowens metod Alternativ metod för kostnadsflödesproblem med en källa och en sänka: Modifiering av maxflödesmetoden: Sök billigaste flödesökande väg i varje iteration. Pseudopolynomisk. Billigaste-maxflödesmetoden Busacker-Gowens metod kan finna billigaste maxflöde om man inte slutar förrän flödet är maximalt. Kaj Holmberg (LiU) TAOP86 Optimering september 06 4 / n n n j= n i= x ij 0 i =,... n j =,... n för alla i, j n n LP-dual: max α i + β j α i + β j c ij för alla (i, j). Komplementaritetsvillkor: x ij (α i + β j c ij ) = 0 för alla (i, j). Metod: Lös dualen: Öka α och β, utan att överskrida duala bivillkoren. Försök sedan finna en tillåten primallösning som uppfyller komplementaritetsvillkoren. Ändra α och β om det inte går. Kaj Holmberg (LiU) TAOP86 Optimering september 06 5 / Kaj Holmberg (LiU) TAOP86 Optimering september 06 6 /

Arbeta med reducerade kostnader: ĉ ij = c ij α i β j för alla (i, j). Duala bivillkoren (primal optimalitet): ĉ ij 0 för alla (i, j) Komplementaritetsvillkoren: ĉ ij x ij = 0 för alla (i, j) Optimalitetsvillkor: ĉ ij > 0 x ij = 0, x ij > 0 ĉ ij = 0 Tillåtna positioner: där ĉ ij = 0 Mål: Placera exakt en etta i varje rad och i varje kolumn på de tillåtna positionerna. Lös dualen. Sätt α i = 0 för alla i och β j = 0 för alla j (vilket ger ĉ ij = c ij ). Öka enstaka α i och β j så mycket som möjligt (utan att ĉ ij blir negativt). Kan en etta placeras i varje rad och kolumn på de tillåtna positionerna? Om ja, stopp. Om inte, ändra dualvariablerna i par: Öka α i och ska β j så att inget ĉ ij blir negativt. Gör detta så att nya tillåtna positioner, ĉ ij = 0, bildas, samtidigt som ĉ ij 0 för alla i, j. Upprepa tills tillåten lösning fås. Kaj Holmberg (LiU) TAOP86 Optimering september 06 7 / Kaj Holmberg (LiU) TAOP86 Optimering september 06 8 / Matris av reducerade kostnader, Ĉ. Stryk alla tillåtna positioner med sta möjliga antal streck. Sats Högsta antalet ettor som kan placeras ut är lika med sta antalet streck som behövs. Öka α i för ostrukna rader, och ska β j för strukna kolumner. Effekt: Ostrukna element skas, enkelt strukna element oförändrade, dubbelt strukna element ökas. ĉ ij skas inte för någon tillåten position. Inget ĉ ij blir negativt. Minst en ny tillåten position bildas. Kaj Holmberg (LiU) TAOP86 Optimering september 06 9 / 0. Starta med de ursprungliga kostnaderna (α = 0, β = 0).. Dra bort det sta elementet i varje rad från alla elementen i raden (öka α).. Dra bort sta elementet i varje kolumn från alla elementen i kolumnen (öka β). 3. Stryk alla nollor med sta möjliga antal streck. Om antalet streck är lika med n, finn tillåten lösning, och sluta. 4. Dra bort sta ostrukna element från alla ostrukna element och addera till alla dubbelt strukna element. (Öka α i för ostrukna rader, och ska β j för strukna kolumner.) Gå till 3. Kaj Holmberg (LiU) TAOP86 Optimering september 06 0 /

Ungerska metoden: Exempel Ungerska metoden: Exempel ĉ ij = c ij α i β j 0 0 0 α 3 Optimallösning: x = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 Person gör uppgift, person gör uppgift 3, person 3 gör uppgift 4, person 4 gör uppgift. Total kostnad: 7 β 0 5 0 5 Duallösning: α = (3, 6,, 5) β = (0,,, ) Till slut återstår bara en nolla. (Kolla starka dualsatsen.) Kaj Holmberg (LiU) TAOP86 Optimering september 06 / Kaj Holmberg (LiU) TAOP86 Optimering september 06 /