Documente online.
Zona de administrare documente. Fisierele tale
Am uitat parola x Creaza cont nou
 HomeExploreaza
upload
Upload




Proiectarea Inteligenta Asistata in domeniul circuitelor electronice

Informatica


Proiectarea  Inteligenta Asistata în domeniul circuitelor electronice

5. Principiile Proiectarii Inteligente Asistate de Calculator

Procesul de proiectare propriu-zis cuprinde mai multe faze:



proiectarea conceptuala în care se decid structura de baza a modelului si metodele pentru obtinerea solutiei;

proiectarea de baza sau preliminara în care se face punerea în problema;

proiectarea de detaliu în care se decid specificatiile de detaliu ale partilor componente ale proiectului.

Din punct de vedere al informatiilor existente, procesul de proiectare se constituie în patru faze de detaliere a informatiei:

informatii cu caracter general, cerinte din care proiectantul dezvolta ideile pentru proiectarea conceptuala;

informatia data de experienta, si nu poate fi redata sub forma de expresii;

informatia exprimata relational, algoritmic si cantitativ;

informatia constituita în proceduri si în modele obiect, faza în care se determina definitia si mecanismul structurii obiectelor, pentru ca apoi, sa fie înglobata într-un model matematic, adica faza de model obiect.

Proiectarea se considera reusita, daca se pot mapa pe acest model relatii procedurale si calitative, de exemplu translatari directe, fara interventie exterioara, între baza de date si baza de cunostinte[35], [37].

În realitate, însa, exista multe reveniri la fazele anterioare, atunci când se dovedeste ca anumite ceri 434e45e nte nu sunt satisfacute. Dar, experienta a aratat ca esenta proiectarii propriu-zise se afla în faza de proiectarea conceptuala. Astfel, în ultimii ani, s-a dezvoltat o noua viziune asupra proiectarii ingineresti în care se pune problema rezolvarii conflictelor existente în diferite faze ale procesului de proiectare [37].

Utilizarea sistemelor traditionale, de Proiectare Asistata cu Calculatorul, a contribuit la rationalizarea procesului de proiectare, adica la îmbunatatirea calitativa a rezultatelor proiectarii. Anumite aspecte au ramas nerezolvate, cum ar fi conflictele aparute în procesul de proiectare, cu accentuare pe comunicarea între partile implicate, ceea ce ar conduce la reducerea erorilor existente în sistemele traditionale de Proiectare Asistata de Calculator. Pentru început, vom analiza inconvenientele sistemelor de proiectare traditionale, care conduc la aceasta noua abordare. Astfel, sistemele traditionale de Proiectare Asistata de Calculator:

nu erau sisteme inteligente, adica admiteau erori de rationament ale proiectantilor, si nu puteau furniza raspunsuri la întrebarile acestora;

nu erau dotate cu o interfata de comunicatie pentru întreaga problema - adica, proiectantul furnizeaza intrarea pentru fiecare problema candidat si verifica corectitudinea presupunerilor, ceea ce face munca ineficienta;

nu erau dotate cu mediu adecvat unui sistem conflictual - adica, interfetele sau datele de intrare nu sunt definite unitar pentru întreg ansamblul de probleme, iar sistemele necesitau translatari de date între diferite subsisteme. Desi schimburile de date sunt facute automat, modul în care acestea se fac, produce o pierdere de înteles ceea ce este fatal pentru o procesare inteligenta.

De aici, deriva câteva caracteristici ale sistemelor proiectarii inteligente asistate de calculator:

cooperarea întregii problematici existente în procesul de proiectare din însasi faza de proiectare conceptuala;

cumularea si cooperarea cunostintelor existente în procesul de proiectare din însasi faza de proiectare conceptuala;

integrarea si cooperarea modelelor de descriere si reprezentare a datelor ce trebuie sa fie unice si comune în toate fazele proiectarii, ceea ce nu înseamna doar schimbarea interfetelor;

inteligenta sistemelor, ceea ce presupune un suport inteligent pentru proiectant, interfete inteligente, functii inteligente - baze de cunostinte, capabilitate de inferenta care sa poata întelege intentiile proiectantului, sa detecteze erorile, sa sugereze alternative, sa raspunda la întrebari etc.; dintre acestea, cea mai importanta o constituie detectarea erorilor, care reduce timpul si costul proiectarii [34], [35];

reducerea timpului de detectare a erorilor, marirea acuratetei analizei sau sintezei, micsorarea costurilor, în special, a celor de întretinere.

Proiectarea Inteligenta Asistata de Calculator utilizeaza conceptele dezvoltate de ingineria de cunostinte [40] si anume:

implementarea unui mediu caracterizat de asimilarea elementelor de inteligenta artificiala;

facilitati inferentiale si de comunicare cu studentul - viitorul inginer proiectant;

metode de descriere unitara de date si de înglobare a cunostintelor de proiectare cum ar fi: reprezentarea cunostintelor (reprezentarea proiectului prin obiecte si a operatiilor între obiecte), prelucrarea restrictiilor, achizitia cunostintelor, inferenta si controlul cunostintelor).

Contextul care face obiectul rezolvarii problemelor conform principiilor ingineriei de cunostinte este definit de:

dificultatea de a analiza sau sintetiza problema;

existenta mai multor surse de cunostinte, diferite calitativ si cantitativ, o singura sursa fiind insuficienta pentru determinarea solutiei;

dificultatea stabilirii metodelor de descompunere a problemelor în subprobleme ce comunica si coopereaza între ele

coordonarea rezolvarii problemelor ce presupune comunicare între proiectantii ce au obiective conflictuale.

În acest capitol este abordata problema modelarii proiectarii ingineresti, conform principiilor ingineriei de cunostinte, deci principiile Proiectarii Inteligente Asistate de Calculator.

5.1. Bazele de Cunostinte  în Proiectarea Inteligenta Asistata de Calculator

Concepte, Definitii

Caracteristica sistemului ce contine baza de cunostinte este aceea de a incorpora analiza (expertiza) dintr-un domeniu specific si de a putea utiliza tehnici de rationament simbolic pentru a rezolva problemele din domeniu, fiind necesara participarea unui "expert", în asa fel încât sa fie capabil sa emita rationamente si sa traga concluzii [38], [39], [41], [43].

Aceasta definitie înfatiseaza caracteristicile unui sistem bazat pe cunostinte: expertiza, rationamentul simbolic, întelegerea si autoînvatarea.

Analiza. Sistemul utilizeaza o mare cantitate de cunostinte despre domeniul proiectarii asistate a circuitelor electronice; acestea sunt, în esenta, sisteme de procesare a cunostintelor fata de sistemele obisnuite care sunt procesari de date. Caracteristica acestor cunostinte este data de faptul ca ele sunt, adesea, subiective, si se pot schimba substantial.

Accesul la cunostinte nu conduce la un sistem ce contine baze de cunostinte. Analiza presupune abilitatea de a utiliza aceste cunostinte în mod eficient, pentru a conduce la o solutie rapida. Analiza este robusta când, avînd de a face cu date incomplete, incerte, se ajunge la rezultate acceptabile.????

Rationamentul simbolic. Daca sistemele conventionale realizeaza o procesare algoritmica asupra structurii de date care au ca specific faptul ca avem cunostinte "ascunse" în codul programului printr-o "traducere" a acestora în algoritm, la acest sistem, care sistem?????cunostintele sunt reprezentate explicit în forma simbolica într-o structura numita baza de cunostinte. Sistemul proceseaza aceste structuri în timpul rezolvarii problemelor. Acest "rationament" este executat de asa numitul motor de inferenta, care utilizeaza setul de reguli euristice, specifice domeniului. Sistemul trebuie sa fie capabil sa converteasca orice problema din domeniu într-o forma potrivita unei rezolvari eficiente, asa cum se produce în cazul unui expert uman.

Profunzimea Un sistem ce contine baza de cunostinte are profunzime, ceea ce presupune ca el opereaza într-un domeniu îngust, abordând probleme dificile (de tipul celor care reclama "experti" umani), fapt care presupune utilizarea unor reguli complexe. Complexitatea aduce cu sine probleme noi: gestionarea unor baze "mari" de cunostinte, pentru care trebuie asigurata corectitudinea si consistenta la adaugarea de noi reguli; reprezentarea acelorasi cunostinte în diferite moduri si pe niveluri de detaliere diferite; rezolvarea problemelor conflictuale pentru agenti care lucreaza în cooperare

Autoînvatarea. O alta cerinta pentru acest sistem consta în abilitatea de a rationa asupra propriului proces. În procesul de autoînvatare este importanta capacitatea de explicare. Sistemul trebuie sa fie capabil sa explice cum a ajuns la anumita concluzie sau de ce se solicita o anumita informatie. În sistemele actuale, aceasta se face trasând linia de inferente si afisând regulile utilizate în timpul acestei inferente.

Aceasta se poate numi cu greu "explicatie reala". În acest caz, este necesar sa existe o abilitate de a conecta pasii de inferenta cu principiile fundamentale ale domeniului cum ar fi: justificarea, abilitate care necesita cunostinte despre aceste principii de baza. Este necesara, de asemenea, capacitatea de a ajusta explicatia cu gradul de cunostinte al utilizatorului în domeniul dat. Un alt aspect al autoînvatarii consta în posibilitatea de a exploata metacunostintele (cunostinte despre cunostinte sau domeniu de cunostinte). Aceste cunostinte pot fi facute explicit, în acelasi mod ca si cunostintele din domeniu, rezultând metareguli care pot fi utilizate pentru a ghida strategia de rezolvare a problemei.

Componentele unui sistem cu baza de cunostinte

Nucleul sistemului expert consta în baza de cunostinte si motorul de inferenta. Baza de cunostinte contine, într-o forma simbolica, faptele si regulile ce capteaza expertiza din domeniu. Motorul de inferenta aplica aceste reguli, utilizând o strategie sau combinatii posibile de strategii de rezolvare pentru un caz particular, ce depinde de problema; rezultatele intermediare si finale sunt stocate într-o baza de date numita "memorie de lucru" deoarece continutul ei este pastrat doar pe parcursul sesiunii de lucru.

Modulul de interfata utilizator conduce dialogul cu utilizatorul într-un mod adecvat, folosind, de obicei, o submultime restrictiva din limbajul natural sau, prin intermediul unui editor grafic, cu rolul de a interpreta comenzile, întrebarile si datele furnizate de utilizator, si de a prezenta rezultatele, de a raspunde la intrebari si de a explica rationamentele?????

Modulul explicativ este o parte a interfetei cu utilizatorul, în care se încearca furnizarea de explicatii utile, pline de înteles, sau adaptarea nivelului de explicare cu nivelul de cunostinte al utilizatorului; acest modul are propria "inteligenta" si cunostinte despre modul de conducere al unui dialog cu utilizatorul, construind, deci, un model al utilizatorului.

Alt modul aditional, utilizat de dezvoltatorul sistemului expert este modulul de achizitie a cunostintelor, care realizeaza cresterea vitezei procesului de adaugare de reguli noi în baza de cunostinte.

                               Subsistem                     Subsistem                     Inginerul

                               explicativ                       achizitie                            de

                                                                   cunostinte                    cunostinte

Interfata

utilizator                   Nucleu                             Motor

                                                                      inferenta

                           Memoria de                   Baza de

                             lucru                           cunostinte

Figura 20. Componente ale Sistemului cu Baza de cunostinte

Reprezentarea cunostintelor

Una din problemele principale ale inginerului de cunostinte este aceea de a selecta mecanismul de reprezentare ce poate încorpora caracteristicile specifice domeniului problemei, în prezent, nefiind o metoda universala de reprezentare a cunostintelor.

Acea parte a sistemului expert ce incorporeaza cunostintele unui domeniu este numita baza de cunostinte. Exista, în principal, 2 tipuri de cunostinte ce trebuie reprezentate în sistem: cunostinte declarative si cunostinte procedurale.

Cunostintele declarative descriu obiectele din baza de cunostinte, utilizate de expert (fapte, termeni, concepte etc.), precum si relatiile dintre obiecte. Aceasta este numita baza de fapte.

Cunostintele procedurale din baza de cunostinte contin informatii despre modul de utilizare a obiectelor, pentru a infera concluzii, eventual, noi. Acestea formeaza baza de reguli.

Aplicatie Proiectarea Asistata de Calculator   <==            Statie de lucru

            nivel aplicatie       <===              Interfata modelului de aplicatie

            nivel ingineresc             

            nivel implementare         <===    Baza de Date proprie

                        Server               ==>      Sistem de date

                                                            Sistem de acces

                                                            Sistem de stocare

                                                            Baza de Date publica

Figura 21. Proiectarea Asistata de Calculator Inteligent

Baza de fapte este constituita din faptele incluse în procesul de reprezentare a cunostintelor. Se disting mai multe procedee de reprezentare a faptelor.

Circuitele semantice sunt acele circuite în care nodurile reprezinta concepte (cuvinte, obiecte), iar relatiile dintre concepte sunt prezentate prin legaturi asociative. Ideea acestor circuite apartine lui M. Ross Quillian utilizata pentru a modela comportamentul limbajului uman. Cel care proiecteaza reteaua semantica are libertatea de a atribui un înteles precis (semantic) nodurilor si relatiilor; acesta este neajunsul major al circuitelor semantice, întelesul relatiilor lor nu este evident din structura circuitului, ci trebuie cunoscuta interpretarea lui. Un mijloc simplu de reprezentare a cunostintelor este tripleta obiect_valoare_atribut; faptele sunt codificate în asemenea triplete. Aceasta reprezentare este un caz special de retea semantica având 2 tipuri de legaturi: obiect _atribut  si valoare_atribut.

