Priama a dvojitá úloha lineárneho programovania. Decoupling duálnych problémov Decoupling symetrických duálnych problémov

Boli zavedené pravidlá pre skladanie dvoch úloh. Pozerá sa na symetrické, nesymetrické a zmiešané stávky. Razіbranno zadok skladanie dvoch úloh.

Zmist

V závislosti od toho, čo je spôsobené úlohou lineárneho programovania, je možné, aby boli pri moci, čo je s výnimkou jednej úlohy možné odobrať rozhodnutie inej úlohy. Tu sa pozrieme na pravidlá skladania dvoch úloh.

Symetrická obojstranná úloha

Pozrime sa na problém lineárneho programovania s neviditeľnými zmenami v systéme hraničných prechodov útočného typu:
(1.1) ;
(1.2)
Existujú desatinné čísla. Riadky systému (1.2) majú nepravidelnosti a znaky .


(2.1) ;
(2.2)
Tu používame riadky systému (2.2) s nepravidelnosťami a znakmi . Matica koeficientov systému je zamenená (2.2) s maticou transponovaného systému (1.2). Vaughn pomstiť riadky a stovptsiv. Postupujte podľa poradia zmeny. Usі zminnі nevid'єmnі.

Vychidná úloha (1) sa často nazýva priama úloha a úloha (2) je dvojitá. Ak problém (2) nahradíte, potom úloha (2) bude priama úloha a úloha (1) bude dvojitá. Ústredie (1) a (2) sa nazývajú symetrické dvojité úlohy.

Takto sa dá symetrická úloha zložiť len do tohto sklonu, pretože všetky zmeny vo výstupných úlohách sú neviditeľné a systém hraníc nepomstí rovnosť. Ak vtipkujete o maximálnej cieľovej funkcii, potom je potrebné nezrovnalosti vizuálne zmeniť. Ak si aspoň robíte srandu, tak je potrebné premeniť nervozitu na prvý pohľad. Ak chcete zmeniť znamenie, musíte uraziť časti nervozity, násobiť -1 .

Skladacia pažba pre symetrické dvojité úlohy


;

Na konci dňa je prednosta úradu aspoň pokarhaný. Všetka nervozita je preto kvôli materským znameniam. Prvá a tretia nervnosti pomstia znamenie. Vynásobme x podľa -1 :




Transponujte maticu. Takže prvý riadok sa píše ako prvý riadok, druhý riadok sa píše ako druhý riadok, tretí riadok sa píše ako tretí riadok.

Teším sa, že uvidím:
;

;

Asymetrická obojstranná úloha

Výzva na maximum

Pozrime sa na kanonický problém lineárneho programovania na maximum s neznámymi meniacimi sa tarifami výmenného systému:
(3.1) ;
(3.2)
Existujú desatinné čísla. Riadky systému (3.2) sú rovnaké. Musí sa zmeniť nie je imaginárne.

Teším sa, že uvidím:
(4.1) ;
(4.2)
Tu používame riadky systému (4.2) s nepravidelnosťami a znakmi . Matica koeficientov systému (4.2) je transponovaná matica systému (3.2). Postupujte podľa poradia zmeny. Zmeny môžu byť pozitívne aj negatívne.

Vіdmіnіst asymetrická stávka zavdan (3) a (4) vіd symetrická stávka (1) i (2) na tsomu, scho systém obezhen (3.2) pomstiť rovnomernosť a systém (4.2) vіdsutnі mysle a non-negativita zmeny.

Minimálna objednávka

Teraz sa pozrime aspoň na kanonickú úlohu lineárneho programovania:
(5.1) ;
(5.2)

Teším sa, že uvidím:
(6.1) ;
(6.2)

Výmenný systém (6.2) je upravený (4.2) tým, že znaky sú nerovnomerné.

Zvyazok іz symetrický pár dvojitého zavdan

Ukáže sa, že asymetrickú dvojicu úloh (3)-(4) možno vyhrať zo symetrickej dvojice (1)-(2).

Otzhe, dovoľte mi ísť rovno z cieľovej funkcie
(3.1)
ten systém
(3.2)
Vyrovnanosť pokožky sa môže prejaviť dvoma nepravidelnosťami:

Nezrovnalosti so znakmi znásobené o -1 :

Systém obmezhen maє nerіvnosti.

Vzorce (1)-(2) vyžadujú závislú úlohu:
;


dve úlohy sa nedajú zmeniť:
.
Nevadí, aké sú zmeny?
.

Zrobimo striedania
.
Čriepky a potom zmeny môžu byť pozitívne aj negatívne.

І mi otrimuєmo podriadený zavdannya (4):
(4.1) ;
(4.2)

Ak vezmeme úlohu na víkend (4), potom, porušiac všetky povinnosti v správnom poradí, vezmeme úlohu (3).

Rovnakým spôsobom je možné odstrániť podriadenú úlohu z úlohy (5) (6) a z úlohy (6) odstrániť podriadenú úlohu (5).

Zmishane zavdannya

Teraz sa pozrime na zmіshan zavdannya.

Nechajte ma ísť rovno (1) na maximum; Todi dvojnásobne zavdannya môže hľadať (2) jednu vinu - zmena môže byť pozitívna aj negatívna. Tobto vіdsutnє obezhennya.

To isté sa stane, ako môžeme priamo zavdannya (2) minimálne, v systéme obmezhenie, takýto riadok je žiarlivosť. Základnú úlohu možno vidieť (1) pre jednu vinu - zmena môže byť určitým znakom.

Teraz ma dovoľte ísť priamo vpred (1) na maximum, ale nedochádza k žiadnemu znečisteniu. Zmena Tobto môže byť pozitívna aj negatívna. Týmto spôsobom môže manažér dvakrát hľadať (2) jednu vinu - rad systému obmezhen є rіvnіstyu.

Som tu, dovoľte mi ísť minimálne rovno (2), ale nie je tam žiadna výmena . Týmto spôsobom môže manažér dvakrát hľadať (1) jednu vinu - rad systému obmezhen є rіvnіstyu.

To všetko vám umožňuje formulovať pravidlá pre skladanie dvoch úloh.

Pravidlá pre skladanie dvojitých úloh

