You are on page 1of 31

MATEMATIKI FAKULTET, UNIVERZITET U BEOGRADU

OPERACIONA
ISTRAIVANJA
- vebe -

MARIJA IVANOVI
Beograd, 2013.
1. AS

Linearno programiranje - uvod

Linearno programiranje (LP) predstavlja jednu vrstu matematikog programiranja. Najee se koristi za
reavanje matematikih modela koji odgovaraju maksimizaciji profita, odnosno minimizaciju trokova, pri
odreenim uslovima.

Matematiki model treba da sadri


- Linearnu funkciju cilja
- Linearna ogranienja
- Dopustiv skup reenja

Linearni program se moe zapisati u kanonskom obliku na sledei nain:

gde su

- x vektor promenljivih (koje treba odrediti)


- b,c koeficijenti (poznati)
- A matrica (poznata)

STANDARDNA FORMA
Standardna forma je najjednostavnija oblik linearnog programiranja. Za sastoji se iz

- Linearne funkcije koju je potrebno maksimizovati:

- Ogranienja

- Ne-negativnih promenljiva

Problem se, takoe, moe zapisati matrino:

1
PRIMER 1

Marija se bavi grnarstvom i pravi olje i tanjire. Da bi se napravila olja, potrebno je 6 minuta, dok je za tanjir
potrebno 3 minuta. Pri pravljenju olje potroi se 75 gr, dok se za tanjir potroi 100 gr gline. Ukoliko ima 20 sati
na raspolaganju za izradu svih proizvoda i 250 kg gline a zarada koju ostvari iznosi 2 eura po svakoj olji i 1.5
eura po tanjiru, koliko olja i tanjira treba da napravi kako bi ostvarila maksimalnu zaradu?

REENJE :

Marija e napraviti x olja i y tanjira.

Funkcija cilja:

- zarada iznosi 2eur/olja, zarada za x olja bie (2 eur/olja)*(x olja).


- zarada iznosi 1.5eur/tanjir, odnosno zarada od svih tanjira bie (1.5 eur/ tanjir)*(y tanjira).
o Ukupna zarada iznosi:
(eur)

Ogranienje vremena:

- vreme potrebno da se napravi jedna olja iznosi 6min. Dakle, da bi napravili x olja potroie 6x
minuta.
- slino, za y olja koristie 3y minuta.
o Ukupno vreme pravljenja proizvoda iznosi 20h, pa tako:

Ogranienje materijala

- Materijal za jednu olju iznosi 75 gr => x olja = 75x gr materijala


- Materijal za jedan tanjir iznosi 100 gr => y tanjira = 100y gr materijala
o Ukupno, potroen materijal iznosi

Nenegativne promenljive

- Broj olja i tanjira je najmanje 0, (ne moe se napraviti negativan broj olja ili tanjira
!!!!)

Konano, dobijamo model:

Max

Pri ogranienjima:

*Dakle, optimalno reenje, dobijeno cplex-om:

2
PRIMER 2

Marijin deda ima 320 hektara njive i eli da posadi penicu na tom prostoru. Sadnja penice bi kotala 50 eura
po svakom zasaenom hektaru i donela bi 100 buela (27,2 kg) po aru. Jedan buel donosi zaradu od 6 eura.
Marija je svom dedi predloila da umesto penice zasadi soju, ija sadnja iznosi 100 eura po hektaru i prinos
od 100 buela po hektaru i, pri tom, jedan buel soje donosi zaradu od 9 eura. Ukoliko Marijin deda ima na
raspolaganju 20,000 eura za sadnju da li deda da ostane pri svojoj odluci i sadi samo penicu, ili da poslua
Mariju i posadi samo soju ili da posadi i jedno drugo i u kojoj razmeri? Pretpostavimo da skladite moe da
primi najvie 19,200 buela robe.

REENJE :

Marijin deda eli da posadi x hektara penice i y hektara soje.

Funkcija cilja:

- Zarada od x hektara penice iznosi 100(buel/ha)*6(eur/buel)*x ,


- dok su trokovi sadnje 50(eur/ha)*x,
o Ukupna zarada za penicu iznosi
- Zarada od y hektara soje iznosi 100(buel/ha)*9(eur/buel)*y ,
- dok su trokovi sadnje 100(eur/ha)*y,
o Ukupna zarada za soju iznosi

o Ukupan prinos iznosi:


(eur)

Ogranienje poetnog kapitala, njive i skladita:

- Deda raspolae sa 20,000 eura poetnog kapitala

- Deda raspolae sa njivom od 320 ha

- Na raspolaganju je skadite koje moe da primi najvie 19,200 buela robe

Ogranienje po pitanju koliine koja e se saditi:


- Naravno da oekujemo da je

Konano, model

Max (eur)

Pri ogranienjima:

*Optimalno reenje, dobijeno cplex-om: :

3
PRIMER 3

Marijina firma eli da investira novac i tom prilikom predloeno joj je 5 razliitih investicionih scenarija. Protok
novca (cash outflows) i trenutna vrednost akcija dati su u tabeli. Ove godine planirano je da se uloi najvie 40
mil eur, dok e se naredne godine, u iste akcije, uloiti najvie 20 mil eur. Nije obavezno da se uloi u itav
projekat, odnosno moemo kupiti samo deo neke investicije. Npr, ako u investiciju pod rednim brojem 4
uloimo samo investicije, potrebno je da ove godine platimo i , a zarada iznosi
. Na cilj je da pomognemo Mariji oko izbora investicija tako da, nakon dve godine, profit bude
maksimalan.

Napomena: Nemogue je kupiti akciju samo za II godinu. Akcije se kupuju u paketu za I i II godinu. Moe se
uloiti u vie razliitih investicija ili se vie puta kupiti ista investicija.

Investicija 1 Investicija 2 Investicija 3 Investicija 4 Investicija 5


