În acest articol, este propusă o metodă de inducție fuzzy dezvoltată de autor, ca o combinație a principiilor matematicii fuzzy și teoriei fractalilor. Este introdus conceptul de grad de recursivitate al unui set fuzzy, iar descrierea recursivității incomplete a setului este prezentată ca dimensiunea sa fractală pentru modelarea domeniului de aplicare. Ca domeniu de aplicare al metodei propuse și al modelelor de cunoștințe create pe baza acesteia, este discutată gestionarea ciclului de viață al sistemelor informaționale, inclusiv dezvoltarea scenariilor de utilizare și testarea software-ului.
Relevanța
În procesul de proiectare, dezvoltare, implementare și operare a sistemelor informaționale, este necesar să se acumuleze și să se sistematizeze datele, informațiile și cunoștințele care sunt colectate din exterior sau care apar în fiecare etapă a ciclului de viață al software-ului. Aceasta servește ca suport informațional și metodologic necesar pentru activitățile de proiectare și luarea deciziilor, fiind deosebit de relevant în situații de mare incertitudine și în medii slab structurate. Baza de cunoștințe, formată ca rezultat al acumulării și sistematizării unor astfel de resurse, ar trebui să fie nu doar o sursă de experiență utilă obținută de echipa de proiect în cadrul activităților de creare a sistemului informațional, ci și un instrument maxim de simplu pentru modelarea unor viziuni, metode și algoritmi noi de realizare a obiectivelor proiectului. Cu alte cuvinte, o astfel de bază de cunoștințe este un depozit de capital intelectual și, în același timp, un instrument de gestionare a cunoștințelor [3, 10].
Eficiența, utilitatea, calitatea bazei de cunoștințe ca instrument corelează cu resursele necesare pentru gestionarea acesteia și cu eficiența extragerii cunoștințelor. Cu cât mai simplă și mai rapidă este colectarea și înregistrarea cunoștințelor în baza de date, iar rezultatele cererilor către aceasta sunt mai pertinente, cu atât mai bun și mai fiabil este instrumentul în sine [1, 2]. Totuși, metodele discrete și instrumentele de structurare aplicabile sistemelor... gestiunea bazelor de date, inclusiv normalizarea relațiilor bazelor de date relaționale, nu permit descrierea sau modelarea componentelor semantice, interpretărilor, mulțimilor semantice intervalice și continue [4, 7, 10]. Pentru aceasta, este necesară o abordare metodologică, generalizând cazurile particulare ale ontologiilor finite și apropiind modelul de cunoștințe de continuitatea descrierii domeniului de aplicare al sistemului informațional.
O astfel de abordare poate fi unirea principiilor teoriei fuzzy și conceptului de dimensiune fractală [3, 6]. Optimizând descrierea cunoștințelor pe criteriul gradului de continuitate (mărimea pasului de discretizare a descrierii) în condițiile limitării conform principiului incompletitudinii lui Gödel (în sistemul informațional – incompletitudinea principială a raționamentelor, cunoștințelor deduse din acest sistem cu condiția coerenței sale), având ca rezultat o fazzificare succesivă (transformare în fuzzy), obținem o descriere formalizată, care reflectă maxim de complet și coerent un anumit ansamblu de cunoștințe și cu care se pot efectua orice operații ale proceselor informaționale – colectare, stocare, procesare și transmitere [5, 8, 9].
Definiția recursiei mulțimii fuzzy
Să fie X – mulțimea valorilor unei anumite caracteristici a sistemului modelat:
(1)
unde n = [N ≥ 3] – numărul valorilor unei astfel de caracteristici (mai mare decât setul elementar (0; 1) – (fals; adevărat)).
Să fie X = B, unde B = {a, b, c, …, z} – mulțimea echivalentelor, corespunzând element cu element mulțimii valorilor caracteristicii X.
Atunci mulțimea fuzzy
, care corespunde conceptului fuzzy (în general), descriind caracteristica X, poate fi reprezentată sub formă de:
(2)
unde m – pasul de discretizare a descrierii, i aparține lui N – multiplicitatea pasului.
Prin urmare, pentru a optimiza modelul de cunoștințe despre sistemul informațional conform criteriului continuității (moleculare) descrierii, rămânând în limitele spațiului de incompletitudine a raționamentelor, să introducem gradul de recursiune al mulțimii fuzzy
și vom obține următoarea variantă a reprezentării sale:
(3)
unde
– mulțimea, corespondentă conceptului fuzzy, în general descriind mai complet caracteristica X decât mulțimea
, conform criteriului moliciunii; Re – gradul de recursiune a descrierii.
Trebuie luat în considerare că
(reducem la un set clar) în cazul particular, dacă este necesar.
Introducerea dimensiunii fracționare
La Re = 1, mulțimea
reprezintă o mulțime fuzzy obișnuită de gradul 2, incluzând ca elemente mulțimi fuzzy (sau reprezentările lor clare), care descriu toate valorile caracteristicii X [1, 2]:
(4)
Cu toate acestea, acesta este un caz degenerat, iar în cea mai completă reprezentare, o parte din elemente
poate fi mulțimi, în timp ce altele sunt obiecte triviale (extrem de simple). Prin urmare, pentru a defini o astfel de mulțime, este necesar să introducem recursivitate fracționară – analog cu dimensiunea fracționară a spațiului (în acest context – spațiul ontologic al unui anumit domeniu de subiect) [3, 9].
Pentru Re fracționar, obținem următoarea notare
:
(5)
unde
– mulțime fuzzy pentru valoarea X1,
– mulțime fuzzy pentru valoarea X2 și așa mai departe.
În acest caz, recursivitatea devine practic fractală, iar mulțimile de descriere sunt auto-similare.
Definirea mulțimii capabilităților funcționale ale modulului
Arhitectura sistemului informațional deschis presupune principiul modularității, care asigură posibilitatea scalării, replicării, adaptabilității și emergenței sistemului. Construirea modulară permite să se apropie cât mai mult de realizarea tehnologică a proceselor informaționale de înfățișarea lor obiectivă naturală în lumea reală, elaborând cele mai convenabile instrumente din punct de vedere funcțional, menite să nu înlocuiască oamenii, ci să îi ajute eficient în gestionarea cunoștințelor.
Modulul reprezintă o entitate distinctă a sistemului informațional, care poate fi obligatorie sau opțională pentru scopurile existenței sistemului, dar în orice caz asigură un set unic de funcții în cadrul sistemului.
Toată diversitatea capabilităților funcționale ale modulelor poate fi descrisă prin trei tipuri de operații: creare (înregistrarea de noi date), editare (modificarea datelor înregistrate anterior), ștergere (stergerea datelor înregistrate anterior).
Să fie X – o caracteristică a acestor capabilități funcționale, atunci mulțimea corespunzătoare X poate fi reprezentată sub forma:
(6)
unde X1 – creare, X2 – editare, X3 – ștergere,
(7)
Funcționalitățile fiecărui modul sunt astfel încât crearea datelor nu este autocompatibilă (implementată fără recursie - funcția de creare nu se repetă pe sine), iar editarea și ștergerea, în general, pot preconiza atât o implementare pe elemente (efectuarea operației asupra elementelor selectate din mulțimile de date), cât și a include în compunerea lor operații similare.
Este important de menționat că, dacă operația pentru funcționalitatea X din acest modul nu este executată (nu este implementată în sistem), atunci mulțimea corespunzătoare acestei operații este considerată ca fiind goală.
Astfel, pentru a descrie concepția fuzzy (propoziția) "modulul permite executarea unei operații cu setul corespunzător de date în scopul sistemului informațional", mulțimea fuzzy
într-un caz simplu poate fi reprezentată ca:
(8)
Această mulțime, în general, are o profunditate de recursie egală cu 1,6(6) și este atât fractală, cât și fuzzy în același timp.
Pregătirea scenariilor de utilizare și testare a modulului
În etapele de dezvoltare și exploatare a sistemului informațional, sunt necesare scenarii speciale care descriu ordinea și conținutul operațiunilor pentru utilizarea modulelor conform destinației lor funcționale (scenarii de utilizare, engl. use-case), precum și pentru verificarea conformității între rezultatele așteptate și cele reale ale muncii modulelor (scenarii de testare, engl. test-case).
Având în vedere concepțiile expuse anterior, procesul de lucru asupra acestor scenarii poate fi descris astfel.
Pentru modul se formează o mulțime fuzzy
:
(9)
unde
– mulțime fuzzy pentru operația de creare a datelor conform funcționalității X;
– mulțime fuzzy pentru operația de editare a datelor conform funcționalității X, unde adâncimea recursivă a (încorporarea funcției) este un număr natural și în cazul trivial este egală cu 1;
– mulțime fuzzy pentru operația de ștergere a datelor conform funcționalității X, unde adâncimea recursivă b (încorporarea funcției) este un număr natural și în cazul trivial este egală cu 1.
Această mulțime descrie ce anume (ce obiecte de date) sunt create, editate și/sau șterse în orice variantă de utilizare a modulului.
Apoi se elaborează un set de scenarii de utilizare Ux pentru funcționalitatea X a modulului în discuție, în fiecare dintre care se descrie, pentru ce (pentru ce sarcină de afaceri) se creează, se editează și/sau se șterg obiecte de date, descrise printr-un set
, și în ce ordine:
(10)
unde n – numărul scenariilor de utilizare pentru X.
Apoi se creează un set de scenarii de testare Tx pentru funcționalitatea X pentru fiecare scenariu de utilizare al modulului discutat. În scenariul de testare se descrie, ce valori ale datelor și în ce ordine sunt utilizate în execuția scenariului de utilizare, precum și ce rezultat trebuie obținut:
(11)
unde [D] – un array de date de testare, n – numărul scenariilor de testare pentru X.
În abordarea descrisă, numărul scenariilor de testare este egal cu numărul scenariilor de utilizare corespunzătoare, ceea ce simplifică munca de descriere și actualizare pe măsură ce sistemul evoluează. În plus, un astfel de algoritm poate fi utilizat pentru a automatiza testarea modulelor software ale sistemului informațional.
Concluzie
Metoda prezentată de induție fuzzy poate fi implementată în diferite etape ale ciclului de viață al oricărui sistem informațional modular, atât în scopul acumulării părții descriptive a bazei de cunoștințe, cât și în lucru cu scenariile de utilizare și testare ale modulelor.
Mai mult, inducția fuzzy ajută la sinteza cunoștințelor pe baza descrierilor fuzzy obținute, asemănătoare unui «caleidoscop cognitiv», în care o parte din elemente rămân clare și univoce, în timp ce altele, prin regula auto-similarității, sunt aplicate de un număr dat de ori pentru fiecare mulțime de date cunoscute. În ansamblu, mulțimile fuzzy obținute formează un model care poate fi utilizat atât în scopurile sistemului informațional, cât și în căutarea de noi cunoștințe în general.
O astfel de metodologie poate fi considerată o formă de «inteligență artificială», având în vedere că mulțimile sintetizate nu trebuie să contravină principiului incompletitudinii raționamentelor și sunt menite să ajute inteligența umană, nu să o înlocuiască.
Lista de literatură
- Borisov V.V., Fedulov A.S., Zernov M.M., „Fundamentele teoriei mulțimilor neclare“. M.: Linia fierbinte – Telecom, 2014. – 88 p.
- Borisov V.V., Fedulov A.S., Zernov M.M., „Fundamentele teoriei inferenței logice neclare“. M.: Linia fierbinte – Telecom, 2014. – 122 p.
- Demenok S.L., „Fractal: între mit și meșteșug“. Spb: Academia de Studii Culturale, 2011. – 296 p.
- Zade L., „Fundamentele unei noi abordări pentru analiza sistemelor complexe și a proceselor decizionale“ / „Matematica de astăzi“. M.: „Cunoștințe“, 1974. – p. 5 – 49.
- Kranz S., „Natura variabilă a demonstrației matematice“. M.: Laboratorul de Cunoștințe, 2016. – 320 p.
- Mavrikidi F.I., „Matematica fractală și natura schimbării“ / „Delfis“, nr. 54 (2/2008), .
- Mandelbrot B., „Geometria fractală a naturii“. M.: Institutul de cercetări informatice, 2002. – 656 p.
- „Fundamentele teoriei mulțimilor neclare: Instrucțiuni metodologice“, redactate de Korobova I.L., Dyakov I.A. Tambov: Editura Universității Tehnice de Stat din Tambov, 2003. – 24 p.
- Uspensky V.A., „Apologia matematicii“. M.: Alpina Non-Fiction, 2017. – 622 p.
- Zimmerman H. J. „Teoria mulțimilor neclare – și aplicațiile sale“, ediția a 4-a. Springer Science + Business Media, New York, 2001. – 514 p.
Sursa: habr.com
