Bahay Pananaliksik Solusyon ng mga talahanayan ng simplex online nang detalyado. Halimbawa ng solusyon sa problema

Solusyon ng mga talahanayan ng simplex online nang detalyado. Halimbawa ng solusyon sa problema

11.4. DUAL SIMPLEX NA PARAAN

Sinusunod nito mula sa mga resulta ng mga nakaraang seksyon na upang makakuha ng solusyon sa orihinal na problema, maaari nating ipasa ang dalawahan at, gamit ang mga pagtatantya ng pinakamainam na disenyo nito, matukoy ang pinakamainam na solusyon sa orihinal na problema.

Ang paglipat sa dalawahang problema ay hindi kinakailangan, dahil kung isasaalang-alang natin ang unang simplex tableau na may karagdagang batayan ng yunit, kung gayon madaling makita na ang mga haligi ay naglalaman ng orihinal na problema, at ang dalawahang problema ay nakasulat sa mga hilera.

Tulad ng ipinakita, kapag nilutas ang direktang problema sa anumang pag-ulit, ang pagkakaiba, ibig sabihin. magnitude -coefficient na may variable, ay katumbas ng pagkakaiba sa pagitan ng kanan at kaliwang bahagi ng kaukulang pagpilit ng dalawahang problema. Kung, kapag nilulutas ang isang direktang problema sa isang maximizable na layunin function, ang pag-ulit ay hindi humahantong sa isang pinakamainam na solusyon, pagkatapos ay para sa hindi bababa sa isang variable at lamang sa pinakamainam para sa lahat pagkakaiba .

Isinasaalang-alang ang kundisyong ito na may duality na isinasaalang-alang, maaari tayong sumulat

.

Kaya, kung, tapos . Nangangahulugan ito na kapag ang solusyon sa pangunahing problema ay hindi optimal, ang solusyon sa dalawahang problema ay hindi wasto. Sa kabilang kamay sa . Ito ay nagpapahiwatig na ang pinakamainam na solusyon ng pangunahing problema ay tumutugma sa isang tinatanggap na solusyon ng dalawahang problema.

Ginawa nitong posible na bumuo ng isang bagong paraan para sa paglutas ng mga problema sa linear programming, kapag ginagamit kung saan, sa una, isang hindi katanggap-tanggap, ngunit "mas mahusay kaysa sa pinakamainam" na solusyon ay nakuha (sa karaniwang paraan ng simplex, una matanggap, ngunit suboptimal solusyon). Isang bagong pamamaraan na tinatawag dual simplex na pamamaraan, tinitiyak ang katuparan ng kondisyon ng pinakamainam na solusyon at ang sistematikong "approximation" nito sa lugar ng mga magagawang solusyon. Kapag ang nakuha na solusyon ay lumabas na tinatanggap, ang umuulit na proseso ng mga kalkulasyon ay nagtatapos, dahil ang solusyon na ito ay pinakamainam din.

Ang dual simplex method ay nagbibigay-daan sa paglutas ng mga problema sa linear programming na ang mga constraint system, na may positibong batayan, ay naglalaman ng mga libreng termino ng anumang sign. Ginagawang posible ng pamamaraang ito na bawasan ang bilang ng mga pagbabago sa sistema ng pagpilit pati na rin ang laki ng talahanayan ng simplex. Isaalang-alang ang aplikasyon ng dual simplex na pamamaraan gamit ang isang halimbawa.

Halimbawa. Hanapin ang minimum ng isang function

sa ilalim ng mga paghihigpit

.

Pumunta tayo sa canonical form:

sa ilalim ng mga paghihigpit

Ang paunang simplex tableau ay may anyo

Basic

mga variable

x 1

x 2

x 3

x 4

x 5

Solusyon

x 3

x 4

x 5

–3

–4

–1

–3

–3

–6

–2

–1

Paunang pangunahing solusyonpinakamainam, ngunit hindi katanggap-tanggap.

Tulad ng karaniwang simplex na paraan, ang paraan ng solusyon na isinasaalang-alang ay batay sa paggamit ng admissibility at optimality na mga kondisyon.

Kondisyon sa pagtanggap. Ang pinakamalaking negatibong pangunahing variable sa ganap na halaga ay pinili bilang ang ibinukod na variable (kung may mga alternatibo, ang pagpili ay ginagawa nang arbitraryo). Kung ang lahat ng mga pangunahing variable ay hindi negatibo, ang proseso ng pagkalkula ay nagtatapos, dahil ang resultang solusyon ay magagawa at pinakamainam.

Kundisyon pinakamainam. Ang variable na kasama sa batayan ay pinili mula sa mga di-basic na variable tulad ng sumusunod. Ang mga ratio ng mga coefficient ng kaliwang bahagi ay kinakalkula-mga equation sa kaukulang coefficient ng equation na nauugnay sa ibinukod na variable. Ang mga relasyon na may positibo o zero denominator ay hindi isinasaalang-alang. Sa problema ng pag-minimize ng input variable, ang pinakamaliit sa ipinahiwatig na mga ratio ay dapat na tumutugma, at sa problema ng pag-maximize, ang ratio na may pinakamaliit na ganap na halaga (kung may mga kahalili, ang pagpili ay ginawa nang arbitraryo). Kung ang mga denominator ng lahat ng mga ratio ay zero o positibo, ang problema ay walang magagawang solusyon.

Matapos piliin ang mga variable na isasama sa batayan at ibubukod, upang makuha ang susunod na solusyon, ang karaniwang operasyon ng pagbabago ng mga hilera ng simplex table ay isinasagawa.

Sa halimbawang ito, ang ibinukod na variable ay. Ang mga ratio na kinakalkula upang matukoy ang bagong base variable ay ipinapakita sa sumusunod na talahanayan:

Mga variable

x 1

x 2

x 3

x 4

x 5

Ang equation

x 4 - equation

–2

–4

–1

–3

Saloobin

Ang variable na isasama ay x 2. Ang kasunod na conversion ng string ay nagreresulta sa isang bagong simplex na talahanayan:

Basic

mga variable

x 1

x 2

x 3

x 4

x 5

Solusyon

x 3

x 2

x 5

–1

–1

Bagong solusyon pinakamainam din, ngunit hindi pa rin wasto. Bilang bagong ibinukod na variable, pipiliin namin (arbitraryo) x 3 . Tukuyin natin ang isang kasamang variable.

Mga variable

x 1

x 2

x 3

x 4

x 5

Ang equation

x 4 - equation

saloobin

Simplex na pamamaraan - ito ay isang paraan ng sunud-sunod na paglipat mula sa isang pangunahing solusyon (ang vertex ng solusyon polyhedron) ng sistema ng mga hadlang ng isang linear na problema sa programming patungo sa isa pang pangunahing solusyon hanggang ang layunin ng function ay kumuha ng pinakamainam na halaga (maximum o minimum).