I godina 11 53 5 5 29
II godina 3 6 5 1 34
Totalni profit 13 16 16 14 39
REENJE
Moemo uloiti novac u 5 razliitih investicija. Mogue je investirati u itavu investiciju ili samo njen deo.
- Neka predstavlja koliko investiramo u investiciju i. U datom primeru je .
- Hajde da u prvu investiciju uloimo ime, na kraju, profit od te investicije iznosi , u drugu
to nam donosi profit od i tako redom. Na zadatak je da odredimo nepoznate koje e
nam omoguiti da bude maksimalno.
- Naravno, postoje ogranienja za obzirom da na raspolaganju imamo odreenu svotu novca. Pa
tako, u prvoj godini, kupovina dela prve investicije kota 11 , kupovina druge investicije kota
, tree , itd. Ukupno, moemo platiti najvie 40 mil, to znai da
ne sme biti vee od 40 mil. Na isti nain, naredne godine ugovorene investicije kotae
to ne sme biti vee od 20mil (iznos kojim raspolaemo tokom druge
godine).
Moemo da formiramo LP problem.
Funkcija cilja je
(1)
gde je
Ogranienja:
(2)
(3)

Zato a ne = u drugoj i treoj nejednakosti? Zato to moemo uloiti manje novca od onog koji nam je
na raspolaganju i opet ostvariti maksimalnu zaradu. Bitno je da ne uloimo vie nego to imamo.
Ostaju ogranienja u vezi nepoznatih.
Jasno je da , tj. ne moemo kupiti deo investicije. Da li se moe investirati u istu investiciju
dva puta? Na primer, da li mogu investirati u investiciju 3 ili 4 dva ili vie puta? Ukoliko moe, onda je
dozvoljeno , odnosno ako se moe investirati u deo investicije, a najvie u celu, tada imamo ogranienje
.
Dakle, ogranienje moe biti ili ili .
*Optimalna vrednost: 118. Reenje x3 , x4 , ostali xi su jednaki nuli.

4
PRIMER 4

Pretpostavimo da se otvara nova Pota u komiluku i da zapoljava radnike. Broj radnika, potrebnih dnevno,
dat je tabelom. Pored stalno zaposlenih, pota moe da zaposli radnike i po ugovoru o delu. Stalno zaposleni
radnik radi 5 vezanih dana i posle toga ima pauzu od 2 dana. Svaki radni dan stalno zaposlenog radnika plaa
se 80 eura, dok se svaki radni dan vikendom plaa 100 eura. Zaposleni po ugovoru o delu dobijaju 95 eur bez
obzira da li rade radnim danom ili vikendom.
A) Napraviti LP model koji e direktoru pote omoguiti da minimizuje platu za svoje zaposlene a ipak
ispuni zahteve o broju zaposlenih.
B) Pretpostavimo da je najmanje 60% stalno zaposlenih slobodno petkom.

Dan Ponedeljak Utorak Sreda etvrtak Petak Subota Nedelja


Br.radnika 17 13 15 18 14 16 11

REENJE:

Obeleimo sa
- x1 broj stalno zaposlenih koji rade od ponedeljka do petka i imaju slobodan vikend
- x2 broj stalno zaposlenih koji rade od utorka do subote i imaju slobodnu nedelju i ponedeljak
- x3 broj stalno zaposlenih koji rade od srede do nedelje i imaju slobodan ponedeljak i utorak
- x4 broj stalno zaposlenih koji rade od etvrtka do ponedeljka, imaju slobodan utorak i sredu
- x5 broj stalno zaposlenih koji rade od petka do utorka, imaju slobodnu sredu i etvrtak
- x6 broj stalno zaposlenih koji rade od subote do srede, imaju slobodan etvrtak i petak
- x7 broj stalno zaposlenih koji rade od nedelje do etvrtka i imaju slobodan petak i subotu.
- y1 broj part-time zaposlenih koji e pomagati u ponedeljak
- y2 broj part-time zaposlenih koji e pomagati u utorak
- y3 broj part-time zaposlenih koji e pomagati u sredu,
- ..,
- y7 broj part-time zaposlenih koji e pomagati u nedelju
Ponedeljkom pota potrauje 17 radnika, dakle:
(1)
Utorkom, postoji potreba za 13 radnika: (2)
Sredom : (3)
etvrtkom (4)
Petkom: (5)
Subotom: (6)
Nedeljom: (7)
Jednaine (1)-(7) predstavljaju ogranienja.
Dodaemo i ogranienje ,
Ostaje funkcija cilja (cost function):
Kolika je plata zaposlenih iz grupe koja radi ponedeljak-petak?
Radni dan iznosi 80 eura, dakle ukupna zarada je 80*5=400 eura.
Kolika je plata zaposlenih iz grupe koja radi utorak-subota?
Oni imaju jedan vikend koji se plaa 100 eura, stoga ukupna zarada iznosi 80*4+100=420 eura
Zaposleni iz grupe sreda-nedelja: 3 radna dana + 2 vikenda : 80*3+100*2 = 440 eura

5
Istu platu imaju i zaposleni iz grupa
etvrtak ponedeljak, petak utorak, subota sreda
Grupa zaposlenih nedelja - etvrtak takoe prima platu od 420 eura.
Dakle, potu stalno zaposleni kotaju

Part-time zaposleni imaju fiksnu naknadu, u iznosu od 100 eura po danu. Ova vrsta zaposlenih, potu kota

Konano, LP problem:

Pri uslovima:
(1)
(2)
(3)
(4)
(5)
(6)
(7)
Ogranienja
,
Deo pod B:
Ukupan broj stalno zaposlenih je
Ukupan broj zaposlenih kojima je petak slobodan je
Uslov je da najmanje 60% zaposlenih treba da je slobodno petkom. To znai da je
(8)

REENJE SA ASA:
Min
Pri uslovima:
(1)
(2)
(3)
(4)
(5)
(6)
(7)
Ogranienja
, i=1,..,7