Frame-uri (cadre). Reprezentarea bazata pe frame-uri, utilizata în acest proiect, este o retea semantica unde singurele legaturi permise sunt de tipul "instanta" sau "subclasa". Toata informatia ramasa este codificata în noduri numite uzual "frame". Un "frame" descrie toate proprietatile relevante ale unui obiect sau fapt. Fiecare proprietate este reprezentata ca o "entitate" în cadru. Continutul "entitatii" este o valoare a proprietatii sau un pointer la un alt cadru unde poate fi gasita valoarea, regulile de obtinere a valorii (se calculeaza, se citeste) sau domeniul de valori ale proprietatii, limitele numarului de valori, componentele.

Fiecare "frame" are o "entitate" speciala  "apartine_la" care permite unui frame sa mosteneasca proprietati de la alte frame-uri, ceea ce este echivalentul legaturii din reteaua semantica.

Exista o distinctie între "instante" si "subclase", care sunt utilizate pentru definirea unei structuri ierarhice.  Frame-urile "clasa" sunt utilizate pentru a defini caracteristicile comune tuturor membrilor din clasa, de exemplu, o proprietate mostenita de toti membrii din clasa.

Ideea frame-urilor apartine lui Minsky (1981) care le-a utilizat pentru a trata prototipurile si perspectivele multiple.

Baza de reguli. Ca si la cunostintele declarative, exista mai multe mecanisme de reprezentare a cunostintelor procedurale.

Proiectant


Figura 22. Mecanismul de generare a bazei de reguli

Sisteme logice Cunostintele procedurale sunt utilizate pentru a extrage concluzii din fapte deja stabilite, pentru care se utilizeaza logica. Logica se ocupa doar cu validarea argumentelor si cu metode de derivare a concluziilor valide din faptele date. Sistemele logice utilizeaza asa numitul calcul cu predicate.

Mecanismul primar pentru derivarea de noi asertiuni din cele existente este modus ponens : "daca P atunci Q" ceea ce însemna ca, daca P este adevarat, atunci Q este adevarat.

Sistemele logice au neajunsuri când sunt utilizate în aplicatii "reale", pentru ca se lucreaza numai cu "fals" sau "adevarat", si nu trateaza incertitudini sau fapte incomplete.

Sisteme de reguli. Modalitatea cea mai uzuala pentru reprezentarea cunostintelor procedurale este: "daca premisa atunci concluzie".

În aceasta forma, regulile sunt similare cu propozitiile din sistemul logic cu deosebirea ca acestea sunt afirmatii generale, adesea euristice, care, în anumite situatii limita, pot fi invalide. În plus, pot exista calcule în zona premiselor, iar concluziile pot apela programe externe pentru afisare pe ecran sau interogare. O forma mai potrivita pentru astfel de reguli este : "daca situatie atunci actiune".

Acestea sunt asa numitele "reguli de producere"; zona de control a inferentei este cea pentru care "situatie" se "potriveste" (pattern-matching) cu starea curenta a bazei de fapte; daca da, "actiunea" se executa, transformând situatia în solutie. Când nu se întâmpla asa, se încearca o alta regula. De aici, rezulta necesitatea unui mecanism de control, care sa selecteze din multimea de reguli cele adecvate unui subiect.

Mecanismul de rationament

Mecanismul de rationament este esenta "motorului de inferenta", care are rolul de a aplica regulile din baza de reguli asupra faptelor din baza de fapte. Exista 2 strategii de utilizare a regulilor: "înlantuire_înapoi" si "înlantuire_înainte". Cele 2 strategii pot fi utilizate separat sau combinate permitând inginerului de cunostinte s-o aleaga pe cea mai potrivita sau chiar sa comute în timpul utilizarii pe orice din modurile de înlantuire.

Înlantuire_înainte. Strategia de înlantuire_înainte este denumita rationament condus de antecedent sau condus de date. Un motor de inferenta cu înlantuire_înainte va selecta o regula ale carei premise se potrivesc cu faptele cerute, iar ca rezultat al executarii regulii se pot adauga fapte noi în baza de fapte; mecanismul se continua pentru noi reguli candidat pâna la epuizarea regulilor ce se pot aplica. Acest mecanism porneste de la fapte pentru a începe rationamentul; acesta este un proces de selectie a regulii urmatoare, cea mai potrivita si în mod necesar sa fie aplicata. Acest proces este numit rezolutie de conflict.

O solutie simpla ar fi parcurgerea tuturor regulilor începând cu prima si de a o alege pe prima potrivita. Aceasta procedura are dezavantajul ca ordinea regulilor devine importanta, iar procesul de adaugare de noi reguli devine mai dificil. Incorporarea structurii de control este realizata în însasi sistemul de producere a regulilor, utilizând obiective explicite, elementele din memoria de lucru reprezentând o stare dorita. Fiecare regula se va potrivi unui tip de obiectiv si va fi selectata când apare acel obiectiv. Aceasta metoda necesita reguli speciale, care sa recunoasca prezenta unui obiectiv particular, sa-l dezactiveze si sa-l elimine din memoria de lucru putând chiar sa creeze un nou obiectiv.

Înlantuire_înapoi. Acest mecanism începe sa lucreze în baza unei ipoteze date pe care încearca s-o "dovedeasca" utilizând fapte si reguli din baza de cunostinte. Înlantuire_înapoi nu are nevoie de fapte în baza de fapte, deoarece acest mecanism apeleaza reguli încercând sa stabileasca validitatea premisei regulii. De aceea, se va selecta fiecare dintre premise pe rând, ca o noua "subipoteza", si va încerca s-o dovedeasca în mod identic cu ipoteza originala. Acesta este în mod inerent un proces recursiv. Daca nu exista nici o regula ce concluzioneaza un anumit fapt, motorul de inferenta se va îndrepta spre utilizator, întrebând despre fapte ce nu se gasesc în baza de fapte sau nu pot fi stabilite prin reguli. Mecanismul de "înlantuire_înapoi" are propriile probleme de control. De exemplu, sistemul trebuie sa dovedeasca o ipoteza A si de aceea trebuie sa dovedeasca subipotezele X, Y, Z; problema care se pune este: daca mai multe reguli pot fi aplicate pentru a atinge un obiectiv, care din ele trebuie selectata mai întâi?!

Aceasta este o problema de ordonare de reguli; ordonarea este o operatie la alegerea inginerului de cunostinte si anume, conform criteriului: 'cea mai complexa premisa', 'cea mai simpla premisa', 'regula cu cea mai mare pondere' etc

Prima problema în mecanismul de rationament este "selectarea obiectivului", care este o problema de traversare a arborelui, unde nodurile lui sunt obiectivele, iar ramurile leaga antecedenti la descendenti.

Mecanismul de "înlantuire_înapoi" lucreaza într-un mod numit "primul din adâncime": când un obiectiv reclama rezolutia diferitelor subobiective, el va genera si cauta exhaustiv drumul ce corespunde primului subobiectiv "de sus în jos" înainte de a se reîntoarce la nodul superior si de a genera si cauta urmatorul drum.

În "cautarea pe nivel", controlorul va produce câte un nod pentru fiecare subobiectiv inferior nodului curent si va testa fiecare nod în ordinea "stînga-dreapta" înainte de a coborî în ierarhie.

În tehnica de cautare "mai întâi cea mai buna", controlorul va genera toate nodurile de pe primul nivel, dar va alege nodul cu cel mai mic numar de subobiective pentru expansiune.

Modulul explicativ. Explicarea este în mod uzual legata de procesul de inferenta. Prin retragerea stivei de obiective, un sistem de înlantuire-înapoi poate spune de ce se extrage anumite informatii, cum ar fi: ce obiectiv se proceseaza, ce regula poate atinge acel obiectiv sau cum s-a ajuns la anumita concluzie. Aceasta este, mai degraba, o asistare în depanarea rationamentului, decât o explicatie reala. Un alt neajuns al subsistemelor de explicare este mecanismul de control inclus în procesul explicativ. Astfel, strategia utilizata de mecanismul de control va fi dictata de eficienta rationamentului, si nu are legatura cu strategia de rationament, utilizata de expertul uman. Ideal ar fi ca aceste "cunostinte de control" sa poate fi disponibile subsistemului explicativ în aceeasi masura ca si baza de cunostinte. Aceasta ar putea fi rezolvata prin formularea de reguli de metacunostinte, utilizate ca reguli specifice domeniului.

Rationamentul inexact. Cunostintele si faptele reprezentate nu sunt sigure; la fel si concluziile rezultate din reguli euristice nu pot fi universal valabile. În mod uzual, în lumea reala, se lucreaza cu asertiuni de felul "probabil", "foarte posibil", "uneori", denumite pe scurt incertitudini. În unele cazuri, este posibil sa se atribuie probabilitati diferitelor ipoteze si asertiuni, de exemplu, când acestea sunt derivate din analize statistice ale unui mare numar de date experimentale. În acest caz, se pot folosi teoremele Bayes. În cazul în care se manipuleaza concepte ele însele inexacte, se poate utiliza teoria multimilor fuzzy.

Reprezentarea orientata pe obiect în Proiectarea Asistata de Calculator

În dezvoltarea unei scheme de reprezentare a proiectarii asistate, prima etapa se caracterizeaza prin descompunerea acesteia într-o colectie de obiecte (entitati) împreuna cu o colectie de relatii dintre acestea. În orice moment, continutul acestor colectii constituie o stare; transformarile de stare aparând în timpul crearii si stergerii obiectelor.

Reprezentarea orientata pe obiect pastreaza aceasta descompunere din timpul etapei de analiza pâna la final. Reprezentarea este facuta sub forma de obiect vazut ca o structura de date împreuna cu un set de operatii ce interactioneaza cu alte obiecte fapt ce permite simularea transformarilor de stare si realizarea altor obiecte.

În acest fel, se produce o mapare unu-la-unu între obiectele lumii reale si obiectele modelului.

Reprezentarea pe obiect este un cadru organizational, ce permite crearea obiectelor si gestioneaza interactiunile dintre obiecte. Caracteristicile conceptiei orientate pe obiect sunt: abstractizarea datelor si încapsularea lor, ierarhii de clase si obiecte, definirea metodelor si transmiterea mesajelor, polimorfism, redefinire si legare târzie.

Abstractizarea datelor furnizeaza metodologia de ascundere a informatiilor, prin definirea fiecarui obiect, data de comportarea lui la aplicarea unui set de operatori, iar accesul la aceste obiecte facându-se prin intermediul acestor operatori. Încapsularea înseamna "împachetarea datelor" ce definesc obiectul si operatiile cu el într-un asemenea mod încât studentul este obligat sa aplice doar operatiile definite la implementarea pe datele asociate obiectului. Ideea de baza este ca fiecare obiect apare ca fiind înzestrat cu memorie proprie persistenta, reprezentând starea lui, împreuna cu o interfata publica sub forma unei multimi de operatori, adica protocolul obiectului ce este utilizat pentru a schimba starea sau pentru a extrage informatii.

Obiectele ce au un comportament similar sunt grupate pe ierarhii de clase si obiecte. Radacina ierarhiei este obiectul, adica clasa din care toate celelalte clase reprezinta subclase directe sau indirecte. Fiecare clasa are, în mod uzual, un numar de instante. Memoria privata a unui obiect este similara unei înregistrari, diferitele câmpuri având nume de "variabile_instante", deoarece acestea apar în fiecare instanta a clasei; însa, aceasta difera semnificativ de înregistrarile traditionale din bazele de date, datorita faptului ca "variabile_instante" sunt ele însele obiecte.

Aceasta grupare a obiectelor în ierarhii de clase si subclase permite obiectelor dintr-o subclasa sa mosteneasca atât structura, cât si operatiile superclasei lui. Relatia dintre o subclasa si superclasa este de tipul "apartine_la". În cazul ierarhiilor arborescente, o subclasa poate mosteni direct, de la o singura superclasa, si indirect, de la linia stramosilor acesteia pâna la clasa obiect. Aceasta este asa-numita mostenire singulara, spre deosebire mostenirile multiple unde este permis unei clase sa mosteneasca de la mai multe superclase (organizare tip lattice).

Obiectele comunica prin transmiterea mesajelor de la un obiect la celalalt. Mesajul contine 3 parti: obiectul caruia i se transmite mesajul, numele mesajului si o lista de argumente prin care mesajul instruieste obiectul sa-si schimbe starea interna sau sa returneze un obiect. Metodele se definesc pentru clase, si nu pentru instante.

Asociat fiecarui mesaj, este o metoda reprezentata printr-o lista de proceduri pentru rezolvarea mesajului. Definitia mesajului contine 3 parti: numele clasei careia i se aplica metoda, formatul mesajului si corpul de cod executabil ce implementeaza mesajul.

