Professional Documents
Culture Documents
Matek 7 Linearis Programozas
Matek 7 Linearis Programozas
1.1 Operációkutatás
• A második világháború alatt alakult ki
Főbb területei:
• lineáris programozás
• készletgazdálkodás
• hálózati problémák
• sorbanállási problémák
• tömegkiszolgálási problémák
• szimuláció
1.2 Modellezés
1. A vizsgálat tárgyát képző tevékenységet felbontjuk véges sok, ún. elemi
tevékenységre.
Definı́ció. Elemi tevékenység: Teljes tevékenységnek az a pontosan
körülhatárolt része melyet már nem szándékozunk tovább bontani:
E1 , E2 , . . . , En .
Példa: Termelési feladat: Adott egy műhely, amely asztalokat, székeket, és
szekrényeket gyárt. A gyártás során kétféle anyagot használnak fel, egyfajta
1
lemezt, és egyfajta deszkát. Ezek korlátozott mennyiségben állnak rendelkezésre.
Feladat: olyan termék összetétel meghatározása, amely mellett a műhely ny-
eresége maximális.
Elemi tevékenységek kiválasztása:
• Egy asztal gyártása → x1
l1 · x 1 + l2 · x 2 + l3 · x 3 ≤ l
d1 · x1 + d2 · x2 + d3 · x3 ≤ d
c1 · x1 + c2 · x2 + c3 · x3 = z → max
2
2 Lineáris programozás
Definı́ció. Az olyan többváltozós feltételes szélsőérték feladatot mely során
z : Rn → R lineáris függvény szélsőértékét keressük egy, vagy több lineáris
feltétel teljesülése mellett, lineáris programozási feladatnak (LP-feladatnak)
nevezzük. A z függvényt, amelynek szélsőértékét keressük célfüggvénynek
nevezzük.
Definı́ció. Az Rn tér azon pontjainak összessége, melyek az LP-feladat minden
feltételét kielégı́tik, a feladat lehetésges megoldásainak halmaza, melyet
L-lel jelölünk. (Talán lambda? vagy L?)
3 LP feladat alakjai
3.1 Standart alak
Definı́ció. Egy LP feladat standart alakú, ha
• feltételrendszere csak ≤ relációkat tartalmaz
• a változók csak nemengatı́v értékeket vehetnek fel
• a célfüggvény maximumát keressük
Tétel. Minden LP-feladat standart alakúra hozható
• Ha minimum feladatról van szó, akkor a célfüggvény (−1)-szeresét fogjuk
vizsgálni.
• Ha valamelyik feltétel ≥ relációval adott, helyette a (−1)-szeresét vesszük.
• Ha egy feltételben egyenlőség szerepel, azaz
ai1 x1 + ai2 x2 + · · · + ain xn = bi
akkor azt helyettesı́thetjük két egyenlőtlenséggel:
ai1 x1 + ai2 x2 + · · · + ain xn ≤ bi
ai1 x1 + ai2 x2 + · · · + ain xn ≥ bi
3
3.2 Kanonikus alak
Definı́ció. Egy LP-feladat kanonikus alakú, ha
• feltételrendszere csak = relációkat tartalmaz
4
4 Lineáris programozási feladatok megoldása
4.1 Grafikus
5
1. A k-adik sor minden elemét osszuk le vk -val (a w esetében az új k-adik
koordináta tehát wk′ = wvkk )
2·3
Ha az a2 , e2 metszetében lévő elemet (2) nézzük. 2 − 1 = −4
4.3.2 Megoldás
Szimplex tábla készı́tése a standart alak alapján.
A szimplex tábla elemei az alábbiak szerint változnak:
• A pivot elem helyére a reciprokát ı́rjuk
• A pivot elem sorában minden elemet elosztunk a pivotelemmel
6
5 Egészértékű programozási feladat (EP-feladat)
Előfordulhat olyan model, hogy az LP feladatban a változók csak egész értékeket
vehetnek fel. Ha az LP-feladat feltételrendszerében
• minden változó egészértékű ⇒ (tiszta) egészértékű
• a változók egy része egészértékű ⇒ vegyes egészértékű
• minden változó csak 0 és 1 lehet ⇒ bináris egészértékű
feladatról beszélünk
7
Az (EP) feladat (Pk ) részfeladatán a
c · x = z → max (x ∈ LPk )
feladatot értjük
Tétel Legyen a (Pk ) részfeladat LP lazı́tásának optimális megoldásában xj
változó optimális értéke x∗j
• Ha a (Pk1 ) részfeladatot az xj ≤ [x∗j ] feltétel csatolásával kapjuk, akkor a
(Pk1 ) LP lazı́tásának optimális megoldásában xj értéke [x∗j ]
8
Definı́ció. Standart alakú LP-feladat duál feladata:
Ax ≤ b yA ≥ c
x ≥ θn (P ) ⇒ y ≥ θ m
(D)
c · x = z → max
y · b = w → min
(P) (D)
célfüggvény maximum feladat minimum feladat célfüggvény
≤ bi yi ≥ 0
feltételek = bi yi előjelkötetlen változók
≥ bi yi ≤ 0
xj ≥ 0 ≥ cj
változók xj előjelkötetlen = cj feltételek
xj ≤ 0 ≤ cj
9
Tétel. Farkas-lemma
c · x ≥ 0 teljesül ∀x ∈ Rn , melyre
yA = c-nek létezik
⇔
y ≥ θm megoldása Ax ≥ θm
10
• Minden város esetében ismert a kı́nálat, és a kereslet különbsége bi , ha
bi > 0 akkor töblet árú van.
• Feltételezzük, hogy a nettó összkereslet megegyzeik a nettó összkı́nálattal
• Így a nettó kı́nálattal rendelkező városokból az árút át kell szállı́tani oda
ahol kereslet van
• A városokat egy gráf csúcsaival szemléltetjük
• Ahol lehetséges két véros között a szállı́tás, oda irányı́tott éleket rajzolunk
• Az adott élen való szállı́tás fajlagos költségéet az él fölé ı́rt számmal
jelöljük (ci )
• bi értékeit a csúcsok fölé ı́rjuk
• Célunk, hogy a vérosok igényeit kielégı́tsük úgy, hogya a szállı́tási költség
minimális legyen
7.2 Megoldás
Tétel A primál feladat egy lehetséges megoldása akkor és csak akkor optimális,
ha
∀xij > 0 esetén yi − yj = cij
A primál feladat egy lehetséges megoldásának optimalitásának szükséges és
elégéséges feltétele az, hogy minden xij nem-bázisváltozóra cij = yi −yj −cij ≤ 0
A cij értéket az ij él redukált költségének nevezzük Alapötlet:
• Tekintsünk egy primál lehetséges megoldást
• A komplementeritási feltétel alapján meghatározzuk a duál változók egy
értékrendszerét
11
• A feszı́tőfa éleihez tartozó folyamértékek a bázisváltozók aktuális értékei
• At yi − yj = cij feltételek segı́tségével a duál változók egy értékrendszerét
meghatározzuk
• Egyel kevesebb feltétel van mint, duálváltozó, általában y1 = 0 értékadással
indı́tunk
• Nem-bázis változók esetén ellenőrizzük az yi − yj ≤ cij feltételeket
• Ha ez min dteljesül, akkor készen vagyunk
• Ha nem akkor azt az xij változót vonjuk be a bázisba, amelyre
cij = yi − yj − cij ≥ 0
érték a legnagyobb
12