1. Pre výstupný cieľ na maximum sú všetky nerovnomernosti systému okrajových podmienok znížené na nasledovné:
.
Minimálne pre vonkajšiu úlohu sú všetky nezrovnalosti uvedené do hľadiska:
.
Ak je potrebné zmeniť znamienko, znásobíme závadné časti nezrovnalostí na -1 .
2. Stávku skladáme rovnakým spôsobom, ako symetrickú stávku.
3. Pokiaľ ide o vonkajšieho manažéra, riadok systému obmezhen є rіvnіst, potom vikreslyuєmo na mysli neviditeľnosť zmeny dvojakých úloh.
4. Pokiaľ ide o vihіdnomu zavdanny, deň neviditeľnosti mysle pre -ї zminnoї, potom v druhom rade dvojitej úlohy zmeníme znak nerovnosti na znak rovnosti.

Pažba na zadok

Úloha lineárneho programovania je daná:
;

Zložte spodnú bielizeň.

Cieľová funkcia je posledný člen 5. Aby sme priniesli її na pohľad (2.1), zavedieme zmenu rovnosti dodamo. Pozerám dopredu a uvidím:

;

Tse zavdannya є zavdannya za minimálnu zmenu. Všetka nervozita je preto kvôli materským znameniam. Tretie nerіvnіst znamenie pomsty. Tak si jogu vynásobme -1 :

Poďme prepísať systém obmezheniya, jasne označujúci koeficienty so zmenami:

Matrix

Transponujte maticu. Takže prvý riadok sa zapíše ako prvý riadok, druhý riadok sa zapíše ako druhý riadok atď.

Sklad podvyne zavdannya ako pre symetrickú stávku.
;

Črepy pri manažérovi odchodu 1, 2 a 4. rade systému sú obklopené rovnosťami, potom v závislom manažérovi zmeny môže byť znak. Neviditeľný zminnoy є menej. Myslite na to, že neviditeľnosť zlovestného môže vyzerať:
.

Oskіlki u vihіdny zavdnі zminnі і môže matka dovіlnі znamenia, potom je 3. a 4. riadok systému obklopený dvoma úlohami s rovnosťami.

V takejto hodnosti som mohol vidieť dvoma spôsobmi:
;

Od štvrtého štvrťroka. Zmeňme hodnoty її ​​a vynásobme tretí riadok -1 .

Ďalším krokom je určenie metód riešenia problémov lineárneho programovania. nie k ekonomike, ale k matematike a výpočtovej technike. V tomto prípade je ekonóm zodpovedný za zabezpečenie čo najpohodlnejšieho dialógu s najlepším možným softvérovým zabezpečením. Podľa vlastného uváženia si možno budete môcť zabezpečiť dynamickejšie a interaktívnejšie médium vývoja, ktoré môže mať vo vašom arzenáli zbierku knižníc potrebných na rozvoj takýchto knižníc. Jedným z middleware pre vývoj softvéru je šialene Python.

Vyhlásenie o probléme

Publikácie sa zaoberali riešením úloh priamej optimalizácie metódou lineárneho programovania a primingu výberu riešiteľa scipy. optimalizovať.

Zdá sa však, že kožná úloha lineárneho programovania je takzvaná vizionárska (dva) úloha. Zároveň by mali byť riadky prekrížené na stovptoch, nerovnosť zmení znamienko, maximum sa nahradí minimom (inak je nahradenie minima maximom). Zavdannya, podviyne na druhú - to isté vihіdne zavdannya.

Splnenie dvojitej úlohy je ešte dôležitejšie pre analýzu viacerých zdrojov. V tejto publikácii bude vysvetlené, že optimálna hodnota cieľových funkcií pre dve a dve úlohy sa zníži (takže maximum pre výstupnú úlohu sa zníži s minimom pre dve úlohy).

Hodnotí sa optimálna hodnota materiálu a spracovania z hľadiska ich prínosu k cieľovej funkcii. Tým pádom sa uberú „objektívne vzdelané odhady“ pracovnej sily, ktoré sa nezbavia trhových cien.

Virishennya priamy problém o optimálnom programovacom programe

Vysoká úroveň matematickej prípravy najvýznamnejších koristuvachiv tohto zdroja nie je v rovnováhe s hornými a dolnými výmenami a úvodmi na prechod k rovnosti dodatočných zmien. K tomu poukážem na znaky zmeny, ktoré víťazia medzi rozhodnutiami:
N - počet druhov vírusov;
m-počet druhov vikornej syroviny;
b_ub - vektor dostupných zdrojov m;
A_ub je matica veľkosti m×N, prvok vzhľadu, ktorý je najbežnejším zdrojom typu i pre jeden typ typu j;
s - vektor pributu vіd virobnitstvа jedného virobu dermálneho druhu;
x - opatrenia starostlivosti o pleť (optimálny plán čistenia), ktoré zabezpečia maximálny zisk.

Funkcia pervitínu
maxF(x)=c×x

Výmena
A×x≤b

Číselné hodnoty zmeny:
N=5; m=4; b_ub=; A_ub = [, , ,]; c=.

manažér
1. Vedieť x zabezpečiť maximálny zisk
2. Poznať najčastejšie zdroje pre nočnú hodinu str.1
3. Poznať prebytok zdrojov (ako smrad є) pіd h vykonaný str.1


