Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

EGÉSZÉRTÉKŰ PROGRAMOZÁS 2014. 07. 23.Varró Zoltán1 Modellezés A szétválasztás és korlátozás módszere.

Hasonló előadás


Az előadások a következő témára: "EGÉSZÉRTÉKŰ PROGRAMOZÁS 2014. 07. 23.Varró Zoltán1 Modellezés A szétválasztás és korlátozás módszere."— Előadás másolata:

1 EGÉSZÉRTÉKŰ PROGRAMOZÁS Varró Zoltán1 Modellezés A szétválasztás és korlátozás módszere

2 Modellezés A változók (vagy egy részük) csak nemnegatív egész értékeket vehetnek fel. A bináris változók lehetséges értékei 0 vagy 1. Az LP modell optimális megoldását kerekítve gyakran – nem lehetséges megoldást kapunk, – a kapott lehetséges megoldás nem optimális Varró Zoltán2

3 Fix költségek modellezése Ha x i > 0, akkor s i fix költség lép fel. Feltételek: x i  M i y i y i = 0 vagy 1 ahol M i az x i változó egy felső korlátja. Célfüggvény: max z = c 1 x c n x n – s i y i min z = c 1 x c n x n + s i y i Varró Zoltán3

4 Telepítési probléma Szállítási feladat: min z = c 11 x 11 + c 12 x c mn x mn x x 1n ≤ s 1 x x m1 ≥ d 1... x m x mn ≤ s m x 1n x mn ≥ d n x ij ≥ 0 (i = 1,..., m; j = 1,..., n) Varró Zoltán4

5 Telepítési probléma min z = c 11 x 11 + c 12 x c mn x mn + + f 1 y f m y m x x 1n ≤ s 1 y 1 x x m1 ≥ d 1... x m x mn ≤ s m y m x 1n x mn ≥ d n x ij ≥ 0 (i = 1,..., m; j = 1,..., n). y i = 0 vagy 1 (i = 1,..., m) Varró Zoltán5 Ha x ij > 0, akkor y i = 1.

6 „Vagy - vagy” feltétel Két feltétel közül legalább egyik teljesüljön: a 1 x  b 1 a 2 x  b 2 Feltételek: a 1 x  b 1 + My a 2 x  b 2 + M(1 − y) ahol M az a 1 x és a 2 x függvények közös felső korlátja Varró Zoltán6

7 „Vagy - vagy” feltétel Vagy x = 0 vagy x  d teljesüljön. Feltételek: x  My x  dy x  0, y = 0 vagy 1 ahol M az x egy felső korlátja Varró Zoltán7

8 „Ha – akkor” feltétel Ha a 1 x > b 1, akkor a 2 x  b 2 teljesüljön. A feltételrendszer: a 1 x  b 1 + My a 2 x  b 2 − M(1 − y), ahol M az a 1 x és a 2 x függvények közös felső korlátja és y = 0 vagy Varró Zoltán8

9 „Ha – akkor” feltétel Ha x i > 0, akkor x j  d teljesüljön. A feltételrendszer: x i  M y x j  d − M(1 − y) x i, x j  0, y = 0 vagy 1 ahol M  d az x i egy felső korlátja Varró Zoltán9

10 EP feladatok megoldása Egy EP feladat LP lazítását úgy kapjuk, hogy nem követelünk meg egészértékűséget a változóktól. Ha az LP lazítás optimális megoldása egész, akkor megkaptuk az egészértékű feladat optimális megoldását Varró Zoltán10

11 EP feladatok megoldása Az LP lazítás optimális célfüggvényértéke legalább olyan jó, mint az EP feladaté. Ha az LP lazításnak nincs megengedett megoldása, akkor az EP-nek sincs. Lehetséges, hogy az EP megoldás-halmaza üres, az LP lazításé viszont nem korlátos Varró Zoltán11

12 EP feladatok megoldása Varró Zoltán12 5x 1 – 5x 2 ≤ 4 10x 1 – 10x 2 ≥ 3 x1x1 max z = x 1 + x 2 x2x2 A célfüggvény nem korlátos

13 Az SZK módszer A szétválasztás arra utal, hogy az EP feladatot részfeladatokra bontjuk. A részfeladatok – célfüggvénye azonos az EP feladatéval, – lehetséges megoldásainak halmaza részhalmaza az EP feladaténak Varró Zoltán13

14 Az SZK módszer A korlátozás azt jelenti, a részfeladatok optimális célfüggvényértékére az LP lazítás megoldásával korlátot határozunk meg. A korlát alapján döntjük el, hogy érdemes-e egy részfeladatot felbontani Varró Zoltán14

