Title
AI-based Performance Issue Detection for Cyber-Physical System Software UpdatesAuthor
Reading Date
2023-12-19Version
http://purl.org/coar/version/c_970fb48d4fbd8a85
Rights
© 2023 Aitor Gartziandia AlustizaAccess
http://purl.org/coar/access_right/c_abf2Publisher’s version
https://doi.org/10.48764/harp-4e42Publisher
Mondragon Unibertsitatea. Goi Eskola PoliteknikoaAbstract
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 conti ... [+]
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. [-]
Sistema ziberfisikoak (CPSak) konputazioa eta komunikazioa mundu fisikoarekin integratzen dituzten sistemak dira. CPSetan integratutako software sistemek biziziklo luzea izaten dute eta etengabe ebolu ... [+]
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. [-]
Los sistemas ciber-físicos (CPSs) son sistemas que integran la computación y la comunicación con el mundo físico. Los sistemas software integrados en los CPSs suelen tener un ciclo de vida largo y est ... [+]
Los sistemas ciber-físicos (CPSs) son sistemas que integran la computación y la comunicación con el mundo físico. Los sistemas software integrados en los CPSs suelen tener un ciclo de vida largo y están en continua evolución para incorporar nuevos requisitos, corregir errores y hacer frente a la obsolescencia del hardware. A pesar de que el auge de las nuevas tecnologías brinda la oportunidad de mejorar los métodos de gestión del ciclo de vida de los CPSs, sigue habiendo muchas cuestiones complejas que deben abordarse a lo largo de todo su ciclo de vida, desde el desarrollo hasta el mantenimiento. En este sentido, la creciente expansión del IoT y los CPSs ha puesto de manifiesto la necesidad de mecanismos adicionales relacionados con el despliegue y monitorización de estos sistemas en operación, debido al reto que representa la diversidad de entornos donde se despliegan estos sistemas. La heterogeneidad de los entornos, junto con la alta configurabilidad de los CPSs, hace que probar el sistema bajo todas las condiciones posibles sea imposible, aumentando las posibilidades de que aparezcan errores una vez desplegado el software en operación. Esto afecta especialmente a los errores de rendimiento, que son particularmente difíciles de detectar en laboratorio.
En este contexto, este estudio de doctorado propone un mecanismo para detectar errores de rendimiento en sistemas ciber-físicos. El objetivo es investigar en el uso de diferentes técnicas de IA para construir un oráculo de rendimiento que prediga el rendimiento esperado del sistema en ejecución y detectar errores de rendimiento comparando el valor predicho con las métricas de rendimiento reales monitorizadas. Esta predicción se obtiene mediante un modelo de rendimiento entrenado con datos procedentes de la ejecución de versiones anteriores del software. Después, el oráculo de rendimiento se ha encapsulado como un microservicio, que puede desplegarse de forma sencilla junto con otros servicios para detectar errores de rendimiento en ejecución. Para que el oráculo de rendimiento sea útil en entornos múltiples y heterogéneos, se han investigado diferentes estrategias de entrenamiento.
El método se evaluó aplicándolo a un caso de uso industrial proporcionado por Orona, utilizando su algoritmos de tráfico para sistemas de ascensores. Los resultados muestran que las técnicas de IA probadas pueden utilizarse para predecir el rendimiento de los CPSs y detectar errores, incluso en instalaciones en los que no se dispone de datos para el entrenamiento. [-]
Collections
- Theses - Engineering [223]