Ang simplex na pamamaraan ay isang unibersal na pamamaraan na maaaring malutas ang anuman problema sa linear programming, habang ang graphical na paraan ay angkop lamang para sa dalawang-variable na constraint system.

Ang simplex na paraan ay iminungkahi ng Amerikanong matematiko na si R. Dantzig noong 1947, mula noon, para sa mga pangangailangan ng industriya, ang pamamaraang ito ay madalas na nilulutas ang mga problema sa linear programming na may libu-libong mga variable at mga hadlang.

Bago lumipat sa simplex method algorithm, ilang mga kahulugan.

Anumang di-negatibong solusyon sa isang sistema ng mga hadlang ay tinatawag katanggap-tanggap na solusyon .

Magkaroon ng sistema m mga paghihigpit mula sa n mga variable ( m n).

Tinatanggap na pangunahing solusyon ay isang solusyon na naglalaman ng m hindi negatibo major (basic ) mga variable at n - m hindi core . (hindi basic, o libre ) mga variable. Ang mga di-basic na variable sa pangunahing solusyon ay katumbas ng zero, habang ang pangunahing mga variable, bilang panuntunan, ay hindi zero, iyon ay, ang mga ito ay positibong numero.

Anuman m mga variable ng system m linear equation na may n mga variable ay tinatawag pangunahing , kung ang determinant ng mga coefficient sa kanila ay iba sa zero. Tapos yung iba n - m mga variable ay tinatawag hindi core (o libre ).