15 Az SZK módszer Ha az LP lazítás optimális megoldásában az x j változó optimális értéke x j , akkor két részfeladatot képezünk az alábbi feltételek csatolásával: – 1. részfeladat: x j   x j   – 2. részfeladat: x j   x j   + 1. Célszerű azt a tört értékű változót választani, amelynek törtrésze a legnagyobb Varró Zoltán15

16 Az SZK módszer A legjobb korlát stratégiával azt a rész- feladatot bontjuk fel, amelynek korlátja a legjobb megoldást ígéri. A kapott részfeladatok LP lazítását azonnal megoldjuk, azaz két ágat képezünk Varró Zoltán16

17 Az SZK módszer A LIFO (last in first out) stratégiával a legutolsó két részfeladat egyikét bontjuk fel. A kapott részfeladatok egyikének LP lazítását oldjuk meg azonnal, azaz csak egy ágat képezünk. A másikat később vizsgáljuk Varró Zoltán17

18 Az SZK módszer Egy részfeladatot lezárunk, ha az LP lazítás: – lehetséges megoldásainak halmaza üres. – optimális megoldása egészértékű. – optimális célfüggvényértékének egészrésze nem jobb az addig talált legjobb egészértékű megoldás célfüggvényértékénél Varró Zoltán18

19 Az SZK módszer EP feladat: max z = 2x 1 + 3x 2 − 2x 1 + 5x 2  10 4x 1 + 3x 2  24 x 1, x 2  0, egész LP lazítása: max z = 2x 1 + 3x 2 − 2x 1 + 5x 2  10 4x 1 + 3x 2  24 x 1, x 2  Varró Zoltán19

20 Legjobb korlát stratégia Varró Zoltán20 4x 1 + 3x 2 ≤ 24 −2x 1 + 5x 2 ≤ 10 max z = 2x 1 + 3x 2 Az LP lazítás optimális megoldása: x 1 = 3,46 x 2 = 3,38 Az EP megoldásai.

21 Legjobb korlát stratégia Varró Zoltán21 x 1 ≥ 4 x1 ≤ 3x1 ≤ 3

22 Legjobb korlát stratégia Varró Zoltán22 z = 15,6 z = 16 > 15,6 Ezt a részfeladatot bontjuk fel.

23 Legjobb korlát stratégia Varró Zoltán23 x 1 ≥ 4 x 2 ≥ 3  L =  x 1 ≥ 4 x 2 ≤ 2 z = 15 z = 15,6

24 Legjobb korlát stratégia Varró Zoltán24 x 1 ≤ 3 x 2 ≥ 4  L =  x 1 ≤ 3 x 2 ≤ 3

25 Legjobb korlát stratégia Varró Zoltán25 Az EP optimális megoldása: x 1 = 3, x 2 = 3 és z = 15 z = 15 Nem érdemes felbontani.

26 Legjobb korlát stratégia Varró Zoltán26  3,46 ; 3,38  z = 17,06  3 ; 3,2  z = 15,6  4 ; 2,67  z = 16 x 1 ≤ 3x 1 ≥ 4 max z = 2x 1 + 3x 2 − 2x 1 + 5x 2 ≤ 10 4x 1 + 3x 2 ≤ 24 x 1 ≤ 3 x 1, x 2 ≥ 0 max z = 2x 1 + 3x 2 − 2x 1 + 5x 2 ≤ 10 4x 1 + 3x 2 ≤ 24 x 1 ≥ 4 x 1, x 2 ≥ 0

27 Legjobb korlát stratégia Varró Zoltán27  3,46 ; 3,38  z = 17,06  3 ; 3,2  z = 15,6  4 ; 2,67  z = 16 x 1 ≤ 3x 1 ≥ 4 Az LP lazítás optimális megoldásában az a változó, amelyre korlátot szabtunk, a korlát értékét veszi fel.

28 Legjobb korlát stratégia Varró Zoltán28 x 2 ≥ 3x 2 ≤ 2  3,46 ; 3,38  z = 17,06  3 ; 3,2  z = 15,6  4 ; 2,67  z = 16  4,5 ; 2  z = 15 L =  x 1 ≤ 3x 1 ≥ 4

29 Legjobb korlát stratégia Varró Zoltán29 x 2 ≥ 3x 2 ≤ 2x 2 ≥ 4x 2 ≤ 3  3,46 ; 3,38  z = 17,06  3 ; 3,2  z = 15,6  4 ; 2,67  z = 16  3 ; 3  z = 15 L =  4,5 ; 2  z = 15 L =  x 1 ≤ 3x 1 ≥ 4

30 Legjobb korlát stratégia Varró Zoltán30  3.46 ; 3.38  z =  3 ; 3.2  z = 15.6  4 ; 2.67  z = 16  3 ; 3  z = 15 L =  4.5 ; 2  z = 15 L = 

