Modellvezérelt automatatanulás

OData támogatás
Konzulens:
Tóth Tamás
Méréstechnika és Információs Rendszerek Tanszék

Összetett kiberfizikai rendszerek tervezésére széles körben alkalmaznak modellvezérelt tervezést, amely fejlett modellező nyelvek bevezetésével megkönnyíti a rendszerek megvalósítását. A modellek alkalmasak formális módszerekkel való ellenőrzésre, ami biztonságkritikus feladatkörben - például okos járművek esetében - kiemelten fontos.

Továbbá automatikus kódgenerátorok alkalmazásával a rendszer legfőbb komponensei automatikusan előállíthatóak, beleértve a komponensek helyes viselkedéséért felelős monitorozást is.

Azonban számos szoftverkomponensnek – különös tekintettel a korábban vagy külső felek által fejlesztetteknek – nem áll rendelkezésre megfelelően precíz modellje, ami megakadályozza a formális módszerek alkalmazását. Továbbá az elvárt viselkedés specifikációjának hiányában a monitorkomponensek sem képesek detektálni az esetleges hibákat.

Dolgozatom célja egy olyan specializált algoritmus kidolgozása, mely - megfigyelve egy komplex állapottal rendelkező rendszer viselkedését - a megfigyelt események alapján képes formális modelleket szintetizálni. A tanulás támogatására az irodalomból ismert korszerű automatatanuló algoritmusokra támaszkodom. Célom ezen algoritmusok kiterjesztése a mérnöki tervezésben gyakran alkalmazott absztrakció hatékony kezelésével, ezáltal lehetővé téve a fókuszált tanulást.

Megközelítésem újszerűségét a modellalapú bemeneti nyelv és ennek automatatanuló algoritmusokkal való kombinációja adja. Munkám során elkészítettem egy modellalapú automatatanuló keretrendszert komplex állapottal rendelkező szoftverkomponensek mérnöki modelljének szintetizálására. Gráfmintaillesztő nyelvet használok a tanulás fókuszálására, azaz az absztrakció definiálására. A definiált absztrakció alapján az automatatanuló algoritmus előállítja a rendszer formális modelljét. Az elkészült szoftver felhasználását esettanulmányokkal demonstrálom.

A módszerem által lehetővé válik olyan szoftverkomponensek viselkedésének megtanulása, amelyekre eddigiekben nem volt lehetőség komplexitásuk, illetve adatfüggő viselkedésük miatt. Az így létrejövő specifikációból a komponens viselkedését formálisan ellenőrizhetjük, anomáliadetektáló monitort származtathatunk, valamint dokumentációt, illetve teszteket generálhatunk.

Letölthető fájlok

A témához tartozó fájlokat csak bejelentkezett felhasználók tölthetik le.