Professional Documents
Culture Documents
Laborator nr. 12
Laborator nr. 12
Operatia min{C[i,j],mink{w[i,k,j]; k = 1,...,n}} poate fi implemntata prin procedura sum, ,, fiind n acest caz operatorul de minimizare. Daca se utilizeaza modelul CREW-PRAM, complexitatea timp a acestei operatii este O(log n) iar numarul de procesoare utilizate este n/logn. Rezulta pentru algoritm un timp de executie T(n)=O(log2n) si un necesar de procesoare de O(n3/logn). Pe o masina CRCW-PRAM, operatia de minimizare anterior mentionata se poate efectua n timp constant cu n2 procesoare. Consecinta este reducerea timpului de executie la O(logn), rezultnd nsa o crestere a numarului procesoarelor la O(n4).
tranzitive. Mentionam ca pentru un graf G, problema nchiderii tranzitive consta n determinarea unei matrice Cnn: C[i,j] = 1, daca exista n G un drum de la i la j 0, altfel Generaliznd, problema algebrica a drumurilor poate fi definita astfel: Dat fiind un graf ponderat G = (V,E,w), unde w:E H, iar (H,,) formeaza un inel cu unitate, sa se determine matricea Cnn astfel nct C[i,j] = w(p) [p drum de la i la j]
k =1 l =0
Laborator nr. 12
Implementri sistolice Foarte numeroase sunt abordarile sistolice ale problemei algebrice a drumurilor. Remarcabila este implementarea algoritmului lui Kleen pe o retea de tip plasa data de Y. Robert si D. Trystram, 1986 Parametrii algoritmului sunt T = 5n-2 si A O(n2).
Laborator nr. 12
Reea sistolic pentru drumuri cu aceeai surs Reteaua lui Y. Robert si D. Trystram poate modificata si adaptata problemei drumurilor de cost minim sau maxim de la un nod n la toate celelalte n-1 noduri ale unui digraf aciclic G = (V,A), V = {1,2,...,n}, E VV. Vom prezenta n continuare o arhitectura sistolica pentru problema drumurilor de cost maxim de la un nod n la toate celelalte n-1 noduri ale unui digraf aciclic G = (V,A) Am ales varianta drumurilor maxime n perspectiva utilizarii acestora la sortarea topologica. Initial, Cnn este matricea Costnn a costurilor arcelor digrafului aciclic G. Cij este costul arcului (i,j).
Laborator nr. 12
Algoritmul Warshal-Floyd Algoritmul implementat de reteaua anterioara este derivat din algoritmul WarshalFloyd astfel: proc drumuri_maxime(C,n); begin for k = 1 to n-1 do for j = 1 to n do for i = k+1 to n do C[i,j] = max{C[i,j],C[i,k]+C[k,j]} end; Procedura drumuri_maxime transforma elementele matricei C dupa formula: Ck[i,j] = max{Ck-1[i,j],Ck-1[i,k]+Ck-1[k,j]} unde Ck-1 respectiv Ck definesc starea matricei C inainte si dupa iteratia k. Elementele Cn-1[i,j] vor contine costurile drumurilor maxime de la i la j. n final doar elementele liniei n a matricei C vor ajunge n starea n-1 deci vor contine valori corespunzatoare drumurilor maxime. Exemplu de aplicare a algoritmului de drumuri maxime ntr-un digraf aciclic
Laborator nr. 12
Laborator nr. 12
Laborator nr. 12
Laborator nr. 12