31 LIFO stratégia Varró Zoltán31  3,46 ; 3,38  z = 17,06  3 ; 3,2  z = 15,6 x 1  3

32 LIFO stratégia Varró Zoltán32 x 2  3  3,46 ; 3,38  z = 17,06  3 ; 3,2  z = 15,6  3 ; 3  z = 15 x 1  3 max z = 2x 1 + 3x 2 − 2x 1 + 5x 2 ≤ 10 4x 1 + 3x 2 ≤ 24 x 1 ≤ 3 x 2 ≤ 3 x 1, x 2 ≥ 0

33 LIFO stratégia Varró Zoltán33 x 2  4x 1  3  3,46 ; 3,38  z = 17,06  3 ; 3,2  z = 15,6  3 ; 3  z = 15 L =  x 1  3 max z = 2x 1 + 3x 2 − 2x 1 + 5x 2 ≤ 10 4x 1 + 3x 2 ≤ 24 x 1 ≤ 3 x 2 ≥ 4 x 1, x 2 ≥ 0

34 LIFO stratégia Varró Zoltán34 x 2  4  3,46 ; 3,38  z = 17,06  3 ; 3,2  z = 15,6  4 ; 2,67  z = 16 L =  x 1  3x 1  4

35 LIFO stratégia Varró Zoltán35  3,46 ; 3,38  z = 17,06  4 ; 2,67  z = 16  4,5 ; 2  z = 15 L =  x 2  2x 2  3 x 1  4

36 LIFO stratégia Varró Zoltán36  3.46 ; 3.38  z =  3 ; 3.2  z = 15,6  4 ; 2.67  z = 16  3 ; 3  z = 15 L =  4.5 ; 2  z = 15 L = 

37 Bináris hátizsák feladat max z = c 1 x 1 + c 2 x c n x n (c j > 0) a 1 x 1 + a 2 x a n x n  b (a j > 0) x 1, x 2,..., x n = 0 vagy Varró Zoltán37

38 Az LP lazítás megoldása max z = c 1 x 1 + c 2 x c n x n (c j > 0) a 1 x 1 + a 2 x a n x n  b (a j > 0) x 1, x 2,..., x n = 0 vagy 1 Rendezzük a tárgyakat csökkenő c i /a i hányadosok szerint. A fenti sorrendben tegyük a tárgyakat a hátizsákba. Ha egy tárgy nem fér bele, akkor vegyük akkora tört részét, hogy a hátizsák pontosan tele legyen Varró Zoltán38

39 Az LP lazítás megoldása Rendezzük a változókat: Keressük meg azt az indexet, amelyre, de Az optimális megoldás: Varró Zoltán39

40 A hátizsák feladat megoldása Az LP lazítás optimális megoldásában csak egy változó értéke tört. A tört értékű változó 0 és 1 értékű rögzítésével két részfeladatot képezünk. Mind a legjobb korlát, mind a LIFO stratégia alkalmazható Varró Zoltán40

41 Legjobb korlát stratégia max 60x x x x x x 6 + 3x 7 30x x x x x x x 7  100 x i = 0 vagy 1 (i = 1, 2,..., 7) A változók már csökkenő c i /a i szerint rendezettek. Az LP lazítás optimális megoldása: x =  1, 1, ½, 0, 0, 0, 0  Varró Zoltán41

42 Legjobb korlát stratégia Varró Zoltán x 3 = 0 x 3 =  1, 1, 0, 1, 1/4, 0, 0   1, 3/5, 1, 0, 0, 0, 0 

43 Legjobb korlát stratégia Varró Zoltán x 3 = 0 x 3 = x 2 = 0 x 2 =  1, 0, 1, 1, 1/2, 0, 0   1/3, 1, 1, 0, 0, 0, 0   1, 1, 0, 1, 1/4, 0, 0 

44 Legjobb korlát stratégia Varró Zoltán x 3 = 0 x 3 = x 2 = 0 x 2 = 1 x 5 = 0 x 5 = ,33  1, 1, 0, 1, 0, 1/3, 0   1, 3/5, 0, 0, 1, 0, 0  116

45 Legjobb korlát stratégia Varró Zoltán x 3 = 0 x 3 = x 2 = 0 x 2 = 1 x 5 = 0 x 5 = 1 x 6 = 0 x 6 = ,  1, 1, 0, 1, 0, 0, 1  Ez az első egészértékű megoldás. Az ágat lezárjuk.

46 Legjobb korlát stratégia Varró Zoltán x 3 = 0 x 3 = x 2 = 0 x 2 = 1 x 5 = 0 x 5 = 1 x 6 = 0 x 6 = ,  1, 1, 0, 1, 0, 0, 1   1, 4/5, 0, 0, 1, 0, 0  Ez az első egészértékű megoldás.

