programare liniară definiții de bază și teoreme

Acesta respectă deja cu planul de referință (termenul său coloană liberă).

Construirea unui plan optim. Pentru a sprijini programul a fost optim, în timp ce minimizează funcția obiectiv este necesar ca coeficienții din linia funcției obiectiv sunt non-pozitive (în cazul maximizării - non-negative). Ie atunci când caută minim avem nevoie pentru a scăpa de factorii pozitivi în linie.

Pentru a selecta elementul de rezoluție. În cazul în care căutarea minim în linia funcției obiectiv are coeficienți mai mari decât zero, apoi selectați coloana cu un coeficient pozitiv în linia funcției obiectiv ca permite. Lăsați această coloană cu numărul.

Pentru a selecta rezoluția rând (element de rezolvare a) între coeficienți pozitivi rezolvarea coloanei selectați (linia), pentru care raportul dintre coeficientul din coloana de termeni constante la coeficientul din coloana minim de eliberare:

- autorizare (ghidare) Element rând - rezoluție.

Pentru a accesa următorul tabel simplex (programul de sprijin cu următoarea valoare mai mică a funcției obiectiv) se face ro-van-TION eliminare Iordania membru permisivă-pas modifitsi.

Dacă în coloana de eliberare, nu există factori pozitivi, funcția obiectiv este nemarginita de mai jos (in timp ce maximizarea - unbounded de mai sus).


Pasul modificată excepție Iordania din tabelul simplex.

  1. În locul elementului 1 rezolvare este plasat și este împărțit la un element permite.

  2. Elementele rămase ale coloanei care permite schimbarea semnului opus și împărțit la elementul de autorizare.

  3. Elementele rămase ale liniilor de rezoluție sunt împărțite în membru permisiv.

  4. Toate celelalte elemente de tabel simplex se calculează cu următoarea formulă:

.
Reguli pentru alegerea elementelor de rezoluție în căutarea de programe de sprijin.

  1. În absența „0 rândul“ (constrângeri egalitate) și variabile „sa-un Bodnya“ (adică variabile care nu sunt impuse cerințe non - tsatel-Ness).

  • În cazul în care coloana de termeni liberi simplex de masă nu există elemente negative, planul de bază este găsit.

  • Există elemente negative în coloana de termeni liberi, de exemplu. În această linie, în căutarea coeficientul negativ al coeficientului de, și prin aceasta, determină rezoluția coloanei. Dacă nu găsiți Nega-negativ, atunci sistemul este restricții inconsecvent (anti-subiect de controverse).

  • Pe măsură ce selectați linia de rezoluție, ceea ce corespunde la un raport minim, în cazul în care - linia de rezoluție numărul. Astfel, - permițând elementului.

  • După ce se lasă elementul este găsit, nu pas de eliminare Iordania modificat cu elementul de ghidare și a trece la următorul tabel simplex.
2. În cazul prezenței constrângerilor de egalitate și variabile „libere“ se procedează după cum urmează.

  • Permiterea alege un element „0-line“ și să ia un pas modificat Iordania eliminare, și apoi trece din coloana de autorizare. Această secvență continuă până când rămășițele cel puțin un „0-line“ (tabelul este redus) în tabelul simplex.

  • În cazul în care, cu toate acestea, există, de asemenea, variabile libere, este necesar să se facă variabile de bază de date. Și după o variabilă liberă va fi baza în procesul de definire a elementelor de rezoluție în referința de căutare și planurile optime, această linie nu este luată în considerare (dar convertit).

Degenerescenței în probleme de programare liniară

Având în vedere metoda simplex, am presupus că problema de programare liniară este non-degenerat, adică, fiecare plan de sprijin conține componente exact pozitive, în cazul în care - numărul de constrângeri în problema. În degenerată numărul de planul de referință al componentei pozitive este mai mic decât numărul de constrângeri: unele variabile de bază corespunzătoare unui program de sprijin dat, să ia valori de zero. Folosind interpretarea geometrică pentru cel mai simplu caz în care (numărul de variabile nonbasic egal cu 2), ușor de distins de sarcina degenerată nedegenerata. Problema degenerate într-un nod de condiții se intersectează mai mult de două linii drepte descrise de ecuații ale formei. Aceasta înseamnă că una sau mai multe laturi ale poligonului sunt strânse la condițiile de punct.

În mod similar, dacă sunteți în secară-problemă-degenerat la un nod intersectează mai mult de 3 avioane.

În ipoteza unei non den-Ness a problemei a fost doar o singură valoare, în lungul căreia producția indicelui determinat-rom din termenii vectorilor de bază (derivate din numărul de variabile de bază). Problema singular se poate realiza în mai mulți indici SAH-o dată (pentru mai multe rânduri). În acest caz, planul de referință fiind găsit câteva variabile de bază sunt zero.

Dacă problema de programare liniară în E-TION este degenerat, atunci când o proastă alegere a condițiilor vectorului de bază la ieșire, poate fi o mișcare fără sfârșit în bazele de același plan de referință. Așa-numitul fenomen zatsik-Liban. Deși problemele practice ale buclei de programare liniară este extrem de rară, nu este exclus posibilitatea.

Una dintre metodele de luptă cu degenerării este de a transforma problema de „minor“ schimba vectorul de părți din dreapta ale sistemului de restricții privind dimensiunea, astfel încât sarcina a devenit un non --- degenerat, și, în același timp, această modificare nu afectează cu adevărat obiectivele optime planului .

algoritmi puse în aplicare includ adesea câteva reguli simple, care reduc riscul de bucle sau de a depăși aceasta.

Să variabila făcând baza. Luați în considerare setul de indici, care constă din cei pentru care atinse. Set de indici pentru care condiția dată se notează cu. Dacă constă dintr-un singur element, atunci baza condițiilor eliminate vector (variabila este nonground).

În cazul în care un membru al mai mult de un element, apoi compilat set care include cel care a atins. În cazul în care este format dintr-un singur indice, baza variabilei de ieșire. În caz contrar, setul se face, etc.

Practic, regula trebuie să fie utilizat în cazul în care bucla este deja găsit.