Sunteți pe pagina 1din 10

Graful ponderat

Definiie: Considerm un graf G=(X,U) i o funcie f:U R+ care asociaz fiecrei muchii (arc) un numr real pozitiv (care poate avea
semnificaia de cost, distan, timp, durat).
Definiie Un graf G=(X,U) pentru care s-a definit o funcie cost se numete graf ponderat.

1. Matricea costurilor

Algoritmul pentru crearea matricei costurilor -se citete pentru fiecare muchie (arc) etichetele extremitilor ei i costul asociat.

2. Algoritmi pentru determinarea costului minim (maxim)

n aplicaiile economice aceast valoare poate fi:


- lungimea drumului dintre dou localiti;
- costul parcurgerii rutei reprezentate prin arcul corespunztor;
- durata parcurgerii rutei respective;
- cantitatea transportat pe ruta respectiv;
- capacitatea maxim a rutei respective;
- ctigul realizat prin trecerea de la o stare la alta a sistemului;
- consum de energie pentru efectuarea trecerii respective;
- punctaj realizat etc.

S-au elaborat o mulime de algoritmi, fiecare fiind cel mai eficace n anumite cazuri.
1. Algoritmi prin calcul matricial (Bellman-Kalaba, I. Tomescu, Bellman-Schimbell);
2. Algoritmi prin ajustri succesive: (Ford);
3. Algoritmi prin inducie (Dantzig);
4. Algoritmi prin ordonare prealabil a vrfurilor grafului;
5. Algoritmi prin extindere selectiv (Dijkstra).
2.1. Algoritmul Roy-Floyd
Algoritmul folosete un principiu asemntor cu cel utilizat n construirea matricei drumurilor a lui Roy-Warshall: gsirea drumului
optim ntre dou noduri oarecare i i j prin acoperirea drumurilor optime care l compun i care trec prin nodurile k se face prin
transformarea matricei costurilor.
Descoperirea drumului de cost minim:
-dac lungimea drumului minim dintre nodurile i i j este egal cu suma dintre lungimile minime a dou drumuri care trec printr-un
nod intermediar k (a[i][j]=a[i][k]+a[k][j]), atunci nodul k face parte din drumul de lungime minim de la i la j. ->se folosete
strategia divide et impera.
Complexitatea algoritmului Roy Floyd -> O(n3)+O(nxlg2n)=O(n3+nxlg2n).

2.2. Algoritmul Dijkstra -construiete drumurile cu cost minim care pornesc de la un nod de plecare x nodul surs pn la fiecare
nod din graful G=(X,U).
-este cautarea treptat: un drum minim nu poate avea mai mult de n-1 arce.
Rezultatul este: Tabloul T este:

Implementarea algoritmului
Complexitatea algoritmului Dijkstra -> O(n x lg2n).

S-ar putea să vă placă și