GridMOSI:Mod/GridIdent
< GridMOSI:Mod
Cuprins |
Descrierea problemei şi a metodelor de rezolvare utilizate
Aplicaţia Grid de determinare a modelelor matematice include algoritmi operând pe datele de intrare-ieşire existente sau generate, prin experimente dedicate, ale variabilelor sistemelor sau proceselor dinamice. Se pot folosi, aşadar, înregistrările disponibile în mod curent pentru urmărirea evoluţiei proceselor. Această abordare, de determinare a modelelor matematice din datele de intrare-ieşire, se numeşte identificarea sistemelor. Aplicaţia generează modele de sisteme multivariabile discrete, liniare invariante în timp (LIT), descrise în spaţiul stărilor. Ordinul sistemului poate fi impus de utilizator, sau poate fi determinat automat de aplicaţie.
Date de intrare şi ieşire
Datele de intrare definesc opţiunile de rezolvare (metoda de utilizat şi parametrii asociaţi, ordinul dorit, configuraţia de procesoare, dimensiunea blocurilor, toleranţe), opţiunile de listare/memorare a rezultatelor, dimensiunile problemei şi numele fişierului conţinând matricele de date (de pildă, traiectoriile variabilelor de intrare U şi de ieşire Y ale sistemului). Matricele sunt stocate în ordinea coloanelor, iar fiecare linie din fişier conţine un singur element al unei matrice. Datele de ieşire sunt matricele calculate; ele pot fi listate şi/sau memorate într-un fişier specificat.
Implementarea în mediul Grid
Justificare
Adesea, înregistrările disponibile ale evoluţiei variabilelor de intrare şi ieşire ale unor procese fizice, chimice, biologice, financiare etc., depăşesc sute de mii sau chiar milioane de eşantioane. De asemenea, tendinţa actuală este de a include în modelele matematice orice detalii dinamice semnificative, ceea ce impune adoptarea unor ordine mari pentru modelele de determinat. În plus, numărul de variabile de intrare şi ieşire este din ce în ce mai des de ordinul zecilor sau sutelor. Toate aceste elemente fac ca problema identificării sistemelor să aibă o mare complexitate de calcul. Mai mult, întrucât rezultatele teoretice privind consistenţa şi normalitatea estimaţiilor matricelor modelului au loc doar asimptotic, pentru un număr de eşantioane tinzând la infinit, este esenţial ca procedurile de calcul să poată opera cu volume foarte mari de date, dacă acestea sunt disponibile. Abordarea bazată pe Grid permite rezolvarea unor probleme cu modele de foarte mari dimensiuni.
Soluţia de implementare
Aplicaţia GridIdent are la bază unele implementări din biblioteca SLICOT [1], disponibilă public pentru utilizări academice. Se utilizează nucleele paralele din ScaLAPACK [2] şi PBLAS, folosind standardul MPI [3]. La nivelul inferior, s-au folosit rutinele BLAS optimizate produse de pachetul ATLAS [4]. Rutinele au fost generate/selectate folosind şi opţiunea pentru utilizarea execuţiilor paralele (threads), cât şi opţiunea SSE2.
Din punct de vedere tehnic, s-a considerat utilă, cel puţin în cazul în care se doreşte inspectarea rezultatelor intermediare pentru a face posibilă o selectare fundamentată a ordinului sistemului identificat (iar nu acceptarea directă a valorii furnizate automat de aplicaţie), divizarea calculelor în mai multe etape: calcule preliminare, permiţând determinarea ordinului, calculul matricelor sistemului identificat şi calculul stării iniţiale. Ca atare, au fost implementate trei programe de calcul (pdorder, pdsident şi pdfindx0).
Cerinţe privind infrastructura Grid
Aplicaţia GridIdent necesită rutinele MPI (Message Passing Interface), cât şi rutine ScaLAPACK şi cele apelate de acestea, din bibliotecile LAPACK, BLAS, PBLAS şi BLACS (BLAS pentru comunicaţie). Nu există cerinţe hardware la nivel de Grid / nod de lucru (cum ar fi viteză CPU, memorie, conectivitatea reţelei), dar sunt de dorit performanţe superioare (incluzând cele furnizate de bibliotecile optimizate de nivel inferior, BLAS şi BLACS).
Interfaţa de utilizare
Informaţiile principale care trebuie furnizate de utilizator prin interfaţă sunt:
- Metoda de identificare a sistemului şi tehnica numerică specifică (factorizare de tip QR standard sau rapidă, factorizare rapidă Cholesky);
- Opţiunea de specificare (sau nu) a ordinului dorit;
- Numele fişierului conţinând matricele de date;
- Dimensiunea NB a blocurilor matricelor;
- Numărul de procesoare de utilizat;
- Toleranţele folosite.
Avantaje
Folosirea unei configuraţii Grid este avantajoasă la rezolvarea unor probleme de dimensiuni mari, de pildă, cu sute de mii sau milioane de eşantioane de date I/O, sau cu sute de stări şi zeci de intrări şi ieşiri. Astfel de sisteme există în practică, dar nu au fost însă făcute experimente de identificare.
Potenţialul de utilizare
Descrierea rezultatelor
Aplicaţia GridIdent furnizează ca rezultate esenţiale matricele A, B, C şi D ale sistemului dinamic LTI discret şi matricea de amplificare Kalman K.
Evaluarea impactului ştiinţific şi social
În afara domeniilor tradiţionale, cum ar fi ramurile industriale de vârf (aeronautică şi astronautică, electronică, industria de automobile, industria chimică şi farmaceutică, etc.), modelarea sistemică a pătruns şi în domeniile netehnice, cum ar fi biologia sau finanţele. Ca atare, comunitatea de utilizatori ai aplicaţiei GridIdent cuprinde cercetători, analişti şi proiectanţi din toate domeniile care folosesc modele matematice ale sistemelor, cât şi din învăţământul universitar de profil.
