Többcélú optimalizációs módszerek szabály alapú tervezési tér bejáráshoz
A tervezési tér bejárás (Design Space Exploration - DSE) célja olyan különböző rendszerterv javaslatok félautomatikus elkészítése, amelyek kielégítik a rendszerrel szemben támasztott numerikus és strukturális kényszereket. A DSE széles körben alkalmazott megközelítés a modellvezérelt rendszertervezésben (Model Driven System Design - MDSD) tervezési folyamatok részleges automatizálására vagy autonóm rendszerek dinamikus újrakonfigurálására. A szabály alapú DSE megközelítések egy kezdeti modellből kiindulva, transzformációs szabályok alkalmazásával érik el a kívánt célállapotot, amelyet jellemzően deklaratív modell-lekérdezések definiálnak. Ilyenkor a tervezési tér bejárás eredményként transzformációs szabályok egy sorozatát kapjuk, amely a kezdeti modellt egy a célokat kielégítő állapotba viszi át.
A DSE kihívásait sokszor többcélú optimalizációs (Multi-Objective Optimization - MOO) problémaként is felfoghatjuk, amikor néhány numerikus érték minimalizálása vagy maximalizálása mellett kell érvényes megoldást találni. A genetikus algoritmusok (GA) és a metaheurisztikus módszerek elterjedten használtak MOO problémák esetén. Ezek a módszerek egy előre meghatározott mennyiségű egyedet (azaz lehetséges megoldást) tartanak számon és iteratívan bővítik ezek halmazát mutációs és keresztező operációk felhasználásával, miközben folyamatosan eldobják a célfüggvény által gyengébbnek minősített egyedeket.
Ebben a dolgozatban egy olyan (az Université de Montréal egyetem kutatóival közösen kidolgozott) megközelítést mutatok be, amely a többcélú optimalizálás technikáit használja fel a tervezési tér bejáráshoz, megtartva a szakterület függetlenség és a magas absztrakciós szint előnyeit. Az egyedeket szabályok egy sorozata reprezentálja, a mutációs operátorok ezeket a sorozatokat módosítják például új szabály beszúrásával, a keresztező operátorok pedig szabályokat cserélnek ki két egyed között. Az optimalizálandó numerikus értékeket deiniálhatják a szabálysorozat által elérhető modellállapotra tett modell-lekérdezések, illetve származtathatóak szabály végrehajtásokból is. A szelekciós operátor az NSGA-II genetikus algoritmuson alapul.
A TDK munkám keretében egy Eclipse alapú prototípus implementációt is elkészítettem a VIATRA-DSE keretrendszerre építve, ahol a modellek reprezentálására az Eclipse modellező keretrendszerét (EMF) használtam, míg a modell-lekérdezések és transzformációs lépések definiálását az EMF-IncQueryvel végeztem el. Az új keretrendszer biztosítja a DSE probléma (1) egyszerű definiálását a célok leírásától az operátorok megadásáig, (2) részletekbe menő konfigurálását (például megállási feltétel, valószínűségek), továbbá (3) szabadon testreszabható új mutáció, keresztező és szelekció operátorokkal. Ezenfelül támogatja a többszálú végrehajtást is és egy lazán csatolt tesztkeretrendszer könnyíti a működés analizálását. Két különböző alkalmazásterületről származó esettanulmányon elvégzett mintakísérletekkel és mérésekkel támasztottam alá a kidolgozott megoldás gyakorlati alkalmazhatóságát.
szerző
-
Nagy András Szabolcs
mérnökinformatikus
nappali
konzulensek
-
Dr. Horváth Ákos
tudományos munkatárs, Mesterséges Intelligencia és Rendszertervezés Tanszék -
Dr. Varró Dániel
egyetemi tanár, Mesterséges Intelligencia és Rendszertervezés Tanszék