1 Úvod do celočíselné lineární optimalizace

Podobné dokumenty
Úvod do celočíselné optimalizace

4EK213 Lineární modely. 10. Celočíselné programování

Obecná úloha lineárního programování

Úvod do úloh plánování rozvozu (Vehicle Routing Problems)

Metody lineární optimalizace Simplexová metoda. Distribuční úlohy

13. Lineární programování

Rozhodovací procedury a verifikace Pavel Surynek, KTIML

Aplikovaná numerická matematika - ANM

Učební texty k státní bakalářské zkoušce Matematika Základy lineárního programování. študenti MFF 15. augusta 2008

Celočíselné lineární programování(ilp)

1 Duální simplexová metoda

Numerické metody a programování

Příklady modelů lineárního programování

11. března Výpočet je založen na prohledávání oblasti zahrnující všechna přípustná řešení [1, 2]. Vzhledem

4EK213 LINEÁRNÍ MODELY

Maticí typu (m, n), kde m, n jsou přirozená čísla, se rozumí soubor mn veličin a jk zapsaných do m řádků a n sloupců tvaru:

Matematika 1 MA1. 2 Determinant. 3 Adjungovaná matice. 4 Cramerovo pravidlo. 11. přednáška ( ) Matematika 1 1 / 29

Lineární programování

(Cramerovo pravidlo, determinanty, inverzní matice)

VI. Maticový počet. VI.1. Základní operace s maticemi. Definice. Tabulku

Základy spojité optimalizace

Soustavy linea rnı ch rovnic

Necht tedy máme přirozená čísla n, k pod pojmem systém lineárních rovnic rozumíme rovnice ve tvaru

Kolik existuje různých stromů na pevně dané n-prvkové množině vrcholů?

1. července 2010

Soustavy. Terminologie. Dva pohledy na soustavu lin. rovnic. Definice: Necht A = (a i,j ) R m,n je matice, b R m,1 je jednosloupcová.

4EK213 Lineární modely. 5. Dualita v úlohách LP

Programy pro ˇreˇsen ı ulohy line arn ıho programov an ı 18. dubna 2011

VĚTY Z LINEÁRNÍ ALGEBRY

Numerické metody a programování. Lekce 4

MATICE. a 11 a 12 a 1n a 21 a 22 a 2n A = = [a ij]

