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

OPERÁCIÓKUTATÁS TÖBBCÉLÚ PROGRAMOZÁS. Operáció kutatás Több célú programozás A * x  b C T * x = max, ahol x  0. Alap összefüggés: C T 1 * x = max C.

Hasonló előadás


Az előadások a következő témára: "OPERÁCIÓKUTATÁS TÖBBCÉLÚ PROGRAMOZÁS. Operáció kutatás Több célú programozás A * x  b C T * x = max, ahol x  0. Alap összefüggés: C T 1 * x = max C."— Előadás másolata:

1 OPERÁCIÓKUTATÁS TÖBBCÉLÚ PROGRAMOZÁS

2 Operáció kutatás Több célú programozás A * x  b C T * x = max, ahol x  0. Alap összefüggés: C T 1 * x = max C T 2 * x = max C T k * x = max …. A  feltételi egyenlőség együttható x  változók vektora b  kapacitás vektor C T i  célfüggvény együtthatók

3 Operáció kutatás Több célú programozás Módszerek: 1.Szekvenciális optimalizálás 2.Súlyozás módszere: g(x) = t 1 ·C 1 ·x + t 2 ·C 2 ·x +…..+ t k ·C k ·x g(x) - Eredő célfüggvény t i - súlyok

4 Operáció kutatás Több célú programozás x 1 + x 2 + x 4  100 x 2 + x 3  80 x 1 + x 2 + x 3  50 z 1 = 2x 1 + 3x 2 + 2x 3 + 2x 4 = max z 2 = 4x 1 + 6x 2 + 5x 3 + 4x 4 = max z 3 = x 1 - 5x 2 - x 3 + 3x 4 = min Kapacitás  Példafeladat megoldása szekvenciális optimalizálási módszerrel: Termék  f=[2, 3, 2, 2]  fedezeti összeg vektor á = [4, 6, 5, 4]  árbevétel vektor s = [1, 5, 1, 3]  költségek vektora Mivel ez minimum, ezért be kell szorozni –1-gyel, hogy maximumot kapjunk, így írhatjuk az induló táblába: -z 3 = -x 1 - 5x 2 - x 3 - 3x 4 = max.

5 Több célú programozás Szekvenciális optimalizálás A feladat induló táblája: x1x1 x2x2 x3x3 x4x4 I u1u1 u3u3 u2u2 b -z 2 -z 1 z3z Generáló elem választás: -z 1 sor legnagyobb eleme fölött (3-as) -Legszűkebb keresztmetszet (100:1=100;80:1=80;50:1=50) - generáló elem: u3 sorában álló 1-es - báziscsere: x 2 és u 3 x 1 + x 2 + x 4  100 x 2 + x 3  80 x 1 + x 2 + x 3  50 z 1 = 2x 1 + 3x 2 + 2x 3 + 2x 4 = max z 2 = 4x 1 + 6x 2 + 5x 3 + 4x 4 = max z 3 = x 1 + 5x 2 + x 3 + 3x 4 = min

6 A feladat 2. táblája: x1x1 u3 u3 x3x3 x4x4 I I. u1u1 x2x2 u2u2 b -z 2 -z 1 z3z Generáló elem választás: -z 1 sor legnagyobb pozitív eleme fölött (ez most a 2) -Csak az 1-est választhatjuk, mert a generáló elem nem lehet 0. Több célú programozás Szekvenciális optimalizálás x 1 x 2 x 3 x 4 I. u1u1 u3u3 u2u2 b -z 2 -z 1 z3z

7 A feladat 3. táblája: x1x1 u3 u3 x3x3 u1u1 I I I. x4x4 x2x2 u2u2 b -z 2 -z 1 z3z Generáló elem választás: - z 1 sor legnagyobb pozitív eleme fölött (ez most az 1-es) - Csak az egyetlen pozitív számot az 1-est választhatjuk x 1 u 3 x 3 x 4 I I. u1u1 x2x2 u2u2 b -z 2 -z 1 z3z Több célú programozás Szekvenciális optimalizálás