Simplex Method Algorithm

  • Hakbang 1. Dalhin ang linear programming problem sa canonical form. Upang gawin ito, ilipat ang mga libreng termino sa kanang bahagi (kung kabilang sa mga libreng terminong ito ay negatibo, pagkatapos ay i-multiply ang katumbas na equation o hindi pagkakapantay-pantay sa - 1) at ipasok ang mga karagdagang variable sa bawat hadlang (na may plus sign, kung nasa orihinal na hindi pagkakapantay-pantay ang sign ay mas mababa sa o katumbas ng ", at may minus sign kung "mas malaki kaysa sa o katumbas ng").
  • Hakbang 2. Kung sa resultang sistema m equation, pagkatapos m kunin ang mga variable bilang mga pangunahing, ipahayag ang mga pangunahing variable sa mga tuntunin ng mga di-basic, at hanapin ang kaukulang pangunahing solusyon. Kung ang nahanap na pangunahing solusyon ay lumabas na tinatanggap, pumunta sa tinatanggap na pangunahing solusyon.
  • Hakbang 3. Ipahayag ang function ng layunin sa mga tuntunin ng mga menor de edad na variable ng posible na pangunahing solusyon. Kung ang maximum (minimum) ng linear form ay natagpuan at walang mga di-basic na variable na may negatibong (positibong) coefficient sa pagpapahayag nito, kung gayon ang pinakamainam na pamantayan ay natutugunan at ang nagresultang pangunahing solusyon ay pinakamainam - ang solusyon ay tapos na. Kung, kapag hinahanap ang maximum (minimum) ng isang linear na anyo, ang expression nito ay naglalaman ng isa o higit pang mga di-basic na variable na may negatibong (positibong) coefficient, pumunta sa isang bagong pangunahing solusyon.
  • Hakbang 4. Mula sa mga di-basic na variable na kasama sa linear form na may negatibong (positibong) coefficient, piliin ang isa na tumutugma sa pinakamalaking (modulo) coefficient, at ilipat ito sa mga pangunahing. Pumunta sa hakbang 2.

Mahalagang kondisyon

Ang ilang mga espesyal na kaso ay tinalakay sa magkahiwalay na mga artikulo: kung kailan maximum na layunin function - infinity, kailan walang solusyon ang sistema, At kailan ang pinakamainam na solusyon ay hindi lamang isa .

Susunod, susuriin namin ang isang tipikal na halimbawa, kapag ang sistema ng mga hadlang ay pare-pareho at mayroong isang may hangganang pinakamabuting kalagayan, at isa lamang. Ang isang pagkakaiba-iba ng simplex na pamamaraan ay paraan ng pamamahagi para sa paglutas ng problema sa transportasyon .

Simplex na pamamaraan na may mga simplex na talahanayan

Sa pamamagitan ng pagbuo ng mga simplex na talahanayan, mas madaling lutasin ang isang linear na problema sa programming kaysa sa algebraic transformations, na ipinapakita sa susunod na talata. Ang mga simplex na talahanayan ay napaka-visual. Mayroong ilang mga uri ng mga patakaran para sa pagtatrabaho sa mga simplex na talahanayan. Susuriin namin ang panuntunan, na kadalasang tinatawag na nangungunang column at nangungunang row na panuntunan.

Magiging kapaki-pakinabang na buksan ang manu-manong Mga Aksyon na may mga praksyon sa isang bagong window: mayroong sapat na mga ito, mga praksyon sa mga problema sa paraan ng simplex, upang ilagay ito nang mahinahon.

Halimbawa.

Ipinakilala namin ang mga karagdagang di-negatibong variable at binabawasan ang sistemang ito ng mga hindi pagkakapantay-pantay sa isang katumbas na sistema ng mga equation

.

Ginawa ito bilang pagsunod sa sumusunod na panuntunan: kung ang sign sa orihinal na hadlang ay "mas mababa sa o katumbas ng", dapat idagdag ang karagdagang variable, at kung "mas malaki kaysa o katumbas ng", ang karagdagang variable ay dapat na ibinawas.

Ang ipinakilala na mga karagdagang variable ay kinuha bilang pangunahing (basic). Pagkatapos at ay mga di-basic (libre) na mga variable.

Ang pagpapahayag ng pangunahing (basic) na mga variable sa mga tuntunin ng di-basic (libre), nakukuha namin

Ipinapahayag din namin ang function ng layunin sa mga tuntunin ng mga di-basic (libre) na mga variable:

Mula sa mga coefficient ng mga variable (hindi alam) itinayo namin ang unang simplex tableau.

Talahanayan 1
Mga pangunahing hindi alam Libreng mga miyembroMaluwag na hindi alam Mga pantulong na coefficient
X1X2
X3-2 1 -2
X4-4 -1 -1
X52 1 -1
X66 0 1
F0 -1 -2

Ang huling hilera ng talahanayan, na naglalaman ng layunin na pag-andar at ang mga koepisyent ng mga libreng variable sa loob nito, ay tatawaging hilera ng index.

Ang resultang solusyon ay hindi pinakamainam, dahil ang mga koepisyent ng mga libreng variable sa hilera ng index ay negatibo. Iyon ay, ang pinakamainam na solusyon ay ang isa kung saan ang mga koepisyent ng mga libreng variable sa hilera ng index ay magiging mas malaki sa o katumbas ng zero.

Upang pumunta sa susunod na talahanayan, hanapin ang pinakamalaking (modulo) ng mga numero at . Ang numerong ito ay 2. Samakatuwid, ang nangungunang hanay ay ang hanay kung saan ito nakasulat

Upang matukoy ang nangungunang hilera, makikita natin ang pinakamababa sa mga ratio ng mga libreng miyembro sa mga elemento ng nangungunang hanay, at kung ang numerator ay may positibong numero at ang denominator ay negatibo, ang ratio ay itinuturing na katumbas ng infinity.

.

Samakatuwid, ang nangungunang linya ay ang isa kung saan ito nakasulat

Ang nangungunang elemento ay kaya -2.

Binubuo namin ang pangalawang simplex na talahanayan.

Ipinasok namin ang bagong pangunahing elemento sa unang linya, at ipinasok namin ang haligi kung saan ito nakatayo, nagpasok kami ng isang bagong libreng variable

Punan ang unang linya. Upang gawin ito, hinahati namin ang lahat ng mga numero sa nangungunang hilera ng talahanayan 1 sa nangungunang elemento at isulat ito sa kaukulang hanay ng unang hilera ng talahanayan 2, maliban sa numero sa nangungunang hanay, kung saan ang kapalit ng nangungunang elemento ay nakasulat (iyon ay, isa na hinati ng nangungunang elemento).

Punan ang column ng auxiliary coefficients. Para sa bilang na ito ng nangungunang haligi ng talahanayan 1, bilang karagdagan sa nangungunang elemento, sumulat kami na may kabaligtaran na mga palatandaan sa hanay ng mga pantulong na coefficient ng talahanayan 2.

talahanayan 2
Mga pangunahing hindi alam Libreng mga miyembroMaluwag na hindi alam Mga pantulong na coefficient
X1X3
X21 -1/2 -1/2
X4-3 -3/2 -1/2 1
X53 1/2 -1/2 1
X65 1/2 1/2 -1
F2 -2 -1 2

Sino ang hindi pa nagbubukas sa isang bagong window ng manu-manong Pagkilos na may mga praksyon, ay magagawa ito ngayon, dahil oras na.

Upang makuha ang natitirang mga hilera ng talahanayan 2, ang mga numero na nasa unang hilera ng talahanayang ito ay pinarami ng auxiliary coefficient sa row na pinupunan, at sa resulta ay idinagdag namin ang numero mula sa talahanayan 1, na nasa parehong hilera na may ang kaukulang baryabol.

Halimbawa, upang makuha ang libreng miyembro ng pangalawang hilera, i-multiply namin ang numero 1 sa 1 at idagdag ang numero -4 mula sa talahanayan 1. Nakukuha namin -3. Nahanap namin ang koepisyent para sa pangalawang linya sa parehong paraan: . Dahil walang column na may bagong free variable sa nakaraang table, ang coefficient ng pangalawang row sa column ng bagong free variable ay magiging (iyon ay, mula sa talahanayan 1 nagdaragdag kami ng 0, dahil walang haligi c sa talahanayan 1).

Ang linya ng index ay napunan sa parehong paraan:

Ang solusyon na nakuha ay muling hindi optimal, dahil ang mga koepisyent ng mga libreng variable sa hilera ng index ay muling negatibo.

Upang pumunta sa susunod na simplex table, hanapin natin ang pinakamalaking (modulo) ng mga numero at , iyon ay, ang mga module ng mga coefficient sa linya ng index. Ang numerong ito ay 2. Samakatuwid, ang nangungunang column ay ang column na naglalaman ng .

Upang hanapin ang nangungunang hilera, hanapin natin ang pinakamababang ratio ng mga libreng miyembro sa mga elemento ng nangungunang hilera. Nakukuha namin:

.

Samakatuwid, ang nangungunang linya ay ang isa kung saan nakasulat, at ang nangungunang elemento ay -3/2.

Pag-compile ng ikatlong simplex table

Isinulat namin ang bagong pangunahing variable sa unang linya. Sa column kung nasaan ito, nagpasok kami ng bagong libreng variable .

Unang linya:

Mga pantulong na coefficient:

Talahanayan 3
Mga pangunahing hindi alam Libreng mga miyembroMaluwag na hindi alam Mga pantulong na coefficient
X4X3
X12 -2/3 1/3
X22 -1/3 -1/3 1/2
X52 1/3 -2/3 -1/2
X64 1/3 1/3 -1/2
F6 -4/3 -1/3 2

Ang resultang solusyon ay muling hindi optimal, dahil ang mga koepisyent ng mga libreng hindi alam sa hilera ng index ay muling negatibo.

Upang pumunta sa ikaapat na simplex table, hanapin natin ang pinakamalaki sa mga numero at . Ito ay isang numero.

Samakatuwid, ang nangungunang column ay ang may .

Minimum na modulus ng mga relasyon ng mga libreng miyembro sa mga elemento ng nangungunang column:

.

Samakatuwid, ang nangungunang linya ay ang isa kung saan nakasulat, at ang nangungunang elemento ay 1/3.

Sa ikaapat na talahanayan ng simplex, isinusulat namin ang bagong pangunahing variable sa unang linya. Sa column kung nasaan ito, nagsusulat kami ng bagong libreng variable .

Unang linya:

Mga pantulong na coefficient:

Talahanayan 4
Mga pangunahing hindi alam Libreng mga miyembroMaluwag na hindi alam Mga pantulong na coefficient
X5X3
X46 3 -2
X16 2 -1 2/3
X24 1 -1 1/3
X62 -1 1 -1/3
F14 4 -3 4/3

Pagkalkula ng natitirang mga hilera gamit ang halimbawa ng pangalawang hilera:

Ang resultang solusyon ay hindi rin pinakamainam, ngunit ito ay mas mahusay kaysa sa mga nauna, dahil ang isa sa mga coefficient para sa mga libreng variable sa hilera ng index ay hindi negatibo.

Upang mapabuti ang plano, lumipat tayo sa susunod na simplex tableau.

Hanapin ang pinakamalaki sa mga numerong 4 at . Ang numerong ito ay 4. Samakatuwid, ang nangungunang column ay .

Upang mahanap ang nangungunang hilera, hanapin

.

Samakatuwid, ang nangungunang linya ay ang isa na naglalaman ng . Ngunit magkasama na sila sa mga libreng variable. Samakatuwid, upang ilipat ang susunod na variable mula sa libre patungo sa basic, pumili kami ng isa pang nangungunang column - ang isa kung saan nakasulat.

Upang mahanap ang nangungunang hilera, hanapin

.

Samakatuwid, ang pangunahing linya ay ang isa kung saan nakasulat, at ang nangungunang elemento ay 1.

Sa ikalimang simplex na talahanayan, ang bagong pangunahing variable ay nakasulat sa unang linya. Sa column kung nasaan ito, nagsusulat kami ng bagong libreng variable .

Unang linya:

Mga pantulong na coefficient:

Talahanayan 5
Mga pangunahing hindi alam Libreng mga miyembroMaluwag na hindi alam Mga pantulong na coefficient
X5X6
X32 -1 1
X410 2
X18 1
X26 1
F20 1 3 3

Subukan nating alamin kaagad kung ang solusyon ay hindi optimal. Samakatuwid, para sa natitirang mga hilera, kinakalkula lamang namin ang mga libreng termino (upang malaman ang mga halaga ng mga pangunahing variable kapag ang mga libreng variable ay katumbas ng zero) at ang mga coefficient para sa mga libreng variable sa hilera ng index.

Libreng mga miyembro:

Sa pangalawang linya;

Sa ikatlong linya;

Sa ikaapat na linya.

Linya ng index:

Tinitingnan namin ang simplex table 5. Nakita namin na ang pinakamainam na solusyon ay nakuha, dahil ang mga coefficient para sa mga libreng hindi alam sa index row ay hindi negatibo.

Simplex method na may algebraic transformations

Lutasin natin sa pamamagitan ng algebraic transformations ang parehong halimbawa tulad ng sa nakaraang talata. Dapat pansinin na kapag nilulutas ang ganitong uri ng simplex na pamamaraan, mas mahusay na huwag isulat ang function ng layunin sa form , dahil madaling malito sa mga palatandaan. Ngunit sa kasong ito, ang punto ng algorithm na tumutukoy sa pinakamainam na pamantayan ay mababago tulad ng sumusunod.

Kung ang maximum (minimum) ng linear form ay natagpuan at walang mga di-basic na variable na may positibong (negatibong) coefficients sa pagpapahayag nito, kung gayon ang pinakamainam na pamantayan ay natutugunan at ang resultang pangunahing solusyon ay pinakamainam - ang solusyon ay tapos na. Kung, kapag hinahanap ang maximum (minimum) ng isang linear na anyo, ang expression nito ay naglalaman ng isa o higit pang mga di-basic na variable na may positibong (negatibong) coefficient, pumunta sa isang bagong pangunahing solusyon.

Halimbawa. Hanapin ang maximum ng isang function sa ilalim ng mga hadlang

Hakbang I. Ipinakilala namin ang mga karagdagang di-negatibong variable at binabawasan ang sistemang ito ng mga hindi pagkakapantay-pantay sa isang katumbas na sistema ng mga equation

.

Ang mga ipinakilala na karagdagang mga variable ay kinuha bilang mga pangunahing, dahil sa kasong ito ang pangunahing solusyon ng system ay madaling mahanap. Pagkatapos at ay menor de edad variable.

Ang pagpapahayag ng mga pangunahing variable sa mga tuntunin ng mga di-basic, nakukuha namin

Dahil dito, ang paghahati ng mga variable sa basic at non-basic ay tumutugma sa pangunahing solusyon , na hindi wasto (dalawang variable ang negatibo), at samakatuwid ay hindi optimal. Lumipat tayo mula sa pangunahing solusyong ito patungo sa isang pinahusay na solusyon.

Upang magpasya kung aling variable ang dapat i-convert mula sa hindi prinsipal patungo sa punong-guro, isaalang-alang ang alinman sa dalawang magagamit na mga equation ng huling sistema na may mga negatibong libreng termino, halimbawa, ang pangalawa. Ipinapakita nito na at maaaring isalin sa mga pangunahing variable, dahil sa equation na ito mayroon silang mga positibong coefficient (samakatuwid, kapag tumaas ang mga ito, at mangyayari ito kung isasalin natin ang alinman sa mga ito sa pangunahing mga variable, tataas ang variable).

Subukan nating isalin sa pangunahing variable . Upang maitatag kung aling variable ang dapat ilipat mula sa pangunahing patungo sa hindi pangunahing, makikita natin ang ganap na halaga ng pinakamaliit na ratio ng mga libreng miyembro ng system sa mga coefficient sa . Meron kami . Ito ay nakuha mula sa ikatlong equation, na nagpapakita na ang variable ay dapat i-convert sa mga di-basic, na positibo sa orihinal na pangunahing solusyon. Dahil dito, ang nagreresultang pangunahing solusyon, tulad ng orihinal, ay naglalaman ng dalawang negatibong sangkap, ibig sabihin, walang pagpapabuti sa paglipat sa naturang pangunahing solusyon.

Simplex na Paraan− ito ay isang paraan ng ordered enumeration ng mga reference plan (ang pag-order ay sinisiguro ng monotonous na pagbabago sa halaga ng layuning function sa panahon ng paglipat sa susunod na plano). Sa kasong ito, kinakailangan na obserbahan ang prinsipyo: ang bawat susunod na hakbang ay dapat mapabuti o, sa matinding mga kaso, hindi lumala ang halaga ng layunin ng pag-andar.

Upang malutas ang LLP simplex na pamamaraan ito ay nabawasan sa canonical form, i.e. mula sa mga paghihigpit - hindi pagkakapantay-pantay kinakailangan na gumawa ng mga paghihigpit - pagkakapantay-pantay. Upang gawin ito, ang bawat hadlang ay pupunan ng karagdagang hindi negatibo variable ng balanse na may “+” sign kung ang inequality sign ay “£”, at may “–” sign kung ang inequality sign ay “³”.

Sa layunin ng function, ang mga karagdagang variable na ito ay pumapasok na may zero coefficients, i.e. hindi magbabago ang entry ng target na function. Ang bawat variable na hindi napapailalim sa non-negatibong kundisyon ay maaaring katawanin bilang pagkakaiba ng dalawang di-negatibong variable: .

Kung ang mga hadlang sa gawain ay sumasalamin sa pagkakaroon at pagkonsumo ng mga mapagkukunan, kung gayon ang numerical na halaga ng karagdagang variable sa plano ng gawain, na nakasulat sa canonical form, ay katumbas ng halaga ng hindi nagamit na mapagkukunan.

Upang malutas ang problema sa pamamagitan ng simplex na pamamaraan, gagamitin namin pinaikling simplex na mga talahanayan ng isang sistema ng mga linear na equation at ang binagong paraan ng pag-aalis ng Jordan.

1. Binuo namin ang unang pangunahing plano

Ang gawain ay nananatiling pareho. Dalhin natin ang karaniwang anyo ng sistema ng mga hindi pagkakapantay-pantay (1) sa kanonikal na anyo ng sistema ng mga equation sa pamamagitan ng pagpapakilala ng mga karagdagang variable ng balanse x 3 , x 4 , x 5 ,x 6 .

Sa pang-ekonomiyang kahulugan, ang mga halaga ng karagdagang mga variable x 3 , x 4 , x 5 matukoy ang balanse ng mga hilaw na materyales pagkatapos ng pagbebenta ng mga produkto.

Ang matrix ng nagresultang sistema ng mga equation ay may anyo:

Ito ay makikita na sa matrix A ang batayang minor ng ika-4 na order ay ang determinant, na binubuo ng mga unit coefficient para sa mga karagdagang variable x 3 , x 4 , x 5 ,x 6 , dahil ito ay hindi zero at katumbas ng 1. Nangangahulugan ito na ang mga column vectors para sa mga variable na ito ay linearly independent, i.e. anyo batayan, at ang mga kaukulang variable x 3 , x 4 , x 5 ,x 6 ay basic(basic). Mga variable x 1 , x 2 ang tatawagin libre(menor de edad).

Kung ang mga libreng variable x 1 at x 2 upang magtakda ng iba't ibang mga halaga, pagkatapos, ang paglutas ng sistema na may paggalang sa mga pangunahing variable, makakakuha tayo ng isang walang katapusang hanay ng mga partikular na solusyon. Kung ang mga zero na halaga lamang ang itinakda para sa mga libreng variable, pagkatapos ay mula sa isang walang katapusang hanay ng mga partikular na solusyon, mga pangunahing solusyon- mga pangunahing plano.

Upang malaman kung ang mga variable ay maaaring maging basic, kinakailangan upang kalkulahin ang determinant na binubuo ng mga coefficient ng mga variable na ito. Kung ang determinant na ito ay hindi katumbas ng zero, ang mga variable na ito ay maaaring maging basic.


Ang bilang ng mga pangunahing solusyon at ang kaukulang bilang ng mga pangkat ng mga pangunahing variable ay maaaring hindi hihigit sa , kung saan n ay ang kabuuang bilang ng mga variable, r ay ang bilang ng mga pangunahing variable, rmn.

Para sa ating gawain r = 4; n= 6. Pagkatapos , ibig sabihin. Posible ang 15 grupo ng 4 na pangunahing variable (o 15 pangunahing solusyon).

Ating lutasin ang sistema ng mga equation na may paggalang sa mga pangunahing variable x 3 , x 4 , x 5 ,x 6:

Ipagpalagay na ang mga libreng variable x 1 = 0, x 2 = 0, nakukuha namin ang mga halaga ng mga pangunahing variable: x 3 = 312; x 4 = 15; x 5 = 24;x 6 = -10, ibig sabihin. ang pangunahing solusyon ay magiging = (0; 0; 312; 15; 24; -10).

Ang pangunahing solusyon na ito ay hindi katanggap-tanggap, dahil x 6 = –10 ≤ 0, at ayon sa kondisyon ng pagpilit x 6 ≥ 0. Samakatuwid, sa halip na ang variable x 6 bilang batayan, kailangan mong kumuha ng isa pang variable mula sa libre x 1 o x 2 .

Isasagawa namin ang karagdagang solusyon gamit ang mga pinaikling talahanayan ng simplex, pinupunan ang mga hilera ng unang talahanayan ng mga coefficient ng system tulad ng sumusunod (Talahanayan 1):

Talahanayan 1

F- ang string ay tinatawag index. Ito ay puno ng mga coefficient ng layunin ng pag-andar na kinukuha ng mga kabaligtaran na mga palatandaan, dahil ang equation ng function ay maaaring katawanin bilang F = 0 – (– 4x 1 – 3x 2).

Sa column ng mga libreng miyembro b i may negatibong elemento b 4 = -10, ibig sabihin. ang solusyon ng system ay hindi wasto. Upang makakuha ng wastong solusyon (base plan), ang elemento b 4 ay dapat gawing hindi negatibo.

Pumili x 6 - isang linya na may negatibong libreng miyembro. Ang linyang ito ay naglalaman ng mga negatibong elemento. Pumili ng alinman sa mga ito, halimbawa, "-1" sa x 1 -kolum, at x 1 - column tanggapin bilang column ng pahintulot(tutukoy nito na ang variable x 1 ay pupunta mula sa libre hanggang sa basic).

Nagbabahagi kami ng mga libreng miyembro b i sa mga kaugnay na elemento a ay paglutas ng column, nakukuha namin ebalwasyong relasyonΘ i==(24, 15, 12, 10). Sa mga ito, pinipili namin ang pinakamaliit na positibo (minΘ i=10), na tumutugma sa linya ng pahintulot. Ang string ng pahintulot ay tumutukoy sa isang variable xj, na sa susunod na hakbang ay nakausli mula sa batayan at nagiging libre. kaya lang x Ang 6 -line ay isang permissive na linya, at ang elementong "-1" ay elementong nagpapagana. Inikot namin ito. Mga variable x 1 at x 6 ang pinagpalit.

Mga tinantyang ratio Θ i sa bawat linya ay tinutukoy ng mga patakaran:

1) Θ i= kung b i at a ay may iba't ibang mga palatandaan;