6
PRIMER 5

Naftna kompanija se bavi distribucijom 3 razliita tipa nafte (naf1, naf2 i naf3). Sva tri tipa nafte se prave
pomou tri razliita tipa sirove nafte (sn1, sn2, sn3). Cena nafte i cena sirove nafte po 1 barelu (1barel
=119,2l), dati su tabelom.

SIROVA
NAFTA 1 barel 1 barel
NAFTA
Naf1 70 Sn1 45
Naf2 60 Sn2 35
Naf3 50 Sn3 25

Naftna kompanija moe da dopremi najvie po 5,000 barela od svake vrste sirove nafte dnevno. Tipovi nafte
koja se proizvodi se meusobno razlikuju po nivou oktana i sumpora. Sirova nafta koja se koristi u proizvodnji
naf1 mora da ima najmanje nivo oktana 10 a najvie 1% sumpora. Nafta tipa naf2 sadri nivo oktana od
najmanje 8 a najvie 2% sumpora. Nafta tipa naf3 treba da sadri najmanje oktana nivoa 6 i najvie 1%
sumpora. Nivo oktana i sumpora su dati u tabeli 2.

SIROVA NIVO NIVO


NAFTA OKTANA SUMPORA
sn1 12 0,5
sn2 6 2
sn3 8 3

Proizvodnja po jednom barelu sirove nafte kota 4 eur i kompanija ima kapacitete da dnevno moe proizvesti
najvie 14,000 barela nafte. Obaveza kompanije je da svojim kupcima dnevno obezbedi najmanje 3 000, 2
000 i 3 000 barela nafte (naf1, naf2 i naf3, tim redom) dnevno.
Napraviti model tako da kompanija maksimizuje svoj profit.

Ukoliko kompanija angauje marketinku kompaniju, oekuje se da e se za svaki uloen evro na reklamiranje
odreenog tipa nafte, poveati potreba za 10 barela.

REENJE

Neka je xij koliina sirove nafte j koriene u proizvodnji nafte i, odnosno


- koliina sirove nafte 1 koriene u proizvodnji nafte 1,
- koliina sirove nafte 2 koriene u proizvodnji nafte 1
- koliina sirove nafte 3 koriene u proizvodnji nafte1.
ime dobijamo ukupnu koliinu gasa 1: . Slino piemo i za ostale tipove gasa.
Naftna kompanija moe da dopremi najvie po 5000 barela od svake vrste sirove nafte dnevno.:
( koliina sirove nafte tipa 1 koriene u proizvodnji gasa 1, 2 i 3)
( koliina sirove nafte tipa 2 koriene u proizvodnji gasa 1, 2 i 3)
( koliina sirove nafte tipa 3 koriene u proizvodnji gasa 1, 2 i 3)
Sirova nafta koja se koristi u proizvodnji naf1 mora da ima najmanje nivo oktana 10 a najvie 1% sumpora:

Nafta tipa naf2 sadri nivo oktana od najmanje 8 a najvie 2% sumpora.

7
Nafta tipa naf3 treba da sadri najmanje oktan nivoa 6 i najvie 1% sumpora.

kompanija ima kapacitete da dnevno moe proizvesti najvie 14,000 barela nafte za prodaju

Obaveza kompanije je da svojim kupcima dnevno obezbedi najmanje 3 000, 2 000 i 3 000 barela nafte (naf1,
naf2 i naf3, tim redom) dnevno

Ogranienja su, kao i do sada,


, .

Ostalo je da se odredi funkcija cilja:


Dakle, kupujemo sirovu naftu, po ceni datoj u tabeli, transformiemo je po ceni od 4 eura po barelu i prodamo
po ceni iz tabele:

Koliina nafta tipa1 koju emo proizvesti iznosi: . Prilikom prodaje, za gas tipa1
zaradiemo 70( eur . Da bi nabavili potrebne sastojke za proizvodnju potrebno je uloiti
eur. Trokovi obrade iznose 4* . Dakle, gas tipa 1 donosi zaradu od
Suma1 =
Ponavljamo postupak za gas tipa 2 i gas tipa 3:
Suma2=
Suma3= .
Funkcija cilja:
Max Suma1 + Suma2 + Suma3

Konano, LP problem (sreen):


Max
Pri ogranienjima
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
(13)
Nenegativne promenljive
, i,j=1,..,3.

Cplex reenje:
Objective value 185 500
x11= 2000 x12= 1000 x13=0 x21= 1000 x22= 2000 x23=1500 x31 = 2000 x32= 1000 x33=0

8
ZADACI ZA SAMOSTALNI RAD:

ZADATAK 1

Marijin komija preprodaje raunare i raunarsku opremu. Oekuje isporuku raunara i tampaa. Pri tom,
rauunari su spakovani tako da njihova kutija zauzima 360 kubnih decimetara prostora, dok se tampai
pakuju u kutijama koje zauzimaju 240 kubnih decimetara prostora. Komija se trudi da meseno proda
najmanje 30 raunara i da taj broj bude bar za 50% vei od broj prodatih tampaa. Raunari kotaju 200eur
po nabavnoj ceni i prodaju se po ceni od 400eur, dok tampai kotaju u nabavci 60eur i prodaju se za 140eur.
Magacin kojim komija raspolae ima svega 30,000 kubnih decimetara prostora i meseno moe da nabavi
robu u iznosu od najvie 14,000 eur. Koliko raunara a koliko tampaa komija treba da proda kako bi se
maksimalno obogatio?

ZADATAK 2

Marijin brat radi u fabrici za proizvodnju X i Y proizvoda pomou dve maine (A i B). Za izradu proizvoda X
potrebno je 50 min obrade na maini A i 30 min obrade na maini B. Proizvod Y se 24 min obrauje na maini
A i 33 minuta na maini B. Na poetku ove nedelje napravljeno je 30 proizvoda X I 90 proizvoda Y. Maina A je
na raspolaganju samo 40 sati dok je maina B na raspolaganju tek 35 sati. Direktor oekuje da se do kraja
nedelje napravi najmanje 75 X i 95 Y. Politika firme je da broj proizvoda bude maksimalan. Formulisati problem
odluivanja koliko od svakog proizvoda treba napraviti u tekuoj nedelji kao linearni problem.

9
2. AS

Sistemi linearnih jednaina

Kao to smo primetili, problem linearnog programiranja se, za poetak, svodi na formiranje sistema linearnih
jednaina koje treba reiti. Pod reavanjem sistema podrazumevamo nalaenje skupa svih reenja. Slede
metode za reavanje sistema.

Furije Mockinova metoda eliminacije

Ideja metode je eliminacija nepoznatih. Proizvoljno izaberemo promenljivu koju elimo da eliminiemo.
Odvojimo jednaine u kojima je koeficijent uz nau promenljivu , i (objasniti na asu)

PRIMER 6

Metodom eliminacije odrediti skup reenja problema:

Pri ogranienjima

REENJE

Hajde da funkciju cilja uvrstimo u ogranienja. Time dobijamo da je . Zato je ovde nejednakost?
Zato to se trai maksimu funkcije f, ne moemo imati vie od .
Eliminisaemo x iz sistema:

Odnosno (I+II, I+III, II+VI, III+VI):

10
Dakle, dobijamo da je a, kako je sledi da je Sa druge strane imamo da je
I iji presek iznosi . Dalje, dobijamo novi sistem

.
Hajde sada da eliminiemo y:

Kako je , sledi da je to i optimalna vrednost naeg problema.

PRIMER 7

Metodom eliminacije odrediti skup reenja problema:

Pri ogranienjima

REENJE

Posmatramo odgovarajui sistem, i reavamo po y:

Nema potrebe da piemo kada ve imamo ogranienje .


Posmatramo nejednakosti I i IV, II i IV, III i IV:

Dobili smo ogranienja za . Ostaje nam da ogradimo :

11
PRIMER 8

Primeniti metodom eliminacije kako bi se odredio skup reenja sistema:

REENJE

Reavamo problem u odnosu na promenljivu :

Uporedimo nejednaine (I i II, II i III, II i IV, II i VI):

Konano, dobijamo:

iz poslednje nejednaine sledi da je najmanje .

12
PRIMER 9

Primeniti metodom eliminacije kako bi se odredio skup reenja sistema:

REENJE

Reavamo problem u odnosu na promenljivu :

Dalje, reavamo u odnosu na promenljivu

Sledi dalje,
odnosno,

odnosno,

odnosno

odnosno

PRIMER 10

Primeniti metodu eliminacije na primer br 4.

13
Teorija alternative
PRIMER 11

PRIMER 12

PRIMER 13

14
Reavanje LP problema grafikom metodom

Linearni problem se moe reiti grafikim putem.

PRIMER 14

max 3x1 7x 2
2x1 5x 2 10
7x1 2x 2 14
x1 , x 2 0

REENJE:

Nacrtamo grafike ogranienja i osenimo prostor na kome je funkcija definisana a zatim nacrtamo i samu
funkciju (slika nie).

Optimalno reenje se dostie u taki .

15
PRIMER 15

Sledee LP probleme reiti grafikom metodom

min x1 x 2
min 3x1 2x 2
x1 2x 2 6
a) 2x1 x 2 1 b) 2x1 x 2 1
x1 x 2 0
x1 x 2 3
x2 0
x1 0

Reiti i zadatke 1 i 2 grafikom metodom.

16
Dualnost u linearnom programiranju

Posmatramo problem linearnog programiranja u simetrinom obliku:

(1)
A je matrica dimenzije sa kolonama i neka je .
Problem (1) se naziva PRIMALNI PROBLEM i njemu odgovara DUALNI PROBLEM oblika:

(1)
Dualni problem moemo da transformiemo uvoenjem izjednaavajuih promenljivih:

(1)
Teorema (Slaba dualnost):
Za bilo koje dopustive take I problema (P) odnosno problema (D) vai:

Teorema (Jaka dualnost):


Ako jedan od problema (P) i (D) ima optimalno reenje onda i drugi ima optimalno reenje. Pri tom, za njihova
optimalna reenja vai:

PRIMER 16

Primarni problem
min x1 x 2
(P) x1 x 2 x 3 1
x1 x 2 x4 1
xi 0
REENJE:
Dualni problem (D)
b 1 1
T
max y1 y2
c [1 1]
T
1 1 y1 y2 z1 1
1 1
1 1 1 0 y1 y2 z2 1
A A
T
1 1 0 1 1 0 y1 z3 0

1 0 1 y2 z4 0
b
1 1 z 0
c
1

17
PRIMER 17

Primarni problem Dualni problem

max 3y1 10y2


min 10x1 5x 2 4x 3
3y1 4y2 10
3x1 2x 2 3x 3 3
(P) (D) 2y1 5
4x1 2x 3 10
3y1 2y2 4
xi 0
yi 0

PRIMER 18

Primarni problem Dualni problem

min 3y1 9y2 7y3


max 12x1 2x 2 x 4
4y1 8y2 3y3 0
4x1 7x 2 4x 3 2x 4 3
7y1 2y2 5y3 12
(P) 8x1 2x 2 x 3 3x 4 9 (D)
4y1 y2 2y3 2
3x1 5x 2 2x 3 x 4 7
2y1 3y2 y3 1
xi 0
yi 0
PRIMER 19

Reiti sledee LP probleme

max x 2 x 3
min x1 x 2 x 3
x1 x 2 x 3 x 4 2
x1 x 2 x 3 x 4 4
a) b) x1 5
x1 3x 2 x 3 x 4 2
x1 3x 2 x 3 x 4 2
x2 , x3 0
x1 , x 2 , x 3 , x 4 0

PRIMER 20

