Învățământ < < <

Calcul Numeric în Automatică

Anul III, semestrul I

Prezentarea cursului

Structura cursului

Observații

Programa analitică

Suport pentru curs

Seminarii

Laborator

Subiecte date la examen

Prezentarea cursului
   Cursul universitar de Calcul Numeric în Automatică este destinat studenților anului III al secției de Automatică și Informatică Industrială din cadrul facultății de Automatică și Calculatoare din Universitatea POLITEHNICA din București. Desigur, el poate interesa și pe alți utilizatori potențiali ai metodelor moderne de calcul în analiza și proiectarea sistemică. Obiectivele principale ale cursului de Calcul Numeric în Automatică sunt următoarele:
1. cunoașterea problematicii metodelor moderne de calcul știintific în domeniul analizei și proiectării asistate de calculator a sistemelor dinamice;
2. prezentarea celor mai performante proceduri numerice de analiză, simulare și sinteză sistemică disponibile la momentul actual pe plan mondial;
3. cunoașterea celor mai performante produse software disponibile la momentul actual pentru rezolvarea problemelor de calcul numeric avute în vedere, cum sunt CONTROL TOOLBOX și SIMULINK din MATLAB;
   Studentul ideal pentru acest curs trebuie să posede cunoștințe de bază privind metodele de calcul numeric matriceal (predate la cursul de Calcul Numeric din anul II) precum și unele informații sigure asupra principalelor noțiuni de teoria sistemelor liniare (predate la cursul de Teoria Sistemelor ce se desfășoară simultan cu cursul de Calcul Numeric în Automatică). De asemenea, el trebuie să aibă obișnuința unei gândiri limpezi, "algoritmice", precum și pasiunea lucrului la calculator. Desigur, studentul real, dispunând într-un grad mai mare sau mai mic de calitațile menționate mai sus, și le poate perfecționa prin participarea asiduă la activitațile din cadrul acestui curs, confirmând, și pe aceasta cale, viabilitatea principiilor sistemice.
   Cursul este structurat în șapte părți, descrise pe scurt mai jos.
   Partea întâi a cursului completează cunoștințele studenților privind metodele de rezolvare a sistemelor de ecuații liniare cu cazul matriceal în care necunoscutele sunt structurate într-o matrice XÎRmŚn, m > 1, n > 1, fapt care permite dezvoltarea unor tehnici specifice. Concret, sunt prezentate modalitățile cele mai performante de rezolvare a ecuațiilor matriceale Sylvester și Liapunov care vor fi întâlnite apoi pe tot parcursul cursului.
   Partea a doua tratează problema importantă a calculului funcțiilor de matrice. Un accent special este pus pe calculul exponențialei matriciale, echivalent cu rezolvarea numerică a sistemelor de ecuații diferențiale liniare de ordinul întâi. Având în vedere că aceste ecuații reprezintă descrierea prin modele de stare a sistemelor dinamice continue, exponențiala matriceală este utilizată intensiv e.g. pentru calculul răspunsului în timp al sistemelor liniare.
   Partea a treia expune principalele tehnici de procesare a modelelor sistemice liniare (conexiuni, realizări, conversii de modele, algoritmi de calcul polinomial) fără de care nu este posibilă abordarea nici unei probleme de analiză sau sinteză sistemică asistate de calculator.
   Partea a patra descrie metodele numerice de simulare, i.e. de calcul al răspunsului în timp al sistemelor liniare la stimuli externi caracteristici pentru diverse regimuri de funcționare, în particular de calcul al caracteristicilor de frecvență. Aceste tehnici de simulare sunt absolut necesare pentru validarea demersului teoretic și calculatoriu de analiză și sinteză sistemică și reprezintă o punte de legătură esențială către lumea reală a experimentului fizic.
   Partea a cincea prezintă procedurile numerice de analiză a proprietăților sistemice fundamentale (stabilitate, controlabilitate, observabilitate, etc.) precum și principalele metode de construcție a realizarilor minimale și echilibrate. În acest fel conținutul acestei părți se constituie într-o colecție de algoritmi fundamentali, componente de bază ale oricarei activități de concepție asistate de calculator a unor sisteme de conducere complexe.
   Partea a șasea realizează o trecere în revistă a principalelor proceduri numerice de alocare a polilor sistemelor liniare. În contextul general al tehnicilor de sinteză, alocarea polilor reprezintă un instrument necesar pentru asigurarea unei dinamici dorite sistemelor automate elaborate.
 
   Partea a șaptea abordează, din punctul de vedere al metodelor numerice de calcul, problema de sinteză liniar-pătratică. în acest context sunt prezentate metodele de calcul cele mai performante pentru rezolvarea ecuațiilor matriciale Riccati, însoțite de analize comparative ale eficienței și stabilității lor numerice.
 
   În general, expunerile constau într-o prezentare succintă a cadrului sistemic al problemelor abordate, formularea exactă a problemelor de calcul aferente, prezentarea detaliată a procedurilor de rezolvare a acetor probleme. Principalele rezultate ale expunerii sunt concretizate sub forma de algoritmi de calcul direct implementabili. De asemenea, sunt prezentate rutine din CONTROL TOOOLBOX-ul mediului de programare MATLAB, reprezentative pentru problemele de calcul studiate.
   De asemenea, sunt prezentate rutine (funcții) din biblioteca LAPACK (Linear Algebra PACKage) și din limbajul MATLAB (MATrix LABoratory), reprezentative pentru problemele de calcul studiate.
   Seminarul urmarește aprofundarea problemelor prezentate la curs prin stabilirea unor versiuni și alternative algoritmice la soluțiile problemelor din curs, elaborarea algoritmilor pentru diverse cazuri particulare și rezolvarea unei multitudini de probleme, unele cu un pronunțat caracter aplicativ. Se are în vedere în mod deosebit asigurarea unei ridicate eficiențe algoritmilor elaborați și gestionarea judicioasă a spațiului de memorie disponibil.
   Laboratorul are ca principal obiectiv efectuarea unor experimente numerice care să confirme corectitudinea și performanțele numerice ale algoritmilor fundamentali prezentați la curs. Ca obiective secundare menționăm cunoașterea aprofundată a mediului de programare MATLAB, a funcțiilor MATLAB care rezolvă problemele abordate la curs, compararea performanțelor propriilor programe MATLAB cu cele ale funcțiilor MATLAB corespondente.
   Precizam ca efectuarea tuturor lucrarilor de laborator este o condiție obligatorie pentru acceptarea prezentarii la examen.
 
   Examinarea constă dintr-o apreciere a activității pe parcursul semestrului (prezența la curs, prezența și gradul de participare la activitățile de la seminar, activitatea la laborator și rezultatul colocviului de laborator) ­ cu o pondere de 30% din total ­ și un examen scris ­ cu o pondere de 70%.
   Examenul scris constă în rezolvarea unui număr de probleme (vezi exemple de subiecte de examen) cu acces la orice sursa de informație proprie (cărți, notițe etc.) adusă de student în sala de examen.
   Orice schimb de informații între studenți în timpul examenului, indiferent de momentul constatării (în timpul desfășurării examenului sau în timpul corecturii) se sancționează cu pierderea examenului. Se sancționează atât sursa cât și destinatarul schimbului de informații.