Pre priradenie maxima (pre zámok je priradený minimum koeficientov funkcie funkcie, je potrebné písať so záporným znamienkom c = [-25, -35, -25, -40, -30] a ignorovať znamienko mínus pred ziskom.

Wikoristannya pri pohľade na výsledky uznania:
X- Pole hodnôt zmien, ktoré poskytujú minimálnu (maximálnu) cieľovú funkciu;
ochabnutý- Význam dodatočných zmien. Koža sa mení v prípade obmezhennu-nervnosti. Nulová hodnota zmeny znamená, že burza je aktívna;
úspech- Pravda, keďže funkcia je ďaleko od poznania optimálneho riešenia;
postavenie- Stav rozlíšenia:
0 - hľadanie optimálneho riešenia úspešne ukončené;
1 - dosiahol limit pre počet iterácií;
2 - neexistuje žiadne riešenie;
3 - cieľová funkcia nie je obmedzená.
nit- počet prerušených iterácií.

Výpis priamej úlohy optimalizácie

#!/usr/bin/python # -*- kódovanie: utf-8 -*- import scipy zo scipy.optimize import linprog # import knižnice LP c = [-25, -35,-25,-40,-30] # zoznam koeficientov funkcie položky b_ub = # zoznam položiek zdroja A_ub = [, # matica hodnôt zdroja položky ​​, , ] d=linprog(c, A_ub, b_ub) # riešenie vyhľadávania pre kľúč,val v d.items( ): print(key ,val) # scipy.array(b_ub)-scipy.array(q) #prebytocne zdroje print(" b_ub-A_ub*x", q1)


Výsledky riešenia úloh
hnida 3
stav 0

úspech Pravda
x [ 0,0, 18,18181818 22,72727273 150. ]
A_ub*x
b_ub-A_ub*x [ 0. 0. 0. 90.90909091]
zábava -5863,63636364
uvoľnený[0.0.0.90.90909091]

Višnovki

  1. Našiel optimálny plán pre typy produktov
  2. V skutočnosti sa našlo niekoľko zdrojov
  3. Nájdený prebytok nezdravého štvrtého druhu zdroja [ 0,0 0,0 0,0 90,909]
  4. Nie je potrebné platiť za platbu za položku 3, takže rovnaký výsledok sa zobrazí v zmenenej rezerve

Overenie dvojitého problému o optimálnom konštrukčnom programe

Štvrtý typ zdroja nepatrí do priamej úlohy vikoristánu. Rovnaká hodnota tohto zdroja pre podnikanie je nižšia v porovnaní so zdrojmi, ktoré prekladajú uvoľňovanie produktov, a podnik je pripravený zaplatiť vyššiu cenu za dodávku zdrojov, čo vám umožní získať vyšší príjem.

Zavedené nové uznanie shukanoy zminnoy x ako druh "tieňovej" ceny, ktorá určuje hodnotu daného zdroja pre zisk pri predaji produktov, ktoré sa uvoľňujú.

C - Vektor dostupných zdrojov;
b_ub - vektor prebytku jedného variantu dermálneho druhu;
A_ub_T - matica A_ub je transponovaná.

Funkcia pervitínu
minF(x)=cxx

Výmena
A_ub_T ×x≥ b_ub

Číselná hodnota a spivvіdnoshennia pre zmenu:
h =; A_ub_T transponovať (A_ub); b_ub=.

manažér:
Know x ukazuje hodnotu dermálneho druhu zdroja.

Vlastnosti riešenia s knižnicou scipy. optimalizovať
Aby bolo možné nahradiť hranicu požiaru na hranici zdola, je potrebné vynásobiť mínus jednou z problematických častí hranice - A_ub_T ×x≥ b_ub ... A_ub_T = - scipy.transpose(A_ub).

Výpis oddelenia dvoch optimalizačných problémov

#!/usr/bin/python # -*- kódovanie: utf-8 -*- import scipy zo scipy.optimize import linprog A_ub = [, , , ] c= b_ub = [-25, -35,-25,- 40,-30] A_ub_T =-scipy.transpose(A_ub) d=linprog(c, A_ub_T, b_ub) pre kľúč,hodnota v d.items(): print(kľúč,hodnota)


Výsledky riešenia úloh
nit7
Optimalizácia správ bola úspešná.
zábava5863,63636364
x [2,27272727 1,81818182 6,36363636 0.]
uvoľnenie [ 5,45454545 2,27272727 0. 0. 0. ]
stav 0
úspech Pravda

Višnovki

Tretí typ zdroja je pre kombajn najcennejší a tento typ zdroja je spôsobený nákupmi v prvom čiernom, potom prvom a ďalšom type. Štvrtý typ zdroja môže mať pre harvester nulovú hodnotu a zvyšný je zakúpený.

Výsledky zosúladenia priamych a dvojitých úloh

  1. Prevzatie úlohy rozšíriť možnosti plánovania uvoľnenia produktov, ale s pomocou scipy. optimalizácia prekoná dvojnásobný počet iterácií priamo.
  2. Zmeňte voľnosť na zobrazenie informácií o aktivite oblasti v prípade nezrovnalostí, čo možno použiť napríklad na analýzu prebytkov syroviny.
  3. Priame príkazy na maximalizáciu a pod čiarou - na minimalizáciu a navpaki.
  4. p align="justify">
  5. Výmeny v priamej úlohe sa stávajú koeficientmi funkcie metódy v podvínach.
  6. Náznaky nezrovnalostí v prestupných uzlov sú nahradené opačnými.
  7. Matica systému rovnosti je transponovaná.
Posilannya

Na pomoc tejto online kalkulačky si môžete vziať:

  • riešenie duálneho problému lineárneho programovania riešením priameho problému (simplexnou metódou, teorémom duality);
  • optimálny plán pre dve úlohy; hodnotenia zdrojov (podriadené hodnotenia);
  • prideľovanie vzácnych a nedeficitných (nadbytočných) zdrojov;
  • zmena cieľovej funkcie pre zmenu parametrov; obґruntuvannya účinnosť optimálneho plánu;
  • analýza stability dvojitých hodnotení (zmena hranice b i, c i); analýzu suboptimálnych možností v pláne

Inštrukcia. Zvoľte počet zmien a počet zariadení pre priame programovanie linky, stlačte Dali. Riešenie je prevzaté zo súborov Word a Excel. Pri akom type výmeny x i ≥ 0 nedôveruj. Ako priama úloha LP nie je riešenie, ale je nevyhnutné zložiť dve objednávky alebo jedno z posledných x i nie je nastavené, môžete použiť kalkulačku .

Hlavná myšlienka teórie duality: pre kožnú úlohu lineárneho programovania (LP) je hlavnou úlohou LP, ktorá úzko súvisí s priamou líniou. S kým:

  • matica rozdelenia duálnej úlohy (DZ) є matica priamej úlohy je transponovaná;
  • Vektor "tsіn" pre priamy problém je vektor pravých častí hranice problému diaľkového prieskumu Zeme a navpak.
Všeobecné pravidlá pre skladanie dvoch úloh ():
Rovno Podviyna
Cieľová funkcia (max.) Práva časti na hranicu
Práva časti na hranicu Cieľová funkcia (min)
A - matica A T-matica
i-té zníženie: ≤ 0, (≥ 0) Zmena y i ≥ 0, (≤ 0)
i-ta výmena: = 0 Zmeňte y i ≠ 0
Zmena x j ≥ 0 (≤ 0) j-té zníženie: ≤ 0 (≥ 0)
Zmena x j ≠ 0 j-té zníženie: = 0

Zadok. Je príznačné, že maximálna hodnota funkcie cieľa F(X) = 3x1+5x2+4x3 pre útočné vymedzenie mysle.
0,1x1 + 0,2x2 + 0,4x3 ≤1100
0,05x1 + 0,02x2 + 0,02x3 ≤120
3x1 + x2 + 2x3 ≤8000

Virishimo priamo pomocou simplexovej metódy.
Pre navodenie prvého základného plánu bude systém nezrovnalostí prevedený na systém rovnosti dodaním dodatočných zmien.
0,1x1 + 0,2x2 + 0,4x3 + 1x4 + 0x5 + 0x6 = 1100
0,05x1+0,02x2+0,02x3+0x4+1x5+0x6=120
3x1 + 1x2 + 2x3 + 0x4 + 0x5 + 1x6 = 8 000
Základnými zmenami sú zmeny, ktoré sú zahrnuté len v jednom rovnakom systéme obmezhen a predtým s jediným koeficientom.
Rozoberme si systém vyrovnaní základných zmien: x 4 , x 5 , x 6
V závislosti od toho, čo môžete zmeniť na pridanie 0, vezmeme prvý referenčný plán: X1 = (0,0,0,1100,120,8000)
Úlomky úlohy sa zväčšia na maximum, potom sa zvolí vodiaca čiara pre maximálne záporné číslo a riadok indexu. Všetky transformácie sa vykonávajú bodkami, bodky sa nezobrazujú v indexovom riadku kladných prvkov.
Prejdeme k hlavnému algoritmu simplexnej metódy.

Plán Základ o x 1 x2 x 3 x4 x5 x6 min
1 x4 1100 0.1 0.2 0.4 1 0 0 5500
x5 120 0.05 0.02 0.02 0 1 0 6000
x6 8000 3 1 2 0 0 1 8000
indexový riadok F(X1) 0 -3 -5 -4 0 0 0 0
Iterácia №0
Súčasný referenčný plán nie je optimálny, vrcholy v riadku indexu sú záporné koeficienty
Ako vedúca vibero stovpets, ako vedúca premenná x 2 tak ako najväčší koeficient modulo.
Otzhe, vykoná sa prvý rad. Samostatný prvok je drahší 0,2 a je umiestnený na drôtenom rade drôtu. Tvoriaca súčasť simplexného stola. Zmena zmena x na plán 1 zmena zmena x 2 . Riadok, ktorý mení x 2 v pláne 1, sa odstráni v dôsledku pridania všetkých prvkov radu x 4 do plánu 0 pre samostatný stavebný prvok PE = 0,2. Na mieste rozdeľovacieho prvku v pláne 1 sa vezme 1.
V tomto poradí má nový plán 1 riadok x 2 a riadok x 2.
Reshta všetkých prvkov nového plánu 1, vrátane prvkov indexového riadku, dodržiavajte pravidlo obdĺžnika.
Pre ktorý je vybraný podľa starého plánu, niektoré čísla, yak roztashovanі na vrcholoch obdĺžnika a zavzhd zahŕňajú samostatný stavebný prvok PE.
NOT = CE - (A * B) / PE
CTE - prvok starého plánu, PE - samostatný stavebný prvok (0,2), A a B - prvky starého plánu, ktoré tvoria obdĺžnik s prvkami CTE a PE.
Plán Základ o x 1 x2 x 3 x4 x5 x6 min
2 x2 5500 0.5 1 2 5 0 0 11000
x5 10 0.04 0 -0.02 -0.1 1 0 250
x6 2500 2.5 0 0 -5 0 1 1000
indexový riadok F(X2) 27500 -0.5 0 6 25 0 0 0

Iterácia č. 1
Súčasný referenčný plán nie je optimálny, vrcholy v riadku indexu sú záporné koeficienty. Ako popredné vibero stovety, hlavná premenná x 1, sú stupnice najväčším koeficientom modulo.
Vypočítajme hodnoty D i pre riadky, ako aj v podriadku az nich vyberte najmenej:
Otzhe, ďalší riadok є provіdnim. Samostatný prvok je drahší 0,04 a je umiestnený na drôtenom rade drôtu. Tvoriaca súčasť simplexného stola. Zmena zmena x na plán 2 zmena zmena x 1 . Rad, ktorý bol hlavnou zmenou x 1 v pôdoryse 2, bol odstránený v dôsledku rozčlenenia všetkých prvkov radu x 5 v pôdoryse 1 na samostatný stavebný prvok PE = 0,04. Na mieste rozdeľovacieho prvku v pláne 2 sa vezme 1.
V tomto poradí má nový plán 2 riadky x 1 a riadok x 1.
Reshta všetkých prvkov nového plánu 2, vrátane prvkov indexového riadku, dodržiavajte pravidlo obdĺžnika.
Rast kožného prvku môžeme vidieť v tabuľke:

Príklad číslo 2. Pre vikonannya je potrebné naraz letieť 50 AK 1. typu, 30 AK 2. typu a 45 AK 3. typu. AK roztašovaní na letiskách I. a II. V tabuľke zastúpení priemerná hodina zlotého (v sekundách) z jedného letiska jedného lietadla daného typu.

Číslo letiska Typ AK
1 2 3
ja 4 10 10
II 6 8 20
Ako rozložiť AK po letiskách, aby hodina posledného zlotu celej AK spolu s minimom? Môžete však zmeniť hodinu pokožky AK zlotý, takže vaše optimálne riešenie je príliš veľa.

Riešenie. Významné prostredníctvom:
x 11 - AK 1. typu na prvom letisku,
x 12 - AK 1. typu na inom letisku,
x 21 - AK typ 2 na prvom letisku,
x 22 - AK typ 2 na inom letisku,
x 31 - AK 3. typu na prvom letisku,
x 32 - AK 3. typu na inom letisku,

Výmena
4x11 + 6x12 = 50
10x21 + 8x22 = 30
10x31 + 20x32 = 45
x 11, x 12, x 21, x 22, x 31, x 32 ≥ 0
x 11, x 12, x 21, x 22, x 31, x 32 - čísla

Účelová funkcia
4x 11 + 6x 12 + 10x 21 + 8x 22 +10x 31 + 20x 32 → min

Po nájdenom riešení budú v závislosti od prvého napájania hodnoty zmeny x 11 x 12 x 21 x 22 x 31 x 32. Informácie o výkonnosti na ostatnej výžive budú zverejnené na distribúcii Interval koeficientov stability funkcie zdravia.

Metóda, pri ktorej simplexová metóda zlyhá v jednej zo vzájomne binomických úloh, že sa pomocou binomických viet skúša optimálne aj optimálne riešenie inej úlohy, sa nazýva šikmá simplexná metóda.

Veta 1 (prvá veta o dualite). Ak jedna z dvoch úloh môže byť optimálnym riešením, potom môže byť jedna

inak sa navyše zlepšujú optimálne hodnoty ich cieľových funkcií:

Hoci cieľová funkcia výstupnej úlohy nie je obmedzená, systém limitovania duálnej úlohy je nekompatibilný.

Poznámka: tvrdenie, oproti druhej časti prvej vety o dualite, je neúmyselne nesprávne.

Veta 2. Komponenty optimálneho plánu pre dve úlohy ( vodіyut duševná temnota) rovné absolútne hodnoty koeficientov

Komponenty optimálneho plánu pre dve úlohy ( nie obmezhenі pre znamenie) rovné hodnoty koeficientov pre rôzne meniace sa cieľové funkcie výstupných úloh, vyjadrené voľnou zmenou optimálneho riešenia.

Veta 3. Kladné (nenulové) zložky optimálneho rozptylu jednej z úloh symetrická dvojitá stávka dať nulové zložky optimálneho rozvoja inej úlohy, tobto. za čokoľvek:

Veta 4 (tretia veta o dualite). Komponenty optimálneho plánu duálnej úlohy pridávajú k hodnotám súkromných podobných lineárnych funkcií z rozumných argumentov, tzn.

. (7.2)

Ekonomická interpretácia tretej vety o dualite: komponenty optimálneho plánu dvojitej úlohy ukazujú, koľko centových jednotiek zmení maximálny zisk (viruchka) v produkte za zmenu zásoby životaschopného zdroja o jednu jednotku.

Príklad 9.1. Na základe riešenia aplikácie 5.2 (súbor "Algoritmus a aplikácia simplexovej metódy") je optimálne riešenie dvojproblémovej úlohy výrazne určené dvojsimplexnou metódou.

Týždenný termín

Náhradník zavdannya

Tsya dvesto párov je symetrických. Objednávka je napísaná v štandardnom tvare, prinášame ich do kanonického vzhľadu:

Týždenný termín

Náhradník zavdannya

Stanovme konzistenciu medzi vzájomne sa meniacimi dvoma úlohami.

Pre pіdbags rіshennya zadok 5.2. simplexná tabuľka zostávajúcej iterácie (tabuľka 5.10) môže vyzerať takto:

Tabuľka 9.3

Vidpovidno k vete 2, optimálne hodnoty zmeny a zvýšenie absolútnej hodnoty koeficientov so zmenou funkcie optimálneho riešenia.

Za tabuľkou 9.3 zapíšeme cieľovú funkciu odchádzajúcej úlohy, vyjadrenú voľnými zmenami a optimálnym rozdelením:

Otzhe, .

Zmeny , , a sú prítomné v cieľovej funkcii (preto sa ich koeficienty rovnajú nule), optimálne hodnoty takýchto zmien , a sa rovnajú nule.

Podobne ako veta 1, .

Optimálna hodnota cieľovej funkcie sa teda dosiahne pri .

Príklad 9.2. Na základe variantu výslednej úlohy poznať optimálne riešenie dvojúlohy a víťaznej simplexovej metódy.

Týždenný termín

Náhradník zavdannya

Tsya dvesto párov sú asymetrické. Poďme ku kanonickej forme záväzku.

Týždenný termín

Náhradník zavdannya

Pre zriadenie meniteľnej dvojitej stávky uvádzame dve denné fiktívne zmeny na konci dňa.

Týždenný termín

Náhradník zavdannya

Stanovme konzistenciu medzi vzájomne sa meniacimi dvoma úlohami.

Tabuľka 9.4

Vidpovіdnіst zmіnnih dvostiї stávka

Virіshimo vyhіdne zavdannya simplexná metóda.

Vykoristovuyuchi metóda Jordan-Gauss, videná v systéme prostredia výstupného závodu ako základná zmena ( Poznámka: nevyhrajú ako základné fiktívne zmeny).

V dôsledku transformácie dostaneme maticu koeficientov:

.

Systém obkľúčenia odchádzajúcej rastliny v očakávaní útočiaceho pohľadu:

Vôľou vidíme základné zmeny v dôsledku odchodu úlohy pred útočným pohľadom:

Nahradením hodnôt základných zmien v cieľovej funkcii sa tešte na ofenzívu:

Výsledkom riešenia simplexovej metódy bola konečná úloha pre zvyšok iterácie, zobrazí sa simplexná tabuľka:

Tabuľka 9.5

Simplexná tabuľka optimálneho výsledku výstupnej úlohy

Môžete spievať s hodnosťou piesne, aby ste si urobili deň inou úlohou (lineárne programovanie), ktorá sa nazýva dvojitý alebo pov'yazanoї vymenovaním do vihіdnoї alebo priame úlohy. Damo je menovaný do dvoch úloh rozšírením na vedúci linkového programovania, čo sa pridáva, ako už vieme, pri maximálnej hodnote funkcie

pre mysle

(33)

(34)

Menovanie 1. Zavdannya, ako keby prisahal na hodnotu minimálnej hodnoty funkcie

pre mysle

(36)

(37)

volal metro pre dohodou do vymenovania (32) - (34). Úlohy (32) - (34) a (35) - (37) vytvárajú dvojicu úloh, ako sa nazývajú v lineárnom programovaní dvojitý pár. Porіvnyuyuchi dve formulácie úlohy, bachimo, že dvojitá úloha sa skladá z nasledujúcich pravidiel:

1. Cieľová funkcia výstupnej úlohy (32) - (34) je nastavená na maximum a cieľová funkcia binárneho (35) - (37) je minimálna.

2. Matica

(38)

nahromadené s koeficientmi, keď systém nemá žiadne zariadenia (33) odchádzajúceho závodu (32) - (34), rovnaká matica

(39)

obojstranný problém (35) - (37) má transpozície, ktoré sa objavujú jedna od druhej (t. j. nahradením riadkov stĺpcami a nahradením stĺpcov riadkami).

3. Počet zmien pre závislý závod (35) - (37) je rovnaký ako počet zmien pre systém (33) pre odchádzajúcu úlohu (32) - (34) a počet zmien pre systému (36) duálnej úlohy je počet zmien pre odchádzajúci závod.

4. Koeficienty pre neceločíselné funkcie (35) binárneho problému (35) - (37) sú voľné členy v systéme (33) externého problému (32) - (34) a správne časti koherentných vzťahov sústavy (36) binárnej úlohy - koeficienty pre výstupné úlohy neznámej funkcie (32).

5. Aké premenlivé xj výstupná úloha (32) - (34) môže akumulovať iba kladné hodnoty j-e myseľ systému (36) dvojitá úloha (35) - (37) є nerovnomerná myseľ “? ". Aká zmena xj môže nadobúdať kladné aj záporné hodnoty 1 – spіvvіdnoshennia v systéme (54) є vnyannâ. Podobné prepojenia možno nájsť medzi výmenami (33) externého zariadenia (32) - (34) a zmenou dvojitého zariadenia (35) - (37). Yakscho i- Spivvіdnoshennia v systéme (33) odchádzajúcej úlohy є nerіvnіstyu, potom i Striedam dve úlohy. Iným spôsobom, zmeniť pri j Môžete mať kladné aj záporné hodnoty.

Pod stávkou dňa zazvoňte na symetrické a nesymetrické. Symetrický pár binárnych úloh má substitúciu (33) priamej úlohy a paralelu (36) binárnej úlohy s nepravidelnosťami tvaru „ “. V tomto rangu môže zmena oboch rádov nadobudnúť len nepodstatné významy.

príklad 1.Čo najviac rozložte podpriečinok úlohy, čo je najlepšie pre maximalizáciu funkcie

(40)

pre mysle

(41)

Riešenie. Pre koho

і

Počet premenných v duálnej úlohe sa rovná počtu rovných v systéme (41), čo sa rovná trom. Koeficienty cieľovej funkcie duálnej úlohy sú voľnými členmi rovnoprávneho systému (41), tobto. čísla 12, 24, 18

Cieľová funkcia odchádzajúcej úlohy (40) - (42) dosahuje maximum a systém myslí (41) je menej rovnaký. Preto je v duálnej úlohe cieľová funkcia znížená na minimum a її zminnі môže získať akúkoľvek hodnotu (vrátane záporných). Ak všetky tri meniace sa úlohy (40) - (42) nadobudnú menej než neviditeľný význam, potom môžu systémy myslí dvojitej úlohy nadobudnúť vzhľad „? ". Tiež pre problém (40) - (42) je nasledujúca úloha: poznať minimálnu funkciu pre myseľ

zadok 2. Pre úlohu, ktorá súvisí s maximalizáciou funkcie

pre mysle

formulovať podriadenú úlohu.

Riešenie. Pre koho

,

Vіdpovіdno zagalnyh pravidlá zavdannya, podvіyne vіyne vіdnoshennі to danї, formulované nadchádzajúcou hodnosťou: poznať minimum funkcie pre mysle

Prepojenie medzi riešeniami priamych a duálnych úloh

Pozrime sa na pár dvojdielnych úloh, opravím hlavné úlohy lineárneho programovania a pred nimi dvojdielne. Po vybalení: poznať maximum funkcie

pre mysle

(44)

Hlavná úloha: poznať minimum funkcie

pre mysle

(47)

Skin z úlohy dvojitej stávky (43) - (45) a (46), (47) je vlastne nezávislá úloha lineárneho programovania a možno ju hrať nezávisle na tej istej úlohe. Prote optimálny plán jednej z úloh je zmeniť riešenie inej úlohy.

Іsnuyuchi zalezhnosti medzi riešeniami priamych a duálnych problémov sú charakterizované formuláciami nižších lemov a teorémov duality.

Lema 1. Ak X je aktuálny plán výstupnej úlohy (43) - (45), Y je doplnkový plán dvojitej úlohy (46), (47), potom hodnota cieľovej funkcie výstupnej úlohy s plánom X áno. nie vždy prekročiť hodnotu cieľovej funkcie dvojitej úlohy s plánom Y, tobto.

Lema 2. Ak existujú nejaké plány X * a Y * úloha (43) - (45) a (46), (47), potom X * je optimálny plán víkendovej úlohy a Y * je optimálny plán dvojitej úlohy .

Veta 8(Prvá veta o dualite). Keďže jedna z úloh obojsmernej stávky (43) - (45) a (46), (47) môže byť optimálny plán, druhá môže byť optimálny plán a hodnota cieľových funkcií úlohy pre ich optimálne plány sú si navzájom rovné, tobto.

Cieľová funkcia jednej úlohy pri dvojnásobnej stávke nie je obmedzená (pri dvojke (43) - (45) - hore, pri dvojke (46), (47) - dole), potom úloha sa nemá plánovať.

Veta 9(Ďalšia veta o dualite). Plán úloha (43) - (45) ten plán Úlohy (46), (47) - optimálne plány pre tieto úlohy sú niekedy a len niekedy, ak sa vyhrá vyrovnanosť pre čokoľvek

Geometrická interpretácia duálnych úloh

Ako počet zmien v priamych a binárnych problémoch, ktoré uspokoja dvojicu, dvojnásobok dvoch, potom víťazná geometrická interpretácia problému lineárneho programovania, môžete ľahko poznať členenie dvojice problémov. V tejto chvíli jeden z troch pripravovaných vipadkiv, ktoré vzájomne zahŕňajú jeden z: 1) porušovanie úloh plánu; 2) plánovať viac ako jednu úlohu; 3) skin pre dvojitú stávku bez osobných plánov prázdny.