2) Θ i= ∞ kung b i= 0 at a ay < 0;

3) Θ i= ∞ kung a ay = 0;

4) Θ i= 0 kung b i= 0 at a ay > 0;

5) Θ i= kung b i at a ay may parehong mga palatandaan.

Ginagawa namin ang hakbang ng binagong Jordan elimination (MJJI) na may permissive element at nag-compile ng bagong talahanayan (Talahanayan 2) ayon sa sumusunod na panuntunan:

1) sa lugar ng elemento ng paglutas (RE), ang isang halaga ay itinakda, ang kabaligtaran nito, i.e. ;

2) ang mga elemento ng permissive line ay nahahati sa RE;

3) ang mga elemento ng paglutas ng column ay nahahati sa RE at nagbabago ang sign;

4) ang natitirang mga elemento ay matatagpuan ayon sa panuntunan ng parihaba:

Mula sa Table. 2 ay nagpapakita na ang mga libreng miyembro sa b i-ang haligi ay hindi negatibo, samakatuwid, ang paunang tinatanggap na solusyon ay nakuha - unang batayang plano= (10; 0; 182; 5; 4; 0). Sa kasong ito, ang halaga ng function F() = 40. Sa geometriko, ito ay tumutugma sa tuktok F(10; 0) solusyon polygon (Larawan 1).

