reduced cost
Főnév
reduced cost (tsz. reduced costs)
- (informatika) A reduced cost (magyarul: csökkentett költség vagy korlátozó költség) egy kulcsfogalom a lineáris programozásban, különösen a szimplex algoritmus alkalmazása során. A reduced cost megmutatja, hogy egy változó egységnyi növelése mennyivel változtatná meg a célfüggvény értékét, ha az adott változó nincs a bázisban (azaz jelenleg nulla értéken van).
Ez a fogalom segít eldönteni, hogy mely változók belépése a bázisba segítene javítani az optimális megoldást – azaz milyen irányban érdemes haladni az optimalizációban.
1. Mi a reduced cost?
Tegyük fel, hogy egy lineáris programozási probléma célja egy célfüggvény maximalizálása:
A reduced cost egy változóhoz tartozó érték, amely azt mutatja, hogy ha ez a változó belépne a bázisba, akkor mekkora lenne az egységnyi hatása a célértékre.
- Maximalizálás esetén:
- Ha , akkor nem érdemes beléptetni
- Ha , akkor érdemes beléptetni (javítja a célfüggvényt)
- Minimalizálás esetén:
- Ha : nem jó, ne léptessük be
- Ha : javítaná a célt
2. Matematikai definíció
Legyen:
- : az eredeti költségtényező a nem bázisban lévő -re
- : a duális változók (árnyékárak, simplex multiplikátorok)
- : a változóhoz tartozó oszlop a korlátegyelet mátrixban
A reduced cost képlete:
Ez azt mutatja meg, hogy a jelenlegi árstruktúra és korlátok mellett a változó valódi „hatása” mennyi lenne.
3. Egyszerű példa
Tegyük fel, hogy van egy termékgyártási feladat:
- Termék A: 3 egység haszon
- Termék B: 5 egység haszon
A megoldásban jelenleg csak termék A szerepel, termék B értéke nulla (nincs a bázisban). Ha a termék B reduced cost-ja: , akkor azt jelenti:
➡ Ha elkezdünk gyártani termék B-t, 2 egységgel nőne a haszon termelésenként. ➡ Tehát érdemes lenne beléptetni.
4. Grafikus értelmezés
Képzeljünk el egy megengedett tartományt (sokszög) és a célfüggvény szintvonalait.
- A reduced cost mutatja, melyik irányban tudjuk “mozgatni” a célfüggvényt, hogy ne hagyjuk el a sokszöget, de javítsuk az értékét.
5. Kapcsolat a duálissal
A reduced cost összeköti a primál és duális problémát.
- Ha egy változó duálisan nem korlátozó (azaz nem javít a célnál), akkor reduced cost = 0
- A duál megoldás árnyékárainak segítségével számíthatjuk ki
6. Optimális megoldás és reduced cost
A szimplex algoritmus során:
- Egy változó akkor része az optimális bázisnak, ha:
- Értéke pozitív, és
- Reduced cost-ja 0
- Ha reduced cost ≠ 0 → a változó nincs a bázisban, és:
- Maximalizálásnál pozitív: nem léphet be
- Maximalizálásnál negatív: érdemes beléptetni
7. Mi történik a szimplex tábla során?
Minden szimplex iterációban kiszámoljuk a reduced costokat (pl. az alsó sorban a „Z - C” értékek), és megvizsgáljuk, van-e negatív érték (maximalizálásnál).
Ha van: → beléptetés szükséges, továbblépünk.
Ha nincs: → optimális megoldás megvan, nincs tovább javulás.
8. C++ jellegű logika (szövegesen)
Tegyük fel, van egy szimplex táblánk, és van egy nem bázisban lévő változó .
A reduced cost számításához:
double reduced_cost = cj - dotProduct(dual_values, Aj);
cj: eredeti célfüggvény-együtthatódual_values: aktuális árnyékárakAj: korlátmátrix megfelelő oszlopa
9. Fontos megjegyzés
A reduced cost nem csak „szám”, hanem döntési információ:
- Érdemes-e beléptetni a változót a megoldásba?
- Segíti-e az optimalizációt?
- Hoz-e jobb célértéket?
10. Összefoglalás
| Fogalom | Jelentés |
|---|---|
| Reduced cost | Azt mutatja meg, hogy egy nem bázisban lévő változó egységnyi növelése hogyan hatna a célfüggvény értékére |
| Maximalizálásnál | Ha : érdemes beléptetni |
| Minimalizálásnál | Ha : érdemes beléptetni |
| Kapcsolat | A duál árnyékáraival számítható |
| Szerepe | Optimalizálási irány meghatározása a szimplex algoritmusban |
- reduced cost - Szótár.net (en-hu)
- reduced cost - Sztaki (en-hu)
- reduced cost - Merriam–Webster
- reduced cost - Cambridge
- reduced cost - WordNet
- reduced cost - Яндекс (en-ru)
- reduced cost - Google (en-hu)
- reduced cost - Wikidata
- reduced cost - Wikipédia (angol)