príklad 3.

zložiť dve úlohy a poznať riešenie oboch úloh.

Riešenie. Dvaja manažéri majú sto a sto hláv, ktoré sú posudzované podľa určenej minimálnej hodnoty funkcie pre mysle

Ako víkend, a dvojitá úloha, počet nevіdomih dovnyuє dva. Taktiež je možné poznať jeho variantnú, vikoristickú geometrickú interpretáciu problému lineárneho programovania (obr. 7 a 8).

Ako je možné vidieť z obr. 8 sa v bode berie maximálna hodnota cieľovej funkcie výstupnej úlohy čl. Otzhe, x*=(2, 6) je optimálny plán, pre ktorý . Minimálna hodnota cieľovej funkcie dvojitej úlohy je nastavená do bodky E(obr. 8). Znamenať, Y* =(1; 4) je optimálny plán pre duálnu úlohu, pri takomto poradí sa hodnota cieľových funkcií duálnej a duálnej úlohy pre ich optimálne plány navzájom rovná.

3, obr. 7 je vidieť, že pri akomkoľvek pláne budúcnosti je cieľová hodnota cieľovej funkcie viac ako 46. Naraz, ako je vidieť z obr. 8, hodnota cieľovej funkcie závislej úlohy v prípade akéhokoľvek plánu nie je menšia ako 46. V tomto poradí v prípade akéhokoľvek plánu úlohy vihіdnoї hodnota cieľovej funkcie nepresahuje hodnotu cieľová funkcia závislej úlohy v prípade úspešného plánu.

