Sats: Varje anslutningsmatris ar fullstandigt unimodular. Bevis: Lat m beteckna antalet rader i anslutningsmatrisen. Betrakta kvadratiska delmatriser av storlek n n, dar n m, och anvand induktion med avseende pa n. i) Alla element i matrisen ar 0, +1 eller 1. Alltsa har alla kvadratiska delmatriser av storlek 1 1 determinanter som ar 0, +1 eller 1. ii) Lat 2 n m och antag att alla kvadratiska delmatriser av storlek (n 1)(n 1) har determinanter som ar 0, +1 eller 1. Lat A n vara en kvadratisk delmatris av storlek n n. Tre fall kan da upptrada: 1. A n innehaller minst en nollkolumn, varfor det A n = 0. 2. Alla kolumner innehaller bade en +1 och en 1. Radsumman blir da en nollrad, varfor rang(a n ) < n och det A n = 0. 3. Nagon kolumn innehaller endast en +1 eller en 1. Utveckling av determinanten langs denna kolumn ger att det A n = det A {z n 1 = 0; 1. } 0;1 Alltsa galler att det A n = 0; 1 iii) Genom induktion foljer att alla kvadratiska delmatriser av storlek n n, dar n m, har determinanter som ar 0, +1 eller 1.
Sats: Varje tillaten baslosning (extrempunkt) till problemet ar 0/1-vard. min da c T x Ax = b x 0 Bevis: Antag att basvariablerna ges av x B = (x 1 ; : : : ; x m 1 ) T. (Det nns m 1 villkor och variablerna kan numreras sa att basvariablerna far lagst index.) Basvariablernas varden ges av losningen till systemet Bx B = b, dar B = ( A 1 ; A 2 ; : : : ; A m 1 ). Eftersom B ar en kvadratisk delmatris av anslutningsmatrisen A, vilken ar fullstandigt unimodular, sa galler att det B = 0; 1. Av denitionen av baslosning foljer att det B 6= 0, varfor alltsa det B = 1 galler. Cramers regel ger att losningen till systemet ges av x j = det Bj ; j = 1; : : : ; m 1; det B dar B j = ( A 1 ; : : : ; A j 1 ; b; A j+1 ; : : : ; A m 1 ). Om det B j beraknas genom utveckling langs kolumnen b = (1; 0; : : : ; 0) T sa fas att det B j = det(kvadratisk delmatris av A) = 0; 1: {z } 0;1 Alltsa fas att x j = 0; 1, j = 1; : : : ; m 1. Slutligen foljer att x j = 0=1, j = 1; : : : ; m 1, eftersom baslosningen ar tillaten.
Gomory-snitt Givet heltalsproblemet min z = c T x da Ax = b (HP ) x 0 och heltalig; dar A 2 R mn, b 2 R m och c 2 R n ar heltaliga. Antag att LP-optimum fas i baslosningen 0 B @ x B x N 1 C A = 0 B @ B 1 b 0 Antag att x B = B 1 b inte ar heltalig och att speciellt den i:te basvariabeln, dvs x i, har ett fraktionellt (icke-heltaligt) varde. Bivillkorssystemet uttryckt i LP-relaxationens optimalbas: Ix B + B 1 Nx N = B 1 b: Studera den i:te raden (dar x i ar basvariabel), vilken kan skrivas x i + 1 C A. a ij x j = b i ; (1) dar (a i;m+1 ; : : : ; a ij ; : : : ; a in ) ar den i:te raden i matrisen B 1 N och b i ar den i:te komponenten av vektorn B 1 b. Med ickebasvariablerna x j = 0, j = m + 1; : : : ; n, fas x i = b i, vilken antogs vara fraktionell. (Observera att ekvationen ovan helt enkelt ar en bivillkorsrad i en optimal simplextabla!)
Lat bc beteckna heltalsdelen av ett reellt tal (dvs avrundning nedat) och infor f i = b i b b i c () 0 < f i < 1) ; och f ij = a ij ba ij c () 0 f ij < 1) : Ekvation (1) kan nu skrivas x i + (ba ij c + f ij )x j = b b i c + f i : (Varje konstant tecknas som ett heltal plus ett fraktionellt tal.) Efter omskrivning fas: x i b b i c + ba ij cx j = f i f ij x j : (2) [Notera att ekvation (2) ar ekvivalent med (1). Varje tillaten losning till LP-relaxationen av (HP) uppfyller darfor (2).] Eftersom f i < 1 och f ij 0, j = m + 1; : : : ; n, sa galler att f i X n f ij x j < 1; da x j 0, j = m + 1; : : : ; n. For en tillaten losning som dessutom ar heltalig ar vanster led av (2) heltaligt. Vi kan alltsa dra foljande slutsats.
Varje tillaten heltalslosning till (HP) uppfyller villkoret x i b b i c + det vill saga x i + ba ij cx j 0; ba ij cx j b b i c: Detta villkor kallas Gomorys heltals-snitt. Ur ekvation (2) fas den alternativa beskrivningen eller f i X n X n f ij x j 0; f ij x j f i ; vilket kallas Gomorys fraktionella snitt. Heltals-snittet och det fraktionella snittet ar ekvivalenta. Av harledningen foljer att ett Gomory-snitt aldrig skar bort nagon tillaten heltalslosning. LP-relaxationens optimum, dar icke-basvariablerna x j = 0, j = m + 1; : : : ; n, ar inte tillaten i det fraktionella snittet (och, ekvivalent, x i = b i och x j = 0, j = m + 1; : : : ; n, uppfyller inte heltals-snittet). Alltsa galler att ett Gomorysnitt alltid skar bort aktuellt LP-optimum. Da snittet adderas till LP-relaxationen kommer darfor optimalvardet forsamras (oka i ett minimeringsproblem) [utom mojligen da LP-relaxationen har alternativa optima].
Med en slackvariabel s 0 i det fraktionella snittet fas f ij x j + s = f i : Omskrivning och ekvation (2) ger att slacket s = X n f ij x j f i = b b i c x i ba ij cx j ar heltaligt nar de ursprungliga variablerna ar heltaliga, och slackvariabeln kan darfor betraktas som en heltalsvariabel. Efter att snittet adderats har vi alltsa fortfarande ett heltalsproblem och proceduren kan darfor upprepas. Slackvariabeln i det fraktionella snittet kan anvandas som basvariabel i det nya villkoret. En komplikation ar att baslosningen blir otillaten (ty s = f i < 0). Detta kan dock hanteras med duala simplexmetoden. Aven malfunktionsraden [ z + c T N x N = c T B B 1 b] kan anvandas for att skapa ett Gomory-snitt. (Notera att aven z skall bli heltalig.) Konvergens? Om den rad som anvands for att generera Gomory-snittet valjs enligt vissa regler sa fas andligt ett heltaligt LP-optimum (dvs ett heltals-optimum). Den praktiska konvergensen ar typiskt langsam: det behovs manga snitt (och ofta uppstar numeriska problem). Det initiala beteendet kan dock vara acceptabelt. Intressant som illustration av en viktig princip for losning av heltalsproblem. Kan vara praktiskt anvandbar i kombination med andra losningsmetoder (tex tradsokning).
Tradsokning (Branch and Bound) Metodprincip for heltalsoptimering (och blandade problem). Olika strategiska val ger olika realiseringar. Genererar en eller era tillatna heltalslosningar. Den basta kanda tillatna heltalslosningen ger under tradsokningens gang en aktuell pessimistisk uppskattning av optimalvardet. Finner forr eller senare en optimallosning och verierar dess optimalitet. Kan i varsta fall urarta till fullstandig upprakning av heltalslosningar, men genom intelligent nyttjande av relaxeringar, restrieringar och uppskattningar fas typiskt en i hog grad ofullstandig upprakning. Kan ofta anpassas till speciella problemstrukturer (som tex heltalsproblem med underliggande natverk). Later sig ofta kombineras med andra tekniker for heltalsoptimering, sa att helheten fungerar eektivare an delarna var for sig.
Viktiga komponenter: Relaxering: ger ett mer lattlost optimeringsproblem och en optimistisk uppskattning av optimalvardet. Exempel: { kontinuerlig relaxering (LP-relaxering) { relaxering (strykning av) av komplicerande bivillkor { Lagrange-relaxering av komplicerande bivillkor Optimallosningen till det relaxerade problemet ar typiskt otillaten i det ursprungliga problemet. Om den blir tillaten sa erhalls en kandidat till pessimistisk uppskattning av optimalvardet. Vid otillatenhet gors en forgrening (utom da beskarning sker; se nedan).
Forgrening: forbjuder det relaxerade problemets optimallosning och partitionerar det tillatna omrade i tva (eller era) delar; harigenom skapas tva (eller era) grenar med delproblem. Syftar till att delvis upphava eekten av relaxeringen och darigenom minska graden av otillatenhet. Partitioneringen gor att varje tillaten losning aternnes i exakt en av de skapade grenarna. Exempel: { x 3 = 0=1 och x LP 3 = 0; 4! forgrening: xera x 3 = 0 eller x 3 = 1 (kallas variabelforgrening) { x 1 ; x 2 ; x 3 ; x 4 = 0=1 och x 1 + x 2 + x 3 + x 4 = 1, samt x LP = ( 1 2 ; 0; 1 4 ; 1 4 )T! forgrening: x 1 + x 2 = 1 eller x 3 + x 4 = 1 (kallas bivillkorsforgrening) { subturforbjudande villkor har relaxerats och bagarna e 1, e 2 och e 3 bildar en subtur! forgrening: x e1 = 0 eller x e1 = 1 och x e2 = 0 eller x e1 = 1, x e2 = 1 och x e3 = 0 (kallas subturbrytande forgrening) Observera att i varje delproblem gors en restriering av det relaxerade problemet..
Beskarning: innebar att en gren inte studeras ytterligare, beroende pa att den med sakerhet inte kan ge en tillaten losning till ursprungliga problemet som ar battre an den som redan nns tillhanda (dvs den som ger den aktuella pessimistiska uppskattningen). Kapning sker da delproblemet: { saknar tillaten losning; grenen kapas ty da saknas aven tillaten heltalslosning { har en optimallosning som ar tillaten i ursprungliga problemet, och darmed ger en kandidat till en forbattrad pessimistisk uppskattning; grenen kapas eftersom den inte kan ge nagon tillaten losning som ar battre an den just funna (ytterligare restriktioner kan bara forsamra malfunktionsvardet) { ger en optimistisk uppskattning som inte ar battre an (maximerings-problem: inte hogre an) den pessimistiska uppskattningen; grenen kapas ty den kan inte innehalla nagon tillaten losning som ar battre an den hittills basta funna En gren kapas inte da det relaxerade problemets optimallosning ar otillaten i det ursprungliga problemet och den optimistiska uppskattningen ar battre an (maximeringsproblem: hogre an) den pessimistiska uppskattningen, ty grenen kan da ge en tillaten losning som ar battre an den hittills basta funna. Genom beskarningen ignoreras heltalslosningar som sakert ar samre an den basta kanda tillatna losningen.
Avsokningsordning: denierar den ordning i vilken de genom forgreningar skapade delproblemen skall studeras. Populara principer: { Djup{forst{sokning: fortsatt alltid direkt ned i tradet och avsok resterande delproblem pa atervagen. (Med motivet att snabbt nna tillatna losningar till ursprungliga problemet.) { Bast{forst{sokning: valj den icke avsokta gren som har bast optimistisk uppskattning. (Motivet ar att dar forhoppningsvis nns en bra tillaten losning till det ursprungliga problemet.)
Malfunktionsvardet for den basta kanda tillatna losningen ger den pessimistiska uppskattningen, vilken ar globalt giltig (dvs giltig i hela tradet). I varje gren ger det relaxerade problemet en optimistisk uppskattning av malfunktionsvardet for den basta tillatna losning (till ursprungliga problemet) som nns i grenen, och den optimistiska uppskattningen ar alltsa bara lokalt giltig (i grenen och nedanfor). Nar ytterligare forgreningar gors, det vill saga ytterligare restriktioner infors, sa blir den optimistiska uppskattningen monotont samre (maximerings-problem: avtagande) med avseende pa djupet i tradet. Ofta soks initialt en bra tillaten losning (och darmed en pessimistisk uppskattning) med hjalp av en heuristik. Darigenom blir soktradet troligen mindre (eftersom grenar kan kapas tidigare). Da inga icke avsokta noder aterstar sa ges optimalvardet av den pessimistiska uppskattningen. For heltalsproblem med andligt manga tillatna losningar sker detta andligt. Tradsokning kan trunkeras, det vill saga avslutas innan hela tradet ar avsokt. Optimalvardet kan da stangas in med hjalp av uppskattningarna. Tradsokning kan kombineras med plansnittning (Branch and Cut).