Sunteți pe pagina 1din 305

i

i
JATEK 2005/3/11 10:29 page 1 #1
i
i
i
i
i
i
11 martie 2005
i
i
JATEK 2005/3/11 10:29 page 2 #2
i
i
i
i
i
i
2
i
i
JATEK 2005/3/11 10:29 page 3 #3
i
i
i
i
i
i
Dedic aceast carte icelor mele,
Dalma i Marietta
Prefa
Datorit posibilitilor oferite n practic, programarea matematic
cunoate o dinamic spectaculoas. Programarea matematic devine im-
perativ n determinarea soluiilor pentru fenomenele din cele mai diverse
domenii social-economice i pentru o varietate de probleme decizionale.
n acest sens, responsabilitatea revine celor care construiesc i rezolv mo-
dele ale fenomenelor, deoarece modelarea, rezolvarea i interpretarea solui-
ilor obinute trebuie s e conforme cu realitatea obiectiv. Altfel ar aprea
erori cantitative.
Cartea prezint n mod riguros, din punct de vedere matematic, teoria
modelelor de optimizare liniar cu restricii. Sunt prezentate metode nu-
merice de rezolvare - algoritmul simplex i metoda punctelor interioare.
De asemenea sunt tratate modele de optimizare rezolvabile cu algoritmul
simplex, teoria jocurilor matriceale i modele speciale de optimizare liniar.
Cartea cuprinde, pe lng prezentarea teoretic, un numr mare de probleme
rezolvate i aplicative din domeniul economic.
Demonstraiile prezentate, aparent, sunt lipsite de interes pentru citi-
torii nematematicieni, pentru cei interesai doar de aplicarea metodelor, ns
evideniaz valoarea de adevr a proprietilor i a armaiilor prezentate.
Noiunile din algebra liniar i analiza matematic necesare comprehensiunii
aspectelor tratate n carte fac obiectul Anexei 2.
Cartea este destinat studenilor de la facultile de tiine economice,
matematic, inginerie economic - inginerie i management, adresndu-se n
acelai timp i unui grup larg de cititori dornici s se iniieze n acest domeniu
sau s aprofundeze instrumente tiinice de optimizare a diverselor probleme
cu care se confrunt n practica economic.
Mulumesc referenilor, doamnei conf. dr. Liana Lupa, Universitatea
"Babe-Bolyai" Cluj-Napoca i conf. dr. Adrian Petrescu, Universitatea
"Petru Maior", Trgu-Mure, pentru observaiile pertinente de care am inut
seama n mbuntirea calitii volumului de fa!
3
i
i
JATEK 2005/3/11 10:29 page 4 #4
i
i
i
i
i
i
4
Mulumesc prietenelor mele, Luminia Chiorean, pentru sugestiile date n
urma lecturrii manuscrisului, respectiv Csizmadia Erzsbet, pentru ajutorul
substanial acordat n tehnoredactarea computerizat!
Mulumesc personalului de la Tipograa MasterDruck, n special d-lui
director Klosz Viktor i d-lui Kuti Zoltn, pentru amabilitate i sprijinul
acordat n editarea crii!
Mai cu seam, rmn recunosctoare familiei mele, soului i celor dou
ice, pentru contextul moral benec: nelegerea i rbdarea fr de care
cartea nu ar prins contur!
Autoarea
i
i
JATEK 2005/3/11 10:29 page 5 #5
i
i
i
i
i
i
Cuprins
1 Introducere 9
1.1 Caracteristici eseniale ale cercetrii opera-ionale . . . . . . . 9
1.2 Introducere n optimizare . . . . . . . . . . . . . . . . . . . . 14
1.3 Modele tip de optimizare . . . . . . . . . . . . . . . . . . . . . 15
2 Teoria problemelor de optimizare liniar cu restricii 21
2.1 Forme ale modelului de optimizare liniar cu res-tricii . . . . 23
2.2 Soluii ale problemei de optimizare liniar cu res-tricii . . . . 24
2.3 Teoria poliedrelor, inegaliti liniare i programare liniar . . 28
2.4 Trecerea unei probleme de programare liniar cu restricii de
la o form matematic de prezentare la alta . . . . . . . . . . 33
2.5 Rezolvarea grac a modelelor cu m restricii i dou variabile 39
3 Metoda simplex 47
3.1 Noiuni introductive . . . . . . . . . . . . . . . . . . . . . . . 47
3.2 Bazele teoretice ale algoritmului simplex primal . . . . . . . . 56
3.3 Rezolvarea modelelor care, iniial, nu admit soluii de baz . . 64
3.4 Degenerare i ciclare n aplicarea algoritmului simplex . . . . 75
4 Teoria dualitii 81
4.1 Introducere n dualitate . . . . . . . . . . . . . . . . . . . . . 81
4.2 Formularea problemei duale . . . . . . . . . . . . . . . . . . . 82
4.3 Interpretarea economic a dualitii . . . . . . . . . . . . . . 85
4.4 Teoreme de dualitate . . . . . . . . . . . . . . . . . . . . . . . 86
4.5 Algoritmul simplex dual . . . . . . . . . . . . . . . . . . . . . 91
4.6 Bazele teoretice ale algoritmului simplex dual . . . . . . . . . 95
4.7 Determinarea soluiilor problemei duale cu ajutorul ultimului
tabel simplex al problemei primale . . . . . . . . . . . . . . . 99
4.8 Legtura dintre soluiile unui cuplu dual . . . . . . . . . . . . 104
5
i
i
JATEK 2005/3/11 10:29 page 6 #6
i
i
i
i
i
i
6
5 Reoptimizare 109
5.1 Reoptimizarea n urma modicrii termenului liber . . . . . . 110
5.2 Reoptimizarea n urma modicrii coecienilor funciei de scop114
5.3 Reoptimizarea n urma modicrii matricei res-triciilor . . . 118
6 Tipuri speciale de probleme de optimizare 125
6.1 Programare discret . . . . . . . . . . . . . . . . . . . . . . . 125
6.1.1 Bazele programrii discrete . . . . . . . . . . . . . . . 125
6.1.2 Metode de tip tietur. Metoda lui Gomory . . . . . 129
6.1.3 Programare dinamic discret . . . . . . . . . . . . . . 135
6.2 Programare liniar parametric . . . . . . . . . . . . . . . . . 135
6.2.1 Parametrizarea membrului drept . . . . . . . . . . . . 137
6.2.2 Parametrizarea funciei de scop . . . . . . . . . . . . . 141
6.3 Programare hiperbolic . . . . . . . . . . . . . . . . . . . . . 149
6.4 Programare multicriterial . . . . . . . . . . . . . . . . . . . . 157
7 Problema de transport 171
7.1 Formularea problemei. Proprieti generale . . . . . . . . . . 171
7.1.1 Proprieti ale matricei coecienilor . . . . . . . . . . 176
7.1.2 Proprieti grace ale problemei de transport . . . . . 176
7.1.3 Determinarea unei soluii de baz . . . . . . . . . . . . 179
7.1.4 Adaptarea algoritmului simplex . . . . . . . . . . . . . 180
7.1.5 Utilizarea problemei duale . . . . . . . . . . . . . . . . 182
7.1.6 Algoritmul de transport . . . . . . . . . . . . . . . . . 183
7.1.7 Probleme propuse i rezolvate . . . . . . . . . . . . . . 185
8 Teoria jocurilor 211
8.1 Introducere n teoria jocurilor . . . . . . . . . . . . . . . . . . 211
8.2 Jocuri matriceale . . . . . . . . . . . . . . . . . . . . . . . . . 213
8.3 Strategii . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
8.3.1 Strategii optime . . . . . . . . . . . . . . . . . . . . . 216
8.3.2 Strategii optime ntr-un joc matriceal simetric . . . . . 224
8.3.3 Proprieti ale strategiilor optime i ale valorii unui joc
matriceal . . . . . . . . . . . . . . . . . . . . . . . . . 225
8.3.4 Strategii pure . . . . . . . . . . . . . . . . . . . . . . . 227
8.4 Principiul dominrii . . . . . . . . . . . . . . . . . . . . . . . 231
8.5 Rezolvarea jocurilor matriceale . . . . . . . . . . . . . . . . . 233
8.5.1 Rezolvarea jocurilor matriceale cu punct a . . . . . . 233
8.5.2 Metode generale de rezolvare a jocurilor matriceale . . 237
8.5.3 Rezolvarea jocurilor matriceale prin reducere la modele
de optimizare liniar cu restricii . . . . . . . . . . . . 240
8.5.4 Rezolvarea jocurilor de tipul 2 m, (n 2) . . . . . . 249
i
i
JATEK 2005/3/11 10:29 page 7 #7
i
i
i
i
i
i
7
9 Metoda punctelor interioare 257
9.1 Introducere . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257
9.2 Metoda Karmarkar . . . . . . . . . . . . . . . . . . . . . . . . 260
9.3 Concluzii . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
Anexa 1 273
Anexa 2 289
Anexa 3 297
Bibliograe 299
i
i
JATEK 2005/3/11 10:29 page 8 #8
i
i
i
i
i
i
8
i
i
JATEK 2005/3/11 10:29 page 9 #9
i
i
i
i
i
i
Capitolul 1
Introducere
1.1 Caracteristici eseniale ale cercetrii opera-
ionale
Cercetarea operaional este una dintre cele mai noi ramuri ale matema-
ticii aplicate. A aprut dup 1950 i, datorit aplicabilitii largi i a utilitii
semnicative, cunoate o dezvoltare extrem de rapid. La dezvoltarea sa re-
marcabil, un rol semnicativ l-au jucat revoluia industrial (prin creterea
complexitii problemelor) i dezvoltarea spectaculoas a tehnicii de calcul.
Cercetarea operaional se ocup cu determinarea deciziei optime n urma
rezolvrii modelelor deterministice i stohastice construite pentru studiul
fenomenelor din cele mai diverse domenii ale vieii.
Scurt istoric
Primele activiti n acest domeniu au aprut n timpul celui de-al doilea
Rzboi Mondial, cnd oerii forelor militare aliate au efectuat analiza ope-
raiilor militare prin construirea i rezolvarea unor modele de optimizare
liniar [Mau]. nc din perioada 1935-1937, oameni de tiin i cercet-
tori au fost solicitai s-i aduc contribuia n vederea elaborrii strategiilor
i a studiu-lui problemelor de tactic militar. n 1938, A.P. Rowe este
conductorul acestui grup n Bawdsey (Anglia), loc de lansare a cercetrii
operaionale. n anul 1942, cpitanul american W.D. Baker a creat grupul
ASWORG (Anti-Submarine Warfare Operations Research Group) care a de-
venit mai trziu ORG (Operational Research Group). n fruntea acestui
grup a fost invitat Philip M. Morse din Massachusetts i William Shockley
de la Bell Laboratories (pentru contribuia adus la tranzistoare, va obine
premiul Nobel).
9
i
i
JATEK 2005/3/11 10:29 page 10 #10
i
i
i
i
i
i
10 1. Introducere
n paralel se poate observa propagarea acestor metode de lucru n diferite
ramuri ale economiei. S-a constatat c i n domenii nemilitare pot formu-
late probleme asemntoare, dar ntr-un alt context. Astfel, n 1941, Frank
Hitchcock [Hit] i, n mod independent, n 1947, T.C. Koopmans [Koo] for-
muleaz problema de transport. G. Stigler [Sti], n 1945, formuleaz un
model matematic pentru stabilirea hranei raionale pentru animale. Prob-
lema gene-ral de programare liniar a fost studiat i aplicat n 1947 de
G.B. Dantzig, Marshall Wood i de asociaii lor de la Departamentul Forelor
Aeriene (U.S. Department of Air Force). Metoda elaborat este cunoscut
sub denumirea de metoda simplex.
Prima conferin de programare matematic, cunoscut ca "zero sympo-
sium", are loc n 1949.
nainte de sfritul anilor 1950, exista deja o teorie bine dezvoltat a
programrii liniare, a programrii dinamice, a teoriei relor de ateptare i a
teoriei stocrii. Condiii necesare de optim n programarea neliniar au fost
formulate de H.W. Kuhn i A.W. Tucker [Kuh] n 1951.
Acest rezultat este independent de cel obinut i prezentat n teza de
doctorat a lui W. Karush [Kar] n 1939.
n ianuarie 1952 a fost rezolvat, pentru prima dat, pe calculator, un
model de programare liniar (National Bureau of Standards SEAC Machine).
Apare primul program comercial de programare liniar n anul 1954 (cu
ajutorul acestuia, o problem de amestec n domeniul petro-chimic s-a rezol-
vat n 10 ore). R.E. Gomory [Gom] prezint o metod general de rezolvare
a modelelor de programare n numere ntregi n anul 1958.
Analiza circuitelor i a reelelor reprezenta dintotdeauna o problem im-
portant n electrotehnic. Unele noiuni ale acestei teorii s-au dovedit ex-
trem de utile n teoria informaiei, n cibernetic, n planicarea proiectelor de
cercetare i de dezoltare. Borz Allen i Hamilton dezvolt programul PERT
(Program Evaluation and Review Technique) i metoda drumului critic CPM
(Critical Path Method). PERT poate aplicat cu succes dac incertitudinea
privind previziunea duratei activitilor este mare i se dorete vericarea e-
cace a timpului de rulare a proiectului. Proiectele de cercetare i dezvoltare
intr n aceast categorie. PERT a fost folosit prima dat n Statele Unite
ale Americii, n 1958, n programul de rachete balistice ale otei i a redus
cu doi ani timpul prevzut pentru lansarea rachetelor Polaris.
Pogramul CPM este extrem de util atunci cnd durata activitilor poate
precizat (de exemplu, n urma unor experiene anterioare), aceste durate
sunt exibile (pot uor modicate, de exemplu, prin schimbarea numru-
lui de angajai) i se urmrete raportul dintre timpul i costurile necesare
realizrii planului. n general proiectele de construcii i de ntreinere sunt
de acest tip. Programele PERT i CPM sunt utile n proiectare. Aceste pro-
grame nu sunt perfecte, nu pot aplicate fr vericarea ipotezelor, altfel
i
i
JATEK 2005/3/11 10:29 page 11 #11
i
i
i
i
i
i
1.1. Caracteristici eseniale ale cercetrii operaionale 11
rezultatele obinute sunt eronate. n acest sens, pot consultate lucrrile
[Wei], [Ken].
AV. Klee i G.J. Minty [Kle], n 1972, arat c algoritmul simplex este
un algoritm de complexitate exponenial. Alte exemple, privind eciena
computaional a algoritmului, pot gsite n [Pap], [Len], [Dob].
n 1979, matematicianul rus L.G. Khachiyan [Kha] a publicat un algo-
ritm de complexitate polinomial pentru rezolvarea modelelor de optimizare
liniar, numit "algoritm elipsoidal". Acest algoritm are doar importan
teoretic, ind inecient n practic, dup cum arat analizele comparative
fcute de McCall [McC] n 1980 i Dantzig [Dan] n 1979.
N. Karmarkar, programator la AT&T Bell Laboratories, a dezvoltat al-
goritmul elipsoidal ca s devin ecient i n practic. n 1984, Karmarkar
[Karm] prezint un algoritm de complexitate polinomial pentru rezolvarea
modelelor liniare. A aplicat metoda punctelor interioare pentru rezolvarea
modelelor liniare la care a adugat o analiz inovatoare. Astfel a obinut un
algoritm de complexitate polinomial, ecient n practic, mai performant
dect algoritmul simplex n cazul modelelor de mari dimensiuni.
Metoda lui Karmarkar a fost utilizat de ctre Comanda Militar Ame-
rican a Podurilor Aeriene (Military Airlift Command) pentru a determina
frecvena zborurilor i tipul de aeronav necesar planicrii zborurilor. Mod-
elul liniar obinut pentru studiul acestei probleme coninea 150 000 de vari-
abile i 12 000 de restricii i soluia s-a obinut ntr-o or. Cu algoritmul
simplex o problem cu o structur asemntoare format numai din 36 000
de variabile i 10 000 de restricii a fost rezolvat n 4 ore.
Testele preliminare au artat c algoritmul Karmarkar este de 50 de ori
mai rapid dect algoritmul simplex, n cazul problemelor de mari dimensiuni.
Metoda punctelor interioare a fost introdus n 1960 de ctre Fiacco
[Fia] i McCormick, ca apoi s e abandonat. Karmakar a readus n cen-
trul ateniei aceast metod. n prezent exist sute de variante ale metodei
punctelor interioare i au fost publicate peste 2000 de articole. Pentru studiul
acestei teorii se recomand [Meg], [Nes], [Roo], [Gje], [Wri].
Impactul cercetrii operaionale
Impactul cercetrii operaionale asupra conducerii ntreprinderilor i a in-
stituiilor este n continu cretere. Msura impactului nu poate comparat
cu nici o alt descoperire.
n 1972, E. Turban [Tur] a publicat un sondaj privind dimensiunea
aplicrii metodelor cercetrii operaionale din anul 1969. Dintre 500 de com-
panii, considerate, dup "Fortune", cele mai mari, au fost alese companii
industriale i companii din toate categoriile de servicii (bnci, transport,
asigurri, comer). Au fost trimise 475 de chestionare pentru directorii i
i
i
JATEK 2005/3/11 10:29 page 12 #12
i
i
i
i
i
i
12 1. Introducere
conductorii de companii. S-a constatat c, dup analiza statistic i simu-
lare, programarea liniar era metoda cea mai frecvent aplicat. Majoritatea
companiilor au folosit n aplicarea metodelor i tehnica de calcul.
n 1977, Ledbetter i Cox [Led] au publicat un sondaj asemntor privind
situaia aplicrii metodelor cercetrii operaionale n anul 1975. Au obinut
un rezultat asemntor. Aadar s-au conrmat rezultatele sondajului date
de Turban.
n 1976, Fabozzi i Valente [Fab] public rezultatul unui sondaj referitor
la anul 1974 n care s-au analizat domeniile de aplicare a programrii liniare
i a programrii dinamice. Cercettorii au ajuns la concluzia c aplicaiile
cele mai importante se concretizeaz la determinarea amestecului de pro-
duse, la planicarea timpului de lucru, planicarea investiiilor, planicarea
nanciar, analiza bugetului, analiza unicrii i cumprrii companiilor.
Datorit impactului semnicativ, pe plan mondial, s-au format societi
naionale i internaionale de cercetare operaional. Astfel la 1 ianuarie
1959, cu participarea a peste 30 de ri, s-a creat Federaia Internaional
de Cer-cetare Operaional (IFORS). n anul 1952, a fost fondat Societatea
Ameri-can de Cercetri Operaionale (ORSA) (n anul 1987, pentru prima
dat n istoria societii, ocup funcia de preedinte o doamn, Judith S.
Liebman). A fost creat Institutul de Management n 1953 (TIMS). ORSA
scoate revista "Operations Research", iar TIMS, revista "Management Sci-
ence", iar cele dou societi public revistele "Mathematics of Operations
Research" i "Interfaces". Aceste reviste sunt generoase n informaii, pub-
licnd anual, n peste 3000 de pagini, cele mai noi rezultate din domeniu. Re-
viste asemntoare sunt editate i n Anglia, Frana, Italia, Japonia, Canada,
Germania. n 1995, prin unicarea celor dou societi ORSA i TIMS, s-a
format Institutul de Cercetri Operaionale i de Management (INFORMS).
O serie de rezultate remarcabile ale cercetrii operaionale au fost apreci-
ate cu premiul Nobel n Economie. De exemplu, n 1972, Sir John R. Hicks i
Kenneth J. Arrow obin premiul pentru contribuiile aduse n teoria general
a echilibrului economic; n anul 1973, Wassily Leontief obine premiul pentru
dezvoltarea i aplicarea modelelor input-output n problemele importante ale
economiei; n 1975, L.V. Kantorovich i T.C. Koopmans obin acest premiu
pentru contribuia adus la dezvoltarea teoriei alocrii optime a resurselor; n
1990, H.M. Markowitz, Marton M. Miller i Wiliam F. Sharpe obin premiul
pentru munca de pionieriat n teoria economiei nanciare; n 1994, John C.
Harsnyi, John F. Nash i Reinhard Selten obin premiul pentru rezultatele
obinute n analiza echilibrului n teoria jocurilor "necooperative".
i
i
JATEK 2005/3/11 10:29 page 13 #13
i
i
i
i
i
i
1.1. Caracteristici eseniale ale cercetrii operaionale 13
Obiectul cercetrii operaionale
Citind i analiznd literatura de specialitate, se poate observa c exist
o serie de deniii ale cercetrii operaionale. n continuare, prezentm surse
bi-bliograce ce ofer asemenea deniii: 1943, Morse i Kimball [Mor]; 1978,
Charles J. Sippl i Charles P. Sippl [Sip]; 1996, Hillier & Lieberman [Hil],
Ronald L. Rardin; 1998, [Rar] etc.
n concluzie, se poate spune c cercetarea operaional este o ramur a
matematicii aplicate care se ocup cu modelarea problemelor complexe de
inginerie, management, marketing, educaie, sntate (teoretic, din orice
domeniu al activitii umane), analizeaz aceste modele cu scopul obinerii
soluiilor posibile i aplic metodele analitice ale matematicii n scopul deter-
minrii deciziilor (soluiilor, politicilor, strategiilor) optime.
Fiind o ramur a matematicii aplicate, pentru studiul modelelor sunt
necesare cunotine de matematici superioare, cum ar algebra liniar,
analiza matematic, analiza funcional, teoria probabilitilor, ecuaii difer-
eniale, geometrie diferenial.
n continuare, prezentm cteva noiuni de baz.
Deniia 1. [Bre] Prin operaie se nelege un ansamblu de aciuni ndrep-
tate spre realizarea unui anumit scop. Orice operaie are un singur scop care
poate compus din mai multe obiective.
Deniia 2. [Bre] Se numete parte operativ mulimea acelor persoane
sau factori care acioneaz ntr-o operaie pentru ndeplinirea scopului pro-
pus.
Deniia 3. [Bre] Prin mijloace active nelegem anumite resurse care
stau la dispoziia prii operative. Prin folosirea lor (de regul cheltuielile
lor) partea operativ i realizeaz scopul.
Deniia 4. Modul de utilizare a mijloacelor active se numete strategia
(sau politica) prii operative.
Acele strategii care conduc la realizarea scopului se numesc strategii
optime .
Observaia 1. Rezultatele unei operaii depind de strategia aleas, adic de
factorii controlabili i de factori care nu pot inuenai de partea operativ
i care formeaz condiiile efecturii operaiei.
n agricultur, de exemplu, condiiile meteorologice reprezint factorii
necontrolabili.
n studiul oricrei operaii (indiferent de domeniul cruia i aparine), se
deosebesc patru etape fundamentale:
i
i
JATEK 2005/3/11 10:29 page 14 #14
i
i
i
i
i
i
14 1. Introducere
a) analiza operaiei - cutarea i descrierea mijloacelor de aciune care
ar putea duce la atingerea scopului operaiei;
b) construirea unui model matematic al operaiei care s ofere o
descriere matematic a scopului;
c) estimarea i compararea ecacitii diverselor strategii pe baza
modelului construit;
d) studierea strategiilor optime i a metodelor matematice cu
ajutorul crora pot obinute.
Pe de o parte, modelul trebuie s reecte ct mai exact procesul real, pe
de alt parte, trebuie s e ct mai simplu.
Pentru studiul modelrii se recomand [Morr], [Wil].
1.2 Introducere n optimizare
Exist foarte puine noiuni tiinice uzuale att n tiin, ct i n
viaa de toate zilele, precum noiunea de "optim" i derivatele acestuia.
Rdcinile optimizrii se regsesc, de exemplu, n lucrrile matematicia-
nului francez Jean Baptiste Joseph Fourier (1768-1830), Farkas Gyula (1847-
1930), matematician maghiar, Hermann Minkowski (1864-1909), matemati-
cian german. n 1762, Lagrange rezolv o problem de optimizare cu restricii
simple format din egaliti. n mod independent, Farkas i Minkowski au
studiat inegalitile liniare. n 1918, Haar Alfred a generalizat rezultatul
obinut de Minkowski-Farkas pentru cazul neomogen.
Se poate observa c, n toate domeniile vieii, exist tendina "opti-
mizrii" activitilor. Putem auzi de planicarea optim a produciei, alo-
carea optim a resurselor, organizarea optim a circulaiei, repartizarea op-
tim a sarcinilor de producie, planicarea optim a invesiiilor, organizarea
optim a timpului, organizarea optim a transportului, continundu-se ex-
emplele.
A avea o "activitate optim" nseamn de fapt a o alege, n condiii bine
stabilite, din mulimea activitilor posibile, pe cea care este cea mai bun
dintr-un anumit punct de vedere.
Reinem c obiectul optimului nu este ntotdeauna bine denit.
Considernd problema alegerii candidailor n urma unui test, obinem
un obiect optim subiectiv, indc baremul de evaluare stabilit pentru test
poate inuena ierarhia candidailor. Optimul poate ales i dup mai
multe criterii, caz n care avem un optim multicriterial.
Dintre problemele de optim n cadrul acestei cri vom studia doar pro-
blemele pentru care:
- criteriile de optim pot formulate cu funcii reale sau funcii vector de
n variabile reale liniare sau neliniare;
i
i
JATEK 2005/3/11 10:29 page 15 #15
i
i
i
i
i
i
1.3. Modele tip de optimizare 15
- ntrebrile decizionale sunt ntrebri cantitative (ct este valoarea vari-
abilei x
j
, j 1, . . . , n ?);
- variabilele decizionale sunt soluiile unui sistem liniar de inecuaii.
Aceste probleme se numesc probleme de programare matematic
sau optimizare matematic cu restricii.
Teoria problemelor de optimizare cu restricii este o ramur a cercetrii
operaionale care studiaz optimizarea uneia sau a mai multor funcii pe un
domeniu denit de o mulime de restricii date asupra variabilelor indepen-
dente, restricii care pot exprima diferite condiii economice.
Dup natura matematic a funciei (funciilor) de scop i a restriciilor
putem distinge diferite clase de probleme de optimizare cu restricii, cum ar
, de exemplu: modele de optimizare liniar, neliniar, n numere ntregi,
stohastic, parametric, multicriterial etc.
Vom studia acele probleme de programare matematic care pot rezol-
vate cu algoritmul simplex, modele care pot reduse la modele de optimizare
liniar cu restricii.
1.3 Modele tip de optimizare
n acest paragraf vom prezenta cteva exemple reprezentative de progra-
mare liniar.
(a) Un model de planicare a produciei
O ntreprindere produce n produse P
1
, . . . , P
n
, folosind m resurse
R
1
, . . . , R
m
(materii prime, maini-unelte, for de munc etc.) de care dis-
pune n cantitile b
1
, . . . , b
m
.
tiind c producerea unei uniti din produsul P
j
, j 1, . . . , n aduce n-
treprinderii beneciul c
j
i necesit a
ij
uniti din resursa R
i
, i 1, . . . , m,
se cere s se planice producia, adic s se stabileasc n ce cantiti
s se produc ecare dintre cele n produse, astfel nct beneciul total al
ntreprinderii s e maxim.
Notm pentru ecare j 1, . . . , n cu x
j
cantitatea (n uniti) din
produsul P
j
ce urmeaz a produs.
Beneciul total al ntreprinderii este:
f(x
1
, . . . , x
n
) = c
1
x
1
+ +c
n
x
n
(1.1)
iar cantitile x
1
, . . . , x
n
trebuie s verice urmtorul sistem de inecuaii:
_

_
n

j=1
a
ij
x
j
b
i
, i = 1, m
x
j
0, j = 1, n
(1.2)
i
i
JATEK 2005/3/11 10:29 page 16 #16
i
i
i
i
i
i
16 1. Introducere
Avem modelul care const n maximizarea funciei (1.1) pe mulimea
soluiilor sistemului (1.2).
Modelul poate reformulat dup scopul urmrit.
- Dac se cere producerea unor cantiti minime x
0
1
, . . . , x
0
n
(respectiv
maxime y
0
1
, . . . , y
0
n
), atunci adaugm restriciile:
x
0
j
x
j
, j = 1, n (sau x
j
y
0
j
, j = 1, n)
- Dac se cere ca volumul total al produciei s nu coboare sub o anumit
limit x
0
, atunci din punct de vedere matematic avem condiia:
x
0
x
1
+ +x
n
- Scopul nu este neaprat maximizarea beneciului. Scopul poate s e
obinerea unui venit maxim n valut sau realizarea unui venit maxim de
valut i realizarea unui beneciu maxim. Dac d
j
este venitul de valut
dup produsul P
j
, atunci avem: (c
1
+d
1
)u
1
+ + (c
n
+d
n
)u
n
(b) Un model de amestec
Un astfel de model este problema dietei (vezi paragraful 4.3).
Dac ntr-o problem de amestec a
ij
reprezint cantitatea de substan s
i
,
i = 1, m coninut ntr-o unitate din componenta P
j
, j = 1, n a amestecului
i amestecul trebuie s conin cel puin b
i
uniti din substana s
i
, i = 1, k
i cel mult B
i
uniti din substana s
i
, i = k + 1, m, atunci se cere realizarea
amestecului cu cost minim, tiind c costurile unitare din componentele P
j
sunt c
j
, j = 1, n.
Notm cu x
j
numrul de uniti din componentele P
j
. Putem scrie:
_

_
f(x) =
n

j=1
c
j
x
j
min
n

j=1
a
ij
x
j
b
i
, i = 1, k
n

j=1
a
ij
x
j
B
i
, i = k + 1, m
x
j
0, j = 1, n
(c) Problema rucsacului
Un turist vrea s-i ia n rucsac cteva din obiectele X
1
, X
2
, . . . , X
n
. El
cunoate greutatea ecrui obiect P
1
, . . . , P
n
i volumul corespunztor (locul
ocupat de un obiect) V
1
, . . . , V
n
. Turistul nu poate duce o greutate total mai
i
i
JATEK 2005/3/11 10:29 page 17 #17
i
i
i
i
i
i
1.3. Modele tip de optimizare 17
mare dect P, iar volumul maxim al rucsacului este V. Fiecare obiect are o
valoare subiectiv k
1
, . . . , k
n
.
Ce obiecte trebuie alese pentru a obine o utilitate total maxim?
Notm cu x
i
valorile asociate obiectelor X
i
. Vom avea x
i
= 1 dac obiec-
tul X
i
este pus n rucsac, respectiv x
i
= 0 n caz contrar.
Modelul matematic ataat problemei este:
_

_
f(x) =
n

i=1
x
i
k
i
max
n

i=1
P
i
x
i
P
n

i=1
V
i
x
i
V
x
i
0, 1, i 1, n
Modelul obinut este un model discret, un model de programare n numere
ntregi.
(d) Model de alocare a resurselor
S se repartizeze n resurse, notate cu R
1
, R
2
, . . . , R
n
pe n activiti
A
1
, A
2
, . . . , A
n
, astfel nct:
- ecare resurs s e repartizat la cte o singur activitate;
- ecrei activiti s i se repartizeze cte o singur resurs.
Se introduce un criteriu de alegere a "posibilitii optime". n acest scop
se introduc anumite costuri ce corespund diferitelor grupe formate din cte
o resurs i cte o activitate. Astfel, cuplului (R
i
, A
j
) format din resursa R
i
,
i = 1, 2, . . . , n i din activitatea A
j
, j = 1, 2, . . . , n i corespunde valoarea C
ij
numit costul repartizrii resursei R
i
pe activitatea A
j
. Pentru ecare repar-
tizare a celor n resurse pe cele n activiti, n condiiile precizate mai sus, va
corespunde n acest mod un cost total, egal cu suma costurilor repartizrilor
diferitelor cupluri ce formeaz repartizarea dat.
Se cere repartizarea resurselor pe activiti, astfel nct costul total s e
minim (maxim), n funcie de natura problemei propuse spre rezolvare.
Se introduc variabilele x
ij
, i, j 1, 2, . . . , n denite astfel: x
ij
= 1,
dac resursa R
i
este repartizat pe activitatea A
j
i x
ij
= 0. n caz contrar,
i
i
JATEK 2005/3/11 10:29 page 18 #18
i
i
i
i
i
i
18 1. Introducere
pstrnd aceste notaii, modelul matematic al problemei este:
_

_
f(x) =
n

i=1
n

j=1
c
ij
x
ij
min
n

i=1
x
ij
= 1, pentru i = 1, n
n

j=1
x
ij
= 1, pentru j = 1, n
x
ij
0, 1, pentru i = 1, n i j = 1, n
(e) Problema de transport
Fie m centre de aprovizionare (depozitare) notate cu A
1
, . . . , A
m
i n
centre de consum (beneciari) notate cu B
1
, . . . , B
n
.
Dac un produs omogen este depozitat n cantitile a
i
, i = 1, m n
centrele A
i
i este cerut de ctre beneciari n cantitatea b
j
, j = 1, n, iar
costurile unitare de transport de la centrul A
i
la beneciarul B
j
sunt egale
cu c
ij
,
atunci se cere s se organizeze transportul, astfel nct cheltuielile de
transport s e minime!
Dac notm cu x
ij
cantitatea de produs care va transportat de la
furnizorul i la consumatorul j, atunci, matematic, putem descrie problema
cu urmtorul model:
_

_
f(x) =
m

i=1
n

j=1
c
ij
x
ij
min
n

j=1
x
ij
a
i
, i = 1, m
m

i=1
x
ij
b
j
, j = 1, n
x
ij
0, i = 1, m, j = 1, n
c
ij
0, i = 1, m, j = 1, n
m

i=1
a
i

n

j=1
b
j
.
(1.3)
Funcia obiectiv reprezint evident cheltuielile totale; prin urmare, scopul
const n minimizarea acestora.
i
i
JATEK 2005/3/11 10:29 page 19 #19
i
i
i
i
i
i
1.3. Modele tip de optimizare 19
(f ) O problem de atribuire
Fie m tipuri de maini, al cror timp de funcionare este respectiv egal cu
t
1
, . . . , t
i
, . . . , t
m
uniti de timp. Cu aceste maini se pot produce n tipuri de
produse, planicate ntr-un numr de r
1
, . . . , r
j
, . . . , r
n
. Timpul
ij
, n care
maina de tip i produce un produs de tip j, variaz n funcie de alegerea
tipului de main pe care este fabricat produsul. Costurile de fabricaie pot
varia i n funcie de perechile (i, j), dar nu sunt neaprat proporionale cu
timpul
ij
. Dac se noteaz cu c
ij
costurile de fabricaie, atunci se pune
problema determinrii unui plan de producie pentru realizarea produselor
n cantitile menionate, cu un cost total minim.
Dac notm cu x
ij
numrul unitilor din produsul j fabricate pe maina
de tip i, atunci modelul acestei probleme va :
_

_
m

i=1
n

j=1
c
ij
x
ij
min
n

j=1

ij
x
ij
t
i
, pentru i = 1, m
m

i=1
x
ij
= r
j
, pentru j = 1, n
x
ij
0, pentru i = 1, m i j = 1, n
Se poate observa c modelul prezentat este o generalizare a modelului
pro-blemei de transport.
(g) Generalizarea problemei de transport
ntr-o staie cu m garaje sunt t
1
, . . . , t
i
, . . . , t
m
camioane cu aceleai ca-
paciti de transport. ntr-o anumit zi se solicit f
1
, . . . , f
k
, . . . , f
s
camioane
de ctre beneciari pentru transportarea unui produs omogen care poate
ncrcat de la n depozite. La un depozit se pot ncrca, n acelai timp, un
numr de r
1
, . . . , r
j
, . . . , r
n
camioane. Costurile de transport se modic n
funcie de drumul parcurs de camioane, adic depinde de modul de grupare
a indicilor (i, j, k). Notnd cu c
ijk
aceste costuri, se cere construirea planului
de dirijare n condiiile menionate, astfel nct costul total de transport s
e minim.
Dac se noteaz cu x
ijk
numrul camioanelor dirijate de la garajul i la
depozitul j i la beneciarul k, atunci modelul acestei probleme este:
i
i
JATEK 2005/3/11 10:29 page 20 #20
i
i
i
i
i
i
20 1. Introducere
_

_
m

i=1
n

j=1
s

k=1
c
ijk
x
ijk
min
n

j=1
s

k=1
x
ijk
= t
i
, i = 1, m
m

i=1
s

k=1
x
ijk
= r
j
, j = 1, n
m

i=1
n

j=1
x
ijk
= f
k
, k = 1, s
x
ijk
0, pentru i = 1, m; j = 1, n i k = 1, s
(h) Planicarea investiiilor
Fie o societate care dispune de o sum de S uniti monetare, sum care
poate folosit n diverse activiti notate cu 1, 2, . . . n.
Dac investiia la activitatea j aduce un beneciu b
j
u.m., atunci se cere
determinarea unui plan de investiii cu beneciu total maxim.
Dac se noteaz cu x
j
, j = 1, n suma investit n activitatea j, atunci
modelul matematic al problemei este:
_

_
f(x) =

n
j=1
b
j
x
j
max
n

j=1
x
j
S, j = 1, n
x
j
0, j = 1, n
i
i
JATEK 2005/3/11 10:29 page 21 #21
i
i
i
i
i
i
Capitolul 2
Teoria problemelor de
optimizare liniar cu restricii
Problema general de programare liniar a fost formulat pentru prima
dat n anul 1939 de ctre L.V. Kantorovici ([Kan]) i a fost prezentat mpre-
un cu o metod de rezolvare, numit metoda "multiplicatorilor rezolvani".
Kantorovici recunoate c o serie de probleme economice pot descrise cu
acelai model matematic i pentru aceste modele pot elaborate metode
numerice de rezolvare.
n 1941, Frank Hitchcock ([Hit]) a formulat modelul de transport (care, de
asemenea, este un model special de programare liniar). O analiz riguroas
a problemei a fost efectuat de T.C. Koopmans ([Koop]), n 1949. George
Stigler ([Sti]), n 1945, formuleaz un model matematic pentru stabilirea
hranei raionale pentru animale.
Toate aceste modele mpreun cu alte modele speciale din timpul celui de
al doilea Rzboi Mondial arat necesitatea elaborrii unor metode eciente
de rezolvare numeric ale acestora.
O importan deosebit pentru programarea liniar a constituit-o metoda
simplex elaborat n 1947 de ctre George Dantzig [Dant]. Pentru de-
scoperirea i dezvoltarea programrii liniare, n 1976, Dantzig a primit pre-
miul naional al Statelor Unite ale Americii.
Noiunea de dualitate a fost introdus de ctre John von Neumann n
1947 i a fost publicat la scurt timp n lucrarea cu titlul "On maximization
problem", Institute for Advanced Study, Princetown, New Jersey, noiembrie,
1947. Neumann recunoate importana conceptului de dualitate, instrumen-
tul matematic care unete teoria jocurilor cu teoria problemelor de optimizare
liniar cu restricii.
O teorem explicit de dualitate a fost publicat i demonstrat de ctre
21
i
i
JATEK 2005/3/11 10:29 page 22 #22
i
i
i
i
i
i
22 1. Introducere
Gale, Kuhn i Tucker n 1951, capitolul 19 din [Dant].
Metoda simplex nu acoper n ntregime problema legat de rezolvarea
numeric a problemelor de optimizare liniar cu restricii. Aceast metod
nu are o variant de complexitate polinomial.
n 1979, matematicianul rus Leonid Khachiyan [Kha] public un algoritm
de complexitate polinomial pentru rezolvarea modelelor liniare. Algoritmul
difer de metoda simplex, folosindu-se de un ir de elipsoide care conduc
spre soluia optim a modelului. Din punct de vedere teoretic, rezultatul
este semnicativ, dar practic nu nlocuiete algoritmul simplex.
n 1984, Narendra Karmarkar [Karm] public un alt algoritm care
folosete sfere i geometrie proiectiv pentru construirea unui ir care con-
verge ctre soluia optim a problemei de optimizare liniar cu restricii.
Modelul matematic de programare liniar utilizat n reprezentarea unui
sistem economic este construit dintr-un ansamblu de relaii liniare, dintre
care una reect obiectivul urmrit, iar celelalte cuprind restriciile eco-
nomice sau tehnologice.
Unde putem aplica modelul de programare liniar?
Acest model acoper o clas de probleme de mare importan practic,
cum sunt cele de planicare, organizare, amestec, transporturi, investiii,
reparaii i altele.
O serie de probleme, care nu sunt probleme de programare liniar, pot
reduse prin transformri convenabile la acest tip de model.
O alt clas de probleme, care nu sunt liniare, pot rezolvate prin in-
termediul unui ir de modele liniare, ale cror soluii determin un ir care
admite un subir convergent ctre soluia optim a modelului considerat.
Faptul c, ntr-un model de programare liniar, funcia de scop este
liniar atrage dup sine dou proprieti importante. Pe de o parte, valorile
variabilelor independente din funcia de scop sunt proporionale cu valoarea
variabilei respective (dac costurile unitare de producie reprezint x u.m.
pentru un produs p xat, atunci pentru n produse vor de n ori mai mare)
- adic are loc proprietatea de proporionalitate.
Pe de alt parte, valorile componentelor funciei de scop sunt indepen-
dente ntre ele (dac se produc n produse, atunci costurile de producie ale
produsului p
i
nu sunt inuenate de costurile de producie ale produsului
p
j
). Aceast proprietate este cunoscut ca proprietatea de aditivitate.
Pe lng proprietile prezentate, un model liniar, care descrie un
fenomen economic, o problem practic, trebuie s verice proprietatea de
divizibilitate i certitudine.
Prin proprietatea de divizibilitate se nelege c variabilele pot lua i va-
lori raionale. Modelele n care variabilele pot lua doar valori ntregi vor
prezentate n paragraful 6.1.
i
i
JATEK 2005/3/11 10:29 page 23 #23
i
i
i
i
i
i
2.1. Forme ale modelului de optimizare liniar cu restricii 23
Proprietatea de certitudine nseamn c toate datele de intrare (coe-
cienii funciei de scop, elementele matricei restriciilor, termenii liberi din
membrul drept al restriciilor) sunt cunoscute apriori.
Pentru rezolvarea numeric a problemelor de optimizare liniar cu re-
stricii sunt necesare cunotine de algebr liniar (v. Anexa2).
2.1 Forme ale modelului de optimizare liniar cu
res-tricii
La modelarea unui fenomen n general este folosit un numr mare de
variabile i modelul este bine denit doar n cazul n care aceste variabile pot
pozitive, negative sau chiar de semn variabil.
Modelul matematic al unui fenomen este un model matematic al unei
probleme de optimizare liniar cu restricii, dac este format dintr-un
anumit numr de restricii date asupra variabilelor independente (care sunt
liniare i pot inegaliti sau egaliti) i o funcie de scop care este de
asemenea liniar. Problema care se pune este determinarea valorii optime a
funciei de scop pe domeniul determinat de aceste restricii.
Deniia 2.1.1. Forma general a problemei de optimizare liniar cu res-
tricii prin deniie este:
_

_
f(x) = c
1
x
1
+c
2
x
2
+c
3
x
3
min / max
A
11
x
1
+A
12
x
2
+A
13
x
3
b
1
A
21
x
1
+A
22
x
2
+A
23
x
3
= b
2
A
31
x
1
+A
32
x
2
+A
33
x
3
b
3
x
1
i
0, i = 1, l x
2
j
0, j = l + 1, r x
3
k
, k = r + 1, n de semn oarecare
unde:
A =
_
_
A
11
A
12
A
13
A
21
A
22
A
23
A
31
A
32
A
33
_
_
/
m,n
(R),
f : R
n
R
x = (x
1
, x
2
, . . . , x
l
, x
l+1
, . . . , x
r
, x
r+1
, . . . , x
n
)
not
= (x
1
x
2
x
3
) R
n
x
1
= (x
1
, . . . , x
l
); x
2
= (x
l+1
, . . . , x
r
); x
3
= (x
r+1
, . . . , x
n
)
b
1
= (b
1
, . . . , b
k
); b
2
= (b
k+1
, . . . , b
p
); b
3
= (b
p+1
, . . . , b
m
)
b = (b
1
b
2
b
3
) R
m
c
1
= (c
1
, . . . , c
l
); c
2
= (c
l+1
, . . . , c
r
); c
3
= (c
r+1
, . . . , c
n
)
c = (c
1
c
2
c
3
) R
n
.
i
i
JATEK 2005/3/11 10:29 page 24 #24
i
i
i
i
i
i
24 2. Teoria problemelor de optimizare liniar cu restricii
Deniia 2.1.2. Se numete forma standard a problemei de optimizare
liniar cu restricii urmtorul model:
_

_
f(x) =
n

j=1
c
j
x
j
min /max
n

j=1
a
ij
x
j
= b
i
, i = 1, m
x
j
0, j = 1, n
sau n forma matriceal:
_
_
_
f(x) = (c, x) min/max
Ax = b
x 0,
unde (, ) : R
n
R
n
R este produsul scalar euclidean al vectorilor din
spaiul vectorial R
n
, A /
m,n
(R), b R
m
, c R
n
.
Deniia 2.1.3. Forma canonic a unui model de minimizare prin
deniie este:
_
_
_
f(x) = (c, x) min
Ax b
x 0
unde A /
m,n
(R), b R
m
, c R
n
.
Forma canonic a problemei de maximizare este:
_
_
_
f(x) = (c, x) max
Ax b
x 0
unde A /
m,n
(R), b R
m
, c R
n
.
2.2 Soluii ale problemei de optimizare liniar cu
res-tricii
n acest paragraf vom preciza condiiile necesare pentru rezolvarea nu-
meric a problemei de optimizare liniar cu restricii i vom deni cteva
tipuri de soluii care pot asociate problemei propuse spre rezolvare.
i
i
JATEK 2005/3/11 10:29 page 25 #25
i
i
i
i
i
i
2.2. Soluii ale problemei de optimizare liniar cu restricii 25
A. Cazul formei standard
Fie modelul:
_
_
_
f(x) = (c, x) min/max
Ax = b
x 0
(2.1)
unde A /
m,n
(R), b R
m
, c R
n
, f : R
n
R.
Vom presupune c sistemul de restricii Ax = b are cel puin o soluie.
n caz contrar, problema de optimizare considerat nu are sens.
Pe tot parcursul expunerii vom presupune c rang A = m.
Dac rang A < m, atunci, n caz de compatibilitate, ar nsemna c une-
le restricii sunt consecine ale celorlalte, adic modelul construit n scopul
studierii unui fenomen economic este un model ncrcat.
Se va presupune de asemenea c are loc inegalitatea m < n, (dac m = n
atunci sistemul de restricii formeaz un sistem Cramer).
n aceste condiii, sistemul liniar de ecuaii Ax = b este un sistem nede-
terminat. n consecin, sistemul liniar admite o innitate de soluii.
Deniia 2.2.1. O soluie a sistemului de ecuaii Ax = b care veric n
plus condiia de nenegativitate (x 0) se numete soluie posibil (soluie
admisibil sau program) al problemei (2.4).
S = x R
n
[ Ax = b, x 0 se numete mulimea soluiilor posibile.
Deniia 2.2.2. O soluie posibil, x

, a problemei (2.4) se numete pro-


gram optim, soluie optim, dac veric condiia de optim, adic
(c, x

) (c, x), unde x S oarecare (dac avem model de minimizare) i


(c, x

) (c, x), unde x S oarecare (dac avem o problem de maximizare).


Deniia 2.2.3. O soluie posibil x S cu cel mult m componente strict
po-zitive se numete soluie de baz , dac coloanele matricei A, care core-
spund acestor componente, formeaz o baz n R
m
.
Deniia 2.2.4. O soluie de baz se numete nedegenerat , dac are exact
m componente nenule, i degenerat , n caz contrar.
Teorema 2.2.1. Orice soluie de baz a unei probleme de programare liniar
este un punct extrem al mulimii S i, reciproc, orice punct extrem al mulimii
S este soluie bazic.
Dac determinm mulimea soluiilor bazice, atunci prin nlocuirea aces-
tora n funcia de scop putem alege soluia optim a problemei considerate.
Cte soluii de baz are un model cu n variabile i m restricii?
i
i
JATEK 2005/3/11 10:29 page 26 #26
i
i
i
i
i
i
26 2. Teoria problemelor de optimizare liniar cu restricii
Pe baza deniiei 2.2.3, aceste soluii bazice pot obinute n urma re-
zolvrii tuturor sistemelor Cramer de m ecuaii i n necunoscute, pe care le
putem forma din sistemul de restricii Ax = b.
Astfel se poate arma c numrul soluiilor bazice este cel mult C
m
n
.
Deniia 2.2.5. Preul umbr asociat restriciei de ordinul i este valoarea
cu care se mbuntete valoarea funciei de scop, atunci cnd valoarea lui
b
i
crete cu o unitate (b
i
este nlocuit cu b
i
+ 1.)
Problem rezolvat
S se determine soluiile bazice ale problemei:
_

_
f(x) = 2x
1
+x
2
+ 2x
3
+x
4
+ 3x
5
max
2x
1
+x
2
+x
3
x
4
x
5
= 2
x
1
+ 2x
2
x
3
x
4
+ 3x
5
= 4
x
j
0, j = 1, 5
Matricea restriciilor este:
A =
_
2 1 1 1 1
1 2 1 1 3
_
rang A = 2
Notm C
ij
, i < j 1 i, j 5 toate matricile ptratice de ordin doi ce
pot formate cu coloanele lui A.
C
12
=
_
2 1
1 2
_
C
13
=
_
2 1
1 1
_
C
14
=
_
2 1
1 1
_
C
15
=
_
2 1
1 3
_
C
23
=
_
1 1
2 1
_
C
24
=
_
1 1
2 1
_
C
25
=
_
1 1
2 3
_
C
34
=
_
1 1
1 1
_
C
35
=
_
1 1
1 3
_
C
45
=
_
1 1
1 3
_
.
Avem 10 astfel de matrici
_
C
2
5
=
5!
2!3!
= 10
_
.
Toi determinanii det(C
ij
) sunt diferii de zero, ceea ce nseamn c vom
avea cel mult 10 soluii bazice obinute n urma rezolvrii celor 10 sisteme
liniare de dou ecuaii i dou necunoscute.
i
i
JATEK 2005/3/11 10:29 page 27 #27
i
i
i
i
i
i
2.2. Soluii ale problemei de optimizare liniar cu restricii 27
n cazul unui sistem liniar de ecuaii asociat matricei C
ij
, variabilele
x
i
i x
j
sunt considerate variabile principale. Variabilele secundare sunt
considerate nule.
Pentru matricea C
12
, de exemplu, variabilele principale sunt x
1
, x
2
, iar
x
3
= x
4
= x
5
= 0.
n acest caz avem de rezolvat sistemul:
_
2x
1
+x
2
= 2
x
1
+ 2x
2
= 4
.
Soluia obinut este (0 2 0 0 0). n mod analog, rezolvnd sistemele liniare
de ecuaii, se vor obine soluiile: (2 0 -2 0 0), (-2 0 0 -6 0), (10/7 0 0 0 6/7),
(0 2 0 0 0), (0 2 0 0 0), (0 2 0 0 0), (0 0 -1 -3 0), (0 0 -1 0 3), (0 0 0 -5/2 1/2).
Dintre cele 10 soluii obinute, sunt soluii de baz doar cele pentru care
toate componentele sunt pozitive. Deci problema de optimizare liniar cu
restricii considerat admite o soluie bazic nedegenerat i 4 soluii bazice
degenerate. Prin calcul direct, prin nlocuirea soluiilor bazice n funcia de
scop, putem alege soluia optim. Avem:
f(10/7 0 0 0 6/7) = 38/7
f(0 2 0 0 0) = 2
adic soluia optim este x
0
= (10/7 0 0 0 6/7) i f
max
= 38/7.
Dac considerm un model cu n = 17 variabile i m = 8 restricii, atunci
am avea de rezolvat 24 310 sisteme Cramer cu 8 ecuaii i 8 variabile pentru
a determina soluiile bazice.
Deci, chiar i n cazul unei probleme de dimensiune redus, determinarea
soluiilor bazice necesit foarte mult timp, ceea ce nseamn c metoda nu
este ecient pentru determinarea optimului.
n 1947, G. Dantzig formuleaz un algoritm ecient pentru rezolvarea
mo-delelor liniare.
Principiul metodei lui Dantzig const n alegerea unei soluii bazice
oarecare, n formularea unui criteriu de optim cu care se veric optimalitatea
soluiei bazice propuse i stabilirea unei metode cu care se poate pune n
eviden o nou soluie bazic pentru care valoarea funciei de scop crete,
dac se caut un maxim (sau descrete dac se caut un minim).
Se repet operaia pn cnd mrirea/ micorarea funciei de scop nu
mai este posibil, ceea ce nseamn c s-a atins optimul acesteia.
B. Cazul formei generale
Modelul de optimizare liniar cu restricii, dat ntr-o form oarecare de
prezentare poate redus, folosind transformri echivalente, la un model n
i
i
JATEK 2005/3/11 10:29 page 28 #28
i
i
i
i
i
i
28 2. Teoria problemelor de optimizare liniar cu restricii
forma standard prin introducerea unor variabile auxiliare, articiale i prin
folosirea unor substituii adecvate.
Metoda de trecere dintr-o form de reprezentare n alta va prezentat
n paragraful 2.4.
Se poate arta c soluiile modelului astfel obinut sunt soluii ale prob-
lemei iniiale, iar valorile optime coincid. Variabilele auxiliare introduse au
doar semnicaii economice.
2.3 Teoria poliedrelor, inegaliti liniare i progra-
mare liniar
n acest paragraf vom prezenta noiunile de mulime convex, mulime
poliedral i politop. Mulimea poliedral reprezint latura geometric i
inegalitile liniare latura algebric a problemei de optimizare liniar cu re-
stricii.
Teorema fundamental a inegalitilor liniare se datoreaz lui Gy. Farkas
(1894) i Minkowski (1896). Rezultatul a fost extins de Caratheodory (1911)
i Weyl (1935).
Deoarece restriciile unui model liniar de optimizare formeaz un sistem
liniar de inecuaii, teoremele de caracterizare a incompatibilitii unui sistem
de inecuaii liniare sunt extrem de importante. Gy. Farkas n 1902 [Fark]
public urmtorul criteriu de incompatibilitate:
Teorema 2.3.1. Fie a
0
, b
1
. . . b
p
R
n
puncte date. Sistemul de inecuaii
denit n R
n
prin produsul scalar:
_
(x, a
0
) < 0
(x, b
i
) 0, i = 1, p
este incompatibil, dac i numai dac exist un punct v R
p
, astfel nct:
a
0
+
p

i=1
v
i
b
i
= 0.
n anul 1936, T. Motzkin demonstreaz urmtorul rezultat.
Teorema 2.3.2. Fie date punctele a
1
, . . . a
p
, b
1
, . . . , b
q
, c
1
, . . . , c
r
din R
n
.
Sistemul denit n R
n
prin:
_
_
_
(x, a
i
) < 0, i = 1, p
(x, b
i
) 0, i = 1, q
(x, c
i
) = 0, i = 1, r
i
i
JATEK 2005/3/11 10:29 page 29 #29
i
i
i
i
i
i
2.3. Teoria poliedrelor, inegaliti liniare i programare liniar 29
este incompatibil, dac i numai dac exist (u, v, w) R
p
+
R
q
+
R
r
+
cu
u ,= 0, astfel nct s avem:
p

i=1
u
i
a
i
+
q

i=1
v
i
b
i
+
r

i=1
w
i
c
i
= 0.
Demonstraia teoremei se face cu ajutorul teoremei lui Farkas. Dar, pe
de alt parte, teorema lui Farkas este evident un caz particular al teoremei
lui Motzkin, deci cele dou teoreme sunt echivalente.
Rezultatul obinut n 1873 de P. Cordan este o consecin a teoremei lui
Motzkin.
Teorema 2.3.3. Fie punctele a
1
, . . . a
p
din spaiul R
n
. Sistemul de inecuaii
denit n R
n
prin:
(x, a
i
) < 0, i = 1, p
este incompatibil, dac i numai dac exist u R
p
+
cu u ,= 0, astfel nct

p
i=1
u
i
a
i
= 0.
n continuare, ne ocupm cu interpretarea geometric a restriciilor
liniare. n acest scop se dau urmtoarele deniii:
Deniia 2.3.1. Mulimea M R
n
este convex , dac pentru orice
x
1
, x
2
M i [0, 1] avem x
1
+ (1 )x
2
M.
Remarcm faptul c mulimea M R
n
este convex, dac pentru ori-
care dou puncte ale sale x
1
, x
2
M, segmentul [x
1
, x
2
] determinat de aceste
dou puncte aparine n ntregime mulimii date.
Mulimea x
1
+ (1 )x
2
, [0, 1] se numete combinaia convex a
punctelor date i coincide cu segmentul cu capetele x
1
, x
2
.
Mulimile convexe pot mrginite i nemrginite.
Mulimea vid i mulimea format dintr-un singur element sunt conside-
rate mulimi convexe.
Deniia 2.3.2. O mulime M de vectori din R
n
se numete hiperplan
dac exist a R
n
0 astfel nct:
M = x R
n
[ (a, x) = b, b R.
Deniia 2.3.3. O mulime M de vectori din R
n
se numete semispaiu
dac exist a R
n
0 astfel nct:
M = x R
n
[ (a, x) 0.
i
i
JATEK 2005/3/11 10:29 page 30 #30
i
i
i
i
i
i
30 2. Teoria problemelor de optimizare liniar cu restricii
Deniia 2.3.4. O mulime M de vectori din R
n
se numete mulime
poliedral (tronson) dac exist (a
i
)
i=1,m
R
n
0, (b
i
)
i=1,m
R ast-
fel nct:
M =
m

i=1
x R
n
[ (a
i
, x) b
i
.
Teorema 2.3.4. Hiperplanul, semispaiul i mulime poliedral sunt mulimi
convexe.
Demonstraie. Folosim deniia convexitii. Se poate verica uor c pentru
oricare dou puncte din hiperplan (semispaiu, mulime poliedral), com-
binaia convex ale acestora este de asemenea n hiperplan (semispaiu,
mulime poliedral).
Deniia 2.3.5. O mulime M de vectori din R
n
se numete con dac pentru
orice x M i orice R
+
avem: x M.
M se numete con convex dac este con i este convex (adic pentru
orice x, y M i orice , R
+
are loc: x +y M).
M se numete con cu vrf dac este con i 0 M.
M se numete con poliedral dac exist punctele (a
i
)
i=1,m
R
n
0
astfel nct:
M =
m

i=1
x R
n
[ (a
i
, x) 0.
Teorema 2.3.5. (Farkas, Minkowski-Weyl)
Un con convex este poliedral dac i numai dac este nit generat.
Demonstraie. [Sch] pg. 87.
Trivial, un con poliedral este o mulime poliedral.
O mulime poliedral este mulime nchis. (O mulime este nchis dac
i numai dac i conine toate punctele de acumulare).
Deniia 2.3.6. O mulime de vectori din spaiul R
n
este politop dac este
nvelitoarea convex a unui numr nit de vectori.
ntre noiunea de mulimi poliedrale i noiunea de politop (poliedru)
exist o legtur, dup cum arat i teorema de descompunere a poliedrului
formulat de Motzkin (1936).
Teorema 2.3.6. O mulime P R
n
este o mulime poliedral dac i numai
dac P = Q+C, unde Q este un politop iar C este un con poliedral oarecare.
Demonstraie. [Sch] pg. 88-89.
i
i
JATEK 2005/3/11 10:29 page 31 #31
i
i
i
i
i
i
2.3. Teoria poliedrelor, inegaliti liniare i programare liniar 31
Teorema bazelor nite pentru politopi este o consecin a teoremei de
descompunere. Acest rezultat este atribuit lui Minkowski (1896), Steinitz
(1916) i Weyl (1935).
Teorema 2.3.7. O mulime P R
n
este politop dac i numai dac P este
o mulime poliedral mrginit.
Demonstraie. [Sch] pg. 89.
Dac se noteaz cu k dimensiunea spaiului cu proprietatea "este spaiu
de dimensiune minim care include mulimea poliedral P", atunci k se nu-
mete dimensiunea lui P.
Deniia 2.3.7. Un politop a crui dimensiune este mai mare cu 1 dect
numrul vrfurilor sale se numete simplex .
Un segment este 1-simplex, un triunghi este 2-simplex, un tetraedru este
un 3-simplex, un politop cu n + 1 vrfuri se numete n-simplex.
Restriciile problemei de programare liniar formeaz o mulime
poliedral. Modelul liniar admite soluie (optim nit) doar n cazul n care
aceast mulime este mrginit. Adic, n cazul optimului nit, mulimea
soluiilor posibile este un politop.
Deniia 2.3.8. Fie M o mulime convex din spaiul R
n
. Punctul x este
un punct extrem pentru mulimea M, dac nu este interior nici unui segment
inclus n ntregime n mulimea M.
Teorema 2.3.8. Orice politop coincide cu invelitoarea convex a extremelor
sale.
Demonstraie. Demonstraia poate consultat n [Pre], pp. 54-55.
Teorema 2.3.9. Extremele mulimii S sunt chiar soluiile bazice.
Demonstraie. Demonstraia poate consultat n [Pre], pp. 55-59.
Teorema 2.3.10. La extremele lui S pot gsite dou baze B
1
, B
2
care
difer doar printr-un vector.
Demonstraie. Demonstraia poate consultat n [Pre], pp. 67-68,[Thi].
Teorema 2.3.11. Dac f este o funcie liniar, denit pe un poliedru convex,
atunci e c nu este mrginit superior pe aceast mulime, e i atinge
maximul n cel puin un punct extrem al poliedrului (evident dac poliedrul
are cel puin un extrem).
Demonstraie. Poate consultat n [Pre], [Gas].
i
i
JATEK 2005/3/11 10:29 page 32 #32
i
i
i
i
i
i
32 2. Teoria problemelor de optimizare liniar cu restricii
Proprietile poliedrului convex prezentate mai sus se datoreaz lui H.
Minkowski (1864-1909). Noiunea de soluie bazic exista cu mult nainte
de apariia programrii liniare. Meritul lui Dantzig este de a recunoscut
utilitatea acestor rezultate existente.
Deci, din mulimea S, care admite o innitate de elemente, ne intereseaz
doar acele puncte care reprezint vrfurile poliedrului, adic soluiile bazice.
Teorema 2.3.12. Mulimea soluiilor posibile ale problemei de optimizare
liniar cu restricii este o mulime convex.
Demonstraie. Notm: S = x R
n
[ Ax = b, x 0.
a) Dac S = x
0
, atunci demonstraia este banal.
b) n continuare presupunem: cardS > 1.
Avem de artat c pentru orice u, v S [u, v] S, adic x
[u, v] x S.
Evident orice punct x [u, v] poate scris ca: x = (1 t)u + tv, t
[0, 1].
Dar u, v S
_
Au = b
u 0
i
_
Av = b
v 0
.
Astfel putem scrie:
Ax = A[(1 t)u +tv] = Au(1 t) +Atv = (1 t)b +tb = b (2.2)
Pe de alt parte avem:
u 0
v 0
t [0, 1]
(1 t)u +tv = x 0 (2.3)
i teorema este demonstrat.
Teorema 2.3.13. Mulimea soluiilor optime ale problemei de optimizare
liniar cu restricii este o mulime convex.
Demonstraie. Fie u, v S dou soluii optime, f(u) = f(v) = k (unde k este
valoarea minim a funciei de scop). Avem de artat c f(x) = (c, x) = k,
dac x este combinaia convex a soluiilor optime considerate.
Deoarece orice punct x [u, v] poate scris ca : x = (1t)u+tv, t [0, 1],
funcia f este liniar, putem scrie:
f(x) = f((1 t)u +tv) = (1 t)f(u) +tf(v) = (1 t)k +tk = k
i teorema este demonstrat.
Observaie. Din punct de vedere practic, teorema este foarte important.
n consecin, se poate arma c o problem de programare liniar admite
e o soluie optim unic, e o innitate de soluii optime.
i
i
JATEK 2005/3/11 10:29 page 33 #33
i
i
i
i
i
i
2.4. Schimbarea formei de reprezentare 33
Se poate formula urmtoarea ntrebare:
Ce proprieti trebuie s verice acele modele de programare matematic
care pot rezolvate pe baza principiului de mai sus?
Doar pentru problemele de optimizare liniar cu restricii sunt valabile
proprietile de mai sus?
Are loc urmtorul rezultat.
Teorema 2.3.14. Dac n modelul:
_
_
_
f(x) = (c, x) min/max
Ax b
x 0
(2.4)
unde A /
m,n
(R), b R
m
, c R
n
, funcia de scop f : D R
n
R este
strict cvasimonoton i i atinge minimul/maximul, atunci soluia sa op-
tim poate obinut cu principiul vrfurilor vecine (principiul lui Dantzig).
Demonstraie. Demonstraia poate consultat n [Dany].
2.4 Trecerea unei probleme de programare liniar
cu restricii de la o form matematic de
prezentare la alta
n general, trecerea de la o form de prezentare la alta nu este dicil, dar
este necesar datorit faptului c diversitatea situaiilor economico-sociale ce
pot analizate prin intermediul programrii liniare ne conduce la apariia
oricreia dintre formele de prezentare menionate.
(a) Trecerea de la forma general la forma canonic
n forma canonic, toate variabilele veric condiia de nenegativitate i
res-triciile sunt inegaliti de acelai sens.
Pentru a obine forma canonic a unui model, vor parcurse urmtoarele
etape:
1. inegalitile de sens contrar celor dorite vor nmulite cu (-1);
2. ecare egalitate va nlocuit cu dou inegaliti (una cu sensul dorit,
iar pentru cellalt se aplic (1));
3. pentru variabila x negativ se va folosi substituia x = y, unde y 0;
i
i
JATEK 2005/3/11 10:29 page 34 #34
i
i
i
i
i
i
34 2. Teoria problemelor de optimizare liniar cu restricii
4. pentru variabila x de semn oarecare se va folosi substituia x = y z,
unde y 0, z 0.
(Orice numr real poate exprimat ca diferena a dou numere reale
pozitive.)
Problem rezolvat
S se reduc la forma canonic modelul:
_

_
f(x) = 3x
1
+x
2
x
3
+ 2x
4
max
2x
1
+x
2
3x
3
+ 2x
4
10
x
1
2x
2
+ 2x
3
+ 5x
4
= 12
x
1
+ 3x
2
+x
3
2x
4
6
x
1
0, x
2
de semn oarecare, x
3
0, x
4
0.
Pentru uniformitatea scrierii, toate variabilele vor notate cu y.
Folosind substituiile:
x
1
= y
1
x
2
= y
2
y
3
x
3
= y
4
x
4
= y
5
unde y
j
0, i = 1, 5
i, nlocuind egalitatea cu dou inegaliti, se obine modelul:
_

_
f(y) = 3y
1
+y
2
y
3
+y
4
+ 2y
5
max
2y
1
+y
2
y
3
+ 3y
4
+ 2y
5
10
y
1
2y
2
+ 2y
3
2y
4
+ 5y
5
12
y
1
2y
2
+ 2y
3
2y
4
+ 5y
5
12/(1)
y
1
+ 3y
2
3y
3
y
4
2y
5
6/(1)
y
j
0, j = 1, 5
Restriciile de sens opus celor dorite vor nmulite cu (-1) i se va obine
forma canonic a modelului:
_

_
f(y) = 3y
1
+y
2
y
3
+y
4
+ 2y
5
max
2y
1
+y
2
y
3
+ 3y
4
+ 2y
5
10
y
1
2y
2
+ 2y
3
2y
4
+ 5y
5
12
y
1
+ 2y
2
2y
3
+ 2y
4
5y
5
12
y
1
3y
2
+ 3y
3
+y
4
+ 2y
5
6;
y
j
0, j = 1, 5
i
i
JATEK 2005/3/11 10:29 page 35 #35
i
i
i
i
i
i
2.4. Schimbarea formei de reprezentare 35
(b) Trecerea de la forma general la forma standard
n forma standard, variabilele trebuie s verice condiia de pozitivitate
(vezi cazul (a)), iar restriciile trebuie s e egaliti.
Pentru transformarea inegalitilor n egaliti, se introduc variabile
auxi-liare, numite i variabile ecart. Aceste variabile nu afecteaz funcia
obiectiv i nici soluia problemei (au unele semnicaii doar n interpretarea
soluiei problemei), fapt pentru care le introducem n funcia de scop cu
coecieni nuli.
Problem rezolvat
S se reduc la forma standard modelul:
_

_
f(y) = 2x
1
+ 3x
2
4x
3
+ 2x
4
+x
5
min
x
1
2x
2
+x
3
x
4
+ 2x
5
10
2x
1
+x
2
x
3
+ 3x
4
x
5
= 8
x
1
+ 2x
2
+ 2x
3
+ 5x
4
x
5
14
x
1
0, x
2
0, x
3
oarecare , x
4
0, x
5
0
Folosind substituiile:
x
1
= y
1
, y
1
0
x
2
= y
2
, y
2
0
x
3
= y
3
y
4
, y
3
, y
4
0
x
4
= y
5
, y
5
0
x
5
= y
6
, y
6
0
i introducnd variabilele auxiliare y
7
, y
8
, care evident veric condiia de
pozi-tivitate, putem scrie:
_

_
f(y) = 2y
1
3y
2
4y
3
+ 4y
4
2y
5
+y
6
min
y
1
+ 2y
2
+y
3
y
4
+y
5
+ 2y
6
+y
7
= 10
2y
1
y
2
y
3
+y
4
3y
5
y
6
= 8
y
1
2y
2
+ 2y
3
2y
4
5y
5
y
6
y
8
= 14
y
j
0, j = 1, 8
(c) Trecerea de la forma canonic la forma standard
Condiia de pozitivitate a variabilelor este vericat, deoarece se va porni
cu forma canonic. Pentru transformarea inegalitilor n egaliti, vor
introduse variabile auxiliare.
i
i
JATEK 2005/3/11 10:29 page 36 #36
i
i
i
i
i
i
36 2. Teoria problemelor de optimizare liniar cu restricii
(d) Trecerea de la forma general la forma standard de lucru
Deniia 2.4.1. O problem de programare liniar este n forma standard
de lucru , dac este n forma standard, n matricea A /
m,n
(R) este
inclus o matrice unitate de ordinul m i componentele vectorului b sunt
pozitive.
Aceast form de prezentare are un rol extrem de important n rezolvarea
problemelor.
Vor parcurse urmtoarele etape:
1. se reduce modelul considerat la forma standard;
2. se veric dac toate componentele vectorului b sunt pozitive (unde
este cazul, restriciile respective vor nmulite cu -1);
3. se va scrie matricea coecienilor A.
Dac nu este inclus o matrice unitate de ordinul m n matricea A,
atunci vor introduse variabile nenegative numite variabile articiale prin
adunarea acestora la membrul stng al restriciilor, astfel nct n ecare res-
tricie s apar cte o astfel de variabil o singur dat.
Observaie. Observm c:
1. variabilele articiale perturb vechiul echilibru al restriciilor, de aceea
vor introduse i n funcia de scop;
2. variabilele articiale sunt introduse n funcia obiectiv cu un coecient
pozitiv relativ mare n comparaie cu ceilali coecieni din model (prin
adunare la funcia de scop, n cazul modelelor de minimizare, respectiv
prin scdere, n cazul modelelor de maximizare);
3. pentru a nltura ncrcarea modelului, se introduc numai attea vari-
abile articiale ci vectori unitari lipsesc.
Problem rezolvat
S se reduc modelul dat n forma standard de lucru!
_

_
f(x) = 4x
1
5x
2
+ 3x
3
min
x
1
+ 2x
2
+ 3x
3
6
2x
1
3x
2
+x
3
= 2
x
1
3x
2
+ 5x
3
4
2x
1
x
2
+ 4x
3
5
x
1
0, x
2
oarecare, x
3
0
i
i
JATEK 2005/3/11 10:29 page 37 #37
i
i
i
i
i
i
2.4. Schimbarea formei de reprezentare 37
Folosind substituiile: x
1
= y
1
, x
2
= y
2
y
3
, x
3
= y
4
putem scrie:
_

_
f(y) = 4y
1
5y
2
+ 5y
3
+ 3y
4
min
y
1
+ 2y
2
2y
3
+ 3y
4
6
2y
1
3y
2
+ 3y
3
+y
4
= 2
y
1
3y
2
+ 3y
3
+ 5y
4
4
2y
1
y
2
+y
3
+ 4y
4
5
y
j
0, j = 1, 4
(2.5)
Introducem variabile auxiliare y
5
, y
6
, y
7
:
_

_
f(y) = 4y
1
5y
2
+ 5y
3
+ 3y
4
min
y
1
+ 2y
2
2y
3
+ 3y
4
y
5
= 6
2y
1
3y
2
+ 3y
3
+y
4
= 2
y
1
3y
2
+ 3y
3
+ 5y
4
+y
6
= 4
2y
1
y
2
+y
3
+ 4y
4
y
7
= 5
y
j
0, j = 1, 7
Scriind matricea restriciilor:
A =
_
_
_
_
1 2 2 3 1 0 0
2 3 3 1 0 0 0
1 3 3 5 0 1 0
2 1 1 4 0 0 1
_
_
_
_
se observ c modelul obinut nu este n forma standard de lucru.
Vor introduse variabile articiale, u
1
, u
2
, u
3
, care evident veric
condiia de pozitivitate, n prima, a doua i n ultima restricie, deoarece
coloana a asea a matricei este vector unitar.
Astfel se poate scrie:
_

_
f(y) = 4y
1
5y
2
+ 5y
3
+ 3y
4
+Mu
1
+Mu
2
+Mu
3
min
y
1
+ 2y
2
2y
3
+ 3y
4
y
5
+u
1
= 6
2y
1
3x
2
+ 3y
3
+y
4
+u
2
= 2
y
1
3x
2
+ 3y
3
+ 5y
4
+y
6
= 4
2y
1
y
2
+y
3
+ 4y
4
y
7
+u
3
= 5
y
j
0 u
k
0 k = 1, 3, j = 1, 7
Privind rezolvarea numeric a modelelor, forma standard de lucru repre-
zint o importan major. Algoritmul lui Dantzig poate aplicat doar n
cazul n care avem la dispoziie o soluie bazic oarecare. Determinarea unei
soluii bazice cu metoda prezentat n paragraful 2.2 (prin rezolvarea sis-
temelor Cramer) nu este ecient, deoarece nu orice soluie obinut veric
i condiia de pozitivitate.
i
i
JATEK 2005/3/11 10:29 page 38 #38
i
i
i
i
i
i
38 2. Teoria problemelor de optimizare liniar cu restricii
Dac considerm un model care este n forma standard de lucru, atunci
rezolvnd sistemul ales astfel nct matricea coecienilor s e matrice uni-
tate, obinem o soluie bazic cu componentele nenegative formate chiar cu
componentele vectorului b.
Observaie. Folosind metoda lui Gauss, se poate transforma matricea A n
mod echivalent, astfel nct s conin o matrice unitate.
Dezavantajul acestei metode const n faptul c nu garanteaz pozitivi-
tatea termenilor liberi.
Problem rezolvat
Fie modelul:
_

_
f(x) = 3x
1
+ 2x
2
+x
3
+ 5x
4
+ 2x
5
max
x
1
+ 2x
2
+x
3
+ 3x
4
+x
5
= 10
2x
1
+x
2
+x
3
+x
4
+ 3x
5
= 4
x 0
Dac scriem matricea extins i aplicm metoda lui Gauss, atunci vom oine
pe rnd:
_
1 2 1 3 1 10
2 1 1 1 3 4
_
/(2)
_
1 2 1 3 1 10
0 3 1 5 1 16
_
/ : (3)
_
1 2 1 3 1 10
0 1
1
3
5
3

1
3
16
3
_
/(2)
_
_
_
1 0
1
3

1
3
5
3

2
3
0 1
1
3
5
3

1
3
16
3
_
_
_
.
Deoarece b =
_
_
_

2
3
16
3
_
_
_
, rezult c soluia sistemului Cramer format
cu matricea unitate C
12
va x
1
=
2
3
, x
2
=
16
3
. Fiind egal cu
(2/3 16/3 0 0 0), soluia sistemului nu este (soluie) bazic.
i
i
JATEK 2005/3/11 10:29 page 39 #39
i
i
i
i
i
i
2.5. Rezolvarea modelelor pe cale grac 39
2.5 Rezolvarea grac a modelelor cu m restricii i
dou variabile
Fie modelul:
_
_
_
f(x) = (c, x) min/ max
Ax = b
x 0
unde A /
m,n
(R), b R
m
, c R
n
, f : R
n
R.
Rezolvarea numeric a problemei nseamn determinarea n ordine a
mulimilor: S (mulimea soluiilor posibile), S
B
(mulimea soluiilor bazice)
i S
o
(mulimea soluiilor optime).
Se va considera modelul liniar n cazul particular, cnd n = 2 :
_
_
_
f(x) = (c, x) min/ max
Ax = b
x 0
unde A /
m,2
(R), b R
m
, c R
2
, f : R
2
R.
Aceste modele pot rezolvate pe cale grac.
Reprezentnd grac restriciile problemei, se va obine un poligon convex
care este chiar mulimea S.
Mulimea S
B
se obine n urma rezolvrii unor sisteme de dou ecuaii i
dou necunoscute (calculnd punctele de intersecie a dreptelor).
Muimea S
o
n cazul unei probleme reduse se poate obine prin calcul
direct, adic prin nlocuirea soluiilor bazice n funcia de scop.
n continuare vom prezenta cteva exemple numerice, dup care se va
formula un procedeu pentru determinarea mulimii S
o
, fr a recurge la de-
terminarea tuturor elementelor mulimii S
B
.
Problem rezolvat
1. S se determine soluia optim a problemei:
_

_
f(x) = 3x
1
+ 5x
2
max
2x
1
+ 3x
2
6
x
1
+x
2
1
x
1
0, x
2
0
(2.6)
Reprezentm dreptele n acelai sistem de coordonate:
(d
1
) 2x
1
+ 3x
2
6 = 0
(d
2
) x
1
+x
2
1 = 0 (2.7)
i
i
JATEK 2005/3/11 10:29 page 40 #40
i
i
i
i
i
i
40 2. Teoria problemelor de optimizare liniar cu restricii
x
2
(d
1
)
x
1

2
3
(d
2
)
1
1
Figura 2.1:
iar mulimea S va intersecia semiplanelor respective (g. 2.1).
Se poate observa c S = S
B
,= i S
o
= , adic problema dat
nu admite soluie.
2. Fie modelul:
_

_
f(x) = 3x
1
+ 2x
2
max
2x
1
+x
2
2
x
1
+ 2x
2
2
0 x
1

2
3
0 x
2

2
3
(2.8)
Mulimea S este intersecia dreptelor:
(d
1
) 2x
1
+x
2
2 = 0;
(d
2
) x
1
+ 2x
2
2 = 0;
(d
3
) x
1

2
3
= 0;
(d
4
) x
2

2
3
= 0;
care, n acest caz, se reduce la un singur punct, ceea ce este i soluia optim
a problemei (g. 2.2).
i
i
JATEK 2005/3/11 10:29 page 41 #41
i
i
i
i
i
i
2.5. Rezolvarea modelelor pe cale grac 41
x
2
1
(d
2
)
A (2/3, 2/3)
(d
3
) (d
1
)
(d
4
)
2
2
1
2/3
2/3
x
1
Figura 2.2:
S =
__
2
3
,
2
3
__
= S
B
= S
o
; f
max
=
10
3
.
3. Fie problema de optimizare liniar cu restricii:
_

_
f(x) = 2x
1
+ 5x
2
max
3x
1
+ 4x
2
12
x
1
+x
2
1
4x
1
+x
2
2
2x
1
3x
2
3
x
1
0, x
2
0
(2.9)
n mod analog, pe cale grac, se va determina mulimea S, care este un
hexagon convex, dup cum se vede din reprezentarea grac (g. 2.3).
Vrfurile hexagonului le putem obine n urma rezolvrii unor sisteme
liniare de ecuaii cu dou ecuaii i dou necunoscute, deoarece vrfurile
sunt punctele de intersecie a dreptelor:
A = (d
1
) (Oy)
_
x
1
= 0
3x
1
+ 4x
2
12 = 0
i
i
JATEK 2005/3/11 10:29 page 42 #42
i
i
i
i
i
i
42 2. Teoria problemelor de optimizare liniar cu restricii
x
2

x
1
D
1
4
1
-1
2
3
C
B
F
E
A
(d
3
)
(d
4
)
(d
2
)
(d
1
)
Figura 2.3:
Rezolvnd sistemul, avem: A(0, 3).
C = (d
2
) (d
3
)
_
x
1
+x
2
1 = 4x
1
+x
2
2
x
1
+x
2
1 = 0
Rezolvnd sistemul, obinem: C
_
1
3
,
2
3
_
.
n mod analog se vor obine punctele: A(0, 3); B(0, 2); C
_
1
3
,
2
3
); D(1, 0);
E(3/2, 0)F(48/17, 15/17).
nlocuind aceste soluii bazice n funcia de scop, se va obine soluia
optim a problemei care, n acest caz, va A = (0, 3), iar valoarea optim a
funciei de scop va : f
max
= 15.
Observaie. Funcia de scop f(x) = ax
1
+bx
2
formeaz o familie de drepte
paralele:
ax
1
+bx
2
= , R.
Considerm dreapta ax
1
+bx
2
= 0, pentru = 0.
Fie dreapta z = ax
1
+bx
2
i ( x
1
, x
2
) un punct oarecare.
Distana punctului de la aceast dreapt este:
d =
[a x
1
+b x
2
z[

a
2
+b
2
.
i
i
JATEK 2005/3/11 10:29 page 43 #43
i
i
i
i
i
i
2.5. Rezolvarea modelelor pe cale grac 43
Astfel distana originii O(0, 0) de la dreapta considerat este:
d =
[z[

a
2
+b
2
.
Deci valoarea funciei f(x) = ax
1
+ bx
2
ntr-un punct este proporional cu
distana de la origine la dreapta ce trece prin acel punct i este paralel cu
dreapta ax
1
+bx
2
= 0.
Constanta de proporionalitate este

a
2
+b
2
.
Astfel se pot deduce imediat urmtoarele: cu ct un vrf al lui S este
mai deprtat (mai apropiat) de dreapta ax
1
+bx
2
= 0, cu att este mai mare
(mai mic) valoarea lui z pe care funcia f(x) = ax
1
+ bx
2
o atinge n acel
punct.
Astfel, dup obinerea lui S, pe cale grac, avem de calculat doar coor-
donatele unui singur vrf.
4. S se rezolve problema:
_

_
f(x) = 3x
1
+ 4x
2
max
3x
1
+ 4x
2
12
x
1
+x
2
1
x
1
x
2
2
x
1
+x
2
2
x
1
, x
2
0
Folosind acelai raionament, se va reprezenta mulimea soluiilor posi-
bile.
Acest model admite optim multiplu, deoarece dreapta (d
1
) este paralel
cu dreapta (d) : 3x
1
+ 4x
2
= 0 (g. 2.4).
Calculnd vrfurile poligonului n care funcia de scop admite valoare
optim, putem scrie:
A = (d
1
) (d
4
)
_
3x
1
+ 4x
2
12 = x
1
+x
2
2
x
1
+x
2
2 = 0

_
4x
1
+ 3x
2
= 10
x
1
+x
2
= 2/ 4
Coordonatele punctului sunt: A
_
4
7
,
18
7
_
.
B = (d
1
) (d
3
)
_
3x
1
+ 4x
2
12 = x
1
x
2
2
x
1
x
2
= 2

_
2x
1
+ 5x
2
= 10
x
1
x
2
= 2/ 5
de unde obinem: B
_
20
7
,
6
7
_
.
i
i
JATEK 2005/3/11 10:29 page 44 #44
i
i
i
i
i
i
44 2. Teoria problemelor de optimizare liniar cu restricii
x
2
x
1
C
2
1
1
3
-2
-2 2
B
D
F
A
(d
4
)
4
(d)
(d
1
)
(d
2
)
(d
3
)
E
Figura 2.4:
Deci f
max
= f
_
4
7
,
18
7
_
= f
_
20
7
,
6
7
_
= 12, iar mulimea soluiilor op-
time este combinaia convex a soluiilor optime.
Putem scrie:
x
0
=
_
4
7
,
18
7
_
+ (1 )
_
20
7
,
6
7
_
=
=
_
20
7

16
7
,
12
7
+
6
7
_
, [0, 1]
Scopul principal pe care-l urmrete programarea matematic const n
obinerea soluiei optime a unei probleme economice pe baza unui model
matematic. n continuare prezentm cteva probleme aplicative.
Problem aplicativ
1. Pentru a fabrica dou produse P
1
i P
2
este necesar s se execute
operaii de prelucrare la trei maini M
1
, M
2
, M
3
, n mod succesiv. Timpii
unitari de execuie sunt dai n tabelul de mai jos, unde se vede, de exemplu,
c timpul unitar de execuie a piesei P
1
la maina M
1
este de 12 minute. Se
presupune c mainile nu au timp mori provocai de ateptarea unui produs
i
i
JATEK 2005/3/11 10:29 page 45 #45
i
i
i
i
i
i
2.5. Rezolvarea modelelor pe cale grac 45
aat n curs de prelucrare la o alt main, datorit faptului c nu exist
preferine n ordinea operaiilor.
M
1
M
2
M
3
P
1
12 min 8 min 6 min
P
2
9 min 12 min 16 min
Orele disponibile ale ecrei maini n decurs de o lun sunt:
165 ore = 9900 min. pentru maina M
1
140 ore = 8400 min. pentru maina M
2
160 ore = 9600 min. pentru maina M
3
Beneciul pe unitate de produs este de 900 de uniti monetare (u.m) la
produsul P
1
i de 1000 (u.m) la produsul P
2
.
S se determine cte produse P
1
i P
2
trebuie fabricate lunar, pentru a
obine n condiiile date un beneciu total maxim?
Notnd cu x
1
, respectiv x
2
numrul de produse ce urmeaz s e realizat
din produsele P
1
i P
2
, beneciul se poate formula matematic cu funcia
liniar
f(x
1
, x
2
) = 900x
1
+ 1000x
2
.
n continuare avem de determinat valoarea maxim a funciei economice res-
pectnd condiiile x
1
0, x
2
0 i restriciile:
12x
1
+ 9x
2
9900 pentru maina 1
8x
1
+ 12x
2
8400 pentru maina 2
6x
1
+ 16x
2
9600 pentru maina 3
Funcia obiectiv i restriciile sunt funcii liniare. Problema se va re-
zolva pe cale grac, reprezentnd n acelai sistem de coordonate dreptele:
(d
1
) 12x
1
+9x
2
9900 = 0; (d
2
) 8x
1
+12x
2
8400 = 0; (d
3
) 6x
1
+
16x
2
9600 = 0 (v. gura 2.5).
Mulimea S este chiar poligonul haurat din cadranul I.
Construind dreapta (d) : 900x
1
+ 1000x
2
= 0 se observ imediat c
punctul
A = (d
1
)(d
2
) este cel mai ndeprtat de origine, prin urmare coordonatele
acestui punct reprezint soluia optim.
Coordonatele punctului A se obin n urma rezolvrii sistemului liniar de
ecuaii:
_
12x
1
+ 9x
2
9900 = 8x
1
+ 12x
2
8400
8x
1
+ 12x
2
= 8400
Rezolvnd sistemul, se obine: x
1
= 600, x
2
= 300. Astfel:
f
max
= 900 600 + 1000 300 = 840000 u.m.
i
i
JATEK 2005/3/11 10:29 page 46 #46
i
i
i
i
i
i
46 2. Teoria problemelor de optimizare liniar cu restricii
1600 1050 825
700
1100
x2
(d)
A
(d1)
100
(d2)
100
600
x1
(d3)
Figura 2.5:
Soluia sistemului pentru care funcia de scop are valoare maxim cores-
punde ncrcrii complete a mainilor M
1
, M
2
, iar M
3
rmne disponibil
pentru un timp egal: 9600 (6 600 + 16 300) = 1200 min. Dac cele trei
drepte care reprezint restriciile s-ar intersecta ntr-un singur punct, atunci
cele trei maini ar toate complet ncrcate.
i
i
JATEK 2005/3/11 10:29 page 47 #47
i
i
i
i
i
i
Capitolul 3
Metoda simplex
3.1 Noiuni introductive
Fie urmtorul model de minimizare sub forma standard:
_

_
f(x) =
n

j=1
c
j
x
j
min
n

j=1
a
ij
x
j
= b
i
, i = 1, m
x
j
0, j = 1, n
(3.1)
unde c
j
, a
ij
, b
i
sunt numere reale date, pentru orice i = 1, m i j = 1, n.
Notm cu:
S = x R
n
: Ax = b, x 0
mulimea soluiilor posibile ale problemei considerate.
Matricea restriciilor este:
A
1
. . . A
n
A =
_
_
_
_
_
a
11
. . . a
1n
a
21
. . . a
2n
.
.
.
a
m1
. . . a
mn
_
_
_
_
_
Fie A
1
, A
2
, . . . , A
n
puncte din R
m
care reprezint coloanele matricei A.
Deniia 3.1.1. Se numete baz a problemei (3.1) orice submulime a
spaiului R
m
format din m vectori liniar independeni alese dintre puntele
A
1
, . . . , A
n
.
47
i
i
JATEK 2005/3/11 10:29 page 48 #48
i
i
i
i
i
i
48 3. Metoda simplex
Dac B este o baz a problemei (3.1), atunci putem deni urmtoarele
mulimi de indici:
B = j 1, . . . , n N : A
j
B
mulimea indicilor bazice i:

B = i 1, . . . , n : A
i
, B
mulimea indicilor nebazice.
Evident urmtoarele egaliti sunt adevrate:
B

B = 1, . . . , n i B

B = .
Considerm o baz B a problemei (3.1) i vom introduce urmtoarele
notaii:
b =

jB

0j
A
j
,
0j
R, (3.2)
unde
0j
reprezint coordonatele vectorului b n baza B,
A
i
=

jB

ij
A
j
, pentru orice i

B
ij
R, (3.3)
unde
ij
sunt coordonatele vectorului A
i
, B n baza B,
d
0
=

jB

0j
c
j
(3.4)
d
i
=

jB

ij
c
j
c
i
, pentru orice i

B. (3.5)
Deniia 3.1.2. Spunem c baza B este baz primal admisibil , dac
pentru orice j B avem
0j
0.
O soluie asociat bazei B vom nota cu x
B
= (x
B
1
, . . . , x
B
n
) R
n
, unde
coordonatele punctului sunt date de relaia:
x
B
j
=
_

0j
, dac j B
0 , dac j

B
Teorema 3.1.1. Dac B este o baz primal admisibil a problemei (3.1),
atunci x
B
S.
Demonstraie. Avem de artat c x
B
este o soluie posibil, adic veric
sistemul de restricii i condiia de pozitivitate.
i
i
JATEK 2005/3/11 10:29 page 49 #49
i
i
i
i
i
i
3.1. Noiuni de baz 49
Putem scrie:
A x
B
=
n

j=1
A
j
x
B
j
=

jB

0j
A
j
= b
(A x = (A
1
. . . A
n
)
_
_
_
x
1
.
.
.
x
n
_
_
_
= x
1
A
1
+ +x
n
A
n
)
Evident, pe baza deniiei 3.1.2, avem x
B
0 x
B
S i teorema este
demonstrat.
Schema algoritmic a algoritmului simplex primal:
1. s se determine o baz primal admisibil B;
2. s se calculeze numerele reale
0j
,
ij
folosind relaiile (3.2), (3.3);
3. s se calculeze numerele d
0
, d
i
folosind formulele (3.4), (3.5);
4. s se verice semnul numerelor d
i
, i

B
Se pot ivi dou situaii:
a) Dac pentru orice i

B, d
i
0 atunci baza B ales n pasul (1) este
o baz optim. Astfel punctul x
0
= (x
0
1
, . . . , x
0
n
) R
n
cu coordonatele:
x
0
j
=
_

0j
, j B este soluie optim iar
0 , j

B
d
0
este valoarea minim a funciei de scop;
Altfel:
b) Dac exist i

B astfel nct d
i
> 0,
atunci formeaz mulimea:

B
+
= i

B : d
i
> 0.
5. Pentru ecare i

B
+
s se verice semnul numerelor
ij
, j B.
Se pot ivi dou situaii:
a) Dac exist i

B
+
astfel nct pentru orice j B,
ij
0,
atunci funcia de scop a problemei este nemrginit inferior pe
mulimea soluiilor posibile i problema nu admite soluie (se obine
optim innit).
i
i
JATEK 2005/3/11 10:29 page 50 #50
i
i
i
i
i
i
50 3. Metoda simplex
Altfel:
b) dac pentru orice i

B
+
exist cel puin un j B astfel nct

ij
> 0 atunci se va trece la pasul urmtor
6. s se determine un indice h

B
+
,
7. s se determine un indice k B astfel nct:

0k

hk
= min
_

0j

hj
, j B,
hj
> 0
_
.
8. S se nlocuiasc n baza B vectorul A
k
cu A
h
i cu noua baz astfel
obinut se va trece la pasul (2) din algoritm.
Bazele se modic pn cnd se va ajunge la unul din criteriile de oprire
date n algoritm.
Pentru aplicarea algoritmului se ntocmesc tabele, numite tabele sim-
plex primal.
ntocmirea tabelelor simplex primal
Se va presupune c s-a determinat o baz primal admisibil B, pentru
pro-blema de optimizare liniar considerat.
Se va construi tabelul de mai jos:
2

1 2
3

3 6 7 8
4 5 9
10
Sectoarele indicate n tabel se vor completa dup urmtoarea regul:
- n sectorul 1 se va trece numrul de ordine al tabelului simplex;
- n sectorul 2 se vor trece componentele bazei B (m coloane) A
j
, j B;
- n sectorul 3 se vor trece punctele A
i
, i

B;
- n sectorul 4 vor scrise numerele
0j
, j B;
- n sectorul 5 se va trece numrul d
0
, valoarea funciei de scop pentru
soluia posibil x
B
;
- n sectorul 6 vor scrise numerele
ij
, j B;
i
i
JATEK 2005/3/11 10:29 page 51 #51
i
i
i
i
i
i
3.1. Noiuni de baz 51
- n sectorul 7 se trec, pentru ecare i

B, numerele d
i
.
Folosirea sectoarelor 8 i 9 este opional, pot trecute nite valori care
nu erau menionate n algoritm, ns care pot folosite pentru vericarea
corectitudinii calculelor:
- n sectorul 8 vor scrise numerele notate cu p
i
, i

B :
p
i
= 1

jB

ij
d
i
;
- n sectorul 9 va scris numrul p
0
= 1

jB

0j
d
0
.
Dup completarea celor 9 sectoare se va aplica pasul 4 din algoritm, adic
se va efectua testarea optimalitii soluiei posibile x
B
.
Dac soluia bazic nu este optim i problema dat nu are optim innit
(se veric n pasul 5), atunci se va alege h, adic o linie din tabel, numit
linie pivot.
Pentru reducerea numrului de iteraii se recomand s e aleas o linie
pentru care:
d
h
= maxd
i
: i

B
+

(S-a constatat c, n urma alegerii n acest mod a liniei de pivot, se reduce


numrul iteraiilor simplex).
Cu alegerea lui h se alege de fapt vectorul care va intra n baz. Pasul
(6) se numete criteriu de intrare n baz.
Urmeaz completarea sectorului 10 din tabel.
n sectorul 10 vor trecute cturile

0j

hj
menionate n pasul (7) din
algoritm. (Dac
hj
< 0, atunci raportul nu se calculeaz, locul respectiv
din tabel se bareaz.)
Coloana corespunztoare indicelui k (ales n pasul 7 din algoritm) se
numete coloan pivot.
Alegerea coloanei pivot se numete criteriu de ieire din baz.

hk
(elementul care se a la intersecia liniei pivot cu coloana pivot) se
numete element pivot.
Aici se termin prima iteraie simplex primal.
n continuare, n baza B, va nlocuit vectorul A
k
cu A
h
i cu baza astfel
obinut se va trece la ntocmirea noului tabel simplex.
Trecerea dintr-un tabel simplex n altul
La o iteraie de ordinul r avem tabelul simplex primal:
i
i
JATEK 2005/3/11 10:29 page 52 #52
i
i
i
i
i
i
52 3. Metoda simplex
r . . . A
j
. . . A
k
. . .
. . . . . . . . . . . . . . . . . . . . . . . .
A
i
. . .
ij
. . .
ik
. . . d
i
p
i
. . . . . .
A
h
. . .
hj
. . .
hk
. . . d
h
p
h
. . . . . .
. . . x
B
j
. . . x
B
k
. . . d
0
p
0
. . . x
B
j
/
hj
. . . x
B
k
/
hk

Completarea tabelului:
- numrul din sectorul 1 se mrete cu o unitate;
- n sectorul 2 vectorul A
k
se nlocuiete cu A
h
;
- n sectorul 3 vectorul A
h
se nlocuiete cu A
k
;
- n locul elementului pivot se va scrie inversul acestuia, adic valoarea
1/
hk
;
- pe coloana pivot, elementele vor nmulite cu 1/
hk
;
- pe linia pivot, elementele vor nmulite cu 1/
hk
;
- numerele din sectoarele 4, 5, 6, 7, 8, 9 se calculeaz folosind regula
drept-unghiului.
n sectorul (2), respectiv (3) vor trecute componentele vectorului c
R
n
corespunztoare indicilor bazici j B, respectiv indicilor nebazici i B.
Aceste valori sunt folosite doar la completarea primului tabel la calculul
diferenelor d
i
i d
0
.
Regula dreptunghiului
Considernd patru numere , , , , din tabelul simplex aezate astfel
nct s formeze vrfurile unui dreptunghi:

sd
d
d
d
d


prin regula dreptunghiului valoarea lui se va nlocui cu numrul:

,
unde este chiar elementul pivot
hk
.
Astfel la iteraia de ordinul r + 1 se va obine urmtorul tabel:
i
i
JATEK 2005/3/11 10:29 page 53 #53
i
i
i
i
i
i
3.1. Noiuni de baz 53
r + 1 . . . A
j
. . . A
k
. . .
. . . . . . . . . . . . . . . . . . . . . . . .
A
i
. . .
ij


hj

ik

hk
. . .

ik

hk
. . . d
i


ik
d
h

hk
p
i


ik
p
h

hk
. . . . . .
A
h
. . .

hj

hk
. . .
1

hk
. . .
d
h

hk

p
h

hk
. . . . . .
. . . x
B
j


hj
x
B
k

hk
. . .
x
B
k

hk
. . . d
0

x
B
k
d
h

hk
p
0

x
B
k
p
h

hk
. . . . . .
n continuare, prezentm exemple numerice.
Problem rezolvat
1. S se determine soluia optim a problemei:
_

_
f(x) = x
1
x
2
3x
3
+ 5x
4
min
x
1
+x
2
+x
3
+x
4
= 1
x
1
2x
2
+ 3x
3
+x
5
= 2
x
1
x
2
+x
6
= 3
x
j
0, j = 1, 6
Matricea restriciilor este:
A
1
A
2
A
3
A
4
A
5
A
6
A =
_
_
1 1 1 1 0 0
1 2 3 0 1 0
1 1 0 0 0 1
_
_
.
Problema dat este n forma standard de lucru, deoarece n matricea A
este inclus o matrice unitate de ordinul 3, iar componentele vectorului b
sunt pozitive.
Putem aplica direct algoritmul simplex primal.
Alegem baza B = (A
4
, A
5
, A
6
).
Observaie. Dac modelul este n forma standard de lucru, atunci baza pri-
mal admisibil pe care o alegem este baza canonic din R
m
. Aceast alegere
este foarte avantajoas, deoarece, dup cum este cunoscut, n baza canonic,
ecare vector i pstreaz coordonatele iniiale. Deci nu trebuie calculate
valorile
0j
i
ij
. Astfel putem nlocui n tabel coordonatele iniiale ale
vectorului b i ale vectorilor A
i
.
Putem scrie:
i
i
JATEK 2005/3/11 10:29 page 54 #54
i
i
i
i
i
i
54 3. Metoda simplex
1 A
4
A
5
A
6

A
1
-1 1 1 -6 6
A
2
1 -2 -1 6 -3
A
3
1 3 0 8 -11
1 2 3 5 -10
1 2/3 -
Din sectorul 4 se citete soluia bazic:
x
B
= (0 0 0 1 2 3)
iar din sectorul 5 valoarea funciei de scop pentru aceast soluie:
f(x
B
) = d
0
= 5.
Soluia nu este optim d
2
> 0, d
3
> 0. Trecem la urmtoarea iteraie simplex:
2 A
4
A
3
A
6

A
1
-4/3 1/3 1 -26/3 29/3
A
2
5/3 -2/3 -1 34/3 -31/3
A
5
-1/3 1/3 0 -8/3 11/3
1/3 2/3 3 -1/3 -8/3
1/5 - -
x
B
= (0 0 2/3 1/3 0 3)
f(x
B
) = 1/3.
3 A
2
A
3
A
6

A
1
-4/5 -1/5 1/5 2/5 7/5
A
4
3/5 2/5 3/5 -34/5 31/5
A
5
-1/5 1/5 -1/5 -2/5 8/5
1/5 4/5 16/5 -13/5 -3/5
- - 16
x
B
= (0 1/5 4/5 0 0 16/5)
f(x
B
) = 13/5
4 A
2
A
3
A
1

A
6
4 1 5 -2 -7
A
4
3 1 3 -8 2
A
5
-1 0 -1 0 3
13 4 16 -9 -23
- - -
i
i
JATEK 2005/3/11 10:29 page 55 #55
i
i
i
i
i
i
3.1. Noiuni de baz 55
Soluia optim a problemei este: x
0
= (16 13 4 0 0 0), iar valoarea op-
tim a funciei de scop este f
min
= d
0
= 9.
2. S se determine soluia optim a problemei:
_

_
f = 2x
1
+x
2
+ 3x
3
+ 5x
4
+ 9x
5
min
x
1
+ 2x
3
+x
4
+ 3x
5
= 15
x
2
+x
3
+ 2x
4
+x
5
= 12
x 0
A =
_
_
A
1
A
2
A
3
A
4
A
5
1 0 2 1 3
0 1 1 2 1
_
_
Se va alege baza B = (A
1
, A
2
), baz primal admisibil.
Aplicnd algoritmul simplex primal, se vor obine pe rnd urmtoarele
tabele:
1 A
1
A
2

A
3
2 1 2 -4
A
4
1 2 -1 -1
A
5
3 1 -2 -1
15 12 42 -68
15/2 12
x
B
= (15 12 0 0 0), f(x)
B
= 42
2 A
3
A
2

A
1
1/2 -1/2 -1 2
A
4
1/2 3/2 -2 1
A
5
3/2 -1/2 -5 5
15/2 9/2 27 -38
- -
i
i
JATEK 2005/3/11 10:29 page 56 #56
i
i
i
i
i
i
56 3. Metoda simplex
Soluia optim a problemei este:
x
0
= (0 9/2 15/2 0 0) i f
min
= 27.
3.2 Bazele teoretice ale algoritmului simplex primal
Teorema 3.2.1. (Criteriul de mbuntire a soluiei) Fie x
B
o soluie
bazic nedegenerat. Dac exist cel puin un indice j = 1, n pentru care avem
d
j
< 0 n cazul unei probleme de maxim (sau d
j
> 0 n cazul unei probleme
de minim), atunci se poate determina o alt soluie de baz x
B

care s dea
o valoare mai bun dect x
B
pentru funcia de scop, iar baza corespunztoare
soluiei x
B

s difere de baza corespunztoare soluiei x


B
printr-un singur
vector.
Demonstraie. Putem presupune, fr restrngerea generalitii (variabilele
pot renumerotate), c:
x
B
= (x
1
, . . . , x
m
, 0, . . . , 0)
adic:
B = (A
1
, A
2
, . . . , A
m
),
pentru modelul:
_
_
_
f(x) = (c, x) max
Ax = b
x 0
Dac calculm diferenele d
i
cu formula d
i
= c
i

jB

ij
c
j
pentru orice
i

B, atunci criteriul de mbuntire pentru modele de maximizare va
identic cu cel folosit la modelele de minimizare.
Adic, n cazul problemelor de maximizare, de asemenea, algoritmul sim-
plex va continuat, dac exist cel puin un i

B astfel nct d
i
> 0.
Acum construim B

astfel nct n baza B nlocuim vectorul A


k
cu A
h
(modul de alegere a vectorilor va precizat mai trziu).
Presupunem c B

este o baz pentru modelul considerat.


Atunci soluia asociat acestei baze o putem scrie n forma:
x
B

= (y
1
, . . . , y
k1
, 0, y
k+1
, . . . , y
m
, 0, . . . , 0, y
h
, 0, . . . , 0).
I. Cercetm alegerea vectorului A
k
ce trebuie nlocuit n baza B, astfel
nct soluia x
B

s e posibil.
Adic s avem y
i
0, i 1, 2, . . . , k 1, k +1, . . . , m, h, (se va verica
aceast condiie mai trziu).
i
i
JATEK 2005/3/11 10:29 page 57 #57
i
i
i
i
i
i
3.2. Bazele teoretice ale algoritmului simplex primal 57
Folosind faptul c x
B
i x
B

satisfac sistemul de restricii, scriem:


_

_
m

j=1
x
j
A
j
=
m

j=1
j=k
y
j
A
j
+y
h
A
h
= b
A
h
=

m
j=1

h
j
A
j
n urma acestor egaliti avem:
m

j=1
x
j
A
j
=
m

j=1
j=k
y
j
A
j
+y
h
m

j=1

h
j
A
j
Putem scrie:
m

j=1
x
j
A
j
=
m

j=1
j=k
y
j
A
j
+y
h
m

j=1
j=k

hj
A
j
+y
h

hk
A
k

j=1
x
j
A
j
=
m

j=1
j=k
[y
j
+y
h

hj
]A
j
+y
h

hk
A
k
(3.6)
Deci n baza B, am obinut dou descompuneri pentru vectorul b. Deoarece
descompunerea unui vector ntr-o baz este unic, rezult c trebuie s aib
loc relaiile:
x
j
= y
j
+y
h

hj
pentru j 1, k 1, k + 1, . . . , m
x
k
= y
h

hk
(3.7)
Aceste relaii dau posibilitatea calculrii componentelor soluiei x
B
n funcie
de componentele soluiei x
B

.
Dar scopul urmrit este acela de a exprima componentele soluiei x
B

n
funcie de componentele soluiei x
B
.
Astfel relaiile (3.7) vor scrise n urmtoarea form:
y
h
=
x
k

hk
y
j
= x
j
y
h

hj
= x
j

x
k

hk

hj
pentru
j 1, . . . , k 1, k + 1, . . . , m.
(3.8)
Pentru a ilustra modul de utilizare a formulelor (3.8), prezentm tabelul
simplex:
i
i
JATEK 2005/3/11 10:29 page 58 #58
i
i
i
i
i
i
58 3. Metoda simplex
r . . . A
j
. . . A
k
. . . x x
. . . . . . . . . . . . . . . . . . . . . . . .
A
i
. . .
ij
. . .
ik
. . . d
i
p
i
. . . . . .
A
h
. . .
hj
. . .
hk
. . . d
h
p
h
. . . . . .
x . . . x
B
j
. . . x
B
k
. . . d
0
p
0
x . . . x
B
j
/
hj
. . . x
B
k
/
hk
x x
Avem d
h
> 0, astfel putem alege A
h
, ca vector care intr n baz.
n formula (3.8) apare elementul
hk
, care se gsete la intersecia coloanei
vectorului A
k
, care va iei din baz, cu linia vectorului A
h
, care va intra n
baz.

hk
se numete element pivot.
Componenta y
h
(cu notaiile folosite
0h
) ce urmeaz s ia locul compo-
nentei x
k
(adic
0k
) se obine prin mprirea acesteia cu elementul pivot
_

0h
=

0k

hk
_
.
Celelalte componente bazice ale soluiei x
B

se calculeaz prin regula


drept-unghiului dat, astfel:
y
k
=
x
k

hk
i y
j
=
x
j

hk
x
k

hj

hk
Dar vectorul A
k
nu a fost nc precizat.
Fixarea acestui vector se va face cu condiia ca soluia x
B

s e posibil.
Astfel relum condiiile y
j
0, i 1, . . . , k1, k+1, . . . , m, h. Pe baza
relaiilor (3.8), va trebui s avem:
x
k

hk
0 (3.9)
x
j

x
k

hk

hj
0, pentru j 1, . . . , k 1, k + 1, . . . , m.(3.10)
Din ipotez (x
B
soluie bazic posibil) avem x
k
> 0 rezult pe baza inegal-
itii (3.9) c elementul pivot
hk
trebuie s e strict pozitiv.
Acum considerm inegalitatea (3.10).
tim c x
j
i x
k
sunt pozitive (x
B
soluie bazic posibil).
Va trebui s avem:
x
j

x
k

hk

hj
0.
Dac
hj
0 atunci inegalitatea este evident.
Notm mulimea indicilor j, pentru care
hj
> 0, cu:
J = j [
hj
> 0 (B
+
= j [
hj
> 0)
i
i
JATEK 2005/3/11 10:29 page 59 #59
i
i
i
i
i
i
3.2. Bazele teoretice ale algoritmului simplex primal 59
Putem scrie atunci:
x
k

hk

x
j

hj
, j J,
ceea ce nseamn c indicele k corespunztor vectorului A
k
, ce urmeaz a
eliminat din baza B, se poate determina cu ajutorul relaiei:
x
k

hk
= min
jJ
_
x
j

hj
_
= min
_

0j

hj
[
hj
> 0
_
(3.11)
Pentru utilizarea relaiei (3.11) se ataeaz tabelului o linie suplimentar
(sectorul 10) n care se trec rapoartele dintre componentele soluiei x
B
i
componentele corespunztoare vectorului A
h
ce intr n baz (rapoarte ce se
calculeaz numai pentru componentele strict pozitive de pe linia h).
Dac
hj
0 atunci se bareaz locul respectiv din tabel.
Dintre rapoartele pozitive din sectorul 10, pe baza relaiei (3.11), va
ales cel cu valoarea minim, obinndu-se vectorul A
k
, care va eliminat din
baza B.
Dac avem mai multe rapoarte minime egale, atunci poate ales oricare
dintre ele. n acest caz vom obine o soluie degenerat (n urmtorul tabel
simplex, printre numerele
0j
vom avea zerouri).
Aceast regul poart numele de criteriu de ieire din baz.
II. Avem de demonstrat c soluia x
B

construit n etapa (I) a demon-


straiei este ntr-adevr mai bun dect soluia x
B
, adic are loc relaia
f(x
B

) > f(x
B
).
Folosind relaiile (3.8), calculm diferena:
f(x
B

) f(x
B
) =
_
_
_
_
m

j=1
j=k
c
j
y
j
+c
h
y
h
_
_
_
_

j=1
c
j
x
j
=
=
m

j=1
j=k
c
j
_
x
j

x
k

hk

hj
_
+c
h

x
k

hk

j=1
c
j
x
j
(3.12)
Adunnd i scznd termenul obinut pentru j = k n prima sum de mai
sus, aceasta se poate scrie sub forma:
m

j=1
j=k
c
j
_
x
j

x
k

hk

hj
_
=
m

j=1
c
j
_
x
j

x
k

hk

hj
_

c
k
_
x
k

x
k

hk

hk
_
=
m

j=1
c
j
_
x
j

x
k

hk

hj
_
0
i
i
JATEK 2005/3/11 10:29 page 60 #60
i
i
i
i
i
i
60 3. Metoda simplex
nlocuind n relaia (3.12), putem scrie:
f(x
B

) f(x
B
) =
m

j=1
c
j
_
x
j

x
k

hk

hj
_
+c
h
x
k

hk

j=1
c
j
x
j
=
=
m

j=1
c
j
x
j

m

j=1
c
j
x
k

hk

hj
+c
h
x
k

hk

j=1
c
j
x
j
=
= c
h
x
k

hk

j=1
c
j
x
k

hk

hj
=
x
k

hk
_
_
c
h

m

j=1
c
j

hj
_
_
=
x
k

hk
d
h
Evident c trebuie s avem d
h
> 0, nct inegalitatea cerut s aib loc
(aadar alegem vectorul A
h
).
Atunci f(x
B

) f(x
B
) > 0 f(x
B

) f(x
B
). O astfel de alegere se
numete criteriu de intrare n baz.
Teorema 3.2.2. (Testul de optimalitate)
Dac pentru o soluie bazic avem d
i
0 (i = 1, n) n cazul unei probleme
de minimizare (sau d
i
0, i = 1, n pentru o problem de maximizare), atunci
soluia este optim (problema are optim nit).
Demonstraie. Fie x
B
o soluie de baz.
Fr restrngerea generalitii putem scrie B = (A
1
, . . . , A
m
) i x
B
=
(x
0
1
, . . . , x
0
m
, 0, . . . , 0), x
0
i
0.
Considerm o soluie posibil x S oarecare, x = (x
1
, . . . , x
n
).
Avnd problema de maximizare considerat mai sus, vom demonstra c:
f(x) f(x
0
) 0.
Deoarece x
B
, x sunt soluii posibile, rezult c veric sistemul de restricii.
Avem:
n

j=1
x
j
A
j
=
m

k=1
x
0
k
A
k
= b (3.13)
Vectorii din A care nu aparin lui B pot scrii ca o combinaie liniar a
bazei, adic:
A
j
=
m

k=1

jk
A
k
(3.14)
nlocuim n relaia (3.13) i obinem:
n

j=1
x
j
_
m

k=1

jk
A
k
_
=
m

k=1
x
0
k
A
k
m

k=1
_
_
n

j=1
x
j

jk
_
_
A
k
=
m

k=1
x
0
k
A
k
i
i
JATEK 2005/3/11 10:29 page 61 #61
i
i
i
i
i
i
3.2. Bazele teoretice ale algoritmului simplex primal 61
Astfel s-a obinut descompunerea vectorului b n baza B, care, ind unic,
se poate scrie:
n

j=1
x
j

jk
= x
0
k
, k = 1, m (3.15)
Acum revenim la ceea ce avem de demonstrat i scriem:
f(x) f(x
0
) =
n

j=1
c
j
x
j

m

k=1
c
k
x
0
k
=
=
n

j=1
c
j
x
j

m

k=1
c
k
_
_
n

j=1
x
j

jk
_
_
=
=
n

j=1
c
j
x
j

n

j=1
x
j
_
m

k=1
c
k

jk
_
=
=
n

j=1
x
j
_
c
j

m

k=1
c
k

jk
_
=
n

j=1
x
j
d
j
Deoarece d
j
0 pentru orice j = 1, n rezult c f(x) f(x
0
) 0 i teorema
este demonstrat.
Teorema 3.2.3. (recunoaterea optimului innit)
Dac exist un indice h

B cu d
h
> 0, astfel nct toate numerele
hj

0, j B, atunci problema are optim innit.
Demonstraie. Avem
hj
0 pentru orice j B.
I. Fie
hj
= 0 pentru orice j B.
Putem alege h ca linie pivot, deoarece d
h
> 0.
Dar avnd pentru orice j B,
hj
0
_
y
h
=
x
k

hk
y
j
= x
j
y
h

hj
_
, rezult
c din (3.7)soluia i evident funcia obiectiv devine innit.
II. Dac
hj
< 0 pentru orice j B, atunci noile soluii nu mai sunt
admisibile. Funcia obiectiv poate lua orice valoare (nu avem element pivot).
Observaie. Este sucient s se cunoasc algoritmul simplex pentru re-
zolvarea problemelor de minimizare.
Dac se dorete rezolvarea unui model de maximizare, atunci se va nmuli
formal funcia de scop cu 1 i se va rezolva modelul cu funcia de scop f.
n acest caz se va determina valoarea minim a funciei de scop pe acelai
domeniu determinat de restriciile problemei de maximizare. Soluia optim
a acestui model este optim i pentru modelul iniial, iar f
max
= d
0
=
f
min
.
i
i
JATEK 2005/3/11 10:29 page 62 #62
i
i
i
i
i
i
62 3. Metoda simplex
Problem rezolvat
S se determine soluia optim a problemei:
_

_
f(x) = 2x
2
+x
3
max
x
1
+x
2
2x
3
7
3x
1
+x
2
+ 2x
3
3
x R
3
+
_

_
f(x) = 2x
2
x
3
min
x
1
+x
2
2x
3
+x
4
= 7
3x
1
+x
2
+ 2x
3
+x
5
= 3
x R
5
+
Matricea restriciilor este:
A
1
A
2
A
3
A
4
A
5
_
1 1 2 1 0
3 1 2 0 1
_
Modelul considerat este n forma standard de lucru. Rezolvm cu algo-
ritmul simplex primal.
1 A
4
A
5

A
1
1 -3 0 3
A
2
1 1 2 -3
A
3
-2 2 1 0
7 3 0 -9
7 3
2 A
4
A
2

A
1
4 -3 6 -6
A
5
-1 1 -2 3
A
3
-4 2 -3 6
4 3 -6 0
1 -
3 A
1
A
2

A
4
1/4 3/4 -6/4 6/4
A
5
-1/4 1/4 -2/4 6/4
A
3
-1 -1 3 0
1 6 -12 6

i
i
JATEK 2005/3/11 10:29 page 63 #63
i
i
i
i
i
i
3.2. Bazele teoretice ale algoritmului simplex primal 63
Exist n acest tabel d
3
= 3 > 0 pentru care toate numerele
31
= 1 <
0,
32
= 1 < 0, ceea ce nseamn c funcia de scop este nemrginit inferior
pe S, adic modelul are optim innit.
Observaie. Dac n pasul (7) din algoritm avem mai multe rapoarte min-
ime egale (n tabel, sectorul 10), atunci n urma alegerii arbitrare a unuia
dintre vectorii considerai pentru eliminarea din baz vom condui la de-
generarea soluiei bazice.
Observaie. n aplicaii practice este foarte important recunoaterea
optimu-lui multiplu.
Dac n urma aplicrii algoritmului simplex primal, la ultima iteraie, nu
toate diferenele d
i
sunt strict negative, adic exist un d
h
= 0 pentru care
nu toate numerele
hj
, j B sunt negative, atunci problema admite optim
multiplu. n aceast situaie se va alege h ca linie pivot i se va efectua
nc o iteraie simplex. Mulimea soluiilor optime este combinaia convex
a soluii-lor obinute.
Problem rezolvat
S se determine mulimea soluiilor optime ale problemei:
_

_
f(x) = 2x
1
+x
2
+ 4x
3
+ 3x
4
+ 6x
5
max
x
1
+x
3
+ 2x
4
+x
5
= 10
x
2
+x
3
+x
4
+ 2x
5
= 12
x 0
_

_
f(x) = 2x
1
x
2
4x
3
3x
4
6x
5
min
x
1
+x
3
+ 2x
4
+x
5
= 10
x
2
+x
3
+x
4
+ 2x
5
= 12
x 0
A
1
A
2
A
3
A
4
A
5
A =
_
1 0 1 2 1
0 1 1 1 2
_
, B = (A
1
, A
2
)
1 A
1
A
2

A
3
1 1 1 -2
A
4
2 1 -2 0
A
5
1 2 2 -4
10 12 -32 11
10 6
i
i
JATEK 2005/3/11 10:29 page 64 #64
i
i
i
i
i
i
64 3. Metoda simplex
2 A
1
A
5

A
3
1/2 1/2 0 0
A
4
3/2 1/2 -3 2
A
2
-1/2 1/2 -1 2
4 6 -44 35
8 12
Soluia optim obinut este x
01
= (4, 0, 0, 0, 6), iar valoarea optim a
funciei de scop este f
max
= 44.
Efectum nc o iteraie simplex, deoarece d
3
= 0 i
31
> 0,
35
> 0.
Avem astfel:
3 A
3
A
5

A
1
2 -1 0 0
A
4
3 -1 -3 2
A
2
-1 1 -1 2
8 2 -44 35

Soluia optim obinut este x
02
= (0, 0, 8, 0, 2), iar f
max
= 44.
Deci am obinut dou soluii optime, ceea ce nseamn c problema are
optim multiplu. Mulimea soluiilor optime este combinaia convex a solui-
ilor obinute:
x
0
= x
01
+ (1 )x
02
, pentru orice [0, 1]. Avem:
x
0
=
_
_
_
_
_
_
4
0
0
0
6
_
_
_
_
_
_
+ (1 )
_
_
_
_
_
_
0
0
8
0
2
_
_
_
_
_
_
=
_
_
_
_
_
_
4
0
8 8
0
6 + 2 2
_
_
_
_
_
_
, [0, 1]
Observaie. Pentru = 0 sau = 1 avem soluiile bazice calculate mai
sus. Pentru (0, 1) obinem i soluii optime nebazice (de exemplu, pentru
= 0, 5). Deci n cazul optimului multiplu S , S
B
.
Numai n cazul soluiei optime unice avem S S
B
.
3.3 Rezolvarea modelelor care, iniial, nu admit
soluii de baz
Algoritmul simplex primal poate utilizat cu succes numai n cazul n
care modelul de optimizare liniar cu restricii este n forma standard de
lucru.
i
i
JATEK 2005/3/11 10:29 page 65 #65
i
i
i
i
i
i
3.3. Rezolvarea modelelor care nu admit iniial soluii de baz 65
n aceste cazuri soluia asociat bazei canonice este soluie de baz in-
iial, deoarece dup cum s-a artat baza este primal admisibil.
Dac modelul dat spre rezolvare nu este n forma standard de lucru,
atunci prima dat trebuie formulat un procedeu cu care se poate genera o
baz primal admisibil, adic o soluie bazic iniial.
n acest scop poate aplicat metoda celor dou faze sau metoda coe-
cienilor de penalizare. n continuare, vom prezenta aceste metode.
I. Metoda celor dou faze
Cu metoda celor dou faze, n prima faz de lucru, se va determina o
soluie bazic iniial dup care, n faza a doua de lucru, se va rezolva modelul
considerat cu algoritmul simplex primal.
Fie urmtorul model de programare liniar cu restricii:
_
_
_
f(x) = (c, x) max / min
Ax = b
x 0
Presupunem c problema dat nu este n forma standard de lucru, adic nu
admite soluie de baz iniial.
n continuare, n scopul aplicrii metodei celor dou faze, fr restrn-
gerea generalitii, vom presupune c toate componentele lui b sunt
pozitive i n matricea A nu este inclus o matrice unitate de or-
dinul m.
Introducem variabile articiale u
i
, i = 1, m cu scopul obinerii unei ma-
trici unitate de ordinul m n matricea restriciilor.
Dup introducerea variabilelor articiale se efectueaz:
(a) rezolvarea unei probleme de minimizare obinute n urma nlocuirii
funciei de scop a problemei date cu o funcie format din suma tuturor
variabilelor articiale:
_

_
g(u) =
m

i=1
u
i
min
Ax +I
m
U = b
x 0, u 0
(b) dup rezolvarea problemei de la punctul (a) cu algoritmul simplex
primal, trecem n faza a doua de lucru unde vom ntlni una din urmtoarele
situaii:
1. Dac g
min
= 0, u
i
= 0 pentru orice i = 1, m, i nici un vector articial
nu este n baza optim, atunci se va ncepe rezolvarea problemei iniiale.
i
i
JATEK 2005/3/11 10:29 page 66 #66
i
i
i
i
i
i
66 3. Metoda simplex
Soluia obinut, n prima faz de lucru, este soluie bazic iniial pen-
tru problema considerat, iar baza optim este baz primal admisibil.
2. Dac g
min
= 0, u
i
= 0, i = 1, m, dar cel puin un vector articial se a
n baza optim, atunci soluia problemei rezolvate este soluie optim
i pentru problema iniial.
Valoarea funciei de scop se va obine prin calcul direct (nlocuind
soluia optim n funcia de scop). Evident n acest caz, problema
iniial are soluie optim degenerat.
3. Dac g
min
,= 0, (nseamn c exist cel puin o variabil articial strict
pozitiv n soluie), atunci problema considerat nu admite soluie op-
tim.
Probleme rezolvate
Prezentm un exemplu pentru ecare caz n parte.
(a) S se determine soluia optim a problemei:
(a)
_

_
f(x) = 3x
1
+ 2x
2
+x
3
+ 2x
4
max
2x
1
+x
2
+x
3
+ 2x
4
= 12
x
1
+ 2x
2
+x
3
+ 3x
4
= 14
x 0
Problema nu este n forma standard de lucru, deci nu se poate aplica n
mod direct algoritmul simplex primal.
Cu metoda celor dou faze se va determina o soluie bazic iniial, o
baz primal admisibil.
n prima faz de lucru se va rezolva modelul:
_

_
g(u) = u
1
+u
2
min
2x
1
+x
2
+x
3
+ 2x
4
+u
1
= 12
x
1
+ 2x
2
+x
3
+ 3x
4
+u
2
= 14
x 0, u 0
Matricea restriciilor este:
A
1
A
2
A
3
A
4
u
1
u
2
A =
_
2 1 1 2 1 0
1 2 1 3 0 1
_
Avem, pe rnd, tabelele simplex:
i
i
JATEK 2005/3/11 10:29 page 67 #67
i
i
i
i
i
i
3.3. Rezolvarea modelelor care nu admit iniial soluii de baz 67
1 u
1
u
2

A
1
2 1 3 -5
A
2
1 2 3 -5
A
3
1 1 2 -3
A
4
2 3 5 -9
12 14 26 -51
6 14/3
2 u
1
A
4

A
1
4/3 1/3 4/3 -2
A
2
-1/3 2/3 -1/3 1
A
3
1/3 1/3 1/3 0
u
2
-2/3 1/3 -5/3 3
8/3 14/3 8/3 -9
2 14
n urmtorul tabel simpex, putem reduce numrul liniilor, deoarece linia
vectorului articial u
2
ntotdeauna o vom putea elimina. Dac reuim s
scoatem un vector articial din baz, nu vom avea interesul s-l introducem
nc o dat la o alt iteraie simplex. Putem scrie:
3 A
1
A
4

u
1
3/4 -1/4 -1 3/2
A
2
-1/4 3/4 0 1/2
A
3
1/4 1/4 0 +1/2
2 4 0 -5

Dac toate diferenele d
i
sunt negative, nseamn c am ajuns la ultima
iteraie simplex, deoarece g
min
= 0, u
1
= u
2
= 0, B
0
= (A
1
A
4
) rezult c
soluia obinut x
B
= (2 0 0 4) este soluie de baz iniial petru prob-
lema dat.
De fapt, n prima faz de lucru, se urmrete schimbarea formei de
reprezentare. Din tabelul 3, dac scriem matricea restriciilor:
A =
_
1 1/4 1/4 0
0 3/4 1/4 1
_
i vectorul b = (2 4) atunci modelul iniial se transform astfel:
i
i
JATEK 2005/3/11 10:29 page 68 #68
i
i
i
i
i
i
68 3. Metoda simplex
_

_
f(x) = 3x
1
+ 2x
2
+x
3
+ 2x
4
max
x
1

1
4
x
2
+
1
4
x
3
= 2
3
4
x
2
+
1
4
x
3
+x
4
= 4
x 0
Acest model este n forma standard de lucru. Se va rezolva cu algoritmul
simplex primal. Se vor obine pe rnd:
1 A
1
A
4

A
2
-1/4 3/4 5/4 -3/4
A
3
1/4 1/4 -1/4 3/4
2 4 -14 9
- 16/3
2 A
1
A
2

A
4
1/3 4/3 -5/3 1
A
3
1/3 1/3 -2/3 1
10/3 16/3 -62/3 39/3

x
0
=
_
10
3
,
16
3
, 0, 0
_
f
max
=
62
3
= d
0
.
Se poate observa c nu este necesar s se scrie dup prima faz de lu-
cru modelul transformat, ci din ultimul tabel simplex, obinut n prima faz
de lucru, n urma eliminrii liniei vectorului articial u
1
i a eliminrii el-
ementelor din sectoarele 5,7,8 i 9 cu ajutorul funciei de scop a problemei
iniiale putem ntocmi primul tabel din faza a doua de lucru.
(b) S se rezolve problema:
_

_
f(x) = 2x
1
+x
2
+x
3
min
2x
1
+ 3x
2
+ 3x
3
= 12
x
1
+x
2
+ 2x
3
= 8
x 0
Matricea restriciilor ind:
i
i
JATEK 2005/3/11 10:29 page 69 #69
i
i
i
i
i
i
3.3. Rezolvarea modelelor care nu admit iniial soluii de baz 69
A
1
A
2
A
3
A =
_
2 3 3
1 1 2
_
modelul nu este n forma standard de lucru.
I. Scriem:
_

_
g(u) = u
1
+u
2
min
2x
1
+ 3x
2
+ 3x
3
+u
1
= 12
x
1
+x
2
+ 2x
3
+u
2
= 8
x R

+
, u R
2
+
A
1
A
2
A
3
u
1
u
2
A =
_
2 3 3 1 0
1 1 2 0 1
_
, B = (u
1
, u
2
)
1 u
1
u
2

A
1
2 1 3 -5
A
2
3 1 4 -7
A
3
3 2 5 -9
12 8 20 -39
4 4
2 A
3
u
2

A
1
2/3 -1/3 -1/3 1
A
2
1 -1 -1 2
u
1
1/3 -2/3 -5/3 3
4 0 0 -3

n prima faz de lucru s-a obinut g
min
= 0 x
0
= (0, 0, 4) B = (x
3
, u
2
)
cu u
2
= 0, deci soluia obinut este soluie optim i pentru problema
iniial, iar valoarea funciei de scop se va obine prin calcul direct i va
f
min
= 4.
i
i
JATEK 2005/3/11 10:29 page 70 #70
i
i
i
i
i
i
70 3. Metoda simplex
(c). S se arate c problema nu admite soluie optim:
Fie modelul:
_

_
f(x) = 2x
1
+x
2
+x
3
+ 2x
4
min
2x
1
+x
2
+ 2x
3
+ 2x
4
= 16
x
1
+x
2
+ 2x
3
+ 2x
4
= 10
2x
1
+x
2
+x
3
+ 2x
4
= 20
x 0
cu:
A =
_
_
2 1 2 2
1 1 2 2
2 1 1 2
_
_
.
I. n prima faz de lucru scriem:
_

_
g(u) = u
1
+u
2
+u
3
min
2x
1
+x
2
+ 2x
3
+ 2x
4
+u
1
= 16
x
1
+x
2
+ 2x
3
+ 2x
4
+u
2
= 10
2x
1
+x
2
+x
3
+ 2x
4
+u
3
= 20
x R
4
+
, u R
3
+
A
1
A
2
A
3
A
4
u
1
u
2
u
3
A =
_
_
2 1 2 2 1 0 0
1 1 2 2 0 1 0
2 1 1 2 0 0 1
_
_
, B = (u
1
, u
2
, u
3
)
1 u
1
u
2
u
3

A
1
2 1 2 5 -9
A
2
1 1 1 3 -5
A
3
2 2 1 5 -9
A
4
2 2 2 6 -11
16 10 20 46 -91
8 5 10
2 u
1
A
4
u
3

A
1
1 1/2 1 2 -7/2
A
2
0 1/2 0 0 1/2
A
3
0 1 -1 -1 2
u
2
-1 1/2 -1 -3 11/2
6 5 10 16 -36
6 10 10
i
i
JATEK 2005/3/11 10:29 page 71 #71
i
i
i
i
i
i
3.3. Rezolvarea modelelor care nu admit iniial soluii de baz 71
3 A
1
A
4
u
3

u
1
1 -1/2 -1 -2 7/2
A
2
0 1/2 0 0 1/2
A
3
0 1 -1 -1 2
6 2 4 4 -15

g
min
= d
0
= 4 ,= 0
u
1
= u
2
= 0, u
3
= 4
Deoarece g
min
= 4 ,= 0 problema iniial nu admite soluie.
II. Metoda coecienilor de penalizare
Fie modelul:
_
_
_
f(x) = (c, x) min / max
Ax = b , A /
m,n
(R)
x 0 b R
m
, c R
n
(3.16)
Presupunem c problema (3.16) nu este n forma standard de lucru, adic n
matricea A nu avem o matrice unitate de ordinul m. Fr restrngerea gene-
ralitii, putem presupune c toate componentele vectorului b sunt pozitive.
Introducem variabile articiale (maximumm astfel de variabile) cu scopul
obinerii unei matrici unitate de ordinul m.
Aceste variabile stric vechiul echilibru al restriciilor i soluiile modelu-
lui (model lrgit) astfel obinut, n general, nu corespund cu soluiile mod-
elului propus spre rezolvare.
Evident, pentru ca o soluie a modelului lrgit s e soluie i pentru
modelul iniial, trebuie ca n ea toate variabilele articiale s e nule. De
aceea form anularea variabilelor articiale prin introducerea acestora n
funcia de scop cu un coecient M (prin adunare n cazul problemelor de
minimizare i prin scdere n cazul problemelor de maximizare).
Coecientul de penalizare M este considerat ca un numr arbitrar
po-zitiv, relativ mare fa de ceilali coecieni din model.
Rolul acestor coecieni de penalizare este acela de a nu lsa funcia de
scop s-i ating valoarea optim pn cnd nu se anuleaz toate variabilele
articiale.
Observaie.
1. Dac prin aplicarea algoritmului s-a ajuns la o soluie optim a mod-
elului lrgit, fr ca toate variabilele articiale s aib valori nule n
aceast soluie, atunci modelul iniial nu admite soluie optim.
i
i
JATEK 2005/3/11 10:29 page 72 #72
i
i
i
i
i
i
72 3. Metoda simplex
2. n calculele manuale nu este necesar particularizarea valorii lui M. Pe
parcursul algoritmului simplex l privim ca pe un numr relativ mare
n raport cu celelalte valori numerice din model.
3. Deoarece valorile variabilelor articiale trebuie s e nule, orice vector
articial ieit din baz nu va mai cercetat pentru o eventual introdu-
cere n baz (deci nu se calculeaz diferena d
i
), iar la urmtoarea
iteraie linia respectiv se va elimina din tabel.
Problem rezolvat
1. Fie modelul de optimizare liniar:
_

_
f(x) = 5x
1
+ 5x
2
+ 4x
3
max
x
1
+x
2
+x
3
60
2x
1
+x
2
+ 3x
3
90
x
2
+ 2x
3
40
x
j
0, j = 1, 3
_

_
f(x) = 5x
1
5x
2
4x
3
min
x
1
+x
2
+x
3
+x
4
= 60
2x
1
+x
2
+ 3x
3
x
5
= 90
x
2
+ 2x
3
x
6
= 40
x
j
0, j = 1, 6
A =
_
_
1 1 1 1 0 0
2 1 3 0 1 0
0 1 2 0 0 1
_
_
_

_
f(x) = 5x
1
5x
2
4x
3
+Mu
1
+Mu
2
min
x
1
+x
2
+x
3
+x
4
= 60
2x
1
+x
2
+ 3x
3
x
5
+u
1
= 90
x
2
+ 2x
3
x
6
+u
2
= 40
x
j
0, u
1
0, u
2
0
A
1
A
2
A
3
A
4
A
5
A
6
u
1
u
2
A =
_
_
1 1 1 1 0 0 0 0
2 1 3 0 -1 0 1 0
0 1 2 0 0 -1 0 1
_
_
, B = (A
4
, u
1
, u
2
)
Aplicnd algoritmul, vom obine urmtoarele tabele:
i
i
JATEK 2005/3/11 10:29 page 73 #73
i
i
i
i
i
i
3.3. Rezolvarea modelelor care nu admit iniial soluii de baz 73
1 A
4
u
1
u
2

A
1
1 2 0 5 + 2M 2M 7
A
2
1 1 1 5 + 2M 2M 7
A
3
1 3 2 4 + 5M 5M 9
A
5
0 -1 0 M 2 +M
A
6
0 0 -1 M 2 +M
60 90 40 130M 130M 189
60 30 20
2 A
4
u
1
A
3

A
1
1 2 0 5 + 2M 2M 7
A
2
1/2 -1/2 1/2 3 M/2 M/2 5/2
u
2
-1/2 -3/2 1/2 2 + 5M/2 (5M + 1)/2
A
5
0 -1 0 M M + 2
A
6
1/2 3/2 -1/2 (3M + 4)/2 -5/2-3M/2
* 40 30 20 80 + 30M 30M 9
* 40 15 -
3 A
4
A
1
A
3

u
1
-1/2 1/2 0 (5 + 2M)/2 M + 7/2
A
2
3/4 -1/4 1/2 17/4 -17/4
A
5
1/2 -1/2 0 5/2 -3/2
A
6
-1/4 3/4 -1/2 -7/4 11/4
25 15 20 -155 96
100/3 - 40
4 A
2
A
1
A
3

A
4
4/3 1/3 -2/3 -17/3 17/3
A
5
2/3 -1/3 -1/3 -1/3 4/3
A
6
1/3 2/3 -1/3 -1/3 4/3
100/3 70/3 10/3 -890/3 713/3

Soluia optim este: x
0
=
_
70
3
,
100
3
,
10
3
_
i f
max
= d
0
=
890
3
.
Observaie. n urma aplicrii metodei se poate ntmpla ca:
i
i
JATEK 2005/3/11 10:29 page 74 #74
i
i
i
i
i
i
74 3. Metoda simplex
1. variabila articial s e eliminat din tabelul simplex, obinnd astfel
o soluie de pornire pentru problema iniial i se va continua algoritmul
simplex primal;
2. variabilele articiale rmn n soluia nal, dar cu valoarea zero, ceea
ce nseamn c problema iniial admite soluie (nu depinde de vari-
abilele articiale);
3. variabilele articiale rmn n soluia nal, i cel puin una este
nenul; caz n care problema iniial nu admite soluie (sistemul de
restricii Ax = b poate compatibil, dar nu admite soluie de baz).
2. S se rezolve problema:
_

_
f(x) = x
1
+ 2x
2
+ 2x
3
+x
4
min
x
1
+ 2x
2
+ 2x
3
+x
4
= 10
2x
1
+x
2
+ 2x
3
+ 2x
4
= 12
x
1
+ 2x
2
+ 2x
3
+ 2x
4
= 16
x
j
0, j = 1, 4
A =
_
_
1 2 2 1
2 1 2 2
1 2 2 2
_
_
Introducem variabile articiale, deoarece problema considerat nu este n
forma standard de lucru:
_

_
f(x) = x
1
+ 2x
2
+ 2x
3
+x
4
+Mu
1
+Mu
2
+Mu
3
min
x
1
+ 2x
2
+ 2x
3
+x
4
+u
1
= 10
2x
1
+x
2
+ 2x
3
+ 2x
4
+u
2
= 12
x
1
+ 2x
2
+ 2x
3
+ 2x
4
+u
3
= 16
x
j
0, j = 1, 4, u
i
0, i = 1, 3
Aplicm metoda coecienilor de penalizare, pornind cu baza B =
(u
1
, u
2
, u
3
) primal admisibil.
Efectund calculele, se obin tabelele:
1 u
1
u
2
u
3

A
1
1 2 1 4M 1 4M 2
A
2
2 1 2 5M 2 5M 2
A
3
2 2 2 6M 2 6M 3
A
4
1 2 2 5M 1 5M 3
10 12 16 38M 38M 37
5 6 8
i
i
JATEK 2005/3/11 10:29 page 75 #75
i
i
i
i
i
i
3.4. Degenerare i ciclare n aplicarea algoritmului simplex 75
2 A
3
u
2
u
3

A
1
1/2 1 0 M M 1/2
A
2
1 -1 0 M M + 1
u
1
1/2 -1 -1 3M + 1 3M + 3/2
A
4
1/2 1 1 2M 2M 3/2
5 2 6 8M + 10 8M 22
10 2 6
3 A
3
A
4
u
3

A
1
0 1 -1 M M + 1
A
2
3/2 -1 1 M M 1/2
u
2
-1/2 1 -1 2M 2M + 3/2
4 2 4 4M + 10 4M 19
8/3 4
4 A
2
A
4
u
3

A
1
0 1 -1 M M + 1
A
3
2/3 2/3 -2/3 2M/3 1/3 + 2M/3
8/3 14/3 4/3 4M/3 + 10 (4M + 53)/3

Deoarece din ultimul tabel simplex primal avem x
2
=
8
3
x
4
=
14
3
u
3
=
4
3
rezult c problema considerat nu admite soluie optim.
3.4 Degenerare i ciclare n aplicarea algoritmului
simplex
n urma aplicrii algoritmului simplex primal nu ntotdeauna obinem
soluia optim, dei modelul admite optim nit, deoarece n unele cazuri
apare fenomenul de ciclare.
Acest fenomen poate s apar din mai multe motive, cum ar de exemplu:
1. dac soluia bazic este degenerat, adic numrul componentelor
strict pozitive este mai mic dect dimensiunea bazei (avem
0j
= 0
pentru j B);
2. dac n sectorul 10 avem mai multe rapoarte minime egale;
i
i
JATEK 2005/3/11 10:29 page 76 #76
i
i
i
i
i
i
76 3. Metoda simplex
3. dac pornim algoritmul cu o soluie bazic degenerat (adic exist
i = 1, m pentru care b
i
= 0).
Deoarece numrul soluiilor bazice este cel mult C
m
n
(m < n) nseamn
c algoritmul simplex ar trebui s se termine ntr-un numr nit de pai.
Aceast armaie ns n practic nu are suport, indc pot aprea diferite
situaii complicate, n urma crora algoritmul nu se oprete.
Prin fenomenul de ciclare se nelege obinerea, la un moment dat
(dup un numr de iteraii), a unei baze, a unei soluii corespunztoare aces-
tei bazei i unei valori a funciei de scop, iar n urma aplicrii, n continuare, a
algoritmului simplex, peste cteva iteraii, se ajunge iari la iteraia iniial.
Acest fenomen poate s apar i n cazul n care avem:
1) d
i
= 0 (ceea ce se ntmpl n cazul optimului multiplu);
2)
0j
= 0 (i vectorul A
j
este eliminat din baz)
Dac degenerarea ne conduce la apariia fenomenului de ciclare, atunci
evitarea ciclrii presupune, evident, evitarea degenerrii. n acest scop au
fost date mai multe metode.
Fenomenul de ciclare apare foarte rar. Construirea unui model practic n
care apare fenomenul de ciclare nu este uor.
Primul exemplu a fost construit n 1955 de ctre E.M.L. Beale [Bea]:
_

_
f(x) =
3
4
x
1
+ 150x
2

1
50
x
3
+ 6x
4
min
1
4
x
1
60x
2

1
25
x
3
+ 9x
4
+x
5
= 0
1
2
x
1
90x
2

1
50
x
3
+ 3x
4
+x
6
= 0
x
3
+x
7
= 1
x
j
0, j = 1, 7
Rezolvnd problema cu algoritmul simplex primal dup ase iteraii,
tabelul, la iteraia a aptea, va identic cu primul tabel simplex.
Pentru prima dat n 1978 T.C.T. Kotiah i D.I. Steinberg au semnalat
apariia fenomenului la o problem practic. Dei nu este un fenomen des
ntlnit, au fost formulate diferite metode de eliminare. n 1977 R. Bland
[Blan] formuleaz un criteriu extrem de simplu pentru nlturarea acestui
fenomen.
Criteriul Bland
Dac la criteriul de intrare n baz este ales vectorul al crui indice
are valoarea minim i la criteriul de ieire din baz de asemenea este ales
i
i
JATEK 2005/3/11 10:29 page 77 #77
i
i
i
i
i
i
3.4. Degenerare i ciclare n aplicarea algoritmului simplex 77
vectorul care are cel mai mic index dintre cei posibili, atunci dup un numr
nit de iteraii se va obine soluia optim.
Metoda perturbrii
Proceduri constructive, metode de prevenire a fenomenului de ciclare,
care implic modicarea membrului drept au fost formulate i demonstrate
de Philip Wolfe [Wol], Dantzig [Dan1].
Problem rezolvat
Fie modelul:
_

_
f(x) =
3
4
x
4
20x
5
+
1
2
x
6
6x
7
max
x
1
+
1
4
x
4
8x
5
x
6
+ 9x
7
= 0
x
2
+
1
2
x
4
12x
5

1
2
x
6
+ 3x
7
= 0
x
3
+x
6
= 1
x 0
Matricea restriciilor este:
A
1
A
2
A
3
A
4
A
5
A
6
A
7
_
_
_
_
_
_
1 0 0
1
4
8 1 9
0 1 0
1
2
12
1
2
3
0 0 1 0 0 1 0
_
_
_
_
_
_
Pornind cu baza primal admisibil B = (A
1
, A
2
, A
3
), se va aplica algorit-
mul simplex primal. Dup 6 iteraii simplex, se va ajunge napoi la primul
tabel simplex.
Charnes [Chr] demonstreaz c, adugnd cte un la ecare dintre
componentele termenului liber, putem evita fenomenul de ciclare. Lucrm
cu termenul liber modicat, iar la sfritul algoritmului renunm la i
citim soluia optim a problemei.
Teorema 3.4.1. Dac B este o baz primal admisibil pentru modelul
conside-rat, atunci exist
0
> 0 astfel nct soluia bazic
x
B
() = B
1
b()
i
i
JATEK 2005/3/11 10:29 page 78 #78
i
i
i
i
i
i
78 3. Metoda simplex
a problemei obinute dup introducerea lui , corespunztor lui B s e nede-
generat pentru orice (0,
0
).
Demonstraie. [Chr], [Gas]
Pe baza teoremei, avem de rezolvat problema:
_

_
f(x) =
3
4
x
4
20x
5
+
1
2
x
6
6x
7
max
x
1
+
1
4
x
4
8x
5
x
6
+ 9x
7
=
x
2
+
1
2
x
4
12x
5

1
2
x
6
+ 3x
7
=
x
3
+x
6
= 1
x 0

b = (, , 1). Aplicnd algoritmul simplex se va obine soluia optim:


x
0
=
_
3
4
, 0, 0, 1, 0, 1, 0
_
iar valoarea funciei de scop va f
max
= 5/4.
Observaie. Se poate demonstra c numrul minim de iteraii, n urma
cruia apare fenomenul de ciclare, este 6 [Yud].
Degenerarea nu cauzeaz ntotdeauna fenomenul de ciclare.
Fie de exemplu urmtorul model:
_

_
f(x) = 2x
1
x
2
+x
3
+ 10x
4
x
5
max
x
1
+ 2x
4
x
5
= 0
x
2
+x
4
2x
5
= 0
x
3
+x
4
+x
5
= 12
x 0
Aplicnd algoritmul simplex primal (se poate observa uor c problema
este n forma standard de lucru), dup 2 iteraii se va obine soluia optim
x
0
= (0, 12, 0, 4, 8)
i valoarea optim a funciei de scop f
max
= 20.
Marshall i Suurballe [Mars] arat c fenomenul de ciclare poate s apar
n cazul n care modelul admite cel puin dou restricii, cel puin ase vari-
abile i cel puin trei variabile nebazice.
n continuare, prezentm dou exemple construite de Marshall i Suur-
balle pentru fenomenul de ciclare.
i
i
JATEK 2005/3/11 10:29 page 79 #79
i
i
i
i
i
i
3.4. Degenerare i ciclare n aplicarea algoritmului simplex 79
_

_
f(x) = 2x
2
+ 4x
4
+ 4x
6
min
x
1
3x
2
x
3
x
4
x
5
+ 6x
6
= 0
2x
2
+x
3
3x
4
x
5
+ 2x
6
= 0
x 0
_

_
f(x) =
2
5
x
5

2
5
x
6
+
9
5
x
7
min
x
1
+
3
5
x
5

32
5
x
6
+
24
5
x
7
= 0
x
2
+
1
5
x
5

9
5
x
6
+
3
5
x
7
= 0
x
3
+
2
5
x
5

8
5
x
6
+
1
5
x
7
= 0
x
4
+x
6
= 1
x 0
S se arate c, la urmtorul exemplu dat de H.W.Kuhn i publicat n
[Bal], dup ase iteraii, apare fenomenul de ciclare.
_

_
f(x) = 2x
4
3x
5
+x
6
+ 12x
7
min
2x
4
9x
5
+x
6
+ 9x
7
= 0
x
2
+
1
3
x
4
+x
5

1
3
x
6
2x
7
= 0
x
3
+ 2x
4
+ 3x
5
x
6
12x
7
= 2
x 0
i
i
JATEK 2005/3/11 10:29 page 80 #80
i
i
i
i
i
i
80 3. Metoda simplex
i
i
JATEK 2005/3/11 10:29 page 81 #81
i
i
i
i
i
i
Capitolul 4
Teoria dualitii
4.1 Introducere n dualitate
Dualitatea ocup un loc important n programarea liniar, att din punct
de vedere teoretic, ct i din punct de vedere practic.
Teoria dualitii const n construirea pentru problema dat:
(P) f(x) : x S min
a unei probleme duale:
(D) f

(y) : y S

max
i n indicarea unor condiii n care problemele (P) i (D) au urmtoarele
proprieti:
1. pentru ecare x S i ecare y S

avem f

(y) f(x);
2. dac (P) admite soluie optim, atunci rezult c i (D) admite soluie
optim, iar valorile optime sunt egale;
3. dac (D) admite soluie optim, atunci rezult c i (P) admite soluie
optim, iar valorile optime sunt egale;
4. dac x
0
S este soluie optim a problemei (P) i y
0
S

este soluie
optim pentru problema (D), atunci f(x
0
) = f

(y
0
);
5. dac una din probleme are optim innit, atunci cealalt nu admite
soluie posibil (adic optim) i reciproc.
81
i
i
JATEK 2005/3/11 10:29 page 82 #82
i
i
i
i
i
i
82 4. Teoria dualitii
4.2 Formularea problemei duale
Fie urmtoarea problem de programare liniar n forma general:
_

_
f(x) = c
1
x
1
+c
2
x
2
+c
3
x
3
min
A
11
x
1
+A
12
x
2
+A
13
x
3
b
1
A
21
x
1
+A
22
x
2
+A
23
x
3
= b
2
A
31
x
1
+A
32
x
2
+A
33
x
3
b
3
x
1
0, x
2
0, x
3
de semn oarecare
(4.1)
Deniia 4.2.1. Fiind dat problema (4.1), se numete dual a sa prob-
lema:
_

_
g(y) = b
1
y
1
+b
2
y
2
+b
3
y
3
max
A
T
11
y
1
+A
T
21
y
2
+A
T
31
y
3
c
1
A
T
12
y
1
+A
T
22
y
2
+A
T
32
y
3
c
2
A
T
13
y
1
+A
T
23
y
2
+A
T
33
y
3
= c
3
y
1
0, y
2
de semn oarecare y
3
0.
(4.2)
Modelul (4.1) se numete problem primal i se va nota cu (P), iar
modelul (4.2) se numete problem dual i se va nota cu (D).
Deci pentru ecare caz n parte avem urmtoarele modele:
(P)
_

_
f(x) = c
1
x
1
+c
2
x
2
+c
3
x
3
max
A
11
x
1
+A
12
x
2
+A
13
x
3
b
1
A
21
x
1
+A
22
x
2
+A
23
x
3
= b
2
A
31
x
1
+A
32
x
2
+A
33
x
3
b
3
x
1
0, x
2
0, x
3
de semn oarecare
(D)
_

_
g(y) = b
1
y
1
+b
2
y
2
+b
3
y
3
min
A
T
11
y
1
+A
T
21
y
2
+A
T
31
y
3
c
1
A
T
21
y
1
+A
T
22
y
2
+A
T
23
y
3
c
2
A
T
31
y
1
+A
T
32
y
2
+A
T
33
y
3
= c
3
y

0, y
2
de semn oarecare
y
3
0
i
i
JATEK 2005/3/11 10:29 page 83 #83
i
i
i
i
i
i
4.2. Formularea problemei duale 83
(P)
_

_
f(x) = c
1
x
1
+c
2
x
2
+c
3
x
3
min
A
11
x
1
+A
12
x
2
+A
13
x
3
b
1
A
21
x
1
+A
22
x
2
+A
23
x
3
= b
2
A
31
x
1
+A
32
x
2
+A
33
x
3
b
3
x
1
0, x
2
0, x
3
de semn oarecare
(D)
_

_
g(y) = y
1
b
1
+y
2
b
2
+y
3
b
3
max
A
T
11
y
1
+A
T
21
y
2
+A
T
31
y
3
c
1
A
T
21
y
1
+A
T
22
y
2
+A
T
23
y
3
c
2
A
T
31
y
1
+A
T
32
y
2
+A
T
33
y
3
= c
3
y
1
0, y
2
de semn oarecare, y
3
0
Observaia 4.2.1. Se observ c duala problemei duale este chiar problema
primal. Din acest motiv vom spune c problemele (4.1) - (4.2) (respectiv
(P)-(D)) formeaz un cuplu de probleme duale.
Analiznd cuplurile de probleme duale date, putem formula urmtoarele
legturi dintre elementele cuplului:
a) forma funciei obiectiv din (P) implic forma funciei obiectiv din dual
(i reciproc);
b) forma restriciilor problemei primale implic semnele variabilelor
dualei (i reciproc);
c) semnele variabilelor problemei primale implic forma restriciilor pro-
blemei duale (i reciproc).
Explicit se pot formula urmtoarele:
dac n problema (P) se cere maximizare/ minimizare, atunci n duala
(D) se cere minimizare / maximizare;
numrul variabilelor problemei primale determin numrul de restricii
ale problemei duale;
numrul de restricii ale primalei d numrul de variabile ale problemei
duale;
termenii liberi din (P) devin coecienii funciei de scop n (D);
coecienii funciei de scop din (P) devin termenii liberi n (D);
dac A este matricea coecienilor problemei (P), atunci A
T
va ma-
tricea coecienilor problemei; (D)
dac (P) are restricii concordante, atunci (D) are variabile pozitive;
dac (P) are restricii neconcordante inegaliti, atunci (D) are vari-
abile negative;
i
i
JATEK 2005/3/11 10:29 page 84 #84
i
i
i
i
i
i
84 4. Teoria dualitii
dac (P) are restricii neconcordante egaliti, atunci (D) are variabile
de semn oarecare;
dac (P) are variabile pozitive, atunci (D) va avea restricii concor-
dante;
dac (P) are variabile negative, atunci (D) va avea restricii neconcor-
dante inegaliti;
dac (P) are variabile de semn oarecare, atunci (D) va avea restricii
neconcordante egaliti.
Deniia 4.2.2. O restricie de forma , respectiv n cazul unei prob-
leme de maximizare / minimizare se numete restricie concordant. O
restricie de forma , respectiv n cazul unei probleme de maximizare /
minimizare se numete restricie neconcordant de tip inegalitate.
Se poate observa c restricia concordant este identic cu tipul restrici-
ilor din forma canonic a problemei primale.
Se pot demonstra urmtoarele teoreme:
Teorema 4.2.2. Dac:
(P)
_
_
_
f(x) = (c, x) max
Ax b
x 0
atunci:
(D)
_
_
_
g(y) = (b, y) min
A
T
y c
y 0
Teorema 4.2.3. Dac:
(P)
_
_
_
f(x) = (c, x) min
Ax b
x 0
atunci:
(D)
_
_
_
g(y) = (b, y) max
A
T
y c
y 0
Cuplul de probleme duale, remarcabil prin simetria sa (ambele probleme
sunt n form canonic), se numete cuplu dual simetric:
(P) x R
n
[ Ax b, x 0 min
(D) u R
m
[ A
T
u c, u 0 max
i
i
JATEK 2005/3/11 10:29 page 85 #85
i
i
i
i
i
i
4.3. Interpretarea economic a dualitii 85
Un motiv al denirii problemelor duale este i acela al posibilitii de
soluionare mai rapid a unuia din elementele cuplului primal - dual.
Interesul se concentreaz asupra modului n care gsim soluia celuilalt
element al cuplului.
Se poate vedea c dualitatea se poate deni n mod echivalent utiliznd
oricare dintre cuplurile de probleme duale.
Aceasta nseamn c putem studia proprietile de dualitate pe oricare
dintre cuplurile de probleme duale, fr a restrnge prin aceasta generali-
tatea.
4.3 Interpretarea economic a dualitii
n continuare prezentm o problem aplicativ.
Se urmrete stabilirea hranei raionale pentru animale, hran care s
conin n mod obligatoriu patru elemente nutritive, A, B, C i D. Se produc
dou nutreuri M i N care conin aceste elemente. Un kilogram din nutreul
M conine 100 grame din elementul A, 100 grame din C i 200 grame din D.
1 kg din nutreul N conine 100 grame din elementul B, 200 grame din
elementul C i 100 grame din D.
Un animal trebuie s consume pe zi cel puin 0,4 kg din A; 0,6 kg din B;
2 kg din C i 1,7 kg din D.
Nutreul M cost 10 u.m./kg, iar nutreul N cost 4 u.m./kg.
Ce cantiti de nutreuri M i N trebuie folosite pe zi i pe cap de animal
pentru a obine hrana cea mai ieftin?
Dac notm cantitile prescrise cu x
1
, x
2
, atunci putem formula matem-
atic scopul i restriciile problemei propuse spre rezolvare.
Avem:
_

_
f(x) = 10x
1
+ 4x
2
min
0, 1x
1
0, 4
0, 1x
2
0, 6
0, 1x
1
+ 0, 2x
2
2
0, 2x
1
+ 0, 1x
2
1, 7
(4.3)
Folosind algoritmul simplex se obine soluia optim x
1
= 4, x
2
= 9.
Valoarea optim a funciei de scop este f
min
= 76 u.m.
n continuare, s studiem problema care se pune unui concurent al vnz-
torului nutreurilor M i N.
Acest concurent vinde i elementele A, B, C, D. El tie c vnzrile lui
sunt egale cu cantitile prescrise pe zi i pe cap de animal i dorete s ae
cu ce pre unitar trebuie s vnd elementele pentru ca beneciul lui s e
maxim.
i
i
JATEK 2005/3/11 10:29 page 86 #86
i
i
i
i
i
i
86 4. Teoria dualitii
Cu aceste considerente, putem formula urmtoarea problem de opti-
mizare:
- beneciul poate descris matematic cu funcia:
g(y) = 0, 4y
1
+ 0, 6y
2
+ 2y
3
+ 1, 7y
4
max
- pentru formularea restriciilor, lum n considerare faptul c vnztorul nu
vinde cu preuri mai ridicate dect cele ale concurentului su.
Astfel putem scrie:
0, 1y
1
+ 0, 1y
3
+ 0, 2y
4
10
0, 1y
2
+ 0, 2y
3
+ 0, 1y
4
4
y
1
, y
2
, y
3
, y
4
0
(4.4)
Cu metodele prezentate n paragrafele anterioare soluia problemei este:
y
1
= 20, y
2
= 0, y
3
= 0, y
4
= 40 f
max
= 76
Observaie. Problemei (4.3) i corespunde problema (4.4) n care datele au
fost inversate. De aceast inversare este legat o proprietate foarte impor-
tant, i anume:
max g(y) = min f(x) = 76.
Proprietatea, dup cum se va arta n continuare, este general.
4.4 Teoreme de dualitate
Teoreme ale dualitii sunt acelea care arat c, ntre elementele cuplu-
lui dual, nu exist doar o legtur formal, ci i o puternic interdependen
a soluiilor acestora.
Fie problema de optimizare liniar cu restricii i duala sa:
(P)
_

_
f(x) =
n

j=1
c
j
x
j
min
n

j=1
a
ij
x
j
b
i
, i = 1, m
x
j
0 j = 1, n
(4.5)
(D)
_

_
g(v) =
m

i=1
b
i
v
i
max
m

i=1
a
ji
v
i
c
j
, j = 1, n
v
i
0 i = 1, m
(4.6)
i
i
JATEK 2005/3/11 10:29 page 87 #87
i
i
i
i
i
i
4.4. Teoreme de dualitate 87
Scriind matriceal avem:
(P)
_
_
_
f(x) = (x, c) min
Ax b
x 0
(D)
_
_
_
g(v) = (v, b) max
A
T
v c
v 0
Vom arta c problemele sunt legate prin proprietatea max g = minf.
Astfel cutarea optimului unei probleme poate nlocuit cu cutarea
optimului problemei duale.
Dualitatea este o noiune important att din punctul de vedere al con-
ceptelor economice, ct i din cel al metodelor de calcul (de obicei, dualul
are o semnicaie economic articial).
Pentru studiul dualitii problemelor de optimizare liniar cu restricii i
formularea teoremelor de dualitate considerm cuplul de probleme (P) - (D)
de mai sus.
Notm cu:
S = x R
n
: Ax = b, x 0
mulimea soluiilor admisibile problemei (P) i
S

= v R
m
: A
T
v c
mulimea soluiilor admisibile problemei (D).
Teorema 4.4.1. Pentru orice x S i orice v S

are loc: (v, b) (x, c)


(adic valoarea funciei de scop a dualei nu depete valoarea funciei de
scop a primalei).
Demonstraie.
x S Ax = b, x 0
v S

A
T
v c
(v, b) = (v, Ax) = (A
T
v, x) =
n

j=1
_
m

i=1
b
ij
v
i
_
x
j

c
j
x
j
= (x, c),
deoarece x
j
0, j B.
Teorema 4.4.2. Dac x
0
S, v
0
S

astfel nct (x
0
, c) = (v
0
, b)
atunci sunt adevrate armaiile:
(i) x
0
este soluie optim pentru (P);
(ii) v
0
este soluie optim pentru (D).
i
i
JATEK 2005/3/11 10:29 page 88 #88
i
i
i
i
i
i
88 4. Teoria dualitii
Demonstraie.
(i) pentru orice x S din teorema 4.4.1 (x, c) (v
0
, b)
ip
= (x
0
, c);
(ii) pentru orice v S

din teorema 4.4.1 (v, b) (x


0
, c)
ip
= (v
0
, b)
Pentru prima dat conceptul de dualitate a problemelor de optimizare
cu restricii a fost pus n eviden pentru probleme de optimizare liniar cu
res-tricii.
n 1961, P. Wolfe extinde teoria dualitii problemelor de optimizare
liniar la o clas mai general de probleme de optimizare (pentru probleme
de optimizare cu restricii cu funcii de scop difereniabile i cu restricii
difereniabile.)
n continuare, prezentm particularizarea acestor rezultate pentru modele
liniare cu restricii, iar demonstraia acestora ntr-un cadru general poate
consultat n [Bre].
Fie cuplul dual:
(P)
_
_
_
f(x) = (x, c) min
Ax b
x 0
i (D)
_
_
_
f

(v) = (v, b) max


A
T
v c
v de semn oarecare
S i S

este mulimea soluiilor posibile ale modelelor considerate.


Teorema 4.4.3. (Teorema de dualitate)
Dac una dintre problemele (P) sau (D) are soluie, atunci i cealalt are
o soluie i valorile optime ale funciilor de scop sunt egale.
Teorema de dualitate se datoreaz lui Neumann (1947) i Gale, Kuhn,
Tucker (1951) i este o consecin a teoremei fundamentale a inegalitilor
liniare (Farkas).
Teorema 4.4.4. Dac S ,= , atunci urmtoarele armaii sunt echivalente:
1. problema (P) are o soluie;
2. mulimea S

,= ;
3. funcia f este mrginit inferior pe S.
Teorema 4.4.5. Dac S

,= , atunci urmtoarele armaii sunt echivalente:


(i) problema (D) are o soluie;
(ii) mulimea S ,= ;
(iii) funcia f

este mrginit superior pe S

.
Urmtoarea teorem, cunoscut ca teorema ecarturilor comple-
mentare, formuleaz un criteriu pentru ca dou soluii posibile x
0
S
i v
0
S

s e soluii optime ale problemelor duale (P) i (D).


i
i
JATEK 2005/3/11 10:29 page 89 #89
i
i
i
i
i
i
4.4. Teoreme de dualitate 89
Teorema 4.4.6. Fie x
0
S i v
0
S

. Pentru ca x
0
s e o soluie a
problemei (P) i v
0
a problemei duale (D) este necesar i sucient ca:
(v
0
, Ax
0
b) = 0 i (c A
T
v
0
, x
0
) = 0
Demonstraie. "Necesitatea"
Presupunem c x
0
este soluia problemei (P)i v
0
este soluia problemei
(D), atunci rezult c f(x
0
) = f

(v
0
) f(x
0
) f

(v
0
) = 0.
Avem:
0 = (x
0
, c) (v
0
, b) = (x
0
, c) (v
0
, b) + (v
0
, Ax
0
)
(v
0
, Ax
0
) = (x
0
, c) (A
T
v
0
, x
0
) + (v
0
, Ax
0
) (v
0
, b) =
= (x
0
, c A
T
v
0
) + (v
0
, Ax
0
b)
deoarece (x
0
, A
T
v
0
) = (A
T
v
0
, x
0
).
Astfel am obinut:
(x
0
, c A
T
v
0
) + (v
0
, Ax
0
b) = 0 (4.7)
Dar:
x
0
S
v
0
S

(v
0
, Ax
0
b) 0
(c A
T
v
0
, x
0
) 0
(4.8)
Din relaiile (4.7) i (4.8) rezult c:
(x
0
, c A
T
v
0
) = 0 i (v
0
, Ax
0
b) = 0
"Suciena"
Presupunem c au loc relaiile:
(v
0
, Ax
0
b) = 0 i (c A
T
v
0
, x
0
) = 0
Putem scrie:
0 = (v
0
, Ax
0
b) + (c A
T
v
0
, x
0
) = (v
0
, Ax
0
)
(v
0
, b) + (c, x
0
) (A
T
v
0
, x
0
) = (c, x
0
) (v
0
, b)
Deci: (c, x
0
) = (v
0
, b) dar x
0
S i v
0
S

rezult c x
0
este soluia
problemei (P), v
0
este soluia optim al problemei (D).
Fie cuplul dual:
(P)
_
_
_
f(x) = (c, x) min
Ax = b
x 0
(D)
_
_
_
g(v) = (b, v) max
A
T
v c
v de semn oarecare
i
i
JATEK 2005/3/11 10:29 page 90 #90
i
i
i
i
i
i
90 4. Teoria dualitii
Deniia 4.4.1. O baz B a problemei (P) se numete baz dual admis-
ibil, dac d
i
0 pentru oricare i

B.
Denumirea de baz dual admisibil provine de la proprietatea exprimat
prin urmtoarea teorem.
Teorema 4.4.7. Dac B este o baz dual admisibil a problemei (P), atunci
soluia v
B
a sistemului de ecuaii denit n R
m
prin:
(A
j
, v) = c
j
, j B
este o soluie posibil a problemei duale.
Demonstraie. tiind c pentru orice i

B avem A
i
=

jB

ij
A
j
i baza
B este dual admisibil (B = A
1
. . . A
m
), putem scrie:
0 d
i
=

jB

ij
c
j
c
i
=

jB

ij
(A
j
, v) c
i
=
= (

jB

ij
A
j
, v) c
i
= (A
i
, v) c
i
. (4.9)
Deci pentru orice i

B avem (A
i
, v) c
i
0.
A rmas de artat c: A
T
v c.
Din relaia obinut i folosind proprietatea c v satisface sistemul de
ecuaii, putem scrie:
A
T
v = ((A
1
, v), (A
2
, v), . . . , (A
n
, v)) c
Observaie. n general soluia bazic x
B
asociat unei baze dual admisi-
bile B a problemei (P) nu este o soluie posibil a problemei (P) (deoarece
coordonatele pot strict negative).
Deci o baz dual admisibil nu este ntotdeauna i o baz primal admis-
ibil.
Teorema 4.4.8. Fie B o baz a problemei (P) care este primal i dual
admisi-bil. Urmtoarele armaii sunt adevrate:
(a) x
B
este soluia optim a problemei (P);
(b) v
B
este soluia optim a problemei (D);
(c) (x
B
, c) = d
0
= (v
B
, b).
Demonstraie.
B este o baz primal admisibil pentru problema (P) x
B
S.
B este o baz dual admisibil pentru problema (D) v
B
S

.
i
i
JATEK 2005/3/11 10:29 page 91 #91
i
i
i
i
i
i
4.5. Algoritmul simplex dual 91
Trebuie demonstrat c (v
B
, b) = (x
B
, c) i atunci pe baza teoremei 4.4.2
x
B
va soluie optim pentru (P), iar v
B
soluie optim pentru (D):
x
B
S (x
B
, c) =

jB

0j
c
j
not
= d
0
v
B
S

rezult c este soluia sistemului de ecuaii (A


j
, v
B
) = c
j
, j B.
Avem astfel:
(v
B
, b) = (v
B
,

jB

0j
A
j
) =

jB

0j
(v
B
, A
j
) =

jB

0j
c
j
= d
0
.
Deci am obinut:
(x
B
, c) = d
0
= (v
B
, b)
Pe baza teoremei de dualitate 4.4.2 rezult c x
B
este soluie optim pentru
(P), v
B
soluie optim pentru (D).
Deniia 4.4.2. Dac B este o baz primal i dual admisibil, atunci se
numete baz optim.
4.5 Algoritmul simplex dual
Fie urmtorul model de minimizare cu restricii:
_
_
_
f(x) = (c, x) min
Ax = b
x 0
(4.10)
A /
m,n
(R), b R
m
, c R
n
, f : R
n
R.
Folosind proprietatea de dualitate, se poate formula un algoritm pentru
rezolvarea modelelor liniare cu restricii, numit algoritmul simplex dual.
n continuare, prezentm etapele algoritmului.
1. s se determine o baz B dual admisibil a problemei (4.10);
2. s se calculeze numerele
0j
i numerele
ij
folosind relaiile (3.2) i
(3.3);
3. s se calculeze numrul d
0
i pentru orice i

B s se determine difer-
enele d
i
folosind relaiile (3.4) i (3.5);
4. s se studieze semnul numerelor
0j
, j B.
Se pot ivi dou situaii:
i
i
JATEK 2005/3/11 10:29 page 92 #92
i
i
i
i
i
i
92 4. Teoria dualitii
(a) dac pentru orice j B,
0j
0, atunci s se specice c punctul
x
B
= x
0
= (x
0
1
, . . . , x
0
n
) R
n
, x
0
j
=
_

0j
, j B
0 , j

B
este o soluie
optim a problemei (4.10), d
0
este valoarea minim a funciei de scop;
altfel
b) dac exist cel puin un j B,
0j
< 0, atunci s se formeze
mulimea B

= j B :
0j
< 0.
5. pentru orice j B

s se studieze semnul numerelor


ij
, i

B.
Se pot ivi dou situaii:
a) dac exist cel puin un j B

astfel nct pentru orice i



B

ij
0, atunci s se specice c problema (4.10) nu admite soluii
admisibile, deci nici soluie optim;
altfel
b) dac pentru orice j B

exist cel puin un indice i



B cu
ij
< 0
atunci continu algoritmul:
6. s se determine un indice k din B

(
0k
= min
0j
: j B

)
7. s se determine un indice h din

B astfel nct
hk
< 0 i
d
h

hk
= min
_
d
i

ik
, i =

B,
ik
< 0
_
.
8. s se nlocuiasc vectorul A
k
din baza B cu vectorul A
h
i cu baza B

astfel obinut s se revin la pasul 2.


Pentru aplicarea algoritmului, se folosec tabele asemntoare celor de la
algoritmul simplex primal, numite tabele simplex dual.
Completarea tabelului simplex dual
1 2
3 6 7 8 10
4 5 9
i
i
JATEK 2005/3/11 10:29 page 93 #93
i
i
i
i
i
i
4.5. Algoritmul simplex dual 93
Sectoarele 1 - 9 au acelai rol ca i n tabelele simplex primal i se com-
pleteaz n mod analog.
Sectorul 10 este altfel aezat, are o alt semnicaie.
n sectorul 10 vor scrise cturile
d
i

ik
pentru i

B pentru care
ik
< 0.
Folosind aceste rapoarte se va alege indicele h din etapa 7 a algoritmului.
La o iteraie de ordinul r putem scrie tabelul:
r . . . A
j
. . . A
k
. . .
. . . . . . . . . . . . . . . . . . . . . . . .
A
i
. . .
ij
. . .
ik
. . . d
i
p
i
d
i
/
ik
. . . . . .
A
h
. . .
hj
. . .
hk
. . . d
h
p
h
d
h
/
hk
. . . . . .
. . . x
B
j
. . . x
B
k
. . . d
0
p
0

Schimbarea bazei se realizeaz prin schimbarea unui vector din baz. La
algoritmul simplex dual, prima dat este ales vectorul care iese din baz i
dup aceea vectorul care intr n locul acestuia n baz.
Alegerea lui A
k
(k din pasul 6) se efectueaz prin alegerea coloanei pivot.
Alegerea vectorului A
h
(h din pasul 7) se realizeaz prin alegerea liniei
pivot.

hk
se numete element pivot.
Trecerea dintr-un tabel simplex dual n altul se realizeaz cu regula
prezentat la aplicarea algoritmului simplex primal.
Observaie. La algoritmul simplex primal pornim cu o baz B primal
admisi-bil i aplicm algoritmul pn cnd baza devine dual admisibil (ev-
ident n cazul n care problema admite optim nit).
Valoarea funciei de scop descrete dup ecare iteraie.
n algoritmul simplex dual, pornim cu o baz B dual admisibil i conti-
num algoritmul pn cnd baza devine primal admisibil. Valoarea funciei
de scop crete la ecare iteraie (dei avem model de minimizare), deoarece
pe parcurs se lucreaz cu soluii asociate bazei dual admisibile care nu sunt
soluii posibile.
Problem rezolvat
S se rezolve problema urmtoare cu algoritmul simplex dual:
i
i
JATEK 2005/3/11 10:29 page 94 #94
i
i
i
i
i
i
94 4. Teoria dualitii
_

_
f(x) = x
1
+ 2x
2
+ 3x
3
min
x
1
x
2
+x
3
= 7
3x
1
+x
3
x
4
= 10
x
1
+ 2x
3
x
5
= 15
x
j
0, j = 1, 5
Matricea restriciilor este:
A
1
A
2
A
3
A
4
A
5
A =
_
_
1 1 1 0 0
3 0 1 1 0
1 0 2 0 1
_
_
b =
_
_
7
10
15
_
_
Dac n modelul considerat matricea restriciilor se include o matrice uni-
tate de ordinul m, dar nu toate componentele vectorului b sunt pozitive, atunci
n general baza canonic este baz dual admisibil.
n acest caz este mult mai ecient algoritmul simplex dual, deoarece nu
se ncarc modelul cu variabile articiale. Pe de alt parte, dac exist optim
nit, atunci se va obine n urma rezolvrii unei singure probleme (cu metoda
celor dou faze, se vor rezolva dou probleme).
nmulind restriciile cu 1 se observ imediat c sistemul de vectori
(A
2
, A
4
, A
5
) este o baz canonic, iar din primul tabel se deduce dac este
dual admisibil pentru acest model.
Avnd vectorul c = (1, 2, 3, 0, 0) , se obine tabelul:
1 A
2
A
4
A
5

A
1
-1 -3 -1 -3 9 3
A
3
-1 -1 -2 -5 10 5/2
-7 -10 -15 -14 47
n sectorul 7 toate diferenele d
i
, i 1, 3 sunt negative, prin urmare
baza este dual admisibil i se poate aplica algoritmul simplex dual:
2 A
2
A
4
A
3

A
1
-1/2 -5/2 1/2 -1/2 4 1/5
A
5
-1/2 -1/2 -1/2 -5/2 5 5
1/2 -5/2 15/2 47/2 -28
3 A
2
A
1
A
3

A
4
-1/5 -2/5 1/5 -1/5 8/5
A
5
-2/5 1/5 -3/5 -12/5 21/5
1 1 7 24 -32
i
i
JATEK 2005/3/11 10:29 page 95 #95
i
i
i
i
i
i
4.6. Bazele teoretice ale algoritmului simplex dual 95
Soluia optim a problemei este:
x
0
= (1 1 7 0 0) d
0
= 24 = f
min
.
4.6 Bazele teoretice ale algoritmului simplex dual
Teorema 4.6.1. (criteriul de intrare n baz)
Fie un model de programare liniar i o baz B creia i corespunde o
soluie dual admisibil x
B
. Fie de asemenea o baz B

care difer de baza B


printr-un singur vector i soluia corespunztoare acestei baze este x
B

.
Fiind xat vectorul A
k
ce a ieit din baza B, soluia x
B

este dual admis-


ibil, dac i numai dac n locul su a intrat un vector A
h
corespunztor
cruia avem:
d
h

hk
= min
_
d
i

ik
,
ik
< 0, i

B
_
Demonstraie. Considerm modelul de maximizare:
_
_
_
f(x) = (c, x) max
Ax = b
x 0
Fr restrngerea generalitii, se consider:
B = A
1
, A
2
, . . . , A
m
. Se presupune c soluia obinut prin schimbarea
bazei notat cu x
B

este o soluie dual admisibil adic d

i
0 pentru orice
i = 1, n.
n continuare, se vor calcula aceste diferene.
I. Prima dat se ia cazul cnd i = k.
i
i
JATEK 2005/3/11 10:29 page 96 #96
i
i
i
i
i
i
96 4. Teoria dualitii
Putem scrie:
d

k
= c
k

m

j=1
j=h

kj
c
j

kh
c
h
=
= c
k

m

j=1
j=h(hk)
_

hj

hk
_
c
j

1

hk
c
h
=
= c
k
+
m

j=1
j=h

hj

hk
c
j

1

hk
c
h
=
= c
k
+
1

hk
_

_
m

j=1
j=h

hj
c
j
c
h
_

_
=
= c
k
+
1

hk
_
_
m

j=1

hj
c
j
c
h

hk
c
k
_
_
= c
k
c
k

d
h

hk
Avem deci: d

k
=
d
h

hk
.
Dar tiind c d
h
0 (deoarece B este baz dual admisibil,) iar din
ipotez avem d

k
0, rezult c trebuie s avem
hk
< 0.
Observaie. n demonstraie s-au folosit formulele de schimbare a vari-
abilelor (vezi algoritmul simplex primal)pe baza crora avem:

kh
=
1

hk

kj
j=h
=

hj

hk
II. S considerm, n continuare, cazul i ,= k i se calculeaz diferenele
d

i
.
i
i
JATEK 2005/3/11 10:29 page 97 #97
i
i
i
i
i
i
4.6. Bazele teoretice ale algoritmului simplex dual 97
d

i
= c
i

m

j=1
j=h

ij
c
j

ih
c
h
=
= c
i

m

j=1
j=k(hk)
_

ij


hj

ik

hk
_
c
j


ik

hk
c
h
=
= c
i

m

j=1
j=k

ij
c
j
+
m

j=1
j=k

hj

ik

hk
c
j


ik

hk
c
h
=
= c
i

m

j=1

ij
c
j
+
ik
c
k
+

ik

hk
_

_
m

j=1
j=k

hj
c
j
c
h
_

_
=
= d
i
+
ik
c
k
+

ik

hk
_
_
m

j=1

hj
c
j
c
h

hk
c
k
_
_
=
= d
i
+
ik
c
k


ik

hk
d
h

ik
c
k
Deci avem:
d

i
= d
i


ik

hk
d
h
=
d
i

hk

ik
d
h

hk
Pentru ca baza x
B

s e dual admisibil este necesar ca:


d

i
=
d
i

hk

ik
d
h

hk
0
pentru orice i ,= k.
De aici, folosind faptul c
hk
< 0, putem scrie:
d
i

hk

ik
d
h
0
d
i

hk

ik
d
h
/ :
hk
< 0
d
i

ik
d
h

hk
/ :
ik
< 0
d
i

ik

d
h

hk
Relaia obinut avnd loc pentru orice i rezult c:
d
h

hk
= min
_
d
i

ik
,
ik
< 0
_
numit criteriul de intrare n baz.
i
i
JATEK 2005/3/11 10:29 page 98 #98
i
i
i
i
i
i
98 4. Teoria dualitii
Teorema 4.6.2. (criteriul de ieire din baz) Fie un model de progra-
mare liniar i dou baze B i B

care difer printr-un singur vector. Fie x


B
,
respectiv x
B

soluiile corespunztoare acestor baze dual admisibile. Soluia


x
B

este mai bun dect soluia x


B
dac i numai dac baza B

a fost obin-
ut din baza B prin nlocuirea unui vector A
k
cruia i corespunde (n soluia
x
B
) o component
0k
strict negativ.
Demonstraie. Se consider acelai model de maximizare. Se calculeaz va-
loarea funciei de scop pentru soluia x
B

.
f(x
B

) =
m

j=1
j=h
c
j
y
j
+c
h
y
h
=
m

j=1
j=k
c
j
_
x
j

x
k

hk

hj
_
+c
h
x
k

hk
=
=
m

j=1
c
j
_
x
j

x
k

hk

hj
_
c
k
_
x
k

x
k

hk

hk
_
+c
h
x
k

hk
=
=
m

j=1
c
j
x
j

x
k

hk
m

j=1

hj
c
j
+c
h
x
k

hk
=
= f(x
B
) +
x
k

hk
_
_
c
h

m

j=1

hj
c
j
_
_
= f(x
B
) +
x
k

hk
d
h
(4.11)
Soluia dual admisibil x
B

este mai bun dect soluia x


B
, dac i numai
dac f(x
B

) f(x
B
).
Folosind relaia (8.4), putem scrie:
f(x
B

) f(x
B
) =
x
k

hk
d
h
0
d
h
0 deoarece B este baz dual admisibil i
hk
< 0 (vezi demonstraia
teoremei anterioare). Astfel condiia este vericat numai n cazul n care
x
k
< 0 i astfel teorema este demonstrat.
Observaie. Pentru a asigura o variaie ct mai mare valorii funciei de
ecien se recomand, pentru eliminarea din baz a vectorului A
k
, alegerea
pentru care i corespunde o component x
k
=
0k
negativ cea mai mare n
valoare absolut.
Teorema 4.6.3. Fie un model de programare liniar i considernd o soluie
de baz dual admisibil x
B
corespunztoate unei baze B.
Dac exist cel puin o component x
B
j
< 0 a acestei soluii astfel nct

ij
0 pentru orice j = 1, n, atunci modelul nu are soluii posibile.
Observaie. Cea mai important aplicaie a algoritmului simplex dual este
cea legat de rezolvarea modelelor cnd apar modicri ale datelor de intrare.
i
i
JATEK 2005/3/11 10:29 page 99 #99
i
i
i
i
i
i
4.7. Citirea soluiilor problemei duale 99
4.7 Determinarea soluiilor problemei duale cu aju-
torul ultimului tabel simplex al problemei pri-
male
Fie modelul de optimizare liniar n forma standard:
(P)
_
_
_
f(x) = (x, c) min
Ax = b
x 0.
(4.12)
Scriem matricea restriciilor, transpusa acestei matrici i formulm duala
pro-blemei considerate:
A =
_
_
_
a
11
. . . a
1n
.
.
.
a
m1
. . . a
mn
_
_
_
A
T
=
_
_
_
a
11
. . . a
m1
.
.
.
a
1n
. . . a
mn
_
_
_
(D)
_

_
g(v) = (v, b) max
m

i=1
a
ji
v
i
c
j
j = 1, n
v
i
de semn oarecare i = 1, m
Se presupune c problema primal admite optim nit.
Teorema 4.7.1. Dac B este baza optim a problemei (P), atunci soluia
v
B
a sistemului de ecuaii denit n R
m
prin:
(A
j
, v
B
) = c
j
j B (4.13)
este soluia optim a problemei duale.
Demonstraie. Baza B ind optim, rezult c x
B
este soluia optim a pro-
blemei primale i v
B
S

(teorema 4.4.7).
Putem scrie:
(x
B
, c) =

jB
c
j
x
B
j
=

jB
(A
j
, v
B
)x
B
j
=

jB
(x
B
j
A
j
, v
B
) = (b, v
B
)
Deoarece optimele funciilor de scop sunt egale, rezult c v
B
este soluia
optim a problemei duale.
Deci, dup rezolvarea problemei primale, dac construim sistemul liniar
de ecuaii precizat n teorema de mai sus, atunci putem calcula soluiile
problemei duale.
i
i
JATEK 2005/3/11 10:29 page 100 #100
i
i
i
i
i
i
100 4. Teoria dualitii
n continuare, vom presupune c matricea A conine o matrice unitate de
ordin m i vom arta c soluiile problemei duale, n acest caz, pot citite
direct din ultimul tabel simplex al problemei primale.
Notm cu:
A
k
i
= e
i
, i = 1, m (e
i
R
m
componentele bazei canonice (e
1
, . . . , e
m
))
din R
m
.
Fie B
c
= (A
k
1
. . . A
k
m
) baza canonic cu care ncepem aplicarea algorit-
mului simplex.
Notm cu
B
o
= A
j
1
, . . . , A
j
m

baza optim obinut n urma rezolvrii problemei primale.


Astfel pe baza teoremei 4.7.1 putem scrie:
(A
j
, v
B
) = c
j
, j B
o

_

_
(A
j
1
, v
B
) = c
j1
(A
j
2
, v
B
) = c
j2
. . . . . . . . .
(A
j
m
, v
B
) = c
jm
Scriind explicit produsul scalar euclidean, obinem urmtorul sistem liniar
de ecuaii:
_

_
a
1j
1
v
B
1
+a
2j
1
v
B
2
+ +a
mj
1
v
B
m
= c
j1
a
1j
2
v
B
1
+a
2j
2
v
B
2
+ +a
mj
2
v
B
m
= c
j2
. . . . . . . . .
a
1j
m
v
B
1
+a
2j
m
v
B
2
+ +a
mj
m
v
B
m
= c
jm
n forma matriceal se poate scrie:
(v
B
1
, . . . , v
B
m
)A
B
= (c
j
1
, . . . , c
j
m
)
unde s-a folosit notaia:
A
B
=
_
_
_
a
1j
1
. . . a
1j
m
.
.
.
a
mj
1
. . . a
mj
m
_
_
_
Deoarece matricea A
B
este inversabil, soluia problemei duale va :
(v
B
1
, . . . , v
B
m
) = (c
j
1
, . . . , c
j
m
)A
1
B
n continuare, se determin matricea invers A
1
B
.
i
i
JATEK 2005/3/11 10:29 page 101 #101
i
i
i
i
i
i
4.7. Citirea soluiilor problemei duale 101
tiind c orice vector (coloan din matricea A) care nu intr n formarea
bazei, notat cu A
i
, i

B, poate scris n mod unic ca o combinaie liniar
a bazei B, se poate scrie:
A
i
=

jB

ij
A
j
, i = 1, m (i

B)
Dac vectorul A
k
i
din baza canonic cu care s-a nceput aplicarea algo-
ritmului simplex nu este n baza optim, atunci, evident, se pot determina
coordonatele acestuia n aceast baz.
Deoarece A
k
i
= e
i
, n cazul n care acest vector nu este n baza optim,
putem scrie:
e
i
=

jB

k
i
j
A
j
i = 1, m
_

_
e
1
=
k
1
j
1
A
j
1
+
k
1
j
2
A
j
2
+ +
k
1
j
m
A
j
m
e
2
=
k
2
j
1
A
j
1
+
k
2
j
2
A
j
2
+ +
k
2
j
m
A
j
m
. . . . . . . . .
e
m
=
k
m
j
1
A
j
1
+
k
m
j
2
A
j
2
+ +
k
m
j
m
A
j
m
Matriceal scriind avem:
_
_
_
1 0 . . . 0
.
.
.
0 0 . . . 1
_
_
_
= (A
j
1
. . . A
j
m
)
_
_
_

k
1
j
1
. . .
k
m
j
1
.
.
.

k
1
j
m
. . .
k
m
j
m
_
_
_
de unde evident:
A
1
B
=
_
_
_

k
1
j
1
. . .
k
m
j
1
.
.
.

k
1
j
m
. . .
k
m
j
m
_
_
_
.
Deci soluiile problemei duale se obin din relaia:
v
B
i
=

jB

k
i
j
c
j
, i = 1, m.
n concluzie:
dac pentru un indice i 1, . . . , m avem k
i
B, ceea ce
nseamn

k
i
j
=
_
0, dac j ,= k
i
1, dac j = k
i
atunci v
B
i
= c
k
i
;
altfel
dac k
i
, B,
i
i
JATEK 2005/3/11 10:29 page 102 #102
i
i
i
i
i
i
102 4. Teoria dualitii
atunci v
B
i
= c
k
i
+d
k
i
.
n consecin, coordonatele vectorului v
B
sunt date cu valorile:
v
B
i
=
_
c
k
i
, k
i
B
c
k
i
+d
k
i
, k
i
, B
care pot citite din ultimul tabel simplex.
n continuare, se prezint un exemplu numeric.
Problem rezolvat
S se formuleze duala problemei considerate i s se determine soluiile
pro-blemei duale!
(P)
_

_
f(x) = x
1
x
2
3x
3
+ 5x
4
min
x
1
+x
2
+x
3
+x
4
= 1
x
1
2x
2
+ 3x
3
+x
5
= 2
x
1
x
2
+x
6
= 3
x
j
0, j = 1, 6
Se scrie matricea restriciilor problemei primale:
A
1
A
2
A
3
A
4
A
5
A
6
A =
_
_
1 1 1 1 0 0
1 2 3 0 1 0
1 1 0 0 0 1
_
_
Deoarece primala are trei restricii, duala va avea trei variabile, pe care le
vom nota cu v
1
, v
2
, v
3
. Cu ajutorul matricei A
T
putem scrie problema dual.
(D)
_

_
g(v) = v
1
+ 2v
2
+ 3v
3
max
v
1
+v
2
+v
3
1
v
1
2v
2
v
3
1
v
1
+ 3v
2
3
v
1
5
v
2
0
v
3
0
v
1
, v
2
, v
3
de semn oarecare
Cum problema primal este n forma standard de lucru, se alege baza
canonic B
c
= (A
4
, A
5
, A
6
) care este baz primal admisibil i se aplic
metoda simplex primal:
i
i
JATEK 2005/3/11 10:29 page 103 #103
i
i
i
i
i
i
4.7. Citirea soluiilor problemei duale 103
1 A
4
A
5
A
6

A
1
-1 1 1 -6 6
A
2
1 -2 -1 6 -3
A
3
1 3 0 8 -11
1 2 3 5 -10
1 2/3 -
2 A
4
A
3
A
6

A
1
-4/3 1/3 1 -26/3 29/3
A
2
5/3 -2/3 -1 34/3 -31/3
A
5
-1/3 1/3 0 -8/3 11/3
1/3 2/3 3 -1/3 -8/3
1/5 - -
3 A
2
A
3
A
6

A
1
-4/5 -1/5 1/5 2/5 7/5
A
4
3/5 2/5 3/5 -34/5 31/5
A
5
-1/5 1/5 -1/5 -2/5 8/5
1/5 4/5 16/5 -13/5 -3/5
- - 16
4 A
2
A
3
A
1

A
6
4 1 5 -2 -7
A
4
3 1 3 -8 2
A
5
-1 0 -1 0 3
13 4 16 -9 -23
- - -
Soluia optim a problemei primale este x
0
= (16 13 4 0 0 0) :
_
B
c
= (A
4
A
5
A
6
)
B
0
= (A
2
A
3
A
1
)
n continuare, se determin soluiile optime ale problemei duale, folosind
relaia:
v
0
i
=
_
c
k
i
, k
i
B
c
k
i
+d
k
i
, k
i
, B
i
i
JATEK 2005/3/11 10:29 page 104 #104
i
i
i
i
i
i
104 4. Teoria dualitii
Conform relaiei date, putem scrie:
v
0
1
e
1
= A
4
, B
o
v
0
2
e
2
= A
5
, B
o
v
0
3
e
3
= A
6
, B
o
v
0
1
= c
4
+d
4
= 5 8 = 3
v
0
2
= c
5
+d
5
= 0 + 0 = 0
v
0
3
= c
6
+d
6
= 0 2 = 2
Deci v
0
= (3 0 2) i g
max
= 3 + 2 0 + 3 (2) = 9 = d
0
= f
min
.
4.8 Legtura dintre soluiile unui cuplu dual
Conform teoremei fundamentale a dualitii (Teorema 4.4.3), dac un
element al cuplului dual are optim nit, atunci i cellalt model admite soluie
optim, iar valorile optime ale funciilor de scop coincid.
Dup cum s-a vzut n paragraful anterior 4.7, soluiile problemei duale
pot citite din ultimul tabel de iteraie al problemei primale.
Privind citirea soluiilor problemei duale, exist i un alt aspect al prob-
lemei despre care teorema nu prezint suciente informaii, i anume:
"Cum deducem din informaiile pe care ni le d tabelul simplex al dualei
c primala, respectiv duala, admite optim multiplu i cum le putem deter-
mina?"
Teorema 4.8.1. Dac duala unei probleme de programare liniar are optim
nit i numrul componentelor nule ale soluiei optime (variabile propriu-
zise plus variabile auxiliare) este egal cu numrul variabilelor propriu-zise
ale dualei, atunci primala are optim unic.
Teorema 4.8.2. Dac duala unei probleme de programare liniar are optim
nit i numrul componentelor nule ale soluiei optime (variabile propriu-zise
plus variabile auxiliare) este mai mare dect numrul variabilelor propriu-zise
ale dualei, atunci primala are optim multiplu.
Problem rezolvat:
1. S se determine soluiile cuplului dual de mai jos:
i
i
JATEK 2005/3/11 10:29 page 105 #105
i
i
i
i
i
i
4.8. Legtura dintre soluiile unui cuplu dual 105
(P)
_

_
f(x) = 3x
1
+ 2x
2
min
3x
1
+ 2x
2
6
x
1
x
2
5
x
1
x
2
4
x
1
+x
2
3
x
1
0, x
2
0
(D)
_

_
g(v) = 6v
1
5v
2
4v
3
3v
4
max
3v
1
v
2
+v
3
v
4
3
2v
1
v
2
v
3
+v
4
2
v
1
0, v
2
0, v
3
0, v
4
0
Se rezolv problema (D). Introducnd variabile auxiliare, problema ind
n forma standard de lucru, se va aplica metoda simplex primal.
Matricea restriciilor este:
v
1
v
2
v
3
v
4
y
1
y
2
_
3 1 1 1 1 0
2 1 1 1 0 1
_
B = (y
1
, y
2
)
Se noteaz variabilele auxiliare cu y
1
, y
2
pentru a le deosebi de variabilele
propriu-zise:
1 y
1
y
2

v
1
3 2 6 -10
v
2
-1 -1 -5 8
v
3
1 -1 -4 5
v
4
-1 1 -3 4
3 2 0 -4
1 1
2 v
1
y
2

y
1
1/3 -2/3 -2 10/3
v
2
-1/3 -1/3 -3 14/3
v
3
1/3 -5/3 -6 25/3
v
4
-1/3 5/3 -1 2/3
1 0 -6 6

Soluia optim este v
0
= (1 0 0 0 0 0).
n soluia optim obinut exist cinci valori nule, dar n problema (D)
sunt patru variabile propriu-zise, rezult c problema (P) are optim multiplu.
Cum determinm mulimea soluiilor optime ale problemei (P)?
Putem scrie:
i
i
JATEK 2005/3/11 10:29 page 106 #106
i
i
i
i
i
i
106 4. Teoria dualitii
(P)
_

_
f(x) = 3x
1
+ 2x
2
min
3x
1
+ 2x
2
6
x
1
x
2
5
x
1
x
2
4
x
1
+x
2
3
x
1
0, x
2
0
(D)
_

_
g(v) = 6v
1
5v
2
4v
3
3v
4
max
3v
1
v
2
+v
3
v
4
3
2v
1
v
2
v
3
+v
4
2
v
j
0, j = 1, 4
Cu substituia t
1
= x
1
i t
2
= x
2
se obine (P

) din modelul (P)!


(P

)
_

_
f

(t) = 3t
1
+ 2t
2
max
3t
1
+ 2t
2
6
t
1
t
2
5
t
1
t
2
4
t
1
+t
2
3
t
1
0, t
2
0
(D

)
_

_
g

(z) = 6z
1
+ 5z
2
+ 4z
3
+ 3z
4
min
3z
1
z
2
+z
3
z
4
3
2z
1
z
2
z
3
+z
4
2
z
j
0, j = 1, 4
Dac se studiaz cu atenie aceste cupluri de probleme, se observ imediat
c problema (D)

s-a rezolvat mai sus.


Din ultimul tabel al problemei rezolvate obinem o soluie optim a prob-
lemei (P)

. Folosind metoda de citire a soluiilor dualei din ultimul tabel


simplex al problemei rezolvate, putem scrie:
t
0
1
e
1
= A
k
1
= y
1
, B
o
t
0
1
= d
k
1
+c
k
1
= 2
t
0
2
e
2
= A
k
2
= y
2
B
o
t
0
2
= 0
Deci soluia optim a problemei (P)

este t
01
= (2, 0), iar soluia prob-
lemei (P) va x
01
= (2, 0).
Acum se revine n primul tabel simplex unde, n sectorul 10, sunt dou
rapoarte minime egale.
Dac se va rezolva problema (D)

astfel nct vectorul y


2
este ales ca
vector care iese din baz, atunci se va obine:
2 y
1
v
1

y
2
-3/2 1/2 -3 5
v
2
1/2 -1/2 -2 3
v
3
5/2 -1/2 -1 0
v
4
-5/2 1/2 -6 9
0 1 -6 6

i
i
JATEK 2005/3/11 10:29 page 107 #107
i
i
i
i
i
i
4.8. Legtura dintre soluiile unui cuplu dual 107
Din acest tabel, se obine o alt soluie optim pentru problema (P)

:
t
0
1
e
1
= A
k
1
= y
1
B
o
t
0
1
= 0
t
0
2
e
2
= A
k
2
= y
2
, B
o
t
0
2
= c
k
2
+d
k
2
= 3
Deci soluia optim a problemei (P)

n acest caz este t


02
= (0, 3). Astfel
soluia problemei (P) va x
02
= (0, 3).
Acum se poate scrie mulimea soluiilor optime ale problemei (P).
Deoarece am obinut dou soluii optime, rezult c problema (P) admite
o innitate de soluii optime. Mulimea soluiilor optime este combinaia
convex a soluiilor obinute, adic:
x
0
= x
01
+ (1 )x
02
, [0, 1]
x
0
= (2 0) + (1 )(0 3) = (2 3(1 )), [0, 1].
2. Fie urmtorul cuplu dual:
(P)
_

_
f(x) = 12x
1
+ 8x
2
min
2x
1
+x
2
1
x
1
+ 2x
2
2
3x
1
+ 2x
2
4
x
1
+x
2
3
x
1
, x
2
0
(D)
_

_
g(y) = y
1
+ 2y
2
+ 4y
3
+ 3y
4
max
2y
1
+y
2
+ 3y
3
+y
4
12
y
1
+ 2y
2
+ 2y
3
+y
4
8
y
j
0, j = 1, 4
Rezolvnd problema (D), se poate observa c numrul componentelor
nule ale dualei coincide cu numrul variabilelor din problema dual, adic
este 4. De aici rezult c (P) va avea optim unic.
3. Putem avea cupluri de probleme duale pentru care:
1. un element al cuplului admite optim multiplu, iar cellalt are optim
unic;
2. ambele modele admit optim multiplu.
De exemplu, modelele:
_

_
f(x) = 2x
1
+ 2x
2
min
x
1
+x
2
2
x
1
x
2
2
x
1
, x
2
0
_

_
g(y) = 2y
1
2y
2
max
y
1
y
2
2
y
1
+y
2
2
y
1
, y
2
0
admit optim multiplu.
Practic, ne intereseaz dac primala are optim nit, unic sau multiplu.
i
i
JATEK 2005/3/11 10:29 page 108 #108
i
i
i
i
i
i
108 4. Teoria dualitii
Observaie. Cu aplicarea algoritmului simplex dual, dac este posibil,
obinem n mai puine iteraii soluia optim.
Dac considerm modelul:
_

_
x
1
+ 2x
2
+ 3x
3
+x
4
3x
5
+x
6
+ 2x
7
min
x
1
x
4
+x
5
2x
6
x
7
= 6
x
2
2x
4
2x
5
+ 2x
6
+x
7
= 8
x
3
+x
4
x
5
x
6
2x
7
= 2
x
j
0, j = 1, 7
atunci se poate verica prin calcul direct c, dup o iteraie cu algoritmul
simplex dual, se obine soluia optim a problemei, iar cu algoritmul simplex
primal sunt necesare 3 iteraii.
i
i
JATEK 2005/3/11 10:29 page 109 #109
i
i
i
i
i
i
Capitolul 5
Reoptimizare
Practica pune n faa matematicii situaia instabilitii variantei optime
obinute pentru un anumit model liniar la un moment dat ca urmare a unui
ntreg ansamblu de factori economici, politici, sociali etc., care pot inuena
elementele modelului, conducnd n spe la modicri ale acestora i implicit
la modicarea modelului.
Aceste inuene se pot materializa prin:
- modicri ale termenului liber;
- modicri ale coecientului funciei obiectiv;
- modicri ale coloanelor matricei coecienilor;
- modicri ale liniilor matricei coecienilor;
- modicri ale numrului de restriii ale problemei;
- modicri ale numrului de variabile ale problemei.
Aceste modicri atrag dup sine, n mod evident, rezolvarea unei probleme
noi de programare liniar.
Se pune ntrebarea: Nu se poate rezolva problema modicat prin
folosirea rezultatelor obinute n urma rezolvrii problemei iniiale?
Rspunsul este armativ i, pentru ecare caz n parte, au fost formulate
diferite metode de rezolvare.
109
i
i
JATEK 2005/3/11 10:29 page 110 #110
i
i
i
i
i
i
110 5. Reoptimizare
5.1 Reoptimizarea n urma modicrii termenului
liber
Considerm urmtoarele modele liniare:
_

_
f(x) = (c, x) min/ max
Ax = b
x 0
(5.1)
i:
_

_
f(x) = (c, x) min/ max
Ax = b

x 0
(5.2)
unde f : R
n
R, A /
m,n
(R), b R
m
, c R
n
astfel nct:
b

= b + b, adic modelul (5.2) se obine din modelul (5.1) n urma


modicrii vectorului b.
Se presupune, n continuare, c modelul (5.1) admite soluie optim i
se determin soluia optim a problemei (5.2) pornind de la ultimul tabel
simplex al problemei rezolvate (5.1).
n urma rezolvrii problemei (5.1) cu una din metodele numerice cunos-
cute, ultimul tabel simplex va :
ult. A
j
1
. . . A
j
m

A
i

ij
1
. . .
ij
m
d
0
p
0

0j
1
. . .
0j
m
d
i
p
i

unde sistemul de vectori din sectorul 2, B


0
= (A
j
1
. . . A
j
m
) este baza optim.
Teorema 5.1.1. Sistemul de vectori B = (A
j
1
. . . A
j
m
) este baz dual ad-
misibil pentru problema (5.2).
Demonstraie. B este baz, deoarece este chiar B
0
i evident avem B B
0
,
respectiv B B
0
. Primul tabel simplex al problemei va arta astfel:
1. A
j
1
. . . A
j
m

A
i

ij
1
. . .

ij
m
d

i
p

0j
1
. . .

0j
m
d

0
p

0

i
i
JATEK 2005/3/11 10:29 page 111 #111
i
i
i
i
i
i
5.1. Reoptimizarea n urma modicrii termenului liber 111
Deoarece orice vector poate scris n mod unic ca o combinaie liniar a
bazei, avem:

ij
=
ij
pentru orice i B i j B.
De asemenea d

i
= d
i
0, p

i
= p
i
pentru orice i B, ceea ce nseamn
c sistemul de vectori B este baz dual admisibil.
n continuare, se determin coordonatele vectorului b

n baza B, notate
n tabel cu (

0j
1
. . .

0j
m
).
Folosind relaia cunoscut:
b =

jB

0j
A
j
putem scrie:
b

=
m

k=1

0j
k
A
j
k

(b

1
. . . b

m
) =

0j
1
A
j
1
+ +

0j
m
A
j
m
Cu notaia:
A
j
1
. . . A
j
m
A
B
=
_
_
_
a
1j
1
. . . a
1j
m
.
.
.
.
.
.
a
mj
1
. . . a
mj
m
_
_
_
putem scrie:
(b

1
. . . b

m
) = (

0j
1
. . .

0j
m
)
_
_
_
a
1j
1
. . . a
1j
m
.
.
.
.
.
.
a
mj
1
. . . a
mj
m
_
_
_

(b

1
. . . b

m
) = (

0j
1
. . .

0j
m
) A
B
De unde obinem:
(

0j
1
. . .

0j
m
) = (b

1
. . . b

m
) A
1
B
.
Matricea A
1
B
este n sectorul 6 al ultimului tabel simplex al problemei re-
zolvate.
n urma reoptimizrii, pot aprea urmtoarele situaii:
(a) baza B dual admisibil este i primal admisibil pentru problema (5.2),
deci avem

0j
k
0, pentru orice k = 1, m.
n acest caz, soluia optim a problemei (5.1) este optim i pentru
pro-blema (5.2).
(b) Dac exist cel puin un k 1, . . . , m pentru care

0j
k
< 0, atunci
aplicm simplex dual pentru problema (5.2).
i
i
JATEK 2005/3/11 10:29 page 112 #112
i
i
i
i
i
i
112 5. Reoptimizare
Problem rezolvat
Fie problema de optimizare liniar:
_

_
f(x) = x
1
+x
2
min
6x
1
+x
2
1
2x
1
7x
2
1
x R
2
+
(5.3)
a crei soluie optim este x
0
= (6/44, 8/44), iar valoarea optim a funciei
de scop este f
min
= 14/44.
Problema se rezolv cu algoritmul simplex dual. Forma standard a prob-
lemei considerate este:
_

_
f(x) = x
1
+x
2
min
6x
1
x
2
+x
3
= 1
2x
1
7x
2
+x
4
= 1
x R
4
+
(5.4)
Ultimul tabel simplex dual va :
3. A
1
A
2

A
3
-7/44 -2/44 -9/44 62/44
A
4
1/44 -6/44 -5/44 54/44
6/44 8/44 14/44 16/44
x
0
= (6/44 8/44) i f
min
= 14/44.
n continuare, ne intereseaz soluia optim (evident dac exist) a proble-
mei:
_

_
f(x) = x
1
+x
2
min
6x
1
x
2
+x
3
= 2
2x
1
7x
2
+x
4
= 1
x R
4
+
i valoarea optim a funciei de scop.
Acest model se obine din (5.4) n urma modicrii termenului liber:
b

=
_
2
1
_
b

= b + b, b =
_
3
2
_
.
Scriind matricea restriciilor:
A
1
A
2
A
3
A
4
A =
_
6 1 1 0
2 7 0 1
_
i
i
JATEK 2005/3/11 10:29 page 113 #113
i
i
i
i
i
i
5.1. Reoptimizarea n urma modicrii termenului liber 113
pe baza teoremei 5.1.1 se poate arma c B = (A
1
A
2
) este baz dual
admisibil.
Putem scrie:
1 A
1
A
2

A
3
-7/44 -2/44 -9/44
A
4
1/44 -6/44 -5/44

01

02
d

0

A
1
B
=
_
7/44 2/44
1/44 6/44
_
(

01

02
) = (2 1)
_
7/44 2/44
1/44 6/44
_
(

01

02
) =
_
13/44 10/44
_
d

0
= 23/44.
Vom obine pe rnd urmtoarele tabele simplex dual:
1 A
1
A
2

A
3
-7/44 -2/44 -9/44 62/44 9/2
A
4
1/44 -6/44 -5/44 54/44 5/6
-13/44 -10/44 -23/44 90/44
2 A
1
A
4

A
3
-1/6 1/3 -1/6 1 1
A
2
1/6 -44/6 -5/6 54/6 -
-2/6 10/6 -2/6 0
3 A
3
A
4

A
1
-6 2 -1 6
A
2
-1 -7 -1 10
2 1 0 -2
Soluia optim este x
0
= (0 0 2 1), iar f
min
= 0 este valoarea optim a
funciei de scop.
Observaie. Problema (5.2), n urma modicrii termenului liber, este n
forma standard de lucru.
Dac problema (5.2), fr aplicarea reoptimizrii, se va rezolva cu al-
goritmul simplex primal, atunci vom avea ca primul tabel simplex primal,
chiar ultimul tabel obinut n urma reoptimizrii. Adic baza (A
3
A
4
) primal
admisi-bil este i dual admisibil i se obine soluia optim.
i
i
JATEK 2005/3/11 10:29 page 114 #114
i
i
i
i
i
i
114 5. Reoptimizarea soluiilor unei probleme de programare liniar
5.2 Reoptimizarea n urma modicrii coe-
cienilor funciei de scop
n continuare, se consider modelele liniare:
_

_
f(x) = (c, x) min/ max
Ax = b
x 0
(5.5)
i:
_

_
f(x) = (c

, x) min / max
Ax = b
x 0
(5.6)
unde f : R
n
R, A /
m,n
(R), b R
m
, c R
n
astfel nct
c

= c + c R
n
.
Deci vectorul c

este o modicare discret a vectorului c din problema


(5.5).
Se presupune c modelul (5.5) admite soluie optim i se determin
soluia optim a problemei (5.6) folosind ultimul tabel simplex al problemei
(5.5).
Dac ultimul tabel simplex (primal sau dual) al problemei (5.5) este:
A
j
1
. . . A
j
m

A
i

ij
1
. . .
ij
m
d
i
p
i

0j
1
. . .
0j
m
d
0
p
0

unde sistemul de vectori din sectorul 2, notat cu B


0
= (A
j
1
. . . A
j
m
) este baz
optim, atunci se poate demonstra urmtorul rezultat.
Teorema 5.2.1. Sistemul de vectori B = (A
j
1
. . . A
jm
) este baz primal
admisibil pentru problema (5.6).
Demonstraie. Sistemul de vectori B este baz optim i pentru problema
(5.5); prin urmare este un sistem de vectori liniar independeni.
Evident B B
0
i B B
0
, adic mulimea indicilor bazici, respectiv
nebazici este aceeai n ultimul tabel al problemei (5.5) i n primul tabel al
problemei (5.6).
Primul tabel simplex primal al problemei (5.6) va :
i
i
JATEK 2005/3/11 10:29 page 115 #115
i
i
i
i
i
i
5.2. Reoptimizarea n urma modicrii funciei de scop 115
1 A
j
1
. . . A
j
m

A
i

ij
1
. . .

ij
m
d

i
p

0j
1
. . .

0j
m
d

0
p

0

unde

ij
k
=
ij
k
i

0j
k
=
0j
k
pentru k = 1, m.
Diferenele din sectoarele 7 i 8 ale tabelului se calculeaz cu:
d
i
=

jB

ij
c
j
c
i
pentru i B
d
0
=

jB

0j
c
j
(vezi(3.4), (3.5))
Deoarece c

= c +c n general vom avea c

j
,= c
j
, j = 1, n ceea ce nseamn
c d

i
,= d
i
, i B i d

0
,= d
0
.
Astfel, n urma aplicrii algoritmului simplex primal, pot aprea urm-
toarele situaii:
(a) Pentru orice i B avem d

i
0, adic baza este i dual admisibil,
adic optim. Soluia optim a problemei (5.5) este optim i pentru
modelul (5.6).
(b) Dac exist cel puin un i B pentru care d

i
> 0, atunci cu algoritmul
simplex primal se va determina soluia optim al problemei (5.6).
Observaie. Formulnd duala problemelor considerate, putem scrie:
(D
1
)
_

_
g(y) = (v, b) max / min
A
T
y c
y de semn oarecare
(D
2
)
_

_
g(y) = (y, b) max / min
A
T
y c

y de semn oarecare
unde vectorul c

= c +c, adic (D
2
,) se obine din (D
1
) n urma modicrii
termenilor liberi. Astfel se poate aplica n scopul determinrii soluiei optime
problemei (D
2
) reoptimizarea n urma modicrii termenilor liberi prezentat
n paragraful anterior.
i
i
JATEK 2005/3/11 10:29 page 116 #116
i
i
i
i
i
i
116 5. Reoptimizarea soluiilor unei probleme de programare liniar
Problem rezolvat
Fie urmtorul model de programare liniar:
_

_
f(x) = 2x
1
+ 3x
2
max
x
1
+ 2x
2
8
3x
1
+ 2x
2
12
x R
2
+
Forma standard a problemei este:
_

_
f(x) = 2x
1
3x
2
min
x
1
+ 2x
2
+x
3
= 8
3x
1
+ 2x
2
+x
4
= 12
x R
4
+
de unde scriem matricea restriciilor:
A
1
A
2
A
3
A
4
A =
_
1 2 1 0
3 2 0 1
_
.
Problema se rezolv cu algoritmul simplex primal, obinnd pe rnd urm-
toarele tabele simplex:
1. A
3
A
4

A
1
1 3 2 -5
A
2
2 2 3 -6
8 12 0 -19
4 6
2. A
2
A
4

A
1
1/2 2 1/2 -2
A
3
1/2 -1 -3/2 3
4 4 -12 5
8 2
3. A
2
A
1

A
4
-1 /4 1/2 -1/4 1
A
3
3/4 -1/2 -5/4 2
3 2 -13 9

i
i
JATEK 2005/3/11 10:29 page 117 #117
i
i
i
i
i
i
5.2. Reoptimizarea n urma modicrii funciei de scop 117
x
0
= (2 3) este soluia optim a problemei. Variabilele ecart sunt: x
3
=
x
4
= 0. Valoarea optim a funciei de scop este f
max
= (13) = 13.
n continuare, se consider un model liniar obinut din modelul rezolvat
prin modicarea discret a vectorului c, formulat astfel:
_

_
f(x) = 3x
1
+x
2
max
x
1
+ 2x
2
8
3x
1
+ 2x
2
12
x R
2
+
Avem:
c = (2 3) R
2
; c

= (3 1) R
2
.
Forma standard a problemei considerate este:
_

_
f(x) = 3x
1
x
2
min
x
1
+ 2x
2
+x
3
= 8
3x
1
+ 2x
2
+x
4
= 12
x R
4
+
Pe baza teoremei 5.2.1, putem considera sistemul de vectori B = (A
2
A
1
),
care este baz primal admisibil pentru acest model.
Putem scrie:
1 A
2
A
1

A
4
-1/4 1/2 -5/4 2
A
3
3/4 -1/2 3/4 0
3 2 -9 5
4 -
Baza nu este dual admisibil, deci continum algoritmul:
2 A
3
A
1

A
4
-1/3 1/3 -1 2
A
2
4/3 2/3 -1 0
4 4 -12 5

Soluia optim a problemei este x
0
= (4 0), f
max
= 12, iar variabilele
auxiliare sunt x
3
= 4, x
4
= 0.
i
i
JATEK 2005/3/11 10:29 page 118 #118
i
i
i
i
i
i
118 5. Reoptimizarea soluiilor unei probleme de programare liniar
5.3 Reoptimizarea n urma modicrii matricei res-
triciilor
Privind acest tip de reoptimizare, ne vom opri asupra cazului n care mod-
icarea se produce n urma adugrii unei restricii la sistemul de restricii
al problemei iniial rezolvate i al unei variabile.
Acest tip de reoptimizare este utilizat la rezolvarea modelelor discrete,
precum i la rezolvarea unor modele neliniare.
Rezolvarea unei probleme de optimizare liniar cu restricii sub
forma standard obinut prin adugarea unei restricii i a unei
variabile pozitive
Fie modelele liniare:
(1)
_

_
f(x) =
n

j=1
x
j
c
j
min
n

j=1
a
ij
x
j
= b
i
, i = 1, m
x
j
0, j = 1, n
(2)
_

_
f(x) =
n

j=1
x
j
c
j
min
n

j=1
a
ij
x
j
= b
i
i = 1, m
n

j=1
a
m+1j
x
j
+x
n+1
= b
m+1
x
j
0, j = 1, n + 1
unde c
j
, a
ij
, b
i
R.
Problema (2)se obine din problema (1) prin adugarea unei restricii i
a unei variabile.
Astfel avem o problem de programare liniar n R
n
(problema (1)) i o
problem de programare liniar n R
n+1
(problema (2)).
Matricile restriciilor sunt:
A
1
. . . A
n
A
1
1
A
n
1
A
n+1
1
A =
_
_
_
a
11
. . . a
1n
.
.
.
a
m1
. . . a
mn
_
_
_
A
1
=
_
_
_
_
_
a
11
. . . a
1n
0
.
.
.
a
m1
. . . a
mn
0
a
m+1,1
. . . a
m+1,n
1
_
_
_
_
_
unde s-a notat cu A
1
, . . . , A
n
, A
1
1
, . . . , A
n+1
1
vectorii coloan ale matricilor A
i A
1
iar A
1
, . . . , A
n
R
m
, A
1
1
, . . . , A
n+1
1
R
m+1
.
i
i
JATEK 2005/3/11 10:29 page 119 #119
i
i
i
i
i
i
5.3. Reoptimizarea n urma modicrii matricei restriciilor 119
Din analiza matricilor se observ uor c ntre vectorii coloan are loc
relaia:
A
j
1
= (A
j
, a
m+1,j
) R
m
R
pentru orice j = 1, n i
A
n+1
1
= (
m
, 1) R
m
R.
Presupunem c problema (1) admite soluie optim, notat n continuare
cu x
0
R
n
.
n ultimul tabel simplex, dac vom nota cu j
1
, . . . , j
m
o submulime
a mulimii 1, 2, . . . , n, atunci (A
j
1
, . . . , A
j
m
) va reprezenta baza optim a
problemei (1).
Teorema 5.3.1. Sistemul de vectori B
1
= (A
j
1
1
, . . . , A
j
m
1
, A
n+1
1
) este o baz
dual admisibil pentru problema (2).
Demonstraie. Se demonstreaz prima dat c acest sistem de vectori este
baz pentru problema (2).
n acest sens trebuie demonstrat c determinantul format din componen-
tele vectorilor este diferit de zero (adic formeaz un sistem liniar indepen-
dent de vectori). Dezvoltm determinantul:
A
j
1
1
. . . A
j
m
1
A
n+1
1
D =

a
1j
1
. . . a
1j
m
0
.
.
.
.
.
.
.
.
.
a
mj
1
. . . a
mj
m
0
a
m+1,j
1
. . . a
m+1,j
m
1

dup ultima coloan, n care doar ultimul element este diferit de zero. De-
terminantul de ordinul m astfel obinut:
D

a
1j
1
. . . a
1j
m
.
.
.
.
.
.
.
.
.
a
mj
1
a
mj
m

este format din componentele vectorilor care formeaz baza optim, prin
urmare acest determinant va diferit de zero, ceea ce nseamn c sistemul
de vectori formeaz o baz.
n continuare, vom lucra n ipoteza c sistemul de vecori B
1
este baz
dual admisibil. La demonstraie, vom reveni dup stabilirea modului de
completare a tabelului simplex dual n vederea rezolvrii problemei (2).
Ultimul tabel al problemei rezolvate (1) arat astfel.
i
i
JATEK 2005/3/11 10:29 page 120 #120
i
i
i
i
i
i
120 5. Reoptimizarea soluiilor unei probleme de programare liniar
ult. A
j
1
. . . A
j
m

A
i

ij
1
. . .
ij
m
d
0
p
0

0j
1
. . .
0j
m
d
i
p
i

unde sistemul de vectori din sectorul 2, B


0
= (A
j
1
. . . A
j
m
) este baza optim.
Vectorii care nu au intrat n formarea bazei sunt:
A
i
1
= (
ij
1
, . . . ,
ij
m
)
unde coordonatele
ij
k
, k = 1, m sunt scrise n sectorul 6 n tabel, i B.
Dac analizm acest ultim tabel i sistemul de vectori B
1
, se observ c
acele coloane din matricea A
1
, care sunt corespunztoare exact indicilor i,
vor reprezenta vectorii care nu intr n formarea bazei B
1
.
Primul tabel simplex al problemei (2) este:
1. A
j
1
1
. . . A
j
m
1
A
n+1
1

A
i
1

ij
1
. . .

ij
m

i,n+1
d

i
p

0j
1
. . .

0j
m

0,n+1
d

0
p

0

Vectorii care nu au intrat n baz se scriu ca o combinaie liniar a bazei
B
1
.
A
i
1
=

ij
1
A
j
1
1
+ +

ij
m
A
j
m
1
+

i,n+1
A
n+1
1
i

B
1
Putem scrie aceast relaie folosind legtura dintre coloanele matricilor A i
A
1
astfel:
(A
i
, a
m+1,i
) =

ij
1
(A
j
1
, a
m+1,j
1
)+ +

ij
m
(A
j
m
, a
m+1,j
m
)+

i,n+1
(
m
, 1) i

B
1
Aceast egalitate din R
m+1
este echivalent cu sistemul:
_
A
i
=

ij
1
A
j
1
+ +

ij
m
A
j
m
i

B
a
m+1,i
=

ij
1
a
m+1,j
1
+ +

ij
m
a
m+1,j
m
+

i,n+1

ij
1
=
ij
1
, . . . ,

ij
m
=
ij
m
deoarece scrierea unui vector ntr-o baz se poate realiza n mod unic.
i
i
JATEK 2005/3/11 10:29 page 121 #121
i
i
i
i
i
i
5.3. Reoptimizarea n urma modicrii matricei restriciilor 121
Astfel obinem din a doua egalitate:

i,n+1
= a
m+1,i

m

k=1

ij
k
a
m+1,j
k
n mod analog, putem deduce:

0j
1
=
0j
1
, . . . ,

0j
m
=
0j
m
iar

0,n+1
= x
0
n+1
= b
m+1

m

k=1

0j
k
a
m+1,j
k
Numerele de control pot obinute din:
p

i
= p
i

in+1
, i B.
p

0
= p
0

0n+1
.
Diferenele d

i
i d

0
sunt egale cu cele din ultimul tabel al problemei rezolvate,
deoarece variabila x
n+1
are coecientul zero n funcia de scop. Astfel au loc
relaiile:
d

0
= d
0
, d

i
= d
i
i

B,
ceea ce arat c baza B
1
este baz dual admisibil. Astfel teorema este
complet demonstrat.
Problem rezolvat
Se consider urmtoarele probleme:
_

_
f(x) = x
1
x
2
+ 2x
3
+x
4
min
x
1
+x
2
+x
3
= 3
2x
1
+x
2
+x
4
= 4
x
1
0, x
4
0
_

_
f(x) = x
1
x
2
+ 2x
3
+x
4
min
x
1
+x
2
+x
3
= 3
2x
1
+x
2
+x
4
= 4
3x
1
2x
2
+ 6x
4
+x
5
= 1
x
1
, . . . , x
5
0
Matricile restriciilor sunt:
A
1
A
2
A
3
A
4
A
1
1
A
2
1
A
3
1
A
4
1
A
5
1
A =
_
1 1 1 0
2 1 0 1
_
A
1
=
_
_
1 1 1 0 0
2 1 0 1 0
3 -2 0 6 1
_
_
Prima problem este n forma standard de lucru. Tabelele simplex primal
sunt:
i
i
JATEK 2005/3/11 10:29 page 122 #122
i
i
i
i
i
i
122 5. Reoptimizarea soluiilor unei probleme de programare liniar
1 A
3
A
4

A
1
1 2 3 -5
A
2
1 1 4 -5
3 4 10 -16
3 4
2 A
2
A
4

A
1
1 1 -1 0
A
3
1 -1 -4 5
3 1 -2 -1

Dup dou iteraii, soluia optim a primei probleme este:
x
0
= (0 3 0 1); f
min
= 2.
Acum trecem la rezolvarea celei de-a doua probleme.
Folosind teorema 5.3.1, scriem baza dual admisibil pentru modelul doi:
B
1
= (A
2
1
A
4
1
A
5
1
)
Se completeaz primul tabel simplex dual:
1 A
2
1
A
4
1
A
5
1

A
1
1
1 1 -1 -1 1 1
A
3
1
1 -1 8 -4 -3 -
3 1 -1 -2 0
Completarea tabelului simplex dual s-a realizat cu ajutorul relaiilor date.
Putem scrie:

15
= a
31
(1 a
32
+ 1 a
34
) = 3 (1 (2) + 1 6) sau
scriind vectorul, care nu intr n formarea bazei, ca o combinaie liniar a
bazei, putem calcula coordonatele necunoscute astfel:
A
1
1
= 1 A
2
1
+ 1 A
4
1
+A
5
1
A
1
1
= 1 (1 1 2) + 1 (0 1 6) +(0 0 1)
(1 2 3) = (1 2 4 +)
= 1.
n mod analog, putem scrie:
A
3
1
= 1 A
2
1
1A
4
1
+
35
A
5
1
(1 0 0) = 1 (1 1 2) 1(0 1 6) +
35
(0 0 1)

35
= 8
b
1
= 3 A
2
1
+ 1 A
4
1
+
05
A
5
1
(3 4 1) = 3(1 1 2) + 1 (0 1 6) +
05
(0 0 1)
a
05
= 1
Dup alegerea elementului pivot, trecem la completarea urmtorului tabel
simplex dual:
i
i
JATEK 2005/3/11 10:29 page 123 #123
i
i
i
i
i
i
5.3. Reoptimizarea n urma modicrii matricei restriciilor 123
2 A
2
1
A
4
1
A
1
1

A
5
1
1 1 -1 -1 1
A
3
1
9 7 -8 -12 5
2 0 1 -1 -1
Soluia optim a celei de-a doua probleme este:
x
0
= (1 2 0 0 0) f
min
= 1.
Observaie. Dac nu folosim reoptimizarea, atunci rezolvarea celei de-a
doua probleme este mai complicat, necesit mai multe iteraii i tabele
simplex cu dimensiuni mai mari.
Analiznd matricea A
1
, se poate observa c problema nu este n forma
standard de lucru. Algoritmul simplex dual nu se poate aplica n mod di-
rect. Problema poate rezolvat cu metoda celor dou faze sau cu metoda
coecienilor de penalizare.
Reoptimizarea poate aplicat i ntr-un alt context. Avnd o problem
dat spre rezolvare, eliminnd din restricii i variabile (dac este cazul, adic
variabilele eliminate nu apar n alte restricii i n funcia de scop), putem
rezolva problema redus, dup care, cu reoptimizare, vom obine soluia
optim a problemei iniiale.
Problem rezolvat:
_

_
f(x) = x
2
6x
3
+ 2x
5
min
x
1
+ 3x
2
x
3
= 7
2x
2
+ 4x
3
+x
4
= 12
4x
2
+ 3x
3
+ 8x
5
+x
6
= 10
x
1
+ 2x
2
+x
3
+x
4
+x
6
+x
7
= 20
x
1
, . . . , x
7
0
Matricea restriciilor este:
A =
_
_
_
_
1 3 1 0 0 0 0
0 2 4 1 0 0 0
0 4 3 0 8 1 0
1 2 1 1 0 1 1
_
_
_
_
c = (0 1 6 0 2 0 0), b = (7 12 10 20). Se poate elimina ultima
restricie i variabila x
7
, deoarece nu apare dect n ultima restricie. Astfel,
i
i
JATEK 2005/3/11 10:29 page 124 #124
i
i
i
i
i
i
124 5. Reoptimizarea soluiilor unei probleme de programare liniar
mai nti, se va rezolva problema:
_

_
f(x) = x
2
6x
3
+ 2x
5
min
x
1
+ 3x
2
x
3
= 7
2x
2
+ 4x
3
+x
4
= 12
4x
2
+ 3x
3
+ 8x
5
+x
6
= 10
x
1
. . . x
6
0
dup care se aplic reoptimizarea:
A
1
A
2
A
3
A
4
A
5
A
6
A =
_
_
1 3 -1 0 0 0
0 -2 4 1 0 0
0 -4 3 0 8 1
_
_
Problema este n forma standard de lucru i se va rezolva cu algoritmul
simplex primal. Dup reoptimizare, obinem soluia optim a problemei
iniiale care va x
0
= (0 4 5 0 0 11), d
0
= f
min
= 26.
i
i
JATEK 2005/3/11 10:29 page 125 #125
i
i
i
i
i
i
Capitolul 6
Tipuri speciale de probleme de
optimizare
n acest capitol, prezentm modele de probleme de optimizare care pot
rezolvate cu algoritmul simplex.
6.1 Programare discret
6.1.1 Bazele programrii discrete
Obiectul programrii discrete este rezolvarea unor anumite probleme de
optimizare.
Deniia 6.1.1. Programarea discret studiaz probleme de forma:
_
f(x) min/ max
x S,
unde S este o mulime numrabil.
n literatura de specialitate internaional, n cadrul programrii discrete,
nu exist o terminologie unic. n acest sens, sunt folosite denumirile de
programare n numere ntregi i programare combinatorial.
Aceste tipuri de modele pot mprite n dou mari grupe:
A. Modele care formal seamn cu modelele programrii liniare, dar sunt
i alte condiii puse asupra variabilelor pe lng condiia de nenegativitate.
Aceste condiii, care determin tipurile de probleme discrete, pot :
A1: x
i
= 0 sau 1 (unde notm cu x
i
variabilele problemei);
A2: x
i
[0, d], x
i
ntreg (d N xat);
A3: x
i
0, x
i
ntregi.
125
i
i
JATEK 2005/3/11 10:29 page 126 #126
i
i
i
i
i
i
126 6. Tipuri speciale de probleme de optimizare
Se poate observa c A
3
A
2
A
1
, implicaia reciproc neavnd loc. n
concluzie, dac avem o metod de rezolvare pentru probleme cele mai gen-
erale A
3
, atunci rezult c aceste metode pot folosite i pentru rezolvarea
problemelor A
2
i A
1
.
B. Cea de-a doua grup const n probleme mixte n care avem restricii
de tipul A
1
, A
2
, A
3
doar pentru unele variabile, iar pentru celelalte doar
condiia de nenegativitate.
Un exemplu cunoscut n acest domeniu este problema rucsacului (vezi
paragraful 1.3).
n continuare, prezentm cteva modele discrete care vor scoate n evi-
den probleme eseniale legate de rezolvabilitatea modelelor discrete.
Vom prezenta modele discrete n R
2
, care pot rezolvate pe cale grac.
Fie modelul:
_

_
f(x) =

2x
1
x
2
max

2x
1
x
2
0
x
2
1
x
1
, x
2
0, x
1
, x
2
N
n acelai sistem de coordonate, reprezentm dreptele:
(d
1
)

2x
1
x
2
= 0 (d
2
) x
2
+ 1 = 0
x
2
(d
1
)
(d
2
)
x
1 2
Observaie. Dac pentru o problem de programare discret ne rezumm
la raionamentul folosit, n cazul modelelor liniare putem grei.
i
i
JATEK 2005/3/11 10:29 page 127 #127
i
i
i
i
i
i
6.1. Programare discret 127
Exemplu.
_

_
f(x) =

5x
1
x
2
max

5x
1
x
2
0
x
1
1
x
1
, x
2
0, x
1
, x
2
N
n mod analog lucrnd, vom obine:
x
2
(d
1
)
(d
2
)
1
x
1
nvelitoarea convex a punctelor conv a
1
, . . . , a
n
(punctele de inter-
secie a dreptelor) nu este neaprat un poliedru. De exemplu, la modelul
considerat, nvelitoarea convex tinde spre dreapta

5x
1
= x
2
, dar nu atinge.
Deci trebuie luat n considerare cazul n care exist soluie admisibil, funcia
de scop este mrginit. i totui nu exist soluie optim.
Are loc urmtorul rezultat:
Teorema 6.1.1. Fie modelul:
_
_
_
f(x, y) = cx +dy min(max)
Ax +By = b
x N
p
+
y R
q
+
A /
mp
B /
mq
Notm cu C = conv (S).
Dac A i B sunt formate din numere raionale, atunci C este un
poliedru.
i
i
JATEK 2005/3/11 10:29 page 128 #128
i
i
i
i
i
i
128 6. Tipuri speciale de probleme de optimizare
Observaie. n orice caz practic, teorema asigur existena soluiei optime,
dac exist soluie admisibil i funcia de scop este mrginit, deoarece
calculatorul lucreaz numai cu numere raionale.
Sunt dou principii funadamentale (principiul relaxrii, principiul lui
Bellmann)care stau la baza metodelor numerice elaborate pentru rezolvarea
mode-lelor discrete.
Principiul relaxrii
Dintre toate tipurile de programare matematic, prima dat a fost for-
mulat i studiat programarea liniar. Astfel este resc ca rezolvarea prob-
lemelor de programare discret s e redus la rezolvarea numeric a acestor
probleme.
n acest sens, dac n modelul:
_
_
_
f(x) = (c, x) opt.
Ax = b
x N
n
se renun la condiia de integritate a variabilelor, atunci se obine o problem
de programare liniar. Rezolvnd aceast problem i dac soluia x
0
veric
condiiile x N
n
, atunci reiese c avem soluie optim i pentru problema
discret. Metodele de rezolvare care urmresc acest raionament se bazeaz
pe principiul relaxrii.
n continuare, enunm principiul relaxrii .
Fie S, T dou mulimi oarecare astfel nct S T. Fie f : T R o funcie
oarecare. Dac problema
_
f(x) max
x T
admite soluie optim notat cu
y i y S, atunci y va de asemenea soluie optim pentru problema
_
f(x) max
x S
Prima problem prin deniie se numete problem relaxat.
Metodele de tip tietur i metoda mrginirii i separrii sunt construite
pe acest principiu.
Dei trivial, principiul relaxrii este un instrument extrem de util.
Practic este util atunci cnd rezolvarea problemei relaxate este mult mai
simpl.
i
i
JATEK 2005/3/11 10:29 page 129 #129
i
i
i
i
i
i
6.1. Programare discret 129
n continuare, se consider problema:
_

_
f(x) = 7x
1
+ 5x
2
max
6x
1
+ 9x
2
54
7x
1
+ 6x
2
42
x
1
4
x
1
, x
2
N
Vom rezolva pe cale grac. n acelai sistem de coordonate, vom
reprezenta dreptele i vom determina mulimea soluiilor posibile:
x
2
9
6
(d
2
)
x
1
(d
3
)
(d
1
)
Evident mulimea soluiilor posibile este:
S = (0, 0), (0, 1), (0, 2), (0, 3), (0, 4), (0, 5), (0, 6)
(1, 0), (1, 1), (1, 2), (1, 3), (1, 4), (1, 5)
(2, 0), (2, 1), (2, 2), (2, 3), (2, 4)
(3, 0), (3, 1), (3, 2), (3, 3)
(4, 0), (4, 1), (4, 2)
Obinem soluia optim ntr-un poliedru convex. nvelitoarea convex a
punctelor (soluiilor posibile) este un poliedru mai mic.
Soluia optim a problemei discrete va x = (4 2), iar soluia problemei
relaxate este x
0
= (4 7/3), punctul de intersecie a dreptelor (d
3
) (d
2
).
6.1.2 Metode de tip tietur. Metoda lui Gomory
Algoritmul lui Gomory este o metod de tip tietur i a fost formulat n
1959 [Gom].
i
i
JATEK 2005/3/11 10:29 page 130 #130
i
i
i
i
i
i
130 6. Tipuri speciale de probleme de optimizare
Fie modelul liniar cu restricii n numere ntregi:
_
_
_
f(x) = (x, c) min
Ax = b
x N
n
.
(6.1)
Asociem acestui model problema relaxat:
_
_
_
f(x) = (x, c) min
Ax = b
x 0
(6.2)
care este o problem de programare liniar obinuit.
Notm cu S = x N
n
: Ax = b mulimea soluiilor problemei discrete
i cu S
1
= x R
n
: Ax = b, x 0 mulimea soluiilor admisibile ale
problemei relaxate.
Evident are loc relaia S S
1
.
n continuare, prezentm algoritmul lui Gomory.
1. Se va rezolva problema relaxat cu una din metodele prezentate i se
va nota cu x
1
S
1
soluia optim obinut.
2. Aplicm principiul relaxrii.
Se pot ivi dou situaii:
(a) dac x
1
S x
1
este soluia optim a problemei discrete;
(b) dac x
1
, S, atunci exist cel puin o component a vectorului care
nu este numr natural.
n cazul (b), se va continua algoritmul.
3. Notm cu B
o
baza optim a problemei relaxate. Deoarece x
1
, S,
rezult c exist cel puin un numr
0j
care nu este natural, adic:
j B :
0j
, N.
4. Fie j B pentru care
0j
, N.
Se va construi o nou problem astfel:
_

_
f(x) = (x, c) min
Ax = b

ij
x
i

0j
/ (1)
x 0
(6.3)
i
i
JATEK 2005/3/11 10:29 page 131 #131
i
i
i
i
i
i
6.1. Programare discret 131
Mulimea soluiilor posibile ale problemei (6.3) se va nota cu:
S
2
= x R
n
: Ax = b,

ij
x
i

0j
, x 0.
Au loc relaiile:
S
2
S
1
(chiar se poate arta c S
2
S
1
);
S S
2
.
n scopul rezolvrii, problema se va transforma astfel:
_

_
f(x) = (x, c) min
Ax = b

ij
x
i
+x
n+1
=
0j

x 0, x
n+1
0
(6.4)
Acest model se va rezolva cu reoptimizare.
Soluia acestei probleme va avea (n+1) coordonate. Se vor lua primele
n componente pe care le vom nota cu x
2
S
2
.
5. Cu soluia x
2
astfel obinut se va trece la pasul 2 din algoritm.
Observaie. Algoritmul prezentat nu ofer soluie ntr-un numr nit de
pai n cazul tuturor problemelor, ns poate construit o variant cu numr
nit de iteraii. n cazul algoritmului simplex, numrul maxim de iteraii este
C
m
n+m
, dar n cazul algoritmului Gomory nu se poate da un astfel de numr, o
margine superioar n funcie de dimensiunea problemei [Jer]. Dezavantajul
metodei este c, la ecare iteraie, crete dimensiunea problemei. Mulimea
soluiilor posibile S este aproximat cu un ir de mulimi tot mai restrictive,
care sunt mulimile soluiilor posibile ale modelelor liniare construite n pasul
4 din algoritm.
Se poate demonstra c, n cazul n care datele de intrare ale problemei,
A, c, b, sunt formate din numere ntregi, iar mulimea S este mrginit atunci
dup un numr nit de pai, se va obine soluia optim a problemei de
minimizare total ntreag.
Inegalitatea:

ij
x
i

0j

se numete tietura lui Gomory, unde x reprezint partea fracionar a


numrului real x.
i
i
JATEK 2005/3/11 10:29 page 132 #132
i
i
i
i
i
i
132 6. Tipuri speciale de probleme de optimizare
Pentru orice x R poate scris:
x = x + [x], unde [x]
este partea ntreag a numrului.
Teorema 6.1.2. Presupunem c problema relaxat admite soluie optim i
funcia de scop este mrginit inferior (pentru f(x
0
) w : w f(x
0
)).
Dup un numr nit de iteraii, vom ntlni una din urmtoarele situaii:
1. obinem soluia optim pentru problema de programare total ntreag;
2. gsim f(x
0
) < w;
3. demonstrm c o variabil poate lua numai valori negative.
Demonstraie. [Sch] pg. 356-358.
Problem rezolvat:
S se determine soluia optim a problemei discrete:
_

_
f(x) = x
1
6x
2
+x
3
min
2x
1
3x
2
+x
3
= 2
x
1
+ 3x
2
+x
4
= 3
3x
1
+ 6x
2
+x
5
= 3
x
1
, . . . , x
5
N
Problema relaxat este:
_

_
f(x) = x
1
6x
2
+x
3
min
2x
1
3x
2
+x
3
= 2
x
1
+ 3x
2
+x
4
= 3
3x
1
+ 6x
2
+x
5
= 3
x
j
0, j = 1, 5
Matricea problemei relaxate este:
A
1
A
2
A
3
A
4
A
5
A =
_
_
2 -3 1 0 0
1 3 0 1 0
3 6 0 0 1
_
_
Problema este n forma standard de lucru i se va rezolva cu algoritmul
simplex primal.
i
i
JATEK 2005/3/11 10:29 page 133 #133
i
i
i
i
i
i
6.1. Programare discret 133
1 A
3
A
4
A
5

A
1
2 1 3 1 -6
A
2
-3 3 6 3 -8
2 3 3 2 -9
- 1 1/2
2 A
3
A
4
A
2

A
1
7/2 -1/2 1/2 -1/2 -2
A
5
1/2 -1/2 1/6 -1/2 4/3
7/2 3/2 1/2 1/2 -5

Soluia optim este:
x
1
=
_
0
1
2
7
2
3
2
0
_
d
0
= f
min
=
1
2
j 2, 3, 4

02
=
1
2
, N
Pentru j = 2 ales din mulimea indicilor bazici 2, 3, 4, scriem tietura
lui Gomory.

ij
x
i

0j

j = 2
02
=
1
2

02
=
1
2
i

B = 1, 5

12
=
1
2

12
=
1
2

5,2
=
1
6

5,2
=
1
6
Folosind tietura lui Gomory, scriem modelul liniar:
_

_
f(x) = x
1
6x
2
+x
3
min
2x
1
3x
2
+x
3
= 2
x
1
+ 3x
2
+x
4
= 3
3x
1
+ 6x
2
+x
5
= 3
1
2
x
1
+
1
6
x
5

1
2
x
1
. . . x
5
0
_

_
f(x) = x
1
6x
2
+x
3
min
2x
1
3x
2
+x
3
= 2
x
1
+ 3x
2
+x
4
= 3
3x
1
+ 6x
2
+x
5
= 3

1
2
x
1

1
6
x
5
+x
6
=
1
2
x
1
. . . x
6
0
i
i
JATEK 2005/3/11 10:29 page 134 #134
i
i
i
i
i
i
134 6. Tipuri speciale de probleme de optimizare
Problema va rezolvat prin reoptimizare. Matricea restriciilor este:
A
1
1
A
2
1
A
3
1
A
4
1
A
5
1
A
6
1
A
1
=
_
_
_
_
_
_
2 3 1 0 0 0
1 3 0 1 0 0
3 6 0 0 1 0

1
2
0 0 0
1
6
1
_
_
_
_
_
_
b
1
=
_
_
_
_
_
2
3
3

1
2
_
_
_
_
_
c =
_
1 6 1 0 0 0
_
Vom rezolva cu algoritmul simplex dual.
tiind c sistemul de vectori B
1
= A
3
1
, A
4
1
, A
2
1
, A
6
1
este baz dual ad-
misibil, completm primul tabel simplex dual:
1 A
3
1
A
4
1
A
2
1
A
6
1

A
1
1
7/2 -1/2 1/2 -1/2 -1/2 -3/2 1
A
5
1
1/2 -1/2 1/6 -1/6 -1/2 3/2 3
7/2 3/2 1/2 -1/2 1/2 -9/2
Ultima coordonat a vectorilor care nu intr n formarea bazei se obine
efectund calculele:
A
1
1
=
7
2
A
3
1

1
2
A
4
1
+
1
2
A
2
1
+A
6
1
=
7
2
(1, 0, 0, 0)
1
2
(0, 1, 0, 0) +
+
1
2
(3, 3, 6, 0) +(0, 0, 0, 1) =
_
7
2

3
2
,
1
2
+
3
2
, 3,
_
= (2, 1, 3, )
_
2, 1, 3,
1
2
_
= (2, 1, 3, )
=
1
2
b
1
=
7
2
A
3
1
+
3
2
A
4
1
+
1
2
A
2
1
+A
6
1
=
1
2
Dup o iteraie simplex dual, se obine urmtorul tabel:
i
i
JATEK 2005/3/11 10:29 page 135 #135
i
i
i
i
i
i
6.1. Programare discret 135
2 A
3
1
A
4
1
A
2
1
A
1
1

A
6
1
7 -1 1 -2 -1 -3
A
5
1
-2/3 -1/3 0 1/3 -1/3 2
0 2 0 1 1 -3
Baza dual admisibil este i primal admisibil. Soluia optim este:
x
2
= (1, 0, 0, 2, 0) S. Pe baza principiului relaxrii, aceast soluie este
soluie i pentru problema iniial:
d
0
= 1 = f
min
6.1.3 Programare dinamic discret
Metodele numerice de rezolvare a modelelor discrete bazate pe principiul
lui Bellman sunt diferite de metoda simplex i nu reprezint obiectul acestei
lu-crri.
Deoarece programarea dinamic discret este relevant prin aplicaiile
importante n economie, o vom prezenta n Anexa 1.
6.2 Programare liniar parametric
Problemele indicate de practica economic conduc la formarea modelelor
matematice cu coecieni variabili. Studiul variaiei soluiei optime n funcie
de variaia datelor de intrare reprezint o problem extrem de important.
Datele de intrare sunt resurse, costuri, benecii i alte mrimi economice.
Fie modelul:
_

_
n

j=1

j
x
j
max(min)
n

j=1

ij
x
j

i
, i = 1, m
x
j
0, j = 1, n
(6.5)
unde
j
,
ij
,
i
pentru i = 1, m, j = 1, n sunt variabile aleatoare. Acest model
este de fapt negarea determinabilitii unui model obinuit de programare
liniar.
Modelul (6.5) reprezint obiectul programrii stohastice.
Dac
j
,
ij
,
i
pentru i = 1, m, j = 1, n sunt funcii deterministice, atunci
modelul (6.5) aparine domeniului programrii neliniare.
Acest model reprezint extinderea situaiilor i consideraiilor prezentate
n capitolele anterioare.
i
i
JATEK 2005/3/11 10:29 page 136 #136
i
i
i
i
i
i
136 6. Modele rezolvabile cu algoritmul simplex
n scopul aplicrii metodei simplex problemei (6.5), vom considera cazul
n care aceste funcii sunt funcii liniare de o variabil, astfel:
_

_
(c +c

, x) max(min)
(A+A

)x b +b

0
0
, 0
0
, 0
0
(6.6)
unde:

j
= c
j
+c

j
, j = 1, n

ij
= a
ij
+a

ij
, i = 1, m; j = 1, n

i
= b
i
+b

i
, i = 1, m
iar , , sunt variabile care iau valori dintr-un interval bine determinat.
Modelul (6.6) este un model de programare cu n+3 variabile, care admite
soluie n cazul n care sistemul de restricii este consistent, dar determinarea
soluiei optime este n afara posibilitilor metodei simplex.
n continuare vom considera urmtoarele cazuri:
_

_
f(x) = (c, x) opt.
Ax b +b

x 0

0

1
(6.7)
_

_
f(x) = (c +c

, x) opt.
Ax b
x 0

0

1
(6.8)
_

_
f(x) = (c, x) opt.
(A+A

)x b
x 0

0

1
(6.9)
n care, pe rnd, cantitile din membrul drept, componentele funciei de
scop i resursele sunt funcii care depind liniar de un parametru.
Deniia 6.2.1. Modelele (6.7), (6.8) i (6.9) se numesc modele de progra-
mare parametric.
Putem formula dou probleme:
- determinarea variantei optime a modelului liniar pentru o valoare xat
a parametrului (sau valori xate ale parametrilor), ceea ce este o problem
de programare liniar obinuit;
i
i
JATEK 2005/3/11 10:29 page 137 #137
i
i
i
i
i
i
6.2. Programare liniar parametric 137
- reoptimizarea soluiei determinate pentru valori xate ale parametrilor
n condiiile cnd parametrii variaz pe mulimea n care iau valori sau pe
pri ale acesteia.
Problema parametrizrii modelului nseamn analiza dependenei
parame-trice a elementelor sale, adic a vectorului resurs (b), a vectoru-
lui beneciar (c), a matricei tehnologice (A).
Aceste probleme nu pot considerate ca o simpl prelungire a reopti-
mizrii. Dicultile sunt mari i ele cresc o dat cu natura dependenei
parametrice i cu simultaneitatea dependenei elementelor modelului.
La prima vedere, modelele (6.7), (6.8) i (6.9) reprezint o innitate de
modele liniare pe care le obinem pe rnd pentru ecare valoare xat a
parametrului [
0
,
1
]. Pe de alt parte, practic, nu pentru ecare xat
am obine o baz optim.
Deniia 6.2.2. Bazele optime ale problemei (6.6) se numesc baze ca-
racteristice.
La ecare baz caracteristic B
car
i se poate asocia un interval [
c
1
,
c
2
]
[
0
,
1
] numit interval caracteristic.
Rezolvarea unui astfel de model nseamn determinarea bazelor caracter-
istice i a intervalelor caracteristice corespunztoare.
6.2.1 Parametrizarea membrului drept
n acest paragraf, prezentm algoritmul de rezolvare a problemei
de tip (6.7).
1. Pentru = 0 (cea mai util xare a parametrului), rezolvm modelul
de programare liniar obinut cu una din metodele numerice cunos-
cute. Se presupune c exist soluie optim; n caz contrar, nu are sens
parametrizarea.
2. Cu algoritmul simplex, soluia optim de la etapa 1, notat cu x

0
,
este:
x

0
= B
1
0
b.
n continuare, considerm termenul liber b() = b + b

al problemei
(6.7) i scriem:
x() = B
1
0
b().
3. Valorile lui R pentru care x() 0 (este soluie posibil) formeaz
intervalul caracteristic asociat lui = 0, notat cu [
0
c
1
,
0
c
2
].
i
i
JATEK 2005/3/11 10:29 page 138 #138
i
i
i
i
i
i
138 6.2.1. Parametrizarea membrului drept
4. Studiem cazurile pentru care , [
0
c
1
,
0
c
2
].
Se pot ivi dou situaii:
Dac intervalul caracteristic nu se poate prelungi pentru c n sectorul
4 exist o valoare
0j
< 0, j B pentru care
ij
0 pentru orice
i B, atunci problema nu admite soluie optim:
altfel
5. se aplic algoritmul simplex dual i se obine o prelungire a intervalului
caracteristic.
6. Continum procedura de la pasul 5, pn cnd se va ajunge la criteriul
de oprire din 4.
Problem rezolvat
S se determine bazele i intervalele caracteristice problemei:
_

_
f(x) = 9x
1
16x
2
min
x
1
+ 4x
2
8 2
2x
1
+ 3x
2
9 + 3
x R
2
+
, R
Considerm = 0 i rezolvm modelul:
_

_
f(x) = 9x
1
16x
2
min
x
1
+ 4x
2
+x
3
= 8
2x
1
+ 3x
2
+x
4
= 9
x R
4
+
,
Matricea restriciilor este:
A
1
A
2
A
3
A
4
A =
_
1 4 1 0
2 3 0 1
_
1. A
3
A
4

A
1
1 2 9 -11
A
2
4 3 16 -22
8 9 0 -16
2 3
i
i
JATEK 2005/3/11 10:29 page 139 #139
i
i
i
i
i
i
6.2. Programare liniar parametric 139
2. A
2
A
4

A
1
1/4 5/4 5 -22/4
A
3
1/4 -3/4 -4 22/4
2 3 -32 28
8 12/5
3. A
2
A
1

A
4
-1/5 4/5 -4 22/5
A
3
2/5 -3/5 - 1 11/5
7/5 12/5 -44 206/5

Soluia optim este:
x
0
= b (12/5, 7/5) i f
min
= 44.
Revenim la modelul de programare parametric i scriem:
b() =
_
8 2
9 + 3
_
x() = B
1
b(), B
1
=
_
2/5 1/5
3/5 4/5
_
x() =
_
2/5 1/5
3/5 4/5
__
8 2
9 + 3
_
=
_
_
_
_
7
5

7
5

12
5
+
18
5
_
_
_
_
Dac x() 0, atunci B = (A
2
, A
1
) este baz optim. Astfel obinem din:
x() 0
_

_
7
5

7
5
0
12
5
+
18
5
0

_
_
_
1

2
3
.
Dac
_

2
3
, 1
_
atunci B = (A
2
, A
1
) este baz optim i:
_
x
2
()
x
1
()
_
=
_
_
_
_
7
5

7
5

12
5
+
18
5
_
_
_
_
este soluie optim.
Valoarea optim a funciei de scop este f
min
() = 44 10.
i
i
JATEK 2005/3/11 10:29 page 140 #140
i
i
i
i
i
i
140 6.2.1. Parametrizarea membrului drept
Dac ,
_

2
3
, 1

atunci cel puin o component a lui x() va deveni


negativ, prin urmare, n cazul n care exist soluie, va trebui s se aplice
algoritmul simplex dual.
Astfel, dac > 1, atunci notm = 1 +, > 0. Putem scrie:
x() =
_
_
_
_
7
5

7
5
(1 +)
12
5
+
18
5
(1 +)
_
_
_
_
=
_
_
_
_

7
5

6
5

18
5

_
_
_
_
.
Revenim la ultimul tabel al problemei rezolvate pentru = 0 i vom avea:
1. A
2
A
1

A
4
-1/5 4/5 -4 22/5 -
A
3
2/5 -3/5 -1 11/5 5/3
-7/5
6
5

18
5

54+274
5

2. A
2
A
3

A
4
1/3 -4/3 -16/3
A
1
2/3 -5/3 -5/3 11/3

4+19
5
2 + 6
Deoarece pentru
02
=
4 + 19
5
< 0 valorile
42
=
1
3
> 0 i
12
=
2
3
>
0 rezult c problema nu admite optim nit.
n concluzie, intervalul nu poate prelungit la dreapta, pentru > 1
modelul considerat nu admite soluie optim.
Dac <
2
3
atunci putem introduce notaia =
2
3
, > 0 i
putem scrie:
x() =
_
_
_
_
_
7
5

7
5
_

2
3

_
12
5
+
18
5
_

2
3

_
_
_
_
_
_
=
_
_
_
7
3
+
7
5

18
5

_
_
_
.
Revenim la ultimul tabel al problemei rezolvate pentru = 0 i scriem:
1. A
2
A
1

A
4
-1/5 4/5 -4 22/5
A
3
2/5 -3/5 -1 11/5 5/3

7
3
+
7
5

18
5

i
i
JATEK 2005/3/11 10:29 page 141 #141
i
i
i
i
i
i
6.2. Programare liniar parametric 141
2. A
2
A
3

A
4
1/3 -4/3 -16/3
A
1
2/3 -5/3 -5/3 11/3
7/3- 6
Dac
7
3
0 atunci x() =
_
7
3

0
_
este soluie optim. Astfel pentru

7
3
avem =
2
3

7
3
= 3, adic intervalul poate prelungit la stnga.
Dac
_
0,
7
3
_
atunci
_
3,
2
3
_
i B = (A
2
, A
3
) este baz optim:
f
min
() =
112
3
+ 16.
Dac
7
3
< 0 atunci modelul nu admite optim nit, deoarece:

42
=
1
3
> 0 i
12
=
2
3
> 0.
Deci modelul de programare parametric admite soluie optim doar n
cazul n care [3, 1].
6.2.2 Parametrizarea funciei de scop
Fie modelul:
_

_
f(x) = (c +c

, x) min/ max
Ax = b
x 0, R
Putem presupune, fr restrngerea generalitii, c b R
m
+
. Astfel, la re-
zolvarea numeric a problemei se aplic algoritmul simplex primal.
n sectorul 7, vor diferenele d
i
, i B, care sunt funcii de .
Putem scrie d
i
() =
i
+
i
, i B i notm soluiile ordonate ale
ecuaiilor d
i
() = 0 cu
0
i
=

i
,
i
,= 0. Considernd, pe rnd, intervalele
caracteristice (,
0
1
], [
0
1
,
0
2
] . . . [
m
0
, ) i innd cont de semnul funciilor
d
i
pe aceste intervale se vor determina bazele caracteristice.
Problem rezolvat
S se determine bazele i intervalele caracteristice pentru urmtorul
model:
i
i
JATEK 2005/3/11 10:29 page 142 #142
i
i
i
i
i
i
142 6.2.2. Parametrizarea funciei de scop
_

_
f(x) = x
1
+x
2
x
3
+ 2x
4
min
x
1
+x
3
+ 2x
4
= 2
2x
1
+x
2
+ 3x
4
= 4
x R
4
+
, R
Matricea restriciilor este:
A
1
A
2
A
3
A
4
A =
_
1 0 1 2
2 1 0 3
_
, B = (A
3
, A
2
)
1. A
3
A
2

A
1
1 2 + 1
A
4
2 3 4 + 3
2 5 2 + 5
2 5/2
n sectorul 7, avem funciile reale de o variabil real:
d
1
() = + 1, d
1
: R R
d
4
() = 4 + 3, d
4
: R R.
Soluiile ecuaiilor d
i
() = 0, i B = 1, 4 sunt
0
1
=
3
4
,
0
2
= 1.
Pentru studiul semnului, considerm tabelul:
3/4 1
d
1
() + + + + + + 0
d
4
() + + + + 0
Pe baza tabelului, putem scrie:
I. Dac
_
,
3
4
_
atunci d
1
() > 0, d
4
() 0.
II. Dac
_
3
4
, 1
_
atunci d
1
() 0, d
4
() < 0.
III. Dac (1, ) atunci d
1
() < 0, d
4
() < 0.
n cazul III, dac (1, ) din tabelul simplex, citim baza caracteristic
care este B = (A
3
, A
2
) i x
0
= (0 5 2 0) este soluie optim:
f
min
() = 2 + 5.
Dac
_
3
4
, 1
_
, atunci considerm algoritmul simplex primal, A
1
va
vectorul care va intra n baz. Putem scrie:
i
i
JATEK 2005/3/11 10:29 page 143 #143
i
i
i
i
i
i
6.2. Programare liniar parametric 143
2. A
1
A
2

A
3
1 -2 1
A
4
2 -1 2 + 1
2 1 3
1
B = (A
1
, A
2
) este baz caracteristic, dac d
3
() 0 i d
4
() 0.
Rezolvnd sistemul de inecuaii:
_
1 0
2 + 1 0

_
1
2
, 1
_
.
Deci pentru
_
3
4
, 1
_
baza caracteristic este B = (A
1
, A
2
) i
x
0
= (2 1 0 0) este soluie optim:
f
min
() = 3.
Dac
_
,
3
4
_
, revenim la primul tabel simplex i aplicm algorit-
mul simplex primal. Lund vectorul A
1
, ca vector care intr n baz, vom
obine tabelul 2.
Se deduce imediat c, pentru
_
1
2
,
3
4
_
, baza B = (A
1
, A
2
) este baz
caracteristic.
n continuare, studiem cazul pentru care
_
,
1
2
_
i continum
algoritmul simplex n tabelul 2.
Vectorul care va intra n baz va A
4
, deoarece d
4
() > 0 n cazul
conside-rat. Vom obine:
3. A
4
A
2

A
3
1/2 -3/2
43
2
A
1
1/2 1/2
21
2
1 2 2 + 2

Se poate verica uor c d
3
() < 0 i d
1
() < 0, adic B = (A
4
, A
2
)
este baz caracteristic i x
0
= (0 2 0 1) este soluie optim, f
min
() =
2 + 2.
Probleme aplicative
1. Cu ocazia programului de modernizare-reorganizare a unei fabrici de
mobil au fost cumprate maini noi i au fost ninate noi secii. Filiala
i
i
JATEK 2005/3/11 10:29 page 144 #144
i
i
i
i
i
i
144 6.2.2. Parametrizarea funciei de scop
X a ntreprinderii a nceput producia acum doi ani i nu a adus venituri
scontate, motiv pentru care s-a propus necesitatea determinrii planului de
producie cu ajutorul metodelor matematice.
Pentru fabricarea mobilei sunt folosite dou ateliere: T
1
i T
2
. n atelierul
T
1
sunt trei maini: M
1
, M
2
, M
3
. Piesele fabricate n atelierul T
1
sunt
direcionate spre atelierul de asamblare T
2
din depozitul d
1
. Mobila se obine
n urma asamblrii a patru piese, care se pot cumpra i cu bucata. Filiala X,
prin combinarea celor patru piese, realizeaz apte tipuri diferite de mobil
notate cu A, B, C, D, E, F, G.
Se cere organizarea produciei n liala X pe o jumtate de an.
Capacitatea atelierului T
2
depinde n primul rnd de numrul de munci-
tori. n prima jumtate a anului, lucreaz 40 de angajai, pentru a doua
jumtate, se planic s se angajeze nc 20 de muncitori. Deci se poate
arma c, n a doua jumtate a anului, n atelierul T
2
, numrul muncitorilor
va cel puin 40 i cel mult 60. Norma de lucru este de 8 ore pe zi. Timpul
de lucru al unui muncitor din T
2
, pe o jumtate de an, pe baza datelor din
anii precedeni, este 60138 minute. Deci, pentru 40 de muncitori, capaci-
tatea atelierului T
2
pe o jumtate de an este 2 405 520 minute, iar cu 60 de
muncitori 3 608 280 minute. Timpul total de prelucrare a celor patru piese
i cel de asamblare a mobilelor, calculate n minute sunt:
Tip de mobil
i componente
A B C D E F G E
1
E
2
E
3
E
4
Timpul de lucru 612 550 570 510 740 680 500 152 130 100 80
Capacitatea de producie este inuenat de capacitatea de lucru a
mainilor. Timpul total de lucru pe o main nu poate s depeasc ca-
pacitatea de lucru a mainii.
Timpul de lucru, pe cele trei maini, necesar pentru fabricarea unui pro-
dus este dat n urmtorul tabel:
Produse
Maini
A B C D E F G E
1
E
2
E
3
E
4
Capacitatea
de maini
I 18 15 17 13 21 19 11 4 3 3 4 73920
II 11 9 10 14 18 15 16 3 2 3 4 73920
III 19 16 16 14 18 17 12 3 3 4 3 73920
Depozitul d
1
, n patru zile, poate s furnizeze spre atelierul de asamblare
T
2
, cel mult 28 000 piese fabricate n atelierul T
1
. La organizarea produciei,
i
i
JATEK 2005/3/11 10:29 page 145 #145
i
i
i
i
i
i
6.2. Programare liniar parametric 145
trebuie luat n considerare ca necesarul pieselor s nu depeasc 980 000
buci (140 28000/4) (140 zile de lucru).
Numrul pieselor fabricate i numrul pieselor necesare pentru asam-
blarea mobilierelor sunt prezentate n tabelul urmtor:
Tip de mobil
i componente
A B C D E F G E
1
E
2
E
3
E
4
Numr de piese 98 85 87 60 65 50 72 20 16 16 12
ntreprinderea Y , care se ocup cu vnzarea mobilierului, solicit din
toate cele apte tipuri de mobilier cte 1000 de buci. ntreprinderea Y a mai
comandat, n urma unei negocieri ulterioare, mobilier, dup cum urmeaz:
200 buc. din A, 100 buc. din B, 100 buc. din C, 200 buc. din D, 300 buc.
din E, 500 buc. din F, 300 buc. din G i, de asemenea, un numr de piese
de mobilier: cel puin 60 buc. piese de tip E
1
, cel puin 50 buc. de tip E
2
,
cel puin 40 buc. de tip E
3
, cel puin 40 buc. de tip E
4
.
innd cont de cererea de pe pia, ntreprinderea Y a impus fabricii ca,
pe durata celor ase luni, s asigure mobilier de tipul E, F i G, n total,
cel puin att ct transport din tipurile A, B, C i D, n total. Iar din
piesele E
1
i E
2
(deoarece sunt mai cutate de ctre cumprtori), n total,
s transporte la beneciar att ct transport din E
3
i E
4
, n total.
Se cere planicarea produciei, astfel nct preul total brut s e maxim.
Datele necesare planicrii sunt prezentate n tabelul urmtor:
Ch. T
1
Cheltuieli T
2
Produse
Pre
contractat
Chelt.
totale
Ch.
materii
Salarii
Salarii
ore supl.
ntre-
inere
Ch.
totale
Cost de
fabr.
Bene-
ficiu
A 10221 6415 2090 143 22 41 198 8909 1312
B 9144 5832 1770 121 19 35 176 7953 1191
C 9631 6064 1953 137 21 39 186 8400 1231
D 6464 4020 1182 97 15 28 122 5464 1000
E 8722 5790 1552 131 19 40 166 7698 1024
F 5465 3423 863 84 12 24 86 4492 973
G 8207 5421 1552 139 21 40 111 7284 923
E
1
2400 1412 420 38 6 8 52 1936 464
E
2
2118 1321 382 36 12 8 48 1807 311
E
3
2020 1261 420 33 6 8 42 1770 250
E
4
2100 1366 382 36 12 8 36 1840 260
S se determine structura produselor fabricate care asigur un beneciu
maxim!
Cum se modic structura programului, dac n urmtoarele ase luni
numrul muncitorilor din atelierul T
2
va crete?
Notnd cu x
i
, i = 1, 7 numrul de mobilier fabricat din cele apte tipuri
i
i
JATEK 2005/3/11 10:29 page 146 #146
i
i
i
i
i
i
146 6.2.2. Parametrizarea funciei de scop
i cu y
i
, i = 1, 2 numrul de piese care vor vndute la bucat, se poate
formula urmtorul model:
_

_
f(x) = 1312x
1
+ 1191x
2
+ 1231x
3
+ 1000x
4
+ 1024x
5
+ 973x
6
+ 923x
7
+
+464y
1
+ 311y
2
+ 250y
3
+ 260y
4
max
612x
1
+ 550x
2
+ 570x
3
+ 510x
4
+ 740x
5
+ 680x
6
+ 500x
7
+
+152y
1
+ 130y
2
+ 100y
3
+ 80y
4
3608280
18x
1
+ 15x
2
+ 17x
3
+ 13x
4
+ 21x
5
+ 19x
6
+ 11x
7
+
+4y
1
+ 3y
2
+ 3y
3
+ 4y
4
73920
11x
1
+ 9x
2
+ 10x
3
+ 14x
4
+ 18x
5
+ 15x
6
+ 16x
7
+
+3y
1
+ 2y
2
+ 3y
3
+ 4y
4
73920
19x
1
+ 16x
2
+ 16x
3
+ 14x
4
+ 18x
5
+ 17x
6
+ 12x
7
+
3y
1
+ 3y
2
+ 4y
3
+ 3y
4
73920
x
1
+x
2
+x
3
+x
4
x
5
x
6
x
7
0
y
1
y
2
+y
3
+y
4
= 0
200 x
1
1000, 100 x
2
1000, 100 x
3
1000,
200 x
4
1000, 300 x
5
1000, 500 x
6
1000,
300 x
7
1000, 60 y
1
1000, 50 y
2
1000,
40 y
3
1000, 40 y
4
1000, 0 1202760.
Este un model de programare parametric. Planul optim este determinat
n funcie de numrul angajailor din atelierul de asamblare [?].
Problem aplicativ pentru parametrizarea funciei de scop
Fie o ntreprindere X care se ocup cu fabricarea centralelor telefonice
electronice. Asamblarea pieselor componente i a centralei se realizeaz n
ateliere din oraele A, B, precum i n unele ateliere ale intreprinderii X.
Asamblarea centralelor se face e din piesele fabricate n aceste ateliere, e
din piese importate.
Se cere planicarea produciei, astfel nct ntreprinderea X s obin un
beneciu maxim.
Preul de fabricaie i de vnzare este dat n tabelul de mai jos:
Pentru asamblarea unor tipuri sunt necesare urmtoarele piese "cross-
bar":
i
i
JATEK 2005/3/11 10:29 page 147 #147
i
i
i
i
i
i
6.2. Programare liniar parametric 147
Tip CA 102 CA 41 CA 1001 CA 42/B CA 20
Pre vnzare
(un_mon/buc)
450 120 500 390 100
Cost total
(un_mon/buc)
370 90 400 320 70
Venit
(un_mon/buc)
80 30 100 70 30
Tip CA 102 CA 41 CA 1001 CA 42/B CA 20
K
1
1 1

K
2
1 1

K
3
1

K
4
1

1 1
K
5

2 1 1
K
6

2 2

K
7

1 1

Comenzile pentru tipurile fabricate sunt 3, 5, 5, 0, respectiv 10 buc.


innd cont de producia atelierelor n care se fabric comutatoarele, re-
spectiv numrul pieselor importate, cantitile disponibile sunt urmtoarele:
Tip K
1
K
2
K
3
K
4
K
5
K
6
K
7
Cantitate 28 20 8 30 47 27 15
Piesa notat cu K
5
se import de la o rm suedez i preul se va
modica n timpul perioadei analizate, fapt ce inueneaz att cheltuielile,
ct i beneciul.
S se analizeze cum inuneaz aceast modicare de pre structura pro-
gramului optim de producie!
Dac notm cu x
i
cantile fabricate din ecare tip de central telefonic,
iar variaia beneciului cu parametrul , atunci modelul matematic este:
i
i
JATEK 2005/3/11 10:29 page 148 #148
i
i
i
i
i
i
148 6.2.2. Parametrizarea funciei de scop
_

_
f(x) = 8x
1
+ 3x
2
+ (10 + 2)x
3
+ (7 +)x
4
+ (3 +)x
5
max
x
1
+x
2
28
x
1
+x
2
20
x
1
8
x
1
+x
3
+x
4
30
2x
3
+x
4
+x
5
47
2x
3
+x
4
27
x
3
+x
4
15
x
1
3, x
2
5, x
3
5, x
4
0, x
5
10.
Rezolvnd problema cu metoda simplex, intervalele caracteristice vor :
(, 7], [7, 3], [3, +). Pentru = 3 vom avea patru soluii bazice
optime alternative, iar n intervalul [3, +) vom avea dou soluii optime.
Conform acestora, structura produciei optimale poate scris n urmtorul
tabel:
Variaia venit
(unitate monetar)
CA 102 CA 41 CA 1001 CA 42/B CA 20
1. 70 i mai puin 8 12 5 0 10
2. [ 70, 30] 8 12 5 10 10
3. 30 8 12 12 3 10
4. 30 i peste (1) 8 12 12 3 20
5. 30 i peste (2) 8 12 5 10 27
Beneciile pe tipuri sunt: 180 + 20; 250 + 30; 160; 301 + 47 (unitate
monetar).
Se poate observa c, dac nu are loc o modicare de pre, atunci ben-
eciul total este de 301 uniti monetare. Dac, n urma modicrii de
pre, rezult o scdere a beneciului de 70 uniti monetare sau mai mare,
atunci fabricarea produselor care conin piese de import nu sunt rentabile. O
scdere a beneciului cu 30 uniti monetare atrage dup sine njumtirea
beneciului total.
Vom putea realiza un plan real de producie, dac variaia preului de
importare a piesei K
5
va produce o scdere mai mic de 30 uniti monetare
a beneciului pe centrale.
n acest caz, combinaia liniar convex a structurilor de producie, aate
n rndurile 4 i 5 ale tabelului, este optim. Dac variaia preului este
convenabil, atunci aceast structur aduce beneciul maxim.
i
i
JATEK 2005/3/11 10:29 page 149 #149
i
i
i
i
i
i
6.3. Programare hiperbolic 149
Probleme propuse
S se determine bazele i intervalele caracteristice pentru problemele de
mai jos!
1.
_

_
f(x) = x
1
+x
2
max
x
1
+ 3x
2
3
2x
1
3x
2
3
x R
2
+
, R
2.
_

_
f(x) = x
1
+x
2
+ 2x
3
+x
4
min
x
1
2x
3
x
4
= 2
x
2
x
3
+x
4
= 1 +
x R
4
+
, R
3.
_

_
f(x) = (3 )x
1
(2 +)x
2
min
2x
1
+ 5x
2
10
6x
1
+x
2
12
x
1
x
2
1
x R
2
+
, R
4.
_

_
f(x) = (2 )x
1
+ (4 + 2)x
2
max
x
1
+x
2
6
2x
1
x
2
4
x R
2
+
, R
5.
_

_
f(x) = x
1
+ 2x
2
+ 3x
3
+ 4x
4
+ 5x
5
max
2x
1
+x
2
+x
3
+ 3x
4
+x
5
= 18 3
x
1
+ 2x
2
+x
3
+x
4
+ 3x
5
= 12 + 4
x
j
0, 1 j 5, R
6.3 Programare hiperbolic
Fie problema de optimizare:
_

_
f(x) =
(c, x) +c
0
(d, x) +d
0
max
Ax b
x 0,
(6.10)
i
i
JATEK 2005/3/11 10:29 page 150 #150
i
i
i
i
i
i
150 6. Modele rezolvabile cu algoritmul simplex
unde A /
m,n
(R), b R
m
, f : D R
n
R, ( , ) : R
n
R
n
R este
produs scalar euclidean.
Deoarece f este continu, dac (d, x) +d
0
> 0 sau (d, x) +d
0
< 0 pentru
orice soluie posibil x, vom presupune c are loc una din cele dou inegaliti
.
Fie:
S
+
= x D [ Ax b, x 0, (d, x) +d
0
> 0,
S

= x D [ Ax b, x 0, (d, x) +d
0
< 0.
Teorema 6.3.1. f

S
+
este cvasiconvex i f

este cvasiconcav.
Demonstraie. Vom presupune c pentru x
1
, x
2
S avem f(x
1
) < f(x
2
),
adic are loc:
C
1
D
1
not
=
(c, x
1
) +c
0
(d, x
1
) +d
0
<
(C, x
2
) +c
0
(d, x
2
) +d
0
not
=
C
2
D
2
C
1
D
2
< C
2
D
1
(6.11)
i vom arta c pentru orice x [x
1
, x
2
], unde x = x
1
+(1)x
2
, [0, 1]
are loc relaia: f(x) < f(x
2
).
Putem scrie:
f(x) =
(c, x
1
+ (1 )x
2
) +c
0
(d, x
1
+ (1 )x
2
) +d
0
=
(c, x
1
) + (1 )(c, x
2
) +c
0
(d, x
1
) + (1 )(d, x
2
) +d
0
=
=
[(c, x
1
) (c, x
2
)] + (c, x
2
) +c
0
[(d, x
1
) (d, x
2
)] + (d, x
2
) +d
0
=
(C
1
C
2
) +C
2
(D
1
D
2
) +D
2
=
=
C
1
+ (1 )C
2
D
1
+ (1 )D
2
<
C
2
D
2
= f(x
2
)
Inegalitatea are loc, deoarece D
2
0 i D
1
+(1 )D
2
> 0 i astfel putem
scrie:
C
1
D
2
+ (1 )C
2
D
2
< D
1
C
2
+ (1 )D
2
C
2
(C
1
D
2
D
1
C
2
) < 0
ceea ce este relaia (6.11), adic funcia este cvasiconvex.
n demonstraie, s-au folosit proprietile produsului scalar.
n continuare, avem de artat c funcia obiectiv f este strict cvasicon-
cav.
Vom considera funcia:
f(x) =
(c, x) c
0
(d, x) +d
0
, unde (d, x) +d
0
> 0.
Folosind un raionament analog, se poate arta c funcia (f) este cvasi-
convex.
i
i
JATEK 2005/3/11 10:29 page 151 #151
i
i
i
i
i
i
6.3. Programare hiperbolic 151
n consecin, funcia obiectiv este funcie cvasimonoton i se poate
determina soluia optim a problemei cu algoritmul simplex.
Matematicianul Martos Bela [Mar] a fost primul care a adaptat algoritmul
simplex pentru rezolvarea numeric a modelelor hiperbolice. El a introdus
aceast noiune.
Forma standard a problemei de optimizare hiperbolic (6.11) este:
_

_
f(x) =
(d, x) +c
0
(d, x) +d
0
max
Ax +I
m
x

= b
X R
n
+
, x

R
m
+
,
(6.12)
unde se consider (d, x) +d
0
> 0.
Tabelul simplex propus de Martos are forma:
B
0
x

A b
c

x
0
d

d
0
Soluia bazic iniial este x
1
=
n
R
n
pentru care f(x
1
) =
c
0
d
0
.
O soluie x
r
la iteraia de ordinul r este o soluie mai bun pentru modelul
considerat dac are loc relaia:
f(x
1
) f(x
r
) 0

c
0
d
0

(c, x
r
) +c
0
(d, x
r
) +d
0
0.
Inegalitatea este adevrat dac:
c
0
((d, x
r
) +d
0
) d
0
((c, x
r
) +c
0
) 0
deoarece d
0
> 0 i (d, x
r
) +d
0
> 0 prin ipotez.
Deci soluia este mbuntit dac
x
r
(c
0
d d
0
c) 0.
Notnd cu t

= (c
0
, d) (d
0
, c) R
n
, condiia de optim pentru probleme
hiperbolice este t

0.
Tabelul simplex primal adaptat este alctuit din 10 sectoare:
i
i
JATEK 2005/3/11 10:29 page 152 #152
i
i
i
i
i
i
152 6. Modele rezolvabile cu algoritmul simplex
1 2 d c
3 6 7 8 9
4 5 8 9
10
Completarea tabelului simplex primal adaptat:
sectoarele 1, 2, 3, 4, 6 se completeaz ca i n cazul tabelelor simplex
primal;
n secorul 8 se pun componentele vectorului d;
n sectorul 8 se va scrie valoarea d
0
;
n sectorul 9 vor scrise componentele vectorului c;
n sectorul 9 se va scrie valoarea c
0
;
n sectorul 5 vom scrie valoarea funciei de scop pentru soluia actual,
adic valoarea c
0
/d
0
;
n sectorul 7 vor scrise componentele vectorului t

pe care le calculm
astfel:
t

i
= c
0
d
i
(d
0
) c
i
, i B
n cazul, n care soluia nu este optim, se va completa sectorul 10
folosind procedura de la algoritmul simplex primal.
Observaie. n urma aplicrii algoritmului simplex adaptat, ne vom ntlni
cu una din urmtoarele situaii:
(a) t

i
0 pentru orice i B, ceea ce nseamn c soluia bazic este
optim.
(b) Dac i B astfel nct t

i
> 0,
atunci dac pentru orice j B
ij
0 atunci nu admite soluie optim
problema considerat,
altfel se va determina elementul pivot folosind procedura simplex pri-
mal cunoscut.
i
i
JATEK 2005/3/11 10:29 page 153 #153
i
i
i
i
i
i
6.3. Programare hiperbolic 153
Problem aplicativ
n cazul planicrii planului de producie, n scopul obinerii unui prot
maxim, se construiete modelul liniar:
_

_
f(x) =
n

j=1
c
j
x
j
max
n

j=1
a
ij
x
j
b
i
, i = 1, m
x
j
0, j = 1, n
Dac ne intereseaz un plan de producie pentru care ctigul unitar rapor-
tat la cheltuielile de producie s e maxim, atunci se obine un model de
programare hiperbolic. Funcia obiectiv va :
g(x) =
n

j=1
d
j
x
j
n

j=1
c
j
x
j
+c
0
unde d
j
reprezint preul de vnzare unitar a produsului x
j
, j = 1, n, iar c
j
cheltuielile directe de producie. c
0
reprezint valoarea cheltuielilor plani-
cate care nu pot distribuite.
Probleme rezolvate
1.
_

_
f(x) =
30x
1
+ 19x
2
10x
1
+ 9x
2
+ 4
max
40x
1
+ 20x
2
280
20x
1
+ 50x
2
300
2x
1
12
x R
2
+
i
i
JATEK 2005/3/11 10:29 page 154 #154
i
i
i
i
i
i
154 6. Modele rezolvabile cu algoritmul simplex
Forma standard este:
_

_
f(x) =
30x
1
+ 19x
2
10x
1
+ 9x
2
+ 4
max
40x
1
+ 20x
2
+x
4
= 280
20x
1
+ 50x
2
+x
3
= 300
2x
1
+x
5
= 12
x R
5
+
A
1
A
2
A
3
A
4
A
5
A =
_
_
40 20 1 0 0
20 50 0 1 0
2 0 0 0 1
_
_
1. A
3
A
4
A
5
d c
A
1
40 20 2 120 10 30
A
2
20 50 0 76 9 19
280 300 12 0 -4 0
7 15 6
2 A
3
A
4
A
1
d c
A
5
-20 -10 1/2 -60 -5 -15
A
2
20 50 0 -404 9 19
40 180 6 180/64 -64 -180

Valorile lui t

sunt negative, deci soluia este optim:


t

= (60, 404) 0
x
0
= (6 0)
f
max
=
180
64
2.
_

_
f(x) =
2x
1
+ 2x
2
+ 4x
3
+x
4
+ 1
x
1
+x
2
+ 2x
3
+ 5
max
x
1
+x
2
x
3
+x
4
6
x
1
+x
3
10
x
3
+x
4
8
x R
4
+
i
i
JATEK 2005/3/11 10:29 page 155 #155
i
i
i
i
i
i
6.3. Programare hiperbolic 155
Forma standard a problemei este:
_

_
f(x) =
2x
1
+ 2x
2
+ 4x
3
+x
4
+ 1
x
1
+x
2
+ 2x
3
+ 5
max
x
1
+x
2
x
3
+x
4
+x
5
= 6
x
1
+x
3
+x
6
= 10
x
3
+x
4
+x
7
= 8
x R
7
+
A
1
A
2
A
3
A
4
A
5
A
6
A
7
A =
_
_
1 1 -1 1 1 0 0
1 0 1 0 0 1 0
0 0 1 1 0 0 1
_
_
1. A
5
A
6
A
7
d c
A
1
1 1 0 9 1 2
A
2
1 0 0 9 1 2
A
3
-1 1 1 18 2 4
A
4
1 0 1 5 0 1
6 10 8 1/5 -5 -1
10 8
2. A
5
A
6
A
3
d c
A
1
1 1 0 9 1 2
A
2
1 0 0 9 1 2
A
7
1 -1 1 -18 -2 -4
A
4
2 -1 1 3 -2 -3
14 2 8 33/21 -21 -33
14
3. A
2
A
6
A
3
d c
A
1
1 1 0 0 0 0
A
5
1 0 0 -9 -1 -2
A
7
1 -1 1 -27 -3 -6
A
4
2 -1 1 -1 -4 -7
14 2 8 61/35 -35 -61

i
i
JATEK 2005/3/11 10:29 page 156 #156
i
i
i
i
i
i
156 6. Modele rezolvabile cu algoritmul simplex
Avem t

= (0 9 27 1) 0, deci x
0
= (0 14 8 0) este soluie
optim, f
max
= 61/35.
Observaie.
(1) n general, este dicil vericarea condiiei (d, x) +d
0
< 0 sau (d, x) +
d
0
> 0 pentru x S. Dac evalum greit semnul numitorului, atunci n
tabelul simplex valoarea lui d
0
va pozitiv (valoarea lui d
0
trebuie s
e negativ). n aceast situaie elementele din sectorul 9 i 9 trebuie
nmulite cu (-1) i poate aplicat n continuare algoritmul simplex
adaptat.
(2) Modelul (6.10) prin utilizarea unor substituii convenabile poate re-
dus la un model de optimizare liniar.
n acest scop notm:
t =
1
(d, x) +d
0
de unde avem:
t(d, x) +td
0
= 1.
Dac notm cu x = tx atunci modelul (6.10) devine:
_

_
f( x) = (c, x) +c
0
t max
A x bt 0
d x +td
0
= 1
x 0, t 0
(6.13)
ceea ce este un model de optimizare liniar cu (m+1) restricii i (n+1)
variabile.
Teorem. Dac x, t este soluie optim pentru problema de optimizare
(6.13), atunci x =
x
t
este soluie optim pentru modelul de optimizare
hiperbolic (6.10), iar valorile optime sunt egale.
(3) Dac trebuie determinat valoarea minim a funciei de scop, se for-
muleaz problema:
_

_
f(x) =
(c, x) +c
0
(d, x) +d
0
min
Ax b
x 0
i
i
JATEK 2005/3/11 10:29 page 157 #157
i
i
i
i
i
i
6.4. Programare multicriterial 157
atunci numrtorul se va nmuli cu (-1) i se va rezolva problema:
_

_
g(x) = f(x) =
(c, x) c
0
(d, x) +d
0
max
Ax b
x 0
3. Problem rezolvat
_

_
f(x) =
4x
1
+x
2
+ 2x
3
+ 10
2x
1
+x
2
+ 3x
3
15
max
x
1
+x
3
= 30
x
3
20
x
1
+x
2
+x
3
60
x R
3
+
Vericarea condiiei de pozitivitate pe mulimea soluiilor posibile ale numi-
torului este o problem dicil.
Pentru vericarea condiiei de pozitivitate, vom aduna restriciile.
Avem astfel:
x
2
+ 3x
3
110.
Astfel putem scrie:
2x
1
+x
2
+ 3x
3
15 x
2
+ 3x
3
15 95
deci numitorul veric condiia de pozitivitate.
Problema poate rezolvat cu metodele prezentate.
6.4 Programare multicriterial
Modelele prezentate n capitolele anterioare au urmrit un singur scop
(obinerea unui beneciu maxim sau minimizarea cheltuielilor totale etc.).
n aplicaii practice, pot ntlnite deseori situaii n care trebuie ur-
mrite mai multe obiective n acelai timp. Dac, pe lng obinerea unui
prot maxim, trebuie inut cont ca efectul asupra mediului s e minim sau,
n pro-blema planicrii produciei, pe lng obinerea unui prot maxim,
factorul de decizie urmrete minimizarea resurselor, reducerea costurilor
de depozitare, meninerea unui prot stabil, asigurarea preurilor stabile,
creterea prestigiului, atunci se obine un model cu mai multe funcii de
scop.
i
i
JATEK 2005/3/11 10:29 page 158 #158
i
i
i
i
i
i
158 6. Modele rezolvabile cu algoritmul simple
Pentru prima dat, un astfel de model a fost formulat la nceputul anilor
50 de ctre H.W. Kuhn i A.W. Tucker [Kuh].
Peste zece ani, A. Charnes i W.W. Cooper [Char] au deschis calea spre
cercetarea programrii de scop (goal programming). Un studiu intensiv al
programrii multicriteriale ncepe n cea de a doua parte a anilor 70.
Deniia 6.4.1. Problema de optimizare cu restricii:
_
f(x) max / min
x S
unde f : D R
n
R
q
iar S este o mulime determinat de un numr
nit de restricii, date asupra variabilelor independente se numete model de
optimizare multicriterial cu restricii.
Deniia 6.4.2.
_

_
f(x) = Cx max / min
Ax = b
x 0
unde C /
q,n
(R), f : D R
n
R
q
, A /
m,n
, b R
m
se numete model
de optimizare multicriterial, liniar.
Mulimea R
n
nu este o mulime total ordonat, astfel noiunea de optim
(minim, maxim) nu poate denit ca i n cazul spaiului real unidimen-
sional. n studiul modelelor multicriteriale, o prim problem a reprezentat-o
formularea noiunii de optim. Noiunea des folosit i extrem de util este
cea introdus de Pareto pe care o vom prezenta n continuare.
Vom nota mulimea soluiilor posibile cu:
S
p
= x
p
[ Cx
p
Cx, x S
unde:
S = x R
n
[ Ax = b, x 0.
Determinarea mulimii S, mai ales n cazul n care este mulime mrginit nu
este dicil. Determinarea mulimii S
p
reprezint o problem mai complex,
deoarece nu neaprat exist un punct x
p
pentru care Cx
p
> Cx pentru orice
x S.
Pentru studiul rezolvabilitii problemelor multicriteriale este necesar
introducerea noiunii de soluie Pareto-optim sau soluie ecient, difer-
it de noiunea de soluie optim studiat pn acum. Aceast noiune a
fost introdus n economie i se bazeaz pe urmtorul principiu: factorul de
decizie ia o decizie dnd prioritate acelor decizii pentru care este adevrat
i
i
JATEK 2005/3/11 10:29 page 159 #159
i
i
i
i
i
i
6.4. Programare multicriterial 159
c nu exist alta mai bun, n sensul c varianta nou este la fel de bun, i
totui din cel puin un aspect este indiscutabil mai bun.
Dac se poate realiza o "mbuntire de tip Pareto", atunci acea decizie
nu poate considerat optim.
Deniia 6.4.3. Se numete soluie ecient sau soluie Pareto-optim orice
punct x
p
S
p
pentru care nu exist un alt punct x

S
p
, x

,= x
p
, astfel nct
s avem f(x

) f(x
p
) i f(x

) ,= f(x
p
), adic nu exist x

S
p
astfel nct
f
j
(x

) f
j
(x
p
) pentru orice j = 1, q dar pentru cel puin un j 1, . . . , q
are loc f
j
(x

) > f
j
(x
p
).
J. Philip n 1972 [Phi] formuleaz urmtorul rezultat:
Teorema 6.4.1. Fie f
k
= (c
k
, x), k 1, . . . , q xat, o component a
funciei de scop din modelul (6.4.2).
Dac x
0
S este o soluie optim unic a problemei:
_

_
f
k
(x) max
Ax = b
x 0
atunci x
0
este soluie ecient a problemei (6.4.2)
Demonstraie. Pe baza deniiei 6.4.3, demonstraia este imediat.
Se poate formula o condiie sucient de existen a punctului ecient.
Teorema 6.4.2. Fie modelul (6.4.2) i funcia g(x) =
q

k=1
f
k
(x).
Dac modelul:
_

_
g(x) max
Ax = b
(c
k
, x) (c
k
, x
e
)
x 0
admite soluie optim i g
max
(x) = g(x
e
), atunci x
e
este punct ecient.
Demonstraie. Dac x
0
este soluie optim pentru modelul considerat, atunci
este soluie posibil, adic x
0
S, unde:
S = x R
n
[ Ax = b, Cx Cx
e
, x 0
i Cx
0
Cx
e
.
Dar, deoarece g
max
(x) = g(x
e
) Cx
0
= Cx
e
, rezult c nu exist n S
soluie mai bun dect x
e
.
i
i
JATEK 2005/3/11 10:29 page 160 #160
i
i
i
i
i
i
160 6. Modele rezolvabile cu algoritmul simple
Problem rezolvat
_

_
f(x) = Cx =
_
9x
1
+ 16x
2
x
1
+x
2
_
max
x
1
+ 4x
2
8
2x
1
+ 3x
2
9
x
1
0, x
2
0
Vom determina mulimea punctelor eciente pe cale grac.
Analiznd gura 6.1, putem observa:
A(12/5, 7/5)
B(9/2, 0)
(d
2
)
(d
1
)
0
3
2
1
x
2
8
x
1
Figura 6.1:
x
1
= A
_
12
5
,
7
5
_
este soluie optim unic pentru f
1
(x) = 9x
1
+ 16x
2
i punc-
tul x
2
= B
_
9
2
, 0
_
este soluie optim n cazul n care considerm problema
cu f
2
(x) = x
1
+ x
2
max . Dintre cele dou soluii, pe oricare am alege-o
ca soluie pentru modelul multicriterial, ar n defavoarea celeilalte funcii
obiectiv. Pentru orice alt soluie posibil, valoarea funciei de scop a prob-
lemei considerate va avea cel mult valorile lui f(x
1
), f(x
2
) sau valori mai
mici.
Prin urmare punctele x
1
respectiv x
2
sunt soluii eciente.
Folosind teorema 6.4.2, s se verice dac x
1
este punct ecient!
i
i
JATEK 2005/3/11 10:29 page 161 #161
i
i
i
i
i
i
6.4. Programare multicriterial 161
Construim modelul:
_

_
g(x) = f
1
(x) +f
2
(x) = 10x
1
+ 17x
2
max
x
1
+ 4x
2
8
2x
1
+ 3x
2
9
9x
1
+ 16x
2
f
1
(x
1
) = 44
x
1
+x
2
f
2
(x
1
) = 19/5
x
1
, x
2
0
Forma standard a problemei este:
_

_
g(x) = 10x
1
17x
2
min
x
1
+ 4x
2
+x
3
= 8
2x
1
+ 3x
2
+x
4
= 9
9x
1
+ 16x
2
x
5
= 44
x
1
+x
2
x
6
= 19/5
x
j
0, j = 1, 6
Rezolvm cu metoda celor dou faze. Astfel, n prima faz de lucru, se
rezolv cu algoritmul simplex primal modelul:
_

_
h(x) = u
1
+u
2
min
x
1
+ 4x
2
+x
3
= 8
2x
1
+ 3x
2
+x
4
= 9
9x
1
+ 16x
2
x
5
+u
1
= 44
x
1
+x
2
x
6
+u
2
= 19/5
x
j
0, j = 1, 6, u
i
0, i = 1, 2
A
1
A
2
A
3
A
4
A
5
A
6
u
1
u
2
A =
_
_
_
_
1 4 1 0 0 0 0 0
2 3 0 1 0 0 0 0
9 16 0 0 -1 0 1 0
1 1 0 0 0 -1 0 1
_
_
_
_
Efectund calculele, se obin urmtoarele tabele simplex:
i
i
JATEK 2005/3/11 10:29 page 162 #162
i
i
i
i
i
i
162 6. Modele rezolvabile cu algoritmul simple
1. A
3
A
4
u
1
u
2

A
1
1 2 9 1 10
A
2
4 3 16 1 17
A
5
0 0 -1 0 -1
A
6
0 0 0 -1 -1
8 9 44 19/5 239/5
2 3 44/16 19/5
2. A
2
A
4
u
1
u
2

A
1
1/4 5/4 5 3/4 23/4
A
3
1/4 -3/4 -4 -1/4 -17/4
A
5
0 0 -1 0 -1
A
6
0 0 0 -1 -1
2 3 12 9/5 69/5
8 12/5 12/5 12/5
3. A
2
A
4
A
1
u
2

u
1
-1/20 -1/4 1/5 -3/20 -23/20
A
3
9/20 1/4 -4/5 7/20 7/20
A
5
1/20 1/4 -1/5 3/20 3/20
A
6
0 0 0 -1 -1
7/5 0 12/5 0 0
28/9 0 - 0
4. A
2
A
4
A
1
A
3

u
2
-9/7 -5/7 16/7 20/7 -1
A
3
-1/7 1/7 1/7 3/7 0
A
6
9/7 5/7 -16/7 -20/7 0
7/5 0 12/5 0 0
-
Faza a doua de lucru:
1. A
2
A
4
A
1
A
3

A
5
-1/7 1/7 1/7 3/7 1
A
6
9/7 5/7 -16/7 -20/7 1
7/5 0 12/5 0 -239/5
- 0 84/5 0
2. A
2
A
5
A
1
A
3

A
4
1 7 -1 -3 -7
A
6
2 5 -3 -5 -4
7/5 0 12/5 0 -239/5

i
i
JATEK 2005/3/11 10:29 page 163 #163
i
i
i
i
i
i
6.4. Programare multicriterial 163
x
0
= x
1
= (12/5, 7/5)
g
max
=
_
239
5
_
= g(x
1
) = g(x
0
) =
239
5
deci x
1
este punct ecient.
Mulimea soluiilor Pareto-optimale este innit i generarea acestei
mulimi, n general, nu d soluie pentru problema decizional (v. Stahl
[Sta] (1991)).
Metodele numerice pentru determinarea soluiilor eciente sunt:
(a) metoda ponderilor;
(b) metoda lexicograc;
(c) metoda marginilor;
(d) principiul programrii a compromisului.
Aceste metode asociaz problemei multicriteriale o problem de programare
liniar obinuit.
(a) Metoda ponderilor
Cu aceast metod se asociaz ponderi de importan componentelor
funciei vector f.
Astfel se urmrete optimizarea funciei:
g(x) =
q

i=1
p
i
f
i
(x) max
pe mulimea soluiilor posibile.
Determinarea ponderilor p
i
, i = 1, q n general este subiectiv. Problema
care apare n general este legat de faptul c funciile f
k
, k = 1, q sunt de
diferite mrimi i dimensiuni i sunt denite pe diferite domenii.
Pentru nlturarea acestei deciene, se recomand folosirea funciei de
scop:
g(x) =
q

i=1
p
i
(c
i
, x) m
i
M
i
m
i
unde m
i
= min
x
f
i
(x), M
i
= max
x
f
i
(x).
Cu metoda ponderilor, problema multicriterial se transform ntr-o pro-
blem de optimizare liniar cu parametri (parametrizarea funciei de scop).
i
i
JATEK 2005/3/11 10:29 page 164 #164
i
i
i
i
i
i
164 6. Modele rezolvabile cu algoritmul simple
_

_
g(x) =

q
i=1
p
i
f
i
(x) min/ max
Ax = b
x 0
(6.14)
Teorema 6.4.3. Soluia problemei (6.14) cu parametri p
i
> 0, i = 1, q xai
este soluie ecient pentru problema multicriterial (6.4.2).
Demonstraie. Presupunem c soluia problemei (6.14) notat cu x
0
nu este
soluie ecient, adic exist o soluie posibil x, astfel nct s avem:
(c
k
, x) (c
k
, x
0
) pentru orice k = 1, q
i exist cel puin un k 1, . . . , q astfel nct:
(c
k
, x) > (c
k
, x
0
).
nmulind cu parametri p
k
, corespunztori i adunndu-le, avem:
q

i=1
p
i
(c
k
, x) >
q

i=1
p
i
(c
k
, x
0
)
adic x
0
nu este soluie optim pentru modelul (6.14) prin urmare am ajuns
n contradicie cu ipoteza.
Teorema 6.4.4. Fie x
0
R
n
un punct care veric inegalitile Ax = b,
x 0. x
0
este punct ecient pentru problema (6.4.2), dac i numai dac
exist p
0
= (p
0
1
, . . . , p
0
q
) > 0 astfel nct x
0
pentru p = p
0
s e soluie optim
pentru problema (6.14).
Pentru studiul procedurilor computaionale se recomand lucrrile: [Phi],
[Ecke], [Gal], [Ise], [Cha].
Sunt lucrri, cum ar [Char], [Eck], n care se studiaz problema dac
o soluie posibil x
0
a modelului (6.4.2) este sau nu soluie ecient i for-
muleaz criterii de existen a soluiilor eciente.
Teorema 6.4.5. Fie x
0
o soluie posibil a problemei (6.4.2).
Considerm problema:
_

_
d
0
=
q

k=1
d
k
max
(c
k
, x) d
k
= (c
k
, x
0
), k = 1, q
Ax = b
x 0, d
k
0, k = 1, q
Sunt adevrate urmtoarele armaii:
i
i
JATEK 2005/3/11 10:29 page 165 #165
i
i
i
i
i
i
6.4. Programare multicriterial 165
(a) x
0
este soluie ecient, dac i numai dac d
0
= 0;
(b) dac x
0
este soluie optim nebanal, atunci x
0
este soluie ecient;
(c) dac modelul nu are un numr nit de soluii optime, atunci mo-delul
(6.4.2) nu admite soluii eciente.
Probleme propuse
1. S se determine extremele i soluiile eciente problemei:
_

_
f(x) = Cx =
_
_
_
3x
1
+x
2
+ 2x
3
+x
4
x
1
x
2
+ 2x
3
+ 4x
4
x
1
+ 5x
2
+x
3
+ 2x
4
_
_
_
max
2x
1
+x
2
+ 4x
3
+ 3x
4
60
3x
1
+ 4x
2
+x
3
+ 2x
4
60
x
j
0, j = 1, 4
(Admite 9 extreme dintre care 6 sunt soluii eciente)
2. S se determine mulimea punctelor eciente pentru:
_

_
f(x) = Cx =
_
x
1
+ 2x
2
3x
1
x
2
_
max
3x
1
+x
2
9
x
1
+ 3x
2
19
x
1
+x
2
9
x
1
x
2
3
x
j
0, j = 1, 2
(b) Metoda lexicograc
n cazul acestei metode, componentele funciei de scop sunt scrise n or-
dinea prioritilor. Dac avem o singur decizie optim dup componenta cea
mai important, atunci aceasta va soluie optim pentru modelul multicri-
terial. Dac avem optim multiplu, atunci vom alege decizia optim dup ur-
mtoarea component. Continum acest procedeu pn cnd obinem soluia
optim.
i
i
JATEK 2005/3/11 10:29 page 166 #166
i
i
i
i
i
i
166 6. Modele rezolvabile cu algoritmul simple
(c) Metoda marginilor
Se va alege o component a funciei de scop, iar pentru celelalte se vor
stabili margini inferioare "acceptabile". Astfel se va rezolva modelul liniar:
_

_
f
k
(x) = (c
k
, x) max
Ax = b

Cx d,

C /
q1,n
(R), d R
q1
x 0,

C = C c
qj

j=1,n
n general se aplic aceast metod n cazul n care pentru factorul de decizie
doar un simplu scop este prioritar, iar pentru celelalte este de ajuns atingerea
unui nivel minim.
(d) Metoda numeric care se bazeaz pe principiul programrii com-
promisurilor urmrete determinarea unei soluii optime "absolute", soluie
optim pentru toate componentele lui f.
Practic se va determina soluia cea mai apropiat de cea "ideal".
n concluzie, dac se noteaz mulimea valorilor funciei f pe mulimea
soluiilor posibile cu:
V = f(x) [ x S,
atunci putem distinge 4 situaii:
(A) V este mulime ordonat, adic modelul admite optim absolut.
Se aplic algoritmul simplex. n tabelul simplex, sectorul 7 va format
din q coloane (este dat de numrul componentelor lui f).
Dac diferenele d
i
, i B sunt negative n cele q coloane ale sectorului 7,
atunci soluia bazic este optim absolut.
Problem rezolvat
1. S se determine optimul absolut al problemei:
_

_
f(x) = Cx =
_
2x
1
+ 3x
2
x
1
+ 2x
2
+x
3
_
max
x
1
+x
2
+x
3
4
x
1
+ 2x
2
x
3
6
x R
3
+
i
i
JATEK 2005/3/11 10:29 page 167 #167
i
i
i
i
i
i
6.4. Programare multicriterial 167
Forma standard a problemei este:
_

_
f
1
(x) = 2x
1
3x
2
min
f
2
(x) = x
1
2x
2
x
3
min
x
1
+x
2
+x
3
+x
4
= 4
x
1
+ 2x
2
x
3
+x
5
= 6
x R
5
+
A
1
A
2
A
3
A
4
A
5
A =
_
1 1 1 1 0
1 2 -1 0 1
_
Baza B = A
4
, A
5
este baz primal admisibil.
Aplicm algoritmul simplex primal. n ultimele dou coloane sunt cal-
culate diferenele d
i
corespunztoare funciilor de scop. Efectund calculele,
pe rnd, vom obine tabelele:
1. A
4
A
5

A
1
1 1 2 1
A
2
1 2 3 2
A
3
1 -1 0 1
4 6 0 0
4 3
2. A
4
A
2

A
1
1/2 1/2 1/2 0
A
5
-1/2 1/2 -3/2 -1
A
3
3/2 -1/2 3/2 2
1 3 -9 -6
2/3 -
3. A
3
A
2

A
1
1/3 2/3 0 -2/3
A
5
-1/3 1/3 -1 -1/3
A
4
2/3 1/3 -1 -4/3
2/3 10/ 3 -10 -22/3

Diferenele n ultimele dou coloane sunt negative, deci:
x
0
= (0, 10/3, 2/3) este optim absolut f
max
= (10, 22/3).
i
i
JATEK 2005/3/11 10:29 page 168 #168
i
i
i
i
i
i
168 6. Modele rezolvabile cu algoritmul simple
(B) Exist V

V o submulime ordonat. n acest caz problema (6.4.2)


admite optim condiionat.
2. S se arate c urmtorul model are optim condiionat i s se deter-
mine acest optim!
_

_
f
1
(x) = 2x
1
+ 3x
2
max
f
2
(x) = x
1
+ 2x
2
+x
3
max
f
3
(x) = x
2
2x
3
max
x
1
+x
2
+x
3
4
x
1
+ 2x
2
x
3
6
x R
3
+
_

_
f
1
(x) = 2x
1
3x
2
min
f
2
(x) = x
1
2x
2
x
3
min
f
3
(x) = x
2
2x
3
min
x
1
+x
2
+x
3
+x
4
= 4
x
1
+ 2x
2
x
3
+x
5
= 6
x R
5
+
Formulnd forma standard a problemei propuse spre rezolvare, putem
scrie matricea restriciilor:
A
1
A
2
A
3
A
4
A
5
A =
_
1 1 1 1 0
1 2 -1 0 1
_
1. A
4
A
5

A
1
1 1 2 1 0
A
2
1 2 3 2 1
A
3
1 -1 0 1 2
4 6 0 0 0
4 3
2. A
4
A
2

A
1
1/2 1/2 1/2 0 -1/2
A
5
-1/2 1/2 -3/2 -1 -1/2
A
3
3/2 -1/2 3/2 2 5/2
1 3 -9 -6 -3
2/3 -
3. A
3
A
2

A
1
1/3 2/3 0 -2/3 -4/3
A
5
-1/3 1/3 -1 -1/3 1/3
A
4
2/3 1/3 -1 -4/3 -5/3
2/3 10/ 3 -10 -22/3 -14/3

x
0
= (0 10/3 2/3) este optim condiionat, deoarece diferenele d
i
cores-punztoare funciilor de scop d
1
, d
2
sunt negative. Printre diferenele
d
i
cores-punztoare funciei de scop f
3
exist o valoare pozitiv.
i
i
JATEK 2005/3/11 10:29 page 169 #169
i
i
i
i
i
i
6.4. Programare multicriterial 169
f
max
= (10 22/3 14/3)
(C) Mulimea V este parial ordonat, dac sunt puncte eciente pe
mulimea prilor lui S.
(D) V nu este mulime ordonat, dac toate punctele lui S sunt puncte
eciente.
Probleme propuse spre rezolvare
1. S se verice dac problema admite optim absolut!
Punctul x = (0 3 0) este punct ecient pentru acest model?
_

_
f
1
(x) = 3x
1
+ 2x
2
max
f
2
(x) = 2x
1
+x
2
+x
3
max
f
3
(x) = x
1
2x
3
max
x
1
+x
2
+x
3
4
x
1
+ 2x
2
x
3
6
x
j
0, j = 1, 3
2. S se arate c problema admite optim condiionat!
_

_
f
1
(x) = 2x
1
+ 3x
2
+ 2x
3
+ 2x
4
max
f
2
(x) = 4x
1
+ 6x
2
+ 5x
3
+ 4x
4
max
f
3
(x) = x
1
5x
2
x
3
3x
4
max
x
1
+x
2
+x
4
+x
5
= 100
x
2
+x
3
+x
4
+x
6
= 80
x
1
+x
2
+x
3
+x
7
= 50
x
j
0, j = 1, 7
i
i
JATEK 2005/3/11 10:29 page 170 #170
i
i
i
i
i
i
170 6. Modele rezolvabile cu algoritmul simple
i
i
JATEK 2005/3/11 10:29 page 171 #171
i
i
i
i
i
i
Capitolul 7
Problema de transport
n acest capitol vom studia o problem particular de programare liniar.
Pentru prima dat, n 1941, Frank Hitchcock [Hit] a formulat o astfel de
problem pentru organizarea transportului maritim.
7.1 Formularea problemei. Proprieti generale
Din punct de vedere economic, se poate formula urmtoarea problem:
Fie m centre de aprovizionare (depozitare) notate cu A
1
, . . . , A
m
i n
centre de consum (beneciari) notate cu B
1
, . . . , B
n
. Dac un produs omogen
este depozitat n cantitile a
i
, i = 1, m n centrele A
i
, i este cerut de ctre
beneciari n cantitatea b
j
, j = 1, n, iar costurile unitare de transport de la
centrul A
i
la beneciarul B
j
sunt egale cu c
ij
,
atunci se cere s se organizeze transportul astfel nct cheltuielile de
transport s e minime.
Funcia obiectiv va reprezenta cheltuielile totale; prin urmare scopul este
minimizarea acestora.
Dac notm cu x
ij
cantitatea de produs care va transportat de la
furnizorul i la consumatorul j, atunci matematic a problemei este un model
de optimizare liniar cu restricii (vezi paragraful 1.3.).
Problemei propuse i putem un graf orientat, numit reea de transport.
Nodul A se numete nod de intrare n reea, iar nodul B, nod de ieire
din reea.
Deniia 7.1.1. Se numete problem de transport neechilibrat urmtorul
171
i
i
JATEK 2005/3/11 10:29 page 172 #172
i
i
i
i
i
i
172 7.Problema de transport
b
m
A
1
B
1
A A
i
B
A
m B
n
b
1 a
1
a
m
a
i
b
j
B
j
modelul:
_

_
f(x) =
m

i=1
n

j=1
c
ij
x
ij
min
n

j=1
x
ij
a
i
, i = 1, m
m

i=1
x
ij
b
j
, j = 1, n
x
ij
0, i = 1, m, j = 1, n
c
ij
0, i = 1, m, j = 1, n
m

i=1
a
i

n

j=1
b
j
.
(7.1)
Primele m restricii
n

j=1
x
ij
a
i
, i = 1, m arat c totalul cerut de
consumatori de la furnizorul i nu poate depi disponibilul acestuia,
iar urmtoarele n restricii
m

i=1
x
ij
b
j
, j = 1, n se refer la faptul c
totalul distribuit de ctre furnizori trebuie s e cel puin egal cu necesarul
consumatorilor.
Restriciile:
m

i=1
a
i

n

j=1
b
j
, c
ij
0
arat c disponibilul total este cel puin egal cu necesarul total.
i
i
JATEK 2005/3/11 10:29 page 173 #173
i
i
i
i
i
i
7.1. Formularea problemei. Proprieti generale 173
Se poate observa uor c acest model numit model liniar de transport
este o problem de programare liniar cu m+n restricii i m n variabile.
Deniia 7.1.2. Dac

m
i=1
a
i
>

n
j=1
b
j
sau

m
i=1
a
i
<

n
j=1
b
j
, atunci
problema de transport se numete neechilibrat. Dac

m
i=1
a
i
=

n
j=1
b
j
,
atunci este problem de transport echilibrat.
Observaie.
a) Modelul de transport echilibrat este:
_

_
f(x) =
m

i=1
n

j=1
c
ij
x
ij
min
n

j=1
x
ij
= a
i
, i = 1, m
m

i=1
x
ij
= b
j
, j = 1, n
x
ij
0, i = 1, m; j = 1, n
m

i=1
a
i
=
n

j=1
b
j
c
ij
0, a
i
0, b
j
0, i = 1, m; j = 1, n
(7.2)
b) Efectund transformri echivalente, o problem neechilibrat poate
redus ntotdeauna la o problem echilibrat prin introducerea unor centre
ctive.
Dac
m

i=1
a
i
>
n

j=1
b
j
, atunci se va introduce un consumator ctiv (B
n+1
)
al crui necesar este egal cu
m

i=1
a
i

j=1
b
j
, cu costurile unitare de transport
nule.
Dac
m

i=1
a
i
<
n

j=1
b
j
, atunci se va introduce un furnizor ctiv al crui
disponibil este egal cu
n

j=1
b
j

m

i=1
a
i
, iar costurile de transpot pot consid-
erate egale cu zero.
Justicarea faptului c se poate considera costul de transport egal cu zero
este evident: neavnd consumator, nu se consum produsul sau produsul
nu exist n disponibilul ctiv, prin urmare nu se transport, deci nu exist
cheltuieli n acest sens.
Observaie. Modelul de transport ind un model de programare liniar
rezult c proprietile prezentate n acest sens rmn valabile.
i
i
JATEK 2005/3/11 10:29 page 174 #174
i
i
i
i
i
i
174 7.Problema de transport
Forma special a problemei a condus ns i la unele rezultate particulare
n ceea ce privete soluionarea problemei.
Teorema 7.1.1. Orice problem de tip (7.2) admite ntotdeauna o soluie.
Dac a
i
< i b
j
< , i = 1, m; j = 1, n, atunci soluia de baz este
mrginit.
Demonstraie. Se arat uor c:
x
ij
=
a
i
b
j

m
i=1
a
i
, i = 1, m, j = 1, n
este soluie pentru modelul (7.2.)
Putem verica c aceste rapoarte denesc o soluie mrginit:
m

i=1
x
ij
=
m

i=1
a
i
b
j
m

i=1
a
i
=
b
j
m

i=1
a
i
m

i=1
a
i
= b
j
, j = 1, n
n

j=1
x
ij
=
a
i
n

j=1
b
j
m

i=1
a
i
= a
i
, i = 1, m
Forma matriceal a problemei (7.2) este:
f(x) =
_
_
_
c
T
x min
Ax = b
x 0,
(7.3)
unde A este matricea coecienilor din cele (m+n) restricii.
Matricea restriciilor are o structur special. n continuare, vom studia
proprietile acestei matrici.
Scriind explicit primele m :
n

j=1
x
ij
= a
i
, i = 1, m

x
11
+x
12
+ +x
1n
= a
1
i
i
JATEK 2005/3/11 10:29 page 175 #175
i
i
i
i
i
i
7.1. Formularea problemei. Proprieti generale 175
x
21
+x
22
+ +x
2n
= a
2
. . .
x
m1
+x
m2
+ +x
mn
= a
m
respectiv urmtoarele n restricii:
m

i=1
x
ij
= b
j
, j = 1, n

x
11
+x
21
+ +x
n1
= b
1
x
12
+x
22
+ +x
n2
= b
2
. . .
x
m1
+x
m2
+ +x
mn
= b
n
putem completa urmtorul tabel:
x
11
x
12
x
1j
x
1n } x
i1 } x
ij } x
in } x
m1 } x
mj } x
mn
u
1
1 1 1 1 } 0 } 0 } 0 } 0 } 0 } 0 a
1
} } } } } } } } } } } } } } } } } }
u
i
0 0 0 0 } 1 } 1 } 1 } 0 } 0 } 0 a
i
} } } } } } } } } } } } } } } } } }
u
m
0 0 0 0 } 0 } 0 } 0 } 1 } 1 } 1 a
m
v
1
1 0 0 0 } 1 } 0 } 0 } 1 } 0 } 0 b
1
} } } } } } } } } } } } } } } } } }
v
j
0 0 1 0 } 0 } 1 } 0 } 0 } 1 } 0 b
j
} } } } } } } } } } } } } } } } } }
v
n
0 0 1 } 0 } 0 } 1 } 0 } 0 } 1 b
n
c
11
c
12
c
1j
c
1n } c
i1 } c
ij } c
in } c
m1 } c
mj } c
mn
Adic n matricea restriciilor:
A = (a
11
. . . a
1n
, a
21
. . . a
2n
. . . a
m1
, . . . , a
mn
)
componentele a
ij
R
n+m
, i = 1, m, j = 1, n pot scrise:
a
ij
=
_
e
i
e
j
_
unde e
i
R
m
e
j
R
n
,
x = (x
11
. . . x
1n
, x
21
. . . x
2n
, . . . x
m1
, . . . x
mn
), b = (a
1
. . . a
m
, b
1
. . . b
n
)
T
.
i
i
JATEK 2005/3/11 10:29 page 176 #176
i
i
i
i
i
i
176 7. Modele speciale de programare liniar. Problema de transport
7.1.1 Proprieti ale matricei coecienilor
Teorema 7.1.2.
rang A = m + n 1.
Demonstraie. Deoarece A /
m+n,mn
(R), prin deniie , are loc rang A
min(m + n, mn). Dar pentru m 2, n 2 avem m + n mn rezult c
rang A m+n.
Din

m
i=1
a
i
=

n
j=1
b
j
rezult c suma primelor m linii ale matricei A
este egal cu suma celorlalte n linii, de unde rezult c rang A m+n 1.
Acum formm o matrice nesingular B, de ordin m+n 1.
Alegem coloanele: 1, (n + 1), (2n + 1), . . . , (m1)n + 1, 2, 3, . . . , n.
Astfel B /
m+n1
este triunghiular de unde rezult c detB = 1 ,= 0
nesingular; deci rezult c rang A = m+n 1.
Observaie. Semnicaia teoremei const n aceea c o soluie de baz a
unei probleme liniare de tip transport nu poate avea mai mult de m+n 1
componente nenule.
Deniia 7.1.3. O soluie de baz a problemei (7.2) este nedegenerat,
dac numrul componentelor sale nenule este egal cu (m + n 1) i este
degenerat, n caz contrar.
Teorema 7.1.3. Orice minor al matricei A are valoarea 1, 0 sau 1 (A este
total unimodular).
Corolar. Dac a
i
, i = 1, m i b
j
, j = 1, n sunt ntregi, atunci exist cel puin
o soluie optim a problemei de transport (7.2) care are toate componentele
ntregi.
7.1.2 Proprieti grace ale problemei de transport
Problemei de transport (7.2) i se poate asocia un tabel numit tabel de
transport, care conine datele numerice ale problemei. Tabelul are m + 1
linii i n+1 coloane. n ecare celul (i, j) scriem costul unitar de transport
c
ij
.
c
11
. . . c
1j
. . . c
1n
a
1
. . . . . . . . . . . . . . . . . .
c
i1
. . . c
ij
. . . c
in
a
i
. . . . . . . . . . . . . . . . . .
c
m1
. . . c
mj
. . . c
mn
a
m
b
1
. . . b
j
. . . b
n
Valoarea actual x
ij
a variabilei x
ij
dintr-o anumit iteraie se va intro-
duce astfel:
i
i
JATEK 2005/3/11 10:29 page 177 #177
i
i
i
i
i
i
7.1. Proprieti grace ale problemei de transport 177
x
ij
c
ij
Deniia 7.1.4. Celula (i, j) cu x
ij
,= 0 se numete celul bazic, n caz
contrar o vom numi celul liber.
Tabelului de transport i putem asocia un graf neorientat :
1,1 1, j 1, m
2, 1 2, m
m, 2 m, j m, n
1, 2
2, 2 2, j
i, 2 i, j i, m
m, 1
i, 1
Deniia 7.1.5. Se numete graf un subgraf parial al grafului neori-
entat .
i
i
JATEK 2005/3/11 10:29 page 178 #178
i
i
i
i
i
i
178 7. Modele speciale de programare liniar. Problema de transport
De exemplu:
1,1 1, j 1, m
2, 1 2, m
1, 2
2, 2 2, j
i, 1 i, m i, j i, 2
m, 1 m, 2 m, n m, j
Deniia 7.1.6. Un graf care este un lan (ciclu) elementar avnd
cel mult o muchie n ecare linie sau coloan (a tabelului de transport) se
numete -ciclu.
Problemei de transport i putem asocia graful G:
A
i
A
1
A
m
B
1
B
n
B
j
Observaie. ntre graful G construit astfel i graful se poate stabili o
cores-ponden bijectiv.
i
i
JATEK 2005/3/11 10:29 page 179 #179
i
i
i
i
i
i
7.1. Determinarea unei soluii de baz 179
Teorema 7.1.4. O condiie sucient ca un sistem de vectori coloan ai
matricei A s formeze un sistem liniar dependent este ca mulimea celulelor
tabelului de transport corespunztoare acestor coloane s formeze un -ciclu.
Coecienii combinaiei nule ai acestui sistem de vectori sunt alternativ
+1 i 1, dac se adopt un sens oarecare de parcurgere a -ciclului.
7.1.3 Determinarea unei soluii de baz
Pentru rezolvarea problemei de transport cu algoritmul simplex este nece-
sar obinerea unei soluii de baz iniial.
n continuare, prezentm o metod general de construcie a soluiilor
bazi-ce: algoritmul DSBI.
Algoritmul DSBI:
1) - se xeaz o celul (i, j) oarecare;
2) - se atribuie variabilei x
ij
valoarea maxim pe care o poate lua, adic:
x
ij
= min(a
i
, b
j
)
dac x
ij
= a
i
atunci se va elimina linia i i se va atribui lui b
j
valoarea
b

j
= b
j
x
ij
;
dac x
ij
= b
j
atunci se va elimina coloana j i se va atribui lui a
i
valoarea a

i
= a
i
x
ij
;
dac x
ij
= a
i
= b
j
atunci la alegere se va lua una din cazurile de mai
sus;
3) - se va continua algoritmul (se va trece la pasul (1)) pn cnd se vor
reduce toate liniile i coloanele din tabelul de transport.
Folosind algoritmul DSBI, se va putea obine o soluie bazic.
Metoda poate particularizat prin diverse moduri de selectare a celulei
(i, j).
Metodele cele mai cunoscute i utilizate sunt:
[A] Metoda colului de nord-vest (N-V): se selecteaz celula (i, j)
situat n prima linie i prima coloan (din colul nord-vest al tabelului)
netiat;
[B] Metoda costului minim: la ecare pas, se alege celula (i, j) netiat
corespunztoare costului (c
ij
) minim din tabel.
Observaie Metoda [A] este uor de aplicat, ns metoda [B] este mult
mai util privind numrul de iteraii n algoritmul de transport.
i
i
JATEK 2005/3/11 10:29 page 180 #180
i
i
i
i
i
i
180 7. Modele speciale de programare liniar. Problema de transport
7.1.4 Adaptarea algoritmului simplex
Deoarece modelul liniar de transport are o form special, algoritmul
simplex, aplicat n general la rezolvarea modelelor liniare cu restricii, poate
modicat.
n continuare, vom adapta algoritmul simplex.
Avem la dispoziie o soluie bazic iniial necesar n aplicarea algorit-
mului simplex(v. algoritmul DSBI din 7.1.4). Va trebui s adaptm apoi
condiia de optim, respectiv procedeul de mbuntire a soluiei (adic cri-
teriul de intrare i de ieire din baz) din algoritmul simplex.
n acest sens, prima dat sunt necesare cteva precizri.
Fie mulimea celulelor bazice:
B = (i, j) I J[a
ij
A
unde I = 1, 2 . . . , m i J = 1, 2, . . . , n sunt mulimi de indici.
Evident, n aceast mulime, sunt m+n 1 elemente. Aceast mulime
o obinem deodat cu determinarea soluiei bazice iniiale. Vom nota cu R
mulimea celulelor libere (coloanale corespunztoare acestor celule nu intr
n formarea bazei).
Pe baza teoremei 7.1.4, putem arma c la ecare celul liber din R
corespunde n mod unic un ciclu, adic un poligon cu vrfurile
situate n celula liber i ntr-o submulime a lui B avnd cel mult
o latur n ecare linie, respectiv coloan a tabelului de transport.
Deci mulimea format din elementul h R i elementele lui B formeaz un
sistem liniar dependent.
n continuare, ne propunem s alegem din aceast mulime un sistem
liniar dependent format dintr-un numr minim de vectori (elemente). Evi-
dent putem alege un astfel de sistem; n cazul cel mai nefavorabil, lum toate
elementele din mulime. Se poate demonstra c ciclul asociat unei celule
libere veric aceast proprietate, adic se asocieaz n mod unic unei celule
libere i este format dintr-un numr minim de elemente.
Astfel, dac vectorului h i corespunde celula liber (i
1
, j
1
), atunci
ciclul construit se poate vedea mai jos, unde cercul reprezint celula liber,
iar ptratele celulele bazice.
n construcia ciclului avem n vedere c trebuie s obinem un poligon
cu nodurile n celulele bazice avnd cel mult o latur n ecare linie i coloan.
Firete, combinaia liniar a vectorilor corespunztori celulelor din
ciclu este egal cu zero (ind un sistem liniar dependent), iar coecienii
combinaiei liniare sunt pe rnd egale cu 1 i 1 (vezi teorema 7.1.4).
Putem scrie:
_
e
i
1
e
j
1
_

_
e
i
1
e
j
2
_
+
_
e
i
2
e
j
2
_

_
e
i
2
e
j
3
_
+. . .
_
e
i
t
e
j
1
_
= 0.
i
i
JATEK 2005/3/11 10:29 page 181 #181
i
i
i
i
i
i
7.1. Adaptarea algoritmului simplex 181
i
2
, j
3
i
2
, j
2
i
t
, j
1
i
1
, j
2
i
1
, j
1
Explicaia este evident, deoarece vectorii e
i
k
,
pentru k 1, . . . , t re-
spectiv e
j
l
pentru l 1, . . . , r apar ntr-un numr par. Prin urmare avem
dou din ecare, deoarece ecare nod este ntr-o linie (coloan), dar n ecare
astfel de linie (coloan) avem o latur care este determinat de dou vrfuri.
Dac din -ciclu scoatem o celul, atunci vom avea un sistem liniar indepen-
dent de vectori. n continuare, vom scrie combinaia liniar a vectorilor din
-ciclu fr celula liber. Lum chiar valorile actuale ale variabilelor inde-
pendente drept coecieni ai combinaiei liniare. Astfel se obine un vector
_
a
1
b
1
_
= x
ij
2
_
e
i
1
e
j
2
_
+ x
i
2
j
2
_
e
i
2
e
j
2
_
+ x
i
2
j
3
_
e
i
2
e
j
3
_
+. . . + x
i
t
j
1
_
e
i
t
e
j
1
_
Se poate verica uor c aceast combinaie liniar a tuturor vectorilor
bazici este egal cu
_
_
_
_
_
_
_
_
_
_
a
1
.
.
.
a
m
b
1
.
.
.
b
n
_
_
_
_
_
_
_
_
_
_
not
=
_
a
b
_
.
Revenim la combinaia liniar nul pe care o vom nmuli cu o cantitate
pozitiv notat cu Q, nct putem scrie:
Q
_
e
i
1
e
j
1
_
Q
_
e
i
1
e
j
2
_
+Q
_
e
i
2
e
j
2
_
Q
_
e
i
2
e
j
3
_
+Q. . . Q
_
e
i
t
e
j
1
_
= 0.
i
i
JATEK 2005/3/11 10:29 page 182 #182
i
i
i
i
i
i
182 7. Modele speciale de programare liniar. Problema de transport
dup care o adunm la vectorul
_
a
1
b
1
_
.
Astfel se obine:
Q
_
e
i
1
e
j
1
_
+ ( x
i,j
2
Q)
_
e
i
1
e
j
2
_
+ ( x
i
2
j
2
+Q)
_
e
i
2
e
j
2
_
+ ( x
i
2
j
3
+Q)
_
e
i
2
e
j
3
_
+. . .
+ ( x
i
t
j
1
Q)
_
e
i
t
e
j
1
_
. (7.4)
De aici se deduce procedeul schimbrii vectorilor, procedeul de m-
buntire a bazei. Cu alegerea convenabil a lui Q vom putea introduce
celula (vectorul) liber n baz i n acelai timp vom putea scoate una din
baz. Astfel se va obine o nou baz i combinaia liniar a vectorilor de
tip 7.4 va egal de asemenea cu
_
a
1
b
1
_
. Valoare lui Q se va alege astfel
nct
Q = minQ[x
i
r
j
l
Q = 0, (i
r
, j
l
) B
Modul de alegere a lui Q se numete criteriu de intrare n baz.
Avnd n vedere c urmtoarea soluie trebuie s e mai bun, este foarte
important alegerea celulei libere.
Celula liber este aleas prin intermediul problemei duale, descris n
continuare.
7.1.5 Utilizarea problemei duale
Duala problemei de transport (7.2) este:
_

_
g(u, v) =
m

i=1
a
i
u
i
+
n

j=1
b
j
v
j
max
u
i
+v
j
c
ij
, i = 1, m, j = 1, n
u
i
, v
j
, i = 1, m, j = 1, n de semn oarecare
(7.5)
Teorema 7.1.5. Fie x
ij
, i = 1, m, j = 1, n o soluie de baz pentru prob-
lema de transport, iar (u
i
, v
j
), i = 1, m, j = 1, n o soluie a problemei duale.
Soluiile sunt optime, dac i numai dac are loc relaia:
x
ij
(c
ij
u
i
v
j
) = 0, i = 1, m, j = 1, n.
Observaie. Dac lum o celul (i, j) B, atunci are loc egalitatea
c
ij
u
i
v
j
= 0. Altfel are loc relaia de mai sus, deoarece valorile
varia-bilelor independente ale problemei primale x
ij
, sunt egale cu zero.
Deci soluia problemei duale trebuie s verice sistemul liniar de ecuaii:
c
ij
= u
i
+v
j
, (i, j) B. (7.6)
i
i
JATEK 2005/3/11 10:29 page 183 #183
i
i
i
i
i
i
7.1. Algoritmul de transport 183
Astfel valorile actuale ale variabilelor duale le obinem n urma rezolvrii
sistemului (7.6). Acest sistem este nedeterminat, deoarece este format din
m + n 1 ecuaii i m + n necunoscute, prin urmare admite o innitate de
soluii.
Analiznd condiia de optim, putem observa c de fapt ne intereseaz
sumele u
i
+v
j
, i = 1, m, j = 1, n i nu soluiile, valorile variabilelor, n sine.
Se poate demonstra urmtorul rezultat.
Teorema 7.1.6. Dac (u
0
i
, v
0
j
) este o soluie particular a sistemului de
ecuaii de tip 7.6, atunci mulimea tuturor soluiilor este:
u
i
= u
0
i
+c
v
j
= v
0
j
c
pentru orice i = 1, m, j = 1, n unde c este o constant real oarecare.
Pe baza acestei teoreme se poate deduce c, pentru vericarea optimal-
itii, este sucient de fapt o soluie particular, deoarece:
u
i
+v
j
= u
0
i
+v
0
j
pentru orice i = 1, m, j = 1, n.
Teorema 7.1.7. Soluia sistemului de ecuaii (7.6) este optim dac i nu-
mai dac este soluie posibil pentru (7.5), adic:
c
ij
(u
i
+v
j
) 0, i = 1, m, j = 1, n
Astfel, dac exist cel puin o celul (i, j) pentru care c
ij
(u
i
+ v
j
) <
0, atunci soluia problemei duale nu este optim, prin urmare nici soluia
problemei primale nu este optim.
Dac se va alege celula pentru care aceast diferen strict negativ este
minim, atunci se va obine celula care va intra n baz.
Acest mod de alegere a celulei libere se numete criteriu de intrare n
baz.
7.1.6 Algoritmul de transport
Algoritmul simplex adaptat pentru rezolvarea modelelor liniare de tip
transport se numete algoritmul de transport.
Descrierea algoritmului:
1. S se verice dac problema este echilibrat i s se echilibreze, dac
este cazul;
i
i
JATEK 2005/3/11 10:29 page 184 #184
i
i
i
i
i
i
184 7. Modele speciale de programare liniar. Problema de transport
2. S se determine o soluie de baz i o baz B (se folosete metoda
colului de N-V sau metoda costului minim);
3. S se verice optimalitatea soluiei obinute la pasul (2).
- s se rezolve sistemul
u
i
+v
j
= c
ij
, (i, j) B cu u
1
= 0
Dac
c
ij
(u
i
+v
j
) 0 pentru orice i = 1, m; j = 1, n
atunci soluia obinut n (2) este optim i calculeaz f
min
;
altfel alege celula liber, care va intra n baz (vezi criteriul de intrare
n baz);
4. Cu celula liber obinut n pasul (3), s se construiasc -ciclul i
aplic criteriul de ieire din baz (alege n mod convenabil valoarea lui
Q);
5. S se efectueze redistribuirea pe -ciclu i, cu soluia i baza astfel
obinute, treci la pasul (2).
i
i
JATEK 2005/3/11 10:29 page 185 #185
i
i
i
i
i
i
7.1. Probleme propuse i rezolvate 185
7.1.7 Probleme propuse i rezolvate
1. S se rezolve problema de transport:
2 4 3 23
1 3 5 12
6 2 1 15
18 20 12
Deoarece
n

i=1
a
i
= 23 + 12 + 15 = 50 = 18 + 20 + 12 =
3

j=1
b
j
, problema
considerat este echilibrat i putem ncepe aplicarea algoritmului de trans-
port. Folosim metoda colului de N-V pentru determinarea unei solutii
bazice. Alegnd pe rnd celulele cuvenite (celulele din N-V), dnd valorile
posibile maxime variabilelor independente i reducnd liniile, coloanele core-
spunzatoare vom obine:
(1, 1) x
11
= min(23, 18) = 18
(1, 2) x
12
= min(5, 20) = 5
(2, 2) x
22
= min(12, 15) = 12
(3, 2) x
32
= min(15, 3) = 3
(3, 3) x
33
= min(12, 12) = 12
Astfel putem ntocmi urmtorul tabel de transport:
2 4
18 5
3 23
3
1
12
5 12
2 1
6
3 12
15
18 20 12 50
Baza cu care vom ncepe algoritmul de transport este:
B = (1, 1), (1, 2), (2, 2), (3, 2), (3, 3).
i
i
JATEK 2005/3/11 10:29 page 186 #186
i
i
i
i
i
i
186 7. Modele speciale de programare liniar. Problema de transport
Valoarea funciei de scop (costul de transport) pentru aceast soluie este:
f(x
B
) = 2 18 +4 5 +3 12 +2 3 +1 12 = 36 +20 +36 +6 +12 = 110 u.m.
n continuare, vericm optimalitatea soluiei.
Pentru vericarea condiiei de optim c
ij
(u
i
+ v
j
) 0, i = 1, 3; j =
1, 3 vom calcula prima dat valorile variabilelor duale din sistemul liniar de
ecuaii:
_

_
u
1
+v
1
= 2
u
1
+v
2
= 4
u
2
+v
2
= 3
u
3
+v
2
= 2
u
3
+v
3
= 1
Lund u
1
= 0 soluiile vor :
u
2
= 1
u
3
= 2
v
1
= 2
v
2
= 4
v
3
= 3
Se va folosi un tabel ajuttor:
2 4 3
0
2
0
4
0
3
0
-1
1
0
3
0
5
3
-2
6
6
2
0
1
0
Deoarece c
ij
(u
i
+v
j
) pentru orice i = 1, 3; j = 1, 3 rezult c soluia
bazic este optim.
Cum se veric dac soluia este unic?
Deoarece exist c
ij
(u
i
+v
j
) = 0, unde (i, j) ,= B i n rest c
ij
(u
i
+v
j
)
0 pentru orice i = 1, 3 i j = 1, 3, rezult c problema admite optim
multiplu. Alegem o celul liber pentru care c
ij
(u
i
+ v
j
) = 0. Putem
alege, de exemplu, celula (2,1) cu care vom construi -ciclul
Pe -ciclul construit cu cantitatea Q i cu o direcie de parcurgere a
-ciclului putem scrie:
Q
_
e
2
e
1
_
+ ( x
11
Q)
_
e
1
e
1
_
+ ( x
12
) +Q)
_
e
1
e
2
_
+ ( x
22
Q)
_
e
2
e
2
_
de unde avem:
Q
_
e
2
e
1
_
+ (18 Q)
_
e
1
e
1
_
+ (5 +Q)
_
e
1
e
2
_
+ (12 Q)
_
e
2
e
2
_
i
i
JATEK 2005/3/11 10:29 page 187 #187
i
i
i
i
i
i
7.1. Probleme propuse i rezolvate 187
2 4
18 5
3 23
1 3
12
5 12
2 1
6
3 12
15
18 20 12
Dintre soluiile ecuaiilor
18 Q = 0
12 Q = 0
vom alege Q = 12. Astfel celula (2,2)
va iei din baz. Efectum redistribuire pe - ciclul ales i vom avea:
2 4
6 17
3 23
1
12
3 5 12
2 1
6
3 12
15
18 20 12 50
i
i
JATEK 2005/3/11 10:29 page 188 #188
i
i
i
i
i
i
188 7. Modele speciale de programare liniar. Problema de transport
Astfel am pus n eviden nc o soluie optim. Prin urmare problema
admite o innitate de soluii optime. Notm soluiile optime cu:
x
01
= x
11
, x
12
, x
22
, x
32
, x
33

x
02
= x
11
, x
12
, x
22
, x
32
, x
33

Mulimea soluiilor optime va : x


0
= x
01
+ (1 )x
02
, [0, 1]
x
0
=
_
_
_
_
_
_
_
_
x
11
x
12
x
21
x
22
x
32
x
33
_
_
_
_
_
_
_
_
+ (1 )
_
_
_
_
_
_
_
_
x
11
x
12
x
21
x
22
x
32
x
33
_
_
_
_
_
_
_
_
=
_
_
_
_
_
_
_
_
18
5
0
12
3
12
_
_
_
_
_
_
_
_
+ (1 )
_
_
_
_
_
_
_
_
6
17
12
0
3
12
_
_
_
_
_
_
_
_
=
=
_
_
_
_
_
_
_
_
12 + 6
12 + 17
12 + 12
12
3
12
_
_
_
_
_
_
_
_
, [0, 1]
Observaie: n continuare, vom rezolva problema folosind metoda costu-
lui minim pentru determinarea soluiei bazice iniiale.
Avem problema de transport dat cu urmtorul tabel:
i
i
JATEK 2005/3/11 10:29 page 189 #189
i
i
i
i
i
i
7.1. Probleme propuse i rezolvate 189
2 4 3 23
1 3 5 12
6 2 1 15
18 20 12 50
Alegem ntotdeauna celule cu cost minim.
Alegem celula (2,1) i x
21
= min(12, 18) = 12
Alegem celula (3,3) i x
33
= min(15, 12) = 12
Alegem celula (1,1) i x
11
= min(23, 6) = 6
Alegem celula (3,2) i x
32
= min(3, 20) = 3
A rmas netiat celula (1,2) i x
21
= min(17, 17) = 17
Cu soluia bazic iniial vom ntocmi tabelul de transport i vom obine:
2 4
6 17
3 23
1
12
3 5 12
2 1
6
3 12
15
18 20 12 50
Valoarea funciei de scop va :
f(x
B
) = 2 6 + 4 17 + 1 12 + 2 12 + 2 3 + 1 12 = 68 + 42 = 1001 u.m.
unde B = (1, 1), (1, 2), (2, 1), (3, 2), (3, 3).
Valorile variabilelor duale le obinem din sistemul liniar nedeterminat:
_

_
u
1
+v
1
= 2
u
1
+v
2
= 4
u
2
+v
1
= 1
u
3
+v
2
= 2
u
3
+v
3
= 1
i
i
JATEK 2005/3/11 10:29 page 190 #190
i
i
i
i
i
i
190 7. Modele speciale de programare liniar. Problema de transport
De unde, dac u
1
= 0, vom avea:
u
2
= 1
u
3
= 2
v
1
= 2
v
2
= 4
v
3
= 3
Vericm optimalitatea soluiei folosind tabelul ajuttor:
2 4 3
0
2
0
4
0
3
0
-1
1
0
3
0
5
3
-2
6
6
2
0
1
0
Se poate observa uor c soluia este optim. Folosind un raionament
analog, ca i n cazul metodei colului de N-V, putem scrie mulimea solui-
ilor optime.
2. Fie problema de transport dat cu urmtorul tabel:
2 1 3 2 15
1 2 3 1 15
3 2 1 2 20
9 8 8 15
Deoarece a
1
+a
2
+a
3
= 50 > 40 = b
1
+b
2
+b
3
+b
4
rezult c problema
este neechilibrat. Vom introduce un beneciar ctiv i vom avea urmtorul
tabel de transport:
Folosind metoda colului de N-V, vom determina o soluie bazic iniial.
Putem scrie pentru celulele alese:
x
11
= min(15, 9) = 9
x
12
= min(6, 8) = 6
x
22
= min(15, 2) = 2
x
23
= min(13, 8) = 8
x
24
= min(5, 15) = 5
x
34
= min(20, 10) = 10
x
35
= min(10, 10) = 10
Vom introduce soluiile obinute n tabel i vom avea:
i
i
JATEK 2005/3/11 10:29 page 191 #191
i
i
i
i
i
i
7.1. Probleme propuse i rezolvate 191
2 1 3 2 0 15
1 2 3 1 0 15
3 2 1 2 0 20
9 8 8 15 10 50
v
1
v
2
v
3
v
4
v
5
2 1
u
1
9 6
3 2 0 15
2 3 1
u
2
1
2 8 5
0 15
2 0
u
3
3 2 1
10 10
20
9 8 8 15 10 50
Valoarea funciei de scop pentru aceast soluie bazic este:
f(x
B
) = 29+16+22+38+15+210 = 18+6+4+24+5+20 = 77 u.m.
n scopul vericrii optimalitii, determinm valorile variabilelor duale.
Putem scrie sistemul liniar nedeterminat:
_

_
u
1
+v
1
= 2
u
1
+v
2
= 1
u
2
+v
2
= 2
u
2
+v
3
= 3
u
2
+v
4
= 1
u
3
+v
4
= 2
u
3
+v
5
= 0
Lund u
1
= 0, obinem
u
2
= 1
u
3
= 2
v
1
= 2
v
2
= 1
v
3
= 2
v
4
= 0
v
5
= 2
.
Condiia de optim c
ij
(u
i
+ v
j
) 0 pentru orice i = 1, 3 i j = 1, 5 o
vericm folosind tabelul ajuttor:
i
i
JATEK 2005/3/11 10:29 page 192 #192
i
i
i
i
i
i
192 7. Modele speciale de programare liniar. Problema de transport
2 1 2 0 -2
0
2
0
1
0
3
1
2
2
0
2
1
1
-2
2
0
3
0
1
0
0
1
1
2
3
-1
2
-1 -3
2
0
0
0
Deoarece exist (i, j) pentru care c
ij
(u
i
+v
j
) < 0, nseamn c soluia
bazic nu este optim. min2, 1, 3 = 3, astfel vom alege celula liber
(3,3) cu care vom construi -ciclul. n acest scop revenim la tabelul de
transport:
2 1
9 6
3 2 0 15
2 3 1
8 5
1
2
0 15
1 2 0
10
3 2
10
20
9 8 8 15 10
50
Pe -ciclul construit lund o direcie de parcurgere, putem scrie:
Q
_
e
3
e
3
_
+ ( x
23
Q)
_
e
2
e
3
_
+ ( x
24
+Q)
_
e
2
e
4
_
( x
34
Q)
_
e
3
e
4
_
.
Observaie. Coloanele din matricea restriciilor A, corespunztoare
celulelor care formeaz - ciclul, formeaz un sistem liniar dependent de
i
i
JATEK 2005/3/11 10:29 page 193 #193
i
i
i
i
i
i
7.1. Probleme propuse i rezolvate 193
vectori. Adic orice combinaie liniar a vectorilor respectivi egal cu zero
nu implic egalitatea cu zero a coecienilor combinaiei liniare. Pe baza
teoremei 7.1.4 avem:
_
e
3
e
3
_

_
e
2
e
3
_
+
_
e
2
e
4
_

_
e
3
e
4
_
= 0
Vom nmuli egalitatea cu o cantitate Q ,= 0 i vom avea:
Q
_
e
3
e
3
_
Q
_
e
2
e
3
_
+Q
_
e
2
e
4
_
Q
_
e
3
e
4
_
= 0.
Considerm un vector:
v = x
23
_
e
2
e
3
_
+ x
24
_
e
2
e
4
_
+ x
34
_
e
3
e
4
_
,
combinaia liniar a vectorilor bazici din - ciclu, la care adugm vectorul
nul. Astfel putem scrie:
v = Q
_
e
3
e
3
_
+ ( x
23
Q)
_
e
2
e
3
_
+ ( x
24
+Q)
_
e
2
e
4
_
+ ( x
34
Q)
_
e
3
e
4
_
i avem chiar combinaia liniar a vectorilor din -ciclu n forma n care am
scris. Continum prin nlocuirea valorilor actuale ale variabileleor xij, i
obinem:
Q
_
e
3
e
3
_
+ (8 Q)
_
e
2
e
3
_
+ (5 +Q)
_
e
2
e
4
_
+ (10 Q)
_
e
3
e
4
_
.
Dintre soluiile ecuaiilor 8 Q = 0 i 10 Q = 0, vom alege valoarea
minim i astfel pentru Q = 8 celula (2,3) va iei din baz. Efectum apoi o
redistribuire pe -ciclu i obinem urmtorul tabel de transport:
2 1
9 6
3 2 0 15
2 1
1
2
3
13
0 15
1 2 0
3 2
8 2 10
20
9 8 8 15 10 50
i
i
JATEK 2005/3/11 10:29 page 194 #194
i
i
i
i
i
i
194 7. Modele speciale de programare liniar. Problema de transport
Valoarea funciei de scop (costul transportului) pentru aceast soluie va
:
f(x
B
) = 29+16+22+113+18+22+010 = 18+6+4+13+8+4 = 53 < 77 u.m.
Continum cu vericarea optimalitii.
Avem de rezolvat sistemul:
_

_
u
1
+v
1
= 2
u
1
+v
2
= 1
u
2
+v
2
= 2
u
2
+v
4
= 1
u
3
+v
3
= 1
u
3
+v
4
= 2
u
3
+v
4
= 0
.
Lund u
1
= 0, avem pe rnd soluiile:
u
2
= 1 v
1
= 2
u
3
= 2 v
2
= 1
v
3
= 1
v
4
= 0
v
5
= 2
Folosim tabelul ajuttor:
2 1 -1 0 -2
0
2
0
1
0
3
4
2
2
0
2
1
1
-2
2
0
3
3
1
0
0
1
2
3
-1
2
-1
1
0
2
0
0
0
Exist (i, j) pentru care c
ij
(u
i
+ v
j
) < 0, ceea ce nseamn c nu am
obinut soluia optim. Alegem celula liber (2,1) care va intra n baz i cu
care construim -ciclul. Efectum nc o iteraie n urma creia celula (2,2)
va iei din baz. Pe -ciclul construit, efectum o redistribuire i obinem
urmtorul tabel:
Valoarea funciei de scop pentru aceast soluie va :
f(x
B
) = 2 7 +1 8 +1 2 +1 13 +1 8 +2 2 = 14 +10 +13 +12 = 49 u.m.
n continuare, va vericat optimalitatea soluiei.
Deoarece pentru orice i = 1, 3 i j = 1, 5 diferenele c
ij
(u
i
+ v
j
) 0,
rezult c soluia obinut este optim i f
min
= 49 u.m.
3. S se rezolve problema de transport:
i
i
JATEK 2005/3/11 10:29 page 195 #195
i
i
i
i
i
i
7.1. Probleme propuse i rezolvate 195
2 1
7 8
3 2 0 15
1 1
2
2 3
13
0 15
1 2 0
3 2
8 2 10
20
9 8 8 15 10 50
4 3 2 1 13
2 5 6 3 28
7 4 3 6 39
25 15 37 23
Deoarece a
1
+a
2
+a
3
= 80 i b
1
+b
2
+b
3
+b
4
= 100, adic:
3

i=1
a
i
<
4

j=1
b
j
,
problema de trasnsport nu este echilibrat. Va introdus un centru ctiv de
depozitare A
4
i se va obine urmtorul tabel:
Folosind metoda colului de nord-vest (N-V), determinm o soluie de
baz iniial. Astfel:
- alegem celula (1,1), lum x
11
= min(13, 25) = 13 i vom tia prima
linie;
- alegem celula (2,1), lum x
21
= min(28, 12) = 12 i vom tia prima
coloan;
- alegem celula (2,2), lum x
22
= min(16, 15) = 15 i vom tia a doua
coloan;
- alegem celula (2,3), lum x
23
= min(1, 37) = 1 i vom tia a doua linie;
i
i
JATEK 2005/3/11 10:29 page 196 #196
i
i
i
i
i
i
196 7. Modele speciale de programare liniar. Problema de transport
4 3 2 1 13
2 5 6 3 28
7 4 3 6 39
0 0 0 0 20
25 15 37 23
100
100
- alegem celula (3,3), lum x
33
= min(39, 36) = 36 i vom tia a treia
coloan;
- alegem celula (3,4), lum x
34
= min(3, 23) = 3 i vom tia a treia linie;
- alegem celula (4,4), lum x
44
= min(20, 20) = 20 i vom tia a patra
linie (coloan).
Putem observa c toate liniile i coloanele sunt eliminate. Astfel s-a obinut
soluia bazic i baza:
B = (1, 1), (2, 1), (2, 2), (2, 3), (3, 3), (3, 4), (4, 4)
cu (m+n 1) = 4 + 4 1 = 7 celule bazice.
i
i
JATEK 2005/3/11 10:29 page 197 #197
i
i
i
i
i
i
7.1. Probleme propuse i rezolvate 197
Soluia bazic astfel obinut va introdus n tabel i vom avea:
v
1
v
2
v
3
v
4
4
u
1
13
3 2 1 13
2 5 6
u
2
12 15 1
3 28
3 6
u
3
7 4
36 3
39
0
u
4
0 0 0
20
20
25 15 37 23 100
Se poate verica uor c
4

i=1
x
ij
= b
j
, j = 1, 4 i
4

j=1
x
ij
= a
i
, i =
1, 4. Urmeaz vericarea optimalitii. Variabilele problemei duale notate cu
u
1
, u
2
, u
3
, u
4
, v
1
, v
2
, v
3
, v
4
sunt soluiile sistemului liniar de ecuaii u
i
+ v
j
=
c
ij
, (i, j) B. Astfel putem scrie:
_

_
u
1
+v
1
= 4
u
2
+v
1
= 2
u
2
+v
2
= 5
u
2
+v
3
= 6
u
3
+v
3
= 3
u
3
+v
4
= 6
u
4
+v
4
= 0
Este un sistem liniar nedeterminat. Vom determina o soluie particular
pornind cu u
1
= 0 i vom avea pe rnd:
u
2
= 2
u
3
= 5
u
4
= 11
v
1
= 4
v
2
= 7
v
3
= 8
v
4
= 11
Condiia de optim este: c
ij
(u
i
+ v
j
) 0 pentru orice (i, j)
i=1,m
j=1,n
. Aceast
condiie va vericat folosind un tabel ajuttor:
i
i
JATEK 2005/3/11 10:29 page 198 #198
i
i
i
i
i
i
198 7. Modele speciale de programare liniar. Problema de transport
v
1
= 4 v
2
= 7 v
3
= 8 v
4
= 11
1
u
1
= 0
4
0
3
-4
2
-6 -10
u
2
= -2
2
0
5
0
6
0
3
-6
u
3
= -5
7
8
4
2
3
0
6
0
u
4
= -11
0
7
0
4
0
3
0
0
Deoarece exist celule (i, j) pentru care c
ij
(u
i
+ v
j
) < 0, cum ar
celulele (1,2), (1,3), (1,4), (2,4), rezult c soluia nu este optim.
n scopul determinrii unei soluii mbunatite vom alege celula liber
h, astfel nct:
h
not
= (i, j)
1
= minc
ij
(u
i
+v
j
) < 0 [ i = 1, 4, j = 1, 4
i vom construi un -ciclu. Celula liber astfel aleas va intra n baz. Celula
care va iei va obinut din -ciclul asociat celulei libere h.
Revenim la tabelul de transport i construim -ciclul.
4
1
13
3 2
13
2 5 6
12 15 1
3 28
3 6
7 4
36
3
39
0
0 0 0
20
20
25 15 37 23
100
100
n continuare, scriem o combinaie liniar a vectorilor care formeaz -
ciclul, pornind cu celula liber, folosind o mrime Qi o direcie de parcurgere
i
i
JATEK 2005/3/11 10:29 page 199 #199
i
i
i
i
i
i
7.1. Probleme propuse i rezolvate 199
a -ciclului.
n urma efecturii calculelor, vom alege valoarea minim, Q = 1.
Astfel x
23
Q va egal cu zero i prin urmare celula (2, 3) va iei din
baz.
Pe -ciclu vom efectua o redistribuire conform combinaiei liniare
scrise la efectuarea calculelor. Astfel vom avea o nou baz: B

=
(1, 1), (1, 4), (2, 1), (2, 2), (3, 3), (3, 4), (4, 4) i o soluie bazic pe care o
putem citi din tabel. Costul de transport este:
f(x
B

) = 4 12 + 1 1 + 2 13 + 5 15 + 3 37 + 6 2 + 0 20 = 273 u.m.
Aici se termin prima iteraie.
Dup dou iteraii, n urma redistribuirii, vom avea urmtorul tabel:
1
4 3 2
13
13
2 3
25
5 6
3
28
4 3
7
2 37
6 39
0 0
0
13
0
7
20
25 15 37 23
100
100
Astfel vom avea o nou baz i o soluie bazic:
B

= (1, 4), (2, 1), (2, 4), (3, 2), (3, 3), (4, 2), (4, 4)
Valoarea funciei de scop este:
f(x
B

) = 1 13 + 2 25 + 3 3 + 4 2 + 3 37 + 0 13 + 0 7 = 19 u.m.
n continuare se determin valoarea variabilelor problemei duale.
Avem sistemul:
_

_
u
1
+v
4
= 1
u
2
+v
1
= 2
u
2
+v
4
= 3
u
3
+v
2
= 4
u
3
+v
3
= 3
u
4
+v
2
= 0
u
4
+v
4
= 0
.
i
i
JATEK 2005/3/11 10:29 page 200 #200
i
i
i
i
i
i
200 7. Modele speciale de programare liniar. Problema de transport
Lund u
1
= 0, vom obine:
u
2
= 2
u
3
= 3
u
4
= 1
v
1
= 0
v
2
= 1
v
3
= 0
v
4
= 1
Vericm optimalitatea soluiei problemei duale folosind tabelul ajuttor:
0 1 0 1
0
4
4
3
2
2
2
1
0
2
2
0
5
2
6
4
3
0
3
7
4
4
0
3
0
6
2
-1
0
1
0
0
0
1
0
0
Deoarece c
ij
(u
i
+v
j
) 0 pentru orice (i, j)
i=1,4
j=1,4
nseamn c am obinut
soluia optim. Deci soluia problemei de transport este:
x
14
= 13; x
21
= 25; x
24
= 3; x
32
= 2; x
33
= 37; x
42
= 13; x
44
= 7 i
f
min
= 191u.m.
4. S se rezolve problema de transport:
2 1 2 3 15
1 2 3 1 17
3 1 1 2 13
7 8 18 12
45
45
Se poate verica uor c
3

i=1
a
i
=

b
j
= 45, adic problema de trans-
port este echilibrat. Folosind metoda colului de N-V, vom determina o
soluie de baz iniial. Alegnd pe rnd celulele corespunztoare vom da
valorile maxime posibile variabilelor independente. Adic:
pentru celula (1,1) x
11
= min(15, 7) = 7
pentru celula (1,2) x
11
= min(8, 8) = 8.
i
i
JATEK 2005/3/11 10:29 page 201 #201
i
i
i
i
i
i
7.1. Probleme propuse i rezolvate 201
nainte s se ajung la ultima celul netiat, avema
1
= b
2
= min(a
1
, b
2
),
ceea ce nseamn c se va reduce simultan i o linie i o coloan din tabel.
Prin urmare, la sfritul algoritmului, numrul celulelor bazice va mai
mic dect m + n 1, adic vom obine o soluie degenerat. Continund
algoritmul, vom alege celula (2,3) i astfel vom avea x
23
= min(17, 18) = 17.
n continuare, pentru celula (3, 3) avem x
32
= min(1, 13) = 1;
iar pentru celula (3,4) x
34
= min(12, 12) = 12.
Soluia bazic va introdus n tabel, iar baza obinut este:
B = (1, 1), (1, 2), (2, 3), (3, 3), (3, 4) adic m+n 1 = 3 + 4 1 = 6 > 5
2 1
7 8
2 3 15
3
1 2
17
1 17
1 2
3 1
1 12
13
7 8 18 12
Dac avem soluie bazic degenerat, atunci nu putem aplica algorit-
mul de transport, deoarece la rezolvarea sistemului u
i
+v
j
= c
ij
, (i, j) B nu
este sucient teorema 7.1.6, indc sistemul este de dou ori nedeterminat
(vom avea 5 ecuaii i 7 variabile).
n aceste cazuri, prima dat, va trebui s eliminm degenerarea. Se
poate verica fr dicultate c are loc relaia b
1
+ b
2
= a
1
. Degenerarea
va eliminat prin perturbare. Alegem > 0 foarte mic, pe care-l
vom aduna la valorile (a
i
)
i=1,3
, respectiv (b
j
)
j=1,4
, astfel nct problema s
rmn echilibrat i s nu aib loc condiia de mai sus. Astfel putem scrie
problema dat n felul urmtor:
2 1 2 3 15
1 2 3 1 17
3 1 1 2 13 +
7 8 + 18 12
Aplicnd metoda colului de N-V, putem scrie:
i
i
JATEK 2005/3/11 10:29 page 202 #202
i
i
i
i
i
i
202 7. Modele speciale de programare liniar. Problema de transport
(1, 1) x
11
= min(15, 6) = 7 (1, 2) x
12
= min(8, 8 +) = 8
(2, 2) x
22
= min(17, ) = (2, 3) x
23
= min(17 , 18) = 17
(3, 3) x
33
= min(13 +, 1 +) = 1 + (3, 4) x
34
= min(12, 12) = 12
Astfel avem baza: B = (1, 1), (1, 2), (2, 2), (2, 3), (3, 3), (3, 4) i tabelul
de transport cu soluiile bazice:
v
1
v
2
v
3
v
4
2 1
u
1
7 8
2 3 15
2 3
u
2
1
17-
1 17
1 2
u
3
3 1
1+ 12
13 +
7 8 + 18 12
f(x
B
) = 2 7 + 1 8 + 2 + 3 (17 ) + (1 +) + 2 12 =
= 14 + 8 + 2 + 51 3 + 1 + + 24 = 98 u.m.
Vericm optimalitatea soluiei. Scriem sistemul liniar de ecuaii: u
i
+
v
j
= c
ij
, (i, j) B i determinm valorile variabilelor duale.
u
1
+v
1
= 2 u
2
+v
3
= 3 u
3
+v
3
= 1
u
1
+v
2
= 1 u
2
+v
2
= 2 y
3
+v
4
= 2
Lund u
1
= 0, avem pe rnd:
u
2
= 1 v
1
= 2 v
3
= 2
u
3
= 1 v
2
= 1 v
4
= 3
. Vericm
optimalitatea soluiei problemei duale prin folosirea unui tabel ajutator:
2 1 2 3
0
2
0
1
0
2
0
3
0
1
1
-2
2
0
3
0
1
-3
-1
3
2
1
1
1
0
2
0
i
i
JATEK 2005/3/11 10:29 page 203 #203
i
i
i
i
i
i
7.1. Probleme propuse i rezolvate 203
Deoarece exist (i, j) pentru care c
ij
(u
i
+ v
j
) < 0, soluia problemei
duale nu este optim, prin urmare nici soluia bazic a problemei de transport
nu este optim.
Dintre valorile negative alegem minimul (-3) i astfel celula liber care va
intra n baz va (2,4).
Revenim la tabelul de transport i, pornind cu celula liber (2,4), vom
construi -ciclul.
2 1
7 8
2 3 15
2 3 1
17-
1

17
1 2
1+ 12
3 1 13 +
7 8+ 18 12
Putem scrie:
Q
_
e
2
e
4
_
+ ( x
34
Q)
_
e
3
e
4
_
+ ( x
33
+Q)
_
e
3
e
3
_
+ ( x
23
Q)
_
e
2
e
3
_
Q
_
e
2
e
4
_
+ (12 Q)
_
e
3
e
4
_
+ (1 + +Q)
_
e
3
e
3
_
+ (17 ve Q)
_
e
2
e
3
_
Rezolvm ecuaiile: 12 Q = 0, 17 Q = 0 i vom alege Q =
min12 17 = 12, astfel celula (3,4) va iei din baz. Pe -ciclul construit
efectum redistribuirea soluiei i obinem urmtorul tabel:
i
i
JATEK 2005/3/11 10:29 page 204 #204
i
i
i
i
i
i
204 7. Modele speciale de programare liniar. Problema de transport
2 1
7 8
2 3 15
2 3 1
1
5- 12
17
1
3 1
13+
2 13 +
7 8 + 18 12
Valoarea funciei de scop pentru aceast soluie este:
f(x
B
) = 27+18+2+3(5)+112+1(13+) = 14+8+2+153+12+13+ = 72
n continuare, efectum iteraia a doua i vericm optimalitatea soluiei
obinute. Avem:
_

_
u
1
+v
1
= 2
u
1
+v
2
= 1
u
2
+v
2
= 2
u
2
+v
3
= 3
u
2
+v
4
= 1
u
3
+v
3
= 1
.
Lund u
1
= 0, obinem pe rnd:
u
2
= 1 v
1
= 2 v
3
= 2
u
3
= 1 v
2
= 1 v
4
= 0
.
Completm tabelul ajuttor:
2 1 2 0
0
2
0
1
0
2
0
3
3
1
1
-2
2
0
3
0
1
0
-1
3
2
1
1
1
0
2
3
Deoarece c
21
(u
2
+v
1
) = 2 < 0, rezult c soluia nu este optim, iar
cu celula liber (2,1) vom construi -ciclul. Scriem tabelul de transport:
i
i
JATEK 2005/3/11 10:29 page 205 #205
i
i
i
i
i
i
7.1. Probleme propuse i rezolvate 205
2 1
7 8
2 3 15
1 2 3 1

5 12
17
1
3 1
13 +
2 13 +
7 8 + 18 12
Putem scrie n continuare:
Q
_
e
2
e
1
_
+ ( x
11
Q)
_
e
1
e
1
_
+ ( x
12
+Q)
_
e
1
e
1
_
+ ( x
22
Q)
_
e
2
e
2
3
_
Q
_
e
2
e
1
_
+ (7 Q)
_
e
1
e
1
_
+ (8 +Q)
_
e
1
e
1
_
+ ( Q)
_
e
2
e
2
3
_
Dintre soluiile ecuaiilor 7 Q = 0 i Q = 0 vom alege Q = . Astfel
celula (2,2) va iei din baz i pe - ciclul construit efectum o redistribuire
a soluiei i astfel vom obine noile soluii bazice. Avem:
2 1
7 8+
2 3 15
1 3 1

2
5 12
17
1
3 1
13+
2 13+
7 8+ 18 12
i
i
JATEK 2005/3/11 10:29 page 206 #206
i
i
i
i
i
i
206 7. Modele speciale de programare liniar. Problema de transport
Valoarea funciei de scop este:
4

j=1
3

i=1
c
ij
x
ij
= 2(7 ) + 1(8 +) + 1 + 3(5 ) + 1 12 + 1(13 +) =
= 14 2 + 8 + + + 15 3 + 12 + 13 + =
= 22 + 27 3 + 13 + = 66 2.
Pentru a verica optimalitatea soluiei, scriem mai nti sistemul de
ecuaii u
i
+v
j
= c
ij
, (i, j) B. Adic avem pe rnd:
_

_
u
1
+v
1
= 2
u
1
+v
2
= 1
u
2
+v
1
= 1
u
2
+v
3
= 3
u
2
+v
4
= 1
u
3
+v
3
= 1
.
Pentru u
1
= 0, avem:
u
2
= 1 v
1
= 2 v
3
= 4
u
3
= 3 v
2
= 1 v
4
= 2
. Completm tabelul
ajuttor:
2 1 4 2
2
0
2
0
1
0
-2
3
1
-1
1
0
2
2
3
0
1
0
-3
3
4
1
3
1
0
2
3
Soluia nu este optim, deoarece pentru celula (1,3) avem c
13
(u
1
+v
3
) =
2 < 0.
Cu celula (1,3), care va intra n baz, construim -ciclul i obinem:
i
i
JATEK 2005/3/11 10:29 page 207 #207
i
i
i
i
i
i
7.1. Probleme propuse i rezolvate 207
2 1 2
7- 8+
3 15
1 3 1
2
5-
12
17
1
3 1
13+
2 13+
7 8+ 18 12
n continuare avem pe rnd:
Q
_
e
1
e
3
_
+ ( x
23
Q)
_
e
2
e
3
_
+ ( x
21
+Q)
_
e
2
e
1
_
+ ( x
11
Q)
_
e
1
e
1
_
Q
_
e
1
e
3
_
+ (5 Q)
_
e
2
e
3
_
+ ( +Q)
_
e
2
e
1
_
+ (7 Q)
_
e
1
e
1
_
Rezolvm ecuaiile 5Q = 0, 7Q = 0 i alegem Q = min5, 7
= 5 . Astfel celula (2,3) va iei din baz i, efectund o redistribuire
pe -ciclu, obinem urmtorul tabel de transport:
v
1
v
2
v
3
v
4
2 1 2
u
1
2 8+ 5-
3 15
1 1
u
2
5
2 3
12
17
1
u
3
3 1
13+
2 13+
7 8+ 18 12
i
i
JATEK 2005/3/11 10:29 page 208 #208
i
i
i
i
i
i
208 7. Modele speciale de programare liniar. Problema de transport
Valoarea funciei de transport este acum:
f(x
B
) = 2 2 + 1 (8 +) + 2 (5 ) + 1 12 + 1 (1 +) + 1 5 =
= 4 + 8 + + 10 2 + 12 + 13 + + 5 = 52 u.m.
n continuare, se efectueaz urmtoarea iteraie cu vericarea optimalitii
soluiei duale.
Avem de rezolvat astfel sistemul:
_

_
u
1
+v
1
= 2
u
1
+v
2
= 1
u
1
+v
3
= 2
u
2
+v
1
= 1
u
2
+v
4
= 1
u
3
+v
3
= 1
. Lund u
1
= 0, soluiile
sistemului sunt:
u
2
= 1 v
1
= 2 v
3
= 2
u
3
= 1 v
2
= 1 v
4
= 2
. Construim tabelul ajut-
tor:
2 1 2 2
0
2
0
1
0
2
0
3
1
-1
1
0
2
2
3
2
1
0
-1
3
2
1
1
1
0
2
3
Deoarece c
ij
(u
i
+ v
j
) 0, pentru orice i = 1, 3 i j = 1, 4, rezult c
soluia este optim. Lund = 0, avem: x
11
= 2, x
12
= 8, x
13
= 5, x
21
= 5,
x
24
= 12, x
33
= 13 i f
min
= 52 u.m.
i
i
JATEK 2005/3/11 10:29 page 209 #209
i
i
i
i
i
i
7.1. Probleme propuse i rezolvate 209
Probleme propuse
S se rezolve urmtoarele probleme de transport:
1.
2 1 3 2 150
1 2 3 1 150
3 2 1 2 200
90 75 85 150
Soluia este: x
11
= 75, x
12
= 75, x
21
= 15, x
24
= 135, x
33
= 85, x
34
= 15.
Cost de transport C
T
= 490.
2.
1 3 4 2 60
2 1 2 3 280
4 1 3 2 210
80 200 70 250
Soluia este: x
11
= 60, x
21
= 205, x
22
= 190, x
23
= 70, x
32
= 10,
x
34
= 200.
Cost de transport C
T
= 840.
3.
3 5 4 200
5 2 4 100
6 3 5 80
150 120 60
Soluia este: x
11
= 150, x
13
= 50, x
22
= 100, x
32
= 20, x
33
= 10.
Cost de transport C
T
= 960.
i
i
JATEK 2005/3/11 10:29 page 210 #210
i
i
i
i
i
i
210 7. Modele speciale de programare liniar. Problema de transport
4.
1 4 2 60
2 2 3 280
4 3 2 210
80 70 250
Soluia este: x
11
= 40, x
12
= 120, x
13
= 40, x
21
= 150, x
31
= 50.
Cost de transport C
T
= 1350.
5.
2 5 1 6
3 7 2 10
4 1 5 13
3 9 19
Soluia este: x
13
= 6, x
23
= 10, x
31
= 3, x
32
= 9, x
33
= 1.
Cost de transport C
T
= 52.
i
i
JATEK 2005/3/11 10:29 page 211 #211
i
i
i
i
i
i
Capitolul 8
Teoria jocurilor
8.1 Introducere n teoria jocurilor
Istoric
Putem distinge dou tipuri de jocuri: jocuri de noroc i jocuri strategice.
n secolul al XVII-lea au fost studiate jocurile de noroc de ctre B. Pascal,
P. Fermat, Jacques i D. Bernoulli, ns lucrrile lor au fundamentat teoria
probabilitilor. Aspectul sub care au fost privite i studiate aceste jocuri a
fost diferit de cel al teoriei jocurilor. Studiul matematic al jocurilor de noroc
se realizeaz cu instrumentele i metodele teoriei probabilitilor.
Jocurile strategice se caracterizeaz prin situaii de conict.
Situaii de conict au existat dintotdeauna ns studiul lor matematic a
aprut recent.
n secolul al XIX-lea ncepe interesul pentru analiza matematic a situ-
aiilor de conict n sectorul economic, lucrrile lui Cournot, Pareto, Walras
fundamentnd econometria.
n 1921, E. Borel public primul studiu de teoria jocurilor. Funda-
mentarea teoriei a fost fcut de Neumann i Morgenstern, prin publicarea
primei cri de teoria jocurilor n 1944 cu titlul "Theory of Games and Eco-
nomic Behavoir".
n cadrul acestui capitol vom prezenta fundamentarea matematic a
jocurilor strategice mpreun cu metode numerice de rezolvare ale acestora.
Noiuni de baz
Teoria jocurilor este teoria matematic a situaiilor de conict.
Deniia 8.1.1. Prin situaii de conict nelegem circumstanele n care
se ntlnesc dou sau mai multe pri a cror activitate urmrete un scop
bine determinat i n care interesele prilor sunt contrarii.
211
i
i
JATEK 2005/3/11 10:29 page 212 #212
i
i
i
i
i
i
212 8. Teoria jocurilor
Orice situaie de conict cotidian este complex, cu numeroi factori
secundari.
n scopul efecturii unei analize matematice a situaiei de conict trebuie
construit un model al situaiei, numit joc matematic.
Se vor deni n continuare elementele fundamentale unui joc
matema-tic, i anume: partid, regula repartiiei de valori, juctori sau
parteneri.
Deniia 8.1.2. Prin partid se nelege un proces format dintr-o succe-
siune de aciuni (mutri) executate, rnd pe rnd, dup anumite reguli care
constituie caracteristica jocului. Aciunile sunt executate de un numr nit
de persoane numite juctori (sau parteneri).
ntr-un joc exist o regul a repartiiei de valori ntre juctori, care
permite ecrui juctor s-i xeze ca scop realizarea unei valori ct mai
mari.
Pentru formularea matematic a situaiei de conict,n descrierea unui
joc, considerm n juctori, notai cu i 1, 2, . . . , n.
Fie A
i
mulimea aciunilor care sunt la dispoziia juctorului i, i = 1, n.
Dac lum a
i
A
i
, atunci spunem c juctorul i a ales aciunea a
i
i 1, . . . , n.
Utilitatea alegerii aciunii a
i
pentru juctorul i poate msurat cu o
funcie real de n variabile reale, notat cu f
i
, care reprezint ctigul juc-
torului i, pentru i = 1, n.
Problema central a teoriei jocurilor const n determinarea modului de
alegere de ctre juctorul i a aciunii a
i
n scopul obinerii unui ctig maxim,
innd seama c i ceilali juctori urmresc acelai scop.
Clasicarea jocurilor
Jocurile pot clasicate dup diferite criterii:
a) Dup numrul juctorilor, putem distinge jocuri cu 2 juctori, 3
juctori etc.
De obicei numrul juctorilor nu coincide cu numrul persoanelor zice
care particip la joc, acestea pot forma coaliii.
Numrul juctorilor este determinat de mulimea intereselor contrarii
care se confrunt.
De exemplu, jocul bridge este un joc matematic cu doi juctori (dei
numrul persoanelor zice care particip este 4); un atac aerian poate
descris prin modelul unui joc cu doi juctori.
i
i
JATEK 2005/3/11 10:29 page 213 #213
i
i
i
i
i
i
8.2. Jocuri matriceale 213
b) Dac pentru un joc cu n juctori exist un numr real c astfel
nct:
f
1
(a
1
i
1
, . . . , a
n
i
n
) + +f
n
(a
1
i
1
, . . . , a
n
i
n
) = c, pentru orice
(a
1
i
1
, . . . , a
n
i
n
) A
1
A
n
atunci spunem c acest joc este un joc cu sum constant.
Dac c = 0, atunci jocul se numete joc cu sum nul.
c) Dup numrul aciunilor care stau la dispoziia ecrui juctor putem
distinge jocuri nite, dac A
1
, . . . , A
n
sunt mulimi nite, respectiv jocuri
innite, dac exist cel puin o mulime A
i
, i 1, . . . , n cu o innitate
de elemente.
d) Dup natura aciunilor care stau la baza juctorilor distingem
jocuri cu aciune liber i jocuri cu aciune aleatoare.
O aciune a
i
A
i
este liber, dac ea poate utilizat de ctre juctorul
i n orice moment.
O aciune a
i
A
i
este aleatoare, dac este aleas cu ajutorul unui
meca-nism aleatoriu (zar, urn cu bile, rulet).
De exemplu, ahul este un joc cu aciuni libere, iar tablele, un joc cu
aciuni aleatoarii.
e) Dup informaia disponibil ecrui juctor, exist:
- joc cu informaie complet, n care ecare juctor cunoate ntreaga
desfurare a jocului atunci cnd alege o anumit aciune;
- joc cu informaie incomplet, n care juctorul nu cunoate mulimea
aciunilor partenerilor (de exemplu, n bridge, nu cunoate ce cri posed
ceilali juctori).
Majoritatea jocurilor cu nsemntate practic sunt jocuri cu informaii
incomplete. Necunoaterea aciunilor adversarilor este de obicei o caracter-
istic a situaiilor de conict.
8.2 Jocuri matriceale
n continuare, vom studia jocurile nite cu doi juctori i cu sum nul.
Acestea reprezint o clas important de jocuri.
Considerm doi juctori notai cu 1 i 2. Notm cu:
A
1
= a
1
1
, . . . , a
1
m
mulimea aciunilor juctorului 1 i
A
2
= a
2
2
, . . . , a
2
n
mulimea aciunilor juctorului 2.
Presupunem c, pe parcursul partidei, juctorul 1 alege aciunea a
1
i
, iar
juctorul 2 alege aciunea a
2
j
.
i
i
JATEK 2005/3/11 10:29 page 214 #214
i
i
i
i
i
i
214 8. Teoria jocurilor
Nici unul dintre juctori nu este informat n legtur cu alegerea fcut
de cellalt.
Presupunem c, n urma acestor alegeri, juctorul 1 obine ctigul
f
1
(a
1
i
, a
2
j
), iar juctorul 2 obine ctigul f
2
(a
1
i
, a
2
j
), i are loc relaia:
f
1
(a
1
i
, a
2
j
) +f
2
(a
1
i
, a
2
j
) = 0
f
1
(a
1
i
, a
2
j
) = f
2
(a
1
i
, a
2
j
)
Astfel se poate arma c, ntr-un joc cu 2 juctori i sum nul, este
sucient s cunoatem ctigul juctorului 1. Ctigul juctorului 2 este
opusul ctigului realizat de ctre juctorul 1.
Deci un joc nit cu doi juctori i cu sum nul este complet determinat,
dac se cunosc mulimile nite A
1
, A
2
i funcia real f
1
: A
1
A
2
.
Tripletul (A
1
, A
2
, f
1
) care caracterizeaz jocul poate reprezentat cu
urmtorul tabel:
A
1
A
2
a
2
1
. . . a
2
j
. . . a
2
n
a

1
c
11
. . . c
1j
. . . c
1n
.
.
.
.
.
.
a

i
c
i1
. . . c
ij
. . . c
in
.
.
.
.
.
.
a

m
c
m1
. . . c
m
j
. . . c
mn
unde c
ij
= f
1
(a
1
i
, a
2
j
) este ctigul juctorului 1.
Matricea C = (c
ij
)
i,j
se numete matricea ctigurilor (sau matricea
plilor, matricea jocului).
Jocul nit cu 2 juctori i sum nul este complet determinat de tripletul
G = (A
1
, A
2
, C), unde C /
m,n
.
Prima etap n cercetarea situaiilor de conict este stabilirea aciunilor
juctorilor i ntocmirea matricei de pli.
8.3 Strategii
Deniia 8.3.1. Prin strategia unui juctor se nelege un ansamblu de re-
guli care denesc n mod unic alegerea aciunilor libere n funcie de situaia
concret ivit n decursul jocului.
De obicei alegerea unei aciuni libere este efectuat de juctor n decursul
jocului n funcie de situaia concret ivit.
Totui, din punct de vedere teoretic, este posibil ca toate aceste situaii
s e prevzute de juctor naintea nceperii jocului. De aceea, la nceput,
i
i
JATEK 2005/3/11 10:29 page 215 #215
i
i
i
i
i
i
8.3. Strategii 215
juctorul trebuie s intuiasc toate situaiile i s-i aleag soluia pentru
ecare dintre ele, ceea ce nseamn c juctorul a ales o strategie bine denit.
Teoria jocurilor urmrete gsirea celor mai bune strategii pentru ecare
juctor.
Juctorul trebuie s ia n considerare c adversarul este cel puin tot att
de priceput ca i el i s fac totul pentru mpiedicarea scopului acestuia.
n teoria jocurilor nu se mizeaz pe incapacitatea adversarului, ci din con-
tr se iau n calcul virtuile intelectuale ale juctorilor. Principiul juctorilor
este principiul lipsei de risc.
Un juctor alege strategia lund n considerare aciunea cea mai defavor-
abil pe care i-o rezerv adversarul.
Formularea matematic a strategiei
Fie:
A
1
= a
1
1
, . . . , a
1
m
mulimea aciunilor juctorului 1,
A
2
= a
2
1
, . . . , a
2
n
mulimea aciunilor juctorului 2 i
C = (c
ij
)
i,j
matricea plilor.
Jucndu-se mai multe partide, presupunem c juctorul 1 alege:
aciunea a
1
1
cu probabilitatea (ponderea) x
1
;
aciunea a
1
2
cu probabilitatea x
2
;
. . .
aciunea a
1
i
cu probabilitatea x
i
;
. . .
aciunea a
1
m
cu probabilitatea x
m
.
Vectorul x = (x
1
, . . . , x
m
) R
m
se numete strategia juctorului 1.
Ponderile arat n ce msur sunt folosite aciunile care stau la dispoziia
juctorului pentru a-i atinge scopul propus.
Este resc ca orice strategie x = (x
1
, . . . , x
m
) a juctorului 1 s verice
proprietatea x R
m
+
i

m
i=1
x
i
= 1.
Vom nota cu X mulimea tuturor strategiilor juctorului 1.
Adic:
X = x R
m
+

i=1
x
i
= 1
Prin analogie, putem deni strategia juctorului 2.
Jucndu-se mai multe partide, presupunem c juctorul 2 alege:
aciunea a
2
1
cu probabilitatea (ponderea) y
1
;
aciunea a
2
2
cu probabilitatea y
2
;
. . .
aciunea a
2
j
cu probabilitatea y
j
;
. . .
i
i
JATEK 2005/3/11 10:29 page 216 #216
i
i
i
i
i
i
216 8. Teoria jocurilor
aciunea a
2
n
cu probabilitatea y
n
.
Vectorul y = (y
1
, . . . , y
n
) R
n
se numete strategia juctorului 2.
Vom nota cu:
Y = y = (y
1
, . . . , y
n
) R
n
+
[
n

j=1
y
j
= 1
mulimea strategiilor juctorului 2.
Dac, ntr-o partid, juctorul 1 alege aciunea a
1
i
, iar juctorul 2 aciunea
a
2
j
, atunci ctigul juctorului 1 cu notaiile introduse n primul capitol este
c
ij
.
Dar probabilitile cu care au fost alese aceste aciuni sunt x
i
, respectiv
y
j
. Alegerile se fac n mod independent, ceea ce nseamn c probabilitatea
acestei alegeri este x
i
y
j
, (adic produsul probabilitilor). Deci probabili-
tatea ctigului c
ij
este x
i
y
j
.
Astfel ctigul juctorului 1 l putem descrie matematic cu o vari-
abil aleatoare discret care ia valorile c
ij
cu probabilitile x
i
y
j
, (i, j)
1, . . . , m 1, . . . , n.
Valoarea medie a variabilei aleatoare discrete este:
F(x, y) =
m

i=1
n

j=1
c
ij
x
i
y
j
= (x, Cy)
Funcia F : XY se numete funcie de ctig mediu i reprezint ctigul
juctorului 1, dac, n decursul partidelor, juctorii folosesc strategiile x i
y.
8.3.1 Strategii optime
Cu ajutorul funciei de ctig mediu putem deni strategiile optime ale
juctorilor.
Dac juctorul 1 folosete strategia x X, atunci el ctig cel puin:
F(x) = min
yY
F(x, y),
indiferent de strategia utilizat de ctre juctorul 2.
Juctorul urmrete obinerea unui ctig maxim, iar cel mai mare ctig
ce poate realizat de ctre el este:
max
xX
F(x) = max
xX
(min
yY
F(x, y)) (8.1)
deoarece va alege o strategie pentru a-i maximiza ctigurile.
i
i
JATEK 2005/3/11 10:29 page 217 #217
i
i
i
i
i
i
8.3. Strategii 217
Orice strategie care garanteaz juctorului 1 un ctig mediu egal cu (8.1)
se numete strategie maximin.
Deci o strategie x
0
X a juctorului 1 se numete strategie maximin,
dac:
F(x
0
) = max
xX
F(x)
Astfel putem formula urmtoarea problem de maximizare (a crei soluie
este x
0
) :
(A)
_

_
F(x) : x X max
unde F : X R denit prin
F(x) = min
yY
F(x, y) pentru orice x X.
Soluia optim a problemei (A), notat cu x
0
, este strategie maximin pentru
juctorul 1.
Juctorul 2 urmrete realizarea unei pierderi minime. Astfel, folosind
un raionament analog, putem scrie c juctorul 2 pierde cel mult:
F(y) = max
xX
F(x, y)
dac folosete strategia y Y.
Pentru a-i minimiza pierderile, alege o strategie pentru care obine:
min
yY
F(y) = min
yY
max
xX
F(x, y) (8.2)
Strategia care garanteaz juctorului 2 pierderea minim este egal cu
(8.2) i se numete strategie minimax.
Deci o strategie y
0
Y a juctorului 2 se numete strategie minimax,
dac:
F(y
0
) = min
yY
F(y)
Strategiile minimax sunt soluiile problemei de minimizare, i anume:
(B)
_

_
F(y) : y Y min unde
F : Y R denit prin
F(y) = max
xX
F(x, y) pentru orice y Y.
Deniia 8.3.2. Fie X, Y dou mulimi nevide, oarecare i F : X Y R
o aplicaie. Spunem c punctul (x
0
, y
0
) XY este un punct a al funciei
F relativ la mulimea X Y dac:
F(x, y
0
) F(x
0
, y
0
) F(x
0
, y) pentru orice (x, y) X Y.
i
i
JATEK 2005/3/11 10:29 page 218 #218
i
i
i
i
i
i
218 8. Teoria jocurilor
Exemplu. Considerm mulimile X = Y = R, F : X Y R denite prin
F(x, y) =
x
2
a
2
+
y
2
b
2
pentru orice (x, y) X Y, a, b R

.
Reprezentnd aceast suprafa de ordinul doi

x
2
a
2
+
y
2
b
2
= z
obinem un paraboloid - hiperbolic:
O
z
Se poate verica uor c punctul (0, 0) este un punct a al funciei F
relativ la mulimea X Y, deoarece:
F(x, 0) F(0, 0) F(0, y)
pentru orice (x, y) X Y.
Teorema 8.3.1.
Fie x
0
X i y
0
Y. Fie F : X Y R, F(x) = minF(x, y), y Y
F : X R, i F(y) = maxF(x, y), x X, F : Y R.
Sunt adevrate urmtoarele armaii:
1. Dac perechea (x
0
, y
0
) X Y este un punct a al funciei F, atunci
F(x
0
) = F(x
0
, y
0
) = F(y
0
)
2. Dac F(x
0
) = F(y
0
), atunci (x
0
, y
0
) este un punct a al funciei F.
i
i
JATEK 2005/3/11 10:29 page 219 #219
i
i
i
i
i
i
8.3. Strategii 219
Demonstraie. 1. Presupunem c (x
0
, y
0
) este un punct a al funciei F.
Atunci pentru orice x X are loc:
F(x, y
0
) F(x
0
, y
0
)
max
xX
F(x, y
0
) F(x
0
, y
0
)

F(y
0
) F(x
0
, y
0
) (8.3)
Prin analogie, avem pentru orice y Y :
F(x
0
, y
0
) F(x
0
, y)

F(x
0
, y
0
) min
yY
F(x
0
, y)
F(x
0
, y
0
) F(x
0
) (8.4)
Folosind deniia funciilor F i F avem:
F(x) F(x, y) F(y) pentru orice (x, y) X Y
Considerm cazul particular: x = x
0
, y = y
0
i obinem:
F(x
0
) F(x
0
, y
0
) F(y
0
) (8.5)
Din (8.3), (8.4) i (8.5) rezult c F(x
0
) = F(x
0
, y
0
) = F(y
0
)
2. Acum presupunem c F(x
0
) = F(y
0
) i vom demonstra c punctul
(x
0
, y
0
) este un punct a al funciei F.
Folosim relaia (8.5), adic avem:
F(x
0
) F(x
0
, y
0
) F(y
0
)
dar din ipotez F(x
0
) = F(y
0
)
_

F(x
0
) = F(x
0
, y
0
) = F(y
0
)
Pentru orice (x, y) X Y putem scrie, folosind deniia funciilor F i
F, c:
F(x, y
0
) F(y
0
) = F(x
0
, y
0
) = F(x
0
) F(x
0
, y)
de unde rezult c (x
0
, y
0
) este un punct a al funciei F.
Consecina 8.3.2. Fie F : X Y R i funciile F, F denite n teorema
8.3.1 Punctul (x
0
, y
0
) X Y este un punct a al funciei F relativ la
X Y
x
0
este un punct de maxim al funciei F relativ la X i y
0
este un punct
de minim al funciei F relativ la Y i are loc relaia:
max
xX
min
yY
F(x, y) = min
yY
max
xX
F(x, y) = F(x
0
, y
0
)
i
i
JATEK 2005/3/11 10:29 page 220 #220
i
i
i
i
i
i
220 8. Teoria jocurilor
Demonstraie. Mai nti, vom presupune c (x
0
, y
0
) este un punct a pentru
funcia F i vom demonstra c x
0
este punct maxim i y
0
este punct minim.
Dac (x
0
, y
0
) este punct a, atunci folosind teorema 8.3.1 putem scrie:
F(x
0
) = F(x
0
, y
0
) = F(y
0
) (8.6)
Folosind deniia funciilor:
F(x) = min
yY
F(x, y), x X
F(y) = max
xX
F(x, y), y Y
putem scrie:
F(x) F(x, y) F(y)
F(x) F(y)
Deci pentru orice x X are loc inegalitatea. Lund y = y
0
F(x) F(y
0
).
Dar din teorema 8.3.1 avem F(y
0
) = F(x
0
) x
0
este punct de maxim al
funciei F relativ la X.
n mod analog, demonstrm c y
0
este punct de minim pentru F relativ
la Y.
Din cele demonstrate acum rezult c:
F(x
0
) = max
xX
F(x) = max
xX
min
yY
F(x, y) i
F(y
0
) = min
yY
F(y) = min
y
max
x
F(x, y)
i pe baza teoremei 8.3.1 obinem:
max
xX
min
yY
F(x, y) = min
yY
max
xX
F(x, y) = F(x
0
, y
0
)
Acum, pentru a demonstra reciproca armaiei, vom presupune c
x
0
este punct de maxim:
F(x
0
) = max
xX
F(x) = max
xX
min
yY
F(x, y) i
y
0
punct de minim:
F(y
0
) = min
yY
F(y) = min
yY
max
xX
F(x, y)
Deoarece max
xX
min
yY
F(x, y) = min
yY
max
xX
F(x, y)
rezult c F(x
0
) = F(y
0
) (x
0
, y
0
) punct a al funciei F relativ la
mulimea X Y.
i
i
JATEK 2005/3/11 10:29 page 221 #221
i
i
i
i
i
i
8.3. Strategii 221
Teorema 8.3.3. Dac X R
m
i Y R
n
sunt mulimi compacte, nevide,
iar F : X Y R este o funcie continu, atunci funciile F : X R i
F : Y R sunt continue.
n continuare, prezentm condiiile suciente pentru existena
punctului a.
Deniia 8.3.3. Fie X R
m
, Y R
n
mulimile nevide i convexe. O
funcie f : X Y R se numete concav - convex (respectiv strict
concav - convex), dac:
(i) pentru orice y Y funcia F(, y) : X R este concav (respectiv
strict concav);
(ii) pentru orice x X funcia F(x, ) : Y R este convex (strict
convex).
Teorema 8.3.4. Dac X R
m
i Y R
n
sunt mulimi convexe, nevide,
compacte i funcia F : X Y R este strict concav - convex, continu,
atunci F posed cel puin un punct a relativ la X Y.
Teorema 8.3.5. Dac X R
m
, Y R
n
sunt mulimi convexe, nevide i
compacte, iar funcia F : XY R este o funcie concav-convex continu,
atunci F posed cel puin un punct a relativ la X Y.
Consecina 8.3.6. Fie matricea C /
m,n
(R) i:
X = x R
m
+
[
m

i=1
x
i
= 1, Y = y R
n
+
[
n

j=1
y
j
= 1.
Funcia F : X Y R denit prin F(x, y) = (x, Cy) pentru orice
(x, y) X Y posed cel puin un punct a relativ la X Y.
Teorema 8.3.7. Dac X, Y sunt mulimi nevide i F : X Y R este o
funcie astfel nct s existe numerele:
max
xX
min
yY
F(x, y), min
yY
max
xX
F(x, y)
atunci este adevrat inegalitatea:
max
xX
min
yY
min
yY
max
xX
F(x, y).
Avem egalitate, dac i numai dac F posed cel puin un punct a relativ la
X Y.
i
i
JATEK 2005/3/11 10:29 page 222 #222
i
i
i
i
i
i
222 8. Teoria jocurilor
Demonstraie. Fie x X oarecare. Pentru orice y Y are loc:
min
vY
F(x, v) F(x, y) max
uX
F(u, y)
min
vY
F(x, v) max
uX
F(u, y)
max
xX
min
vY
F(x, v) max
uX
F(u, y)
max
xX
min
vY
F(x, v) min
yY
max
uX
F(u, y)
Efectum o schimbare de variabile: v = y, u = x i obinem inegalitatea pe
care am avut-o de demonstrat.
Acum presupunem c are loc:
max
xX
min
yY
F(x, y) = min
yY
max
xX
F(x, y)
i vom demonstra c F admite punct a.
Alegem x
0
X (exist un astfel de element), astfel nct:
min
yY
F(x
0
, y) = max
xX
min
yY
F(x, y)
F(x
0
) = max
xX
F(x)
de unde rezult c x
0
este punct de maxim.
Alegem y
0
Y, astfel nct:
max
xX
F(x, y
0
) = min
yY
max
xX
F(x, y)
F(y
0
) = min
yY
F(y)
y
0
este punct de minim, iar pe baza consecinei 8.3.2 rezult c punctul
(x
0
, y
0
) este un punct a a lui F.
Dac presupunem c F admite punct a, atunci din consecina 8.3.2 avem
egalitatea, iar teorema este complet demonstrat.
Acum prezentm condiii suciente pentru a avea egalitate.
Teorema 8.3.8. (Kakutani 1941)
Dac X R
m
i Y R
n
sunt mulimi convexe, compacte, nevide, iar
F : X Y R este o funcie concav - convex continu, atunci exist
numerele max
xX
min
yY
F(x, y) i min
yY
max
xX
F(x, y) i sunt egale.
Consecina 8.3.9. (J.V. Neumann 1928) Fie o matrice C /
m,n(R)
i
mulimile:
X = x R
m
+
[
m

i=1
x
i
= 1, Y = y R
n
+
[
n

j=1
y
j
= 1
i
i
JATEK 2005/3/11 10:29 page 223 #223
i
i
i
i
i
i
8.3. Strategii 223
Dac F : X Y R este denit prin:
F(x, y) = (x, Cy)
atunci exist numerele max
xX
min
yY
F(x, y), min
yY
max
xX
F(x, y) i
sunt egale.
Acest rezultat, dat de J. von Neumann, este foarte important, deoarece
asigur rezolvabilitatea jocurilor matriceale.
Din teorema lui Neumann 8.3.9, rezult c numerele (8.1) i (8.2) sunt
egale, adic valorile optime ale funciilor de scop ale problemelor de opti-
mizare (A) i (B) sunt egale.
Are loc urmtoarea proprietate:
Teorema 8.3.10. Pentru orice joc matriceal sunt adevrate urmtoarele ar-
maii:
1. dac (x
0
, y
0
) X Y este un punct a al funciei F relativ la X Y,
atunci x
0
este o strategie maximin a juctorului 1 i y
0
este o strategie
minimax a juctorului 2;
2. dac x
0
X este o strategie maximin a juctorului 1 i y
0
Y este o
strategie minimax a juctorului 2, atunci (x
0
, y
0
) este un punct a al
funciei F relativ la X Y.
Demonstraie. Folosind teoremele minimax 8.3.1, 8.3.2, demonstraia este
banal.
Observaie. Din teorema 8.3.10, rezult c cele mai bune strategii pentru
juctorul 1 sunt strategiile maximin i pentru juctorul 2 strategiile minimax.
Deoarece (x
0
, y
0
) este un punct a pentru funcia F, are loc relaia:
F(x, y
0
) F(x
0
, y
0
) F(x
0
, y) pentru orice (x, y) X Y.
Nici unul dintre juctori nu este interesat s-i schimbe strategia. Din aceast
inegalitate, se poate observa c pentru orice alt strategie x X, ctigul
juctorului 1 devine mai mic, iar pentru orice alt strategie y Y, pierderile
juctorului 2 devin mai mari.
Perechea (x
0
, y
0
) se numete soluia jocului matriceal (unde x
0
, y
0
sunt strategii optime).
Pe baza teoremelor prezentate, se poate arma c (x
0
, y
0
) X Y este
soluia jocului matriceal, dac i numai dac este un punct a al funciei F
relativ la X Y.
Numrul F(x
0
, y
0
)
not
= w se numete valoarea jocului matriceal.
i
i
JATEK 2005/3/11 10:29 page 224 #224
i
i
i
i
i
i
224 8. Teoria jocurilor
Din 8.3.9 rezult c un joc matriceal are o singur valoare egal cu nu-
merele (8.1), (8.2).
w este cel mai mare ctig al juctorului 1 la care poate spera s i-l
achi-ziioneze i este cea mai mic pierdere pe care juctorul 2 i-o asum.
A rezolva un joc matriceal nseamn a gsi o soluie a jocului i valoarea
jocului.
8.3.2 Strategii optime ntr-un joc matriceal simetric
Deniia 8.3.4. Fie o matrice ptratic C /
n
(R).
Matricea se numete strmb simetric, dac elementele de pe diagonala
principal sunt egale cu 0, iar succesiunea elementelor de pe linii este aceeai
cu succesiunea elementelor pe coloane cu semn schimbat.
Adic: C
T
= C.
De exemplu matricea:
_
_
0 1 2
1 0 3
2 3 0
_
_
este o matrice strmb simetric.
Deniia 8.3.5. Un joc matriceal G = (A
1
, A
2
, C) se numete joc simetric,
dac [A
1
[ = [A
2
[ = n i C /
n
(R) este strmb simetric.
Teorema 8.3.11. Valoarea unui joc matriceal simetric este zero i orice
strategie optim pentru unul dintre juctori este optim i pentru cellalt
juctor.
Demonstraie. Fie G = (A
1
, A
2
, C) un joc matriceal simetric, C /
n
(R).
Mulimea X a strategiilor juctorului 1 este egal cu Y. Folosind proprietatea
C = C
T
, putem scrie:
F(x, y) = (x, C
T
y) = (Cx, y) = F(y, x) (8.7)
pentru orice (x, y) X Y.
Dac lum x = y, obinem F(x, x) = F(x, x) F(x, x) = 0 pentru
orice x X. Adic, n cazul n care juctorii folosesc aceeai strategie, ctigul
mediu este zero.
Fie acum (x
0
, y
0
) X Y o soluie a jocului. Putem scrie:
F(x, y
0
) w F(x
0
, y) pentru orice (x, y) X Y
nlocuind pe x cu y
0
, iar pe y cu x
0
i folosind relaia F(x
0
, x
0
) = F(y
0
, y
0
) =
0, obinem w = 0.
i
i
JATEK 2005/3/11 10:29 page 225 #225
i
i
i
i
i
i
8.3. Strategii 225
Pentru a arta c strategia optim pentru unul dintre juctori este optim
i pentru cellalt juctor, scriem:
F(x, y
0
) F(x
0
, y
0
) F(x
0
, y) pentru orice (x, y) X Y
deoarece (x
0
, y
0
) este punct a pentru F.
Folosind relaia (8.7), obinem:
F(y
0
, x) F(y
0
, x
0
) F(y, x
0
)
F(y, x
0
) F(y
0
, x
0
) F(y
0
, x)
Deoarece X = Y (y
0
, x
0
) este punct a al funciei F relativ la X Y.
Adic orice strategie optim pentru juctorul 1 este optim i pentru
juctorul 2 i invers.
Observaie. Dac valoarea unui joc matriceal este zero nseamn c juc-
torul 1 nu ctig nimic i juctorul 2 nu pierde nimic, adic regulile jocului
nu favorizeaz pe nici unul din juctori.
Un joc matriceal cu valoarea zero se numete joc echitabil.
Din teorema 8.3.11 rezult c orice joc simetric este joc echitabil, ns
reciproca armaiei nu este adevrat.
8.3.3 Proprieti ale strategiilor optime i ale valorii unui joc
matriceal
Orice joc matriceal are cel puin o soluie, deoarece funcia F are cel
puin un punct a (vezi consecina 8.3.9) relativ la mulimea X Y.
Teorema 8.3.12. Un joc matriceal are e o soluie unic, e o innitate de
soluii.
n continuare, prezentm cteva proprieti care arat cum se schimb
valoarea jocului, dac efectum operaii aritmetice asupra elementelor ma-
tricei de pli.
Teorema 8.3.13. Fie un numr real oarecare notat cu k i G = (A
1
, A
2
, C)
un joc matriceal cu matricea de pli:
C =
_
_
_
c
11
. . . c
1n
.
.
.
c
m1
. . . c
mn
_
_
_
i
i
JATEK 2005/3/11 10:29 page 226 #226
i
i
i
i
i
i
226 8. Teoria jocurilor
Dac

G = (A
1
, A
2
,

C) este un joc matriceal cu matricea de pli:

C =
_
_
_
c
11
+k . . . c
1n
+k
.
.
.
c
m1
+k . . . c
mn
+k
_
_
_
atunci are loc relaia w = w + k i orice soluie a unuia dintre jocuri este
soluie i pentru cellalt joc matriceal.
Demonstraie. Scriem funcia de ctig mediu pentru jocul

G :

F(x, y) =
m

i=1
n

j=1
(c
ij
+k)x
i
y
j
= F(x, y) +k
unde F este funcia de ctig mediu al jocului G.
Putem scrie:
max
xX
min
yY

F(x, y) = max
xX
min
yY
F(x, y) +k
w = w +k
Acum lum o soluie a jocului G notat cu (x
0
, y
0
) X Y. Pentru orice
(x, y) X Y are loc:
F(x, y
0
) F(x
0
, y
0
) F(x
0
, y)
Adunm numrul real k i obinem:
F(x, y
0
) +k F(x
0
, y
0
) +k F(x
0
, y) +k
ceea ce se poate scrie:

F(x, y
0
)

F(x
0
, y
0
)

F(x
0
, y)
Deci punctul (x
0
, y
0
) este un punct a pentru funcia

F, adic este soluie
pentru jocul

G.
Reciproca armaiei se demonstreaz n mod similar.
Teorema 8.3.14. Fie k > 0, k R. Dac G = (A
1
, A
2
, C) este un joc
matriceal cu matricea de pli:
C =
_
_
_
c
11
. . . c
1n
.
.
.
c
m1
. . . c
mn
_
_
_
i
i
JATEK 2005/3/11 10:29 page 227 #227
i
i
i
i
i
i
8.3. Strategii pure 227
iar

G = (A
1
, A
2
,

C) este un joc matriceal cu matricea de pli:

C =
_
_
_
kc
11
. . . kc
1n
.
.
.
kc
m1
. . . kc
mn
_
_
_
atunci w = k w i orice soluie a unuia dintre jocuri este soluie i pentru
cellalt joc.
Demonstraia este uoar, se folosete un raonament analog cu cel uti-
lizat la demonstrarea teoremei 8.3.13.
8.3.4 Strategii pure
Fie G = (A
1
, A
2
, C), un joc matriceal cu C /
m,n
.
Fie mulimile de indici I = 1, 2, . . . , m, J = 1, 2, . . . , n. X, Y reprez-
int mulimea strategiilor juctorilor.
tim c x R
m
este o strategie pentru juctorul 1, dac x
i
0 pentru
orice i I i

m
i=1
x
i
= 1.
Deniia 8.3.6. O strategie x = (x
1
, . . . , x
m
) a juctorului 1 pentru care
exist i I, astfel nct x
i
= 1 se numete strategie pur pentru juctorul
1.
Se poate observa c juctorul 1 posed m strategii pure care sunt chiar
elementele bazei canonice a spaiului R
m
, i n continuare le vom nota cu
e
i
, i I.
Observaie. Orice strategie a juctorului 1 poate scris ca o combinaie
liniar a strategiilor pure.
Folosirea unei strategii pure e
i
de ctre juctorul 1 exprim faptul c
juctorul 1 alege pe tot parcursul jocului aceeai aciune a
1
i
.
n mod analog, denim strategiile pure ale juctorului 2.
tim c y R
n
este o strategie pentru juctorul 2, dac y
j
0 pentru
orice j J i

n
j=1
y
j
= 1.
Deniia 8.3.7. O strategie y = (y
1
, . . . , y
n
) a juctorului 2, pentru care
exist j J astfel nct y
j
= 1, se numete strategie pur pentru juctorul
2.
Juctorul 2 posed n strategii pure, care sunt chiar elementele bazei cano-
nice a spaiului R
n
, i n continuare le vom nota cu e
j
, j J. Cele n strategii
pure, e
j
, j J, formeaz baza canonic n R
n
.
i
i
JATEK 2005/3/11 10:29 page 228 #228
i
i
i
i
i
i
228 8. Jocuri matriceale
Observaie. Orice strategie a juctorului 2 este o combinaie liniar a strate-
giilor pure.
Folosirea unei strategii pure e
j
exprim faptul c juctorul 2 opteaz pe
tot parcursul jocului pentru aceeai aciune a
2
j
.
Urmtoarele teoreme prezint proprieti ale funciei de ctig mediu,
dac se folosesc strategii pure.
Teorema 8.3.15. ntr-un joc matriceal de tipul m n sunt adevrate ur-
mtoarele armaii:
(1) x X min
yY
F(x, y) = min
jJ
F(x, e
j
)
(2) y Y max
xX
F(x, y) = max
iI
F(e
i
, y)
Demonstraie. Fie x X o strategie oarecare a juctorului 1. Orice strategie
y Y poate scris sub forma:
y =
n

j=1
y
j
e
j
.
Vom evalua n continuare funcia de ctig mediu, F(x, y) :
F(x, y) = F
_
_
x,
n

j=1
y
j
e
j
_
_
=
n

j=1
y
j
F(x, e
j
) =
= y
1
F(x, e
1
) + +y
n
F(x, e
n
) (y
1
+ +y
n
) min
jJ
F(x, e
j
) =
= min
jJ
F(x, e
j
)
Deci avem:
F(x, y) min
jJ
F(x, e
j
) pentru orice y Y,
de unde:
min
yY
F(x, y) min
jJ
F(x, e
j
). (8.8)
Pe de alt parte, strategia pur e
j
Y pentru orice j J este strategie i o
putem scrie:
min
yY
F(x, y) F(x, e
j
) pentru orice j J.
Are loc atunci:
min
yY
F(x, y) min
jJ
F(x, e
j
) (8.9)
Din (8.8) i (8.9) rezult ceea ce trebuia demonstrat.
Analog, se demonstreaz armaia 2.
i
i
JATEK 2005/3/11 10:29 page 229 #229
i
i
i
i
i
i
8.3. Strategii pure 229
Consecina 8.3.16. Valoarea unui joc matriceal w veric relaia
w w w
Demonstraie. tim c:
w = max
xX
min
yY
F(x, y) = max
xX
min
jJ
F(x, e
j
)
min
jJ
F(e
i
, e
j
) = min
jJ
c
ij
pentru orice i I. Deci pentru orice i I avem:
w min
jJ
c
ij
i putem scrie:
w max
i
min
j
c
ij
= w
n mod analog, putem scrie:
w = min
yY
max
xX
F(x, y) = min
yY
max
iI
F(e
i
, y) max
iI
F(e
i
, e
j
) =
= max
iI
c
ij
, pentru orice j J
deoarece
w max
i
c
ij
w min
jJ
max
iI
c
ij
= w
Acum prezentm cteva criterii pentru determinarea strategiilor optime.
Teorema 8.3.17. Dac x
0
este o strategie a juctorului 1 ntr-un joc ma-
triceal de tipul mn, cu valoarea w, atunci urmtoarele armaii sunt echiva-
lente:
1. x
0
este o strategie optim a juctorului 1;
2. este adevrat egalitatea:
min
jJ
F(x
0
, e
j
) = w;
3. pentru orice j J este ndeplinit inegalitatea
w F(x
0
, e
j
).
i
i
JATEK 2005/3/11 10:29 page 230 #230
i
i
i
i
i
i
230 8. Jocuri matriceale
Demonstraie. Presupunem c x
0
este strategie optim pentru juctorul 1 i
artm c are loc relaia:
min
jJ
F(x
0
, e
j
) = w
Putem scrie:
min
yY
F(x
0
, y) = max
xX
min
yY
F(x, y) = w
folosind teorema 8.3.15 obinem:
w = max
xX
min
yY
F(x, y) = max
xX
min
jJ
F(x, e
j
) = min
jJ
F(x
0
, e
j
)
i astfel implicaia este demonstrat.
Implicaia 2 3 este evident.
Avem de artat c 3 1.
Vom presupune c pentru orice j J, este ndeplinit inegalitatea w
F(x
0
, e
j
) i vom demonstra c, n aceste condiii, x
0
este soluie optim.
Putem scrie:
w min
jJ
F(x
0
, e
j
) = min
yY
F(x
0
, y) max
xX
min
yY
F(x, y) = w
min
yY
F(x
0
, y) = max
xX
min
yY
F(x, y)
min
yY
F(x
0
, y) = w
adic x
0
este strategie optim pentru juctorul 1.
Teorema 8.3.18. Dac y
0
este o strategie pentru juctorul 2 ntr-un joc
matriceal de tipul m n, iar w este valoarea jocului, atunci urmtoarele
armaii sunt echivalente:
1. y
0
este strategie optim pentru juctorul 2;
2. este adevrat:
w = max F(e
i
, y
0
), i I;
3. pentru ecare i I este ndeplinit inegalitatea F(e
i
, y
0
) w.
Demonstraia se face folosind un raionament analog cu cel folosit la
demonstrarea teoremei 8.3.17.
Teorema 8.3.19. Dac x
0
este o strategie pentru juctorul 1 i y
0
o strategie
a juctorului 2 ntr-un joc matriceal de tipul mn, iar w R, este valoarea
jocului, atunci sunt echivalente urmtoarele armaii:
i
i
JATEK 2005/3/11 10:29 page 231 #231
i
i
i
i
i
i
8.4. Principiul dominrii 231
1. (x
0
, y
0
) este o soluie a jocului i w este valoarea sa;
2. este adevrat relaia:
max
iI
F(e
i
, y
0
) = w = min
jJ
F(x
0
, e
j
);
3. Pentru ecare (i, j) I J avem
F(e
i
, y
0
) w F(x
0
, e
j
).
Demonstraie. Folosim teoremele 8.3.17 i 8.3.18.
8.4 Principiul dominrii
Din matricea de pli se poate deduce dac alegerea anumitor aciuni este
dezavantajoas pentru juctori.
Pentru o nelegere corect, lum ca exemplu jocul:
A
1
A
2
a
2
1
a
2
2
a
2
3
a
2
4
a
1
1
3 3 -6 -5
a
1
2
1 2 4 3
a
1
3
0 2 -3 2
Juctorul 1 urmrete obinerea unui ctig maxim. Dac alege aciunea
a
1
3
, atunci se poate observa c toate ctigurile obinute (scrise n linia a
3-a) sunt mai mici (sau egale) dect ctigurile obinute cu alegerea aciunii
a
1
2
(linia a doua). Deci, indiferent de strategia folosit de ctre juctorul 2,
juctorul 1 nu va alege aciunea a
1
3
, deoarece este dezavantajoas pentru el.
Astfel putem tia linia a treia din matricea de pli, adic putem elimina
aciunea a
1
3
din mulimea aciunilor A
1
.
Astfel obinem jocul matriceal:

A
1
A
2
a
2
1
a
2
2
a
2
3
a
2
4
a
1
1
3 3 -6 -5
a
1
2
1 2 4 3
Vom analiza matricea de pli din punctul de vedere al juctorului 2.
Acest juctor urmrete minimizarea pierderilor. Putem observa c, n
coloana a doua, toate elementele sunt mai mari (sau egale) dect n prima
coloan. Astfel juctorul 2 nu va alege niciodat aciunea a
2
2
, deci coloana a
doua poate tiat din matricea de pli, aciunea a
2
2
poate eliminat din
mulimea aciunilor A
2
.
Astfel se obine jocul redus:
i
i
JATEK 2005/3/11 10:29 page 232 #232
i
i
i
i
i
i
232 8. Jocuri matriceale

A
1


A
2
a
2
1
a
2
3
a
2
4
a
1
1
3 -6 -5
a
1
2
1 4 3
Deniia 8.4.1.
Fie spaiul R
n
, n N

. Considerm punctele x = (x
1
, . . . , x
n
) R
n
i
y = (y
1
, . . . , y
n
) R
n
. Introducem o relaie de ordine astfel: x y i spunem
c x este dominat de y (sau y domin pe x), dac x
j
y
j
pentru orice
j = 1, n.
Fie jocul matriceal de tipul mn :
A
1
A
2
a
2
1
a
2
2
. . . a
2
n
a
1
1
c
11
c
12
. . . c
1n
a
1
2
c
21
c
22
. . . c
2n
.
.
.
.
.
.
a
1
m
c
m1
c
m2
. . . c
mn
Putem arma c o aciune care corespunde unei linii dominate de o alt
linie este dezavantajoas pentru juctorul 1 i o aciune care corespunde unei
coloane care domin o alt coloan este dezavantajoas pentru juctorul
2. Aciunile dezavantajoase pentru juctori pot eliminate.
Aceast regul de reducere a matricei de pli este numit principiul
do-minrii.
Teoremele urmtoare prezint legtura dintre strategiile optime i princi-
piul dominrii.
Teorema 8.4.1. Fie G = (A
1
, A
2
, C) un joc matriceal de tipul mn. Pre-
supunem c linia p a matricei C este dominat de linia q, iar

G = (

A
1
, A
2
,

C)
este un joc matriceal de tipul (m 1) n, n care

A
1
= A
1
a
1
p
i n care
matricea

C este obinut prin eliminarea liniei p din matricea C.
Sunt adevrate urmtoarele armaii:
1. dac x
0
= ( x
0
1
, . . . , x
0
p1
, x
0
p+1
, . . . , x
0
m
) este o strategie optim pentru
juctorul 1 n jocul

G, atunci x
0
= ( x
0
1
, . . . , x
0
p1
, 0, x
0
p+1
, . . . , x
0
m
) este
o strategie optim a juctorului 1 n jocul G;
2. ecare strategie optim a juctorului 2 n jocul

G este optim pentru
acest juctor i n jocul G;
3. w = w (valoarea jocului

G este egal cu valoarea jocului G).
i
i
JATEK 2005/3/11 10:29 page 233 #233
i
i
i
i
i
i
8.5. Rezolvarea jocurilor matriceale 233
Teorema 8.4.2. Fie G = (A
1
, A
2
, C) un joc matriceal de tipul m n n
care coloana r a matricei C domin coloana s, iar

G = (A
1
,

A
2
,

C) este un
joc matriceal de tipul m (n 1) n care

A
2
= A
2
a
2
r
i n care

C este
obinut prin eliminarea coloanei r din C.
Sunt adevrate urmtoarele armaii:
1. dac y
0
= ( y
0
1
, . . . , y
0
r1
, y
0
r+1
, . . . , y
0
n
) este o strategie optim a juc-
torului 2 n jocul

G, atunci y
0
= ( y
0
1
, . . . , y
0
r1
, 0, y
0
r+1
, . . . , y
0
n
) este o
strategie optim a juctorului 2 n jocul G;
2. ecare strategie optim a juctorului 1 n jocul

G este optim pentru el
i n jocul G;
3. w = w.
Cu principiul dominrii putem reduce matricea jocului prin eliminarea
aciunilor dezavantajoase.
8.5 Rezolvarea jocurilor matriceale
8.5.1 Rezolvarea jocurilor matriceale cu punct a
Teorema 8.5.1. Fie G = (A
1
, A
2
, C) un joc matriceal, C /
m,n
(R).
Dac matricea de pli admite punct a,
atunci w = w = w i sunt adevrate urmtoarele armaii:
1. c
i
0
j
0
C este un punct a al matricei C, adic
min
jJ
c
i
0
j
= w i max
iI
c
ij
0
= w
2. Dac c
i
0
j
0
C este un punct a al maticei C, atunci (e
i
0
, e
j
0
) R
m

R
n
este o soluie a jocului i c
i
0
j
0
este valoarea jocului.
Demonstraie. Din consecina 8.3.16 avem:
w w w
dar G ind un joc matriceal cu punct a, rezult c w = w, de unde avem
imediat
w = w = w
Acum demonstrm armaia (1), care este o caracterizare a punctelor a.
Dac c
i
0
j
0
C este punct a, atunci pentru orice (i, j) I J avem:
c
ij
0
c
i
0
j
0
c
i
0
j
i
i
JATEK 2005/3/11 10:29 page 234 #234
i
i
i
i
i
i
234 8. Jocuri matriceale
Folosim funcia f
1
: A
1
A
2
R denit prin
f(a
1
i
, a
2
j
) = c
ij
pentru orice (a
1
i
, a
2
j
) A
1
A
2
. Astfel inegalitatea de mai sus o putem
transcrie i obinem:
f
1
(a
1
i
, a
2
j
0
) f
1
(a
1
i
0
, a
2
j
0
) f
1
(a
1
i
0
, a
2
j
)
pentru oricare (i, j) I J.
Adic (a
1
i
0
, a
2
j
0
) este punct a pentru funcia f
1
relativ la mulimea A
1

A
2
.
Denim funciile:
f
1
(a
1
i
) = min
jJ
f
1
(a
1
i
, a
2
j
)
not
=
i
f
2
(a
2
j
) = max
iI
f
2
(a
1
i
, a
2
j
)
not
=
j
Avem:
max
iI
f
1
(a
1
i
) = f
1
(a
1
i
0
)
min
jJ
f
2
(a
2
j
) = f
2
(a
2
j
0
)
Pe de alt parte, avem:
f
1
(a
1
i
0
) = f
2
(a
2
j
0
)
deoarece (a
1
i
0
, a
2
j
0
) este punct a.
Putem scrie:
min
jJ
f
1
(a
1
i
0
, a
2
j
) = max
i
= w
min
jJ
c
i
0
j
= w
deoarece min
jJ
f
1
(a
1
i
0
, a
2
j
) = min
jJ
c
i
0
j
Prin acelai raionament, obinem:
max
iI
c
ij
0
= w
Acum demonstrm armaia (2).
Dac c
i
0
j
0
C este punct a, atunci putem scrie pentru orice (i, j) IJ
c
ij
0
c
i
0
j
0
c
i
0
j
i
i
JATEK 2005/3/11 10:29 page 235 #235
i
i
i
i
i
i
8.5. Rezolvarea jocurilor matriceale 235
Funcia de ctig mediu este:
F(x, y) =
m

i=1
n

j=1
c
ij
x
i
y
j
, de unde F(e
i
, e
j
) = c
ij
Pentru orice (i, j) I J putem scrie:
F(e
i
, e
j
0
) c
i
0
j
0
F(e
i
0
, e
j
)
Din teorema 8.3.19 rezult c (e
i
0
, e
j
0
) este soluia jocului, iar w = c
i
0
j
0
este
valoarea sa. Cu ajutorul teoremei jocurilor matriceale cu punct a, rezolvm
dup urmtoarea schem:
1. analizm matricea de pli C /
m,n
i aplicm principiul dominrii
(dac este posibil);
2. determinm numerele:
w = max
iI

i
= max
iI
min
jJ
c
ij
w = min
jJ

j
= min
jJ
max
iI
c
ij
.
Dac w = w rezult c matricea de pli admite punct a, valoarea
obi-nut este valoarea jocului.
(w este maximul minimelor din linii, iar w este minimul maximelor din
coloane)
3. din pasul 2, determinm i
0
I i j
0
J astfel nct

i
0
= min
jJ
c
i
0
j
= w

j
0
= max
iI
c
ij
0
= w
x
0
= e
i
0
i y
0
= e
j
0
(x
0
, y
0
) sunt soluii ale jocului.
Observaie. Dac matricea de pli admite punct a, atunci juctorii folos-
esc strategii pure, ceea ce nseamn c pe tot parcursul jocului juctorii
folosesc o singur aciune.
Probleme rezolvate
1. Considerm jocul matriceal:
A
1
A
2
a
2
1
a
2
2
a
2
3
a
1
1
0,30 0,25 0,15
a
1
2
0,18 0,14 0,16
a
1
3
0,35 0,22 0,17
a
1
4
0,21 0,16 0,10
i
i
JATEK 2005/3/11 10:29 page 236 #236
i
i
i
i
i
i
236 8. Jocuri matriceale
Calculm valorile:
w = max
i
min
j
c
ij
= max(0, 15; 0, 14; 0, 17; 0, 10) = 0, 17
w = min
j
max
i
c
ij
= min(0, 35; 0, 25; 0, 17) = 0, 17
w = w w = 0, 17
i
0
= 3 x
0
= (0 0 1 0) este strategie optim pentru juctorul 1
j
0
= 3 y
0
= (0 0 1) este strategie optim pentru juctorul 2.
Observaie. Dac aplicm principiul dominrii, atunci putem elimina aci-
unile a
1
1
, a
1
2
i a
1
4
din mulimea A
1
i aciunile a
2
1
, a
2
2
din mulimea A
2
. Astfel
obinem jocul redus:

A
1


A
2
a
2
3
a
3
1
0,17
Aplicm teoremele 8.4.1, 8.4.2 i putem scrie w = 0, 17 x
0
= (0 0 1 0),
y
0
= (0 0 1).
Observaie. Exist jocuri n care matricea de pli admite mai multe puncte
a. n aceste cazuri, juctorii pot folosi mai multe strategii optime. Strategia
optim poate aleas folosind un criteriu diferit de cel stabilit n joc.
2. Fie jocul cu matricea:
C =
_
_
_
_
2 9 3 1
7 6 5 8
2 3 4 10
5 6 5 6
_
_
_
_
Calculm valorile:
w = max(1, 5, 2, 5) = 5
w = min(7, 9, 5, 10) = 5
w = 5
Deoarece w = w putem scrie:
w = c
23
i
0
= 2 j
0
= 3 x
01
= (0, 1, 0, 0), y
01
= (0, 0, 1, 0)
sau:
w = c
43
i
0
= 4 j
0
= 3 x
02
= (0, 0, 0, 1), y
02
= (0, 0, 1, 0)
i
i
JATEK 2005/3/11 10:29 page 237 #237
i
i
i
i
i
i
8.5. Rezolvarea jocurilor matriceale 237
8.5.2 Metode generale de rezolvare a jocurilor matriceale
Rezolvarea jocurilor folosind calculul matriceal
Fie G = (A
1
, A
2
, C) un joc matriceal de tipul m n. Presupunem c
matricea de pli nu admite punct a.
Dac matricea de pli este:
C =
_
_
_
c
11
. . . c
1n
.
.
.
c
m1
. . . c
mn
_
_
_
atunci vom nota cu:
[] - o submatrice de ordinul r format din elementele lui C;
[j
r
] = (1 1 . . . 1), o matrice de tipul 1 r, (2 r min(m, n));
[]

- matricea adjunct a lui [];


[x] = (x
1
. . . x
m
) un vector, adic matrice de tipul 1 m;
x
0
= (x
0
1
. . . x
0
m
) strategia optim a juctorului 1;
[y] = (y
1
. . . y
n
) un vector, adic matrice de tipul 1 n;
y
0
= (y
0
1
. . . y
0
n
) strategia optim a juctorului 2;
[ x] un vector obinut din vectorul [x] prin eliminarea elementelor core-
spunztoare liniilor eliminate din C pentru a obine [];
[ y] un vector obinut din vectorul [y] dup eliminarea elementelor core-
spunztoare coloanelor luate din C pentru a obine [];
n scopul rezolvrii jocurilor cu metoda matriceal trebuie parcurse ur-
mtoarele etape:
1. alegem [] de ordinul r 2, (pornim cu r = min(m, n);)
2. calculm:
[ x] =
[j
r
][]

[j
r
] []

[j
r
]
T
not
= [x
r
1
, . . . , x
r
r
]
[ y] =
[j
r
] (
T
)

[j
r
] [
T
]

[j
r
]
T
not
= [y
r
1
, . . . y
r
r
];
3. dac exist cel puin un x
r
i
sau y
r
i
, i = 1, n negativ, atunci revenim
la pasul (1) i vom alege un alt [];
4. dac pentru orice i = 1, n avem x
r
i
0 respectiv y
r
j
0, j = 1, r
atunci calculm:
w =
[]
[j
r
][]

[j
r
]
T
5. construim vectorii [x] i [y] din [ x], [ y] punnd 0 n locurile cuvenite;
i
i
JATEK 2005/3/11 10:29 page 238 #238
i
i
i
i
i
i
238 8. Jocuri matriceale
6. vericm dac sunt satisfcute ineglitile:
m

i=1
c
ij
x
i
w pentru orice j = 1, n
n

j=1
c
ij
y
j
w pentru orice i = 1, m.
7. Dac condiiile din pasul (6) sunt vericate, atunci scriem strategia
optim a juctorilor; [x] = x
0
i [y] = y
0
i valoarea jocului w.
8. Revenim la pasul (1), pn cnd obinem toate celelalte strategii op-
time, i scriem mulimea strategiilor optime
Problem rezolvat
1. Fie jocul cu matricea de pli:
A
1
A
2
a
2
1
a
2
2
a
2
3
a
1
1
4 0 2
a
1
2
6 7 1
Calculm valorile w = 1; w = 2. Nu sunt egale, deci matricea nu admite
punct a.
Lum r = min(2, 3) = 2 i alegem:
[] =
_
4 0
6 7
_
[]
T
=
_
4 6
0 7
_
[]

=
_
7 0
6 4
_
[ x] =
[j
r
] [
T
]

[j
r
] []

[j
r
]
T
=
(1 1)
_
7 0
6 4
_
(1 1)
_
7 0
6 4
__
1
1
_ =
=
(1 4)
(1 4)
_
1
1
_ =
(1 4)
5
=
_
1
5
4
5
_
[ y] =
[j
r
] []

[j
r
] []

[j
r
]
T
=
(1 1)
_
7 6
0 4
_
(7 2)
_
1
1
_ =
(7 2)
5
=
_
7
5

2
5
_
i
i
JATEK 2005/3/11 10:29 page 239 #239
i
i
i
i
i
i
8.5. Rezolvarea jocurilor matriceale 239
[ y] nu are toate componentele pozitive. Trebuie aleas o alt submulime
[].
Fie acum: [] =
_
0 2
7 1
_
[]
T
=
_
0 7
2 1
_
[]

=
_
1 2
7 0
_
[
T
]

=
_
1 7
2 0
_
[ x] =
[j
r
] []

[j
r
][]

[j
r
]
T
=
(1 1)
_
1 2
7 0
_
(6 2)
_
1
1
_ =
(6 2)
8
=
_
3
4
1
4
_
[ y] =
[j
r
] [
T
]

[j
r
][
T
]

[j
r
]
T
=
(1 1)
_
1 7
2 0
_
(1 7)
_
1
1
_ =
(1 7)
8
=
_
1
8
7
8
_
Cum elementele lui [ x], [ y] sunt pozitive, rezult c pot componente ale
strategiilor optime.
Calculm:
w =
det[]
[j
r
][]

[j
r
]

0 2
7 1

(1 1)
_
1 2
7 0
__
1
1
_
=

0 2
7 1

(6 2)
_
1
1
_ =

0 2
7 1

8
=
14
8
=
7
4
w =
7
4
Putem scrie strategiile: [x] =
_
3
4
,
1
4
_
, [y] =
_
0,
1
8
,
7
8
_
i aplicm pasul
(6) din algoritm.
Vericm dac

2
i=1
c
ij
x
i
w j = 1, 3.
Scriind explicit avem:
_
_
_
c
11
x
1
+c
21
x
2
w
c
12
x
1
+c
22
x
2
w
c
13
x
1
+c
23
x
2
w
adic
_
3
4
1
4
_ _
4 0 2
6 7 1
_

_
7
4
7
4
7
4
_

_
9
2
7
4
7
4
_

_
7
4
7
4
7
4
_
ceea ce
este adevrat.
i
i
JATEK 2005/3/11 10:29 page 240 #240
i
i
i
i
i
i
240 8. Jocuri matriceale
Acum trebuie vericat dac:
3

j=1
c
ij
y
j
w i = 1, 2
Putem scrie:
_
4 0 2
6 7 1
_

_
_
_
_
_
_
_
0
1
8
7
8
_
_
_
_
_
_
_

_
_
_
_
7
4
7
4
_
_
_
_

_
_
_
_
7
4
7
4
_
_
_
_

_
_
_
_
7
4
7
4
_
_
_
_
ceea ce este adevrat. Deci avem strategiile optime:
x
0
= [x] =
_
3
4
,
1
4
_
y
0
= [y] =
_
0,
1
8
,
7
8
_
i valoarea jocului este w =
7
4
.
Algoritmul se termin dup ce toate matricile au fost analizate.
8.5.3 Rezolvarea jocurilor matriceale prin reducere la modele
de optimizare liniar cu restricii
Fie jocul matriceal G = (A
1
, A
2
, C), C /
m,n
(R). Strategiile optime
ale juctorilor sunt soluiile problemelor de optimizare:
(A)
_

_
F(x) [ x X max
x X
F : X R, denit prin
F(x) = min
yY
F(x, y)
(B)
_

_
F(y) [ y Y min
y Y
F : Y R, denit prin
F(y) = max
xX
F(x, y)
unde X i Y reprezint mulimea strategiilor juctorilor.
i
i
JATEK 2005/3/11 10:29 page 241 #241
i
i
i
i
i
i
8.5. Rezolvarea jocurilor matriceale 241
Folosind strategiile pure (teorema 8.3.15), aceste probleme pot scrise
n urmtoarea form echivalent:
_
_
_
min
jJ
F(x, e
j
) max
x X
(8.10)
i
_
_
_
max
iI
F(e
i
, y) min
y Y
(8.11)
Notm cu s = min
jJ
F(x, e
j
).
Putem scrie:
s = min
jJ
_
m

i=1
c
ij
x
i
_

i=1
c
ij
x
i

m

i=1
c
ij
x
i
s, 0 pentru orice j J
Notm cu t = max
iI
F(e
i
, y).
Putem scrie:
t = max
iI
_
_
n

j=1
c
ij
y
j
_
_

j=1
c
ij
y
j

n

j=1
c
ij
y
j
t, 0 pentru orice i I
Astfel avem urmtoarele probleme echivalente cu cele de mai sus:
_

_
s max
m

i=1
c
ij
x
i
s 0, j = 1, n
m

i=1
x
i
= 1,
x
i
0, i = 1, m
(8.12)
i
i
JATEK 2005/3/11 10:29 page 242 #242
i
i
i
i
i
i
242 8. Jocuri matriceale
_

_
t min
n

j=1
c
ij
y
j
t 0, i = 1, m
n

j=1
y
j
= 1,
y
j
0, j = 1, n
(8.13)
Acum analizm restriciile:
m

i=1
c
ij
x
i
s 0, j = 1, n
Presupunem c s > 0 i mprim restriciile cu s. Obinem astfel:
m

i=1
c
ij
x
i
s
1 0, j = 1, n
Notm
x
i
s
= u
i
pentru orice i = 1, m.
Are loc relaia:
m

i=1
x
i
s
=
m

i=1
u
i

m

i=1
u
i
=
1
s
n mod analog, vom transcrie problema (8.13). Avem:
n

j=1
c
ij
y
j
t 0, i = 1, m.
Presupunem c t > 0 i mprim restriciile cu t. Obinem astfel:
n

j=1
c
ij
y
j
t
1 0, i = 1, m
Notm
y
j
t
= v
j
pentru orice j = 1, n.
Are loc relaia:
i
i
JATEK 2005/3/11 10:29 page 243 #243
i
i
i
i
i
i
8.5. Rezolvarea jocurilor matriceale 243
n

j=1
y
j
t
=
n

j=1
v
j

n

j=1
v
j
=
1
t
Astfel problemele (8.12), (8.13) sunt echivalente cu:
_

_
m

i=1
u
i
min
m

i=1
c
ij
u
i
1, j = 1, n
u
i
0, i = 1, m
(8.14)
_

_
n

j=1
v
j
max
n

j=1
c
ij
v
j
1, i = 1, m
v
j
0, j = 1, n
(8.15)
Se poate observa uor c problemele (8.14), (8.15) formeaz un cuplu
dual.
Teorema 8.5.2. Dac w > 0 i x
0
R
m
, y
0
R
n
sunt soluiile problemelor
(A) i (B), atunci u
0
=
x
0
w
i v
0
=
y
0
w
sunt soluiile problemelor (8.14) i
(8.15) i are loc relaia:
m

i=1
u
0
i
=
n

j=1
v
0
j
=
1
w
Demonstraie. Dac x
0
este soluia problemei (A) i y
0
R
n
soluia proble-
mei (B), atunci (x
0
, w) i (y
0
, w) sunt soluiile problemelor (8.12) i (8.13) i
putem scrie:
x
0
w
i
y
0
w
sunt soluii posibile pentru problemele (8.14) i (8.15).
i
i
JATEK 2005/3/11 10:29 page 244 #244
i
i
i
i
i
i
244 8. Jocuri matriceale
Dac notm cu u
0
=
x
0
w
, v
0
=
y
0
w
, atunci are loc relaia:
m

i=1
u
0
i
=
n

j=1
v
0
j
=
1
w
Dar avnd dou soluii posibile pentru care valorile funciilor de scop
coincid, rezult c acestea sunt soluii optime.
Adic u
0
i v
0
sunt soluii optime pentru (8.14) i (8.15).
Teorema 8.5.3. Dac u
0
R
m
i v
0
R
n
sunt soluiile problemelor (8.14)
i (8.15), atunci w =
1

m
i=1
u
0
i
=
1

n
j=1
v
0
j
i x
0
= wu
0
, y
0
= wv
0
sunt
soluiile problemelor (A) i (B).
Demonstraie. Presupunem c u
0
R
m
i v
0
R
n
sunt soluiile problemelor
(8.14) i (8.15).
Aplicnd teorema de dualitate rezult c

m
i=1
u
0
i
=

n
j=1
v
0
j
. Dac
notm: s
0
=
1

m
i=1
u
0
i
atunci (s
0
u
0
, s
0
) este soluie posibil pentru prob-
lema (8.12).
Vom demonstra prin reducerea la absurd c este chiar soluia optim.
Presupunem c exist o soluie posibil (x, s) R
m
R pentru (8.12),
astfel nct s
0
< s.
Dac este soluie posibil, atunci rezult c u =
x
s
este soluie posibil
pentru (8.14). Astfel avem:
m

i=1
u
i
=
1
s
<
1
s
0
=
m

i=1
u
0
i
ceea ce contrazice faptul c u
0
R
m
este soluie optim pentru problema
(8.14).
Deci (s
0
u
0
, s
0
) este soluia optim a problemei (8.12).
Deci w = s
0
i are loc relaia:
1
m

i=1
u
0
i
=
1
n

j=1
v
0
j
= w
i x
0
= s
0
u
0
= wu
0
este soluia problemei (A). n mod analog, demonstrm
c y
0
= wv
0
este soluia problemei (B).
i
i
JATEK 2005/3/11 10:29 page 245 #245
i
i
i
i
i
i
8.5. Rezolvarea jocurilor matriceale 245
Problem rezolvat
1. Fie jocul matriceal:
A
1
A
2
(1) (2) (3)
(1) -1 1 1
(2) 2 -2 2
(3) 3 3 -3
Calculm valorile:
w = max1, 2, 3 = 1
w = min3, 3, 2 = 2
Deoarece w ,= w, rezult c matricea de pli nu admite punct a. Pentru a
determina strategiile optime ale juctorilor vom utiliza teorema de mai sus.
Vom determina strategiile optime prin intermediul unor modele de optimizare
liniar cu restricii.
Deoarece w = 1 < 0, prima dat trebuie transformat matricea de
pli. Teorema poate aplicat numai n ipoteza w > 0 (ceea ce nseamn
c trebuie s avem w > 0, w > 0). Aplicm teorema 8.5.2. Vom considera
k = 2 (cel mai mic numr real care, adunat la elementele matricei de pli,
ne d w > 0, w > 0).
Obinem astfel matricea:

C =
_
_
1 3 3
4 0 4
5 5 1
_
_
pentru care:
w = max1, 0, 1 = 1
w = min5, 5, 4 = 4
Aplicm teorema 8.5.2. Vom putea determina strategiile optime cu aju-
torul soluiilor optime ale modelelor:
_

_
f(u) = u
1
+u
2
+u
3
min
u
1
+ 4u
2
+ 5u
3
1
3u
1
+ 5u
3
1
3u
1
+ 4u
2
u
3
1
u
1
, u
2
, u
3
0
(8.16)
i
i
i
JATEK 2005/3/11 10:29 page 246 #246
i
i
i
i
i
i
246 8. Jocuri matriceale
_

_
g(v) = v
1
+v
2
+v
3
max
v
1
+ 3v
2
+ 3v
3
1
4v
1
+ 4v
3
1
5v
1
+ 5v
2
v
3
1
v
1
, v
2
, v
3
0
(8.17)
Primul model se poate rezolva cu algoritmul simplex dual, iar problema
a doua cu algoritmul simplex primal.
Vom rezolva problema (8.16).
_

_
f(u) = u
1
+u
2
+u
3
min
u
1
4u
2
5u
3
+u
4
= 1
3u
1
5u
3
+u
5
= 1
3u
1
4u
2
+u
3
+u
6
= 1
u
1
, . . . , u
6
0
A =
_
_
_
_
1 4 5 1 0 0
3 0 5 0 1 0
3 4 1 0 0 1
A
1
A
2
A
3
A
4
A
5
A
6
_
_
_
_
B = (A
4
, A
5
, A
6
) b =
_
_
1
1
1
_
_
1 A
4
A
5
A
6

A
1
-1 -3 -3 -1 9 1
A
2
-4 0 -4 -1 10 1/4
A
3
-5 -5 1 -1 11 1/5
-1 -1 -1 0 4
2 A
3
A
5
A
6

A
1
1/5 -2 -16/5 -4/5 34/5 1/4
A
2
4/5 4 -24/5 -1/5 6/5 1/24
A
4
-1/5 -1 1/5 -1/5 11/5 -
1/5 0 -6/5 1/5 9/5
3 A
3
A
5
A
2

A
1
-1/3 -14/3 2/3 -2/3 6 1/7
A
6
1/6 5/6 -5/24 -1/24 1/4 -
A
4
-1/6 -5/6 -1/24 -5/24 9/4 1/4
0 -1 1/4 1/4 3/2
i
i
JATEK 2005/3/11 10:29 page 247 #247
i
i
i
i
i
i
8.5. Rezolvarea jocurilor matriceale 247
4 A
3
A
1
A
2

A
5
-1/14 -3/14 1/7 -1/7 9/7
A
6
3/28 -5/28 -5/56 -9/56 37/28
A
4
-3/28 5/28 -9/56 -5/56 33/28
1/14 3/14 3/28 11/28 3/14
Soluia optim este: u
0
=
_
3
14
,
3
28
,
1
14
_
.
Modelul(8.17) este duala problemei rezolvate. Astfel, din ultimul tabel,
putem citi soluiile dualei: v
0
=
_
5
56
,
1
7
,
9
56
_
.
Valoarea jocului (A
1
, A
2
,

C) este:
w =
1

3
i=1
u
0
i
=
1
d
0
=
28
11
x
0
= wu
0
x
0
=
_
3
14

28
11
,
3
28

28
11
,
1
14

28
11
_
=
_
6
11
,
3
11
,
2
11
_
y
0
= w v
0
y
0
=
_
5
22
,
4
11
,
9
22
_
Valoarea jocului iniial este:
w = w 2 =
28
11
2 =
6
11
Jocul nu este echitabil.
2. Fie jocul matriceal cu matricea de pli:
C =
_
_
2 3 6 5
3 4 5 6
2 3 4 7
_
_
Aplicm principiul dominrii. Din punctul de vedere al juctorului 1, prima
aciune nu este avantajoas. Prin urmare, putem elimina prima linie din
matricea de pli. Se poate observa uor c pentru juctorul 2 nu sunt
avantajoase aciunile a
2
1
i a
2
4
, ceea ce nseamn c a doua coloan i a patra
pot eliminate.
Astfel avem de rezolvat jocul redus cu matricea de pli:
C =
_
3 5
2 4
_
w = max5, 2 = 2
w = min3, 4 = 3
i
i
JATEK 2005/3/11 10:29 page 248 #248
i
i
i
i
i
i
248 8. Jocuri matriceale
Lum k = 3 i obinem:

C =
_
6 2
1 7
_
Modelele liniare asociate matricei de pli sunt:
_

_
u
1
+u
2
min
6u
1
+u
2
1
2u
1
+ 7u
2
1
u
i
0, i = 1, 2
_

_
v
1
+v
2
max
6v
1
2v
2
1
v
1
+ 7v
2
1
v
1
, v
2
0
Vom rezolva primul model liniar.
_

_
u
1
+u
2
min
6u
1
u
2
+u
3
= 1
2u
1
7u
2
+u
4
= 1
u
i
0, i = 1, 4
A
1
A
2
A
3
A
4
A =
_
6 1 1 0
2 7 0 1
_
Aplicm algoritmul simplex dual:
1 A
3
A
4

A
1
-6 2 -1 6 1/6
A
2
-1 -7 -1 10 1
-1 -1 0 3
2 A
1
A
4

A
3
-1/6 2/6 -1/6 1 -
A
2
1/6 -44/6 -5/6 9 5/44
1/6 -8/6 1/6 2
3 A
1
A
2

A
3
-7/44 -2/44 -9/44 62/44
A
4
1/44 -6/44 -5/44 54/44
6/44 8/44 14/44 16/44
i
i
JATEK 2005/3/11 10:29 page 249 #249
i
i
i
i
i
i
8.5. Rezolvarea jocurilor matriceale 249
Soluia optim este u
0
= (6/44 8/44). Valoarea jocului

C este: w =
1
d
0
=
44
14
.
t
1
e
1
= A
3
, B
0
t
1
=
9
44
t
2
e
2
= A
4
, B
0
t
2
=
5
44
Deci soluia celei de-a doua probleme este: v
0
= (9/44, 5/44).
Strategiile optime ale juctorilor sunt:
x
0
= u
0
w = (6/14, 8/14) = (3/7, 4/7)
y
0
= v
0
w = (9/14, 5/14)
Valoarea jocului iniial este:
w =
44
14
3 =
44 42
14
=
2
14
=
1
7
.
Deoarece am aplicat la nceput principiul dominrii strategiile optime ale
juctorilor, n jocul considerat sunt:
x
0
= (0 3/7 4/7), y
0
= (9/14 0 5/14 0).
8.5.4 Rezolvarea jocurilor de tipul 2 m, (n 2)
Fie jocul G = (A
1
, A
2
, C) C /
2,n
R.
n acest caz putem scrie:
A
1
A
2
a
2
1
. . . a
2
j
. . . a
2
n
a
1
1
c
11
. . . c
1j
. . . c
1n
a
1
2
c
21
. . . c
2j
. . . c
2n
Strategia optim a juctorului 1 este dat de:
max
xX
min
yY
F(x, y) = max
xX
min
jJ
F(x, e
j
)
Putem scrie:
F(x, e
j
) =
2

i=1
c
ij
x
i
= c
1j
x
1
+c
2j
x
2
i
i
JATEK 2005/3/11 10:29 page 250 #250
i
i
i
i
i
i
250 8. Jocuri matriceale
Deoarece mulimea strategiilor juctorului 1 este X = x R
2
+
[ x
1
+x
2
= 1,
orice strategie x X poate scris ca x = (1 s, s), s [0, 1].
Astfel avem:
min
jJ
F(x, e
j
) = min
jJ
c
1j
x
1
+c
2j
x
2
=
= min
jJ
c
1j
(1 s) +c
2j
s =
= min
jJ
(c
2j
c
1j
)s +c
1j

Fie funcia f : [0, 1] R, denit prin:


f(s) = min
jJ
c
2j
c
1j
)s +c
1j
s [0, 1]
Astfel strategia optim a juctorului 1 este soluia problemei:
f(s) [ s [0, 1] max
Dac s
0
[0, 1] este soluia problemei, rezult c x
0
= (1 s
0
, s
0
) este
strategia optim pentru juctorul 1 i w = f(s
0
) este valoarea jocului.
Considerm funciile ane:

j
: [0, 1] R, j = 1, n
denite prin:

1
(s) = (c
21
c
11
)s +c
11

2
(s) = (c
22
c
12
)s +c
12
.
.
.

n
(s) = (c
2n
c
1n
)s +c
1n
(8.18)
Cu ajutorul acestor funcii, vom determina soluia optim a problemei
de maximizare.
Reprezentm funciile
j
, j = 1, n n acelai sistem de coordonate, lund
punctele
j
(0) = c
1j
i

j
(1) = c
2j
, j = 1, n.
Folosind gracul, determinm funcia f(s). (vezi segmentele ngroate).
Calculm valoarea lui s
0
[0, 1], tiind c trebuie s avem f(s
0
) =
max
s[0,1]
f(s).
i
i
JATEK 2005/3/11 10:29 page 251 #251
i
i
i
i
i
i
8.5. Rezolvarea jocurilor matriceale 251
c
2j
c
1j
1 0
M
p
M
q
Aadar avem de calculat strategia optim a juctorului 2. y
0
R
n
este
strategie optim, dac veric condiiile:
_

_
F(e
i
, y
0
) w, i I
y
0
j
0, j = 1, n
n

j=1
y
0
j
= 1

_
n

j=1
c
ij
y
0
j
w, i I
y
0
j
0, j = 1, n
n

j=1
y
0
j
= 1
(8.19)
Cazul I.
Presupunem c funcia f admite un singur punct de maxim relativ la
[0, 1] i s
0
(0, 1).
Atunci, evident, exist dou funcii ane
p
,
q
a cror intersecie este
punctul s
0
.
s
0
=
p

q
. Alegem cele dou funcii astfel nct
p
s e strict de-
scresctoare,
q
s e strict cresctoare.
Exist t
0
[0, 1], astfel nct:
w = (1 t
0
)c
1q
+t
0
c
1p
(8.20)
tim c:

p
(s
0
) =
q
(s
0
) = w

p
(s
0
) = (c
2p
c
1p
)s
0
+c
1p

q
(s
0
) = (c
2q
c
1q
)s
0
+c
1q
i
i
JATEK 2005/3/11 10:29 page 252 #252
i
i
i
i
i
i
252 8. Jocuri matriceale
s
0
c
2p
+ (1 s
0
)c
1p
= w
c
1p
=
w s
0
c
2p
1 s
0
n mod analog, din
q
(s
0
) = w deducem:
c
1q
=
w s
0
c
2q
1 s
0
nlocuind n relaia (8.20), obinem:
w = (1 t
0
)
w s
0
c
2p
1 s
0
+t
0
w s
0
c
2q
1 s
0
=
=
w wt
0
s
0
c
2p
+t
0
s
0
c
2p
+t
0
w t
0
s
0
c
2q
1 s
0
=
=
w s
0
c
2p
(1 t
0
) t
0
s
0
c
2q
1 s
0
Avem de aici relaia:
w(1 s
0
) = w s
0
c
2p
(1 t
0
) t
0
s
0
c
2q
w ws
0
= w s
0
c
2p
(1 t
0
) t
0
s
0
c
2q
/
mprind relaia de mai sus cu s
0
, obinem:
w = c
2p
(1 t
0
) +t
0
c
2q
(8.21)
Din (8.20) i (8.21) rezult c punctul y
0
= (1t
0
)e
p
+t
0
e
q
R
n
veric
sistemul (8.19). Prin urmare este strategie optim pentru juctorul 2.
Cazul II. Dac funcia f are mai multe puncte de maxim s
0
(0, 1),
atunci rezult c exist p 1, . . . , n, astfel nct
p
(s) = w, pentru oricare
s [0, 1], rezult c y
0
= e
p
R
n
este strategia optim a juctorului 2.
Cazul III. Dac s
0
este punct de maxim pentru funcia f, atunci alegem
p 1, . . . , n, astfel nct
p
(0) = w i
p
(1) w c
1p
= w i c
2p
w
y
0
= e
p
R
n
este strategie optim pentru juctorul 2.
Cazul IV. Dac s
0
= 1 este punct de maxim pentru f, atunci alegem
p 1, . . . , n, astfel nct
p
(1) = w,
p
(0) w
1p
w i c
2p
= w
y
0
= e
p
R
n
este strategie optim pentru juctorul 2.
Problem rezolvat
Fie jocul matriceal:
i
i
JATEK 2005/3/11 10:29 page 253 #253
i
i
i
i
i
i
8.5. Rezolvarea jocurilor matriceale 253
A
1
A
2
a
2
1
a
2
2
a
2
3
a
2
4
a
1
1
2 9 6 3
a
1
2
8 3 7 5
Funciile ane asociate acestui joc sunt
j
= [0, 1] R, j = 1, 4 denite
prin:

1
(s) = 6s + 2

2
(s) = 6s + 9

3
(s) = s + 6

4
(s) = 2s + 3
Reprezentnd funciile, obinem:
8
7
5
3
9
6
3
2
0 s
0
M
1
M
3
M
4
M
2
1
f
Acum se vede uor funcia f, i avem:
s
0
=
2

4
de unde putem scrie:
6s + 9 = 2s + 3
8s = 6
deci:
s
0
=
3
4
i
i
JATEK 2005/3/11 10:29 page 254 #254
i
i
i
i
i
i
254 8. Jocuri matriceale
astfel strategia optim a juctorului 1 este x
0
=
_
1
4
,
3
4
_
, iar valoarea jocului
este f(s
0
) =
9
2
= w.
Deoarece
p
trebuie s e strict descresctoare, rezult c p = 2, iar
q
ind strict cresctoare, rezult c q = 4. Strategia optim a juctorului 2 va
astfel:
y
0
= (1 t
0
)e
2
+t
0
e
4
t
0
putnd determinat din relaia (8.21):
w = c
2p
(1 t
0
) +c
2q
t
0
Putem scrie:
w = c
22
(1 t
0
) +c
2q
t
0

w = 3(1 t
0
) + 5t
0
3 + 2t
0
=
9
2
t
0
=
3
4
Deci strategia optim a juctorului 2 este:
y
0
=
1
4
e
2
+
3
4
e
4
=
1
4
(0 1 0 0) +
3
4
(0 0 0 1)
y
0
=
_
0,
1
4
, 0,
3
4
_
Problem rezolvat
Banda de proiectile a unui tun de bord de aviaie se poate ncrca cu
proiectile de dou tipuri: P
1
i P
2
.
Inamicul dispune de patru tipuri de avioane T
1
, T
2
, T
3
i T
4
.
Probabilitatea de distrugere a ecrui tip de avion, prin cele dou tipuri
de proiectile, este prezentat n tabelul:
T
1
T
2
T
3
T
4
P
1
0,2 0,9 0,6 0,3
P
2
0,8 0,3 0,7 0,5
Se cere: s se determine proporia de proiectile P
1
, P
2
cu care trebuie s
se ncarce banda tunului de bord pentru a produce inamicului un maximum
de pierderi.
Avem de rezolvat de fapt jocul:
i
i
JATEK 2005/3/11 10:29 page 255 #255
i
i
i
i
i
i
8.5. Rezolvarea jocurilor matriceale 255
A
1
A
2
a
2
1
a
2
2
a
2
3
a
2
4
a
1
1
2 9 6 3
a
1
2
8 3 7 5
Soluia jocului este: x
0
= (1 s
0
, s
0
) =
_
1
4
,
3
4
_
, strategia optim pen-
tru juctorul 1. w =
9
2
este valoarea jocului din care rezult c valoarea
jocului iniial este w =
9
20
= 0, 45, adic 1/4 din numrul proiectilelor din
band s e P
1
i 3/4 din numrul proiectilelor din band s e P
2
. Astfel
probabilitatea de distrugere a avioanelor inamice este cel puin 0,45.
i
i
JATEK 2005/3/11 10:29 page 256 #256
i
i
i
i
i
i
256 8. Jocuri matriceale
i
i
JATEK 2005/3/11 10:29 page 257 #257
i
i
i
i
i
i
Capitolul 9
Metoda punctelor interioare
n acest capitol se va prezenta o analiz din punct de vedere com-
putaional a metodelor de rezolvare numeric a problemelor de optimizare
liniar cu res-tricii.
Pornind de la studiul ecacitii i a decienei algoritmului simplex vor
prezentate noile posibiliti ale metodei punctelor interioare (IPM).
Apariia i dezvoltarea metodei IPM este o necesitate practic.
Rezolvarea modelelor liniare de mari dimensiuni ntr-un timp ct mai
scurt a devenit o prioritate a cercetrii n acest domeniu, dup 1980.
9.1 Introducere
Problema general de programare liniar a fost studiat, prima dat n
1947, de ctre G.B. Dantzig, Marshall Wood i de asociaii lor de la De-
partamentul Forelor Aeriene (U.S. Department of Air Force). Acest depar-
tament a organizat un grup de cercetare sub denumirea SCOOP (Scientic
Computation of Optimum Programs) a crui contribuie foarte important
a fost dezvoltarea formal i aplicarea modelelor liniare n diferite domenii.
Aceste aplicaii timpurii ale modelelor liniare s-au concetrat pe trei mari di-
recii: aplicaii militare generate de proiectul SCOOP, aplicaii economice n
domeniul industrial bazate pe modele input-output Leontif i probleme care
abordeaz relaia dintre jocurile cu doi juctori, cu sum nul i modele de
programare liniar.
n ianuarie 1952, a fost obinut, pentru prima dat, soluia unui model
de programare liniar pe un calculator performant (National Bureau of Stan-
dards Computer SEAC).
257
i
i
JATEK 2005/3/11 10:29 page 258 #258
i
i
i
i
i
i
258 9. Metoda punctelor interioare
Metoda de rezolvare s-a bazat pe procedura simplex. Necesitatea re-
zolvrii unor modele de mari dimensiuni i-a obligat pe cercettori s realizeze
proceduri complexe de rezolvare, sisteme de programare matematic (MPS).
Metoda simplex este elementul computaional central al sistemului MPS
i se aplic, n general, cu succes n practic. Pentru valori relativi mari ale
lui m i n, metoda devine inecient.
n acest sens, Smale (1983), K.H. Borgwardt (1982), V. Klee i G.J. Minty
(1972) au construit clase de probleme spre a arta deciena algoritmului.
AV. Klee i G.J. Minty [Kle], n 1972, arat c algoritmul simplex este
un algoritm de complexitate exponenial:
_

_
f(x) = 100x
4
10x
5
x
6
min
x
1
+x
4
= 1
x
2
+ 20x
4
+x
5
= 100
x
3
+ 200x
4
+ 20x
5
+x
6
= 10000
x 0
(9.1)
Rezolvnd cu algoritmul simplex primal, problema considerat se va ob-
serva c, la ecare iteraie, alegerea elementului pivot poate efectuat n
mod unic. Soluia optim se va obine dup 7 iteraii.
Acest rezultat poate generalizat. Considerm problema:
_

_
f(x) = 10
n1
x
n+1
10
n2
x
n+2
x
2n
min
x
1
+x
n+1
= 1
x
2
+ 2 10x
n+1
+x
n+2
= 100
x
3
+ 2 10
2
x
n+1
+ 2 10x
n+2
+x
n+3
= 100
2
.
.
.
x
n
+ 2 10
n1
x
n+1
+ 2 10
n2
x
n+2
+ +x
2n
= 100
n1
xj 0, j = 1, 2n
(9.2)
Soluia optim a problemei cu n restricii i 2n variabile (n forma stan-
dard) se obine dup 2
n
1 iteraii. Deoarece 2
n
crete mai repede dect orice
polinom P(n), exemplul dat arat c nu exist o margine polinomial pentru
numrul iteraiilor. Algoritmul simplex este de complexitate exponenial.
Alte exemple, privind eciena computaional a algoritmului, pot
gsite n [Pap], [Len], [Dob].
Complexitatea algoritmului din punct de vedere computaional este
prezentat detaliat - de exemplu, n lucrrile lui Papadimitriou, Stieglitz
(1982), Lenstra (1982), R.M. Karp (1975), J. Telgen (1979), S. Smale (1983).
i
i
JATEK 2005/3/11 10:29 page 259 #259
i
i
i
i
i
i
9.1. Metoda Karmarkar 259
Dei algoritmul simplex este de complexitate exponenial, se comport
extraordinar de bine n practic i majoritatea problemelor pot rezolvate
cu acesta. Exist lucrri care analizeaz algoritmul simplex chiar din acest
punct de vedere: "Dac nu este algoritm de complexitate polinomial, de ce
conduce la rezultat n majoritatea cazurilor?"
Dup 1970, apare o nou direcie privind rezolvarea modelelor liniare.
n 1979, matematicianul rus Leonid Khachiyan [Kha] public un algoritm
cu timp polinomial pentru rezolvarea modelelor liniare. Algoritmul difer de
metoda simplex, folosind un ir de elipsoide care conduc spre soluia op-
tim a modelului. Din punct de vedere teoretic, rezultatul este semnicativ,
dar practic nu nlocuiete algoritmul simplex (v. E.L. Lawler (1980), M.W.
Browne (1979)).
n 1984, Karmarkar [Karm] public un alt algoritm care folosete sfere i
geometrie proiectiv pentru construirea unui ir de puncte care converg ctre
soluia optim a problemei de optimizare liniar cu restricii.
Metoda lui Karmarkar a fost utilizat de ctre Comanda Militar ame-
rican a podurilor aeriene (Military Airlift Command) n scopul deter-
minrii frecvenei zborurilor i tipului de aeronav necesar pentru planicarea
zborurilor. Modelul liniar obinut pentru studiul acestei probleme avea 150
000 de variabile i 12 000 de restricii i s-a obinut soluia ntr-o or.
Prin algoritmul simplex, o problem cu o structur asemntoare format
din 36 000 de variabile i 10 000 de restricii este rezolvat n 4 ore.
Testele preliminare au artat c algoritmul Karmarkar este de 50 de ori
mai rapid dect algoritmul simplex n cazul problemelor de mari dimensiuni.
Metoda punctelor interioare a fost introdus n 1960 de Fiacco i Mc-
Cormick, dar ulterior nu a mai fost utilizat. Karmakar a readus n centrul
ateniei aceast metod(1984). n prezent, sunt sute de variante ale metodei
punctelor interioare i au fost publicate peste 2000 de articole. Pentru studiul
acestei teorii se recomand [Meg],[Nes], [Roo], [Gje], [Wri].
O descriere riguroas i detaliat a metodei lui Karmarkar poate gsit
n lucrrile lui Hooker (1986), Parker, Rardin (1988) i Murty (1989).
i
i
JATEK 2005/3/11 10:29 page 260 #260
i
i
i
i
i
i
260 9. Metoda punctelor interioare
9.2 Metoda Karmarkar
Lucrarea lui Karmarkar i-a dat girul pentru multe cercetri. Dup pu-
blicarea acestei metode, s-a iniiat o intens munc de cercetare a algoritmilor
pentru modele de programare liniar. Algoritmul Khachiyan i Karmarkar
sunt algoritmi de punct interior (IPM) i reprezint o abordare fundamental
diferit de algoritmul simplex (S. Wright (2002)).
Sunt peste 2000 de lucrri care prezint sute de variante ale metodei
punctelor interioare.
n continuare, prezentm metoda lui Karmarkar. n prezent sunt variante
ale metodei care sunt mult mai eciente, ns noi vom prezenta acest algoritm
pentru tehnicile interesante i ideile originale ale metodei i ale posibilitilor
(acestei tehnici).
Metoda Karmarkar poate aplicat modelelor liniare n urmtoarea
form de prezentare:
(KF)
_

_
f(x) = (c, x) min
Ax = 0
x
1
+ +x
n
= 1
x 0
unde A este o matrice de tip m n i c = (c
1
, . . . , c
n
) un vector din R
n
,
reprezentnd coecienii funciei de scop.
n mod necesar, modelul liniar trebuie s verice condiiile:
x
0
=
_
1
n
, . . . ,
1
n
_
S,
i valoarea optim a funciei de scop trebuie s e:
f
min
= 0
unde S este mulimea soluiilor posibile.
La prima vedere, forma (KF) pare o form particular, dar vom arta n
continuare c orice problem de optimizare liniar poate adus la aceast
form de prezentare.
n acest scop, considerm un model de optimizare liniar cu restricii n
forma standard:
_

_
f(x) = (x, c) min
Ax b
x 0
(9.3)
i
i
JATEK 2005/3/11 10:29 page 261 #261
i
i
i
i
i
i
9.1. Metoda Karmarkar 261
i duala acestei probleme:
_

_
g(y) = (y, b) max
A
T
y c
y 0
(9.4)
unde f : R
n
R, g : R
n
R, A /
m,n
, c R
n
, b R
m
.
Utiliznd problemele (9.3), (9.4) construim o nou problem de progra-
mare liniar:
_

_
h(x, y) = f(x) g(y) min
Ax b
A
T
y c
x 0
y 0
(9.5)
Funcia de scop este diferena funciilor de scop ale cuplului dual. Funcia
h este diferena funciilor de scop al cuplului dual, cunoscut n literatura de
specialitate ca "duality gap". Bineneles dac (x
0
, y
0
) este soluia optim a
problemei (9.5), atunci vom avea h
min
= 0 i x
0
va soluie optim pentru
problema (9.3). Astfel este sucient s se rezolve doar problema (9.5).
n scopul reducerii problemei (9.5) la forma standard, vor introduse
variabile auxiliare u R
m
+
, i v R
n
+
.
Putem scrie:
_

_
h min
Ax +u = b
A
T
y v = c
x 0, y 0, u 0, v 0
(9.6)
Fie M = max
i,j
b
i
, c
j
. Se poate introduce o nou restricie i vom putea
scrie:
_

_
h min
Ax +u = b
A
T
y v = c
n

i=1
x
i
+
m

j=1
y
j
+
m

i=1
u
i
+
n

j=1
v
j
2(n +m)M
x 0, y 0, u 0, v 0
(9.7)
n continuare, se va introduce o nou variabil notat cu w
1
(w
1
0),
necesar pentru pstrarea formei standard a problemei. Se va considera o
variabil notat cu w
2
, astfel nct w
2
= 1.
i
i
JATEK 2005/3/11 10:29 page 262 #262
i
i
i
i
i
i
262 9. Metoda punctelor interioare
Cu notaiile introduse se obine modelul:
_

_
h(z) min
Ax +u bw
2
= 0
A
T
y v cw
2
= 0
n

i=1
x
i
+
m

j=1
y
j
+
m

i=1
u
i
+
n

j=1
v
j
+w
1
2(n +m)Mw
2
= 0
n

i=1
x
i
+
m

j=1
y
j
+
m

i=1
u
i
+
n

j=1
v
j
+w
1
+w
2
= 2(n +m)M + 1
x 0, y 0, u 0, v 0
(9.8)
Folosind substituiile:
x
i
= (M + 1)x

i
, i = 1, n
y
j
= (M + 1)y

j
, j = 1, m
u
i
= (M + 1)u

i
, i = 1, n
v
j
= (M + 1)v

j
, j = 1, n
w
l
= (M + 1)w

l
, l = 1, 2
vom obine:
_

_
h(z

) min
Ax

+u

bw

2
= 0
A
T
y

cw

2
= 0
n

i=1
x

1
+
m

j=1
y

j
+
m

j=1
u

j
+
n

j=1
v

i
2(n +m)Mw

2
= 0
n

i=1
x

i
+
m

j=1
y

j
+
m

j=1
u

j
+
n

i=1
v

i
+w

1
+w

2
= 1
x

0, y

0, u

0, v

0, w

0
(9.9)
ceea ce este chiar forma (KF) a problemei de optimizare liniar cu restricii
(9.3).
i
i
JATEK 2005/3/11 10:29 page 263 #263
i
i
i
i
i
i
9.1. Metoda Karmarkar 263
n cadrul metodei Karmarkar, urmtoarele trei noiuni joac un rol es-
enial:
(1.) proiecia unui vector dat pe mulimea punctelor care veric res-
triciile Ax = 0;
(2.) aplicarea transformrii centrale a lui Karmarkar asupra soluiei posi-
bile x
k
S, creia i se asociaz punctul T((x
1
, . . . , x
n
)
T
; x
k
)
not
= (y
1
, . . . , y
n
)
T
,
unde:
y
j
=
x
j
x
k
j
n

r=1
x
r
x
k
r
, j = 1, n;
Pentru a obine un nou punct x
k+1
cu transformarea central, restricia:
n

i=1
x

i
+
m

j=1
y

j
+
m

j=1
u

j
+
n

i=1
v

i
+w

1
+w

2
= 1
este esenial n determinarea punctului y
k+1
.
Cum se calculeaz soluia mbuntit: vectorul x
k+1
? Folosind trans-
formarea central:
T((x
1
, . . . , x
n
)
T
, x
k
) = (y
1
, . . . , y
n
)
T
i avnd vectorul y
k+1
, putem scrie:
x
k+1
= T
1
(y
k+1
, x
k
).
Se poate arta c:
x
k+1
j
=
x
k
j
y
j
n

r=1
x
k
r
y
r
, j = 1, n.
Observaie. n cazul n care n = 3 vom arta cum se obine n aceast
i
i
JATEK 2005/3/11 10:29 page 264 #264
i
i
i
i
i
i
264 9. Metoda punctelor interioare
form vectorul x
k+1
. Pentru k = 0, putem scrie:
y
j
=
x
j
x
0
j
3

r=1
x
r
x
0
r

(TC)
_

_
y
1
=
x
1
x
0
1
x
1
x
0
1
+
x
2
x
0
2
+
x
3
x
0
3
y
2
=
x
2
x
0
2
x
1
x
0
1
+
x
2
x
0
2
+
x
3
x
0
3
y
3
=
x
3
x
0
3
x
1
x
0
1
+
x
2
x
0
2
+
x
3
x
0
3
Se veric uor c are loc relaia y
1
+y
2
+y
3
= 1. Ecuaiile le vom nmuli
pe rnd cu x
0
1
, x
0
2
respectiv x
0
3
. Putem scrie:
_

_
y
1
=
x
1
x
1
x
0
1
+
x
2
x
0
2
+
x
3
x
0
3
y
2
=
x
2
x
1
x
0
1
+
x
2
x
0
2
+
x
3
x
0
3
y
3
=
x
3
x
1
x
0
1
+
x
2
x
0
2
+
x
3
x
0
3
Adunm ecuaiile i obinem:
y
1
x
0
1
+y
2
x
0
2
+y
3
x
0
3
=
x
1
+x
2
+x
3
x
1
x
0
1
+
x
2
x
0
2
+
x
3
x
0
3
. (9.10)
Deoarece x
1
+ x
2
+ x
3
= 1, iar din ecare ecuaie a sistemului (TC) putem
scrie:
x
1
x
0
1
+
x
2
x
0
2
+
x
3
x
0
3
=
x
1
x
0
1

1
y
1
x
1
x
0
1
+
x
2
x
0
2
+
x
3
x
0
3
=
x
2
x
0
2

1
y
2
x
1
x
0
1
+
x
2
x
0
2
+
x
3
x
0
3
=
x
3
x
0
3

1
y
3
i
i
JATEK 2005/3/11 10:29 page 265 #265
i
i
i
i
i
i
9.1. Metoda Karmarkar 265
nlocuind, pe rnd, obinem:
_

_
y
1
x
0
1
+y
2
x
0
2
+y
3
x
0
3
=
1
x
1
x
0
1

1
y
1
y
1
x
0
1
+y
2
x
0
2
+y
3
x
0
3
=
1
x
2
x
0
2

1
y
2
y
1
x
0
1
+y
2
x
0
2
+y
3
x
0
3
=
1
x
3
x
0
3

1
y
3
de unde, pe rnd, avem:
_

_
x
1
=
x
0
1
y
1
x
0
1
y
1
+x
0
2
y
2
+x
0
3
y
3
x
2
=
x
0
2
y
2
x
0
1
y
1
+x
0
2
y
2
+x
0
3
y
3
x
3
=
x
0
3
y
3
x
0
1
y
1
+x
0
2
y
2
+x
0
3
y
3
unde x
1
= (x
1
, x
2
, x
3
).
(3.) Funcia potenial a lui Karmarkar.
Deniia 9.2.1. Mulimea punctelor [x
1
x
2
. . . , x
n
]
T
R
n
care veric
condiiile

n
j=1
x
j
= 1 i x
j
0, j = 1, n se numete simplex de unitate
n dimensional i se va nota cu S.
Ce nseamn din punct de vedere geometric proiecia unui vector pe
mulimea punctelor x care veric restriciile Ax = 0 ? Se poate arta
c orice vector v poate scris ca v = v
1
+v
2
, unde v
1
veric sistemul de re-
stricii Av
1
= 0, iar vectorul v
2
este perpendicular pe vectorul x care veric
res-triciile Ax = 0.
Proiecia vectorului v pe mulimea punctelor x care veric restriciile
Ax = 0 se poate realiza n forma [I B
T
(BB
T
)
1
B]v, unde B este o matrice
de tipul (m + 1) n, cu primele m linii egale cu coloanele matricei A, iar
elementele ultimei linii sunt egale cu 1.
n continuare, prezentm algoritmul lui Karmarkar.
Algoritm Karmarkar:
Etapa 1
Fie x
0
=
_
1
n
, . . . ,
1
n
_
;
i
i
JATEK 2005/3/11 10:29 page 266 #266
i
i
i
i
i
i
266 9. Metoda punctelor interioare
k = 0.
Etapa 2
Dac (c, x
k
) < atunci x
k
este soluie optim;
altfel se continu cu etapa 3
Etapa 3
Determin urmtoarea soluie posibil x
k+1
astfel:
Calculeaz:
y
k+1
=
_
1
n
. . .
1
n
_
T

(I P
T
(PP
T
)
1
P)[Diag(x
k
)]c
T
|c|
_
n(n 1)
i utilizeaz transformarea central:
x
k+1
= T
1
(y
k+1
, x
k
)
k = k + 1;
i treci la etapa 2.
n algoritm, P este o matrice de ordinul (m+1)n cu primele m coloane
egale cu A[Diag(x
k
)], iar valoarea (0, 1) este aleas astfel nct s asigure
convergena algoritmului.
Funcia potenial a lui Karmarkar este important pentru asigurarea con-
vergenei. Deoarece se proiecteaz vectorul [Diag(x
k
)]c
T
(n locul vectorului,
c
T
), nu avem sigurana c, la orice iteraie, soluia obinut este mai bun.
S-ar putea ntmpla s obinem, la o iteraie, inegalitatea (c, x
k+1
) >
(c, x
k
). n scopul evitrii acestei situaii, Karmarkar introduce funcia
potenial denit prin:
f(x) =
n

j=1
ln
(c, x)
x
j
Karmarkar a demonstrat c n cazul n care proiectm vectorul
[Diag(x
k
)]c
T
(i nu vectorul c
T
) pe mulimea transformat a soluiilor posi-
bile, atunci pentru o valoare > 0, este adevrat pentru orice k = 0, 1, 2, . . .
inegalitatea:
f(x
k
) f(x
k+1
) .
Karmarkar a artat c, n cazul n care valoarea funciei potenial n x
k
este sucient de mic, (c, x
k
) va aproape de zero. Deoarece f(x
k
) descrete
cel puin cu valoarea lui , la ecare iteraie, lund pentru k o valoare sucient
i
i
JATEK 2005/3/11 10:29 page 267 #267
i
i
i
i
i
i
9.1. Metoda Karmarkar 267
de mare, putem asigura ca valoarea funciei de scop n punctul x
k
s e mai
mic dect .
Problem rezolvat
S se determine soluia optim a problemei:
_

_
f(x) = x
1
+ 2x
2
min
x
1
2x
2
+x
3
= 0
x
1
+x
2
+x
3
= 1
x R
3
+
Problema considerat este n forma (KF).
Pe baza notaiilor de mai sus, avem: A = (1 2 1)
n = 3
x
0
=
_
1
3
1
3
1
3
_
Fie =
1
10
.
Pentru k = 0, putem scrie pe rnd:
f(x
0
) =
1
3
>
1
10
Diag(x
0
) =
_
_
1
3
0 0
0
1
3
0
0 0
1
3
_
_
A Diag(x
0
) =
_
1
3

2
3
1
3
_
P =
_
1
3

2
3
1
3
1 1 1
_
P P
T
=
_
2
3
0
0 3
_
P
0
= (I
3
P
T
(PP
T
)
1
P) =
_
_
1
2
0
1
2
0 0 0

1
2
0
1
2
_
_
(Diag x
0
) C
T
=
_
_

1
3
2
3
0
_
_
y
1
=
_
1
3
1
3
1
3
_

1
6
0
1
6
_
T

3 2
_
2/36
Dac alegem =
1
4
, atunci avem:
y
1
= (0, 4055 0, 3333 0, 2611)
i
i
JATEK 2005/3/11 10:29 page 268 #268
i
i
i
i
i
i
268 9. Metoda punctelor interioare
x
1
1
=
x
0
1
y
1
1
x
0
1
y
1
1
+x
0
2
y
1
2
+x
0
3
y
1
3
x
1
1
= 0, 4055
x
1
2
=
x
0
2
y
1
2
x
0
1
y
1
1
+x
0
2
y
1
2
+x
0
3
y
1
3
x
1
2
= 0, 3333
x
1
3
=
x
0
3
y
1
3
x
0
1
y
1
1
+x
0
2
y
1
2
+x
0
3
y
1
3
x
1
3
= 0, 2611
x
1
= (0, 4055 0, 3333 0, 2611)
f(x
1
) = 0, 4055 + 2 0, 3333 = 0, 2611 >
1
10
Cu soluia obinut, putem trece la urmtoarea iteraie i vom scrie:
A Diag (x
1
) = (0, 4055 0, 6666 0, 2612)
P P
T
=
_
0, 4055 0, 6666 0, 2611
1 1 1
_
_
_
0, 4055 1
0, 6666 1
0, 2611 1
_
_
=
_
0, 6769 0
0 3
_
Algoritmul se va continua pn cnd valoarea funciei de scop pentru
soluia obinut va mai mic dect .
S se reduc la forma (KF) urmtorul model:
_

_
f(x) = 3x
1
+x
2
max
2x
1
x
2
2
x
1
+ 2x
2
5
x
1
, x
2
0
Duala problemei considerate este:
_

_
g(y) = 2y
1
+ 5y
2
min
2y
1
+y
2
3
y
1
+ 2y
2
1
y
1
, y
2
0
Cu ajutorul acestor modele construim modelul liniar, cu funcia obiectiv
format din diferena funciilor obiectiv ale modelelor de mai sus. Putem
i
i
JATEK 2005/3/11 10:29 page 269 #269
i
i
i
i
i
i
9.1. Metoda Karmarkar 269
scrie:
_

_
h(x, y) = 3x
1
+x
2
2y
1
5y
2
min
2x
1
x
2
2
x
1
+ 2x
2
5
2y
1
+y
2
3
y
1
+ 2y
2
1
x
1
, x
2
, y
1
, y
2
0
Evident h
opt
= 0 i astfel soluia optim (x
0
, y
0
) este optim pentru prob-
lemele considerate (x
0
pentru problema primal, iar y
0
pentru problema
dual). Vom introduce variabile auxiliare u
1
, u
2
, v
1
, v
2
. Obinem:
_

_
h(x, y) = 3x
1
+x
2
2y
1
5y
2
min
2x
1
x
2
+u
1
= 2
x
1
+ 2x
2
+u
2
= 5
2y
1
+y
2
v
1
= 3
y
1
+ 2y
2
v
2
= 1
x R
2
+
, y R
2
+
, v R
2
+
, u R
2
+
Alegem M = 2(2 + 2 + 2 + 2) 5 = 80. Valoarea trebuie aleas astfel nct
suma tuturor variabilelor s e egal cu cel mult acest numr.
n continuare, avem modelul:
_

_
h(x, y) = 3x
1
+x
2
2y
1
5y
1
min
2x
1
x
2
+u
1
= 2
x
1
+ 2x
2
+u
2
= 5
2y
1
+y
2
v
1
= 3
y
1
+ 2y
2
v
2
= 1
x
1
+x
2
+y
1
+y
2
+u
1
+u
2
+v
1
+v
2
80
x, y, u, v R
2
+
Vom introduce o variabil auxiliar notat cu w
1
pentru a menine forma
standard. Avem astfel:
_

_
h(x, y) = 3x
1
+x
2
2y
1
5y
1
min
2x
1
x
2
+u
1
= 2
x
1
+ 2x
2
+u
2
= 5
2y
1
+y
2
v
1
= 3
y
1
+ 2y
2
v
2
= 1
x
1
+x
2
+y
1
+y
2
+u
1
+u
2
+v
1
+v
2
+w
1
= 80
x, y, u, v R
2
+
, w
1
0.
i
i
JATEK 2005/3/11 10:29 page 270 #270
i
i
i
i
i
i
270 9. Metoda punctelor interioare
n continuare omogenizarea restriciilor se poate obine prin introducerea
unei variabile de omogenizare notat cu w
2
, aleas astfel nct w
2
= 1. Vom
avea n continuare:
_

_
h(x, y) = 3x
1
+x
2
2y
1
5y
1
min
2x
1
x
2
+u
1
2w
2
= 0
x
1
+ 2x
2
+u
2
5w
2
= 0
2y
1
+y
2
v
1
3w
2
= 0
y
1
+ 2y
2
v
2
w
2
= 0
x
1
+x
2
+y
1
+y
2
+u
1
+u
2
+v
1
+v
2
+w
1
80w
2
= 0
x
1
+x
2
+y
1
+y
2
+u
1
+u
2
+v
1
+v
2
+w
1
+w
2
= 81
x, y, u, v, w R
2
+
.
n continuare, vom introduce substituiile:
x
i
= 81x

i
y
i
= 81y

i
u
i
= 81u

i
v
i
= 81v

i
w
i
= 81w

i
, i = 1, 2
substituii necesare pentru obinerea condiiei din forma (FK), ca suma tu-
turor variabilelor s e 1. Astfel avem:
_

_
h(x

, y

) = 3x

1
+x

2
2y

1
5y

1
opt.
2x

1
x

2
+u

1
2w

2
= 0
x

1
+ 2x

2
+u

2
5w

2
= 0
2y

1
+y
2
v

1
3w

2
= 0
y

1
+ 2y

2
v

2
w

2
= 0
x

1
+x

2
+y

1
+y

2
+u

1
+u

2
+v

1
+v

2
+w

1
80w

2
= 0
x

1
+x

2
+y

1
+y

2
+u

1
+u

2
+v

1
+v

2
+w

1
+w

2
= 1
x

, y

, u

, v

, w

R
2
+
nc o condiie ce trebuie asigurat n scopul aplicrii metodei Karmarkar
este ca:
x
0
=
_
1
n
,
1
n
. . . . ,
1
n
_
s e soluie posibil i h
opt
= 0.
n acest caz x
0
=
_
1
10
,
1
10
, . . . ,
1
10
_
nu este soluie posibil (nu veric toate
resctriciile), de aceea se va introduce nc o variabil, notat cu t astfel nct
x
0
=
_
1
11
, . . . ,
1
11
_
s e soluie posibil.
i
i
JATEK 2005/3/11 10:29 page 271 #271
i
i
i
i
i
i
9.1. Metoda Karmarkar 271
La ultima restricie, se va aduna variabila t, iar n restul restriciilor se
va introduce un coecient pentru care suma tuturor coecienilor va deveni
0.
Deoarece n caz de optim t va trebui s aib valoarea 0, vom avea de
rezolvat urmtoarea problem:
(KF)
_

_
t min
3x

1
+x

2
2y

1
5y

2
+ 3t = 0
2x

1
x

2
+u

1
2w

2
= 0
x

1
+ 2x

2
+u

2
5w

2
+t = 0
2y

1
+y

2
v

1
3w

2
+t = 0
y

1
+ 2y

2
v

2
w

2
+t = 0
x

1
+x

2
+y

1
+y

2
+u

1
+u

2
+v

1
+v

2
+w

1
80w

2
+ 71t = 0
x

1
+x

2
+y

1
+y

2
+u

1
+u

2
+v

1
+v

2
+w

1
+w

2
+t = 1
x

, y

, u

, v

, w

R
2
+
, t 0
Probleme propuse spre rezolvare
S se aplice metoda Karmarkar i s se calculeze dou iteraii pentru:
1.
_

_
f(x) = x
1
+ 2x
2
x
3
min
x
1
x
3
= 0
x
1
+x
2
+x
3
= 1
x R
3
+
2.
_

_
f(x) = x
1
x
2
+ 6x
3
min
x
1
x
2
= 0
x
1
+x
2
+x
3
= 1
x R
3
+
9.3 Concluzii
Dac se realizeaz o comparaie a timpului de lucru a metodei simplex
i a metodei Karmarkar, atunci se constat c nu se poate arma c, pentru
orice tip de model, unul ar mai rapid dect cellalt.
Eciena practic a metodelor este strns legat de detaliile de imple-
mentare.
Numrul iteraiilor necesare, n cazul metodei Karmarkar, este n mod
tipic ntre 10 i 100. Metoda simplex necesit 2n, 3n iteraii, unde n este
numrul variabilelor iniiale.
i
i
JATEK 2005/3/11 10:29 page 272 #272
i
i
i
i
i
i
272 9. Metoda punctelor interioare
Metodele de punct interior sunt mai eciente n rezolvarea problemelor
de mari dimensiuni.
i
i
JATEK 2005/3/11 10:29 page 273 #273
i
i
i
i
i
i
Anexa 1
Programare dinamic discret
Matematica clasic s-a dovedit inecient n rezolvarea numeric a multor
probleme de optimizare, coninnd un numr mare de variabile de decizie
sau de restricii sub form de inegaliti. Ideea de a descompune o problem
de dimensiuni mari n mai multe subprobleme, ecare cu un numr mic de
variabile, este ecient din punctul de vedere al rezolvrii.
Programarea dinamic este construit pe acest principiu. La dezvoltarea
teoriei, o contribuie de seam au avut lucrrile lui Richard Bellman.
Deniia 1. Prin optimizare dinamic nelegem un ansamblu de metode
matematice utilizate n studiul i rezolvarea unor tipuri de probleme de op-
timizare care apar n cadrul proceselor de decizie cu mai multe etape.
Este o ramur a programrii matematice caracterizat prin metode pro-
prii i printr-un mod propriu de a pune problemele cu utilizarea esenial a
adoptrii dinamice a deciziilor, adic pas cu pas.
Aceast metod este aplicabil n rezolvarea unei largi varieti de pro-
bleme, incluznd probleme de alocare, de teoria stocurilor i teoria rennoirii.
Deniia 2. Programarea dinamic determinist studiaz procese de decizii
secveniale n care adoptarea unei decizii la un moment dat are ca efect
trecerea sistemului ntr-o anumit stare bine denit.
Deniia 3. Dac trecerea sistemului dintr-o stare n alta este guvernat
de legi de probabilitate, atunci modelul se numete model de programare
dinamic aleatoare.
Procesul secvenial de decizii este stohastic, dac aceste legi sunt cunos-
cute apriori.
Procesul secvenial de decizii este adaptiv, dac aceste legi nu sunt cunos-
cute, ci trebuie estimate n cursul procesului de luare a deciziilor.
273
i
i
JATEK 2005/3/11 10:29 page 274 #274
i
i
i
i
i
i
274 Anexa 1
Modelele de programare dinamic pot clasicate astfel:
programare dinamic
aleatoare
programare dinamic
determinist
programare dinamic
procesul
secvenial de
decizii este
stohastic
procesul
secvenial de
decizii este
adaptiv
staionare
sau
semistaionare
cu orizont finit
sau
cu orizont infinit
probleme secveniale
discrete n timp sau
n timp continuu
n practic, trecerea sistemului dintr-o stare n alta poate avea loc i sub
inuena unor factori asupra crora nu putem aciona n mod direct, factori
numii incontrolabili. Aciunea lor are ca efect o comportare aleatoare a
sistemului considerat.
Deniia 4. Numrul de etape ntr-un proces secvenial se numete orizont.
Deniia 5. Modelul de programare dinamic determinist cu orizont nit
se numete model de programare dinamic discret. n acest caz, numrul
de subprobleme formeaz o mulime cel mult numrabil.
Deniia 6. Problemele de programarea dinamic pot considerate ca pro-
bleme secveniale, discrete n timp. n aceast situaie deciziile nu pot avea
loc n orice moment de timp din intervalul [t
0
, t
0
] ( n domeniul economic pot
luate la anumite intervale de timp, de exemplu, zilnic, lunar).
Esena metodei de programare dinamic const n analiza secvenial a
procesului de luare a deciziilor. n acest scop, se folosesc:
a) relaiile de recuren care caracterizeaz acest proces (anii 1940-50 lu-
crrile lui A. Wald);
i
i
JATEK 2005/3/11 10:29 page 275 #275
i
i
i
i
i
i
Programare dinamic discret 275
b) ecuaiile funcionale corespunztoare acestor relaii de recuren (n
anul 1951 prin lucrrile lui R. Bellman. El introduce termenul de pro-
gramare dinamic).
La baza acestei metode st urmtorul principiu al optimului, enunat de
Bellman (1957) astfel: "O politic optim are proprietatea c, oricare ar
starea iniial (nal) i decizia iniial (nal), deciziile rmase s constituie
o politic optim n raport cu starea care rezult din prima (ultima) decizie."
Adic, dac comanda unui proces este optim, ea va rmne optim i
dup efectuarea primului pas, pentru procesul care va urma.
x
2
x
2
x
0
x
3
x
1
O
x
1
Considerm x

(t) o traiectorie op-


tim t [t
0
, t
1
] ntre punctele x
0
, x
1
.
Fie t
2
, t
3
[t
0
, t
1
], t
2
< t
3
oarecare
momentele arbitrare de timp.
x
2
= x

(t
2
), x
3
= x

(t
3
) sunt
puncte corespunztoare de pe traiec-
toria optim.
n anumite condiii bine precizate,
se poate arta c traiectoria x

(t),
t [t
2
, t
3
] este de asemenea optim
ntre x
2
, x
3
.
Observaie. Acest principu nu este valabil pentru orice tip de problem, ci
numai n cazurile n care dependena comenzilor la diferii pai ai procesului
are o anumit structur i pentru funcii obiective avnd o form special
(pentru funcionale aditive de traiectorie).
i
i
JATEK 2005/3/11 10:29 page 276 #276
i
i
i
i
i
i
276 Anexa 1
Formularea matematic a problemei de programare dinamic discret va
prezentat n paralel cu formularea problemei.
Punerea problemei
S considerm un sistem de natur eco-
nomic care n evoluia sa ntr-un inter-
val de timp [t
0
, t
0
] precizat trece prin
mai multe stri.
Trecerea dintr-o stare n alta se reali-
zeaz numai n urma adoptrii unei de-
cizii, aleas dintr-o anumit mulime de
decizii posibile (admitem c avem un
proces de decizie cu un orizont nit).
Deciziile ce se pot adopta ntr-o etap
se deosebesc ntre ele prin efectul eco-
nomic produs.
Se cere s se precizeze ce decizie s se
adopte n ecare etap astfel nct efec-
tul economic total, produs n intervalul
de timp [t
0
, t
0
] considerat s e optim.
Formularea matematic
- e un proces de decizie cu n etape
(numerotate cu 1, 2, . . . , n);
- presupunem c starea sistemului
poate descris n ecare moment cu
ajutorul unui vector x = (x
1
, . . . , x
p
)
R
P
numit vector de stare;
- e x
0
R
P
starea iniial a sistemu-
lui;
- e X
j
R
P
mulimea strilor n
care se poate aa sistemul n etapa
j 1, . . . , n;
- punem X
0
= x
0
;
- presupunem c ecare decizie poate
descris cu ajutorul unui vector u =
(u
1
, . . . , u
q
) R
q
numit vector de de-
cizie (sau vector de control);
- e U
j
(x) R
q
mulimea deciziilor ce
se pot adopta n etapa j 1, . . . , n
dac sistemul se a n starea x.
S urmrim acest proces de decizie grac:
n
}
1
}
2 j
Etapa:
} }
u
n
U
n
(x
n-1
) u
2
U
2
(x
1
) u
j
U
j
(x
j-1
) u
1
U
1
(x
0
)
Decizia:
}
x
j
x
j-1 }
x
n
Starea
sistemului:
x
1
x
0
Efectul
economic:
f
j
(x
j-1
, u
j
) f
1
(x
0
, u
1
) f
2
(x
1
, u
2
) f
j
(x
n-1
, u
n
)
Putem observa c pentru ecare j 1, . . . , n starea x
j
depinde de
starea anterioar x
j1
i de decizia u
j
.
Deci evoluia sistemului poate descris prin relaii de forma:
x
j
= g
j
(x
j1
, u
j
) j = 1, n
i
i
JATEK 2005/3/11 10:29 page 277 #277
i
i
i
i
i
i
Programare dinamic discret 277
unde g
1
, . . . , g
n
sunt funcii cunoscute.
n urma ultimei decizii, sistemul trece n starea nal x
n
.
Deniia 7. Vectorul (u
1
, . . . , u
n
) ale crui coordonate sunt deciziile adop-
tate n cele n etape se numete politic a procesului de decizie.
Observaie.
1. Cunoscnd starea iniial x
0
a sistemului, o politic (u
1
, . . . , u
n
) de-
termin complet att comportarea sistemului de-a lungul celor n etape
ale procesului, ct i starea nal.
Urmrind gracul, se poate scrie succesiv:
x
1
= g
1
(x
0
, u
1
) = g
1
(x
0
, u
1
)
x
2
= g
2
(x
1
, u
2
) = g
2
( g
1
(x
0
, u
1
), u
2
) = g
2
(x
0
, u
1
, u
2
)
.
.
.
x
n
= g
n
(x
n1
, u
n
) = g
n
( g
n1
(x
0
, . . . , u
n1
), u
n
) = g
n
(x
0
, u
1
, . . . , u
n
).
2. Pentru ecare j 1, . . . , n, efectul economic produs n etapa j, prin
adoptarea deciziei u
j
, depinde de aceast decizie i de starea anterioar
x
j1
a sistemului.
Efectul economic total este o funcie a efectelor economice pariale
f
1
(x
0
, u
1
), . . . , f
n
(x
n1
, u
n
)
Cazul cel mai frecvent ntlnit n practic este cel n care efectul economic
total este egal cu suma efectelor economice pariale. Presupunem, n conti-
nuare, c suntem n aceast situaie.
Observaie. Pentru o stare iniial x
0
dat i o politic dat (u
1
, . . . , u
n
),
efectul economic total este complet determinat.
Avem succesiv:
f
1
(x
0
, u
1
) =

f(x
0
, u
1
)
f
2
(x
1
, u
2
) = f
2
( g, (x
0
, u
1
), u
2
) =

f
2
(x
0
, u
1
, u
2
)
.
.
.
f
n
(x
n1
, u
n
) = f
n
( g
n1
(x
0
, u
1
, . . . , u
n1
, u
n
) =

f
n
(x
0
, u
1
, . . . , u
n
)
deci:
f
1
(x
0
, u
1
)+ +f
n
(x
n1
, u
n
) =

f
1
(x
0
, u
1
)+

f
2
(x
0
, u
1
, u
2
)+ +

f
n
(x
0
, u
1
, . . . , u
n
)
i
i
JATEK 2005/3/11 10:29 page 278 #278
i
i
i
i
i
i
278 Anexa 1
i efectul economic total este:
f(x
0
, u
1
, . . . , u
n
) = f
1
(x
0
, u
1
) +f
2
(x
1
, u
2
) + +f
n
(x
n1
, u
n
) (9.11)
Putem formula urmtoarea problem:
- cunoscnd starea iniial x
0
a sistemului, s se determine o politic
(u
1
, . . . , u
n
) pentru care efectul economic total este optim. O astfel de politic
se numete politic optim.
Deci putem scrie urmtoarea problem:
_

_
n

j=1
f
j
(x
j1
, u
j
) min(max)
x
j
= g
j
(x
j1
, u
j
), j = 1, n
x
0
dat
x
j
X
j
, j = 1, n
u
j
U
j
(x
j1
), j = 1, n
(9.12)
Deniia 8. Orice problem de tipul (9.12) se numete problem de opti-
mizare dinamic discret.
Restriciile x
j
= g
j
(x
j1
, u
j
), j = 1, n se numesc restricii dinamice,
iar restriciile:
_

_
x
0
dat
x
j
X
j
, j = 1, n
u
j
U
j
(x
j1
), j = 1, n
(9.13)
se numesc restricii statice.
Un vector (u
1
, . . . , u
n
) care satisface restriciile problemei (9.12) se nu-
mete politic posibil (sau admisibil).
Ecuaia funcional a lui Bellman i rezolvarea numeric a proble-
mei de optimizare dinamic discret
Se consider un proces de decizie cu n etape i problema (9.12) la care
conduce acest proces.
Pentru ecare k 1, . . . , n, notm cu P
k
subprocesul de decizie care
ncepe cu etapa k i cuprinde ultimele n k + 1 etape ale procesului iniial.
Denim recursiv mulimile:

X
n
= X
n

X
k1
= x
k1
X
k1
, u
k
U
k
(x
k1
), g(x
k1
, u
k
)

X
k
, k = 1, n.
i
i
JATEK 2005/3/11 10:29 page 279 #279
i
i
i
i
i
i
Programare dinamic discret 279
Pentru ecare k 1, . . . , n, mulimea

X
k1
reprezint mulimea acelor
stri iniiale ale subprocesului P
k
pentru care exist politici posibile n sub-
procesul P
k
.
Introducem mulimile:

U
k
(x
k1
) = u
k
U
k
(x
k1
) : g
k
(x
k1
, u
k
)

X
k

pentru ecare k 1, . . . , n, x
k1
X
k1
.
Mulimea

U
k
(x
k1
) reprezint mulimea deciziilor ce se pot adopta n
etapa k pentru ca sistemul s treac din starea x
k1
ntr-o stare
x
k
= g
k
(x
k1
, u
k
) din

X
k
, adic ntr-o stare n care subprocesul P
k+1
care pornete cu x
k
s posede politici posibile.
Deci problema (9.12) este echivalent cu problema:
_

_
n

i=1
f
j
(x
j1
, u
j
) min
x
j
= g
j
(x
j1
, u
j
) j = 1, n
x
0
dat
x
j


X
j
, j = 1, n
u
j


U
j
(x
j1
), j = 1, n
(9.14)
Pentru orice k 1, . . . , n, o politic optim n subprocesul P
k
se gsete
prin rezolvarea modelului:
_

_
n

i=1
f
j
(x
j1
, u
j
) min
x
j
= g
j
(x
j1
, u
j
) j = k, n
x
k1


X
k1
dat
x
j


X
j
, j = k, n
u
j


U
j
(x
j1
), j = k, n
(9.15)
Presupunem c toate aceste probleme admit soluii.
Teorem. Sunt adevrate urmtoarele armaii:
1. Pentru ecare k 1, . . . , n, numrul:
a
k
= min
_
_
_
n

j=k
f
j
(x
j1
, u
j
) : u
j


U
j
(x
j1
), j = k, n
_
_
_
depinde numai de vectorul de stare x
k1


X
k1
.
i
i
JATEK 2005/3/11 10:29 page 280 #280
i
i
i
i
i
i
280 Anexa 1
2. Funciile F
k
:

X
k1
R, k = 1, n + 1 denite prin:
F
k
(x
k1
) = min
_
_
_
n

j=k
f
j
(x
j1
, u
j
) : u
j


U
j
(x
j1
), j = k, n
_
_
_
dac k = n + 1, atunci F
n+1
(x
n
) = 0
i, n rest, veric ecuaia funcional:
F
k
(x
k1
) = minf
k
(x
k1
, u
k
) +F
k+1
(x
k
) : u
k


U
k
(x
k1
) (9.16)
numit ecuaia funcional a lui Bellman.
Demonstraie. Fixm un indice k 1, . . . , n.
Dac k = n,
a
n
= minf
n
(x
n1
, u
n
) +F
n+1
(x
n
), u
n


U
n
(x
n1
) = f
n
(x
n1
)
este evident.
Dac k < n,
a
k
= min
_
_
_
u1

j=k
f
j
(x
j1
, u
j
) +f
n
(x
n1
, u
n
), u
j


U
j
(x
j1
), j = k, n 1
_
_
_
a
k
depinde de x
k1
, . . . , x
n1
, u
k
, . . . , u
n
.
Folosind proprietatea:
min(u) +(u, v) : u U, v V = min
u
(u) + min
v
(u, v)
putem scrie:
a
k
= min
u
j

U
j
(x
j1
)
j=k,n1
_
_
_
n1

j=k
f
j
(x
j1
, u
j
) + min
u
n

U
n
(x
n1
)
f
n
(x
n1
, u
n
)
_
_
_
.
Continund acest raionament rezult:
a
k
= min
u
k

U
k
(x
n1
)
_

_
f
k
(x
k1
, u
k
) + min
u
j

U
j
(x
j1
)
j=k+1,n
n

j=k+1
f
j
(x
j1
, u
j
)
_

_
depinde numai de x
k1
.
i
i
JATEK 2005/3/11 10:29 page 281 #281
i
i
i
i
i
i
Programare dinamic discret 281
Rezolvarea numeric a problemei de optimizare dinamic discret
folosind ecuaia funcional a lui Bellman
Dicultatea general care se pune n adoptarea unei decizii ntr-o etap
a unui proces de decizie cu n etape const n aceea c trebuie luat n con-
siderare inuena ei asupra tuturor etapelor care urmeaz. Cu ct suntem
mai aproape de starea nal a sistemului, cu att alegerea deciziei este mai
simpl.
n ultima etap se pune, n consecin, numai problema adoptrii deciziei
pentru care efectul economic n acea etap este optim.
De aceea pentru determinarea politicii optime a problemei (9.12), par-
curgem procesul n sensul invers desfurrii lui (adic ncepem cu
ultima etap).
Dnd lui k valorile n, n 1, . . . , 2, 1 determinm succesiv cu ecuaia
funcional a lui Bellman (9.16):
F
k
(x
k1
) = minf
k
(x
k1
, u
k
) +F
k+1
(g
k
(x
k1
, u
k
)) : u
k


U
k
(x
k1
)
efectul economic optim F
k
(x
k1
) n subprocesul P
k
constituit din etapele
k, . . . , n i o decizie optim ce trebuie luat n etapa k.
Astfel obinem F
1
(x
0
), adic valoarea minim a funciei de scop din pro-
blema (9.12).
Etapa 1 Lum k = n
i pentru ecare x
n1


X
n1
determinm cu formula (9.16) efectul eco-
nomic produs n ultima etap:
F
n
(x
n1
) = minf
n
(x
n1
, u
n
) : u
n


U
n
(x
n1
)
u
n
(x
n1
) un punct minim al funciei f
n
(x
n1
, ) relativ la mulimea

U
n
(x
n1
).
Are loc
F
n
(x
n1
) = f
n
(x
n1
, u
n
(x
n1
)) (9.17)
pentru toi x
n1


X
n1
.
Etapa 2 Dac k = n 1,
atunci pentru ecare x
n2


X
n2
determinm efectul economic optim
n ultimele dou etape.
F
n1
(x
n2
) = minf
n1
(x
n2
, u
n1
)+F
n
(g
n1
(x
n1
, u
n1
)) : u
n1


U
n1
(x
n2
)
u
n1
(x
n2
) este un punct minim al funciei f
n1
(x
n2
, )+F
n
(g
n1
(x
n2
, ))
relativ la mulimea

U
n+1
(x
n2
).
i
i
JATEK 2005/3/11 10:29 page 282 #282
i
i
i
i
i
i
282 Anexa 1
Acest punct reprezint decizia optim care trebuie luat n etapa (n1),
dac sistemul a ajuns n starea x
n2
i are loc:
F
n1
(x
n2
) = f
n1
(x
n2
, u
n1
(x
n2
)) +F
n
(g
n1
(x
n2
, u
n1
(x
n2
)) (9.18)
pentru x
n2


X
n2
Continund raionamentul pentru k + 1 se determin F
k+1
(x
k
) efectul
economic optim n subprocesul de decizie P
k+1
(constituit din etapele k +
1, . . . , n), precum i decizia optim u
k+1
(x
k
).
Pentru k se determin F
k
(x
k1
) pentru ecare x
k1


X
k1
(n P
k
), ct
i un punct minim u
k
(x
k1
) al funciei:
f
k
(x
k1
, ) +F
k+1
(g
k
(x
k1
, ))
relativ la mulimea

U
k
(x
k1
) care satisface egalitatea:
F
k
(x
k1
) = f
k
(x
k1
, u
k
(x
k1
) +F
k+1
(g
k
(x
k1
, u
k
(x
k1
))). (9.19)
n nal, obinem efectul economic total F
1
(x
0
) produs n cele n etape i
decizia optim u
1
(x
0
) pentru etapa 1. Evident punctul u
1
(x
0
) satisface:
F
1
(x
0
) = f
1
(x
0
, u
1
(x
0
)) +F
2
(g
1
(x
0
, u
1
(x
0
))). (9.20)
Deoarece x
0
este un punct dat, parcurgnd acum procesul n ordinea des-
furrii lui, putem determina punctele:
u
1
= u
1
(x
0
) x
1
= g
1
(x
0
, u
1
)
u
2
= u
2
(x
1
) x
2
= g
2
(x
1
, u
2
)
.
.
.
.
.
.
u
n
= u
n
(x
n1
) x
n
= g
n
(x
n1
, u
n
)
Astfel folosind relaiile (9.17) - (9.20) avem:
F
1
(x
0
) = f
1
(x
0
, u
1
) +F
2
( x
1
)

F
k
( x
k1
) = f
k
( x
k1
, u
k
) +F
k+1
( x
k
)
. . .

F
n1
( x
n2
) = f
n1
( x
n2
, u
n1
) +F
n
( x
n1
)
F
n
( x
n1
) = f
n
( x
n1
, u
n
)
de unde:
F
1
(x
0
) = f
1
(x
0
, u
1
) + +f
k
( x
k1
, u
k
) + +f
n
( x
n1
, u
n
)
deci ( u
1
, . . . , u
n
) este o politic optim a procesului de decizie, iar ( x
1
, . . . , x
n
)
sunt strile corespunztoare prin care trece sistemul.
i
i
JATEK 2005/3/11 10:29 page 283 #283
i
i
i
i
i
i
Programare dinamic discret 283
Observaie. Pentru rezolvarea problemei:
_

_
n

j=1
f
j
(x
j1
, u
j
) max
x
j
= g
j
(x
j1
, u
j
), j = 1, n
x
0
dat
x
j
X
j
, j = 1, n
u
j
U
j
(x
j1
), j = 1, n
se poate aplica un raionament analog, dar n ecuaia funcional a lui
Bellman (9.16)trebuie nlocuit min cu max i u
k
(x
k1
) este pentru ecare
k 1, . . . , n un punct maxim al funciei:
f
k
(x
k1
, ) +F
k+1
(g
k
(x
k1
, ))
relativ la

U
k
(x
k1
).
Analiza prospectiv i retrospectiv a proceselor secveniale de de-
cizii. Funcii obiectiv decompozabile prospectiv i retrospectiv
(metoda progresiv i regresiv)
Deniia 9. Dac desfurarea procesului secvenial de luare a deciziilor
este privit ca ncepnd cu starea iniial x
0
i terminnd cu starea nal
x
n
, atunci, n acest caz, facem analiza prospectiv a procesului secvenial
de decizii.
Deniia 10. n opoziie cu analiza prospectiv a procesului secvenial de
decizii, se poate imagina o desfurare retrospectiv a acesteia. Dac
pornim de la starea nal x
n
, putem s ne imaginm c adoptarea deciziei
u
n
are ca efect trecerea sistemului din starea x
n
ntr-o stare x
n1
.
Singura diferen ntre analiza prospectiv i analiza retrospectiv a unui
proces secvenial de decizii const n modul n care este privit evoluia
sistemului. Dei analiza prospectiv pare mai natural, se ntmpl frecvent
ca analiza retrospectiv s e mai ecient din punctul de vedere al calculrii
unei politici optime.
Principiul optimalitii nu are loc pentru orice tip de problem. n conti-
nuare, prezentm cazuri speciale pentru care aplicarea principiului optimali-
tii este nc posibil.
Oricrui proces secvenial de decizii i se poate asocia un graf numit graf
secvenial cu o structur particular.
Astfel problema determinrii unei politici optime n cazul unei funcii
obiectiv aditive este echivalent cu problema determinrii unui drum de
lungime maxim /minim n graful secvenial asociat.
i
i
JATEK 2005/3/11 10:29 page 284 #284
i
i
i
i
i
i
284 Anexa 1
Problem aplicativ
1. Determinarea politicii optime de desfacere a unui produs.
Dintr-un stoc, al crui nivel iniial este x
0
, se pune la nceputul ecrei
luni o anumit cantitate din produsul stocat n vnzare.
Se cere s se planice pe o perioad de n luni cantitile ce urmeaz a
puse lunar n vnzare, tiind c nivelul stocului crete n cursul ecrei luni
de c ori (c > 1) i c prin vnzarea de u uniti din produs la nceputul
lunii j 1, . . . , n se obine beneciul f
j
(u). Drept criteriu de apreciere a
politicii de desfacere se alege beneciul total realizat n cele n luni. S se
determine politica optim de desfacere!
Dac notm cu u
j
cantitatea ce urmeaz a pus n vnzare la nceputul
lunii j i cu x
j
nivelul stocului de la sfritul lunii j, atunci, dup vnzarea
celor u
j
uniti, nivelul stocului va x
j1
u
j
.
Deoarece, ntr-o lun, nivelul stocului crete de c ori, el va atinge la
sfritul lunii j valoarea:
x
j
= c(x
j1
u
j
).
Aadar, pentru a determina o politic optim de vnzare, se va rezolva ur-
mtoarea problem de optimizare dinamic discret:
_

_
n

j=1
f
j
(u
j
) max
x
j
= c(x
j1
u
j
), j = 1, n
x
0
dat
x
j
0 j = 1, n
0 u
j
x
j1
, j = 1, n
Observm c n acest caz avem:
X
j
=

X
j
= [0, ) =
U
j
(x
j1
) =

U
j
(x
j1
) = [0, x
j1
], j = 1, n.
Ecuaia funcional lui Bellman va :
F
k
(x
k1
) = maxf
k
(u
k
) +F
k+1
(c(x
k1
u
k
)) : u
k
[0, x
k1
]
x
k1
[0, ) pentru k = 1, n
Pentru a rezolva numeric, considerm cazul n care n = 3
f
1
(u) = f
2
(u) = f
3
(u) =

u, c = 2, x
0
= 1
i
i
JATEK 2005/3/11 10:29 page 285 #285
i
i
i
i
i
i
Programare dinamic discret 285
Putem scrie:
F
3
(x
2
) = maxf
3
(u
3
) : u
3


U
3
(x
2
) = max

u
3
: u
3
[0, x
2
] =

x
2
u
3
(x
2
) = x
2
pentru orice x
2
0.
F
2
(x
1
) = maxf
2
(u
2
) +F
3
(g
2
(x
1
, u
2
)) : u
2


U
2
(x
1
) = [0, x
1
]
unde din:
x
j
= g
j
(x
j1
, u
j
)
avem:
x
2
= g
2
(x
1
, u
2
) = c(x
1
u
2
)
Deci:
F
2
(x
1
) = maxf
2
(u
2
) +F
3
(2(x
1
u
2
)) : u
2
[0, x
1
] =
= max
_

u
2
+
_
3(x
1
u
2
) : u
2
[0, x
1
]
_
Efectund calculele, valoarea maxim a funciei f(x) =

x +
_
3(x
1
x)
este 2

x
1
. Deci F
2
(x
1
) = 2

x
1
cu u
2
(x
1
) =
x
1
4
pentru orice x
1
0.
F
1
(x
0
) = max

u
1
+F
2
(3(x
0
u
1
)) : u
1
[0, x
0
] =
= max

u
1
+ 2
_
3(x
0
u
1
) : u
1
[0, x
0
]
n urma efecturii calculelor, f are valoarea maxim pentru x =
x
0
13
.
Astfel:
F
1
(x
0
) = max

u
1
+ 2
_
3(x
0
u
1
) : u
1
[0, x
0
] =

13x
0
avnd u
1
(x
0
) =
x
0
13
.
Avnd n vedere c x
0
= 1 F
1
(x
0
) =

13 i politica optim de des-
facere este: ( u
1
, u
2
, u
3
) =
_
1
13
,
9
13
,
81
13
_
Adoptnd aceast politic, bene-
ciul total va

13, iar la sfritul perioadei de 3 luni stocul va epuizat.
Nivelul stocului n ecare perioad este:
_
1,
36
13
,
81
13
, 0
_
.
2. O ntreprindere cinematograc intenioneaz s deschid 6 cinematografe
noi n 4 cartiere ale unui ora. Beneciul pe care l va realiza n ecare din
cele 4 cartiere, dup deschiderea noilor cinematografe, depinde de numrul
cinematografelor noi din acel cartier i este dat n tabelul de mai jos.
Se cere s se determine, pentru ecare cartier, numrul de cinematografe
noi, astfel nct beneciul total realizat n cele 4 cartiere s e maxim.
i
i
JATEK 2005/3/11 10:29 page 286 #286
i
i
i
i
i
i
286 Anexa 1
Cartierul
Nr. cinematografe 1 2 3 4
0 40 50 30 28
1 50 54 32 31
2 60 58 40 37
3 70 68 50 47
4 80 80 56 56
5 90 92 65 62
6 90 99 72 73
Dac notm cu u
j
numrul de cinematografe ce urmeaz a deschise n
cartierul j 1, 2, 3, 4 cu f
j
(u
j
) beneciul realizat dup deschiderea lor i cu
x
j
numrul de cinematografe care rmne disponibil (din totalul de 6) pentru
cartierele j + 1, . . . , 4, dup ce s-au deschis n cartierele 1, . . . , j respectiv
u
1
. . . u
j
cinematografe, atunci modelul matematic al problemei este:
_

_
f
1
(u
1
) +f
2
(u
2
) +f
3
(u
3
) +f
4
(u
4
) max
x
j
= x
j1
u
j
j = 1, 4
x
0
= 6
x
j
[0, 6] (N 0) j = 1, 4
u
j
[0, x
j1
] (N 0) j = 1, 4
Avem acum:
X
j
=

X
j
= [0, 6] (N 0)
U
j
=

U
j
(x
j1
) = [0, x
j1
] (N 0) pentru orice j = 1, 4
Ecuaia funcional a lui Bellman este:
F
k
(x
k1
) = maxf
k
(u
k
) +F
k+1
(x
k1
u
k
) : u
k


U
k
(x
k1
),
unde evident x
k1


X
k1
Putem scrie pentru k = 4
F
4
(x
3
) = maxf
4
(u
4
) : u
4


U
4
(x
3
), pentru orice x
3


X
3
= 0, 1, 2, 3, 4, 5, 6
n vederea determinrii valorii maxime, folosim urmtorul tabel:
x
3
0 1 2 3 4 5 6
F
4
(x
3
) 28 31 37 47 56 62 73
u
4
(x
3
) 0 1 2 3 4 5 6
x
3
= 0 u
4


U
4
(x
3
) = [0, x
3
] N


U
4
(0) = 0 f
4
(0) = 28
x
3
= 1

U
4
(1) = 0, 1 f
4
(1) = 31.
i
i
JATEK 2005/3/11 10:29 page 287 #287
i
i
i
i
i
i
Programare dinamic discret 287
Folosind raionamentul, se obin datele din tabel.
Pentru k = 3 avem:
F
3
(x
2
) = maxf
3
(u
3
) +F
4
(x
2
u
3
) : u
3


U
3
(x
2
), x
2


X
2
.
Acum pentru toate valorile x
2
0, 1, . . . , 6 alctuim un tabel cu valorile
lui f
3
(u
3
) +F
4
(x
2
u
3
) :
x
2
u
3
0 1 2 3 4 5 6
u
3
f
3
F
4
28 31 37 47 56 62 73
0 30 58 61 67 77 86 92 103
1 32 60 63 69 79 88 94
2 40 68 71 77 87 96
3 50 78 81 87 97
4 56 84 87 93
5 65 93 96
6 72 100
Pentru un x
2
0, . . . , 6 xat valorile lui f
3
(u
3
) +F
4
(x
2
u
3
) sunt situate
pe diagonala de la u
3
= x
2
pn la X
2
u
3
= x
2
i se obin adunnd valorile
lui f
3
(u
3
) i F
4
(x
2
u
3
) scrise pe margine.
Valoarea cea mai mare de pe diagonal reprezint pe F
3
(x
2
), iar linia lui
u
3
pe care se a valoarea lui u
3
(x
2
) :
x
2
= 0 u
3
= 0 u
3


U
3
(x
2
) = [0, x
2
] N
x
2
= 1 u
3
0, 1
x
2
= 2 u
3
0, 1, 2
x
2
= 3 u
3
0, 1, 2, 3
Avem astfel:
x
2
0 1 2 3 4 5 6
F
3
(x
2
) 78 81 88 98 106 113 123
u
3
(x
2
) 0 0 2 3 0 5 0
n mod analog se determin:
F
2
(x
1
) = maxf
2
(u
2
) +F
3
(x
1
u
2
) : u
2


U
2
(x
1
),
pentru orice x
1
0, 1, 2, 3, 4, 5, 6 i se obine
x
1
0 1 2 3 4 5 6
F
2
(x
1
) 138 142 148 158 168 180 187
u
2
(x
1
) 0 1 0 0 4 5 6
i
i
JATEK 2005/3/11 10:29 page 288 #288
i
i
i
i
i
i
288 Anexa 1
tiind c x
0
= 6 putem scrie pe rnd:
F
1
(x
0
) = maxf
1
(u
1
) +F
2
(x
0
u
1
) : u
1


U
1
(x
0
)
x
0
u
1
0 1 2 3 4 5 6
u
1
f
1
F
2
138 142 148 158 168 180 187
0 50 237
1 60 240
2 70 238
3 80 238
4 90 238
5 100 242
6 100 238
Pentru x
0
= 6, u
1
0, 1, 2, 3, 4, 5, 6 avem F
1
(x
0
) = 202 i u
1
(x
0
) =
5, prin urmare:
u
1
= u
1
(x
0
) = 5 x
1
= x
0
u
1
= 1
u
2
= u
2
(x
1
) = 1 x
2
= x
1
u
2
= 0
u
3
= u
3
(x
2
) = 0 x
3
= x
2
u
3
= 0
u
4
= u
4
(x
3
) = 0 x
4
= x
3
u
4
= 0
Prin urmare, politica optim este: ( u
1
, u
2
, u
3
, u
4
) = (5, 1, 0, 0).
Adoptnd aceast politic, se va obine un beneciu total de 202 uniti
monetare.
i
i
JATEK 2005/3/11 10:29 page 289 #289
i
i
i
i
i
i
Anexa 2
Elemente de algebr liniar i analiz matematic
n continuare, sunt prezentate noiuni de baz din algebra liniar i anal-
iz matematic necesare pentru nelegerea teoriei prezentate.
Deniia 1. V este un spaiu vectorial (spaiu liniar) peste corpul K (R sau
C) dac:
(a) se introduce o operaie notat cu + i (V, +) este un grup comutativ;
(b) se introduce o operaie extern : K V V, denit prin
(a, x) = ax i pentru orice x, y V i orice a, b, c K au loc relaiile:
1 x = x
a(bx) = (ab)x
(a +b)x = ax +bx
a(x +y) = ax +ay
(c) pentru orice x, y V i a K avem:
x +y V
a x V.
Dac K R, atunci spaiul vectorial se numete spaiu vectorial
(liniar) real.
Exemple. (/
m,n
(R), +, ) unde /
m,n
este mulimea matricilor de ordin
mn; (R
n
, +, ), (C
n
, +, ) (spaii euclidiene).
Mulimea polinoamelor de grad n cu coecieni reali formeaz un spaiu
liniar real.
Deniia 2. Fie n N

un numr natural xat. Mulimea R


n
este denit
prin:
R
n
= R R.
Elementele mulimii x R
n
sunt formate din grupuri ordonate de n
numere reale x = (x
1
, . . . , x
n
). Un punct xat din R
n
l vom nota cu x
0
=
(x
0
1
, . . . , x
0
n
).
289
i
i
JATEK 2005/3/11 10:29 page 290 #290
i
i
i
i
i
i
290 Anexa 2
Deniia 3. Pe mulimea R
n
denim o operaie de adunare notat cu +.
Pentru x, y R
n
oarecare, x = (x
1
, . . . , x
n
), y = (y
1
, . . . , y
n
), suma x + y a
acestor puncte este:
x +y = (x
1
+y
1
, . . . , x
n
+y
n
).
Pe mulimea R
n
denim o operaie de nmulire cu scalari reali astfel:
pentru R i x R
n
oarecare x = (x
1
, . . . , x
n
).
Teorem. Mulimea R
n
cu operaiile denite mai sus este un spaiu liniar
real (spaiu vectorial).
Demonstraie. Se poate verica uor c operaia intern notat cu "+" i
operaia extern veric condiiile date n deniia spaiului vectorial.
Elementele spaiului sunt numite vectori. Elementul nul care este de
altfel originea spaiului, l notm cu = (0, 0, . . . , 0).
Observaie. Elementele unui spaiu liniar se numesc vectori.
n continuare, e V un spaiu vectorial peste corpul K. Considerm un
sistem de vectori (v
i
)
iI
V, I (mulime de indici) nit.
Deniia 4. Dac (c
i
)
iI
sunt numere reale date, atunci

iI
c
i
v
i
se numete
o combinaie liniar a vectorilor.
Deniia 5. Dac (c
i
)
iI
sunt numere reale pozitive, astfel nct

iI
c
i
= 1,
atunci

iI
c
i
v
i
se numete combinaia convex a vectorilor.
Deniia 6. Fie S = v
1
. . . v
n
V. S se numete sistem nit de generatori
pentru spaiul V, dac pentru orice v V exist (c
i
)
i=1,n
K astfel nct s
avem:
v =
n

i=1
c
i
v
i
.
Deniia 7. Spaiul vectorial V se numete nit generat, dac exist un
sistem nit de generatori al su (altfel se numete innit generat).
Deniia 8. S se numete sistem liniar independent, dac pentru (c
i
)
iI
K
oarecare are loc implicaia:

iI
c
i
v
i
= 0 c
i
= 0, i I.
altfel se numete sistem liniar dependent.
i
i
JATEK 2005/3/11 10:29 page 291 #291
i
i
i
i
i
i
Elemente de algebr liniar i analiz matematic 291
Teorem. Un sistem de vectori v
1
, . . . , v
n
din spaiul liniar real R
n
formeaz un sistem liniar independent de vectori, dac i numai dac de-
terminantul format din componentele vectorilor este diferit de zero.
Demonstraie. Sistemul de vectori:
v
i
= (v
i
1
, v
i
2
, . . . , v
i
n
), i = 1, n
este un sistem liniar independent prin deniie, dac i numai dac pentru
orice (c
i
)
i=1,n
K are loc:
n

i=1
c
i
v
i
= 0 c
i
= 0, i = 1, n

c
1
(v
1
1
. . . v
1
n
) +c
n
(v
n
1
. . . v
n
n
) = 0

_
c
1
v
1
1
+ +c
n
v
n
1
= 0
c
1
v
1
2
+ +c
n
v
n
2
= 0
.
.
.
c
1
v
1
n
+ +c
n
v
n
n
= 0
Un sistem liniar omogen admite soluie banal, dac i numai dac determi-
nantul:
=

v
1
1
. . . v
n
1
. . . . . . . . .
v
1
n
. . . v
n
n

este diferit de zero.


Acest determinant este format din componentele vectorilor (v
i
)
i=1,n
i
astfel teorema este demonstrat.
Observaie. Orice submulime a unui sistem liniar independent este liniar
independent.
Deniia 9. Fie B = (v
i
)
iI
V. B se numete baz a spaiului liniar
V, dac este o familie liniar independent de vectori i un sistem generator
pentru V.
Dac B este un sistem nit de vectori, atunci spaiul vectorial se numete
nit generat. Algebra liniar lucreaz cu spaii nit generate.
Dac B este un sistem innit de vectori, atunci spaiul vectorial se
numete innit dimensional. Cu aceste tipuri de spaii opereaz analiza
funcional.
i
i
JATEK 2005/3/11 10:29 page 292 #292
i
i
i
i
i
i
292 Anexa 2
Teorem. Fie V ,= 0 un spaiu vectorial peste corpul K, nit generat.
Din orice sistem de generatori nit al lui V se poate construi o baz a sa.
Teorem. Fie V ,= 0 un spaiu vectorial peste corpul K, nit generat.
Toate bazele sunt nite i au acelai numr de elemente.
Deniia 10. Numrul de vectori dintr-o baz a spaiului vectorial V nit
generat se numete dimensiune.
Teorem. Fie V un spaiu vectorial n dimensional peste corpul K. Dac
B = v
1
, . . . , v
n
este o baz atunci orice vector x V poate scris n mod
unic ca o combinaie liniar a bazei, adic exist un mod unic (x
i
)
i1,n
K
astfel nct x =
n

i=1
x
i
v
i
.
Valorile (x
i
)
i=1,n
se numesc coordonatele vectorului x n baza B.
Teorem. Fie V un spaiu vectorial n dimensional peste corpul K. Sistemul
de vectori B = v
1
, . . . , v
n
formeaz baz pentru V, dac i numai dac este
un sistem liniar independent de vectori.
Demonstraie. Avem de artat c B este un sistem generator pentru V, adic
pentru orice v V exist (c
i
)
i=1,n
K astfel nct s avem v =
n

i=1
c
i
v
i
.
Putem scrie:
v = c
1
v
1
+c
2
v
2
+ +c
n
v
n

(v
1
. . . v
n
) = c
1
(v
1
1
. . . v
1
n
) +c
2
(v
2
1
. . . v
2
n
) + +c
n
(v
n
1
. . . v
n
n
)

_
v
1
= c
1
v
1
1
+c
2
v
2
1
+ +c
n
v
n
1
.
.
.
v
n
= c
1
v
1
n
+c
2
v
2
n
+ +c
n
v
n
n
(9.21)
Sistemul Cramer admite soluie unic, dac i numai dac determinantul
format din coecienii restriciilor:
=

v
1
1
v
2
1
. . . v
n
1
. . . . . . . . . . . .
v
1
n
v
2
n
. . . v
n
n

este diferit de zero. Deoarece B este baz, iar coloanele sunt chiar compo-
nentele vectorilor (v
i
)
i=1,n
rezult c ,= 0 i astfel teorema este demon-
strat.
i
i
JATEK 2005/3/11 10:29 page 293 #293
i
i
i
i
i
i
Elemente de algebr liniar i analiz matematic 293
Problem rezolvat
Fie B = v
1
, v
2
, v
3
R
3
un sistem de vectori astfel nct v
1
=
(1 0 1), v
2
= (2 1 0) i v
3
= (3 2 1). Se d vectorul v =
(2 1 0) din R
3
. S se arate c sistemul de vectori B este baz i s
se determine coordonatele vectorului v n baza B!
B este baz =

v
1
1
v
2
1
v
3
1
v
1
2
v
2
2
v
3
2
v
1
3
v
2
3
v
3
3

,= 0.
Se poate verica uor c determinantul format din componentele vecto-
rilor este egal cu 8, deci sistemul de vectori B este baz.
B ind baz este sistem generator, adic exist (c
i
)
i=1,3
R astfel nct
s avem: v =
3

i=1
c
i
v
i
. Putem scrie:
v = c
1
v
1
+c
2
v
2
+c
3
v
3
(2 1 0) = c
1
(1 0 1) +c
2
(2 1 0) +c
3
(3 2 1)

_
c
1
+ 2c
2
3c
3
= 2
c
2
+ 2c
3
= 1
c
1
+c
3
= 0
n urma rezolvrii sistemului Cramer, vom obine c
1
=
1
2
, c
2
= 0 c
3
=
1
2
,
iar vectorul v = (2 1 0) n baza B este v
B
=
_
1
2
0
1
2
_
.
Observaie. Fie spaiul vectorial real R
n
, n 2, natural. Sistemul
de vectori B = (e
1
, e
2
, . . . , e
n
) unde e
1
= (1 0 0 . . . 0); e
2
=
(0 1 0 . . . 0), . . . , e
n
= (0 0 . . . 0 1) se numete baz canonic. n
baza canonic notat cu B
c
, ecare vector i pstreaz coordonatele.
Lema substituiei. Considerm spaiul liniar real R
n
.
Fie B
c
= (e
1
, . . . , e
n
) R
n
i lum un vector v R
n
astfel nct v
i
,= 0.
Atunci sistemul de vectori B = (e
1
, . . . , e
i1
, v, e
i+1
, . . . , e
n
) este baz n R
n
.
Coordonatele unui vector oarecare u R
n
n baza B sunt:
u
B
=
_
u
1
v
1
u
i
v
i
, u
2
v
2
u
i
v
i
, . . . , u
i1
v
i1
u
i
v
i
,
u
i
v
i
, . . . , u
n
v
n
u
i
v
i
_
.
Observaie. Componentele vectorului u n baza B se calculeaz folosind
urmtoarele tabele:
i
i
JATEK 2005/3/11 10:29 page 294 #294
i
i
i
i
i
i
294 Anexa 2
B v u
e
1
v
1
u
1
e
2
v
2
u
2
.
.
.
.
.
.
.
.
.
e
i
v
i
u
i
.
.
.
.
.
.
.
.
.
e
n
v
n
u
n
B e
i
u
e
1
0
v
i
u
1
u
i
v
1
v
i
.
.
.
.
.
.
.
.
.
v
i
1
u
i
v
i
.
.
.
.
.
.
.
.
.
e
n
0
v
i
u
n
u
i
v
n
v
i
Componentele vectorului u se calculeaz folosind regula dreptunghiului.
Probleme rezolvate
1. Considerm sistemul de vectori B = (v
1
, v
2
, v
3
, v
4
), unde:
v
1
= (1 2 3 0), v
2
= (1 0 2 3), v
3
= (1 1 0 0) i
v
4
= (1 0 0 1). S se determine coordonatele vectorului:
v = (2 7 3 1) n baza B.
Construim tabelul:
B
c
v
1
v
2
v
3
v
4
v
e
1
1 -1 -1 1 2
e
2
2 0 1 0 7
e
3
-3 2 0 0 -3
e
4
0 3 0 1 1
Aplicm lema substituiei i, pe rnd, vom schimba vectorii din B
c
cu vectorii
(v
i
)
i=1,4
.
Putem scrie:
B
1
e
1
v
2
v
3
v
4
v
v
1
1 -1 -1 1 2
e
2
0 2 3 -2 3
e
3
0 -1 -3 3 3
e
4
0 3 0 1 1
B
2
e
1
e
2
v
3
v
4
v
v
1
1 0 1/2 0 7/2
v
2
0 1 3/2 -1 3/2
e
3
0 0 3/2 2 9/2
e
4
0 0 -9/2 4 -7/2
B
3
e
1
e
2
e
3
v
4
v
v
1
1 0 0 2/3 5
v
2
0 1 0 1 6
v
3
0 0 1 -4/3 -3
e
4
0 0 0 -2 -17
B e
1
e
2
e
3
e
4
v
v
1
1 0 0 0 -2/3
v
2
0 1 0 0 -5/2
v
3
0 0 1 0 7/3
v
4
0 0 0 1 17/2
v
B
= (2/3 5/2 7/3 17/2)
i
i
JATEK 2005/3/11 10:29 page 295 #295
i
i
i
i
i
i
Elemente de algebr liniar i analiz matematic 295
2. Fie matricea A =
_
_
1 2 3
2 4 5
3 5 6
_
_
.
S se calculeze A
1
.
A
1
A
2
A
3
e
1
e
2
e
3
e
1
1 2 3 1 0 0
e
2
2 4 5 0 1 0
e
3
3 5 6 0 0 1
e
1
A
2
A
3
A
1
1 2 3 1 0 0
e
2
0 0 -1 -2 1 0
e
3
0 -1 -3 -3 0 1
e
1
A
2
e
3
A
1
1 1 0 -2 0 1
e
2
0 1/3 0 -1 1 -1/3
A
3
0 1/3 1 1 0 -1/3
e
1
e
2
e
3
A
1
1 0 0 1 -3 2
A
2
0 1 0 -3 3 -1
A
3
0 0 1 2 -1 0
Matricea invers este: A
1
=
_
_
1 3 2
3 3 1
2 1 0
_
_
Deniia 11. Fie X un spaiu liniar peste K (K este R sau C).
( [ ) : XX K este form neunitar (funcie hermetian) n X, dac:
a) pentru orice , K i orice x, y, z X : (x + y[z) = (x[z) +
(y[z)
b) pentru orice x, y X : (x[y) = (y[x) (conjugata complex)
( [ ) : XX K este semiprodus scalar n X, dac este form neunitar i
c) pentru orice x X : (x[x) 0
( [ ) : X X K este produs scalar n X, dac este semiprodus scalar i:
d) pentru orice x X, x ,= 0 (x[x) > 0
Teorem. (inegalitatea lui Cauchy - Buniakowski V. (1804-1889) - Schwarz
(1843-1921))
Dac ( [ ) : X X K este semiprodus scalar ntr-un spaiu liniar X
peste K, atunci pentru orice x, y X avem:
[(x[y)[
_
(x[x)
_
(y[y).
Exemplu. Dac X = C[a, b] atunci (f, g) =
_
b
a
f(x) g(x)dx este produs
scalar.
Inegalitatea lui Cauchy - Buniakowski - Schwarz, n acest caz, va :

_
b
a
f(x)g(x)dx

_
b
a
f
2
(x)dx

_
b
a
g
2
(x)dx
i
i
JATEK 2005/3/11 10:29 page 296 #296
i
i
i
i
i
i
296 Anexa 2
Observaie. n literatura de specialitate, produsul scalar este notat i cu
( [ ) sau < , > .
Norma folosit n deniie este norma euclidean introdus cu produsul
scalar euclidean :
|x| =

< x, x > =

_
n

i=1
x
2
i
pentru orice x R
n
.
Deniia 12. Mulimea M R
n
, M ,= se numete subspaiu liniar, dac
penru orice x, y R
n
i pentru orice a, b R : ax +by M.
Deniia 13. Mulimea M R
n
, M ,= se numete an, dac pentru
orice x, y M, i pentru orice a R avem: (1 a)x +ay M.
Deniia 14. Fie M R
n
, M ,= un subspaiu liniar. f : M R se
numete liniar, dac pentru orice x, y M i orice a, b R :
f(ax +by) = af(x) +bf(y).
Teorem. (Teorema de caracterizare a funciilor liniare n spaiul R
n
)
Fie M R
n
, M ,= , un subspaiu liniar, f : M R. Funcia f este
liniar, dac i numai dac exist un punct u R
n
astfel nct f(x) = (x, u).
Teorem. (Teorema de caracterizare a funciilor ane din spaiul R
n
)
Funcia f : R
n
R este an, dac i numai dac exist o funcie liniar
g : R
n
R i c R astfel nct f(x) = g(x) +c.
i
i
JATEK 2005/3/11 10:29 page 297 #297
i
i
i
i
i
i
Anexa 3
Pachete de programe
Prezentarea i modul de aplicare a pachetelor de programe pentru re-
zolvarea problemelor de programare matematic nu reprezint obiectul aces-
tei cri.
Pentru cei interesai, recomandm pachete de programe ce pot utilizate
cu succes i adrese de pe Internet de unde se pot accesa pachete de programe
pentru rezolvarea problemelor prezentate n carte.
Dintre pachetele de programe, Matlab (pachet de programe numerice)
i Mathematica (pachet de programare simbolic) pot folosite pentru
rezolvarea problemelor de programare matematic.
Pachetul Matlab determin soluiile problemelor cu metodele analizei
numerice.
Denumirea pachetului provine din MATrix LABoratory, i a fost dezvoltat
din pachetele de programe LINPACK i EISPACK. Varianta original a fost
scris n Fortran de Cleve Moler.
Pentru o aplicabilitate ct mai larg au fost dezvoltate instrumente de
lucru (Toolbox) care se ocup cu rezolvarea unei clase speciale de probleme.
Se folosete "Otimazation Toolbox" la rezolvarea modelelor liniare i
neliniare cu sau fr restricie.
(Problemele de optimizare liniar cu restricii se rezolv prin procedura
x=lp (f, A, b)).
Mathematica este un pachet de programe cu scop general, i anume:
poate utilizat n rezolvarea problemelor din diferite domenii ale matem-
aticii.
Iniiatorul acestui pachet este Stephen Wolfram (n 1986).
La rezolvarea problemelor de optimizare liniar se folosesc funciile Con-
strainedMax, ConstrainedMin i LinearProgramming (LinearProgramming
[c, A, b]).
n continuare, recomandm adrese de pe Internet, de unde putem obine
informaii despre problemele actuale n programarea liniar, modele-tip, cele
297
i
i
JATEK 2005/3/11 10:29 page 298 #298
i
i
i
i
i
i
298 Anexa 3
mai frecvente ntrebri, pachete de programe (gratuite, comerciale, variante
"demo" pentru pachete care pot cumprate) i altele.
Informaii utile se obin de pe site-ul Centrului de optimizare "Optimiza-
tion Technology Center of Northwestern University and Argonne National
Laboratory":
http://www-unix.mcs.anl.gov/otc/Guide/faq/linear-programming-
faq.html
Folosind adresa de mai sus, putem obine informaii despre pachetul de
programe bazate pe algoritmul simplex (GLPK - GNU Linear Programming
Kit). LP-Optimizer poate utilizat pentru probleme de programare liniar i
n numere ntregi. LP-Optimizer a fost realizat de ctre Markus Weidenauer.
Sursa Borland Pascal 7.0 i Borland Delphi 4 poate descrcat gratuit.
SoPlex este o implementare orientat obiect al algoritmului simplex primal
i dual. Sursa poate descrcat gratuit n scop necomercial.
Pot descrcate, de asemenea, pachete de programe care se bazeaz pe
metoda punctelor interioare.
Pentru programare liniar i ptratic a fost creat un soft de Csaba
Meszaros. Varianta "demo", care rezolv probleme de dimensiunea 500500,
poate descrcat.
De pe site-ul HOPDM, se poate obine programul realizat de Jacek
Gondzio, dezvoltat pentru rezolvarea problemelor de programare liniar i
ptratic.
i
i
JATEK 2005/3/11 10:29 page 299 #299
i
i
i
i
i
i
Bibliograe
[And] Andrs A., Andrs P., Szabo Zs., A Genetic Solution for the Cut-
ting Stock Problem, Proceedings of the First Online Workshop on
soft Computing, Japan, 1996, http://www.uchikawa.nuie. nagoya-
u.ac.jp/wsc 1/papers/listabst.html/GA Application.
[Baj] Bajalinov E., Balzs I., Opercikutats, Szeged, SZTE Bolyai In-
tzet, Polygon Jegyzettr, 2001.
[Bal] Balinski M.L., Tucker A.W., Duality Theory of Linear Programs: A
constructive Approach with Applications, SIAM Review, 11(1969),
no.3.
[Bea] Beale E.M.L., Cycling in the Dual Simplex Algorithm, Naval Re-
search Logistics, Quarterly, 2, (1955), no.4.
[Bla] Blaga L., Lupa L., Elemente de programare liniar, Cluj-Napoca,
Risoprint, 2003.
[Blan] Bland R.G., New Finite Pivoting Rules for the Simplex Method,
Mathematics of Operations Research, 2 (1977), pp. 103-107.
[Bre] Breckner W., Cercetare operaional, Cluj-Napoca, Universitatea
"Babe-Bolyai", 1981.
[Cha] Chankong V., Haimes Y. Y., Multiobjective Decisior: Making, New
York, North-Holland Publishing Company, 1983.
[Char] Charnes A., and Cooper W. W., Management Models and Indus-
trial Application of Linear Programming, vol. I and II, New York,
John Wiley & Sons, Inc., 1960.
[Chr] Charnes A., Optimality and Degeneracy in Linear Programming,
Econometrica, 20 (1952).
299
i
i
JATEK 2005/3/11 10:29 page 300 #300
i
i
i
i
i
i
300 Bibliograe
[Dan] Dantzig G.B., Comments on Khachians Algorithm for Linear Pro-
gramming, Technical Report SOL 79-22, Department of Operations
Research, Stanford University, Stanford, CA, 1979.
[Dan1] Dantzig G.B., Linear Programming and Extensions, Princeton,
Princeton University Press, NJ, 1963.
[Dant] Dantzig G.B., Maximization of a Linear FUnction of Variables Sub-
ject to Linear Inequalities, Chap. 21 from Activity Analysis of Pro-
duction and Allocation, Cowles Commision Monograph 13, New
York, John Wiley & Sons, Inc, 1951.
[Dany] Danyi P., Varr Z., percikutats zleti dntsek
megalapozshoz, Jannus Pannonius Tudomnyegyetem, Pcs,
1997.
[Dob] Dobkin D.P., Reiss S.P., The Complexity of Linear Programming,
Theoretical Computer Science, 11 (1980).
[Eck] Ecker J. G., and Kouada I. A., Finding Ecient Points for Lin-
eal Multiple Objective Programs, Mathematical Programming, 8
(1975), no.3.
[Ecke] Ecker J. G., Kouada A., Finding All Ecient Extreme Points for
Multiple Objective Linear Programs, Mathematical Programming,
14 (1978), no. 2.
[Fab] Fabozzi F.J., Valente J., Mathematical Programming in American
Companies, A Sample Survey, Interfaces, 7(1) (1976), november.
[Far] Frca Gh., Algebr (Cap.6), Editura Universitii "Petru Maior",
Tg.Mure, 1996.
[Fark] Farkas J., ber die Theorie der einfachen Ungleichungen, J. Reine
Angrew. Math.,124, (1902).
[Fia] Fiacco A.V., McCormick G.P., Nonlinear Programming, Sequen-
tial Unconstrained Minimazation Techniques, John Wiley and Sons,
New York, 1968. Reprint 4 (1990) SIAM Classics in Applied Math-
ematics, SIAM Publications, Philadelphia, PA, USA.
[Gas] Saul L. Gass, Linear Programming, An International Thomson
Publishing Company, 1985.
[Gass] Gass S.I., RapcskT., Singular value decomposition in AHP, Euro-
pean Journal of Operational Research, 154 (2004).
i
i
JATEK 2005/3/11 10:29 page 301 #301
i
i
i
i
i
i
Bibliograe 301
[Gasp] Gspr L., Temesi Jzsef, Matematikai Programozsi gyakorlatok,
Nemzeti Tanknyvkiad, Budapest,1989.
[Gal] Gal T., A General Method for Determining the set of All Ecient
Solutions to a Linear Vector-maximum problem, European Journal
of Operational Research, 1(1977).
[Gje] Gjerrit Meinsma, Interioar Point Methods, Systems and Control
Group Department of Applied Mathematics, The University of
Twente, 1997.
[Gom] Gomory R.E., Essentials of on Algorithm for Integer Solutions to
Linear Programs, Bulletin of the American mathematical Society,
64 (1958).
[Hil] Hillier & Lieberman, Introduction to Operation Research, 7th Ed.
Holden-Day, 1996.
[Hit] Hitchcock F.L., Distribution of a Product from Several Soures to
Numerous Localities, Jorunal of Mathematical Physics, 20 (1941).
[Ise] Isermann H., The Enumeration of the Set of All Ecient Solu-
tions for a Linear Multiple Objective Program, Operational Re-
search Quarterly, 28(1977), no.3.
[Jer] Jeroslow R.G., Kortanek K.O.,Dense Sets of Two Variable Inte-
ger Programs Requiring Arbitrarly Many Cuts by Fractional Algo-
rithms, Man.Sci.Res. Rep. 174 (1969), Carnegie-Mellon University.
[Kan] Kantorovich L.V., Mathematical Methods of Organization and
Planning Production, Publication House of the Leningrad State
University, 1939, translated in Management Science, 6 (1960),
no.42.
[Kar] Karush W., Minimia of functions of Several Variables with Inequal-
ities as Slide Conditions, M.S. Thesis, Department fo mathematics,
University of Chicago, 1939.
[Karm] Karmarker N., A new polynomial-time algorithm for linear pro-
gramming, Combinatoria 4 (1984).
[Ken] Kennigton, Je L. and Richard V. Helgason, Algorithms for Net-
work Planning, Wiley-Interscience, Somerset, N.J., 1980.
[Kha] Khachiyan L.G., A Polynomial Algorithm for Linear Programming
(Russian), Doklady Akad. Nauk SSSR, 244 (1979).
i
i
JATEK 2005/3/11 10:29 page 302 #302
i
i
i
i
i
i
302 Bibliograe
[Kle] Klee V., Minty G.J., How Good is the Simplex Method?, O. Shisha
(ed.), Inequalities III, Academic Press, New York, 1972.
[Koo] Koopmans T.C., Three Essays on the state of Economic Science,
New York, Mc Grow-Hill Book Company, 1957.
[Koop] Koopmans T.C., Optimum Utilization of the Transportation Sys-
tem, Econometrica, 17, supplement, (1949).
[Kuh] Kuhn H.W., Tucker A.W., Nonlinear Programming, Proceedings of
the Second Berkeley Symposium, Berkeley, University of California
Press, 1951, pp. 481-492.
[Led] Ledbetter W.N., Cox J.F., Are OR Techniques Being Used, Indus-
trial Engineering, pp. 19-21, February 1977.
[Len] Lenstra J.K., Rinooy Kan A.H.G., P. van Emde Boas, Am Ap-
praisal of Computational Complexity for Operations Researchers,
European Journal of Operations Research, 11 (1982).
[Lup] Lupa L., Probleme particulare de programare liniar i neliniar,
Tez de doctorat, UBB Cluj-Napoca, 1982.
[Mar] Martos Bla, Hiperbolikus programozs, MTA Mat. Kut. Kozl.
(1960), Nr. 4.
[Maru] Maruciac I., Programare matematic, Cluj-Napoca, Universitatea
"Babe-Bolyai", 1975.
[Mars] Marshall K.T., Suurballe J.W., A Note on Cycling in the Simplex
Method, Naval Research Logistics Quarterly, 16 (1969), no.1.
[Mau] Maurice W. Kirby, Operational Research in War and Peace. The
British Experience from the 1930s to 1970, Imperial College Press
(2003).
[McC] McCall E.H., A Study of Khachiyan Algorithms for Real -World
Linear Proggraming, Sparry Univac, St. Paul, MN, 1980.
[Meg] Megiddo, Pathways to the optimal set in linear programming,
Springer-Verlag, New-York (1989), Chap.8, pp.131-158, Progress
in Mathematical Programming: Interior Point and Related Meth-
ods.
[Mei] Meinsma G., Interior - Point Methods, University of Twente, 1997.
i
i
JATEK 2005/3/11 10:29 page 303 #303
i
i
i
i
i
i
Bibliograe 303
[Mor] Morse, Kimball, Methods of Operations Research, Columbia Uni-
versity Press for Oce of Naval Research, 9
th
printing 1963.
[Morr] Morris, William T., On the Art of Modeling, Management Science
13(1967).
[Nes] Nesterov Y.E., Nemirovski A.S., Interior Point Polynomial Meth-
ods in Convex Programming, Theory and Algorithms, SIAM Pub-
lications, SIAm Philadelphia, USA, 1993.
[Pap] Papadimitriou C.H., Steiglitz K., Combinatorial optimization, Al-
gorithms and Complexity, Prentice Hall, Inc., Englewood Clis,
N.J., 1982.
[Phi] Philip J., Algorithms for the Vector Maximization Problem, Math-
ematical programming 2 (1972), no. 2.
[Poc] Pocock I.W., PERT as an Analitical Aid for Program Panning -
Its Payo and Problems, Operation Research, 10 (1962).
[Pre] Prkopa Andrs Lineris Programozs I. Editura Bolyai Jnos
Matematikai Trsulat, Budapest, 1967.
[Rar] Ronald L. Rardin, Optimization in Operations Research, Prentice-
Hall Inc. 1998.
[Roo] Roos C., Terlaky T., Vial J.Ph., Theory and Algorithms for Linear
Optimization. An Interior Approach. John Wiley and Sons, Chich-
ester, UK, 1997.
[Ros] Rocule M.N., Algebr liniar, geoemtrie analitic i geometrie
diferenial, Editura Tehnic, 1987.
[Sch] Scharnitzky Viktor, Vektorgeometria s lineris algebra, Budapest,
Nemzeti Tanknyvkiad, 1985.
[Sip] Charles J. Sippl, Charles P. Sippl, Computer Dictionary, Howard
W. Sams & CO., Inc. Indianapolis, 1978.
[Sta] Stahl J., Optimumszmtas, Budapest, Aula kiad, 1991.
[Sti] Stigler G.J., The Cost of Subsistence, Journal of Farm Economics,
27 (1945).
[Sto] Stoyan G., Matlab 4. s 5. verzi, Budapest, Typotex Kiad, 1999.
[te] tefnescu A. , Cercetri operaionale, Ed. did. i ped. 1981.
i
i
JATEK 2005/3/11 10:29 page 304 #304
i
i
i
i
i
i
304 Bibliograe
[Sza] Szab Zs., Kovcs M., On Interior Point Methods and Simplex
Method in Linear Programming,Prima Conferin de Cercetri Op-
eraionale, Constana, (n curs de apariie), 2003.
[Szi] Szili L., Tth J., Matematika s Mathematica, Budapest, ELTE
Etvs Kiad, 1996.
[Tem] Temesi J., A dntselmlet alapjai, Ed. Aula, 2002.
[Thi] Paul R. Thie, An Introduction to Linear Programming and Game
Theory, Second Edition, John Wiley and Sons, 1988.
[Tur] Turban E., A Sample Survey of Operations Research Activities at
the corporate Level, Operations Research, 20(1972).
[Var] Varga J., Matematikai programozs, Egyetemi Tanknyvkiad.
1977.
[Vra] Vrnceanu Gh., Mititelu, Probleme de cercetare operaional, Ed.
Tehnic, Bucureti, 1978.
[Way] Wayne L. Winston, Operations Research, PWS - Kent Publishing
Company, 1991.
[Wei] Weist, Jerome D. and Ferdinand K. Levy, Management Guide to
PERT/CPM, 2nd ed, Prentice-Hall, Englewood Clis, N.I., 1977.
[Wil] Williams H.P., Model Building in Mathematical Programming, 2
nd
,
New-York, Ed., Wiley, 1985.
[Wol] Wolfe P., A Technique for Resolving Degeneracy in Linear Pro-
gramming, SIAM J. Appl.Math, 11(1963).
[Wri] Stephen Wright, Interior-Point Methods, Computer Sciences De-
partment, University of Wiscontis-Maditou, 2002.
[Yud] Yudin D.B., Golshtein E.G., Linear Programming, Jerusalem, Is-
rael Program for Scientic Translations Ltd., 1965.
[Zid] Zidroiu C., Programarea Liniar, Editura Tehnic, Bucureti,
1983.
[Zio] Zionts S., and Wallenius J., An Interactive Multiple Objective Lin-
ear Programming Method for a Class of Underlying Nonlinear Util-
ity Functions, Management Science, 29 (1983), no. 5.
i
i
JATEK 2005/3/11 10:29 page 305 #305
i
i
i
i
i
i
Glosar
algoritm simplex primal, 49
baz, 47
baz primal admisibil, 48
cercetare operaional, 13
convex, 29
degenerat, 25
forma canonic, 24
forma general, 23
forma standard, 24
forma standard de lucru, 36
hiperplan, 29
mijloace active, 13
model, 23
mulime poliedral, 30
mulimea, 29
nedegenerat, 25
operaie, 13
optimizare liniar, 23
parte operativ, 13
politica, 13
politop, 30
preul umbr, 26
semispaiu, 29
simplex, 31
soluie admisibil, 25
soluie de baz, 25
soluie posibil, 25
strategia, 13
strategii optime, 13
variabile articiale, 36
variabile auxiliare, 35
305

S-ar putea să vă placă și