zadok 4.

Poznať riešenie dvojitej stávky.

Týždenné stretnutie;

Následná úloha:

Riešenie. Ako víkend, tak urobte dve úlohy, aby ste pomstili dve zmeny. Na tento účel poznáme víťaznú geometrickú interpretáciu problému lineárneho programovania (obr. 7 a 8). 3, obr. 7 je vidieť, že neexistuje optimálny plán, ak neexistuje optimálny plán z dôvodu nedostatku funkcie spodného riadku o neosobných prípustných riešeniach.

3, obr. 10 ďalej, že neexistujú dva plány, čriepky bagatokutnika, rozhodnutie je prázdne. Tse znamená, že ak problém stávky dva ku jednej nemožno optimálne naplánovať z dôvodu nedostatku prípustných riešení pre funkciu neosobného cieľa, potom nemožno naplánovať ani podproblém.

Význam riešenia dvoch úloh. Pozrime sa na pár dvoch úloh – hlavnú úlohu lineárneho programovania (43) – (45) a dve predchádzajúce úlohy (46), (47).

Predpokladajme, že pomocou simplexovej metódy sa nájde optimálny plán X*Úloha (43) - (45) a tento plán je definovaný ako základ, osvetlený.

Výrazne cez vektorový rad, sčítanie koeficientov s nedominantnými funkciami (43) úloh (43) - (45), a cez matica, reverzná matica R skladanie z komponentov na vektorový základ. Todi maє mіsce takú pevnosť.

