Escolar Documentos
Profissional Documentos
Cultura Documentos
BLACE
Seminarski rad
iz
predmeta
OPERACIONA ISTRAŽIVANJA
Linearnim programiranjem (LP) obuhvata se i rešava veliki broj različitrih problema. Linearno
programiranje je namenjeno i raspoređivanju oskudnih resursa s ciljem postizanja rezultata
optimalnih sa stanovišta postavljenog kriterijuma. Glavno sredstvo koje se koristi u linearnom
programiranju je matemartički model. Linearnost modela znači da su funkcija kriterijuma i
sistem ograničavajućih uslova definisani linearnim matematičkim relacijama. U zavisnosti od
tipova ekstremne vrednosti funkcije kriterijuma u linearnom programiranju razlikujemo:
minimizuj ax
uz ograničenja Bx = c
x > = 0 gde je x vektor varijabli za koje treba rešiti problem, B je matrica poznatih koeficijenata,
dok su a i c vektori poznatih koeficijenata.1
1
Dr R., Stanković, mr N., Deretić, M., Nikolčević; Operaciona istraživanja, Visoka poslovna škola strukovnih studija
Blace 2009. godine
1
1.LINEARNO PROGRAMIRANJE
. . . .
. . . .
Proizvoljno rešenje sistema nejednačina predstavlja tačku n-dimenzionalnog prostora, to jest (x1,
x2, …, xn) Rn. Svako nenegativno rešenje sistema nejednačina naziva se dopustivim ili
mogućim rešenjem. Svaki problem linearnog programiranja spada u jednu od tri kategorija:
Pri određivanju optimalnog rešenja pojavljuju se dva kriterijuma optimizacije: maksimizacija ili
minimizacija vrednosti funkcije cilja. Iako postoje dva kriterijuma optimizacije, problem izbora
optimalnog rešenja može se smatrati jedinstvenim, jer se jedan kriterijum optimizacije može
zameniti drugim, kako to utvrđuje sledeća teorema:
Teorema :
Dati kriteriumj optimizacije može se zameniti suprotnim, pri čemu zamena ne utiče na
optimalno rešenje, to jest, ako je za X* S ispunjeno
Onda je
3
. . . .
. . . .
xj 0 (j = 1, 2, …, n )
. . . .
. . . .
xj 0 (j = 1, 2, …, n )
U funkciji cilja cj i dalje predočava skup zadatih konstanti koeficijenata kao što su ri u
ograničenjima. Međutim, sada se ograničenja pojavljuju kao nejednačine sa znakom
4
b) Zapis pomoću sume ( )
Znatna ušteda prostora pri pisanju može se postići ako se linearni programi pokažu pomoću
znaka za sabiranje :
n
Maksimizirati z= c
j 1
j xj
n
uz uslove a
j 1
ij x j ri (i = 1, 2, …, m)
i xj 0 (j = 1, 2, …, n)
i slično tome.
Minimizirati z= c
j 1
j xj
n
uz uslov a
j 1
ij x j ri (i = 1, 2, …, m)
i xj 0 (j = 1, 2, …, n)
c) Matrični zapis
Da bismo videli kako se primenjuje matrični zapis, definišimo prvo sledeće četiri matrice :
c1 x1 a11 a 21 a1n r1
c x a a 22 a 2 n r
c 2 x 2 A 12 r 2
c n xn a m1 am2 a mn rm
Tri su od njih vektori stupci – c i x reda n 1, a r reda m 1. Matrica A je reda m n. Nakon tih
definicija, funkcija cilja može se izraziti jednačinom2:
z c' x
(1n ) ( n1)
2
http://www.academia.edu/
5
gde je proizvod vektora c'x reda 1 1 pa je prema tome skalar. Međutim, s obzirom na m
ograničenja, pokazuje se prednost matričnog zapisa jer se celi skup ograničenja može izraziti u
jednoj nejednačini :
A x r
( mn ) ( n1) ( m1)
Znak nejednakosti treba interpretirati kao nejednakost po elementima, tj. i-ti redak matrice Ax
manji je ili jednak od i-tog retka matrice r, za svako i. Slično, n uslova nenegativnosti možemo
izraziti samo jednom nejednačinom :
x 0
( n1) ( n1)
Maksimizirati z c' x
(1n ) ( n1)
uz uslov A x r
( mn ) ( n1) ( m1)
i x 0
( n1) ( n1)
Pomoću istih oznaka program minimizacije može se izraziti u sledećem jednostavnom obliku
Minimizirati z c' x
(1n ) ( n1)
uz uslov A x r
( mn ) ( n1) ( m1)
i x 0
( n1) ( n1)
6
2. skup mogućih rešenja koji je presek od m+n zatvorenih poluprostora takođe je
zatvoren konveksan skup – zovimo ga skup F
Ta se dva rezultata mogu sada povezati. Pre nego što pređemo na to, prvo trebamo razlikovati
pojmove unutarnje tačke, granične tačke i ekstremne tačke. Razlika između graničnih tačaka i
unutarnjih tačaka intuitivno je očigledna. Na slici 3. tačke koje leže na sve četiri strane kvadrata
granične su tačke skupa S, a tačke koje nisu na stranicama unutarnje su tačke. Preciznije,
granična tačka b bilo kojeg skupa S definiše se pomoću svojstva da svaka, ma kako mala,
okolina od b mora sadržavati jednu ili više tačaka koje ne pripadaju skupu S. S druge strane,
unutrašnju tačka skupa i sadržava samo tačke koje pripadaju skupu S.
Pokušavajući dostići optimum, naš je cilj uvek da se ciljna hiperravnina "pomiče" – menjajući
vrednost od z – ili do najvećeg mogućeg položaja (da se postigne maksimum z) ili do najnižeg
položaja (da se dostigne minimum z), dok još ostaje u skupu F.
3
Slika 3. Razlika između graničnih i unutrašnjih tačaka
7
Sl. 4 a) Sl. 4 b)
Na dijagramu 4a) pravci 1, 2, 3 su primeri potpornih hiperravnina. Pravac 1 (i pravac 2) ima
samo jednu zajedničku tačku s poligonom F, dok ih pravac 3 ima više. Međutim, u oba slučaja
skup F leži isključivo s jedne strane potpornog pravca. Prema tome, samo granične tačke skupa F
mogu se pojaviti na svakom od tih pravaca. Može se primetiti da svaki potporni pravac sadržava
barem jednu ekstremnu tačku skupa F, kao što su f,g i h. Ilustracija je za trodimenzionalni
prostor na dijagramu b slična, osim što je potporni pravac sada zamenjen potpornom ravninom.
Presek H i F (ovog puta poliedar) ponovo se može sastojati samo od graničnih tačaka skupa F.
Kako se vidi, samo je jedna tačka (u) uključena i ona je ekstremna tačka skupa F.
Za opšti slučaj n-dimenzionalnog prostora, bit je našeg razmatranja koje se odnosi na sliku 4
sadržana u sledeća dva teorema :
TEOREM I :
Za datu graničnu tačku u zatvorenog konveksnog skupa postoji barem jedna potporna
hiperravnina u u.
TEOREM II :
Za zatvoreni konveksni skup ograničen odozdo postoji barem jedna ekstremna tačka u
svakoj potpornoj hiperravnini.
Značaj je tih teorema za linearno programiranje očigledan. Kad dostignemo optimalno rešenje,
ciljna hiperravnina – koja prikazuje optimalnu liniju jednakog profita ili jednakih troškova – biće
potporna hiperravnina. U skladu s teoremom I, svaka granična tačka skupa mogućih rešenja
mogući je kandidat za optimalno rešenje. Ali teorem II sužava problem omogućujući nam da
pažnju usmerimo samo na ekstremne tačke. Čak iako može biti neekstremnih graničnih tačaka u
8
istoj potpornoj hiperravnini, one su pridružene istoj vrednosti funkcije cilja (z) kao i ekstremne
tačke u toj hiperravnini i, u skladu s tim, nisu bolje od ekstremnih tačaka pa se, dakle, mogu
zanemariti bez ikakva gubitka. Ta jednostavna, ali važna činjenica upotrebljava se veoma
uspešno u simpleks metodi za rešavanje linearnog programa sa n varijabli koju je izvorno razvio
George B. Dantzig.
Ako je skup F mogućih rešenja zatvoren konveksan skup i ako je funkcija cilja neprekidna
konkavna (konveksna) funkcija na skupu mogućih rešenja, tada :
Da bismo razumeli deo b) teoreme, pogledajmo malo drugačije na slici 4. Ako se optimalno
rešenje linearnog programa dostigne u jednoj ekstremnoj tački, kao što je tačka f na dijagramu
a) ili tačka u na dijagramu b), tada je, prema dogovoru da je tačka konveksan skup, tvrdnja
teoreme ispunjena. Međutim, šta ako postoji višestruki optimum? Višestruki optimum pojavljuje
se kada potporna ravnina dodiruje skup mogućih rešenja u više od jedne tačke, kao kad je pravac
3 (dijagrama a) potporni pravac ili kad je ravnina H (dijagram b) podudara sa jednom od stranica
(ravnih ploča) poliedra F. U tim primerima skup svih optimalnih tačaka uključen je ili u dužinu
9
hg ili, kao što se može dogoditi, u neku stranicu poliedra F. Dakle, skup je ponovo konveksan,
kao što tvrdi teorema.
2.EKONOMSKA MOTIVACIJA
Linearno programiranje obuhvata i rešava veliki broj ekonomskih problema. U prvom redu
probleme optimalnih proizvodnih programa u različitim uslovima, koji praktično mogu biti
sveobuhvatni u okviru preduzeće. Oni se mogu ticati tehničko-tehnoloških uslova proizvodnje,
sirovina, zaliha, radne snage, tržišnih uslova, ponude i tražnje, uvoza, izvoza i svih drugih
elemenata koji neposredno utiču na proizvodni proces i koji se javljaju kao ograničavajući
faktori. Kvantificiranje pomenutih uslova pomoću matematičke relacije i formiranje
odgovarajućih sistema međuzavisnosti (sistem ograničavajućih uslova) omogućavaju postizanje
onih rezultata koji proizlaze iz simultanog delovanja svih obuhvaćenih faktora. Takvo
obuhvatanje faktora sa posrednim i neposrednim efektima u vidu sistema predstavlja
aproksimativno izražavanje međuzavisnosti koje postoje u preduzeću.
Linearno programiranje polazi od takvih sistema i na bazi unapred utvrđenih kriterijuma, koji
mogu biti različiti u zavisnosti od problema, ispituje uslove optimalnosti, određujući ona rešenja
koja su u danim uslovima najbolja (optimalna). Drugim rečima, ako se za kriterijum uzme
dohodak preduzeća koji se ostvaruje od proizvodnje više proizvoda, tada je pri unapred poznatim
ograničavajućim uslovima moguće odrediti onaj proizvodni program koji daje maksimalan
ukupan dohodak. Takav program nazivamo optimalnim u odnosu na postavljeni kriterijum.
Međutim, kriterijumi mogu biti različiti, pri istim ograničavajućim uslovima, što znači mogu se
postavljati zahtevi, kao što su :
maksimiziranje dobiti
maksimalno korišćenje proizvodnih kapaciteta
maksimalan izvoz sa odgovarajućim deviznim efektom
minimalni troškovi proizvodnje
minimalni obim zaliha i dr.4
4
L., Čaklović; Geometrija linearnog programiranja, Novi Sad 2008.godine
10
Navedeni primeri predstavljaju relativno mali broj zadataka koje linearno programiranje
obuhvata i rešava. Takvih i sličnih problema ima dosta kako u problematici preduzeća, tako i u
drugim ekonomskim područjima. Npr. prilikom razmatranja investicionih programa mogu se
tražiti optimalna rešenja sa maksimalnom efektivnošću investicija, zatim optimalni odnosi
akumulacije i potrošnje u strukturnom smislu. Takođe je moguće razmatrati probleme tržišta,
probleme spoljnotrgovinske razmene, probleme kooperacije i specijalizacije, probleme potrošnje
i ishrane, probleme optimalnih ulaganja i selektivne proizvodnje. Takođe se mogu razmatrati
problemi transporta u različitim varijantama, problemi lokacije, asignacije, problemi rasporeda
itd. Najzad, moguće je rešavati složene probleme koordinacije i usklađivanja programa različitih
ekonomskih jedinica, kao i programiranje proizvodnih planova privrednih grana u okviru cele
privrede preko metoda dekompozicije.
Skala problema koji se mogu rešavati metodama linearnog programiranja relativno je velika i
praktično ih je nemoguće sve nabrojati. Praktično, svaki problem strukturne prirode u kome se
postavlja zahtev da se između velikog broja alternativnih rešenja odredi ono koje je prema
unapred postavljenim kriterijumima najbolje, pripada grupi linearnog programiranja.
Cilj problema je pronaći optimalan plan proizvodnje pod uslovom da se postigne maksimalna
ukupna dobit. Zadane veličine su proizvodi ( P1, P2, … .Pn ), te grupe mašina na kojima se vrši
proces proizvodnje ( A, B, C, … ) a koje predstavljaju nejednačine ograničenja.
Problem možemo formulisati i pomoću tabele i na osnovu njega zapisati linearni program.5
5
http://www.math.rs/
11
Gde je :
PROIZVOD
Kapacitet
P1 P2 … Pn
sati
a11 ,a12 ,…,a3n – potreban
Na mašini A a11 a12 … a1n b1 broj sati izrade po jedinici
POTREBNI SATI
proizvoda
Na mašini B a21 a22 … a2n b2
xj 0 (j = 1, 2, …, n )
Potrebno je napomenuti da je gore navedeni primer razrađen za samo tri grupe mašina A, B, C,
ali slično se može izvesti i za više od tri mašine.
Poslednjih godina nauka posvećuje sve veću pažnju pitanjima organizacije i planiranja, posebno
u domeni prometa i transporta, jer su pitanja racionalizacije u ovoj privrednoj grani postala vrlo
složena. Poseban slučaj opšteg problema linearnog programiranja je tzv. transportni problem.
Još pre pojave radova iz linearnog programiranja, neke specijalne slučajeve transportnog
problema izučavali su ekonomisti. Prvu strogu postavku transportnog problema dao je Hitchcock
12
1941 godine, pa se zato transportni problem često naziva i "problem Hitchcocka". Hitchcock je
formulirao transportni problem na slijedeći način :
Dano je m proizvodnih centara ili skladišta, koji nude određenu robu u količinama a1, a2, …,am
i n potrošača koji tu robu potražuju u količinama b1, b2, …, bn. Pretpostavlja se da je zbir
ponuda jednak zbiru potražnji : a1 + a2 + … + am = b1 + b2 + …+bn. Dani su brojevi Cij koji
označavaju cijene prevoza jedinice robe od i-tog proizvođača do j-tog potrošača. Treba naći
takve veličine Xij 0, gdje Xij označava količinu tereta koji treba prevesti od i-tog proizvođača
m n
do j-tog potrošača, tako da ukupni troškovi transporta F Cij X ij budu minimalni.
i 1 j 1
Postoji više metoda za određivanje početnog bazičnog rešenja . Jedna od prvih metoda nalaženja
početnog bazičnog rešenja je "dijagonalna metoda" ili "metoda severozapadnog kornera"
(North-West Corner Rule). Druge metode, koje su kasnije pronađene, imale su za cilj da se
dođe do početnog bazičnog rješenja, koje će biti bliže optimalnom rešenju. Međutim, pri
korišćenju računara važnija je jednostavnost odgovarajućeg programa za računar, nego broj
iteracija kojima se dolazi do optimalnog rešenja. Ostale metode su Vogelova, te "steping-stone
metoda" i "MODI metoda" za traženje optimalnog rešenja transportnog problema.
Potrošači
Kapaciteti
P1 P2 … Pn
ai
13
… … … … … …
uz uslov
x11 + x12 + … + x1n = a1 x11 + x21 + … + xm1 = b1
. . . . . . . .
. . .
3.METODE LINEARNOG PROGRAMIRANJA . . . . .
Postoje dve osnovne metode rešavanja problema linearnog programiranja: grafička
xm1 + xm2 + … +metoda
(geometrijska) i algebarska. Geometrijska xmn = ammože se iskoristiti
x1n + x2n +samo
… + xnm
u =slučaju
bn dve ili tri
varijable, pri čemu u slučaju tri varijable prostorni model postaje već neprikladan. Ako je
problem linearnog programiranja dan u standardnom obliku i ako je n-m = 2 (a najviše n-m = 3),
tada se također može rešiti geometrijskom metodom (n-broj varijabli, m-broj ograničenja).
xij 0 (j = 1 , 2 , … , n ) xji 0 (i = 1 , 2 , … , m)
Grafička (geometrijska) metoda
Iz geometrijske interpretacije ograničenja problema linearnog programiranja zna se da je svako
rešenje sistema nejednačina jedna točka prostora Rn, a sku nenegativnih rešenja problema
linearnog programiranja i S Rn. Svaka od nejednačina :
14
n
aj 1
ij X j bi i=1,2,…,m
n
određuje podskup Si, i = 1, 2, …, m (skup tačaka jedne strane hiperravnine : a
j 1
ij X j bi
S = S1 S2 … Sm Sm+1 … Sm+n
Skup mogućih rešenja geometrijski predstavlja poliedar u prostoru. Funkcija silja, koja se za
F=const. interpretira kao hiperravnina, dostiže maksimum (minimum) u jednom vrhu poliedra
(slučaj jedinstvenog optimalnog rješenja) ili po jednoj stranici poliedra ako je hiperravnina
F=const. njoj paralelna (slučaj beskonačno mnogo optimalnih rešenja).
Grafička (geometrijska) metoda rešavanja problema linearnog programiranja pokazaće se na
primeru, ali će se iz njega izvući zaključak koji će biti od značenja za opštu algebarsku metodu.
Primer :
Preduzeće treba da proizvodi dva proizvoda, A i B, na tri grupe mašina, M1, M2 i M3. Normativ
vremena izrade ovih proizvoda na grupama mašina, raspoloživi fond vremena mašina, kao i
dobit po jedinici proizvoda daju se u sledećoj tabeli :
A B RFV
x1 x2 sati
M1 5 6 1.500
M2 9 2,8 1.800
M3 2 9,5 1.800
Dobit
30 50
KM/kom.
15
Potrebno je utvrditi optimalan plan proizvodnje pod uslovom da se postigne maksimalna dobit.
Funkcija kriterijuma
F(x)=30x1+50x2
Koju treba maksimizirati pod ograničenjima
5x1 + 6 x2 1.500
9x1 + 2,8x2 1.800
2x1 + 9,5x2 1.800
U koordinatnom pravouglom sistemu OX1X2 predstavićemo nejednačine ograničenja kao
jednačine. To će biti prave linije :
6
G., V. Milanović, R., Ž. Đorđević; Linearna algebra, Niš 2004.godine, str 20
16
Koordinate tačke M su
x1 = 108 i x2 = 160
F(x) = 11.240 KM
F(x) = 11.240 KM
Pošto su koordinate tačke M na preseku pravih p1 i p2, tj. na presjeku (ne)jednačina ograničenja
raspoloživog fonda vremena mašina M1 i M3, znači da je zadovoljen uslov jednakosti ova dva
ograničenja, te je raspoloživi fond vremena ovih mašina 100 % iskorišćen.
George Dantzig se s pravom naziva ocem linearnog programiranja. S njim započinje rešavanje
linearnog problema i to pronalaženjem prvog generalnog algoritma (simpleks algoritam) za
njegovo rešavanje, 1947 godine. Prvi problem koji su Laderman i Stigler rešili simpleks
algoritmom (metodom) odnosio se na problem ishrane, sadržavao je 77 varijabli. Devet
matematičara zajednički su, uz pomoć kalkulatora, zajednički radili na njegovom rešavanju i
trebalo im je otprilike 120 radnih sati za njegovo rešenje. Prvi pokušaj rešavanja linearnog
problema uz pomoć računara, primenom simpleks metode bila je od strane NBST-a (National
Institute of Standards and Technology). Orden (1952) i Hoffman (1953) su na računaru SEAC
testirali rešavanje linearnog problema sa 48 ograničavajućih jednačina i 71 varijablom, čije je
izračunavanje trajalo 18 sati i izračunato na 73-oj simpleks iteraciji (koraku). Kao što vidimo
pređašnji računari su bili spori za rešavanje linearnog problema koji je sadržavao mnogo
17
varijabli i ograničavajućih jednačina. Savremenim razvojem tehnike i tehnologije (prvenstveno
računarske i softwarske), taj problem se znatno prevazišao. Danas, mi imamo širok spektar
programa (softwarea), što komercijalnih što besplatnih, koji su namjenjeni rešavanju linearnog
programa. Oni se zasnivaju na nekom od algoritama, ali su većinom to modifikovane forme
simpleks algoritma. Takvi programi linearne probleme rešavaju začuđujućim brzinama, što je i
sama svrha upotrebe računara u linearnom programiranju.
7
B., M. Popara: Operaciona istraživanja, Beograd, 2009. godine, str 89
18
5.ZAKLJUČAK
Linearno programiranje se može posmatrati kao deo celokupnog napretka prošlog stoljeća, koje
je omogućilo ekonomskoj nauci rešavanje složenih problema, i koje je utrlo put donošenju
odluka i ispunjenju ciljeva u praktičnim situacijama koje se nameću kao veoma kompleksne.
Današnji pomoćni alati za dostizanje tih ciljeva su načini koji su bili formulirani kroz aspekta:
U godinama od kada je ustanovito 1947 godine od strane autora (u vezi sa planiranjem vojnih
aktivnosti), linearno programiranje i njegove tehnike rešavanja su široko u upotrebi. U
akademskim krugovima aktivnostima naučnika (prvenstveno onih koji se bave operacijskim
istraživanjima i menadžmentom), izdan je širok spektar publikacija iz oblasti numeričke analize,
linearnog programiranja i njegove primjene u ekonomskim istraživanjima.
19
LITERATURA :
http://www.math.rs/
20
21