Structura cursului
  • Facultatea: Automatică și Calculatoare
  • Secția: Automatică și Informatică Industrială
  • Anul III, semestrul I
  • Puncte de credit: 5
  • Numar de ore :
curs: 42 ore (3 ore pe săptămână)
seminar: 14 ore (1 ore pe săptămână)
laborator: 14 ore (1 ore pe săptămână)
total: 70 ore
  • Titulari:
prof.dr.ing. Corneliu Popeea
prof.dr.ing. Boris Jora
  • Condiționări: cursul de Algebră liniară (anul I), cursul de Teoria Sistemelor (predat în paralel)
  • Modalitatea de apreciere și notare:
participarea la cursuri: 10 puncte
activitatea la seminar: 10 puncte
activitatea la laborator: 10 puncte
examen final: 70 puncte
total: 100 puncte
Observații
1. Efectuarea tuturor lucrărilor de laborator este o condiție obligatorie pentru accesul la examenul final.
2. Examenul final este un examen scris din toata materia predată.
3. În timpul desfașurării examenului scris studenții au acces la orice sursă documentară personală scrisă - cărți, notițe, fițuici etc.
4. Orice schimb de informații între studenți în timpul examenelor scrise, indiferent de momentul constatării (în timpul desfașurării examenului sau în timpul corecturii) se sancționează cu pierderea examenului. Se sancționează atât sursa cât și destinatarul schimbului de informații.
Programa analitică
1. Rezolvarea ecuațiilor matriceale liniare. Ecuații Sylvester. Ecuații Liapunov. 5 ore
2. Calculul funcțiilor de matrice. Calculul exponențialei matriceale. 5 ore
3. Tehnici numerice de procesare a modelelor sistemice liniare. Tehnici numerice in calculul polinomial. Conexiuni. Realizări de stare. Conversii de modele. Tehnici numerice de discretizare. 6 ore
4. Calculul răspunsului în timp al sistemelor liniare continue și discrete. Răspunsul liber al sistemelor liniare. Răspunsul la intrări liniar generate. Răspunsul la intrări etajate. Calculul răspunsului permanent. Calculul caracteristicilor de frecvență. 6 ore
5. Proceduri numerice de analiză sistemică. Teste numerice de stabilitate. Calculul descompunerii spectrale. Teste numerice de controlabilitate și observabilitate. Calculul descompunerii controlabile. Forma Hessenberg controlabilă. Calculul realizarilor minimale. Echilibrarea sistemelor liniare. 9 ore
6. Proceduri numerice de alocare a polilor pentru sistemele cu o intrare și cu mai multe intrari. Alocare suboptimală. Alocare robustă. 5 ore
7. Rezolvarea numerică a ecuațiilor matriceale Riccati. Problema liniar-pătratică. Ecuația matriceală algebrică Riccati continuă și discretă. Proceduri numerice de sinteză optimală. 9 ore
Suport pentru curs
   În cele ce urmează punem la dispoziția studenților conținutul cursului publicat de Calcul Numeric în Automatică. împreună cu notițele de curs, acesta reprezintă principala sursă de informație pentru studiul individual al studenților la această disciplină. De asemenea, prezentăm câteva recomandări bibliografice. O bibliografie extinsă poate fi gasită în cursul publicat.
 
  • Jora B., Popeea C., Barbulea S., Metode de calcul numeric în automatică. Sisteme liniare, Ed. Enciclopedică, București, 1996 — Lucrarea abordează, din unghiul de vedere al metodelor și procedurilor numerice, principalele aspecte ale analizei și sintezei sistemelor (automate) liniare (vezi prezentarea cursului). Sunt prezentați algoritmii cei mai performanți pentru rezolvarea problemelor de modelare, simulare, calculul performanțelor și a problemelor de proiectare asistată de calculator. Fiecare capitol conține un număr de probleme propuse. Lucrarea este însoțită de o bogată bibliografie. întrucât întregul tiraj al cărții este epuizat, pâna la apariția unei noi ediții, conținutul este accesibil prin mijloace electronice. În continuare prezentăm câteva titluri de cărți care pot fi surse suplimentare de informație pentru studenți.
  • Ionescu V., Lupaș L., Tehnici de calcul în teoria sistemelor, vol.1. Sisteme liniare, vol.2. Sisteme optimale, Editura Tehnică, București, 1973 — O carte care prezintă în momentul de față în primul rând o valoare istorică, fiind prima carte în domeniu în limba română. Datorită unei dinamici pronunțate a domeniului, unele proceduri numerice din această carte nu mai sunt de actualitate.
  • Ionescu V., Varga A., Teoria sistemelor. Sinteză robustă. Metode numerice de calcul, Ed. ALL, București, 1994.
  • Jamshidi M., Herget C.J. (ed.), Computer-Aided Control Systems Engineering, North-Holland, Amsterdam, 1985. (Mașinostroienie, Moscova, 1989.) — O culegere de studii pe problematica cursului de Calcul Numeric în Automatică.
  • Jamshidi M., Tarokh M., Shafai B. Computer-Aided Analysis and Design of Linear Control Systems, Prentice Hall Inc., Englewood Cliffs, NJ, 1992 — Unul din destul de puține titluri relativ recente consacrate în exclusivitate problemelor din cursul de Calcul Numeric în Automatică.