Veta 10. Ako hlavná úloha lineárneho programovania je optimálny plán X * optimálny plán pre dvojitú úlohu.

Týmto spôsobom, aby sme poznali optimálny plán problému (43) - (45) simplexovou metódou, potom simplexný stôl, môžete požiadať o ďalšiu podporu poznať optimálny plán pre dvojitý problém (46), (47).

V takom prípade, ak sa stredné vektory zložené z koeficientov pre neznámu v systéme rovnajú (44), є t jednotlivé, matica je zobrazená tak, aby vyhovovala číslam prvého t riadkov vo zvyšku simplexnej tabuľky, ktorá by mala byť na začiatku týchto vektorov. Nie je však potrebné určiť optimálny plán pre dvojnásobný problém vynásobením m+1) –-tý riadok stovptsіv jedného vektoraіv, ako daný koeficient, a pridajte súčet rovnakého prvku th riadku a yakscho

Hovorí sa, že na symetrickú stávku dvojnásobných úloh je viac času. Pre ktorý oscilátor sa systém sprostredkovania prázdnej úlohy vypomstí nerovnomernosťou tvaru „ “, potom bežia zložky optimálneho plánu binomickej úlohy s obvyklými číslami ( m+1)-tý riadok zostávajúcej simplexnej tabuľky konečného problému. Určené čísla stoja na stovptsy vektorov, čo prinesie ďalšie zmeny.