fakulty MENDELU v Brně (LDF) s ohledem na disciplíny společného základu (reg. č. CZ.1.07/2.2.00/28.

7. přednáška Systémová analýza a modelování. Přiřazovací problém

1 Determinanty a inverzní matice

6 Simplexová metoda: Principy

OSTRAVSKÁ UNIVERZITA PŘÍRODOVĚDECKÁ FAKULTA [ MOPV ] METODY OPERAČNÍHO VÝZKUMU

4EK201 Matematické modelování. 2. Lineární programování

4EK213 Lineární modely. 12. Dopravní problém výchozí řešení

Co je obsahem numerických metod?

0.1 Úvod do lineární algebry

Studentská soutěžní práce

f ( x) = 5x 1 + 8x 2 MAX, 3x x ,

LDF MENDELU. Simona Fišnarová (MENDELU) Základy lineárního programování VMAT, IMT 1 / 25

Parametrické programování

Základy matematiky pro FEK

Soustava m lineárních rovnic o n neznámých je systém

HODNOST A DETERMINANT MATICE, INVERZNÍ MATICE

4EK212 Kvantitativní management. 2. Lineární programování

HODNOST A DETERMINANT MATICE, INVERZNÍ MATICE

Operace s maticemi. 19. února 2018

Připomenutí co je to soustava lineárních rovnic

Soustavy lineárních rovnic a determinanty

2.6. Vlastní čísla a vlastní vektory matice

4. Trojúhelníkový rozklad p. 1/20

ČTVERCOVÉ MATICE. Čtvercová matice je taková matice, kde počet řádků je roven počtu jejích sloupců. det(a) značíme determinant čtvercové matice A

0.1 Úvod do lineární algebry

Problém lineární komplementarity a kvadratické programování

Otázky ke státní závěrečné zkoušce

4EK311 Operační výzkum. 4. Distribuční úlohy LP část 1

Vektorové podprostory, lineární nezávislost, báze, dimenze a souřadnice

V předchozí kapitole jsme podstatným způsobem rozšířili naši představu o tom, co je to číslo. Nadále jsou pro nás důležité především vlastnosti

Determinanty. Determinanty. Přednáška MATEMATIKA č. 3. Jiří Neubauer

Matematika (CŽV Kadaň) aneb Úvod do lineární algebry Matice a soustavy rovnic

Lineární algebra. Soustavy lineárních rovnic

Kapitola 11: Vektory a matice:

4EK213 Lineární modely. 4. Simplexová metoda - závěr

3 Lineární kombinace vektorů. Lineární závislost a nezávislost

maticeteorie 1. Matice A je typu 2 4, matice B je typu 4 3. Jakých rozměrů musí být matice X, aby se dala provést

Operace s maticemi

DEFINICE Z LINEÁRNÍ ALGEBRY

Čtvercové matice. Čtvercová matice je taková matice, jejíž počet řádků je roven počtu jejích sloupců

MOORE-PENROSEOVA INVERZE MATICE A JEJÍ APLIKACE. 1. Úvod

Matematika 2 pro PEF PaE

α 1 α 2 + α 3 = 0 2α 1 + α 2 + α 3 = 0

4EK213 LINEÁRNÍ MODELY

Zdrojem většiny příkladů je sbírka úloh 1. cvičení ( ) 2. cvičení ( )

0 0 a 2,n. JACOBIOVA ITERAČNÍ METODA. Ax = b (D + L + U)x = b Dx = (L + U)x + b x = D 1 (L + U)x + D 1 b. (i) + T J

Definice 13.1 Kvadratická forma v n proměnných s koeficienty z tělesa T je výraz tvaru. Kvadratická forma v n proměnných je tak polynom n proměnných s

1 Vektorové prostory.

Úlohy k přednášce NMAG 101 a 120: Lineární algebra a geometrie 1 a 2,

ANALÝZA A KLASIFIKACE DAT

1 0 0 u 22 u 23 l 31. l u11

1 Řešení soustav lineárních rovnic

1/10. Kapitola 12: Soustavy lineárních algebraických rovnic

Základy maticového počtu Matice, determinant, definitnost

[1] Determinant. det A = 0 pro singulární matici, det A 0 pro regulární matici

Matematika pro informatiky

INVESTICE DO ROZVOJE VZDĚLÁVÁNÍ. Modernizace studijního programu Matematika na PřF Univerzity Palackého v Olomouci CZ.1.07/2.2.00/28.

Pokročilé matematické modely a metody

VEKTOROVÝ PROSTOR. Vektorový prostor V n je množina všech n-složkových vektorů spolu s operacemi sčítání, odčítání vektorů a reálný násobek vektoru.

Soustavy lineárních rovnic

a + b + c = 2 b + c = 1 a b = a 1 2a 1 + a a 3 + a 5 + 2a 2 + a 2 + a

Arnoldiho a Lanczosova metoda

Přílohy. Příloha 1. Obr. P1.1 Zadání úlohy v MS Excel

Západočeská univerzita v Plzni. Fakulta aplikovaných věd. Ivana Kozlová. Modely analýzy obalu dat

Dnešní látka Opakování: normy vektorů a matic, podmíněnost matic Jacobiova iterační metoda Gaussova-Seidelova iterační metoda

Jedná se o soustavy ve tvaru A X = B, kde A je daná matice typu m n,

Učební texty k státní bakalářské zkoušce Matematika Vlastní čísla a vlastní hodnoty. študenti MFF 15. augusta 2008

II. Úlohy na vložené cykly a podprogramy

SOUSTAVY LINEÁRNÍCH ALGEBRAICKÝCH ROVNIC

Transkript:

Úvod do celočíselné lineární optimalizace Martin Branda, verze 7.. 7. Motivace Reálné (smíšeně-)celočíselné úlohy Optimalizace portfolia celočíselné počty akcií, modelování fixních transakčních nákladů, Rozvrhování binární proměnné přiřazující úlohy ke strojům, Úlohy rozvozu binární proměnné identifikující následníka na cestě vozidla, a mnoho dalších. Nejprve se podíváme na úlohu umístění skladů (facility location problem): i =,..., m potenciální sklady/pobočky (facilities), j =,..., n zákazníci, x ij převezené množství ze skladu i k zákazníkovi j, y i binární rozhodovací proměnné, je-li sklad postaven =, c ij náklady za dodanou jednotku zákazníkovi j ze skladu i, f i fixní náklady na postavení skladu i, K i kapacita skladu i, D j poptávka zákazníka j. Úlohu můžeme formulovat takto min x ij,y i s.t. n m c ij x ij + f i y i j= i m x ij K i y i, i =,..., n, i= j= n x ij = D j, j =,..., m, i= x ij, y i {, }. Účelová funkce udává náklady na převoz a náklady na postavení skladů. První omezení říká, že je-li sklad postaven, dodávky z něj nepřekročí jeho kapacitu; není-li postaven, nemůže z něj být nic dodáno. Druhá omezení zaručují, že je uspokojena poptávka u všech zákazníků. Poslední jsou omezení na rozhodovací proměnné: dodaná množství jsou nezáporná, sklad je buď postaven nebo ne.

Do úlohy je možné doplnit další logická omezení, např. že je postaven nejvýše jeden ze skladů {i, i, i }: y i + y i + y i, nebo buď je postavena dvojice skladů {i, i } nebo žádný. Obecné vlastnosti úloh Uvažujme obecnou celočíselnou úlohu y i = y i. min c T x () Ax b, () x Z n +. () Předpokládáme, že všechny koeficienty v úloze jsou celočíselné, resp. racionální. Označíme množinu přípustných řešení a její relaxaci S = {x Z n + : Ax b}, () P = {x R n + : Ax b}. () Zřejmě platí S P. Netriviální je následující vztah mezi množinami Obrázek množiny Původní celočíselná úloha S conv(s) P. x + x, () x + x 7, (7) x, x Z n +. (8) min c T x : x S (9) je ekvivalentní následující úloze lineární programování (bez celočíselnosti) min c T x : x conv(s), () viz obrázek. Zkonstruovat explicitní vyjádření conv(s) je však prakticky velice náročné, je nutné velké množství tzv. silných řezů, tedy obvykle prakticky nepoužitelné. Je možné ukázat ext(conv(s)) P, extd(conv(s)) = extd(p ). V praktických úlohách, viz Motivace, se obvykle vyskytují zároveň celočíselné a reálné rozhodovací proměnné. Dostáváme pak úlohu smíšeného-celočíselného programování (mixed-integer programming) min c T x + d T y s.t. Ax + By b, x Z n +, y R n +.

Obrázek : Celočíselná množina S (kříže), relaxace P (červená) a konvexní obal conv(s) (modrá) x x x x. Metoda větvení a mezí (Branch and Bound) Základní metodou pro řešení úloh s celočíselností je metoda větvení a mezí, kde v každém kroku (uzlu stromu) řešíme reálnou lineární úlohu (bez celočíselnosti). Nalezení celočíselného optimálního řešení původní úlohy se snažíme zaručit pomocí následujících iterativních kroků: Vyřešte úlohu LP z fronty (na počátku fronta obsahuje relaxovanou úlohu). Větvení (branching): obsahuje-li optimální řešení neceločíselnou složku, např. ˆx i, vytvořte dvě nové úlohy tak, že přidáme do úlohy předešlé právě jedno z následujících omezení x i ˆx i, x i ˆx i. Omezení (bounding): pamatuj si dosud nejlepší (tj. s nejmenší hodnotou účelové funkce) nalezené celočíselné řešení. Je-li optimální hodnota LP úlohy horší (vyšší) než nejlepší dosud nalezená pro celočíselné řešení, nové větve nevytvářej optimální hodnota by se nezlepšila. Nevětvi ani LP úlohu s celočíselným řešením. Příklad min x + x () Strom reprezentující průběh algoritmu najdeme na obrázku. x + x, () x + x 7, () x, x Z n +. () Branch-and-bound obvykle na reálných větších úlohách nekončí vyprázdněním fronty, ale buď vyčerpáním časového limitu, například hodina, nebo dosažením požadovaného

uzel x =.8 x =.8 ˆf =. x x Obrázek : Metoda větvení a mezí uzel x = x ˆf = = uzel x = x =.7 ˆf =.7 x x uzel x = x = ˆf = uzel x = x = ˆf = x Obrázek : Branch and bound rozklad množiny S x x x

rozdílu mezi dolní a horní mezi na optimální hodnotu. Tyto meze postupně aktualizujeme v průběhu výpočtu, kde dolní mez: LP relaxace, dualita, horní mez: přípustné celočíselné řešení s nejmenší hodnotou účelové funkce.. Další metody řešení Existuje velké množství dalších metod vhodných pro celočíselné úlohy, uvádíme pouze přehled (více Výpočetní aspekty optimalizace:) Metoda sečných nadrovin (cutting plane method) generování řezů (valid inequalities) vedoucí k aproximaci conv(s), řezy odřezávají pouze prvky z P, které nejsou v S Dynamické programování Metoda generování sloupců (columnn generation) Heuristiky (konstrukční heuristiky, tabu search, genetické algoritmy)... Předešlé algoritmy jsou obvykle kombinovány s branch-and-bound, dostaneme tedy například branch-and-cut.. Totální unimodularita Můžeme se setkat s úlohami se speciálním tvarem, které je možné řešit přímo pomocí lineárního programování, kdy při celočíselném vektoru pravých stran existuje celočíselné optimání řešení. Definice. Matice A je totálně unimodulární (TU), jestliže je determinant každé její čtvercové podmatice roven +, -, nebo. Je-li vektor pravých stran b celočíselný, potom je každé bazické řešení celočíselné. Máli tedy úloha optimální řešení, potom existuje celočíselné optimální bazické řešení. Pro každou regulární čtvercovou podmatici B matice omezení (A I) můžeme odvodit inverzní matici tak, že pro její prvky platí (B ) ij = ( ) i+j B ji B, kde matice B ji vznikne z B vynecháním řádku j a sloupce i. Všechny prvky inverzní matice jsou tedy celočíselné, proto je i každé bazické řešení B b celočíselné. Je-li A is TU, potom i A T, A a (A I) je TU.

Postačující podmínkou pro totální unimodularitu je například, obsahuje-li každý sloupec matice právě jeden prvek +, právě jeden - a ostaní jsou nulové. Není to však nutná podmínka: Použít na dopravní problém. Reference [] Wolsey LA (998). Integer programming. Wiley-Interscience series in discrete mathematics and optimization, J. Wiley & sons, New York (N.Y.), Chichester, Weinheim..