ARTEMIS Joint Undertaking The public private partnership in embedded systems R3-COP Resilient Reasoning Robotic Co-operating Systems Autonóm rendszerek tesztelése egy EU-s projektben Micskei Zoltán Budapesti Műszaki és Gazdaságtudományi Egyetem (BME)
Az R3-COP projekt EU kutatási projekt 2010 2013 Ipar és akadémia 2
Autonóm rendszer Olyan rendszer, ami döntéseket hoz és hajt végre egy adott cél elérése érdekében közvetlen emberi beavatkozás nélkül. Forrás: Connelly, J. et al.: Challenges in Autonomous System Development, 2006 (nem csak robot lehet, de most arra koncentrálunk) 3
Motiváció robotok Robotok száma: ~8 millió Nem csak ipari használat Market Size (1000$s) $70 000 000 $60 000 000 $50 000 000 $40 000 000 $30 000 000 $20 000 000 $10 000 000 $0 Home Medical/Welfare Public Sector Bio-Industrial Manufacturing Year IEEE Spectrum. World Robot Population Reaches 8.6 Million 4
A projekt ipari demonstrátorai (részlet) Care-O-bot (Fraunhofer, Siemens) http://www.care-o-bot.de Laser Guided Vehicle (Elettric 80) http://www.elettric80.com/ Robotporszívó (Philips) 5
Közös kihívások autonóm rendszerek tesztelésekor Környezetfüggő viselkedés Bonyolult, nyílt környezet nagyszámú szituáció Tanulás és adaptáció Emberekkel való együttműködés 6
elési módszerek (ipari tapasztalat) elés valós robottal, valós környezetben Legpontosabb eredmény, de Drága, lassabb tesztvégrehajtás, nehéz megvalósítani Felvett szenzoradatok visszajátszása Valós adatokon alapul, regresszió tesztelése Beavatkozás eredménye? Lefedettség? Teljes környezet szimulálása Bonyolult, egyedi tesztesetek is, de Nem képes minden részletet visszaadni 7
R3-COP tesztelési feladatok Szenzorok tesztelése (pl. gépi látás) Tárgy Ember Robot (SUT) Viselkedés tesztelése Együttműködés tesztelése (pl. protokollok) Robot Robot 8
Nyitott kérdések Hogyan készítsünk teszteket? Környezet állapota a tesztesetek része Lehetséges szituációk szisztematikus bejárása Biztonságos viselkedés ellenőrzése? Robusztusság és biztonságosság Extrém, váratlan környezetek lefedettség mérése? Általános módszer mindehhez? 9
elési célok a viselkedés tesztelésére Feketedoboz, rendszer szintű tesztelés Biztonságosság és robusztusság vizsgálata Szituációk komplex kombinációja Szimulátor felhasználása 10
elési módszer Kontextus adat adat végrehajtás Jelölések: Manuális Automatikus Kontextus és követelmény ezés Forgatókönyvek lefutás Akció Orákulum orákulum értékelés Lefedettségi mértékek Követelmények precíz ezése Automatizálható, szisztematikus teszt és teszt kiértékelés 11
elési módszer Kontextus adat adat végrehajtás Jelölések: Manuális Automatikus Kontextus és követelmény ezés Környezet ezése trace Meglévő ontológiák újrafelhasználása (KnowRob) (Technológia: OWL, EMF meta, OCL kényszerek) Scenariok Akció oracle oracle értékelés Fedettségi mértékek 12 12
elési módszer Kontextus és követelmény ezés Kontextus Forgatókönyvek adat adat végrehajtás trace Jelölések: Követelményleíró nyelv definiálása: Kézi lépés Kontextus minták (kezdeti, belső) Eszközök Esemény és akció sorozatok UML SD operátorok + modalitások Akció oracle oracle értékelés Fedettségi Előfeltétel mértékek Előírás 13 13
elési módszer Kontextus adat adat végrehajtás Jelölések: Manuális Automatikus Kontextus és követelmény ezés Scenariok trace Kontextus ek (absztrakt teszt adatok) a Kezdeti kontextus minták kombinálása és bővítése Extrém konfigurációk a (kényszerek alapján) Akció Leképezhetők konkrét oracle reprezentációra (pl. szimulátorhoz) Fedettségi oracle értékelés mértékek Keresési módszerek teszt lefedettségi elvárások alapján 14 14
elési módszer Kontextus adat adat végrehajtás Jelölések: Manuális Automatikus Kontextus és követelmény ezés Forgatókönyvek Akció oracle oracle trace lefutás rögzítése: Események, akciók, változások értékelés Fedettségi mértékek 15
elési módszer Kontextus adat adat végrehajtás Jelölések: Manuális Automatikus Kontextus és követelmény ezés lefutás értékelése Scenariok minden követelményre orákulum a: Megfigyelő automata Gráfminták és eseményszekvenciák illesztése Akció oracle oracle lefutás értékelés Lefedettségi mértékek 2012.04.2 5. 16
elési módszer Kontextus adat adat végrehajtás Jelölések: Manuális Automatikus Kontextus és követelmény ezés lefedettség számolása Környezeti elemei alapján Forgatókönyvek teljesítése alapján Scenariok Akció oracle oracle lefutás értékelés Lefedettségi mértékek 2012.04.2 5. 17
További információ Weiss, L.G.: Autonomous Robots in the Fog of War. In: IEEE Spectrum, 48.8, 30 57 (2011) doi: 10.1109/MSPEC.2011.5960163 Tenorth, M., Beetz, M.: KnowRob Knowledge Processing for Autonomous Personal Robots. In: IEEE/RSJ International Conference on Intelligent Robots and Systems, 4261 4266, IEEE Press, New York (2009) doi: 10.1109/IROS.2009.5354602 Nguyen, C.D., Perini, A., Tonella, P., Miles, S., Harman, M., Luck, M.: Evolutionary Testing of Autonomous Software Agents. In: Proc. AAMAS (1) 521-528, (2009) Scrapper, C. et al.: MOAST and USAR-Sim: A Combined Framework for the Development and Testing of Autonomous Systems. In: Proc. of SPIE 6230, 62301T (2006) doi: 10.1117/12.663898 Zoltán Szatmári, János Oláh, István Majzik: Ontology-Based Test Data Generation Using Metaheuristics. ICINCO 2011 18
Összefoglalás Jelenlegi hiányosságok: Informális követelményleírás Környezetfüggő viselkedés leírása nehézkes Adaptivitás gondot okoz Ad-hoc teszt adatok használata Kézi teszt megadás Tipikus konfigurációk Hiányzó teszt minőségi mértékek Környezeti konfigurációk tesztelésének mérése Követelmények lefedettsége Javasolt megoldások: Precíz követelményleírás Környezet (kontextus) és akciók ezése Forgatókönyvek ezése Szisztematikus, alapú teszt adat Környezet ek alapján Extrém konfigurációkra is Modell alapú teszt lefedettségi mértékek Környezetfüggő lefedettségi mértékszámok Forgatókönyvek lefedettsége Micskei Zoltán, http://mit.bme.hu/~micskeiz Hibatűrő Rendszerek Kutatócsoport, http://inf.mit.bme.hu 19