a) Nai dualne probleme problemima iz zadataka 14 kao i duale njihovih duala.


b) Nai dual za primer br 3 a zatim ga reiti nekom metodom.

18
3. AS

Simpleks metoda

Prvi je predloio Dantzig 1947.god.


Ideja simplex metode za reavanje problema linearnog programiranja je u pretraivanju moguih reenja.
Polazi se od jednog takvog reenja i formira se niz sve boljih bazisno moguih reenja.
Simplex metoda ima vie verzija, prvo emo koristiti tablini zapis simplex metode.

Reavamo problem:

uz pretpostavku da je , tj sistem je saglasan i ne sadri suvine jednaine.

Algoritam simplex metode

Korak0: Formirati simplex tablicu za zadati problem (LP tablicu).


Korak1: Postaviti broja na nulu (k=0)
Proveriti da li je c j 0 za svako j, ako jeste prei na Korak6.
k

Ako je za svako j c j 0 proveriti da li je i aij 0 .


k k
Korak2:
Ako jeste prei na Korak7.
Korak3: Nai r 1,..., n za koje je cr k 0 . (r- pivotni, s-stoerni element) Najee se uzima
cr k min{cak |a 1,.., n }, x (x1,..., xn )
Nai s 1,..., m takvo da je
bsk bi k
k |air i prei na Korak4
k
k
min
asr air
Korak4: Elementarnim transformacijama napraviti (k+1)-vu simplex tablicu, odnosno podeliti s-tu vrstu sa
asr k ( asr k 1 =1) a ostalim vrstama dodati s-tu vrstu pomnoenu odgovarajuim koeficijentima
tako da se dobije da je air k 1 0, i s, cr k 1 0 . Prei na Korak5.
Korak5: Zameniti k sa k+1 i prei na Korak1.
Korak6: Bazino reenje koje odgovara k-toj tablici je optimalno.
Vrednost funkcije je z 0k . STOP
Korak7: Funkcije cilja je neograniena odozdo. STOP.

19
LP tablica je dimenzije
z C1 c2 cn
b1 A11 a12 a1n
b2 A21 a22 a2n

bm am1 am2 amn

: postoji m linearno nezavisnih kolona matrice. Svaki skup m linearno nezavisnih kolona se
naziva bazom matrice A.
Matrica A se sastoji iz n kolona K i , A K1 K 2 ... K n .


Neka su AB K j1 ,..., K jm kolone koje ine bazu matrice, skup B j ,., j predstavlja indekse kolona
1 m

koje ine bazu.


Promenljive se nazivaju bazinim promenljivim a ostale nebazinim u odnosu na bazu B.
Bazino reenje se dobija kada se nebazine promenljive izjednae sa nulom i sistem Ax=b rei po
bazinim promenljivim.
Polazni sistem moemo da zapiemo na sledei nain:
AB xB AN xN b
gde su sa x B oznaene bazine promenljive, a sa x N nebazine promenljive.
Pomnoimo celu formulu sa AB 1 , dobiemo da je
xB AB 1AN xN AB 1b
Ako izjednaimo nebazine promenljive sa nulom, polazni problem se svodi na problem
xB * AB 1b, xN * 0 .

PRIMER 21
min f (x ), f (x ) x1 2x 2
- x1 x 2 1
x1 x 2 3
x1 , x 2 0
Reenje:

Prvo uvodimo izjednaavajue promenljive i svodimo problem na kanonski oblik:


min f (x ), f (x ) x1 2x 2
- x1 x 2 x 3 1
x1 x 2 x 4 3
x1 , x 2 , x 3 , x 4 0
Odgovarajua LP tablica je
0 -1 -2 0 0
1 -1 1 1 0
3 1 1 0 1

20
Iz uslova r2 2 0 sledi da druga kolona moe da ue u bazu.. Imamo da je 1/1<3/1 pa sledi da bazu
naputa 4.kolona. Pivotiramo oko elemenata a12 1 dobijamo novu simplex tablicu:
2 -3 0 2 0
1 -1 1 1 0
2 2 0 -1 1

Kako je dalje r1 3 0 , pivotiranje oko a21 2 dobijamo:


5 0 0 1/2 3/2
2 0 1 1/2 1/2
1 1 0 -1/2 1/2

Optimalno reenje je (1,2,0,0) a optimalna vrednost -5.

PRIMER 22
max z , z x1 x 2 x 3 3x 4 x 5 x 6 3x 7
3 x 3 2x 4 x 5 x 6 6
x 2 2x 3 x 4 10
x1 x6 0
x3 x6 x7 6
xi 0, i 1,..., 7
Reenje:

Traimo minimum funkcije w z x1 x2 x3 3x 4 x5 x6 3x7 pri datim ogranienjima.


Formiramo LP tablicu

0 -1 1 -1 3 -1 1 3
6 0 0 3 2 1 1 6
10 0 1 2 -1 0 0 0
0 1 0 0 0 0 -1 0
6 0 0 1 0 0 1 1

elimo da eliminiemo negativne vrednosti u nultom redu tablice.


Primetimo da tablica ima bazne kolone (I, II, IV i VII). Prvu vrstu pomnoimo sa 1 i dodamo je nultoj vrsti
(dobijamo c50 0 ). Isti postupak ponovimo sa treom vrstom (dobiemo da je c10 0 ). Drugu vrstu

pomnoimo sa -1 i dodamo nultoj vrsti (rezultat je c20 0 ), dok etvrtu vrstu mnoimo sa -3 ( c70 0 ). Kao
rezultat dobijamo novu tablicu:
-22 0 0 -3 6 0 -2 0
6 0 0 3 2 1 1 6
10 0 1 2 -1 0 0 0
0 1 0 0 0 0 -1 0
6 0 0 1 0 0 1 1