talahanayan 2

2. Sinusuri namin ang plano para sa pinakamainam. Ang batayang plano ay hindi optimal, dahil sa F-linya ay may negatibong koepisyent na "-4". Pagbutihin namin ang plano.

3. Paghahanap ng bagong baseline

Pinipili namin ang pinapayagang elemento ayon sa panuntunan:

Pinipili namin ang pinakamaliit na negatibong koepisyent sa F-line "-4", na tumutukoy sa pagpapagana ng column - x 6; variable x 6 isalin sa basic;

Nahanap namin ang mga ratios Θ i, kasama ng mga ito ay pipiliin namin ang pinakamaliit na positibo, na tumutugma sa permissive string:

min Θ i = min(14, 5, 2, ∞) = 2, samakatuwid x 5 - linya - permissive, variable x 5 isinasalin namin sa libre (mga variable x 5 at x 6 ay ipinagpalit).

Sa intersection ng permissive row at column ay ang permissive element na "2";

Ginagawa namin ang hakbang na SHMZhI, itinatayo namin ang talahanayan. 3 ayon sa tuntunin sa itaas at kumuha ng bagong reference plan = (12; 0; 156; 3; 0; 2).

Talahanayan 3

4. Sinusuri ang bagong pangunahing plano para sa pinakamainam