Mesajele pot fi redefinite, în asa fel încât sa poata fi transmise aceleasi mesaje catre instante din diferite clase si obtinerea unor mesaje adecvate, dar diferite (un exemplu este mesajul "afisare" care, transmis obiectelor, le cere sa se afiseze; fiecare instanta a clasei ce primeste mesajul "afisare" va gasi, în mod automat, metoda adecvata în dictionarul de metode al propriei clase.

Legarea târzie este un corolar al redefinirii; datorita ambiguitatii introduse de redefinire, sistemul nu poate lega numele operatiilor cu programele în timpul compilarii deoarece nu stie tipul obiectului pâna în momentul rularii; adesea, numele operatiilor trebuie traduse în adrese program, la momentul rularii. Legarea în aceasta etapa este numita întârziata sau dinamica.

Polimorfismul este proprietatea obiectelor de a raspunde în mod adecvat aceluiasi mesaj:

cerintele bazelor de date pentru Proiectarea Asistata de Calculator pot fi rezumate astfel: extinderea si modificarea dinamica a schemelor, suport pentru manipularea unei varietati de tipuri de date (vectori, matrice), încrustarea informatiei semantice, procesarea tranzactiilor ingineresti, gestionarea soft-ului de aplicatie de catre baza de date, preprocesarea distribuita a bazelor de date, baze de date temporare, facilitati de reprezentare a obiectelor compuse si manipularea lor ca o singura entitate;

cerintele bazelor de cunostinte pentru Proiectarea Asistata de Calculator pot fi rezumate astfel: independenta de aplicatie, limbaj, dispozitive, implementarea mostenirii la nivelul comportamentului, furnizarea unei ierarhii multinivel, modelarea dinamica, comunicare flexibila, interpretoare de reguli si constrângeri, facilitati de arhivare.

Potentialul de a rezolva aceste probleme depinde de disponibilitatea unei anumite euristici (reguli de baza, cunostinte empirice utilizate pentru a ghida cautarea într-un numar mare de alternative si solutii potentiale). Proiectarea creativa este dificil de tratat din punct de vedere al completitudinii, deoarece nu exista o suprapunere unu-la-unu între structura si functie. De aceea, este necesara proiectarea euristica.

În dezvoltarea de concepte bazate pe cunostinte, în sinteza unui circuit electronic, s-au abordat 2 directii alternative de cautare sau rationamente ale solutiilor si anume, prima bazata pe rationamente de înlantuire-înainte, iar a 2-a pe rationamente de înlantuire-înapoi. Ambele abordari se bazeaza pe cautarea într-un arbore sau "spatiu" de noduri, solutii sau "stari" potentiale.

Rationamentul de înlantuire-înainte porneste de la informatia de baza, care defineste problema si încearca sa o promoveze catre o stare_solutie, prin diferite stari intermediare, de a lungul unui drum. Avantajul principal al rationamentului cu înlantuire-înainte consta în abilitatea acestuia de a enumera, în mod sistematic si nepartinitor, structura tuturor componentelor potential capabile sa satisfaca cerintele proiectului; dezavantajele acestei abordari constau în faptul ca nu garanteaza producerea unei solutii si necesita timp de proiectare relativ mare. Acesta este pretul platit pentru o cautare amanuntita în spatiul solutiilor.

Rationamentul de înlantuire-înapoi începe din stari_solutii, prespecificate, catre stari tinta. Strategia de rationament cu înlantuire-înapoi este numita si sinteza echivalarii sabloanelor. Acest concept porneste de la necesitatile de proiectare functionala.

Ele pot fi legate în maniera unu-la-unu cu structurile care genereaza regulile. Acest proces a fost automatizat printr-o abordare bazata pe "învatarea masinii", construit(a)??? cu ajutorul circuitelor neuronale. Utilizând acest concept, o problema de proiectare poate fi rezolvata furnizând starea tinta dorita, prespecificata în baza de cunostinte a sistemului. În plus, pot fi facute modificari în structurile stocate anterior, fiind utilizate pentru a produce clase specifice într-o încercare de "acordare" în vederea obtinerii optimului.

Avantajul principal al rationamentului cu înlantuire-înapoi consta în abilitatea acestuia de a garanta o solutie pentru probleme de proiectare, daca starea_solutie dorita a fost introdusa anterior în sistem; dezvoltarea bazei de cunostinte va satisface aceasta cerinta.

Deoarece teoria grafurilor poate fi efectiv utilizata pentru a reprezenta structura unui circuit într-un mod compact, tehnicile de cautare euristica au fost aplicate pentru a enumera grafurile corespunzatoare, în asa fel încât sa poata fi evitat un timp de cautare nerezonabil. Utilizând strategia (rationamentul) de înlantuire-înainte, informatia de baza care defineste problema este furnizata sistemului si include urmatoarele: numarul de elemente conducatoare (ce trebuie fixate si ce trebuie realizate), numarul de elemente conduse, numarul maxim de legaturi.

Împreuna cu aceste informatii, anumite reguli (cunostinte predefinite) sunt utilizate pentru a limita cautarea în spatiu de grafuri ce pot satisface necesitatile functionale prespecificate si orice cerinte cunoscute, ce caracterizeaza problema.

Selectarea tipului de topologie, utilizând baze de cunostinte

Topologia poate fi definita de o multime de parametri, deoarece valorile parametrilor nu sunt incluse; în schimb, se include natura relatiilor dintre parametri. Prin separarea topologiei de functiuni, pasii sintezei pot fi organizati utilizând baze de cunostinte.

Baza de reguli contine informatii despre topologia si functiunile circuitului.

O regula ce se ocupa de topologie ar putea fi: "Daca exista mai mult de 2 <conditie>, Atunci topologia este invalida

Un alt tip de regula ce se ocupa de functiuni ar putea fi "Daca exista mai mult de 2 <conditie> .. , Atunci topologia nu poate produce o <situatie>".

Cea de a 2-a regula introduce una din trasaturile caracteristice bazelor de cunostinte. În timp ce regula este, în general, valida, totusi functiunea produce, în anumite conditii, fapte nedorite.

Baza de cunostinte interpreteaza aceste situatii prin ponderea pe care proiectantul o atribuie fiecarei reguli; cu cât ponderea este mai mare, cu atât regula are o mai mare utilitate.

Proiectantul introduce un set de cerinte prin intermediul interpretorului care va interpreta dialogul, iar regulile sunt adaugate la baza de reguli. Generatorul de topologii enumera topologiile posibile, pe care programul de evaluare le estimeaza pentru a clasifica topologiile candidat în bune sau rele, rezultatul aprecierii fiind afisat grafic, împreuna cu rationamentul facut pentru a determina rezultatul. Generatorul de topologii utilizeaza o reprezentare în spatiul starilor, ce consta în existenta "starii" si a "operatorilor". O stare este conditia procesului de a genera topologia pornind de la definitia ei printr-o multime de entitati de stare; pornind de la o stare de început, aplicarea continua a operatorilor va genera întreg spatiul starilor.

Proiectantul introduce propozitii de forma verb-subiect, subiect-verb-obiect sau de tipul "daca subiect-verb-obiect, atunci subiect-verb-obiect"; interpretorul cauta sa înteleaga propozitiile culegând cuvintele cheie. Propozitiile corecte sunt retinute în baza de reguli împreuna cu o pondere acordata de proiectant.

Deoarece generarea topologiilor va rezulta dintr-un numar nelimitat de posibilitati (explozie combinatoriala), este necesara o tehnica de cautare, ce utilizeaza cunostintele generale despre spatiul starilor pentru a limita cautarea. Aceste cunostinte euristice nu pot garanta limitarea cautarii. Tehnica de cautare este "prima cea mai buna".

Pentru ca evaluatorul sa poata folosi informatia din baza de cunostinte, acestea trebuie sa fie reprezentate într-o forma usor accesibila, în vederea stocarii, regasirii, extragerii si modificarii.

Sistemul de producere a regulilor consta dintr-o baza de reguli, un context si un interpretor. Baza de reguli contine productii de forma "daca situatie, atunci actiune".

Contextul pastreaza informatia despre starea curenta si anume matricea starilor, numarul de legaturi. Ponderea starii curente este initializata cu ponderea maxima determinata de însumarea  ponderilor asignate regulilor de baza.

Interpretorul efectueaza evaluarea, cautând productii în baza de reguli, analizând partea "daca ." a fiecarei productii pentru a vedea daca este adevarata în baza de contexte. Daca este adevarata, productia este executata prin determinarea partii "atunci." adevarata în contextul dat. Daca DA, ponderea asignata acestei reguli este scazuta din ponderea curenta, altfel ponderea este adaugata. În acest mod, regulile care nu se aplica nu au nici un efect, iar cele care nu sunt adevarate pentru o topologie au efect negativ. Prin aplicarea continua a productiilor, interpretorul poate evalua o topologie de la zero (toate cerintele satisfacute) pâna la un anumit maxim (nici o cerinta satisfacuta).

Procesul de proiectare este caracterizat prin interactivitate, evaluare si modificare a unui proiect, în scopul eliminarii unor probleme sau a satisfacerii unor cerinte noi, în locul crearii unui proiect nou, pornind de la cerintele de baza, în asa fel încât proiectul sa convearga la o solutie acceptabila. Reproiectarea nu înseamna o cautare aleatoare, ci este implementata ca un algoritm care utilizeaza o tabela de dependente si tehnici de cautare euristica pentru a lega modificarile propuse în proiect de îmbunatatirile dorite.

Modelul de proiectare necesita 5 modele: specificarea problemei, proiectarea initiala, evaluarea, acceptabilitatea si reproiectarea. Un expert în domeniu interactioneaza cu programul pentru a furniza cunostintele necesare într-un domeniu nou; aceste cunostinte, împreuna cu informatiile specifice, furnizate de utilizator, formeaza baza de cunostinte, necesara pentru a rezolva probleme dintr-un domeniu nou. Se determina fie un proiect preliminar din rutinele specificate de expert, fie se accepta un proiect specificat de utilizator. Proiectul poate fi analizat din punctul de vedere al performantei dorite, prin evaluarea fiecarui obiectiv al problemei, comparând si combinând indicii de performanta pentru o evaluare globala a proiectului. Daca acesta este acceptat, atunci procesul este complet; daca nu, faza de reproiectare se reia.

Programul începe prin selectarea unui obiectiv din lista de obiective ordonate în functie de o prioritate specificata de utilizator (prioritatea poate fi modificata pentru a se produce o îmbunatatire a proiectului).

O variabila a proiectului este selectata pentru a produce o schimbare în functia obiectiv. Programul utilizeaza cunostinte euristice, furnizate de expertul în domeniu, despre care anume variabila trebuie modificata pentru a determina o modificare în obiectiv. Aceste cunostinte reflecta experienta expertului care indica entitati anume de modificat pentru a produce cea mai mare schimbare a obiectivului urmarit si cel mai mic efect asupra celorlalte obiective ale proiectului.

Fiind un hibrid între euristica si metode numerice, schimbarile în proiect sunt selectate alegându-se cea mai potrivita din cele 2 metode: euristica selecteaza ce este de schimbat, iar dependentele numerice selecteaza gradul de schimbare. Deoarece spatiul de proiectare este complex, cautarea este condusa de ambele tipuri de cunostinte.

Reprezentarea cunostintelor

Sistemele bazate pe reguli RBS (rule-based system) pot implementa cunostinte empirice (relatia asociativa între conditie si actiune) si logice (relatia cauzala). Ele permit o mapare între conceptele de functie si atribut, desi apartin unor categorii diferite de concepte. Regulile au asociat un factor de incertitudine. Datorita naturii cunostintelor din faza de proiectare conceptuala si anume, ambigua, regula trebuie sa fie interpretata ca un rationament de tipul "forward reasoning" [daca (conditie), atunci actiune] sau "backward reasoning" [(conditie), când (actiune) produsa] deoarece factorii de incertitudine nu sunt utilizati direct. În cazul proiectarii, procesul de gândire utilizeaza ambele procedee de rationament si anume, "forward reasoning" - de la specificatii, se determina un scop temporar, si  "backward reasoning" - pentru determinarea urmatorului obiectiv, utilizând rezultatele verificarii "fezabilitatii" primului obiectiv si a verificarii daca acesta satisface specificatiile. Proiectantii cu experienta evita cautarile lipsite de sens din rationamente, fapt ce conduce la ideea ca procesul de inferenta trebuie astfel construit încât sa evite cautarile generate automat, dar nenecesare. De aici, si necesitatea de a introduce reguli pentru controlul inferentei, adica reguli la reguli (metareguli). Reprezentarea cunostintelor utilizeaza reguli de tip if-then, adecvate la evaluarea proiectelor prin descriptori de compatibilitate si la analiza strategiilor.

Sistemele bazate pe modele MBR (model-based reasoning) realizeaza formularea cunostintelor sub forma de principii pentru a acoperi diferite aspecte ale problemelor domeniului. Aceste principii au un caracter general, spre deosebire de regulile if-then, si constituie un model care asigura rezolvarea problemelor. Modelarea procesului de proiectare este privita ca un rationament calitativ (qualitative reasoning), capabil sa se adapteze schimbarilor dinamice fara marirea bazelor de cunostinte. Structurile ierarhice, utilizate în modelare, corespunzatoare procesului de simulare, abordarilor orientate pe obiect si relatiilor de mostenire, ofera posibilitatea de unificare a bazelor de cunostinte de tip model printr-un set de reprezentari formale. În acest caz, este necesara construirea unei biblioteci de abstractizari folosite în procesele de reprezentare si inferential. Spre deosebire de RBS, care constituie un mod rigid de reprezentare în raport cu modificarile mediului, MBR prezinta o mai mare flexibilitate în raport cu modificarile produse si cu schema de elicitare oarecum rigida. Modelarea dinamica a procesului împreuna cu rationamentul calitativ constituie un sistem cu autocontrol, ce da acestei abordari o mare putere deoarece modelarea euristica actioneaza asupra fenomenelor de incertitudine si duplica intuitia umana.

Reprezentarea cunostintelor utilizând modelarea procesului este adecvata rezolvarii problemelor de proiectare. În capitolul urmator, este detaliata structura modelelor.

Un alt mod de reprezentare a cunostintelor este sistemul bazat pe "cazuri" CBR (case-based reasoning) unde este utilizata metoda întemeiata pe experienta constituita în "caz specific" (case) corespunzatoare experientei expertului în proiectari similare. Metoda se sprijina pe principiile care stau la baza a proiectarii însasi si anume, pe folosirea experientei anterioare în rezolvarea problemei curente. Dificultatea întâlnita în formularea experientei în proiectare ca regulile sau formularile cunostintelor ca modele, face ca CBR sa devina tendinta moderna manifesta în reprezentarea de cunostinte, pentru ca simuleaza procesul de proiectare cel mai fidel posibil. Motivat de observatia cognitiva ca proiectarea se întemeiaza pe experienta anterioara pentru a rezolva probleme noi, tehnica CBR este privita ca fiind alternativa la tehnicile mai traditionale RBS si MBR. Rationamentul pentru tehnica CBR se desfasoara astfel: se construieste baza de cazuri din experientele anterioare, se gasesc, în baza de cazuri, acele cazuri care rezolva probleme similare problemei curente, se adapteaza cazurile regasite sau solutiile care se potrivesc problemei curente, se evalueaza rezultatele din pasii anteriori prin examinarea cât de bine este rezolvata noua problema; daca evaluarea nu este satisfacatoare, se reface baza de cazuri, algoritmul de regasire, adaptarea algoritmului sau o combinatie a lor.

Interfetele utilizator actuale se bazeaza pe influenta conceptului Model-Vedere-Controlor, care divizeaza responsabilitatea interfetei utilizator în 3 tipuri de obiecte:

Model - reprezinta structura de date a aplicatiei: el contine sau are acces la informatia ce va fi afisata în Vedere;

Vedere - vederea manipuleaza toata tematica grafica; ea cere date de la model si le afiseaza; o vedere poate sa contina subVedere si poate fi inclusa în superVedere; ierarhia de sub/super_Vedere furnizeaza comportamentul de "fereastra" ( cum ar fi taierea sau transformarile);

Controlor - furnizeaza interfata între Model - Vedere asociate si intrarile utilizatorului.

6. Modelarea procesului ingineresc

Procesul de proiectare este un proces în care colaboreaza diferite echipe de proiectanti, cu diferite obiective, uneori contradictorii. Pentru fiecare echipa de proiectanti, procesul de proiectare, conform ingineriei de cunostinte, poate fi sintetizat astfel:

realizarea unui model al problemei, adica o conversie de la problema definita ca obiect si atribute la reprezentarea prin model;

analizarea modelului pentru determinarea solutiei, adica o conversie de la model la solutie;

realizarea programarii, adica o conversie de la solutie la program.

Fiecare din procedurile definite mai sus reprezinta o mapare dintre diferite forme, model-solutie-program: cu cât nivelul de exprimare este mai agregat în raport cu modelul/solutia/programul, cu atât "întelegerea" si receptionarea informatiilor este mai usor de realizat.

Pentru realizarea acestei mapari, inginerul proiectant utilizeaza functii inteligente cum ar fi intuitia, creatia, asocierea, inductia, abductia, recunoasterea, deductia care sunt obiectul de studiu al ingineriei de cunostinte, si functii cu un nivel relativ redus de rationament cum ar fi calcularea, cautarea si regasirea, recunoasterea de sabloane etc. analizate în detaliu de algoritmii Proiectarii Asistate de Calculator. Astfel, ingineria de cunostinte este utilizata pentru înzestrarea sistemelor cu functii inteligente, cum ar fi rationamentul prin analogie, rationamentul probabilistic, inferenta inductiva sau deductiva etc., în asa fel încât sa fie reprodusa cât mai fidel activitatea de proiectare [41].

Modelul de proiectare permite refaceri simultane de proiect prin stabilirea componentelor sau a caracteristicilor de proiectare, asociate fiecarui proiect candidat, printr-un proces de definire a ierarhiilor, de creare a legaturilor necesare, corespunzatoare fiecarei problematici.

Procesele de mapare, de definire a descriptorilor de compatibilitate, a justificarilor, a sugestiilor, a strategiilor si a conditiilor care sa asigure o rezolvare corecta a problemelor de compatibilitate sau aplicabilitate între solutiile candidat, precum si a inconsistentei în specificatii, constituie obiectul modulului de modelare. Selectia setului corect al variabilelor de decizie - denumit spatiul starilor -  constituie "expertiza" proiectarii: informatiile rezultate din expertiza proiectarii sunt constituite în liste de atribute, legaturi si clase/obiecte utilizate de descompunerea proiectului [65], [67].

6.1. Modelarea cauzala

În continuare, sunt prezentate principiile care stau la baza întelegerii comportamentului circuitului, pornind de la principiile de construire a circuitului, adica structura acestuia. Descrierea comportamentala a circuitului se realizeaza în mod calitativ fara sa fie folosite ecuatiile diferentiale si variatiile elementelor circuitului. Astfel, se disting clase de circuite cu acelasi comportament, dar cu o topologie diferita: superclasa, clasa, subclasa [32], [33], [34].

Primul pas este explicarea modului în care functionarea circuitului este legata de structura lui, adica scopul pentru care este realizat circuitul este legat de topologia acestuia. Problema consta în analiza circuitului prin accentuarea modului în care functionarea circuitului este derivat din structura lui. Structura reprezinta ce este circuitul, functiunea reprezinta scopul pentru care circuitul este proiectat, comportamentul reprezinta ce face circuitul. Punctul intermediar între structura si functiune este comportamentul [37].

Când acesta analizeaza circuitul, inginerul proiectant utilizeaza un mod de rationament intuitiv calitativ. Modul de rationament intuitiv calitativ furnizeaza o mare cantitate de informatie asupra functionarii circuitului, deoarece, desi este calitativa ca natura, aceasta informatie descrie importante aspecte cantitative despre functionarea circuitului, cum ar fi reactia negativa si stabilitatea circuitului, estimarea impedantei sau a functiei de performanta. În continuare, se urmareste formalizarea lui.

În acest sens, urmatoarele paragrafe fac referire la rationamentul cauzal si la ecuatii diferentiale calitative pentru studierea dependentei topologiei de legile Kirchoff.

Asertiunile caracteristice unei clase de componente pot sugera, pentru o situatie data, proceduri de descompunere structurala a elementelor unei clase în parti constitutive. Modelul componentului caracterizeaza întregul potential de comportamente ale acestuia. Pentru fiecare stare calitativa, modelul componentului furnizeaza confluente sau constrângeri care conduc comportamentul în acea stare. Forma generala a modelului este stare: specificatii, confluente. Modelul determina comportamentul pentru o stare, prin rezolvarea setului de confluente, sau comportamentul tranzitiei, de la o stare la alta.

Un exemplu de structurare a informatiei în superclase, clase si subclase este prezentat în tabelul de mai jos.

superclasa

clasa

subclasa

electronica

element_circuit

rezistenta

amplificator

amplificator_un etaj

amplificator_Colector_comun

amplificator_TriggerSchmitt

Sursa fotovoltaica

modul_solar

baterie

Modelarea structurala consta în descrierea comportamentului prin atribute, deci, printr-un un set de entitati (de exemplu, variabilele caracteristice si derivatele / integralele în raport cu timpul).

Unul din aspectele acestei teorii - analiza cauzala - descrie modul în care comportamentul componentelor individuale pot fi combinate pentru a explica comportamentul sistemului compus. Alt aspect al acestei teorii, analiza scopurilor, descrie faptul ca sistemul si scopul sau pot fi utilizate pentru a structura si se foloseste în analiza cauzala.

Astfel, pornind de la topologia circuitului, se poate construi, utilizând analiza cauzala calitativa [47], o descriere a mecanismului care guverneaza functionarea circuitului.

Rationamentul cauzal analizeaza modul în care perturbarile raportate la un anumit punct de operare se propaga în circuit. Astfel, se determina comportamentul calitativ al circuitului din structura lui. În plus, spre deosebire de procedurile cantitative, cele calitative produc explicatii intuitive, cauzale, privind predictia comportamentului. Predictia comportamentului combinate cu explicatiile lor, formeaza baza pentru modul în care rationamentul explica cum functiunile circuitului sunt determinate de comportamentul acestuia [68], [70], [71].

Pentru realizarea rationamentului calitativ este necesara introducerea euristicii si a regulilor pe care expertul uman le utilizeaza în practica, în mod uzual. Cunostintele expertului se bazeaza pe toata învatatura si experienta acumulata în domeniul proiectarii. Introducerea acestor cunostinte conduce la simularea cu calculatorul a rationamentului expertului.

Rationamentul calitativ

Circuitele sunt proiectate pentru a functiona corect la variatii ale intrarilor si ale iesirilor (de exemplu, un amplificator trebuie sa intensifice variatia semnalului de intrare, circuitul digital trebuie sa comute starea interna la schimbarea semnalului aplicat, o sursa de tensiune trebuie sa furnizeze curent sau tensiune constanta indiferent de schimbarile în iesire). Scopul acestor exemplificari este o mai buna întelegere, prin examinarea modului în care aceste circuite raspund la schimbari. Astfel, analiza cauzala priveste modul în care circuitele raspund la perturbatiile intrarilor. Când unui inginer din domeniul ingineriei electrice i se cere sa explice functionarea unui sistem electric, el îl va descrie ca fiind o secventa de evenimente, unde oricare dintre evenimente este produs de evenimentul anterior. Fiecare eveniment reflecta anumiti parametri de comportament al unor elemente ale sistemului cum ar fi curentul printr-o rezistenta, etc. Explicatiile inginerului ca si explicatiile stiintifice sunt descrieri secventiale.

Un exemplu de rationament calitativ este expus în continuare pentru un circuit.

Astfel, este prezentata o analiza a functionarii unui circuitul amplificator. Explicatiile inginerului sunt, de forma: "o crestere a tensiunii de intrare produce o crestere a polarizarii în emitorul jonctiunii primului tranzistor, ceea ce cauzeaza o crestere amplificata a curentului în colectorul aceluiasi tranzistor. În consecinta, atât tensiunea în colectorul primului tranzistor, cât si în baza celui de-al 2-lea tranzistor descresc. Al 2-lea tranzistor se comporta ca un repetor-emitor, cu o rezistenta suplimentara în colector, ceea ce produce o descrestere a tensiunii în emitorul primului tranzistor, descrestere ce produce o crestere a polarizarii în emitorul jonctiunii primului tranzistor, fapt ce cauzeaza o crestere si mai mare a curentului în colectorul aceluiasi tranzistor etc. ...".

Cauzalitatea reprezinta reducerea întregului circuit la formalizarea acestuia (ecuatiile diferentiale) si asimilarea circuitului unei colectii de procesoare de informatii. Descrierea oricarui component este de forma nume:tip:comportament. Descrierea comportamentului pentru un component este exprimata ca ecuatii de confluenta: fiecare model de confluenta consta dintr-un set de termeni a caror suma este o constanta. Un set de valori contrazice confluenta, deci este o constrângere.

Rationamentul calitativ se realizeaza folosind:

variabile calitative, diferite de cele utilizate în analizele cantitative;

explicatii ce  contin informatii despre perturbarile din sistem;

schimbari produse în circuit care sunt descrise calitativ; toate cantitatile din circuit sunt descrise calitativ si anume ca fiind crescatoare, descrescatoare sau neschimbate;

explicatii ce se refera la afirmatii despre starea sistemului, cum ar fi: cauzele evolutiei anumitor parametri ai sistemului

marcarea fluxului de cauzalitate: explicatiile sunt secvente de evenimente cauzate de evenimente precedente;

predictia si explicatia: analiza cauzala este o descriere calitativa a procesului de echilibrare a circuitului atunci când circuitul este actionat cu un semnal.

Primul pas în realizarea analizei calitative a unui circuit îl constituie stabilirea modului de descriere a comportamentului circuitului si a modelului calitativ al circuitului. În acest sens, se determina:

variabile si ecuatii calitative;

modelul circuitului pentru analiza statica calitativa si analiza în curent continuu;

modelul calitativ pentru componentele primare ale sistemului, care se bazeaza pe modelele clasice pentru care constrângerile sunt reformulate în termeni calitativi.

Variabilele calitative

Valoarea calitativa a expresiei x este [x]; în acest caz, valoarea calitativa [] se poate scrie prescurtat dnx; pentru [x] notatia este d x. Variabila calitativa poate avea numai una dintre valori. Comportamentul componentelor este descris prin ecuatii calitative si constrângerile (confluentele) asociate acestora. În ceea ce priveste semnul atasat cantitatilor, acesta devine: [x] = + (daca x>0) , [x] = 0 (daca x = 0) [x] = - (daca x < 0). Multiplicarile calitative sunt usor de definit pentru acest spatiu cantitativ [x] [y] = [xy]. Pentru operatiile aditive [x] + [y] = [x+y] numai daca nu este situatia [x] = -[y] 0. Pentru aceasta situatie, operatia aditiva este nedefinita [44].

6.1.1. Analiza statica calitativa

Analiza calitativa utilizeaza o generalizare a distinctiei pe care ingineria electrica o face în privinta analizei statice si a analizei în curent continuu. Analiza statica se refera la stabilirea valorii punctului de operare; analiza în curent continuu este o deviatie a analizei statice. Utilizând aceasta distinctie, analiza circuitului se realizeaza folosind modele diferite pentru analiza statica si analiza în curent continuu si anume, modele primare pentru analiza statica si modele de ordinul si pentru analiza în curent continuu.

În continuare, se va prezenta modul în care rationamentul calitativ, cauzal si teleologic (scopurile sunt urmarirea precisa a unei succesiuni de procese / evenimente) ofera un mecanism de inferenta, care suporta acest mod de explicatii.

6.1.2. Modelul calitativ pentru componentele primare

Ca si în ingineria electrica, în Proiectarea Asistata construirea modelului unui circuit se realizeaza pornind de la modelele componentelor simple. Modelul componentelor simple trebuie sa caracterizeze comportamentul esential generic pentru fiecare tip de component. Analiza structura-functiuni se face la dimensiuni mici deoarece alegerea structurala a continut în ea însasi informatii functionale. Validitatea predictiilor calitative depind de calitatea modelului ales pentru componentele primare. Este important de notat ca, pentru analiza cauzala, schimbarile în cantitate sunt mai importante decât cantitatile însele [53].

Pentru componentele primare, simple modelul lor calitativ se reprezinta prin:

legea Kirchoff pentru curent, care este constrângerea de baza a circuitului, în termeni calitativi (în partea dreapta a relatiei, marcate cu este varianta originala, cantitativa):

[ij ] = 0 S i= 0

în domeniul timp sau frecventa, deci, cazul ecuatiilor diferentiale:

S dij = 0            S dij/dt = 0   - pentru model linear;

S dkij = 0           S dij/dt = 0   - pentru model nelinear, reprezentând ecuatii diferentiale, de ordinul k, corespunzator unui circuit nelinear, deci forma generala a acestuia;

legea Kirchoff pentru tensiuni, care este a 2-a constrângere de baza a circuitului, în termeni calitativi:

[vj ]= 0 S vj = 0                    - varianta originala (cantitativa)

în domeniu timp sau frecventa, cazul ecuatiilor diferentiale

S dvj = 0            S dvj/dt = 0 - pentru model  linear

S dkvj = 0           S dkvj/dt = 0             - pentru model nelinear, reprezentând ecuatii diferentiale, de ordinul k, corespunzator unui circuit nelinear unde j reprezinta numarul buclelor;

legea Ohm, în forma  cantitativa, v = Ri.

În forma sa calitativa [v] = [i]: astfel, modelul calitativ pentru rezistenta este dkv dki.

sursa de alimentare are un model calitativ [v] = +    dkv = 0

tranzistorul;

modelul calitativ  al acestuia este:

dvbe dic ,      dvbe - die ,        dvbe dib

cu semnificatia ca:

dvbe dic cu semnificatia ca dvbe= dic, unde dvbe  este cauza pentru  schimbarea dic

dvbe - die cu semnificatia ca dvbe= -die, unde dvbe  este cauza pentru schimbarea die

Notatiile folosite sunt urmatoarele: Curentul, prin rezistenta R, intrând în nodul 1 s-a notat i #1(R), iar iesind din nodul 1 s-a notat i #1(R) . Daca în analiza cantitativa i #1(R)= - i #1(R), în analiza calitativa aceasta relatie nu este relevanta.

Sursa împamântata în nodul 1 este notata v1; tensiunea între nodurile 1 si 2 este v1,2; daca aceasta este negativa, intuitiv s-a notat v2,1.

Tranzistorul NPN are curent pozitiv în baza si colector si curent negativ în emitor sau, altfel spu, curentul intra în baza si colector si iese din emitor. Pentru a marca aceasta, s-a notat i C, i B, i E

În continuare, se utilizeaza urmatoarele conventii: indica sensul propagarii perturbatiei; când coloana "cauza" este necompletata, semnul indica faptul ca fenomenul se datoreaza pasului anterior.

6.1.3. Analiza cauzala pentru curent continuu

Un aspect important în analiza calitativa este  predictia raspunsului circuitului la actiunea unui semnal. Pentru a construi predictia comportamentului circuitului, este necesar sa realizam: 

propagarea cauzala a constrângerilor: Intuitia esentiala, pe care se bazeaza analiza cauzala, este ca fiecare component actioneaza ca un procesor de informatii pentru o singura actiune atunci când un semnal se propaga de la un procesor vecin; propagarea ca si procesarea informatiilor se face în concordanta cu modelul componentului. Cauzalitatea se bazeaza pe localizarea si directionarea propagarii, adica fiecare component actioneaza dupa actiunea componentei vecine si, la rândul ei, actioneaza numai în vecinatatea ei. Astfel, fiecare interactiune are acces numai la informatia locala (adica numai pentru componentele vecine) si se produce, la rândul, ei numai datorita informatiei locale. În sfârsit, fiecare component propaga informatia într-o singura si numai într-o singura directie. Negocierea între procesorii componenti este imposibila, aceasta putându-se manifesta numai între cei vecini

Analiza cauzala produce un argument cauzal, care este o descriere calitativa a modului în care se echilibreaza circuitul, fiind dependent de modul în care acesta raspunde, din starea de echilibru, la perturbatii. Aceasta descriere este, de fapt, o simulare a modului de echilibrare a circuitului. Primul exemplu este un circuit amplificator. Componentele interactioneaza între ele prin plasarea curentilor si a tensiunilor în nodurile adiacente: doua componente pot interactiona daca sunt conectate. Topologia interactiunilor cauzale potentiale se comporta ca o topologie a modelelor alternative ale componentelor si variabilelor. Analiza cauzala consta în:

construirea unui graf orientat, cu laturi orientate în directia propagarii informatiilor din topologie;

studiul propagarii unei perturbatii a semnalului de intrare printre informatiile din topologie.

Simplificarea importanta se realizeaza prin faptul ca propagarea informatiilor se face numai în directia grafului, eliminând interactiunile cauzale potentiale.

Pentru analiza cauzala, determinarea marimii de iesire consta în stabilirea unei secvente de pasi, luând în considerare perturbatia intrarii, fiecare pas depinzând de pasii anteriori din secventa. Ultimul pas îl constituie determinarea marimii de iesire

Explicatia si evenimentele pe care se bazeaza rationamentul propagarii cauzale [53] sunt urmatoarele:

Cauza

Eveniment

Rationamentul

dvIN = +

Perturbatie - Cunoscuta

i C (Q)

dvbe dic pentru tranzistor npn

di #2(R)

KCL pentru nodul de iesire

di #2(R)

KCL pentru nodul de iesire

dvc,L = +

di# 1 dv# 1,# 2 pentru rezistenta din colector

dvc = 0

dv+,- pentru baterie (sursa)

dvc=0,

dvL = -

KVL pentru nodul de iesire, colector tranzistor,

dvc,L = +

pamânt

(s-a notat cu indicele L nodul de iesire);

indica sensul propagarii perturbatiei; când coloana "cauza" este necompletata, semnul indica faptul ca fenomenul se datoreaza pasului anterior, de exemplu, cresterea curentului în colectorul tranzistorului i #C (Q) = + se datoreaza perturbatiei de la intrare dvIN = + (cu + s-a notat cresterea, cu - s-a notat scaderea).

Analiza cauzala utilizeaza propagarea constrângerilor pentru determinarea valorilor elementelor din circuit. Propagatorul este proiectat sa gaseasca, mai întâi, cea mai simpla explicatie. Primul pas în determinarea valorilor îl constituie deductiile datorate legilor KCL si KVL, printr-un simplu proces euristic de extragere a valorii utilizând cele mai putine componente ca argument. Noile valori obtinute, dar care nu au fost înca propagate, sunt pastrate în coada de asteptare. Valorile - variabilele - asupra carora propagarea opereaza, reprezinta tensiunile si curentii din circuit. Acestea sunt constituite într-un vector ale carui celule reprezinta tensiunile si curentii din circuit. Un set de constrângeri leaga elementele vectorului. Structura de date este construita prin crearea celulei "tensiune", pentru fiecare pereche de noduri, si a celulei "curent", pentru fiecare component. Apoi, modelele componente, deductiile KCL si KVL sunt instantiate pentru fiecare component si nod prin legarea tuturor informatiilor la nodurile corespunzatoare din arborescenta, denumite în continuare, celule.

Orice variabila poate avea o valoare. Aceasta valoare poate proveni din propagarea fie dinafara circuitului, fie poate fi dedusa din valorile altor celule datorita confluentei (constrângerilor). Când unei celule îi este atribuita o valoare, fiecare constrângere ia parte, prin examinarea informatiilor necesare, la deducerea valorii pentru o alta celula, prin "propagarea constrângerilor", facuta folosind modelele componentelor ca si antecendetele si consecintele lor. Asociata fiecarei valori este o justificare indicând cum a derivat din valori ale altor celule. Procesul de evaluare a propagarii valorilor este construit prin trasarea caii de justificare înapoi, pâna la intrarea initiala. Uneori, se gasesc 2 valori pentru aceeasi celula. Cauzalitatea impune faptul ca celula are, la un moment dat, o singura valoare. Daca cele 2 valori ale unei astfel de coincidente sunt în conflict, modelele componentei sunt inadecvate (de ex.: modelul tranzistorului are o sursa de tensiune în colector în loc de sursa de curent; în aceasta situatie, circuitul nu poate exista (ex. 2 surse de curent în serie) sau intrare imposibila (ex. specificarea faptului ca la nodul #1 a unei rezistente curentul este +, iar la nodul #2 a aceleasi rezistente, curentul este tot +).???? Daca cele 2 valori ale unui astfel de circuit sunt în concordanta, propagarea celei de a 2-a valori, ca si informatia care o însoteste, nu se mai propaga,??? ceea ce "saraceste cunoasterea" circuitului (cazurile simple de concordanta sunt evitate prin faptul ca rezultatul constrângerii nu poate fi instabil el însusi). Este importanta descoperirea din timp a conflictelor pentru a evita crearea unui lant lung al propagarii si pentru a afla ca antecedente simple sunt contradictorii.

Un caz special îl constituie deductiile KVL, ale caror confluente pentru fiecare bucla pot produce redundante, ceea ce introduce nu numai ineficienta, dar genereaza explicatii multiple si diferite pentru acelasi comportament. Solutia utilizata este de a utiliza o confluenta KVL pentru fiecare set de 3 noduri i, j, k:

dnvij + dnvjk dnvik , unde n reprezinta ordinul ecuatiilor diferentiale

Euristica cauzala

Modelele componentelor nu sunt suficiente pentru a construi analiza cauzala a unor circuite. Legile de baza ale analizei unui circuit, si anume KCL, KVL ca si modelele componentelor, produc situatii critice în cazul propagarii si anume, propagarea este în impas în cazul sumarii a trei parametri. Propagarea nu se poate opri când se ajunge la relatia conform careia doi parametri sunt egali considerând ca, daca unul este cunoscut, celalalt poate fi calculat folosind relatia de propagare a constrângerilor. Solutia este utilizarea euristicii cauzale [53], [54] si anume, introducerea a trei euristici independente:

euristica de component (KCL);

euristica de comportament (KVL);

euristica de confluenta.

Euristica cauzala, definita mai sus, este diferita de deductiile obisnuite ale legilor KCL si KVL prin faptul ca presupune ca, în orice faza a propagarii, se poate ajunge la concluzia ca circuitul nu functioneaza corect.

Euristica de component (KCL) se refera la cazul pentru care propagarea se afla în impas la una din relatiile KCL pentru un anumit nod conectat la trei sau mai multe componente. Regula euristica KCL pentru curentii care intra în nod se exprima dij = - in, daca tensiunea la nod este S dijk - dv, propagatorul utilizeaza regula dv = 0

Astfel, pentru componentul tranzistor, relatiile cauzale devin:

dvIN = +

Perturbatie --> Cunoscuta

dvIN,E = +

dvB dvBE  KVL euristic pentru tranzistor npn

di C

dvBE dipentru tranzistor npn

dvOUT = -

di C dvOUT KCL euristic pentru nodul de iesire

sau, explicând cresterea curentului care iese din nod, îl forteaza pe acesta sa scada. Cresterea curentului care intra în nod, îl forteaza pe acesta sa creasca. Euristica KCL face supozitia conform careia conectorii care leaga componentele la noduri, se pot modela, la rândul lor, ca surse de curent si o impedanta pozitiva.

Euristica de comportament (KVL) [41] se refera la cazul pentru care propagarea se afla în impas la una din relatiile de confluenta KVL dvn = dvn,m + dvm, unde n si m sunt doua noduri conectate la doua terminale diferite ale aceluiasi component, iar dvn este  + sau -. În acest caz, propagatorul utilizeaza regula dv dvn,m. În plus, daca dv= dvm , propagatorul utilizeaza regula dvm,n = 0.

Realizând propagarea se obtine:

dvIN = +

Perturbatie --> Cunoscuta

dvIN,E = +

dvB dvBE  KVL euristic pentru tranzistor npn

di C

dvBE diC pentru tranzistor npn

Rationamentul intuitiv pentru aceasta euristica este explicat în continuare. În cazul în care dvn,m  si dvm  sunt necunoscute, nu se poate determina o cale de propagare cauzala, care sa afecteze dvm, iar dvn poate fi privit ca fiind cauza schimbarilor pentru dvn,si dvm , pornind de la supozitia ca toate impedantele modificabile sunt pozitive. Euristica KVL presupune ca o schimbare a tensiunii în nodul n produce o schimbare egala în valoare pentru tensiunea în component, iar tensiunea în nodul m este nesemnificativa (vm 0), în consecinta, dv dvn,m... dvm. Astfel, euristica KVL se bazeaza pe presupunerea ca schimbarea tensiunii dvm produsa prin schimbarea tensiunii dvn nu poate influenta schimbarea tensiunii dvm  În cazul în care dvm = dvm 0, euristica KVL a produs deja doua conflicte de propagare:     dv dvn,m si dv dvm,n. Totusi, cele doua schimbari s-ar putea anula în cazul existentei unei a treia posibilitati dvn,m = 0 (care este doar o speculatie matematica).

Euristica de confluenta

Sursa de confluenta a trei sau mai multe variabile o constituie modelele componentelor. Confluentele se produc când un tranzistor este saturat. În acest caz, schimbarea curentului în baza este controlata de actiunea combinata a doua jonctiuni: dvB,E - dvC,B  diB (unde are semnificatia =, adica schimbarea tensiunii produce schimbarea curentului). Daca propagarea întâlneste un impas în aceasta confluenta, se utilizeaza euristica de confluenta, caracterizata de relatia de tipul diB + di diC , unde diB, disunt cunoscute. În aceasta situatie, propagarea continua cu diC diB diC diE, ceea ce face ca una dintre entitati diE  sau diB sa ramâna necunoscute.

Aceste trei euristici sunt utilizate pentru determinarea valorile variabilelor importante ale circuitului. În cazul euristicii de confluenta a mai mult de doua variabile, se determina una dintre ele, celelalte fiind considerate fara importanta pentru analiza cauzala.

6.1.4. Analiza cauzala pentru amplificator

La aplicarea semnalului de intrare a amplificatorului, se produce o scadere a tensiunii în emitor. Argumentul cauzal în urma scaderii tensiunii în emitor, care mentine tranzistorii în regiunea de functionare normala este:

dvIN = +

Perturbatie - Cunoscuta

dvB1,E1 = +

dvB dvBE  KVL euristic pentru tranzistor T1

i C (T1)

dvBE dic pentru tranzistor T1

dvC1 = -

i C (T1) dvC1  KCL euristic pentru nodul C1

dvC1,B2 = -

dv#1 dv#1,#2   KVL euristic pentru rezistenta RB2

di #1(RB2)

dv#1,#2      dI#1 pentru rezistenta RB2

di #2(RB2)

KCL pentru rezistenta RB2

dvB2 = -

di #2(RB2) dvB2  KCL euristic pentru nodul B2

dvB2,E1 = -

dvB dvBE  KVL euristic pentru tranzistor T2

i 2E (T2)

dvBE diE pentru tranzistor T2

dvE1 = -

di E(T2) dvE1  KCL euristic pentru nodul E1

ationamentele euristice se pot aplica în orice moment al procesului de propagare. Aplicarea oricarui rationament euristic este asociata cu o serie de presupuneri explicite, care sunt retrase când urmatorul conflict este întâlnit. În acest caz, când euristica KVL constata o tensiune în baza unui tranzistor, se comuta la modelul tranzistorului cu tensiune VBE; în acest caz, rationament euristic face presupunerea ca efectul tensiunii în emitor este neglijabil în comparatie cu cel al tensiunii în baza. Chiar si în cazul ca, ulterior, se constata ca efectul tensiunii în emitor nu este neglijabil, în comparatie cu cel a tensiunii în baza, propagarea rationamentului initial nu se anuleaza.

La propagarea unui semnal într-un circuit, se acumuleaza un numar mare de astfel de presupuneri; desi din presupunerile referitoare la o variabila se poate "compune" valoarea acesteia din rationamente (justificari), este mai util sa se continue propagarea presupunerilor, iar deducerea valorilor variabilelor este urmarea construirii uniunii presupunerilor  tuturor antecedentelor propagarii. Valoarea tripleta care se propaga este de forma: , unde valc poate avea valori (+, - , 0).

(Propagarea constrângerilor este facuta folosind modelele componentelor, antecendetele si consecintele lor).

6.1.5. Analiza cauzala pentru functiuni - obiective

Circuitul este proiectat cu scopul de a realiza functiuni specifice. În acest scop, circuitul proiectat trebuie sa fie realizat cât mai simplu posibil, ceea ce presupune ca fiecare component trebuie sa contribuie "cel mai bine" la scopul final (functia de performanta) sau astfel spus, proiectarea fiecarui component este legata de scopul final. Analiza cauzala furnizeaza metoda pentru analiza obiectivelor. Pentru fiecare component dintr-un circuit, modelul acestuia poate fi: cauzal, de tip reactie sau de reflectie [19], [28], [30].

Modelul cauzal pentru rezistenta

Legea de baza este dv = di  care sugereaza 2 modele cauzale pentru rezistenta dv di    di dv

Conform legilor KCL, relatia care caracterizeaza modelul cauzal este di di  Astfel, rezistenta poate converti un semnal de intrare într-un curent la terminalul #1 care este propagat la iesire sau în curent la terminalul #2. Aceste consideratii conduc la urmatoarele tipuri de modele pentru rezistenta si anume doua tipuri de modele de conversie curent-tensiune, doua tipuri de modele conversie tensiune-curent si doua tipuri de modele de propagare a curentului.

Modelul cauzal pentru rezistenta între nodurile #1 si  #2 este:

Iesire

Intrare

i

i

i

polarizare

v

V-ampl

V-I

v

V-senzor

V-senzor

Conform legilor KVL, relatia ce caracterizeaza modelul cauzal este dv#1,#2 = dv#1, #x + dv#x,#2; daca #2 este nod terminal, dv#1,#x = 0; daca #1 este nod terminal, dv#x, #2 = 0. Astfel, daca euristica KVL se aplica unui component, terminalul conectat la nodul unde euristica KVL se aplica este considerat terminal intrare. Daca curentul de iesire a rezistentei este un antecedent al euristicii KCL, iesirea este o tensiune la terminal

Iesire

Intrare

v

v

v

i

I-ampl

I-V       

I-senzor

v

Divizor

Divizor

Modelul cauzal pentru tranzistor

Aplicând legile KCL si KVL în acelasi mod, se poate deduce modelul tranzistorului:

                              Iesire

Intrare

iE

iB

iC

vBE

vE

T-ampl

T-cuplu

BC

vB

CC

T-ampl

CE

T-sens

vBE

T-sens

T-sens

Suma

Clasele si parametrii acestora sunt:

Clasa

Parametri

Semnificatie

IO

Intrare, Iesire

semnal

Analiza

Nod, Bucla

reactia negative în punctul de analiza

Comparatia

Nod, Bucla

reactia negative în punctul de comparatie

Spargere

modul de "spargere" a semnalului

Îmbinarea

V,I

îmbinarea a n semnale

Etaje

EC,CC,BC, Cascada,reactie

etaje amplificatoare

Diff-2-1

Suma

amplificator diferential

Cuplare

V-ampl, V-I, I-V T-sens, T, T-cuplu

semnale cuplu

Graful functiunilor

  bucla        EC         bucla

 Intrare           Nod                                                                           CE     I-ampl      Iesire

                                  V-senzor      CONNECT            I-V-CUPLU       CC

În exemplu urmator, pentru un amplificator emitor comun, analiza conduce la explicitarea urmatoarelor situatii:

Starea 1 (T1 BLOCAT) (T2 ACTIV)

Valoarea dvC1,OUT este nedefinita

Daca dvC1,IEsIRE = + Atunci T2 poate schimba starea la SAT

pentru ca dvC,B poate cadea sub pragul -vT

Daca dvE2,C1 = + Atunci T2 poate schimba starea la BLOCAT

pentru ca dvB,E poate cadea sub pragul vT

Daca dvIN,C1 = + Atunci T1 poate schimba starea la ACTIV

pentru ca dvC,B poate cadea sub pragul -vT

Daca dvIN = + Atunci T1 poate schimba starea la SAT

pentru ca dvB,E poate creste peste pragul vT

Starea 3 (T1 BLOCAT) (T2 BLOCAT)

Daca dvIN,C1 = + Atunci T1 poate schimba starea la ACTIV

pentru ca dvC,B poate cadea sub pragul -vT

Daca dvIN = + Atunci T1 poate schimba starea la ACTIV

pentru ca dvB,E poate creste peste pragul vT

Starea 2 (T1 ACTIV) (T2 ACTIV)

Daca dvC1,IEsIRE = + Atunci T2 poate schimba starea la SAT

pentru ca dvC,B poate cadea sub pragul -vT

Daca dvE2,C1 = + Atunci T2 poate schimba starea la BLOCAT

pentru ca dvB,E poate cadea sub pragul vT

Daca dvIN,C1 = + Atunci T1 poate schimba starea la SAT

pentru ca dvC,B poate cadea sub pragul -vT

Starea 5 (T1 ACTIV) (T2 SAT)

Daca dvE2,C1 = +  Atunci T2 poate schimba starea la ACTIV

pentru ca dvB,E poate cadea sub pragul vT

Daca dvIN,C1 = +  Atunci T1 poate schimba starea la SAT

pentru ca dvC,B poate cadea sub pragul -vT

Valoarea  dvC1,IEsIRE  este ambigua

Daca dvC1,IEsIRE = -  Atunci T2 poate schimba starea la ACTIV

pentru ca dvC,B poate creste peste pragul -vT

Starea 4 (T1 BLOCAT) (T2 SAT)

Daca dv E2,C1 = + Atunci T2 poate schimba starea la ACTIV

pentru ca dvB,E poate cadea sub pragul vT

Daca dvIN,C1 = + Atunci T2 poate schimba starea la ACTIV

pentru ca dvC,B poate cadea sub pragul -vT

Daca dvIN = + Atunci T1 poate schimba starea la ACTIV

pentru ca dvB,E poate creste peste pragul vT

6.2. Modele conceptuale

Cercetarile curente în sisteme de Proiectare Asistata de Calculator Inteligente se refera la automatizarea viitoare a procesului de proiectare prin incorporarea mai larga a rolului proiectantului în sistem, ceea ce presupune un nivel mai ridicat de interactiune între proiectant si unealta de proiectare, algoritmi mai puternici de rezolvare a problemelor care sa fie integrati în sistem [72].

În acest sens, o problema o constituie inteligenta interfetelor utilizator ce consta în cresterea întelesului ????simbolurilor si a comenzilor furnizate de acestea, precum si în cresterea nivelului de interactiune a sistemului cu proiectantul. Rezolvarea acestei probleme consta în utilizarea bazelor de cunostinte capabile sa stimuleze luarea deciziilor complexe si care prezinta facilitati de autoexplicare a rationamentului.

Pentru a atinge aceste scopuri, sistemele de Proiectarea Inteligenta Asistata de Calculator trebuie sa includa:

cunostinte specifice aplicatiei

asistarea proiectarii, implementata atât numeric, cât si simbolic,

baze de date si cunostinte ce contin date analitice, clase si reguli specifice procesului de proiectare, precum si interfete ce suporta facilitati de simulare/optimizare orientate grafic.

În acest model, studentul, viitor proiectant, introduce datele utilizând un sistem de intrare grafic. Acestea sunt transformate în model intern, conform necesitatilor de stocare si de manipulare.

Studentul poate evalua datele modelate vizual utilizând interfete de afisare si software de aplicatie pentru analiza. Spre deosebire de sistemele de Proiectare Asistata de Calculator conventionale, în care analiza era numerica, iar interfetele nu erau la nivelul aplicatiei, ci numai la cel al reprezentarii grafice, este necesar sa fie evaluate calitativ aspecte ale proiectarii, bazându-se pe experienta si pe expertiza existenta în proiectare.

Studentul sau inginerul proiectant (începator) poate avea acces la o biblioteca de proiecte, construita anterior de alti proiectanti, fapt ce poate scurta ciclul de reproiectare.

Modelul de date relationale existente în sistemele de Proiectare Asistata de Calculator conventionale nu sunt(se acorda cu modelul sau cu datele????) adecvate pentru reprezentarea ierarhica a proiectului. Modelul????? de date orientat pe obiect furnizeaza un mod natural de reprezentare a relatiilor dintre obiecte ca întreg, abstractizare si generalizare, aceste modele pot?????, de asemenea, sa ajute la identificarea automata a proiectelor reutilizabile  avînd un mod de organizare a bazei de date mult mai adecvat.

Sistemele de Proiectare Asistata Inteligenta au caracteristici comune:  abilitatea de a rezolva probleme în domenii bine definite si înguste, explicarea rezultatelor si a deciziilor, tehnici de reprezentare hibride (procedurale si simbolice).

Modelul conceptual pentru Sistemele de Proiectare Asistata de Calculator inteligente contine:

componenta de planificare a proiectului - aceasta capteaza cunostintele despre procesul de proiectare, utilizându-le în ghidarea si evaluarea activitatii de proiectare;

asistarea în proiectare de catre cunostintele din baza de cunostinte - aceasta furnizeaza sprijin proiectantului pentru a rezolva probleme specifice de proiectare, cunostintele putând fi folosite în mod interactiv atât de componenta de planificare, cât si de proiectant datorita modului de organizare;

interfata utilizator orientata spre aplicatie cu rolul de a media interactiunile utilizator-sistem - aceasta trebuie sa maximizeze gradul de comunicare cu utilizatorul (prin ferestre multiple, meniuri arborescente); utilizatorul interactioneaza cu componenta de planificare pentru a directiona procesul de proiectare sau pentru a evalua o procedura urmata de utilizator; acestea(cine???) interactioneaza cu sistemul cu baza de cunostinte pentru a rezolva probleme specifice de proiectare.

Toate componentele care interactioneaza cu proiectantul prin intermediul interfetei au facilitati de autoexplicare. Ele permit utilizatorului sa inspecteze procesul de rationament si sa solicite instructiuni privind unele aspecte ale proiectarii. Interfata utilizator include trasaturi ca: facilitati pentru proiectant în a-si formula problema la nivelul cel mai înalt, ferestre controlate de utilizator, acces on-line la documentatie. Interfata externa contine obiecte (cunostinte) vazute în mod abstract

Modelul conceptual de cunostinte este reprezentat în??? nivelul ingineresc unde studentul realizeaza o interfata bazata pe obiecte, cunostinte si manipulari ale inginerului de cunostinte. Problema nivelului de implementare este de a manipula eficient stocarea si accesul la cunostinte pe care sa le furnizeze apoi nivelurilor ingineresti.

6.2.1. Modelul Functiuni - Comportament - Structura (FCS)

Rationamentul de Construire a Obiectelor Complexe

În mod virtual, toate modelele bazate pe obiect presupun ca obiectele au o identitate proprie, indiferent de punctul de vedere din care este analizat circuitul, ceea ce permite utilizatorului sa defineasca clase de obiecte complexe, caracterizate de relatii de mostenire. Aceasta se realizeaza prin construirea unui graf în care relatiile de mostenire, care se refera la atribute, relatii, dependente functionale, constrângeri în cadrul unei clase de obiecte, sunt reprezentate prin ramuri în graf G (N,A), unde N reprezinta noduri în graf, iar A - Arce din graf [35].

Doua tipuri de caracteristici refera constrângeri algoritmice (CA) si dependente functionale (DF). În graf, fiecare clasa este reprezentata printr-un nod, iar proprietatile acesteia sunt reprezentate prin arcele care o leaga de alte clase.

Definirea unei clase este CLASA (prop), unde prop semnifica proprietatile clasei curente si ale claselor conexe si este de forma (P1:C1; ... Pn:Cn) & SSC (SC reprezinta un subset al clasei de constrângeri algoritmice sau functionale). Fiecarei clase îi corespunde un tip de graf G (N,A), astfel încât clasa este definita CLASA (G). Proprietatile, la rândul lor, apartin unui domeniu de definitie notat Dom (prop).

O clasa oarecare C este definita C . O vedere functionala (VF) în arborele G presupune compunerea ramurilor functionale, care refera un anumit obiectiv. Astfel, functiunile f sunt definite ca apartinând grafului G si domeniului de proprietati fi . O vedere functionala este definita ca o multime de functiuni fi VF (G), unde f1 G (C) corespunzând diferitelor clase definite în graf.

Dependentele functionale (DF) sunt definite ca fiind o serie de grafuri corespunzatoare vederilor functionale. Unui tip de problema i se asociaza un anumit tip de graf denumit Graf-Schema sau prescurtat Schema (S).

Crearea modelului FCS (Functiuni - Comportament - Structura) pentru fiecare problema consta în:

determinarea claselor CLASA (prop), a setului de constrângeri SSC

transpunerea cunostintelor referitoare la clase si constrângeri sub forma de Schema (S) (Functie - Comportament - Structura

determinarea, pentru fiecare violare a constrângerilor, a subgrafului unde se produce violarea CLASA (G), P Dom (prop)}

determinarea, pentru fiecare obiectiv, a subgrafului corespunzator CLASA (G), Dom (Ob)}.

Modelarea Functionala - Comportament - Structura (FCS) si rolul acesteia în însusirea metodelor de proiectare (deci si rationament) prin analogie

În continuare, este prezentat un formalism pentru reprezentarea cunostintelor specifice procesului de proiectare conform modelului FCS, conform cailor din arborescenta FCS. Experienta proiectarii, cunostinta cauzala si justificarile corespunzatoare sunt utilizate la construirea circuitului care descrie elementele unui proiect, incluzând relatii de dependenta între elemente, relatii generice cauzale, precum si tehnici pentru realizarea analogiilor. Pentru a suplini imposibilitatea reprezentarii cunostintelor de natura dinamica si a uniformiza reprezentarea pentru analogiile între domenii, aceasta cercetare introduce în notatia folosita pentru reprezentarea proiectului, cunostinta cauzala.

Principiile de construire a modelului Functie - Comportament - Structura (FCS)

Modelul FCS utilizeaza asociatii între functie, comportament si structura cu scopul de a gasi "arborescenta" de realizare a obiectivelor care permit generalizarea metodelor de proiectare pentru clase de proiecte. Metodele referite în aceasta lucrare se bazeaza pe reprezentarea cunostintelor folosind "arborescenta" modelului FCS, respectiv cunostintele cauzale. Cunostintele cauzale, exprimate ca reguli în baza de cunostinte, constituie baza de rationament utilizata ca metoda de proiectare prin analogie. Vom analiza, în continuare, principiile pe care se bazeaza modelarea FCS

Reprezentarea cunostintelor în modelul FCS

În procesul de reprezentarea cunostintelor, se constata ca proiectele au similaritati superficiale, cum ar atributele componentelor (caracteristici) sau relatiile structurale si similaritati de nivel mai înalt (relatii), cum ar fi functia sau comportamentul. În timp ce functiunea specifica realizeaza circuitul proiectat, comportamentul descrie modul în care proiectul creeaza functiunea (proiectarea prin analogie presupune ca proiectele sunt analoge daca au functii sau comportamente similare, dar pot avea structuri diferite). Comportamentul corespunzator structurii unui circuit are o functie asociata si furnizeaza o explicatie cauzala a proiectarii.

Cunostintele cauzale

Legaturile cauzale, existente între cunostintele din proiectare, sunt fie cu înalt nivel de abstractizare (cum ar fi functia sau comportamentul), fie cu nivel slab de abstractizare (cum ar fi structura cu atributele si relatiile ce o caracterizeaza), putând fi generalizate în modelul FCS. Astfel, din perspectiva procesului de proiectare, orice "nod al ierarhiilor" referit ca artefact (element, proces, atribut etc.) este proiectat în asa fel încât sa-si atinga functionalitatea conform "arborescentei" din modelul FCS, unde calea este de forma Functie Comportament Structura. Includerea functiei si a comportamentului în descrierea proiectului si a celor trei entitati (functie, comportament, structura) în acest model defineste asa numita cunostinta cauzala a procesului de proiectare. Calea de la structura la comportament si apoi la functie exprima relatia cauzala, pe care se bazeaza proiectul, adica refera cunostinta cauzala. Desi comportamentul poate deriva dintr-o structura data, "arborescenta" FCS leaga entitati în ambele directii (structura si comportament). Astfel, comportamentul derivat din structura poate fi specificat prin legarea acestuia cu functiile corespunzatoare lui, eliminând necesitatea derivarii unei aceleiasi structuri de evaluat, de fiecare data când trebuie "refacut" proiectul. Acest comportament poate fi retinut si utilizat în mod eficient în vederea descrierii structurii si functiilor asociate.

Interpretarea modelului FCS este: (1) pentru o functie anumita, se stabileste comportamentul care realizeaza functia si structura ce produce comportamentul; (2) pentru o structura anumita, sunt asteptate determinarea comportamentului si functiei corespunzatoare în modelul FCS, deci, o ramura ("arborescenta") din model.

Experienta de proiectare si cunostinta cauzala aferenta, stocate în modelul FCS, permit studentului gasirea unor cazuri similare de proiecte, precum si a unor rationamentele aflate în spatele proiectului. Translatarea cunostintei cauzale a proiectarii în formatul specific unei baze de cunostinte constituie elementul de baza al însusirii metodelor de proiectare prin analogie. O functie poate fi asociata mai multor comportamente, iar un comportament la mai mult de o functie. În mod similar, un comportament poate fi derivat din mai mult de o structura. Ideea de baza a proiectarii prin analogie este realizarea acestei mapari cu scopul de a gasi diferite descrieri de proiecte, adica, la aceeasi functie sau comportament, structura circuitului poate fi diferita. Functia si comportamentul sunt considerate modalitati de regasire prin analogie (chei de cautare indexata) pentru proiectele similare ca natura.

Generalizarea cunostintelor de proiectare

Definirea modelului FCS si translatarea cunostintelor atât a celor specifice, cât si a celor generale privind procesul de proiectare într-o baza de cunostinte reprezinta elementele de baza în însusirea metodelor de rationament prin analogie. Generalizarea cunostintelor de proiectare presupune abstractizarea multor experiente de proiectare, pentru un proiect particular, cunostintele generalizate fiind instantiate. Cunostintele de proiectare abstractizate contin informatii referitoare la functiuni, comportament si structura (si anume, cunostintele interdisciplinare si generale din domeniul proiectarii

Modelul FCS este definit astfel: Structura specifica elementele ce compun proiectul împreuna cu atributele lor si relatiile dintre elemente. Existenta fiecarui element individual si relatiile dintre ele contribuie în mod direct sau indirect la functionalitatea proiectului.

Structura poate fi definita ca un graf S, similar celui prezentat mai sus, cu descrierea S = , unde semnificatia variabilelor este: E - elemente, A - atribute, R - relatii, P - procesari asupra elementelor sau atributelor,   O - operatii ce compun procesarile.

Reprezentarea grafica a relatiei proces proiectare - structura este:

Graful Structura                                                   Proces Proiectare

 Proces 2

 

 Proces 1

 
                        a4                   e1                      a5              

               a1                       r1                   r3       

             a2            e2                 r2                    e3                     operatie 1  

               a3                                                                                  operatie 2

          a9           e5                  e4          a7                                     operatie n

         a10

Figura 24. Mapare domeniu structura - proces proiectare

unde:

ereprezinta element, functie, obiectiv, comportament, component,

ai - atribut,

ri  - relatii (prin s-a reprezentat relatia detasabila; o relatie între elemente poate fi fixa sau detasabila).

Operatiile ce reprezinta secvente ale procesului de proiectare sunt legate în flux (reprezentate prin sageti; catre o operatie exista mai multe ramuri în functie de modul în care se realizeaza secventele de operatii). Fluxul de informatii dintre procesul real de proiectare si graful aferent este reprezentat prin . Operatia reprezinta un element activ, care primeste informatii de la elemente pasive si produce actiunea de control cea mai adecvata, care schimba comportamentul structurii. Un proces este format dintr-o secventa de operatii si subprocese. Cum procesul este parte din descrierea proiectului, el poate fi referit cu termenul de structura_proces.

De remarcat ca o structura poate fi statica sau dinamica (în care elementele, atributele sau relatiile pot fi modificate).

Comportamentul

Reprezinta una din caile prin care semnificatia structurii interfera cu proiectantul. Comportamentul poate fi generalizat în clase de interes si anume, temporal subordonat constrângerilor, cauzat de efecte externe sau datorat relatiilor calitative cauzale.

Efectele externe pot fi definite ca fiind obiecte impuse într-un proiect, conditii datorate unui mediu conex proiectului sau operatii aplicate proiectului. Desi efectele externe nu apartin proiectului, ele afecteaza comportamentul [32]. Din punctul de vedere al procesului de proiectare, comportamentul poate fi folosit în formularea problemei, sintezei, evaluarii si a reformularii, aceasta conducând la definirea cerintelor functionale si jucând un rol important în legarea structurii de functiuni.

Un exemplu de reprezentare a influentelor structurii si a efectelor externe asupra comportamentului modulului solar este

Comportament                         Structura                      Efecte externe

Temperatura-modul

 


Figura 25. Mapare domeniu comportament - structura - efecte externe

Formalismul care arata relatiile calitative cauzale între structura si comportament este:

C (T) S cu semnificatia variabilelor:

C - comportament,

T - tip comportament,

CC - starea comportamentului (variabila calitativa)

S - structura

SC - starea variabilei structura (variabila calitativa dinamica Vsd conform Operatii).

Variabilele calitativa de stare, discreta sau continua, descriu o stare stabila si tendinta de schimbare în termeni calitativi, cum ar fi crestere (+) sau descrestere (-) prin stari calitative distincte.

Relatiile calitative cauzale dintre diferite stari sau comportamente din proiect sunt reprezentate ca un graf de influente, ordonate cauzal, si reprezinta legatura cauzala între structura si comportament.

Pentru un proiect cu m stari de tip structura si n stari de tip comportament, unde starea tip structura m are efect direct asupra starii tip comportament 1, propagarea cauzala este de la structura la comportament. Aceasta este o propagare serie, exprimata ca:

Cn           Cn-1     ...      C1           Sm        Sm-1            ...         S1

unde C si S reprezinta prescurtari de la forma C (T) si S

Influentele multiple structura - structura, structura - comportament si comportament - comportament se reflecta în propagarea paralela, de forma:

C           (Sm            Sm-1 ...          S1)

sau

C             ( Cn           Cn-1          ...         C1 )

Combinând propagarea serie si propagarea paralela, structura si comportamentele pot fi reprezentate ca niste grafuri de comportament. Arcele din grafurile de structuri si comportamentele aferente reprezinta legaturi cauzale si dependentele lor [30], [31], permitând atasarea pentru dependintele dinamice din graf ale simbolurilor calitative. Modul de reprezentare a influentelor structurii si a obiectivelor (efecte externe) asupra comportamentului este:

                            Comportament                     Structura                      Efecte externe


Functia

Reprezinta scopul unui artefact produs de o structura. Din cauza dificultatilor de interpretare a limbajului natural, descrierea functiilor este exprimata în câteva cuvinte. Functia este utilizata pentru identificarea comportamentelor care o produc. Functia poate compusa reprezentând subfunctii din mai multe domenii, fiind astfel o notiune abstracta.

F C,  unde   reprezinta directia cauzala.

O functie este caracterizata prin doua atribute si anume, flux si actiune, cu instantele fluxului de intrare sau iesire, component sursa sau destinatie, precum si corespondenta catre functia de baza.

Deci, modelul FCS poate fi privit ca fiind o retea a dependintelor functionale si a relatiilor cauzale dintre cele trei grafuri - functie, comportament si structura - vazute ca niste concepte separate.

Desi procesul de proiectare difera de la un tip de circuit la altul, modul în care o structura sau substructura îsi realizeaza obiectivul sau functia prin comportament poate fi caracterizat si clasificat, abstractie facându-se de domeniul sau de tipul proiectului. O functie poate fi realizata utilizând diferite tipuri de "cai" generalizate din modelul FCS sau diferite modele FCS si anume:

tip I FCS, realizata prin comportament static (F Cs) - acest tip de functie este considerata ca fiind functie primitiva si presupune realizarea functiei conform structurii; atât comportamentul, cât si structura au natura statica; structura putând fi legata de efecte externe, fara însa a fi afectata de acestea;

tip II FCS, realizata prin comportament dinamic (F Cd) - acest tip de functie este considerata functie primitiva si presupune atât comportament, cât si structura cu natura dinamica. Structura dinamica este descrisa prin atribute si relatii care se pot schimba în urma actiunii efectelor externe; în acest fel, un set de valori defineste o stare calitativa distincta a structurii si a comportamentului si, deci, produce o functie, determinata de starea calitativa a comportamentului;

tip III FCS, realizata datorita unui set de comportamente care se produc în acelasi timp;

(F & ): în acest caz, proiectul compune "caile" primitive conjunctive FCS; sunt prezente simultan, comportamente statice si dinamice sau o combinatie a acestora;

tip IV FCS, realizata datorita unui set de comportamente care se produc în secventa;

(F : în acest caz, proiectul contine functii depinzând de o secventa de stari ale comportamentului; functia depinde nu numai de secventa de stari ale comportamentului, ci de ordinea lor particulara si de anumite stari cerute sa se repete una dupa alta; repetarea starilor comportamentului într-o anumita secventa permite sa se produca aceleasi stari ale comportamentului de mai multe ori, dupa ce aceasta stare s-a schimbat.

Astfel, reprezentarea unei functii poate fi descrisa:

F Cs | Cd |(& )| (, )+

Astfel, orice proiect poate fi descris astfel:

P F, C, S, Vsd, KP, KCNT, KC, KCC, KR, unde:

F - functie, C - comportament, S - structura, Vsd  - variabila de stare dinamica,

KP - cunostinte procedurale, KCNT  - cunostinte contextuale,

KC - cunostinte calitative, descriu efectul directional datorat unei schimbari,

KR - cunostinte relationale, care reprezinta dependenta dintre functie, comportament si structura,

KCC - cunostinte cauzale calitative, care însumeaza relatiile cauzale dintre functie si comportamentul calitativ si dintre comportament si structura.

Cunostintele cauzale calitative se descriu folosind expresiile:

  F Cs | Cd |(& )| (, )+

 Cn ...          C1         Sm       ...       S1

  C (T) si S

  C           (Sm          Sm-1 ...          S1)

 C     ( Cn                  Cn-1  ...           C1 )

Acestea constituie elemente necesare construirii bazei de cunostinte.

6.2.2. Modelul de proiectare bazat pe analogie

Procesul de proiectare, bazat pe analogie, este util pentru situatiile în care o rutina de proiectare esueaza în a produce solutia de proiectare si consta în determinarea unui proiect analog cu cerinte similare, care apoi sa poata fi adaptat sau transformat pentru proiectul curent, asistat de cunostintele din domeniu, reprezentate sub forma de reguli euristice si operatori de transformare. Informatiile referitoare la adaptarea sau transformarea proiectului sursa sunt stocate împreuna cu solutia de proiectare pentru proiectul sursa.

Procesul de proiectare este un proces de explorare diferit de un proces de cautare: în timp ce un proces de cautare localizeaza valorile variabilelor într-un spatiu definit al starilor, procesul de explorare propriu proiectarii produce acest spatiu definit al starilor (spatiul starilor pentru un proiect este definit printr-un set de variabile si procese, care opereaza într-un context limitat). Prin producerea spatiului starilor, se realizeaza fie crearea unui nou spatiu al starilor, fie modificarea unui spatiu al starilor existent.

În timp ce procesul de proiectare utilizeaza analogia pentru cautarea solutiei problemei, metoda propusa în cadrul acestei lucrari se ocupa de aspectul exploratoriu al acestei probleme. Procesul de proiectare se desfasoara astfel: un proiect existent este studiat, sunt stabilite variabilele specifice proiectului existent, anume variabilele de tip functie, comportament, structura si din acest spatiu cunoscut al starilor poate fi regasit un proiect analog. Prin maparea proiectului existent curent si a celui analog denumit proiect-sursa, informatia utila este transferata prin analogie la proiectul curent pentru modificarea spatiului starilor existent. Astfel, procesul de proiectare se bazeaza pe o solutie existenta de proiectare, pentru o noua problema de proiectare, si exploreaza solutiile alternative pentru generarea unui proces de proiectare creativ.

În acest sens, lucrarea de fata propune o metoda pentru învatarea sau predarea proiectarii care utilizeaza analogiile între domenii, prototipul proiectului si reprezentarea cunostintelor conduse de functie si comportament.

Generarea unui proces de proiectare creativ consta în doua faze:

regasirea conceptului de baza al unui proiect, si

determinarea analogiilor, ceea ce presupune determinarea similaritatilor ca functie si comportament precum si a diferentelor fata de proiectul de baza.

Functiile primare, asociate cu explicatiile cauzale sau de comportament, precum si cu trasaturile deductive, sunt utilizate pentru determinarea proiectelor similare prin maparea între proiectul sursa si cel rezultant (corespondentele între caracteristici sunt transferate si transformate între proiectul sursa si cel rezultant ca un ghid al procesului de proiectare prin analogie).

Modelul procesului de proiectare prin analogie utilizeaza:

caracteristicile utile, conform conceptului proiectului rezultant, si modalitatile de regasire, conform analogiilor între domenii

adaptarea si transformarea solutiei sursa analoge este dirijata de maparea între sursa si rezultat.

Fiecare proiect prototip contine cunostinte cauzale, care furnizeaza o platforma pentru explicarea modului în care proiectul existent îsi realizeaza functionalitatea si se exploreaza spatiul solutie prin utilizarea conceptului de proiect rezultant, ceea ce mareste probabilitatea de regasire a analogiilor între domenii si dirijeaza procesul de adaptare[72], [73], [74].

Modelul procesului de proiectare prin analogie este reprezentat în figura de mai jos:

                                    Regasire                                 Elaborare                        Evaluare

                                     Proiect                        Analogii              Analogii

Cerinte                                                      mapare

Proiect                                                     concept

Explorare                     

                                                               sursa                   

Rezolvare

Figura 26. Mapare proiecte  analoge

Astfel, conceptul de proiect rezultant reprezinta un punct de început. Cerintele de proiectare sunt descompuse conform conceptului FCS (Functie, Comportament si Structura) sub forma unui nume de concept.

Procesul de proiectare consta în doua faze, si anume: conceptul de regasire si regasirea prin analogie.

A. Procesul de regasire a proiectului

În aceasta faza, este folosit numele conceptului pentru gasirea unui proiect existent si deducerea variabilelor functie primara si comportamentul asociat - acestea reprezinta, ulterior, cheia pentru determinarea analogiilor de proiectare.

B. Determinarea analogiilor

Se realizeaza utilizând ca intrari cerintele de proiectare si conceptul proiectului rezultant, accesate ca indexuri în graful analog. Conceptul de proiect rezultant este utilizat pentru a explica cum functioneaza un proiect existent. Functiile primitive si comportamentele asociate pentru un proiect existent reprezinta, ulterior, cheia pentru determinarea analogiilor de proiectare în diferite domenii (desi, cazul cel mai frecvent este acela al analogiilor în acelasi domeniu, este importanta determinarea analogiilor în diferite domenii precum si a legaturilor între domenii).

C. Procesul de elaborare a analogiilor

Ca o parte a procesului de explorare, maparea este utilizata pentru a identifica corespondentele între sursa si rezultat, în timp ce transferarea analogiei prin procesul de inferenta arata ce anume poate fi folosit din proiectul sursa. Scopul acestei metode, de proiectare bazata pe analogie, este de a gasi structurile si efectele externe de mapare, ca variabile de proiectare, folosind proceduri de "potrivire" (pattern-matching) pentru functii si comportament, ceea ce presupune ca 2 variabile de tip functie sau comportament sau chiar 2 grafuri - comportament sunt identice la nivel abstract [16], [22]. Maparea propriu-zisa are semnificatia ca doua variabile de structura au asociate aceleasi functii sau comportamente.

Determinarea similaritatilor, (marcata prin        ), se realizeaza la nivelul functiei sau comportamentului, maparea (marcata prin           )  se realizeaza la nivelul structurii.

proiect sursa       Functii                    Comportament                      Structura

proiect rezultat Functii                    Comportament                      Structura

Procesul de mapare consta în identificarea elementelor componente de tip structura în ierarhia de tip FCS, care contine cunostinte calitative cauzale, si construirea unei liste de corespondente privind structura [44], [48]. Maparea se realizeaza la diferite niveluri si anume, la nivel individual (elementele, atributele, relatiile si procesele caracteristice) sau la nivel de grup (comportament sau structura).

Regulile de mapare pot fi rezumate astfel:

variabile de tip atribut se mapeaza la variabile de tip atribut;

variabile de tip atribut se mapeaza la variabile de tip relatie;

variabile de tip relatie se mapeaza la variabile de tip relatie;

structuri statice se mapeaza pe structuri statice;

structuri dinamice se mapeaza pe structuri dinamice;

variabile de tip proces se mapeaza pe variabile de tip proces.

                                    Functie                                  Comportament               Structura

 

 încarcaB

  încarcaM

  clapa

 

 

  încarcaB

  Regleaza

  Amplifica

 

 bobina                   baterie

clapa                     conector

 

 producereT              magnetizare

conectare               magnetizare

 

suna

 

 amplificare                dioda

baterie             modul_solar

 

  amplificare             acumulare

                                      redresare

conectare                   încarcare_bat

 

sursa fotovoltaica

actionare

 


sonerie

Figura 27. Exemplu de mapare pentru sursa fotovoltaica si sonerie

În continuare, sunt prezentate schema de principiu care sta la baza integrarii în sistemele de Proiectare Asistata de Calculator, modelul FCS (Functie - Comportament - Structura) si baza de cunostinte pentru o proiectarea unei surse fotovoltaice


       Modul   Interfata  utilizator            

     - structuri/ functiuni/ atribute/ proceduri  Baza de

     - vizualizari fisiere/ierarhii                     date PAC

         Modul de achizitie cunostinte                                      Aplicatii  analitice

       - Dialog   expert   identificare                                    - analiza circuitelor nelineare                                                                                           - simulare  comportament,                                                                                                          -  material, .incidente ...

ierarhii               functiuni                      legaturi

            caracteristici    Model  Proiect

creare/ editare reguli pentru model

               Modelorul     FCS                                                               Manager  de  model

- Stabilire reguli   Mapare / Traversare ierarhie

Modul de construire a bazei de cunostinte              Baza

       (reguli, obiecte, metacunostinte)                                                           Cunostinte

                 Modul de inferenta

recomandari cf. "obiectivelor"

Figura 28. Schema de principiu pentru construirea modelului FCS

Rezumatul partii a II-a

Partea a II a cuprinde definitiile, conceptele de baza, principalele caracteristici si problemele specifice sistemelor inteligente de proiectare asistata (sisteme care utilizeaza elemente de inteligenta artificiala).

Având ca principal scop modelarea procesului ingineresc în partea a II a sunt descrise principiile ingineriei de cunostinte (utilizata pentru înzestrarea sistemelor cu functii inteligente, cum ar fi modelarea cauzala, rationamentul prin analogie). Astfel, pornind de la topologia circuitului, se construieste modelul proiectului utilizând analiza cauzala calitativa si rationamentul cauzal.

Capitolul destinat Modelarii cauzale descrie principiile analizei cauzale, adica modul în care comportamentul componentelor individuale pot fi combinate pentru a explica comportamentul sistemului compus, explicitat prin stare, specificatii, confluente.

Capitolul destinat Modelelor conceptuale contine definirea generala a modelarii bazata???? pe determinarea comportamentului componentei pentru o stare data (prin rezolvarea setului de confluente) sau a comportamentului tranzitiei de la o stare la alta. S-au analizat doua tipuri de modele:

Modele structurale care constau în descrierea comportamentului prin atribute, deci printr-un un set de entitati: Modelul Functiuni - Comportament - Structura se caracterizeaza prin reprezentarea cunostintelor, utilizând ierarhia cauzala pentru descrierea structurii, functiunilor si comportamentului aferente, precum si procesarea acestora pentru determinarea "viewpointului" prin maparea structurii pe comportament;

Modelul bazat pe analogie consta în regasirea conceptului de baza al unui proiect si determinarea analogiilor, ceea ce presupune determinarea similaritatilor ca functie si comportament, precum si a diferentelor fata de proiectul de baza; functiile primare, asociate cu explicatiile cauzale sau de comportament, precum si cu trasaturile deductive sunt utilizate pentru determinarea proiectelor similare prin maparea între proiectul sursa si cel rezultant; realizarea modelelor prezentate anterior presupune utilizarea bazelor de cunostinte pentru detalierea modelului         functiuni - comportament - structura.


Document Info


Accesari: 1903
Apreciat: hand-up

Comenteaza documentul:

Nu esti inregistrat
Trebuie sa fii utilizator inregistrat pentru a putea comenta


Creaza cont nou

A fost util?

Daca documentul a fost util si crezi ca merita
sa adaugi un link catre el la tine in site


in pagina web a site-ului tau.




eCoduri.com - coduri postale, contabile, CAEN sau bancare

Politica de confidentialitate | Termenii si conditii de utilizare




Copyright © Contact (SCRIGROUP Int. 2024 )