21
Bazino reenje koje odgovara ovoj tablici je (0,10,0,0,6,0,6). Ovo reenje nije optimalno (imamo negativnih
vrednosti u nultoj vrsti). Primenjujemo korak4 iz algoritma za s = 1 i r = 3 i dobijamo drugu simplex tablicu.
-16 0 0 0 8 1 -1 0
2 0 0 1 2/3 1/3 1/3 0
6 0 1 0 -7/2 -2/3 -2/3 0
0 1 0 0 0 0 -1 0
4 0 0 0 -2/3 -1/3 2/3 1

Bazino reenje koje odgovara ovoj tablici je (0,6,2,0,0,0,4) . Reenje nije optimalno, primenom koraka 4 za s
= 4, r = 6 dobijamo treu simplex tablicu
-10 0 0 0 7 1/2 0 3/2
0 0 0 1 1 1/2 0 -1/2
10 0 1 0 -3 -1 0 1
6 1 0 0 -1 -1/2 0 3/2
6 0 0 0 -1 -1/2 1 3/2

Bazino reenje koje odgovara ovoj tablici je (6,10,0,0,6,0). Ovo reenje je optimalno, optimalna vrednost
funkcije w je 10.
Sledi da maksimalna vrednost funkcije z je -10.

PRIMER 23
Fabrika proizvodi 3 vrste paketa: A, B i C. Model A zahteva 8 obrade, 5 lakiranja i 6 suenja. Model B
zahteva 6 obrade, 4 lakiranja i 2 suenja. Model C zahteva 5 obrade, 2 lakiranja i 4 suenja. Stolar ima
na raspolaganju ukupno 96 za obradu, 44 za lakiranje i 58 za suenje. Zarada po jedinici modela A, B i C je
380eur, 260eur i 220 eur.
Kojom e se kombinacijom proizvodnje postii maksimalna dobit?
Formirati matematiki model i reiti problem.

Reenje:
Matematiki model za dati problem je sledeeg oblika:
max 380x1 260x 2 220x 3
p.o. 8x1 6x 2 5x 3 96
5x1 4x 2 2x 3 44
6x1 2x 2 4x 3 58
Odgovarajua LP tablica je:
-380 -260 -220 0 0 0
96 8 6 5 1 0 0
44 5 4 2 0 1 0
58 6 2 4 0 0 1
Biramo c10 b 96
380 0 , dalje dobijamo s min , 44 58 .
, 8.8 (s 2)
ars 8 5 6
Uzimamo da je pivot a21 i elementarnim transformacijama anuliramo sve vrednosti u prvoj koloni.
Nova tablica, k=1:

22
3344 0 44 -68 0 76 0
25.6 0 -0.4 1.8 1 -0.2 0
8.8 1 0.8 0.4 0 0.2 0
5.2 0 -2.8 1.6 0 -1.2 1

bs 25.6 8.8 5.2


Imamo da je c 31 68 0 , min , , 3.25 (s 3) , pivot je a33
ars 1.8 0.4 1.6
k=2
3565 0 -75 0 0 25 42.5
19.75 0 2.75 0 1 1.15 -1.125
7.5 1 1.5 0 0 -0.06 -0.25
3.25 0 -1.75 1 0 -0.75 0.625
k=3
3940 50 0 0 0 22 30
6 -1.8333 0 0 1 1.26 -0.6667
5 0.6667 1 0 0 -0.04 -0.1667
12 1.1667 0 1 0 -0.82 0.3333

Dakle, reenje problema je (A,B,C)=(0,5,12), oekivana zarada iznosi 3940eur.

PRIMER 24
Reiti sledei problem simpleks metodom:
max 2x1 3x 2
p.o. 4x1 5x 2 16
-2x1 3x 2 3
x1, x 2 0
Hint: Uvesti izjednaavajue promenljive. Optimalno reenje je (3/2,2) a vrednost funkcije iznosi 9.

PRIMER 25
Reiti sledei problem simpleks metodom:
max 3x1 2x 2
p.o. x1 x 2 3
- x1 2x 2 8
x1 4
x1 2x 2 12
x1, x 2 0
Optimalno reenje je (4,4) a vrednost funkcije iznosi 20.

PRIMER 26
Reiti sledei problem simpleks metodom:
max 2x1 x 2 x 3
p.o. 2x1 x 2 x 3 20
6x1 3x 2 2x 3 50
2x1 x 2 2x 3 12
x1, x 2 , x 3 0

23
Optimalno reenje je (5,0,3) a vrednost funkcije iznosi 20.

PRIMER 27
Reiti primer 4 i primer 5 simplex metodom.

Dualna simplex metoda


Dat je problem linearnog programiranja:
min c T x
Ax b
x 0
Kome odgovara LP tablica
-Z0 c1 c2 cn
b1 a11 a12 a1n
b2 a21 a22 a2n


bm Am1 am2 amn

Tablicu nazivamo dualnom simplex tablicom ako ona meu kolonama 1,,n sadri m razliitih bazinih
kolona i vai . Ukoliko je ispunjeno c1 0,..., cn 0 i b1 0,..., bn 0 onda je dualana simplex tablica
istovremeno i simplex tablica pa ja odgovarajue dopustivo reenje takoe optimalno.

Algoritam dualne simplex metode

Korak0: Staviti da je k=0. K-ta iteracija se dobija na sledei nain.


Korak1: Ispitati da li je bi k 0, i 1,..., m . Ako jeste prei na korak6.
Korak2: Za svako i za koje je b j 0 ispitati da li je aij 0 za sve j = 1,n.
k

k
Ako takvo b j postoji prei na korak 7.

Korak3: Odrediti s 1,..., m za koje je bsk 0 . Nai r 1,..., n takvo da je


cr k c jk


k
max k | asj k 0
asr a
sj

