Explorați Cărți electronice
Categorii
Explorați Cărți audio
Categorii
Explorați Reviste
Categorii
Explorați Documente
Categorii
Facultatea Transporturi
SCOALA DOCTORALA
TRANSPORTURI
București
2021
2
Cercetari operationale
CURS
• Programarea discretă
2
CURS
3 • Grafuri
3
INCEPUTURI
Totul a început în anul 1947, când G B
Dantzig a pus bazele "metodei Simplex"
folosită anterior în rezolvarea
problemelor de planificare din US Air
Force, probleme care aveau o formă
liniară.
Din acest motiv, 1948 se considera a fi
anul primei structurări a ceea ce urma să
devină domeniul matematic al
Cercetarilor Operationale
5
INCEPUTURI IN TRANSPORTURI
T.C. KOOPMANS a realizat prima abordare a
transporturilor maritime prin metode matematice (cu
caracter tactico-militar).
Reducerea timpului de expunere a navelor aliate pericolului de
intalnire cu submarinele germane
devine problema economica a reducerii mersului navelor în balast.
TERMINOLOGIE
• O soluţie a problemei PPL este un ansamblu de n numere care
satisfac sistemul (1) de restricţii.
• Dacă este verificată şi condiţia (2) soluţia se va numi solutie
admisibilă.
• O soluţie admisibilă care realizează valoarea optimă a funcţiei
obiectiv se numeşte soluţie optimă a problemei (PPL).
8
min ( c1 x1 ... c n x n )
max
a11 x1 ... a1 n x n b1
FORMA
( PPL ) .......... .......... .......... ...
(1)
CANONICA a x ... a x b
m1 1
mn n m
x1 0 , x 2 0 ,..., x n 0 (2)
9
n
max f j 1 c j x j
n
( PL ' ) a ij x j b i , i 1, m
j1
x 0, j 1, n
j
11
b ϵM1xm b=(b1,…bm)
c ϵ M1xn c=(c1,…cn)
12
min f(yij) =
14
Algoritmul SIMPLEX
• Algoritmul SIMPLEX se aplica problemelor aduse la forma standard.
n
max f cjxj
j 1
n
( PPL) aij x j bi , i 1, m
j 1
x 0, j 1, n
j
Algoritmul SIMPLEX
• Propoziţie: Orice problemă (PPL) compatibilă posedă o clasă
de soluţii admisibile particulare B cu proprietăţile:
1.B este finită
2.Dacă P are o soluţie optimă, cel puţin una din ele este în B.
Convexitate
17
Tabel primar
• Primul tabel Simplex
P1 1 0……0 …
P2 0 1 0 a1,m1 a1,n
… … …. …. …………….
Pm 0 0 1 ….
am,m1 a m ,n
20
m n m n n
f ( x) c1 x1 ... c n x n ci xi c j x j ci (bi a ij x j ) c x j j
i 1 j m 1 i 1 j m 1 j m 1
m n m
ci b i ( ci a ij c j ) x j
i 1 j m 1 i 1
m m
• Dar c b f (x)
i1
i i iar, notand z j ci aij m 1 j n
i1
n
f (x) f (x) (zj cj )xj
jm1
•
22
• TEOREME
• 1.x ( x1 ,... xn ) este solutie optima daca 0 ≤ zj-cj j=1,...n
Daca exista zj-cj <0 se va cauta o solutie mai buna (se va face o
schimbare de baza,adica se va trece in alt varf al poliedrului de solutii)
• 2.Coloana care va intra in baza este Pk pentru care
zk-ck = min( zj-cj ) pentru toate zj-cj <0
Daca zk-ck <0 si a ik 0 pentru orice i ,PROBLEMA ARE OPTIM
INFINIT STOP
bi br
Daca exista a ik 0 din baza va iesi coloana Pr pentru care min
a 0 a
ik
ik ark
C1 P1 b1 1 0….. 0… a1n
… …. ….. 0 1 0 a2n
0 0 0
… … …
Cm Pm bm 0 0….. 1 amn
f(x) z1 z2 ... zm zn zi
z1-c1 ……………………… zn-cn zi-ci
24
EXEMPLU
Max (2x-y+4z)
x+6y-z ≤ 8
-2x-y+5z≥ -10/(-1)
y+7z ≤ 6
x,y,z ≥0
Max (2x-y+4z)
x+6y-z ≤ 8
2x+y-5z ≤ 10
y+7z ≤ 6
x,y,z ≥0
26
Max (2x-y+4z)
x+6y-z+t = 8
2x+y-5z+u = 10
y+7z+v = 6
x,y,z , t, u,v ≥0
c=(2 -1 4 0 0 0) 1 6 -1 1 0 0
A= 2 1 -5 0 1 0
0 1 7 0 0 1
b= (8, 10, 6)
27
0 P4 (t) 8 1 6 -1 1 0 0
0 P5 (u ) 10 2 1 -5 0 1 0
0 P6 (v) 6 0 1 77 0 0 1 6/7
f 0 0 0 0 0 0 0 zj
-2 1 -4 0 0 0 Zj-cj
28
PIVOTARE
CB VB VVB 2 -1 4 0 0 0
P1 P2 P3 P4 P5 P6
0 P4 (t) 62/7 1 43/7 0 1 0 1/7 9/11
0 P5 (u) 100/7 2 12/7 0 0 1 5/7
4 P3 (z) 6/7 02 1/7 1 0 0 1/7 36/70
f 24/7 0 4/7 4 0 0 4/7 zj
-2 11/7 0 0 0 4/7 Zj-cj
APLICATIE
PRIMALA DUALA
Max (3x+7y-z) Min (4u +4u +5u )
1 2 3
x+y+z≤ 4 u +6u ≥3
1 3
y+2z=4 u +u ≥7
1 2
x,y,z ≥0 u ≥0 , u ϵR , u ≤0
1 2 3
31
DUALITATE
In timpul unei diete, o persoana trebuie sa consume patru
elemente nutritive A,B, C, D.
Acestea se gasesc in doua combinatii M si N, cu diferite
compozitii care au preturile de 10 lei/kg pentru M si 4
lei/kg pentru N.
Pe zi, consumul:
de elementul A trebuie sa fie de cel putin 0,4 kg,
de elementul B de cel putin 0,6 kg,
de elementul C de cel putin 2 kg si
de elementul D de cel putin 1,7 kg.
32
SINTEZA DATELOR
Elemente Combinatii Cantitati
nutritive M N prescrise
A 0,1 0 0,4
B 0 0,1 0,6
C 0,1 0,2 2
D 0,2 0,1 1,7
Costuri 10 4
33
Problema Primala
• Fie X1 cantitatea din combinatia M cumparata
X2 cantitatea din combinatia N cumparata.
Functia cost f(X1, X2)=10X1+4X2
• Min f(X , X )=10X +4X
1 2 1 2
Restrictiile sunt:
0,1X ≥ 0,41 adica X ≥ 4 1
0,1X ≥ 0,62 X ≥6 2
0,1X + 0,2 X ≥ 2
1 2 X + 2X ≥ 20
1 2
X X ≥0
1, 2
34
X1+2X2=20
(4,9)
X2
X2=6
2X1+X2=17 X1
X1=4
36
Problema duala
• Un concurent al vanzatorului combinatiilor
M si N vinde elementele A,B,C,D ca atare. El
vrea sa stie cu ce pret sa vanda produsele
astfel ca beneficiul sau sa fie maxim.
unde U = pret kg A,
1
U = pret kg B,
2
U = pret kg C,
3
U = pret kg D.
4
• El nu vrea sa vinda cu preturi mai mari decat concurentul lui, deci isi
impune urmatoarele restrictii:
• max g(U , U ,U , U )=0,4U + 0,6U +2 U +1,7 U
1 2 3 4 1 2 3 4
U ,U , U , U ≥ 0
1 2 3 4
38
U= 0
2
U= 0
3
U =40 4
destinaţii
Cerere C1 C2 ... Cm
43
TERMINOLOGIE
• La intersectia liniei i si a coloanei j se afla ruta (i,j)
• Problema de transport se numeste degenerata daca numarul de ecuatii
este m+n-1 si degenerata in caz contrar.
• Daca cererea este egala cu oferta, problema de transport este echilibrata,
adica daca c1+c2+…cm = e1+e2+…en .
• Algoritmul de rezolvare se poate aplica doar problemei echilibrate.
44
1. Daca c1+c2+…cm > e1+e2+…en se adauga o sursa virtuala care are existentul
en+1 definit astfel:
c1+c2+…cm - e1+e2+…en =en+1 .
Problema se echilibreaza si se rezolva, iar cantitatile alocate de la noua sursa au
semnificatia de cantitati care raman neacoperite sau cereri nesatisfacute.
2. Daca c1+c2+…cm < e1+e2+…en se adauga o sursa virtuala care are cererea cm+1
definit astfel:
cm+1= e1+e2+…en – (c1+c2+…cm )
Problema se echilibreaza se rezolva, iar cantitatile alocate noii destinatii au
semnificatia de cantitati care raman nedistribuite
45
schimba
47
Ruta (i0,j0) pentru care are loc max Δij pentru Δij>0 va intra in solutie.
Pentru a sti ce ruta va parasi soluția se genereaza un contur poligonal
care incepe cu aceasta ruta (i0,j0), coteste in unghiuri drepte numai
in rute ocupate (care fac parte din solutia testata) si se termina tot
in (i0,j0).
Se marcheaza cu (+) sau (-) colturile poligonului alternand , incepand
cu (+) pentru ruta de pornire (i0,j0).
Se determina valoarea Θ = minimul cantitatilor din colturile marcate
cu (-).Daca nu este unic, se aplica regula de perturbare
In rutele marcate cu (+) se aduna cantitatea Θ iar din colturile marcate
cu (-) se scade cantitatea Θ.
Ruta care da valoarea Θ primeste asadar zero, adica iese din solutie si
in solutie intra (i0,j0) cu cantitatea alocata egala cu Θ.
Cu noua solutie se reia pasul 2.
48
Exemplu numeric
• PAS 0-Echilibrare: 10+20+40+30+40=140
• 15+25+45+55=140
Destinatii D1 D2 D3 D4 D5 oferte
/
Surse
S1 3 2 5 6 4 15
S2 7 4 3 5 9 25
S3 2 3 2 3 6 45
S4 7 6 5 3 6 55
cereri 10 20 40 30 40
49
Metoda Colt NV
• Solutie initiala : X11=10 X12=5 X22=15 X23=10 X33=30 X34 = 15
X44=15 X45=40 celelalte Xij=0
C1=10x3+5x2 + 15x4+ 3x10+ 30x2+3x15+3x15+40x6 =520
Destin D1 D2 D3 D4 D5 oferte
atii/
Surse
S1 10 5 - - - 15 5
S2 - 15 10 - - 25 -
S3 - - 30 15 - 45 15
S4 - - - 15 40 55
cereri 10 20 15 40 30 30 15 40
50
V1 V2 V3 V4 V5
Min(30,15, 10)=10 3 2 1 2 5
D1 D2 D3 D4 D5
Solutia noua este: U1=0 S1 - 15 - - -
X12=15
X22=5 U2=2 S2 - 5 20 - -
X23=20
X31=10
U3=1 S3 10 - 20 15
X33=20
X34=15
X44=15 U4=1 S4 15 40
X45=40 iar ceilalti Xij=0
Iar costul afferent ei este 500.
Se va testa optimalitatea noii
solutii.