zadok 15. Pre úlohu, ktorá je určená pridelenou maximálnou hodnotou funkcie pre mysle

dať dokopy dve úlohy a poznať ich riešenie.

Riešenie. V závislosti od poradia stotiny voľného poľa základnej minimálnej funkcie pre mysle

Aby sme poznali riešenie dvoch problémov, potrebujeme poznať riešenie problému metódou kusovej bázy. Je to uvedené v tabuľke 12. Zo zvyšku simplexnej tabuľky je zrejmé, že existujú dve možné riešenia

Optimálne dve skóre uspokoja fúzy závislého pracovníka. Pri akejkoľvek minimálnej hodnote cieľovej funkcie závodu metra je to viac zbіgaєtsya s maximálnou hodnotou cieľovej funkcie výstupnej úlohy.

Tabuľka 12

i Základ W b p0 1 2 -1 0 0 -M
p1 p2 p 3 p4 p5 p6
1
2
3
4
5
1
2
3
4
1
2
3
4
p4
p5
p6

P4
p5
p1

P2
p5
p1

0
0
-M

0
0
1
2
0
1

12
17
4
0
-4
14
15
2
2
4
9
4
12
-1
1
2
-1
-2
0
0
1
0
0
0
1
0
4
1
-1
-2
1
7/2
3/2
-1/2
-5/2
1
0
0
0
-2
2
2
1
-2
-1
1
1
2
-2/7
13/7
6/7
9/7
1
0
0
0
0
1
0
0
0
2/7
-3/7
1/7
5/7
0
1
0
0
0
0
1
0
0
0
1
0
0
0
0
1
0
0
1/2
-1/2
1/2
1/2
1/7
-5/7
4/7
6/7

Ekonomický výklad dvojitých úloh

Ekonomický výklad dvojitých úloh a dvojitých hodnotení je možné vidieť v aplikácii.

Príklad 6. Na výber z troch typov výberov ALE ,oі Z vikoristovuetsya tri rôzne vidi syrovini. Koža z druhu syrovin môže mať vikoristaniya v množstve, ale nie viac ako 180, 210 a 244 kg. Normy vitrátu typu pokožky na jednotku produktov tohto typu a cena za jednotku produktov dermálneho typu sú uvedené v tabuľke 13.