Korak4: Dobiti (k+1)-vu dualnu simplex tablicu sledeim elem. transformacijama k-te dualne simplex tablice:
Podeliti s-tu vrstu sa asr k . Ostalim vrstama, ukljuuji i prvu, dodati s-tu vrstu pomnoenu
odgovarajuim koeficijentima tako da se dobije air k 1 0 za i s i cr k 1 0 .
Korak5: Zameniti k sa k+1 i prei na korak1.
Korak6: Dobijena dualna simplex tablica je ujedno i simplex tablica.
Bazino reenje koje joj odgovara je optimalno, vrednost funkcije cilja je z 0k . STOP.
Korak7: Skup dopustivih reenja posmatranog problema je prazan. STOP.

24
PRIMER 28
min f x , f x 9x1 x 2 x 3
3x1 x 2 2x 3 1
4x1 2x 2 x 3 5
p.o.

xi 0 i 1, 2, 3
Reenje:
Uvodimo izjednaavajue promenljive i svodimo problem na kanonski oblik.
Dobijamo problem:
min z , z 9x1 x 2 x 3
3x1 x2 2x 3 x 4 1
4x1 2x 2 x3 x5 5
p.o.

xi 0 i 1,..., 6
Novom problemu odgovara dualna simplex tablica
0 9 1 1 0 0
1 -3 1 -2 1 0
-5 -4 -2 1 0 1

Primenimo algoritam za dualni simplex:


-5/2 7 0 3/2 0 1/2
-3/2 -5 0 -3/2 1 1/2
5/2 2 1 -1/2 0 -1/2

Dobijena tablica nije simplex tablica. Nastavljamo sa primenom algoritma:


-4 2 0 0 1 0
1 10/3 0 1 -2/3 -1/3
3 11/3 1 0 -1/3 -2/3

Dobijena tablica jeste simplex tablica. Bazino dopustivo reenje koje joj odgovara je (0,3,1,0,0) a optimalna
vrednost funkcije z je 4.

PRIMER 29
Retiti dualnom simplex metodom
min x1 x 2 x 3
x1 x 2 4x 3 1
x1 x 2 2x 3 3
x1 3x 2 x 3 0
xi 0

25
PRIMER 30
Dva tipa proizvoda, A i B, mogu se izraivati na dva tipa maina, P i Q. Maina P moe da proizvede 4 jedinice
proizvoda A i 3 jedinice proizvoda B na sat. Maina Q moe da proizvede 1 jedinicu proizvoda A i 4 jedinice
proizvoda B na sat. Trokovi eksploatacije maine P su 17, a maine Q 14 novanih jedinica na sat.
Preduzeu je neophodno najmanje 7 jedinica proizvoda A i 15 jedinica proizvoda B. Koliko sati rada svake
maine je neophodno da bi zahtevi preduzea bili zadovoljeni i da bi trokovi eksploatacije bili minimalni?

Reenje:
Promenljive x1 i x2 predstavljaju brojeve sati rada maina P i Q respektivno.
Matematiki model problema:
f x1, x 2 17x1 14x 2
Min 4x1 x 2 7
3x1 4x 2 15
x1 0, x 2 0

PRIMER 31
Proizvodno preduzee raspolae sa 3 vrste sirovina: od prve ima 120, od druge 80 i od tree 240 jedinica.
Sirovine se koriste za izradu 5 vrsta proizvoda. Pri izradi jedinice prvog proizvoda potroe se jedna jedinica
prve, dve jedinice druge i etiri jedinice tree sirovine. Pri izradi jedinice drugog proizvoda potroe se pet
jedinica druge i jedna jedinica tree sirovine. Pri izradi jedinice treeg proizvoda potroe se etiri jedinice prve,
dve jedinice druge i pet jedinica tree sirovine. Pri izradi jedinice etvrtog proizvoda potroe se dve jedinice
prve i jedna jedinica druge sirovine. Pri izradi jedinice petog proizvoda potroe se etiri jedinice prve i etiri
jedinice tree sirovine. Jedinicu prvog proizvoda preduzee prodaje po 20, drugog po 10, treeg po 40,
etvrtog po 20 i petog po 15 novanih jedinica. Kako preduzee treba planirati proizvodnju da bi od prodaje
imalo najvei prihod?

26
Dvofazna modifikacija simplex metode

Dat je problem linearnog programiranja:


min c T x
Ax b (1)
x 0
Ako je poznata jedna dopustiva baza, problem se svodi na kanonski oblik i odgovara simpleks metodi koju smo
ranije radili. Cilj ovog postupka je da pomou simplex metode reimo problem koji nema poznatu bazu.

Pretpostavimo da je b 0 (ako nije pomnoimo sve jednaine sa -1). Uoavamo pomoni problem linearnog
programiranja:
min e T w
Ax w b (2)
x 0, w 0
gde je e 1, ,1 R , w R m (w je vektor vetakih promenljivih).
m

Skup dopustivih reenja problema (2) je neprazan, i funkcija cilja je ograniena nulom odozdo.

Algoritam modifikacije dvofazne simplex metode

I Faza

Za problem (1) formiramo problem (2) kome se pridruuje LP tablica.


LP-tablica se svodi na simplex tablicu eleminacijom nula iz nulte vrste a zatim se prelazi na algoritam za
reavanje simplex metode.
Kako je funkcija cilja ograniena odozdo razlikujemo dva sluaja:
1. Optimalna vrednost je vea od nule. Tada problem (1) nema dopustivih reenja i postupak se zavrava.
2. Optimalna vrednost je jednaka nuli (sledi da su u optimalnom bazinom dopustivom reenju sve vetake
promenljive jednake nuli). Prelazi se na II fazu.

II Faza

Korak1:
Iz poslednje simplex tablice dobijene u I fazi uklanjaju se sve vetake promenljive, a nulta vrsta se zamenjuje
vrstom [0|c1 cn 0 0] koja ima n+k+1 element, pri emu je k broj bazinih promenljivih. Dobijena LP tablica
se svodi na simplex tablicu eliminacijom onih c j 0 koji odgovaraju bazinim promenljivim.

