You are on page 1of 3

Laboratorul 2 Algoritmul simplex primal.

Metoda celor dou¼ a faze
Problema 1 S¼ a se rezolve: 8 sup(3x1 + 4x2 ) > > > > < x1 + 4x2 28 3x1 + x2 21 : > > > x1 + x2 10 > : x1 0; x2 0

Rezolvare

Problema este în form¼ a canonic¼ a¸ si pentru aplicarea algoritmului simplex trebuie s¼ a o aducem mai întâi la forma standard, întroducând variabilele ecart x3 ; x4 ; x5 : 8 sup(3x1 + 4x2 ) > > > > 28 < x1 + 4x2 + x3 = 3x1 + x2 + x4 = 21 > > + x5 = 10 > x1 + x2 > : xi 0; i = 1; 5

:

Baza ini¸ tial¼ a B0 este o matrice unitate I3 , variabilele de baz¼ a sunt x3 ; x4 ¸ si x5 iar variabilele secundare x1 ¸ si x2 : Solu¸ tia de baz¼ a corespunz¼ atoare este x1 = x2 = 0; x3 = 28; x4 = 21; x5 = 10: Baza B0 = (a3 a4 a5 ) este primal admisibil¼ a pentru c¼ a xB = B0 1 b = b = (28 21 10)T 0; B = f3; 4; 5g ; R = f1; 2g :

Determinarea unui program de baz¼ a ini¸ tial
Determinarea unei baze primal admisibile la pasul 0 al algoritmului simplex constituie uneori o parte important¼ a a rezolv¼ arii modelului pentru care exist¼ a metode speciale ca metoda celor dou¼ a faze ( a bazei arti…ciale) ¸ si metoda coe…cien¸ tilor de penalizare. Nu se aleg la întâmplare m coloane din cele n coloane ale matricii A pentru c¼ a ele ar putea … liniar dependente sau solu¸ tia de baz¼ a corespunz¼ atoare ar putea … neadmisibil¼ a. Metoda celor dou¼ a faze Fie modelul de programare liniar¼ a în forma standard: 8 < sup(inf)cT x Ax = b : x 0: 1

(1)

în caz contrar se înmul¸ teste ecua¸ tia al c¼ arei termen liber este negativ cu 1. :::0)T care se g¼ asesc printre coloanele ei: Dac¼ a exist¼ a to¸ ti stia formeaz¼ a o baz¼ a B = Im care este ¸ si cei m vectori unitari ei . pân¼ a când matricea sistemului de restric¸ tii con¸ tine m vectori unitari. Problema 2 . :::. 1 e = (AIm ) ¸ e) = temului Ax + xa = b este A si are m linii. în anumite restric¸ tii. introducem unele variabile suplimentare numite variabile arti…ciale. totdeauna cu coe…cientul +1. Pentru a putea extrage din solu¸ tia modelului extins o solu¸ tie pentru modelul dat trebuie ca. S¼ a se rezolve problema: 8 sup(5x1 + 5x2 + 4x3 ) > > > > < x1 + x2 + x3 + x4 = 60 2x1 + x2 + 3x3 x5 = 90 > > x2 + 2x3 x6 = 40 > > : xi 0. care trebuie s¼ a devin¼ a minim¼ a: 8 a < inf xa n+1 + ::: + xn+m a Ax + x = b : x 0. atunci modelul (1) este imposibil. m + n coloane ¸ si rang (A m < m + n: Bazei ini¸ tiale Im care este ¸ si primal admisibil¼ a îi corespunde programul xa = b. Dac¼ a se ajunge la o solu¸ tie optim¼ a a modelului extins. Se ob¸ tine un model extins ale c¼ arui solu¸ tii nu corespund totdeauna cu solu¸ tiile modelului ce trebuie rezolvat. In cazul în care dup¼ a prima faz¼ a valoarea func¸ tiei obiectiv este zero. variabilele arti…ciale s¼ a ia valoarea zero. suma tuturor variabilelor arti…ciale. x = 0: Se aplic¼ a algoritmul simplex modelului extins (2) cu aceast¼ a baz¼ a ini¸ tial¼ a. Scriind coloanele matricei A se pun în eviden¸ ta ¼ vectorii unitari ei = (0. în care consider¼ am drept func¸ tie obiectiv. ace¸ primal admisibil¼ a pentru c¼ a B 1 b = b 0: Altfel. 6 Rezolvare Matricea A corespunz¼ atoare acestui sistem de restric¸ tii con¸ tine un singur vector unitar a4 = (1 0 0)T : Pentru a face ca în matricea sistemului de restric¸ tii s¼ a apar¼ a¸ si ceilal¸ ti doi vectori unitari. în aceast¼ a solu¸ tie. 1. Astfel. ultima baz¼ a (cea optim¼ a pentru modelul (2)) se foloseste ca baz¼ a ini¸ tial¼ a pentru (1). m. Matricea coe…cien¸ tilor sisi+n . i = 1. convenabil alese. introducem variabilele arti…ciale xa si xa 7 ¸ 8 în a doua ¸ si respectiv a treia restric¸ tie: 2 . i = 1. xa 0 (2) unde xa i m sunt variabilele arti…ciale. vom c¼ auta s¼ a for¸ ta a faz¼ a de ¼m anularea variabilelor arti…ciale într-o prim¼ rezolvare.Presupunem b 0. f¼ ar¼ a ca toate variabilele arti…ciale s¼ a aib¼ a valori nule în aceast¼ a solu¸ tie.

Problema devine: 8 < x1 + x2 + x3 + x4 = 60 2x1 + x2 + 3x3 x5 + xa 7 = 90 : x2 + 2x3 x6 + xa = 40 8 a Faza I: inf (xa 7 + x8 ) Faza II: sup(5x1 + 5x2 + 4x3 ) 3 .