Ang base plan ay hindi rin optimal, dahil sa F-linya ay may negatibong koepisyent na "-1". Halaga ng function F() = 48, na geometrical na tumutugma sa tuktok E(12; 0) solusyon polygon (Larawan 1). Pagbutihin namin ang plano.

5. Paghahanap ng bagong baseline

x Ang 2-column ay permissive, dahil sa F-linya ang pinakamaliit na negatibong koepisyent na "-1" ay nasa x 2-column (Δ 2 = -1). Paghahanap ng pinakamaliit na Θ i: min Θ i = min(≈ 9, 6, ∞, 24) = 6, samakatuwid x Ika-4 na linya - permissive. Pinahihintulutang elemento "1/2". Pagpapalit ng mga variable x 2 at x apat. Ginagawa namin ang hakbang na SHMZhI, itinatayo namin ang talahanayan. 4, nakakakuha tayo ng bagong reference plan = (9; 6; 51; 0; 0; 5).

6. Sinusuri ang pangunahing plano para sa pinakamainam

AT F-line, ang lahat ng mga coefficient ay hindi negatibo, samakatuwid, ang reference plan ay pinakamainam. Geometrically tumutugma sa isang punto D(9;6) (tingnan ang Fig. 1). Ang pinakamainam na plano ay nagbibigay ng pinakamataas na halaga ng layunin ng function c.u.

Pangunahing ang ideya ng isang simplex na pamamaraan para sa paglutas ng LLP ay binubuo sa pare-parehong pagpapabuti ng mga solusyon sa suporta ng LLP.

Mayroong ilang mga paraan upang isulat ang simplex na pamamaraan.

  1. Ang pangunahing anyo ng simplex na paraan;
  2. Simplex method sa anyo ng simplex table;
  3. Binagong paraan ng simplex;
  4. Simplex na paraan sa columnar form;
  5. Simplex na paraan sa row form.

Tukuyin natin ang pinakamataas na halaga ng layunin ng function F(X) = 3x 1 +5x 2 +4x 3 sa ilalim ng mga sumusunod na kundisyon ng pagpilit.
0.1x 1 +0.2x 2 +0.4x 3 ≤1100
0.05x 1 +0.02x 2 +0.02x 3 ≤120
3x1 +x2 +2x3 ≤8000

Upang makabuo ng unang reference na plano, binabawasan namin ang sistema ng mga hindi pagkakapantay-pantay sa isang sistema ng mga equation sa pamamagitan ng pagpapakilala ng mga karagdagang variable (transition sa canonical form).
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 = 8000

Pangunahing notasyon ng simplex na pamamaraan

Ang solusyon ay isinasagawa sa pamamagitan ng pagpapahayag ng mga pangunahing variable sa pamamagitan ng mga di-basic:
x0 = 3x1 +5x2 +4x3
x 4 = 1100-0.1x 1 -0.2x 2 -0.4x 3
x 5 = 120-0.05x 1 -0.02x 2 -0.02x 3
x 6 = 8000-3x 1 -x 2 -2x 3

Simplex method sa anyo ng simplex table

Ang solusyon ay isinasagawa sa anyo ng isang simplex table. Ang form ay idinisenyo para sa pag-compute sa isang computer. Kapag gumagamit ng isang artipisyal na batayan, isang espesyal na numero M ang ginagamit (karaniwan ay 10000).
Plano Batayan AT 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
Linya ng index F(X1) 0 -3 -5 -4 0 0 0 0
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
Linya ng index F(X2) 27500 -0.5 0 6 25 0 0 0
3 x2 5375 0 1 2.25 6.25 -12.5 0 11000
x1 250 1 0 -0.5 -2.5 25 0 250
x6 1875 0 0 1.25 1.25 -62.5 1 1000
Linya ng index F(X3) 27625 0 0 5.75 23.75 12.5 0 0

Binagong paraan ng simplex

Coefficient matrix A = a ij

Matris b.

Pag-ulit #1.
= (4, 5, 6)

Matris c.
c = (-3, -5, -4, 0, 0, 0)
c B = (0, 0, 0)
c N = (-3, -5, -4)

Kinakalkula namin:
Ang matrix B -1 ay kinakalkula sa pamamagitan ng algebraic na mga karagdagan.

u = c B B -1 = (0, 0, 0)

Simplex na paraan sa columnar form

Dumaan kami sa columnar form ng simplex na paraan. Ipinapahayag namin ang bawat variable sa mga tuntunin ng mga di-basic.
x 0 = 0-3(-x 1)-5(-x 2)-4(-x 3)+0(-x 4)+0(-x 5)+0(-x 6)
x 1 = 0-1(-x 1)+0(-x 2)+0(-x 3)+0(-x 4)+0(-x 5)+0(-x 6)
x 2 = 0+0(-x 1)-1(-x 2)+0(-x 3)+0(-x 4)+0(-x 5)+0(-x 6)
x 3 = 0+0(-x 1)+0(-x 2)-1(-x 3)+0(-x 4)+0(-x 5)+0(-x 6)
x 4 = 1100+0.1(-x 1)+0.2(-x 2)+0.4(-x 3)+1(-x 4)+0(-x 5)+0(-x 6)
x 5 = 120+0.05(-x 1)+0.02(-x 2)+0.02(-x 3)+0(-x 4)+1(-x 5)+0(-x 6)
x 6 = 8000+3(-x 1)+1(-x 2)+2(-x 3)+0(-x 4)+0(-x 5)+1(-x 6)

Ang sistemang ito ay tumutugma sa talahanayan T 0 .

