ADAS-rendszerek szimuláción alapuló robusztussági tesztelése
Napjainkban egyre gyakrabban használnak mesterséges intelligencián alapuló komponenseket a fejlett vezetőtámogató rendszerek (ADAS) fejlesztéséhez. Az autóktól kezdve a villamosokon át az önvezető ipari targoncagépekig számos alkalmazás létezik már, amelyekben autonóm komponenseket használnak, és még több van fejlesztés alatt. Ezeket a járműveket autonóm komponensek irányítják vagy segítik, amelyek az érzékelőik által gyűjtött adatok alapján hoznak döntéseket.
Ezek a mesterséges intelligenciát alkalmazó komponensek kritikusak, így kiemelten fontos a helyes viselkedésüket biztosítani, mivel hiba esetén jelentős anyagi károk keletkezhetnek, vagy akár emberi életek is veszélybe kerülhetnek. Még a legkorszerűbb tesztelési technikák sem képesek hatékonyan támogatni az automatizált tesztelést. Ezeknél a rendszereknél komoly kihívást jelent, hogy a paramétertér végtelen, valamint a fizikai szenzoradatok kezelése is nehéz. Továbbá a rendszer követelményei nem teljesen ismertek, mivel nem rendelkezünk a legjobb vezetési gyakorlatok teljes listájával.
Munkánk során egy olyan tesztelési módszer és eszközkészlet elkészítése és bemutatása a cél, amellyel hatékonyan lehet a járművek ADAS moduljait tesztelni. A komplex környezet miatt számos különböző forgatókönyvet kell lefednünk releváns mutációkkal, hogy teszteljük az MI-alapú komponensek robusztusságát.
Egy nagy teljesítményű gráfgeneráló algoritmus segítségével tesztforgatókönyvek absztrakt ekvivalenciaosztályait generáljuk. Ezek a tesztek meghatározzák az összes szereplő magas szintű viselkedését, beleértve a vizsgált járművet, valamint a környezet egyéb objektumait is, amelyek befolyásolják az ADAS-modulok döntéshozatalát. Először a fejlett absztrakciós technikák alkalmazásával szemantikailag különböző közlekedési szituációkat generálunk. Ezután minden egyes szituációhoz sokféle tesztesetet generálunk releváns, különböző, de szemantikailag megegyező mutációkkal, így tesztelhetjük az ADAS-modulok robusztusságát. A generált tesztekhez egy valószínűségi változókat és eloszlásokat kezelő forgalmi szituációkat leíró nyelvet (Scenic) használunk. A tesztesetek szimulációs környezetben (Unreal Engine-en futó CARLA) futtathatók. A szimulációs környezetben valós helyszínek használata is lehetséges: térképadatokból (OpenStreetMap, Google Maps) valósághű térképeket tudunk származtatni, így a teszteseteket valósághű környezetben lehet végrehajtani. A szimulátor emellett valósághű fizikai jármű- és gyalogosmodelleket és szenzoradatokat tartalmaz és ami a legfontosabb, a tesztesetek kiértékeléséhez szükséges, elvárt kimeneteket is rendelkezésre bocsájtja.
Dolgozatunkban egy olyan eszköztárat mutatunk be, amely lehetővé teszi az ADAS-modulok teszteseteinek automatikus generálását és végrehajtását. Az első lépésben végzett magasszintű modellgenerálás a tesztesetek szemantikai változatosságát biztosítja, míg a második lépésben bemutatott mutációk segítségével tesztelhetjük az ADAS-modulok robusztusságát is. Az absztrakt modellek generálásához egy nagy teljesítményű gráfgeneráló algoritmus továbbfejlesztett változatát használjuk. Egy valósághű szimulátor segítségével a tesztjeinket a valós környezetek szimulált változataiban is végre tudjuk hajtani.
szerzők
-
Ficsor Attila
Mérnök informatikus szak, mesterképzés
mesterképzés (MA/MSc) -
Pintér Balázs
Mérnök informatikus szak, alapképzés
alapképzés (BA/BSc)
konzulensek
-
-
Dr. Vörös András
egyetemi docens, Mesterséges Intelligencia és Rendszertervezés Tanszék