Rozhodnite sa o pláne uvoľnenia produktov, ktorý zaisťuje maximálnu kvalitu, a vyhodnoťte kožu z druhov syrovínu, ktoré vikoristovuyutsya vyrobnitstva. Odhady, ktoré sa prisudzujú typu pleti syrovínu, by mali byť také, aby hodnotenie všetkých syrovin bolo minimálne a celkové hodnotenie syrovinu, ktoré sa udeľuje za výber jedného produktu typu pleti, nie je menšie ako hodnota jedného produktu daného typu.

Tabuľka 13

Typ sirovini

Normy vitrátov syrovínu (kg) na jednotku produktu

Cena za jednotku viroblenovaných produktov (krb.)

Riešenie. Je prijateľné, že je virobný x 1 virobiv ALE , vrobіv ože vrobiv Z. Aby bolo možné určiť optimálny plán variácií, je potrebné vyriešiť úlohu, ktorá pri maximalizácii cieľovej funkcie zodpovedá za uspokojenie útočného systému nezrovnalostí:

(52)

Yak bachimo, úloha (48) - (50) a (51) - (53) vytvárajú symetrický pár dvojitých úloh. Riešenie priameho problému dáva optimálny plán výberu vzoriek. A, oі Z, a rozhodnutie dvojitého - optimálny systém hodnotenia syroviny, zástupný výber týchto výberov. Aby bolo možné určiť rozvyazannya tsikh zavdan, vedľa poznať riešenie, či už od nich. Systém Oskіlki obmezhenie zavdannya (48) - (50) pomstiť nerovnosť mysle „ “, lepšie poznať členenie tejto úlohy. Rozhodnutie sa prijíma v tabuľke 14.

Z tabuľky je zrejmé, že optimálny plán výberu zásobníkov je taký, že je pripravených 82 zásobníkov o a 16 možností Z. S týmto plánom výroby zostáva 80 kg syrovínu typu II nepredaných a celkové množstvo výroby je viac ako 1340 rubľov. Z tabuliek 14 je tiež zrejmé, že optimálne riešenia dvoch problémov sú

Tabuľka 14

i Základ W b p0 10 14 12 0 0 0
p1 p2 p 3 p4 p5 p6
1
2
3
p2
p5
p 3
14
0
12
82
80
16
1340
19/8
23/8
-3/4
57/4
1
0
0
0
0
0
1
0
5/8
1/8
-1/4
23/4
0
1
0
0
-1/8
-5/8
1/4
5/4

Zmeny a významy znamenajú dve skóre jednej syroviny, zrejme I a III typu. Skóre je označené nulou a víťazí sirovina 1 a III s optimálnym plánom výroby produktov. Čiastkové skóre jedného typu sérotypu II je bližšie k nule. Tento typ syrovínu bude opäť víťazný s optimálnym plánom virobnitsie.

Týmto spôsobom môžete znášať kladné podčiarknutie, ako keby ste vyhrali s optimálnym plánom na výber skóre. K tomu podcenenie je určené nedostatkom syrovínu, ktorý vyhráva podnik. Hodnota dvojnásobného hodnotenia navyše ukazuje, o koľko sa zvyšuje maximálna hodnota cieľovej funkcie priamej úlohy s nárastom množstva syroviny podobného typu na 1 kg. Zvýšilo sa teda množstvo syroviny prvého typu na 1 kg skôr, ako bude možné poznať nový optimálny plán výroby virobivov s veľkým množstvom pripravovaných produktov, nárast o 5,75 rubľov. . a rovnajú sa 1340+5,7 5= 1345,75 RUB S týmto číslom, ktoré by malo byť v hornej časti vektorovej tabuľky 14, ukážte, že zvýšenie celkového počtu produktov, ktoré sa pripravuje, je možné dosiahnuť pre rahunok zbіlshennya vypusku vrobіv o za 5/8 jeden. že krátkodobé uvoľnenie virobiv Z za 1/4 jednej. V dôsledku čoho sa druhý typ whistleblowera zmení o 1/8 kg. Takže samotné zvýšenie 1 kg syrovínu typu III vám umožňuje poznať nový optimálny plán na výrobu sirupov s veľkým množstvom pripravovaných produktov, nárast o 1,25 rubľov. Nastavil som 1340 + 1,25 = 1341,25 rubľov. Ce sa dosiahne v prípade zvýšenia uvoľnenia hlasov Z za 1/4 jednej. ta zmena v priprave virobivu o 1/8 jedna, navyse to bol povinny victory syrovin II typu vzrastu o 5/8 kg.

Poďme sa pozrieť na optimálne binárne odhady. Výpočet minimálnej hodnoty cieľovej funkcie duálnej úlohy

Bachimo, scho nebude fungovať pre maximálnu hodnotu cieľovej funkcie výstupnej úlohy. Pri zdôvodňovaní optimálnych dvojitých odhadov pre systém je možné vziať

Po prvé, dvojitá úloha je prekonaná ako nedôslednosť suvora. Tse znamená, že hodnotenie syrovini je vznešené, že je víťazné pri výbere jedného druhu ALE, viac tsіni tsgogo virobu i, otzhe, nech virobi mysli ALE neviditeľný. Táto všestrannosť nie je potlačená optimálnym plánom pre priamy problém. Ďalšia a tretia výmena dvojitých úloh sú víťazné ako ekvivalencia suvori. Tse znamená, že sú dve desiatky syroviny, že víťazí pri výbere jedinej osoby oі Z, presne vo výške ich ceny. Preto ponúkame dva druhy produktov pre dve ocenenia ekonomicky a ekonomicky. Táto variabilita je nahradená optimálnym plánom priamej dodávky.

Týmto spôsobom čiastkové odhady úzko súvisia s optimálnym plánom priamej úlohy. Či už ide o zmenu voľných dní, ako optimálny plán je možné vložiť priamu úlohu a systém optimálnych dvojitých odhadov. Preto, aby bolo možné vykonať ekonomickú analýzu z rôznych odhadov s dvojitou hodnotou, je potrebné poznať interval odporu. Poďme ďalej, kým naraz neuvidíme, kto sme.

gastroguru 2017