[en] Cyber-Physical Systems (CPSs) are systems that integrate computation and communication with the physical world. Software systems that are embedded in CPSs usually have a large life-cycle and are continuously evolving in order to incorporate new requirements, bug fixes, and to deal with hardware obsolescence. Despite the fact that the rise of new technologies provides an opportunity to improve CPS life-cycle management methods, there are still many complex issues that need to be addressed throughout its entire life cycle, from development to maintenance. In this sense, the increasing expansion of IoT and CPSs has highlighted the need for additional mechanisms related to the deployment and monitoring of these systems in operation, due to the challenge that represents the diversity of environments where these systems are deployed. The heterogeneity of the environments, along with the high configurability of CPSs, make testing the these systems under every possible condition impossible, increasing the possibility of errors appearing once the software is deployed in operation. This is especially concerning with performance errors, which are particularly difficult to detect in the lab. In this context, this Ph.D. study proposes a mechanism to detect performance errors in Cyber-Physical Systems. The aim is to investigate different AI techniques to build a performance oracle, which predicts the expected performance of the system in operation and detects performance errors by comparing the predicted value with the actual monitored performance metrics. This prediction is obtained by training a performance model with data from the execution of previous versions of the software. The performance oracle is then encapsulated as a microservice, so that it can be seamlessly deployed along with other services to detect performance errors in operation. In order to make the performance Oracle useful in multiple, heterogeneous environments, different training strategies have been investigated. The method was evaluated by applying it to an industrial use case provided by Orona, using its dispatching traffic algorithm for elevator systems. Results show that the used AI techniques can be used to predict CPS performance and detect errors, even in installations where data for training was not available.

[eu] Sistema ziberfisikoak (CPSak) konputazioa eta komunikazioa mundu fisikoarekin integratzen dituzten sistemak dira. CPSetan integratutako software sistemek biziziklo luzea izaten dute eta etengabe eboluzionatzen ari dira baldintza berriak inplementatzeko, akatsak zuzentzeko edota hardwarearen zaharkitzeari aurre egiteko. Teknologia berrien gorakadak CPSen bizi-zikloaren kudeaketa metodoak hobetzeko aukera ematen duen arren, oraindik ere gai konplexu asko daude aztertzeko bizi-ziklo osoan zehar, garapenetik hasi eta mantenketa lanetararte. Ildo horretan, IoT eta CPSen hedapen gero eta handiagoak agerian utzi du martxan dauden sistemen kudeaketarekin lotutako mekanismo gehigarrien beharra, sistema horiek ezarrita dauden inguruneen aniztasunak dakarren erronka dela eta. Ingurune hauen heterogeneotasuna eta CPSen konfiguragarritasun handia direla eta, ezinezkoa da sistemak jasango dituen baldintza guztiak probatzea, softwarea martxan dagoenean akatsak agertzeko arriskua areagotuz. Horrek bereziki eragiten die errendimendu akatsei, laborategian detektatzeko bereziki zailak baitira. Testuinguru horretan, doktorego tesi honek sistema ziberfisikoetan errendimendu akatsak detektatzeko mekanismo bat proposatzen du. Helburua Adimen Artifizialeko teknikak ikertuz errendimendu orakulu bat eraikitzea da, funtzionamenduan dagoen sistemen errendimendua iragartzeko eta errendimendu akatsak detektatzeko, aurreikusitako balioa monitorizatutako benetako errendimendu metrikekin alderatuz. Iragarpen hori errendimendu eredu baten bidez lortzen da, softwarearen aurreko bertsioen exekuziotik datozen datuekin entrenatu dena. Ondoren, errendimendu orakulua mikroszerbitzu gisa kapsulatu da, eta veste zerbitzu batzuekin batera zabaldu daiteke, gauzatzen ari diren errendimendu akatsak detektatzeko. Errendimendu orakulua ingurune anitz eta heterogeneoetan erabilgarria izan dadin, hainbat entrenamendu estrategia ikertu dira. Metodoa Oronak eskainitako erabilera industrialeko kasu batean aplikatuz ebaluatu da, igogailu sistemetarako duen trafiko algoritmoa erabilita. Emaitzek erakusten dutenez frogatutako Adimen Artifizialeko teknikak CPSen errendimendua aurreikusteko eta akatsak detektatzeko erabil daitezke, baita entrenamendurako daturik erabilgarri ez dagoen instalazioetan ere.