Korak2:
Ukoliko je k=0 ii na korak3.
U suprotnom u simplex tablici postoje bazine kolone koje odgovaraju vetakim promenljivim. Uoimo jednu
od njih, koja npr. odgovara vetakoj promenljivoj ws . Neka ta kolona sadri jedinicu u vrsti v. Razlikujemo
dva sluaja:

27
1. Svi elementi vrste v osim bazine su jednaki nuli. Tada se vrsta v i kolona koja odgovara
promenljivoj ws izostavljaju iz simpex tablice
2. Neka je osim bazine jedinice na primer r-ti element vrste v razliit od nule. Tada je i r 0 jer
je ws na nivou nula, i tada r-ta kolona odgovara vetakoj promenljivoj jer su izostavljene sve
kolone koje odgovaraju nebazinim promenljivim. Pomou stoerne transformacije, sa
stoernim elementom u preseku vrste v i kolone r , uiniti r-tu kolonu bazinom. Zatim, izostaviti
kolonu koja odgovara promenljivoj ws jer se radi o nebazinoj koloni koja odgovara vetakoj
promenljivoj. Zameniti k sa k+1 I prei na korak 2.

Korak3:
Dobijena simplex tablica sadri samo kolone koje odgovaraju promenljivim iz problema (1). Primeniti algoritam
za simplex kanonsku metodu.

PRIMER 32
min f x , f x 2x1 3x 3 x 4
x 2 x 3 x 4 3
2x1 2x 3 4x 4 12
p.o.
x1 x2 2x 3 x 4 3
xi 0 i 1, 2, 3, 4
Reenje:
Problem nije u kanonskom obliku, zato primenjujemo fazu I:
reavamo pomoni (pridrueni) problem, min w

min w x , w x x5 x6 x7
x 2 x 3 x 4 x5 3
2x1 2x 3 4x 4 +x 6 12
p.o.
x1 x2 2x 3 x4 +x 7 3
xi 0 i 1,..., 7
Problemu min w odgovara LP tablica:
Z C1 c2 cn
0 0 0 0 0 1 1 1
b1 3 0 -1 -1 1 1 0 0
b2 12 2 0 2 4 0 1 0
b3 3 1 1 2 1 0 0 1

Faza1:
elimo da eliminiemo jedinice koje se nalaze u funkciji cilja:
I, II I III vrstu pomnoimo sa -1 i dodamo funkciji cilja. Ovim postupkom dobijamo novu tablicu na koju
primenjujemo simpleks algoritam.
0 0 0 0 0 1 1 1
3 0 -1 -1 1 1 0 0
12 2 0 2 4 0 1 0
3 1 1 2 1 0 0 1

28
k=0 -18 -3 0 -3 -6 0 0 0
3 0 -1 -1 1 1 0 0
12 2 0 2 4 0 1 0
3 1 1 2 1 0 0 1

k=1 0 3 6 9 0 0 0 6
s=3 0 -1 -2 -3 0 1 0 -1
r=4 0 -2 -4 -6 0 0 1 -4
3 1 1 2 1 0 0 1

U funkciji cilja vie nemamo negativnih vrednosti, dakle (0,0,0,3,0,0,0) je optimalno reenje. Optimalna
vrednost funkcije w je nula pa prelazimo na drugu fazu.

II Faza
Poslednja kolona iz tablice je nebazina, odgovara vetakoj promenljivoj i zato je uklanjamo (korak1).
0 2 0 3 1 0 0
0 -1 -2 -3 0 1 0
0 -2 -4 -6 0 0 1
3 1 1 2 1 0 0
U funkciji cilja uz baznu promenljivu x 4 se nalazi 1 koju hoemo da eliminiemo.
-3 1 -1 1 0 0 0
0 -1 -2 -3 0 1 0
0 -2 -4 -6 0 0 1
3 1 1 2 1 0 0
Eliminiemo zatim, promenljivu x 5 koja je vetaka i umesto nje prvu kolonu uinimo bazinom (korak3,
sluaj2). Dobijamo novu tablicu:

Promenljiva x 5 je vetaka a svi preostali elementi druge vrste su jednaki nuli, izostavljamo zato II vrstu i
kolonu koja odgovara toj promenljivoj ( x 5 ), dakle briemo V kolonu (korak3, sluaj1). Dobijena simplex tablica
je:
-3 0 -3 -2 0 1 0
0 1 2 3 0 -1 0
0 0 0 0 0 -2 1
3 0 -1 -1 1 1 0

-3 0 -3 -2 0 0
0 1 2 3 0 0
0 0 0 0 0 1
3 0 -1 -1 1 0

-3 0 -3 -2 0
0 1 2 3 0
3 0 -1 -1 1

Kako su eleminisane sve vetake promenljive moemo prei na korak 4.

29
Dobijamo simplex tablicu:
-3 3/2 0 5/2 0
0 1/2 1 3/2 0
3 1/2 0 1/2 1

Bazino reenje koje odgovara ovoj tablici je (0,0,0,3) i ono je optimalno. Optimalna vrednost funkcije z je 3.

Napomena: U pretposlednjoj i poslednjoj simplex tablici odgovara isto bazino reenje pa samim tim i ista
funkcija cilja. Ovo je posledica degenerisanosti, tj. prisustvo nula u poslednjoj koloni.

PRIMER 33
Reiti dvofaznom modifikacijom simpleks metode sledee probleme linearnog programiranja
a) b)

min 2x1 3x 2 max 5x1 x 2 x 3 10x 4 7x 5


3x1 x 2 x 3 4
2x1 x 2 x 3 3
x1 x 2 x 3 x 4 1
x1 x 2 x 3 2
2x1 x 2 2x 3 x 5 7
xi 0
xi .0
c)

PRIMER 34
Reiti simplex metodom, dualnom simplex metodom ili dvofaznom modifikacijom simplex metode sledee
probleme

a) b)

dualni problem (0,4,8)


c)

30

You might also like