47 Legjobb korlát stratégia Varró Zoltán x 3 = 0 x 3 = x 2 = 0 x 2 = 1 x 5 = 0 x 5 = 1 x 6 = 0 x 6 = ,  1, 1, 0, 1, 0, 0, 1  Egyik ágon sem kaphatunk jobb megoldást, ezért mind lezárható.

48 LIFO stratégia Varró Zoltán x 3 = x 5 = 0 x 6 = ,  1, 1, 0, 1, 0, 0, 1  Először mindig a bal oldali ágat vizsgáljuk.  1, 1, 0, 1, 1/4, 0, 0   1, 1, 0, 1, 0, 1/3, 0  Egészértékű megoldást kaptunk, ezért lezárjuk az ágat és ágat cserélünk.

49 LIFO stratégia Varró Zoltán x 3 = x 5 = 0 x 6 = 0 x 6 = ,  1, 4/5, 0, 0, 1, 0, 0  Nem ígér jobb megoldást, ezért ágat cserélünk.

50 LIFO stratégia Varró Zoltán x 3 = x 5 = 0 x 5 = 1 x 6 = 0 x 6 = ,  1, 3/5, 0, 0, 1, 0, 0  Nem kaphatunk jobb megoldást, ezért az ágat lezárjuk.

51 LIFO stratégia Varró Zoltán x 3 = 0 x 3 = x 5 = 0 x 5 = 1 x 6 = 0 x 6 = ,  1, 3/5, 1, 0, 0, 0, 0  Esélyünk van jobb megoldásra, ezért ágaztatunk.

52 LIFO stratégia Varró Zoltán x 3 = 0 x 3 = x 2 = 0 x 5 = 0 x 5 = 1 x 6 = 0 x 6 = ,  1, 0, 1, 1, 1/2, 0, 0  Nem kaphatunk jobb megoldást, ezért ágat cserélünk.

53 LIFO stratégia Varró Zoltán x 3 = 0 x 3 = x 2 = 0 x 2 = 1 x 5 = 0 x 5 = 1 x 6 = 0 x 6 = ,  1/3, 1, 1, 0, 0, 0, 0  Ezt az ágat is lezárhatjuk.

54 LIFO stratégia Varró Zoltán x 3 = 0 x 3 = x 2 = 0 x 2 = 1 x 5 = 0 x 5 = 1 x 6 = 0 x 6 = , Az optimális megoldás:  1, 1, 0, 1, 0, 0, 1 

55 Munkák ütemezése MunkaMegmunkálásHatáridő időtartama A68 B44 C512 D Varró Zoltán55 Milyen sorrend esetén lesz a késések összege minimális?

56 Munkák ütemezése A feladatot 4 részfeladatra bontjuk. i-edik részfeladat: Mennyi a késések összegének minimuma, ha az i-edik munkát végezzük el negyediknek? Minden részfeladatban alsó korlátot határozunk meg a késések összegére. Azt a részfeladatot bontjuk fel, amelyiknek legkisebb a korlátja Varró Zoltán56

57 Munkák ütemezése Varró Zoltán A megmunkálási idők összege 23. A késések összege legalább 15ha az A munka a 4. 19ha a B munka a 4. 11ha a C munka a 4. 7ha a D munka a 4.

58 Munkák ütemezése Varró Zoltán A 4. részfeladatot bontjuk fel: a D munka a 4. Legalább mekkora lesz a késés, ha a D munka a 4. és Aa 3. munka? Ba 3. munka? Ca 3. munka?

59 Munkák ütemezése Varró Zoltán A késések összege legalább 14ha az A munka a 3. 18ha a B munka a 3. 10ha a C munka a 3.

60 Munkák ütemezése Varró Zoltán Az alsó korlát akkor a legkisebb, ha C a 3. munka, és D a 4. munka. Hat részfeladat alsó korlátja közül választjuk a legkisebbet.

61 Munkák ütemezése Varró Zoltán A késések összege 12a B – A – C – D sorrendnél 16az A – B – C – D sorrendnél.

62 Munkák ütemezése Varró Zoltán Meg kell vizsgálni azt a részfeladatot, ahol C a 4. munka, mert az alsó korlát csak 11.

63 Munkák ütemezése Varró Zoltán Minden korlát nagyobb 12-nél, ezért a keresést lezárhatjuk. Optimális sorrend: B – A – C – D


Letölteni ppt "EGÉSZÉRTÉKŰ PROGRAMOZÁS 2014. 07. 23.Varró Zoltán1 Modellezés A szétválasztás és korlátozás módszere."

Hasonló előadás


Google Hirdetések