8 A feladat 4. táblája: x1x1 u3 u3 x2x2 u1u1 IV x4x4 x3x3 u2u2 b -K 2 -K 1 K3K Nem lehet tovább generálni, mert a z 1 függvényt nem ronthatom és minden értéke negatív lett. Ha lenne közte 0 és a z 2 - ben pozitív, akkor folytatni lehetne, mert akkor a z 1 -et még nem rontjuk. A z 1 a z 2 függvény egyszerre veszi fel az optimumát, a z 3 nem, mert azt még lehetne javítani, de ha ez szerint generálunk, akkor a z 1 a z 2 függvény romlik. Megoldás: x =[0, 0, 50, 100] Több célú programozás Szekvenciális optimalizálás

9 -x 1 + x 2  3 x 1 + x 2  8 x 1  6 x 2  4 Több célú programozás Súlyozás módszere Példafeladat: f 1 (x) = 5x 1 - 2x 2 =max f 2 (x) = -x 1 + 4x 2 =max g(x) = 1. f 1 (x) + 1. f 2 (x) = 4x 1 + 2x 2 = max A feladat grafikusan: Azonos súllyal szerepel mindkét célfüggvény

10 A feladat induló táblája: x1x1 x2 x2 v5v5 v6v6 I u1u1 u3u3 u2u2 b u5u5 u4u4 u6u z Rajz kijelölt területe alapján kiválasztunk egy pontot, legyen ez a (3,4), ha azt mondom hogy ez megoldás, akkor ezeknél feltételként tudom alkalmazni. [5,-2]  [3,4] T =7 és [-1,4]  [3,4] T =13, ezeket tekintjük alsó korlátnak. 5x 1 - 2x 2  7 /  -1  -5x 1 + 2x 2  7 -x 1 + 4x 2  13 /  -1  x 1 - 4x 2  13 z = 4x 1 + 2x 2 =max Ezáltal bevezetünk u 5, u 6, v 5, v 6 változókat. Generáló elem: 4-es fölött választjuk az 5-öst. Több célú programozás Súlyozás módszere

11 A feladat 2. táblája: u5 u5 x2 x2 v5v5 v6v6 I u1u1 u3u3 u2u2 b x1x1 u4u4 u6u6 1/5 -2/5 -1/5 0 7/5 1/5 0 -1/5 2/5 1/ /5 18/5 -1/5 1/51/5 3/5 -1/5 0 22/5 33/5 23/5 72/5 7/5 4 -z-4 /5 18/5 4/ /5 Generáló elem: 18/5 -ös fölött választjuk az 18/5 -öt. Több célú programozás Súlyozás módszere

12 A feladat 3. táblája: u5 u5 u6 u6 v5v5 v6v6 I I I u1u1 u3u3 u2u2 b x1x1 u4u4 x2x2 2/9 1/9 -2/9 -1/9 -5/18 -7/18 5/18 -7/18 -2/9 -1/9 2/9 1/91/9 1/18 -5/18 1/18 5/18 1/18 5/18 -1/18 - 5/18 1/61/6 -1/6 1/61/ K x 1 = [3,4] K=20 Mindazon pontok, amik beleesnek ebbe a tartományba, megoldásai ennek a függvénynek, de van 1 olyan pont ami a legjobb megoldást adja. Ezt efficiens pontnak nevezzük, azaz eleme a tartománynak (feltételrendszernek megfelel), de visszahelyettesítve a függvénybe, minden másnál legalább 1 esetben nagyobb.Pl: ha x 2 = [4,4], akkor K 2 =24. Több célú programozás Súlyozás módszere


Letölteni ppt "OPERÁCIÓKUTATÁS TÖBBCÉLÚ PROGRAMOZÁS. Operáció kutatás Több célú programozás A * x  b C T * x = max, ahol x  0. Alap összefüggés: C T 1 * x = max C."

Hasonló előadás


Google Hirdetések