0 -1 0 0
0 0 -1 0
0 0 0 -1
1100 0.1 0.2 0.4
120 0.05 0.02 0.02
8000 3 1 2
0 -3 -5 -4

Simplex na paraan sa string form

Bilang paunang tinatanggap na base, maaari nating kunin ang B 0 =<4, 5, 6>. Ito ay tumutugma sa sumusunod na talahanayan.
1100 0.1 0.2 0.4 1 0 0
120 0.05 0.02 0.02 0 1 0
8000 3 1 2 0 0 1
0 -3 -5 -4 0 0 0

Ang matrix Q, na binubuo ng mga coefficient ng system, ay tinatawag simplex na talahanayan katumbas ng base B. Ang simplex tableau ay tinatawag matanggap, o direktang tinatanggap, kung q i0 ≥ 0. Ang mga elemento q i0 ng huling hilera ng simplex table Q ay tinatawag kamag-anak na pagtatantya.

Mga anyo ng solusyon sa pamamagitan ng paraan ng artipisyal na batayan

Para sa paggamit ng mga artipisyal na variable na ipinakilala sa layunin ng pag-andar, isang tinatawag na parusa ng M ang ipinapataw, isang napakalaking positibong numero, na karaniwang hindi tinukoy.
Ang resultang batayan ay tinatawag na artipisyal na batayan, at ang paraan ng solusyon ay tinatawag na paraan ng artipisyal na batayan.
Bukod dito, ang mga artipisyal na variable ay hindi nauugnay sa nilalaman ng gawain, ngunit pinapayagan ka nitong bumuo ng isang panimulang punto, at pinipilit ng proseso ng pag-optimize ang mga variable na ito na kumuha ng mga zero na halaga at tiyakin ang pagiging matanggap ng pinakamainam na solusyon.

Mga anyo ng solusyon sa pamamagitan ng paraan ng artipisyal na batayan:

  1. M-paraan (simplex table);
  2. two-stage o two-phase simplex method (Basic notation, Modified simplex method, Simplex method sa column form, Simplex method sa line form).

Kung may mga paghihigpit na may sign na ≥ sa kondisyon ng problema, maaari silang bawasan sa anyo na ∑a ji b j sa pamamagitan ng pagpaparami ng parehong bahagi ng hindi pagkakapantay-pantay sa -1. Ipinakilala namin ang m karagdagang mga variable x n+j ≥0(j =1,m ) at binago namin ang mga hadlang sa anyo ng mga pagkakapantay-pantay

(2)

Ipagpalagay natin na ang lahat ng mga inisyal na variable ng problema x 1 , x 2 ,..., x n ay hindi basic. Pagkatapos ang mga karagdagang variable ay magiging basic, at ang isang partikular na solusyon sa sistema ng mga hadlang ay may anyo

x 1 = x 2 = ... = x n = 0, x n+ j = b j , j =1,m . (3)

Dahil sa kasong ito ang halaga ng function ng layunin F 0 = 0 , maaari nating katawanin ang F(x) tulad ng sumusunod:

F(x)=∑c i x i + F 0 =0 (4)

Ang unang simplex table (simplex table 1) ay pinagsama-sama batay sa mga equation (2) at (4). Kung ang mga karagdagang variable na x n+j ay pinangungunahan ng “+” sign, tulad ng sa (2), kung gayon ang lahat ng mga coefficient bago ang mga variable x i at ang libreng termino b j ay ipinasok sa simplex table nang walang pagbabago. Ang mga coefficient ng function ng layunin sa panahon ng pag-maximize nito ay ipinasok sa ilalim na linya ng simplex table na may kabaligtaran na mga palatandaan. Ang mga libreng miyembro sa simplex table ay tumutukoy sa solusyon ng problema.

Ang algorithm para sa paglutas ng problema ay ang mga sumusunod:

1st step. Tinitingnan ang mga elemento ng column ng libreng miyembro. Kung lahat sila ay positibo, kung gayon ang isang katanggap-tanggap na pangunahing solusyon ay natagpuan at ang isa ay dapat magpatuloy sa hakbang 5 ng algorithm, na tumutugma sa paghahanap ng pinakamainam na solusyon. Kung may mga negatibong libreng termino sa paunang simplex tableau, kung gayon ang solusyon ay hindi wasto at dapat kang pumunta sa hakbang 2.

ika-2 hakbang. Upang makahanap ng isang magagawa na solusyon, ay isinasagawa, habang ito ay kinakailangan upang magpasya kung alin sa mga di-pangunahing mga variable ang isasama sa batayan at kung aling variable ang aalisin mula sa batayan.

Talahanayan 1.

x n
mga variable na batayan Libreng mga miyembro sa mga paghihigpit Mga di-pangunahing variable
x 1 x2 ... x l ...
xn+1 b 1 isang 11 isang 12 ... isang 1l ... isang 1n
xn+2 b 2 isang 21 isang 22 ... isang 2l ... isang 2n
. . . . . . . .
. . . . . . . .
. . . . . . . .
xn+r b2 isang r1 isang r2 ... isang rl ... isang rn
. . . . . . . .
. . . . . . . .
. . . . . . . .
xn+m b m isang m1 isang m2 ... aml ... amn
F(x) max F0 -c 1 -c 2 ... -c 1 ... -c n