Seminarii
 
   Număr de ore: 14 (7 ședințe a 2 ore)
 
   Lista seminariilor:
 
1. Rezolvarea ecuațiilor matriceale Sylvester și Liapunov
2. Calculul funcțiilor de matrice. Calculul exponențialei matriceale
3. Modele sistemice. Calculul conexiunilor. Conversii de modele sistemice
4. Calculul răspunsurilor în timp și în frecvență. Utilizarea SIMULINK
5. Teste numerice de stabilitate, controlabilitate și observabilitate. Forma Hessenberg controlabilă. Forma Hessenberg observabilă
6. Proceduri numerice de alocare a polilor pentru sistemele cu o intrare și cu mai multe intrări
7. Rezolvarea unor probleme tip pentru examen
 
   Modul de desfășurare a seminariilor:
 
   Prezența studenților la seminarii nu este obligatorie, dar este cuantificată în punctajul acordat activității de la seminar. Seminariile se doresc a fi dezbateri deschise ale problemelor tratate la curs în următoarele scopuri:
 
  • lămurirea tuturor aspectelor legate de înțelegerea de către studenți a materiei predate la curs;
  • rezolvarea unor probleme reprezentative pentru materia predată la curs;
  • rezolvarea unor probleme de calcul numeric cu caracter aplicativ în diverse domenii;
  • rezolvarea unor probleme de tipul celor care sunt date la examen.
 
   Orice student are dreptul să solicite cadrului didactic lămurirea oricăror aspecte tehnice și științifice legate de subiectele programate pentru seminarul respectiv. Utilitatea seminariilor pentru studenți este în proporție covârșitoare condiționată de pregătirea lor pentru seminar.
 
   Rezolvarea problemelor propuse la fiecare seminar va fi făcută exclusiv de studenți, sub îndrumarea cadrului didactic. În nici un caz seminarul nu se va transforma într-o ședința de rezolvare a unor probleme de către cadrul didactic.
 
   Modalitatea de apreciere și notare:
 
   Punctajul acordat pentru activitatea de la seminar va reflecta, în proporții egale, urmatoarele:
 
  • participarea activa la dezbaterile din cadrul seminariilor;
  • prezența la seminarii.
 
   La cererea explicită a studenților se pot organiza seminarii suplimentare pe teme propuse de studenți numai dacă participarea medie la seminariile ordinare depașește 50% din efectiv.
 