Upang gawin ito, pumili ng alinman sa mga negatibong elemento ng column ng mga libreng miyembro (hayaan itong maging b 2 na nangunguna, o nagpapahintulot. Kung walang negatibong elemento sa row na may negatibong libreng miyembro, kung gayon ang sistema ng mga paghihigpit ay hindi pare-pareho at walang solusyon ang problema.

Kasabay nito, ang variable na unang nagbabago ng sign na may pagtaas sa napiling NP x l ay hindi kasama sa BP. Ito ay magiging x n+r , na ang index r ay tinutukoy mula sa kundisyon

mga. ang variable na tumutugma sa pinakamaliit na ratio ng libreng termino sa elemento ng napiling nangungunang column. Ang relasyong ito ay tinatawag ugnayang simplex. Ang mga positibong simplex na relasyon lamang ang dapat isaalang-alang.

Ang string na naaayon sa variable na x n+r ay tinatawag nangunguna, o nagpapahintulot. Ang elemento ng simplex table a rl , na nasa intersection ng nangungunang hilera at nangungunang column, ay tinatawag na leading o resolving element. Ang paghahanap ng nangungunang elemento ay nagtatapos sa gawain sa bawat susunod na simplex tableau.

ika-3 hakbang. Ang isang bagong talahanayan ng simplex ay kinakalkula, ang mga elemento na kung saan ay muling kinakalkula mula sa mga elemento ng simplex na talahanayan ng nakaraang hakbang at minarkahan ng isang prime, i.e. b" j , a" ji , c" i , F" 0 . Ang mga elemento ay muling kinakalkula ayon sa mga sumusunod na formula:

Una, ang row at column na nangunguna sa nakaraang simplex table ay pupunan sa bagong simplex table. Ang pagpapahayag (5) ay nangangahulugan na ang elementong a "rl bilang kapalit ng nangunguna elemento ay katumbas ng kapalit ng elemento ng nakaraang simplex table. Ang mga elemento ng row a ri ay hinahati sa nangungunang elemento, at ang mga elemento ng Ang column a jl ay hinahati din ng nangungunang elemento, ngunit kinukuha gamit ang kabaligtaran na tanda. Ang mga elemento b" r at c" l ay kinakalkula ayon sa parehong prinsipyo.

Ang natitirang mga formula ay madaling maisulat gamit ang .

Ang parihaba ay itinayo ayon sa lumang simplex na talahanayan sa paraang ang isa sa mga diagonal nito ay nabuo sa pamamagitan ng mga recalculated (a ji) at nangungunang (a rl) na elemento (Fig. 1). Ang pangalawang dayagonal ay natatanging tinutukoy. Upang makahanap ng bagong elementong a "ji, ang produkto ng mga elemento ng kabaligtaran na dayagonal na hinati sa nangungunang elemento ay ibinabawas sa elementong a ji (ito ay ipinahiwatig ng tanda" - "sa cell). Katulad nito, ang mga elemento b" j, (j≠r) at c" i ay muling kinakalkula, (i≠l).

ika-4 na hakbang. Ang pagsusuri ng isang bagong simplex na talahanayan ay nagsisimula sa unang hakbang ng algorithm. Nagpapatuloy ang pagkilos hanggang sa matagpuan ang isang posible na pangunahing solusyon, i.e. lahat ng elemento ng column ng libreng miyembro ay dapat positibo.

ika-5 hakbang. Naniniwala kami na may nakitang katanggap-tanggap na pangunahing solusyon. Tinitingnan namin ang mga coefficient ng linya ng layunin function F(x) . Ang isang tanda ng pinakamainam ng isang simplex na talahanayan ay ang di-negatibiti ng mga koepisyent para sa mga hindi pangunahing variable sa F-row.

kanin. 1. Parihaba na panuntunan

Kung kabilang sa mga coefficient ng F-row ay may negatibo (maliban sa libreng termino), kailangan mong pumunta sa isa pang pangunahing solusyon. Kapag mina-maximize ang function ng layunin, kasama sa batayan ang sa mga di-basic na variable (halimbawa, x l), na ang column ay tumutugma sa maximum na absolute value ng negatibong coefficient c l sa ibabang row ng simplex table. Binibigyang-daan ka nitong piliin ang variable na ang pagtaas ay humahantong sa pagpapabuti sa function ng layunin. Ang column na naaayon sa variable x l ay tinatawag na leading column. Kasabay nito, ang variable na x n+r ay hindi kasama sa batayan, ang index r nito ay tinutukoy ng pinakamababang simplex ratio:

Ang hilera na tumutugma sa x n+r ay tinatawag na nangungunang hilera, at ang elemento ng simplex na talahanayan a rl , na nasa intersection ng nangungunang hilera at ng nangungunang hanay, ay tinatawag nangungunang elemento.

ika-6 na hakbang. ayon sa mga tuntuning itinakda sa ika-3 hakbang. Ang pamamaraan ay nagpapatuloy hanggang sa makahanap ng pinakamainam na solusyon o napagpasyahan na wala ito.

Kung sa proseso ng pag-optimize ng solusyon sa nangungunang hanay ang lahat ng mga elemento ay hindi positibo, kung gayon ang nangungunang hilera ay hindi mapipili. Sa kasong ito, ang function sa domain ng mga tinatanggap na solusyon ng problema ay hindi nakatali mula sa itaas at F max ->&∞.

Kung sa susunod na hakbang ng paghahanap para sa isang extremum ang isa sa mga pangunahing variable ay magiging katumbas ng zero, kung gayon ang kaukulang pangunahing solusyon ay tinatawag na degenerate. Sa kasong ito, ang tinatawag na looping ay nangyayari, na kung saan ay nailalarawan sa pamamagitan ng ang katunayan na ang parehong kumbinasyon ng BP ay nagsisimula na ulitin sa isang tiyak na dalas (ang halaga ng function F ay napanatili sa kasong ito) at imposibleng lumipat sa isang bagong katanggap-tanggap na pangunahing solusyon. Ang pag-loop ay isa sa mga pangunahing disadvantages ng simplex na paraan, ngunit ito ay medyo bihira. Sa pagsasagawa, sa ganitong mga kaso, ang isa ay karaniwang tumatanggi na ipasok sa batayan ang variable na ang hanay ay tumutugma sa pinakamataas na ganap na halaga ng negatibong koepisyent sa layunin ng pag-andar, at isang random na pagpili ng isang bagong pangunahing solusyon ay ginawa.

Halimbawa 1. Lutasin ang isang problema

max(F(x) = -2x 1 + 5x 2 | 2x 1 + x 2 ≤7; x 1 + 4x 2 ≥8; x 2 ≤4; x 1.2 ≥0)

Simplex na paraan at magbigay ng geometric na interpretasyon ng proseso ng solusyon.

Ang graphical na interpretasyon ng solusyon ng problema ay ipinapakita sa fig. 2. Ang maximum na halaga ng function ng layunin ay naabot sa tuktok ng ODZP na may mga coordinate . Solusyonan natin ang problema gamit ang simplex tables. I-multiply ang pangalawang hadlang sa (-1) at ipakilala ang mga karagdagang variable upang dalhin ang mga hindi pagkakapantay-pantay sa anyo ng mga pagkakapantay-pantay, pagkatapos

Ang mga paunang variable na x 1 at x 2 ay kinuha bilang hindi basic, at ang karagdagang x 3 , x 4 at x 5 ay itinuturing na basic at nag-compile kami ng simplex table (simplex table 2). Ang solusyon na naaayon sa simplex table. 2, ay hindi wasto; ang nangungunang elemento ay nakabalangkas at pinili alinsunod sa hakbang 2 ng algorithm sa itaas. Ang susunod na tab na simplex. 3 ay tumutukoy sa isang tinatanggap na pangunahing solusyon; 2 Ang nangungunang elemento ay binalangkas at pinili alinsunod sa ika-5 hakbang ng algorithm para sa paglutas ng problema. Tab. 4 ay tumutugma sa pinakamainam na solusyon ng problema, samakatuwid: x 1 = x 5 = 0; x 2 \u003d 4; x 3 \u003d 3; x 4 = 8; F max = 20.

kanin. 2. Graphical na solusyon ng problema



Bago sa site

>

Pinaka sikat