Laborator
 
   Sediu: Sala ED 205
 
   Dotare: Rețea de 16 calculatoare PC (800MHz,HDD 10G,....)
 
   Numar de ore: 14 (7 ședințe a 2 ore)
 
   Lista lucrarilor de laborator:
 
1. Grafica MATLAB
2. Rezolvarea ecuațiilor matriceale Sylvester și Liapunov
3. Calculul funcțiilor de matrice. Calculul exponențialei matriceale
4. Modele sistemice. Calculul conexiunilor. Conversii de modele sistemice
5. Calculul raspunsurilor în timp și în frecvența. Utilizarea SIMULINK
6. Teste numerice de stabilitate, controlabilitate și observabilitate. Forma Hessenberg controlabila. Forma Hessenberg observabila
7. Colocviu de laborator
 
   Modul de desfășurare a laboratoarelor:
 
   Studenții au obligația de a se pregăti acasă pentru lucrarea de laborator curentă. Cadrul didactic care conduce ședință de laborator are libertatea de a testa acest lucru prin sondaj, scurte lucrări de control etc. și de a refuza participarea la ședința a studenților nepregătiți.
 
   În timpul ședințelor de laborator, fiecare student, în mod individual, va edita, corecta și testa programele MATLAB de implementare a algoritmilor de calcul numeric din lucrarea respectivă. Sarcinile studentului la ședința curentă de laborator vor fi considerate realizate numai dacă funcționalitatea programelor elaborate a fost prezentată cadrului didactic.
 
   Fiecare program elaborat de studenți va purta obligatoriu un antet-comentariu care va cuprinde:
 
  • identitatea studentului
  • data elaborării programului
  • informații minimale despre problema rezolvată:
    • ce problemă se rezolva
    • cum se rezolva (metoda folosită)
    • datele de intrare
    • datele de ieșire
 
   Studentul are dreptul să solicite cadrului didactic lămurirea oricaror aspecte tehnice și științifice legate de lucrarea respectivă.
 
   Fiecare lucrare de laborator este prevăzută cu sarcini pentru acasă care fac parte integrantă din lucrarea respectivă. Studenții care nu dispun acasă sau la camin de echipamentele de calcul necesare pentru realizarea acestor sarcini pot utiliza calculatoarele puse la dispoziția studenților de către decanatul facultații (sala EF013) și, în caz de suprasolicitare a acestora, tehnica de calcul din laboratorul de Metode Numerice (în afara orelor ocupate cu activități didactice).
 
   Modalitatea de apreciere și notare:
 
   Pentru a putea participa la examen studentul trebuie să efectueze toate lucrările de laborator și să aibe o notă finală la laborator de minimum cinci.
 
   Nota de la laborator va reflecta, în proporții egale, următoarele:
 
  • activitatea pe parcurs (pregătirea de acasă pentru fiecare ședință, activitatea din timpul ședințelor de laborator, realizarea sarcinilor pentru acasă); în acest scop fiecare student va prezenta la colocviul de laborator un dosar (o dischetă) cu toate programele realizate de el pe parcursul semestrului.
  • rezultatul colocviului de laborator; colocviul va consta din rezolvarea individuală, pe calculator, a unei probleme (simple - vezi exemplele prezentate) de calcul numeric.
 
   Studenții sunt obligați să participe la ședințele de laborator conform programării din orar. NU se organizează ședințe de refaceri de lucrări de laborator. În modul cu totul excepțional, având motive întemeiate, un student poate efectua o lucrare de laborator cu o altă subgrupă, în spațiul de timp de două săptămâni afectat lucrării respective.
Subiecte date la examen
 
   Exemple de subiecte date la examen se găsesc în secțiunea de download a acestui site.