DE102021132827A1 - Verfahren zur automatischen Untersuchung von Zuständen und Übergängen einer Mensch- Maschine-Schnittstelle ( HMI) - Google Patents

Verfahren zur automatischen Untersuchung von Zuständen und Übergängen einer Mensch- Maschine-Schnittstelle ( HMI) Download PDF

Info

Publication number
DE102021132827A1
DE102021132827A1 DE102021132827.6A DE102021132827A DE102021132827A1 DE 102021132827 A1 DE102021132827 A1 DE 102021132827A1 DE 102021132827 A DE102021132827 A DE 102021132827A DE 102021132827 A1 DE102021132827 A1 DE 102021132827A1
Authority
DE
Germany
Prior art keywords
hmi
agent
image data
screen
current screen
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102021132827.6A
Other languages
English (en)
Inventor
Yon Shin Teo
Yushi Cao
Yuxuan Toh
Vinay Vishnumurthy Adiga
Wai Aung Phyo
Ga Xian Chong
Lin Shang-Wei
Yang Liu
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Continental Automotive Technologies GmbH
Nanyang Technological University
Original Assignee
Continental Automotive Technologies GmbH
Nanyang Technological University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Continental Automotive Technologies GmbH, Nanyang Technological University filed Critical Continental Automotive Technologies GmbH
Priority to DE102021132827.6A priority Critical patent/DE102021132827A1/de
Priority to PCT/EP2022/084343 priority patent/WO2023110478A1/en
Publication of DE102021132827A1 publication Critical patent/DE102021132827A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3696Methods or tools to render software testable
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3664Environments for testing or debugging software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3692Test management for test results analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]

Abstract

Um die Softwareexploration von HMI-Geräten (14) zu verbessern, schlägt die Erfindung ein Verfahren vor, das einen KI-Agenten (28, 30) umfasst, der eine von dem HMI-Gerät (14) auszuführende HMI-Aktion bestimmt. Die HMI-Aktion wird aus einem Satz zulässiger HMI-Aktionen ausgewählt, die von dem KI-Agenten (28, 30) auf der Grundlage einer Reihe vorgegebener Testbedingungen ausgeführt werden dürfen. Die Testumgebung (12) erfasst Bilddaten (38) vom HMI-Gerät (14), wobei die Bilddaten (38) einen aktuellen Bildschirm anzeigen, der dem HMI-Zustand zugeordnet ist, und vergleicht den aktuellen Bildschirm mit einem Satz aller bekannten Bildschirme. Wenn der aktuelle Bildschirm nicht Teil der Menge aller bekannten Bildschirme ist, führt der KI-Agent (28, 30) eine semantische Analyse des aktuellen Bildschirms durch, ermittelt eine semantische Beschreibung des aktuellen Bildschirms, kombiniert den aktuellen Bildschirm und die semantische Beschreibung zu einem annotierten Bildschirm und fügt den annotierten Bildschirm zur Menge aller bekannten Bildschirme hinzu. Schließlich verwendet der KI-Agent (28, 30) den annotierten Bildschirm, der dem aktuellen Bildschirm entspricht, um den Satz der erlaubten Aktionen auf der Grundlage des annotierten Bildschirms zu aktualisieren.

Description

  • TECHNISCHES GEBIET
  • Die Erfindung betrifft ein computerimplementiertes Verfahren zur automatischen Untersuchung von HMI-Zuständen und HMI-Übergängen eines HMI-Geräts.
  • HINTERGRUND
  • Aus dem Stand der Technik ist die Verwendung von Computer Vision und OCR-Techniken (Optical Character Recognition), um Elemente der Benutzeroberfläche auf den Bildschirmen der Mensch-Maschine-Interaktion (HMI) zu erkennen, bekannt. Normalerweise ist menschliches Eingreifen erforderlich, um mit der zu testenden Software (englisch: software under test, kurz: SUT) zu interagieren, entweder in Form von manuellen Eingaben während des Tests oder durch Automatisierungsskripte, die Bildvorlagen und Datenbanken mit Bildschirmbeschreibungen verwenden, die ebenfalls von menschlichen Testern vorbereitet werden. Obwohl dieser Ansatz Fehler auf den HMI-Bildschirmen mit hoher Genauigkeit erkennen kann, gilt er nicht als skalierbar, da die menschlichen Tester die Vorlagen, Beschreibungen usw. für jeden zu testenden Bildschirm manuell erstellen müssen.
  • Ein auf einem künstlichen neuronalen Netzwerk basierender Ansatz hat das Potenzial, besser verallgemeinert werden zu können, aber es kann ein zusätzlicher Aufwand in Form von Modelltraining, Wartung und kontinuierlicher Bereitstellung erforderlich sein, um sicherzustellen, dass das Modell mit einer Veränderung der Designprinzipien von HMI-Geräten/Software im Laufe der Zeit Schritt halten kann. Außerdem können selbst einfache Symbolsätze bei verschiedenen Projekten unterschiedlich aussehen, auch wenn sie ähnliche Bedeutungen haben.
  • Im Bezug auf die Automatisierung der Exploration der zugrunde liegenden Struktur der HMI-Software auf Systemebene, verlässt sich die Industrie bisher stark auf die manuelle Kontrolle durch Tester. Heuristische Ansätze wie das zufällige Fuzzing wurden vorgeschlagen, um das Testen zu verbessern. Obwohl ein Fuzzing-Explorationsansatz nach dem Zufallsprinzip ohne vorherige Kenntnis der SUT oder des Modelltrainings eingesetzt werden kann, leidet er unter einem Mangel an Effizienz und garantiert nicht unbedingt eine vollständige Abdeckung.
  • Ohne die Fähigkeit, die Elemente der Benutzeroberfläche (GUI) zu verstehen, um die richtigen Eingaben vorzunehmen, ist das Fuzzing-basierte Testen in der Regel nicht in der Lage, die auf dem HMI-Gerät angezeigten Strukturen und Informationen - wie ein menschlicher Software-Testingenieur - zu extrahieren und zu verifizieren und dabei die durch die Testbedingungen auferlegten Einschränkungen einzuhalten.
  • Es wird auf die folgenden Dokumente verwiesen:
    • [1] Takanen, A., Demott, J.D., Miller, C. and Kettunen, A., 2018. Fuzzing for software security testing and quality assurance. Artech House.
    • [2] Sutton, M., Greene, A. and Amini, P., 2007. Fuzzing: brute force vulnerability discovery. Pearson Education.
    • [3] Adamo, D., Khan, M.K., Koppula, S. and Bryce, R., 2018, November. Reinforcement learning for android gui testing. In Proceedings of the 9th ACM SIGSOFT International Workshop on Automating TEST Case Design, Selection, and Evaluation (pp. 2-8).
    • [4] Mnih, V., Kavukcuoglu, K., Silver, D., Rusu, A.A., Veness, J., Bellemare, M.G., Graves, A., Riedmiller, M., Fidjeland, A.K., Ostrovski, G. and Petersen, S., 2015. Human-level control through deep reinforcement learning. nature, 518(7540), pp.529-533.
    • [5] Zheng, Y., Xie, X., Su, T., Ma, L., Hao, J., Meng, Z., Liu, Y., Shen, R., Chen, Y. and Fan, C., 2019, November. Wuji: Automatic online combat game testing using evolutionary deep reinforcement learning. In 2019 34th IEEE/ACM International Conference on Automated Software Engineering (ASE) (pp. 772-784). IEEE.
    • [6] Vuong, T.A.T. and Takada, S., 2018, November. A reinforcement learning based approach to automated testing of android applications. In Proceedings of the 9th ACM SIGSOFT International Workshop on Automating TEST Case Design, Selection, and Evaluation (pp. 31-37).
    • [7] Still, S. and Precup, D., 2012. An information-theoretic approach to curiositydriven reinforcement learning. Theory in Biosciences, 131(3), pp.139-148.
    • [8] Tang, H., Houthooft, R., Foote, D., Stooke, A., Chen, X., Duan, Y., Schulman, J., De Turck, F. and Abbeel, P., 2017. # exploration: A study of count-based exploration for deep reinforcement learning. In 31st Conference on Neural Information Processing Systems (NIPS) (Vol. 30, pp. 1-18).
    • [9] Pathak, D., Agrawal, P., Efros, A.A. and Darrell, T., 2017, July. Curiositydriven exploration by self-supervised prediction. In International Conference on Machine Learning (pp. 2778-2787). PMLR.
    • [10] Sun, X., Li, T. and Xu, J., 2020, December. UI Components Recognition System Based On Image Understanding. In 2020 IEEE 20th International Conference on Software Quality, Reliability and Security Companion (QRS-C) (pp. 65-71). IEEE.
    • [11] Ynion, J.C., 2020. Using AI in Automated UI Localization Testing of a Mobile App.
    • [12] Singh, M.K., Fernandes, W.M. and Rashid, M.S., 2021. Robust UI Automation Using Deep Learning and Optical Character Recognition (OCR). In Proceedings of International Conference on Recent Trends in Machine Learning, loT, Smart Cities and Applications (pp. 33-44). Springer, Singapore.
    • [13] CN 106201898 A
    • [14] US 2019012254 A1
    • [15] WO 2020086773 A1
    • [16] US 5542043 A
    • [17] US 2007022407 A1
    • [18] US 2019179732 A1
    • [19] US 2003126517 A1
    • [20] US 20180157386 A1
    • [21] US 2003229825 A1
    • [22] US 20150378876 A1
    • [23] US 20150339213 A1
  • Darüber hinaus wird auf die unveröffentlichte deutsche Patentanmeldung 10 2021 115 031.0 verwiesen, deren Offenbarung hiermit insbesondere zum Zwecke der ausreichenden Offenbarung durch Verweis miteinbezogen wird.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Es ist die Aufgabe der Erfindung, Testverfahren für HMI-Geräte, wie z.B. ein Fahrzeug-Armaturenbrett, zu verbessern, vorzugsweise in Bezug auf Effizienz, Abdeckung und Zeitbedarf.
  • Die Erfindung schafft ein computerimplementiertes Verfahren zur automatischen Untersuchung von HMI-Zuständen und HMI-Übergängen zwischen diesen HMI-Zuständen eines HMI-Geräts, das in einer Testumgebung angeordnet ist, wobei jeder HMI-Übergang einen ersten HMI-Zustand mit einem zweiten HMI-Zustand über eine HMI-Aktion verbindet, wobei das Verfahren umfasst:
    1. a) einen KI-Agenten, der eine von dem HMI-Gerät auszuführende HMI-Aktion mit einem Verfahren des Verstärkungslernen bestimmt, wobei die HMI-Aktion aus einem Satz erlaubter HMI-Aktionen ausgewählt wird, die von dem KI-Agenten auf der Grundlage eines Satzes vorbestimmter Testbedingungen ausgeführt werden dürfen;
    2. b) der KI-Agent übermittelt die in Schritt a) bestimmte HMI-Aktion an die Testumgebung, wobei die Testumgebung:
    3. c) ein HMI-Steuersignal erzeugt, das das HMI-Gerät dazu veranlasst, von dem ersten HMI-Zustand in den zweiten HMI-Zustand zu wechseln; und
    4. d) Bilddaten von dem HMI-Gerät erfasst, wobei die Bilddaten für einen aktuellen Bildschirm indikativ sind, der mit dem zweiten HMI-Zustand verbunden ist, und den aktuellen Bildschirm mit einer Menge aller bekannten Bildschirme vergleicht, wobei, wenn der aktuelle Bildschirm nicht Teil der Menge aller bekannten Bildschirme ist, Schritt e) durchgeführt wird, andernfalls Schritt f) durchgeführt wird;
    5. e) der KI-Agent führt eine semantische Analyse des in Schritt d) erfassten aktuellen Bildschirms durch, bestimmt eine semantische Beschreibung des aktuellen Bildschirms, kombiniert den aktuellen Bildschirm und die semantische Beschreibung zu einem annotierten Bildschirm und fügt den annotierten Bildschirm zu der Menge aller bekannten Bildschirme hinzu;
    6. f) der KI-Agent verwendet den zuvor in Schritt e) erhaltenen annotierten Bildschirm, oder er wählt den annotierten Bildschirm, der dem aktuellen Bildschirm entspricht, aus der Menge aller bekannten Bildschirme aus und aktualisiert die erlaubte Aktionsmenge auf der Grundlage des annotierten Bildschirms.
  • Vorzugsweise umfasst Schritt a) das Erkennen von Bilddaten, die von dem HMI-Gerät angezeigt werden, wobei die Bilddaten den HMI-Zustand anzeigen. Vorzugsweise umfasst Schritt a) das Hashing der Bilddaten, um eine Hash-Darstellung des HMI-Zustands zu erhalten. Vorzugsweise erzeugt der KI-Agent eine HMI-Aktion, wenn er innerhalb eines vorbestimmten Zeitintervalls oder einer vorbestimmten Anzahl von HMI-Aktionen auf eine zuvor unbekannte Hash-Darstellung stößt. Die HMI-Aktion wird durch ein neugierbasiertes Verstärkungslernverfahren bestimmt, das mindestens ein Neugiermaß enthält, das für jedes Paar aus HMI-Zustand und HMI-Aktion definiert ist. Vorzugsweise umfasst Schritt a) das Zusammenstellen einer Sequenz von HMI-Aktionen, die durch einen DFA bestimmt wird. Vorzugsweise sendet der KI-Agent die HMI-Aktion oder eine Sequenz von HMI-Aktionen an die Testumgebung.
  • Vorzugsweise wird eine Übergangsfunktion des DFA so aktualisiert, dass sie einen zuvor nicht berücksichtigten HMI-Übergang von einem ersten HMI-Zustand zu einem zweiten HMI-Zustand enthält, wenn der zweite HMI-Zustand zuvor nicht berücksichtigt wurde. Vorzugsweise ist das Verstärkungslernverfahren ein Q-Lernverfahren, bei dem jedem Paar aus HMI-Zustand und HMI-Aktion ein Q-Wert zugeordnet ist, der definiert ist, um zeitliche Beziehungen zwischen HMI-Zuständen und HMI-Aktionen zu speichern und zu erfassen, aus denen die zu sendende HMI-Aktion erzeugt wird. Vorzugsweise wird bei der Durchführung einer bestimmten HMI-Aktion ein entsprechendes Neugiermaß verringert.
  • Vorzugsweise wird der Q-Wert gemäß der folgenden Gleichung aktualisiert Q n e w ( s , a ) = Q c u r r e n t ( s , a ) + α [ β curiosity ( s , a ) + γ m a x a Q ( s ' , a ) Q c u r r e n t ( s , a ) ]
    Figure DE102021132827A1_0001
    wobei Qnew der aktualisierte Q-Wert, Qcurrent der aktuelle Q-Wert, α die Lernrate, β der Neugierkoeffizient, γ der Abzinsungsfaktor, curiosity(s, a) das mit dem HMI-Zustand, s, und der HMI-Aktion, a, verbundene Neugiermaß ist und s' einen neu erreichten HMI-Zustand bezeichnet.
  • Vorzugsweise wird die HMI-Aktion mit einem ε-Greedy-Verfahren erzeugt, wobei das ε-Greedy-Verfahren mit einer vorgegebenen Wahrscheinlichkeit von 1-ε die HMI-Aktion auswählt, die den maximalen Q-Wert hat, oder mit einer vorgegebenen Wahrscheinlichkeit von ε die HMI-Aktion auswählt, die das maximale Neugiermaß hat.
  • Vorzugsweise bestimmt der DFA den HMI-Übergang, der das höchste Neugiermaß hat, wobei der DFA außerdem die kürzeste Sequenz von HMI-Aktionen identifiziert, die zu dem HMI-Übergang mit dem höchsten Neugiermaß führen, und diese Sequenz von HMI-Aktionen zum Senden ausgibt.
  • Vorzugsweise umfasst das Verfahren einen Schritt zum Speichern der angetroffenen HMI-Übergänge und der angetroffenen HMI-Zustände zur weiteren Verarbeitung.
  • Vorzugsweise umfasst das Verfahren einen Schritt g), in dem das Verfahren ab Schritt a) wiederholt wird, bis eine vorbestimmte Abbruchbedingung erfüllt ist und/oder die Ausführung des Verfahrens gestoppt wird, wenn die Abbruchbedingung erfüllt ist.
  • Vorzugsweise wird die Abbruchbedingung aus einer Gruppe ausgewählt, die aus der Anzahl der HMI-Übergänge, der zugewiesenen Zeit und dem Nicht-Erkennen neuer HMI-Zustände innerhalb eines vorgegebenen Zeitlimits besteht.
  • Vorzugsweise umfasst das Verfahren einen Schritt, bei dem der KI-Agent die Menge aller bekannten Bildschirme mit den annotierten Bildschirmen ausgibt und/oder einen Schritt, bei dem die angetroffenen HMI-Übergänge gespeichert und ausgegeben werden.
  • Vorzugsweise wird in Schritt a) die Menge der erlaubten Aktionen und/oder die Menge der Testbedingungen mit Hilfe der natürlichen Sprachverarbeitung bestimmt.
  • Vorzugsweise werden in Schritt e) die Bilddaten des aktuellen Bildschirms in Textbilddaten, die nur textähnliche Elemente enthalten, und Grafikbilddaten, die nur grafikähnliche Elemente enthalten, zerlegt, die Textbilddaten und die Grafikbilddaten getrennt semantisch analysiert und die semantische Beschreibung aus den getrennt analysierten Text- und Grafikbilddaten kombiniert.
  • Vorzugsweise wird bei der semantischen Analyse der Textbilddaten und der Grafikbilddaten für jede dieser Daten ein Satz von Wortkandidaten erzeugt, wobei die Wortkandidaten für den aktuellen Bildschirm indikativ sind.
  • Vorzugsweise werden die Mengen der Wortkandidaten auf eine Menge von repräsentativen Wörtern eingegrenzt, indem die Mengen der Wortkandidaten mit Hilfe von Worteinbettung vektorisiert werden.
  • Die Erfindung schafft ein System, das eine Testumgebung mit einem zu testenden HMI-Gerät und einer Steuereinheit, die mit dem HMI-Gerät operativ gekoppelt ist, sowie eine Agentenumgebung umfasst, die mit der Testumgebung operativ gekoppelt ist, wobei das System so konfiguriert ist, dass es ein zuvor beschriebenes Verfahren durchführt, um die HMI-Zustände und/oder HMI-Übergänge des HMI-Geräts zu erkunden.
  • Die Erfindung schafft ein Computerprogramm, ein maschinenlesbares Speichermedium oder ein Datensignal, das Anweisungen enthält, die bei Ausführung auf einer Datenverarbeitungsvorrichtung und/oder Steuereinheit die Vorrichtung veranlassen, einen, einige oder alle Schritte eines zuvor beschriebenen Verfahrens durchzuführen.
  • Eine vollautomatische Lösung zum Testen von HMI-GUI-Software sollte über eine der folgenden Funktionen verfügen:
    • i) Verstehen der Ul-Elemente auf den Bildschirmen;
    • ii) Entscheidungsfindung über erlaubte Aktionsinputs;
    • iii) Nachahmung menschlicher Eingaben zur vollständigen Exploration der Software, um potenzielle Defekte und Bugs zu entdecken
  • Für Anwendungen in der Automobilindustrie ist die Erkennung von Fehlern im Design von HMI-Geräten und HMI-Software von größter Bedeutung, da sie das Benutzererlebnis beeinträchtigen und auch Auswirkungen auf die Sicherheit haben können. Insgesamt zielt die Idee auf einen KI-Agenten ab, der die Exploration von HMI-GUI-Software auf intelligente und autonome Weise ohne menschliches Eingreifen durchführen kann, ergänzt durch die kognitive Fähigkeit, sein Verhalten während der Exploration an verschiedene Teile der Software anzupassen, die unterschiedlichen funktionalen Zwecken dienen können, wie z.B. Benutzereinstellungen, Unterhaltung, Überwachung des zu testenden Geräts (englisch: device under test, kurz: DUT) und so weiter.
  • Die unveröffentlichte deutsche Patentanmeldung 10 2021 115 031.0 offenbart einen auf Neugier basierenden Ansatz, bei dem die Software als Black Box behandelt wird und kein Vorwissen oder Hinweise von Domänenexperten berücksichtigt werden. Abgesehen von der Verwendung eines DFA (deterministischen endlichen Automaten, englisch: deterministic finite automaton), um die Zustands-Aktions-Übergänge aufzuzeichnen, markiert der Agent den Bildschirm nur als besucht/noch nicht besucht, indem er die Bilder vergleicht, aber er keine Informationen aus dem Bildschirm extrahiert.
  • In tatsächlichen Szenarien werden Softwaretests in der Regel unter einer Reihe von Einschränkungen durchgeführt, die die zulässigen Aktionen der Agenten einschränken oder erweitern können. Zum Beispiel kann die Funktion bestimmter Eingaben unterschiedlich sein, je nachdem, welchen Bildschirm die Software anzeigt.
  • Bestimmte Testfälle können auch erfordern, dass der Agent die kognitiven Fähigkeiten oder zumindest die visuelle Wahrnehmung zu besitzen, um jeden Bildschirm zu „sehen“, um z.B. zu prüfen, ob alle Symbole korrekt angezeigt werden oder um bestimmte Funktionen (z.B. das Zurücksetzen auf Werkseinstellungen) nicht auszulösen, die den Testablauf stören könnten.
  • Bislang wurde nur der Schritt der Exploration berücksichtigt. Hier wird diese Idee weiterentwickelt und verbessert, indem beschrieben wird, wie ein solcher Agent effektiv mit der Testumgebung interagieren und Informationen aus dieser extrahieren kann, die typischerweise Hardware- und Softwarekomponenten für den Test von HMI-Geräten auf Systemebene umfassen. Mit der Fähigkeit, sowohl die Hardwareals auch die Softwarekomponenten im Testsystem zu steuern und sein Verhalten an die auf dem HMI-Gerät angezeigten Informationen anzupassen, ist der Agent in der Lage, die Exploration von Softwarepfaden und die Identifizierung visueller Elemente im Rahmen des Test-Workflows auf eigenständige Weise zu automatisieren.
  • Im Vergleich zu traditionellen heuristischen Ansätzen zur Softwareexploration (wie Fuzzing) können Effizienz, Abdeckungsgrad, (menschlicher) Arbeitsaufwand, Zeitbedarf und Leistungsvarianz („Lotterieeffekt“) aufgrund von Zufälligkeit und unsystematischer Natur verbessert werden.
  • Die Erkennung von Benutzeroberflächenelementen auf HMI-Geräten mit einem vorlagenbasierten Ansatz ist zwar der derzeitige Industriestandard und weist zwar eine hohe Erkennungsrate von Designfehlern auf, jedoch ist dieser Ansatz nicht skalierbar, da er in der Regel einen erheblichen manuellen Aufwand seitens der Tester erfordert, um die Vorlagen vorzubereiten. Außerdem kann die Ausgabe nicht ohne weiteres zur Unterstützung der Automatisierung bei der Softwareexploration verwendet werden, da der vorlagenbasierte Ansatz keine semantischen Informationen über die untersuchten Bildschirme liefert.
  • Hier ist es mit KI möglich, Informationen aus dem HMI-DUT effektiv zu extrahieren, indem es vollständig in die Testumgebung integriert wird. Es ist daher möglich, die Informationen zu nutzen, um die Entscheidungsfindung der KI zu verbessern und einen zusätzlichen Nutzen wie z.B. KI-basierte Bildschirmanmerkungen und die Erkennung von Designfehlern auf den Bildschirmen der Benutzeroberfläche des HMI-Geräts zu generieren.
  • Der hier beschriebene KI-Agent verfügt über die kognitive Fähigkeit, die zu testenden Zustände des HMI-Geräts zu „sehen“ und kann sich entsprechend an verschiedene Testbedingungen anpassen. Zu diesem Zweck können bestimmte Verhaltensweisen oder vordefinierte Regeln in dem Agenten fest programmiert werden, damit er mit verschiedenen Szenarien umgehen kann.
  • Der in der Regel erhebliche Aufwand für die Zuordnung der von der KI entdeckten Zustände zu den tatsächlichen Bildschirmen in der Software kann vermieden werden, da der neuartige KI-Agent die semantischen Bedeutungen der Bildschirme versteht. Infolgedessen sind menschliche Tester für den Testprozess selbst nicht mehr erforderlich.
  • Es sollte beachtet werden, dass die Erfindung zwar in Bezug auf ein Armaturenbrett als HMI-Gerät beschrieben wird, aber nicht darauf beschränkt ist. Sie kann ohne weiteres auf jede Art von HMI-Gerät mit gut definierten Übergängen zwischen verschiedenen GUI-Bildschirmen angewendet werden.
  • Figurenliste
  • Ausführungsformen der Erfindung werden unter Bezugnahme auf die beigefügten schematischen Zeichnungen näher beschrieben.
    • 1 zeigt eine Ausführungsform eines Systems zur automatischen Untersuchung von Zuständen und Übergängen einer Mensch-Maschine-Schnittstelle (HMI);
    • 2 und 3 zeigen eine Ausführungsform einer semantischen Analyse; und
    • 4 zeigt eine Tabelle mit den Ergebnissen des Vergleichs verschiedener Verfahren.
  • AUSFÜHRLICHE BESCHREIBUNG DER AUSFÜHRUNGSFORM
  • In 1 ist ein System 10 zur automatischen Untersuchung von HMI-Zuständen und HMI-Übergängen dargestellt. Das System 10 umfasst eine Testumgebung 12.
  • Die Testumgebung 12 umfasst mindestens ein HMI-Gerät 14, das getestet wird. Das HMI-Gerät 14 kann z.B. ein Armaturenbrett für ein Auto sein.
  • Die Testumgebung 12 umfasst einen Framegrabber 16, der mit dem HMI-Gerät 14 operativ gekoppelt ist, um Bilddaten der Bildschirme zu erfassen, die von dem HMI-Gerät 14 ausgegeben werden.
  • Die Testumgebung 12 umfasst außerdem eine Testbox 18, die mit dem HMI-Gerät 14 operativ gekoppelt ist und eine Situation emuliert, als ob das HMI-Gerät 14 im Fahrzeug installiert wäre.
  • Die Testumgebung 12 umfasst einen CAN-Signal-Simulator 20, der so konfiguriert ist, dass er einen CAN-Bus simuliert. Der CAN-Signal-Simulator 20 ist mit der Testbox 18 operativ gekoppelt, die es ermöglicht, die CAN-Signale als Steuersignale an das HMI-Gerät 14 zu senden.
  • Die Testumgebung 12 umfasst eine Steuereinheit 22, die die Testumgebung 12 steuert. Insbesondere steuert die Steuereinheit 22 direkt den Framegrabber 16 und den CAN-Signal-Simulator 20.
  • Das System 10 umfasst eine Agentenumgebung 24. Die Agentenumgebung 24 kann eine API 26 umfassen, die die Kommunikation mit anderen Geräten (nicht dargestellt) ermöglicht.
  • Die Agentenumgebung 24 verfügt über ein Datenverarbeitungsgerät 27, z.B. einen Allzweckcomputer, der vorzugsweise mit der API 26 verbunden ist.
  • Die Agentenumgebung 24 umfasst außerdem einen KI-Agenten mit einem Kl-Pfadfinder-Modul 28 und einem KI-Modul zum Verstehen visueller Elemente 30.
  • Das System 10 verfügt auch über eine Ausgabeumgebung 32. Die Ausgabeumgebung 32 kann eine Datenspeichereinrichtung zum Speichern der vom KI-Agenten ermittelten Ausgabedaten umfassen. Die Ausgabeumgebung 32 enthält vorzugsweise eine Ul-Bildschirmübergangsmatrix 34. Die Ul-Bildschirmübergangsmatrix 34 enthält alle erkannten Übergänge von einem ersten HMI-Zustand zu einem zweiten HMI-Zustand und die entsprechende HMI-Aktion, die das HMI-Gerät 14 dazu veranlasst, von einem in den anderen Zustand zu wechseln.
  • In der Vorbereitungsphase werden dem KI-Agenten, insbesondere dem Kl-Pfadfindermodul 28, vorzugsweise über die API 26, eine Reihe von erlaubten Aktionen und Testbedingungen zur Verfügung gestellt. Die Testbedingungen können von den Testern in natürlicher Sprache erstellt werden und ein NLP-Modul kann eingesetzt werden, um die erlaubte Aktion zu interpretieren und zu ändern.
  • Eine Menge von Symboldateien aus dem Designdokument kann auch dem KI-Modul zum Verstehen visueller Elemente 30 zur Verfügung gestellt werden, damit der Kl-Agent die visuellen Elemente auf den Bildschirmen der Benutzeroberfläche identifizieren kann. Die Symbole können von menschlichen Testern oder über Objekterkennungsverfahren mit Hilfe von trainierten Computer-Vision-Modellen vorgelabelt werden.
  • Das Verfahren umfasst einen transversalen Entscheidungsfindungsschritt, bei dem die Entscheidungsfindung des KI-Agenten durch Verfahren des Verstärkungslernens (englisch: reinforcement learning, kurz: RL) unterstützt wird. RL-Verfahren zielen darauf ab, optimale Strategien für bestimmte wünschenswerte Aufgaben zu erlernen, indem Belohnungssignale aus der Umgebung maximiert werden. Eindeutige Belohnungssignale, die nicht von den Agenten stammen, können jedoch extrem schwach sein. In solchen Szenarien bietet die Neugier einen Mechanismus, der die Agenten dazu motiviert, neue Zustände zu erforschen, die nicht an unmittelbare Belohnungen geknüpft sind, so dass die Agenten neue Fähigkeiten oder Kenntnisse erwerben können, die sie in Zukunft belohnen könnten. Aus der Perspektive der Softwareexploration wird Neugier als eine intrinsische Motivation formuliert, um Bereiche zu erkunden, die dem Agenten weniger bekannt sind. Dieser Formalismus ermutigt den Agenten adaptiv dazu, weniger ausgeführte Aktionen zu erkunden, die zu einem besseren Verständnis der möglichen Zustände und Pfade in der Software führen.
  • Da nicht alle Zustände gleichermaßen miteinander verbunden sind, wird vorgeschlagen, zur weiteren Exploration von schwer zugänglichen Zuständen eine von einem deterministischen endlichen Automaten (DFA) geführte Explorationsstrategien, die dem RL-Agenten eine hochrangige Anleitung zur effizienten Exploration des HMI-Dashboards bietet. Insbesondere zeichnet der DFA alle Zustände und den während der Exploration eingeschlagenen Weg auf. Wenn der RL-Agent in eine Falle tappt (d.h. innerhalb eines bestimmten Zeitbudgets oder nach einer bestimmten Anzahl von Operationen keine neuen Zustände entdecken kann), wird ein Pfad aus dem DFA ausgewählt, der auf Neugierde basiert, um die Exploration fortzusetzen. Ein DFA kann als 5-Tupel (S, A, δ, s0 F) beschrieben werden, wobei S eine endliche Menge von Zuständen, A eine endliche Menge von Aktionen (Aktionsraum), δ eine Übergangsfunktion, die einen aktuellen HMI-Zustand s und eine HMI-Aktion a auf einen neuen HMI-Zustand a abbildet, s0 der Anfangszustand und F eine endliche Menge von Zuständen ist, die nicht in andere Zustände übergehen können. Insbesondere bezieht sich A auf den Aktionsraum, der geändert werden kann, je nachdem, auf welchem Bildschirm sich der Agent gerade befindet (die Information wird durch den Schritt zum Verstehen visueller Elemente im vorherigen Zyklus bereitgestellt).
  • Sobald während der Exploration ein neuer Übergang (s, a) erkundet wird, wird der DFA aktualisiert: δ :=δ ∪{(s,a)}. Wenn der KI-Agent in bestimmten Zuständen gefangen ist, kann der DFA dabei helfen, den Zustand mit dem höchsten Neugierwert zu definieren und das RL direkt zu diesem Zustand zu führen, indem er den kürzesten Weg über alle Übergänge identifiziert.
  • Für eine umfassendere Beschreibung wird auf die unveröffentlichte deutsche Patentanmeldung 10 2021 115 031.0 verwiesen, die dies ausführlicher beschreibt.
  • Der KI-Agent, insbesondere das KI-Pfadfindermodul 28, bestimmt eine HMI-Aktion aus der Menge der zulässigen Aktionen A.
  • Im Interaktions- und Informationsbeschaffungsschritt wird die vom KI-Agenten ermittelte HMI-Aktion über einen API-Wrapper an die Steuereinheit 22, z.B. einen Ausführungsserver der Testumgebung 12 übermittelt, die eine Testautomatisierungsplattform umfasst, die die Signalisierungs-Toolboxen (wie z.B. Testbox 18), das HMI-Gerät 14 und andere Testhardware steuert. Die HMI-Aktion wird zunächst an das Datenverarbeitungsgerät 27 gesendet. Das Datenverarbeitungsgerät 27 sendet eine Befehlsanforderung an einen TCP/IP-Server 36 als Vermittler, der wiederum eine Verbindung mit der Steuereinheit 22 herstellt.
  • Anschließend interpretiert die Steuereinheit 22 die vom KI-Agenten ausgewählte HMI-Aktion und simuliert die entsprechenden Steuersignale (z.B. CAN-Signale) mit dem CAN-Signal-Simulator 20, um eine Reaktion auf dem Dashboard-Cluster, d.h. einem oder mehreren HMI-Geräten 14, zu erzeugen. Die HMI-Aktion bzw. das auf der HMI-Aktion basierende Steuersignal veranlasst das HMI-Gerät 14, einen HMI-Übergang von einem ersten HMI-Zustand zu einem zweiten HMI-Zustand durchzuführen. Jedem der HMI-Zustände ist ein Ul-Bildschirm zugeordnet, der Textelemente und/oder visuelle Elemente enthält.
  • Darüber hinaus initialisiert die Steuereinheit 22 beim Empfang der HMI-Aktion den Framegrabber 16, der die Bilddaten 38 des aktuellen Bildschirms abruft, die mit dem zweiten HMI-Zustand nach dem HMI-Übergang verbunden sind. Die Bilddaten 38 können alternativ zum Framegrabber 16 auch in Form eines Schnappschusses mit Hilfe einer eingebauten Kamera abgerufen werden. Die Bilddaten 38 werden dann an den KI-Agenten gesendet, damit dieser die visuellen Elemente versteht.
  • Nach dem Empfang der Bilddaten 38 führt der KI-Agent zunächst eine Überprüfung des aktuellen Bildschirms, den er vom HMI-Gerät 14 erhalten hat, mit allen bekannten Bildschirmen durch. Wenn der aktuelle Bildschirm bereits als annotierter Bildschirm bekannt ist, wird die Ul-Bildschirmübergangsmatrix 34 aktualisiert.
  • Wenn der aktuelle Bildschirm noch nicht identifiziert ist, werden die Bilddaten 38 an das KI-Modul zum Verstehen visueller Elemente 30 gesendet. Das KI-Modul zum Verstehen visueller Elemente 30 analysiert den aktuellen Bildschirm mit dem Ziel, seine semantische Bedeutung zu verstehen, um sicherzustellen, dass die anschließende Entscheidungsfindung den von den Testbedingungen vorgegebenen Grenzen entspricht.
  • Wie in 2 und 3 näher dargestellt, kann es sich bei den visuellen Elementen um Textelemente 40 oder grafische Elemente 42 handeln. An sich bekannte Techniken zur Erkennung von Szene-Text (wie z.B. „EAST“ - An Efficient and Accurate Scene Text Detector) werden verwendet, um Bereiche des Bildschirms mit Texten zu identifizieren, den Bereich zu maskieren und zwei Bilder zu erzeugen. Ein Bild enthält reine Textbilddaten 44, das andere reine Grafikbilddaten 46.
  • Die Textinformationen auf dem Textdatenbild 44 werden durch OCR-Techniken (wie z.B. PyTesseract) extrahiert, während die grafischen Informationen auf den Grafikbilddaten 46 durch Computer-Vision-Techniken z.B. durch Mustererkennung unter Verwendung des zuvor bereitgestellten Symbolsatzes extrahiert werden.
  • Schließlich werden die semantischen Beschreibungen aus den beiden separaten Pipelines (d.h. textuell und grafisch) zusammengeführt, um eine Reihe von Wortkandidaten 48 zur Beschreibung des aktuellen Bildschirms zu erstellen. Das Kl-Modul zum Verstehen visueller Elemente 30 kann die Wortkandidaten 48 vektorisieren, um die Wortkandidaten 48 auf einige wenige repräsentative Wörter 50 einzugrenzen, indem es Verfahren verwendet, wie die Suche nach den Zentroiden und die Suche nach dem Wort mit der Einbettung, die dem aus den Wortkandidaten 48 gemittelten Vektor am nächsten liegt. Auch dieser Schritt kann je nach Bedarf angepasst werden, z.B. wenn die Tester eine bestimmte Bildbeschriftungsstrategie wünschen. Die Menge aller bekannten Bildschirme wird mit einem annotierten Bildschirm aktualisiert, der auf dem aktuellen, gerade analysierten Bildschirm basiert. Der annotierte Bildschirm enthält den zugehörigen aktuellen Bildschirm und eine semantische Beschreibung der darin enthaltenen Elemente. Die semantische Beschreibung wird durch eines oder mehrere der repräsentativen Wörter 50 gebildet.
  • Es sollte beachtet werden, dass die Bilddaten 38 auf bekannte Weise vorverarbeitet werden können, um vorverarbeitete Bilddaten 39 zu erhalten, die sich besonders für die Techniken zur Erkennung von Szenentext eignen.
  • Anhand der Informationen über den aktuellen Bildschirm, auf dem sich der KI-Agent befindet, aktualisiert der KI-Agent seinen erlaubten Aktionssatz A für den nächsten Explorationszyklus entsprechend. Wenn die Testbedingungen beispielsweise keine Änderung der Benutzereinstellungen (wie metrisches System, Schriftgröße, Schriftfarbe usw.) rechtfertigen, beschränkt sich der KI-Agent darauf, diese Einstellungen auszulösen, wenn er sich auf den Bildschirmen mit den Benutzereinstellungen befindet.
  • Daher wählt der KI-Agent während der Exploration adaptiv eine Teilmenge von HMI-Aktionen aus dem erlaubten Aktionsraum aus, je nach den Informationen, die der Kl-Agent vom HMI-Gerät erhält. Auf diese Weise zeigt der KI-Agent beim Durchlaufen/Erkunden der verschiedenen HMI-Zustände der Benutzeroberfläche stets nur zulässige Verhaltensweisen, z. B. „Vermeiden Sie das Auslösen von Systemeinstellungen“ oder „Ändern Sie keine Benutzereinstellungen“.
  • Der KI-Agent beendet die Explorationsphase, sobald bestimmte Bedingungen erfüllt sind, wie z.B. die Gesamtzahl der Schritte, das zugewiesene Zeitbudget oder keine neuen Zustände (Bildschirme) mehr aus allen bekannten Randzuständen gefunden werden.
  • Anschließend erzeugt der KI-Agent zwei Arten von Ausgaben, nämlich die Sammlung oder den Satz von annotierten Bildschirmen 52 mit den darin enthaltenen semantischen Bedeutungen und die Ul-Bildschirmübergangsmatrix 30, die alle möglichen Übergangspfade zwischen den annotierten Bildschirmen 52 zeigt. Diese Ausgaben können problemlos für die Fehlersuche verwendet werden, indem sie mit dem Anforderungsdokument abgeglichen werden oder Testfälle erzeugt werden.
  • Vorteilhafterweise ist das erfindungsgemäße Verfahren in der Lage, das DUT von Anfang bis Ende zu untersuchen, mit ihm zu interagieren und Informationen zu sammeln, und zwar mit minimalen Vorannahmen, d.h. unabhängig vom DUT. Mit anderen Worten, kann dieses Framework ohne weiteres auf andere HMI-Geräte in anderen Funktionsbereichen mit anderen Designprinzipien angewandt werden.
  • Mithilfe des Ansatzes des Verstärkungslernens sammelt der Agent sein Wissen über das DUT während seiner Exploration im laufenden Betrieb - es ist kein Training oder Nachtraining erforderlich. Dies macht Trainingsdaten überflüssig und reduziert den Wartungsaufwand für das Modell. Dies ermöglicht eine „Plug-and-Play“-Funktion und damit eine einfachere Nutzung und Bereitstellung für Tester, die möglicherweise nicht über den entsprechenden Kl-Hintergrund verfügen.
  • Die hier vorgestellten Ideen kombinieren die Erkennung der visuellen Elemente auf den Bildschirmen und die Verwendung eines heuristischen Ansatzes zur Exploration von Softwarepfaden zu einem eigenständigen KI-Agenten mit der kognitiven Fähigkeit, sich auf intelligente Weise an unterschiedliche Testbedingungen anzupassen.
  • Dieser Ansatz ermöglicht es, die für das Testen von Software erforderlichen Informationen wie Verbindungspfade, Texte, visuelle Entwürfe usw. mithilfe von KI selbstständig zu sammeln (d. h. ohne die Unterstützung eines menschlichen Testers während des Prozesses, der über Nacht auf der Maschine weiterlaufen kann), was ansonsten im aktuellen Industriestandard manuell durchgeführt wird.
  • Verbindungspfade zwischen Bildschirmen und Benutzeroberflächendesigns sind ein notwendiger Input für die Generierung von Testfällen, die während der Iterationen des Softwareentwicklungszyklus häufig aktualisiert werden können. Durch die Automatisierung der Aktualisierung dieser Informationen mithilfe von KI können menschliche Tester von diesen mühsamen Arbeiten entlastet werden, was Produktivität der Tester und die Qualität der Software verbessert.
  • Mit den hier beschriebenen Maßnahmen kann die Industrie die höchste Zustands- und Pfadabdeckung im Vergleich zu anderen Fuzzing- und KI-Ansätzen erreichen.
  • Wie in 4 zu sehen ist, kann der KI-Agent 95 % der Zustands- und Pfadabdeckung erreichen, wenn er 12 Stunden lang ununterbrochen läuft, ohne dass ein Mensch eingreifen muss, im Vergleich zu 100 % der Abdeckung, die 50 Stunden manuelle Arbeit durch menschliche Tester erfordert. Mit anderen Worten: Die Erfindung ermöglicht es, 50 Arbeitsstunden für das Testen jeder Version einzusparen.
  • Obwohl nicht explizit beschrieben, kann die Erfindung auch auf andere Bereiche ausgedehnt werden, die eine Pfadnavigation zwischen zwei Knoten in einem Graphen mit gut definierten diskreten Zustandsübergängen beinhalten, wie z.B. die automatische Routenplanung bei der Entwicklung von Leiterplatten, die Verdrahtung von sensorischen Geräten, wie z.B. Verkehrssignalisierungsnetzwerke, die Verbindung von Stromnetzen und die grafische Objektsuche in geografischen Informationssystemen (GIS).
  • Bezugszeichenliste
  • 10
    System
    12
    Testumgebung
    14
    HMI-Gerät
    16
    Framegrabber
    18
    Testbox
    20
    CAN-Signal-Simulator
    22
    Steuereinheit
    24
    Agentenumgebung
    26
    API
    27
    Datenverarbeitungsgerät
    28
    KI-Pfadfinder-Modul
    30
    Kl-Modul zum Verstehen visueller Elemente
    32
    Ausgabeumgebung
    34
    Ul-Bildschirmübergangsmatrix
    36
    TCP/IP-Server
    38
    Bilddaten
    39
    vorverarbeitete Bilddaten
    40
    Textelemente
    42
    Grafikelemente
    44
    Textbilddaten
    46
    Grafikbilddaten
    48
    Wortkandidaten
    50
    repräsentatives Wort
    52
    annotierte Bildschirme
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • CN 106201898 A [0006]
    • US 2019012254 A1 [0006]
    • WO 2020086773 A1 [0006]
    • US 5542043 A [0006]
    • US 2007022407 A1 [0006]
    • US 2019179732 A1 [0006]
    • US 2003126517 A1 [0006]
    • US 20180157386 A1 [0006]
    • US 2003229825 A1 [0006]
    • US 20150378876 A1 [0006]
    • US 20150339213 A1 [0006]
    • DE 102021115031 [0007, 0027, 0053]

Claims (11)

  1. Ein computerimplementiertes Verfahren zur automatischen Untersuchung von HMI-Zuständen und HMI-Übergängen zwischen den HMI-Zuständen eines HMI-Geräts (14), das in einer Testumgebung (12) angeordnet ist, wobei jeder HMI-Übergang einen ersten HMI-Zustand mit einem zweiten HMI-Zustand über eine HMI-Aktion verbindet, wobei das Verfahren umfasst: a) einen KI-Agenten (28, 30), der ein Verfahren des Verstärkungslernens verwendet, um eine von der HMI-Gerät (14) auszuführende HMI-Aktion zu bestimmen, wobei die HMI-Aktion aus einem Satz zulässiger Aktionen von HMI-Aktionen ausgewählt wird, die von dem KI-Agenten (28, 30) auf der Grundlage eines Satzes vorgegebener Testbedingungen ausgeführt werden dürfen; b) der KI-Agent (28, 30) die in Schritt a) bestimmte HMI-Aktion an die Testumgebung (12) übermittelt, wobei die Testumgebung (12): c) ein HMI-Steuersignal erzeugt, das das HMI-Gerät (14) veranlasst, von dem ersten HMI-Zustand in den zweiten HMI-Zustand zu wechseln; und d) Erfassen von Bilddaten (38) von der HMI-Gerät (14), wobei die Bilddaten (38) einen aktuellen Bildschirm anzeigen, der dem zweiten HMI-Zustand zugeordnet ist, und Vergleichen des aktuellen Bildschirms mit einem Satz aller bekannten Bildschirme, wobei, wenn der aktuelle Bildschirm nicht Teil des Satzes aller bekannten Bildschirme ist, Schritt e) durchgeführt wird, andernfalls wird Schritt f) durchgeführt; e) der KI-Agent (28, 30) führt eine semantische Analyse des aktuellen Bildschirms durch, der in Schritt d) erfasst wurde, bestimmt eine semantische Beschreibung des aktuellen Bildschirms, kombiniert den aktuellen Bildschirm und die semantische Beschreibung zu einem annotierten Bildschirm und fügt den annotierten Bildschirm zu der Menge aller bekannten Bildschirme hinzu; f) der KI-Agent (28, 30) verwendet den annotierten Bildschirm, den er zuvor in Schritt e) erhalten hat, oder er wählt den annotierten Bildschirm, der dem aktuellen Bildschirm entspricht, aus der Menge aller bekannten Bildschirme aus und aktualisiert die Menge der erlaubten Aktionen auf der Grundlage des annotierten Bildschirms.
  2. Verfahren nach Anspruch 1, gekennzeichnet durch einen Schritt g), in dem das Verfahren ab Schritt a) wiederholt wird, bis eine vorbestimmte Abbruchbedingung erfüllt ist und/oder die Ausführung des Verfahrens gestoppt wird, wenn die Abbruchbedingung erfüllt ist.
  3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, dass die Abbruchbedingung aus einer Gruppe ausgewählt wird, die aus einer Anzahl von HMI-Übergängen, einer zugewiesenen Zeit und dem Nichterkennen neuer HMI-Zustände innerhalb einer vorgegebenen Zeitgrenze besteht.
  4. Das Verfahren nach einem der vorhergehenden Ansprüche, gekennzeichnet durch einen Schritt, bei dem der KI-Agent (28, 30) die Menge aller bekannten Bildschirme mit den annotierten Bildschirmen ausgibt und/oder einen Schritt, bei dem die angetroffenen HMI-Übergänge gespeichert und ausgegeben werden.
  5. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass in Schritt a) die Menge der erlaubten Aktionen und/oder die Menge der Testbedingungen mit Hilfe der Verarbeitung natürlicher Sprache bestimmt werden.
  6. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass in Schritt e) die Bilddaten (38) des aktuellen Bildschirms in Textbilddaten (44), die nur textähnliche Elemente enthalten, und Grafikbilddaten (46), die nur grafikähnliche Elemente enthalten, zerlegt werden, die Textbilddaten (44) und die Grafikbilddaten (46) getrennt semantisch analysiert werden und die semantische Beschreibung aus den getrennt analysierten Text- und Grafikbilddaten (44, 46) kombiniert wird.
  7. Verfahren nach Anspruch 6, dadurch gekennzeichnet, dass bei der semantischen Analyse der Textbilddaten (44) und der Grafikbilddaten (46) für jede dieser Daten ein Satz von Wortkandidaten (48) erzeugt wird, wobei die Wortkandidaten (48) auf den aktuellen Bildschirm hinweisen.
  8. Verfahren nach Anspruch 7, dadurch gekennzeichnet, dass die Sätze von Kandidatenwörtern (48) auf einen Satz von repräsentativen Wörtern (50) eingegrenzt werden, der kleiner ist als der Satz von Kandidatenwörtern (48), indem die Sätze von Kandidatenwörtern (48) unter Verwendung von Worteinbettung vektorisiert werden.
  9. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass in Schritt a) das Verstärkungslernverfahren ein Q-Lernverfahren ist, bei dem einem Paar aus HMI-Zustand und HMI-Aktion ein Q-Wert zugeordnet ist, der definiert ist, um zeitliche Beziehungen zwischen HMI-Zuständen und HMI-Aktionen, aus denen die HMI-Aktion erzeugt wird, zu speichern und zu erfassen.
  10. System (10), umfassend eine Testumgebung (12) mit einem zu testenden HMI-Gerät (14) und einem Steuereinheit (22), die operativ mit dem HMI-Gerät (14) gekoppelt ist, und eine Agentenumgebung (24), die operativ mit der Testumgebung (12) gekoppelt ist, wobei das System (10) so konfiguriert ist, dass es ein Verfahren nach einem der vorhergehenden Ansprüche durchführt, um die HMI-Zustände und/oder HMI-Übergänge des HMI-Geräts zu untersuchen.
  11. Ein Computerprogramm, ein maschinenlesbares Speichermedium oder ein Datensignal, das Anweisungen enthält, die bei Ausführung auf einer Datenverarbeitungsvorrichtung (27) und/oder einer Steuereinheit (22) die Vorrichtung veranlassen, einen, einige oder alle Schritte eines Verfahrens nach einem der vorangehenden Ansprüche 1 bis 10 durchzuführen.
DE102021132827.6A 2021-12-13 2021-12-13 Verfahren zur automatischen Untersuchung von Zuständen und Übergängen einer Mensch- Maschine-Schnittstelle ( HMI) Pending DE102021132827A1 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE102021132827.6A DE102021132827A1 (de) 2021-12-13 2021-12-13 Verfahren zur automatischen Untersuchung von Zuständen und Übergängen einer Mensch- Maschine-Schnittstelle ( HMI)
PCT/EP2022/084343 WO2023110478A1 (en) 2021-12-13 2022-12-05 Method for automatically exploring states and transitions of a human machine interface (hmi) device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102021132827.6A DE102021132827A1 (de) 2021-12-13 2021-12-13 Verfahren zur automatischen Untersuchung von Zuständen und Übergängen einer Mensch- Maschine-Schnittstelle ( HMI)

Publications (1)

Publication Number Publication Date
DE102021132827A1 true DE102021132827A1 (de) 2023-06-15

Family

ID=84535902

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102021132827.6A Pending DE102021132827A1 (de) 2021-12-13 2021-12-13 Verfahren zur automatischen Untersuchung von Zuständen und Übergängen einer Mensch- Maschine-Schnittstelle ( HMI)

Country Status (2)

Country Link
DE (1) DE102021132827A1 (de)
WO (1) WO2023110478A1 (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117155422B (zh) * 2023-09-14 2024-04-02 慧勒智行汽车技术(昆山)有限公司 一种can信号收发方法及系统

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5542043A (en) 1994-10-11 1996-07-30 Bell Communications Research, Inc. Method and system for automatically generating efficient test cases for systems having interacting elements
US20030126517A1 (en) 2001-07-27 2003-07-03 Accordsqa Automated software testing and validation system
US20030229825A1 (en) 2002-05-11 2003-12-11 Barry Margaret Moya Automated software testing system and method
US20070022407A1 (en) 2001-07-27 2007-01-25 Accordsqa, Inc. Automated software testing and validation system
US20150339213A1 (en) 2014-05-21 2015-11-26 Cgi Technologies And Solutions Inc. Automated testing of an application system
US20150378876A1 (en) 2014-06-25 2015-12-31 Vmware, Inc. Visual graphical user interface verification
CN106201898A (zh) 2016-07-26 2016-12-07 北京班墨科技有限责任公司 一种基于人工智能的测试软件的方法及装置
US20180157386A1 (en) 2016-12-05 2018-06-07 Jiawen Su System and Method for detection, exploration, and interaction of graphic application interface
US20190012254A1 (en) 2017-07-05 2019-01-10 Juniper Networks, Inc. Software analytics platform
US20190179732A1 (en) 2017-12-08 2019-06-13 Cognizant Technology Solutions India Pvt. Ltd. System and method for automatically generating software testing scripts from test cases
WO2020086773A1 (en) 2018-10-23 2020-04-30 Cser Tamas Software test case maintenance

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11048619B2 (en) * 2018-05-01 2021-06-29 Appdiff, Inc. AI software testing system and method
US11042472B2 (en) * 2019-09-10 2021-06-22 Sauce Labs Inc. Authoring automated test suites using artificial intelligence

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5542043A (en) 1994-10-11 1996-07-30 Bell Communications Research, Inc. Method and system for automatically generating efficient test cases for systems having interacting elements
US20030126517A1 (en) 2001-07-27 2003-07-03 Accordsqa Automated software testing and validation system
US20070022407A1 (en) 2001-07-27 2007-01-25 Accordsqa, Inc. Automated software testing and validation system
US20030229825A1 (en) 2002-05-11 2003-12-11 Barry Margaret Moya Automated software testing system and method
US20150339213A1 (en) 2014-05-21 2015-11-26 Cgi Technologies And Solutions Inc. Automated testing of an application system
US20150378876A1 (en) 2014-06-25 2015-12-31 Vmware, Inc. Visual graphical user interface verification
CN106201898A (zh) 2016-07-26 2016-12-07 北京班墨科技有限责任公司 一种基于人工智能的测试软件的方法及装置
US20180157386A1 (en) 2016-12-05 2018-06-07 Jiawen Su System and Method for detection, exploration, and interaction of graphic application interface
US20190012254A1 (en) 2017-07-05 2019-01-10 Juniper Networks, Inc. Software analytics platform
US20190179732A1 (en) 2017-12-08 2019-06-13 Cognizant Technology Solutions India Pvt. Ltd. System and method for automatically generating software testing scripts from test cases
WO2020086773A1 (en) 2018-10-23 2020-04-30 Cser Tamas Software test case maintenance

Also Published As

Publication number Publication date
WO2023110478A1 (en) 2023-06-22

Similar Documents

Publication Publication Date Title
DE60106799T2 (de) Probabilistische Diagnose, inbesondere für eingebettete Fernanwendungen
DE202017106532U1 (de) Suche nach einer neuronalen Architektur
DE102006019292A1 (de) Modellieren programmierbarer Einrichtungen
DE19959157A1 (de) Verbessertes Funktionstesten durch das Filtern von groben Mutationen
EP3757792A2 (de) Verfahren und vorrichtung zum prüfen eines systems, zur auswahl realer tests und zum testen von systemen mit komponenten maschinellen lernens
DE102021132827A1 (de) Verfahren zur automatischen Untersuchung von Zuständen und Übergängen einer Mensch- Maschine-Schnittstelle ( HMI)
DE102020131657A1 (de) Diagnostizieren eines Wahrnehmungssystems auf der Grundlage der Szenenkontinuität
DE102019210562A1 (de) Verfahren und Vorrichtung zum Prüfen von Software
DE102011086352A1 (de) Verfahren und Diagnosesystem zur Unterstützung der geführten Fehlersuche in technischen Systemen
DE112021003677T5 (de) Automatisierte unterstützte schaltkreisvalidierung
DE102017215946A1 (de) Prüfsystem, programm und steuerverfahren für prüfvorrichtung
EP3731043A1 (de) Verfahren zur sicherheitsbeurteilung, computerprogramm, maschinenlesbares speichermedium und sicherheitsbeurteilungseinrichtung
DE10213582B4 (de) Datenberechnungsvorrichtung und Verfahren zur Anwendung der Datenberechnungsvorrichtung zur Einstellung einer elektronischen Steuereinrichtung
DE10111831A1 (de) Verfahren zum automatischen Suchen und Sortieren von Fehlersignaturen von Wafern
DE102015225018A1 (de) Verfahren zur Prüfung einer Mehrzahl von in gleicher Weise mit Bauteilen bestückten Bauteilträgern, Computerprogrammprodukt zur Durchführung eines solchen Verfahrens, und Prüfsystem zur Durchführung eines solchen Verfahrens
WO2022238343A1 (de) Bewertungsverfahren für simulationsmodelle in der mikroskopie
DE202016107368U1 (de) Automobilprüfsystem und Computerprogrammprodukt
DE102019219067A1 (de) Verfahren zur automatischen Qualifizierung eines virtuellen Modells für eine Kraftfahrzeugkomponente
WO2020114724A1 (de) Verfahren zum überprüfen wenigstens eines fahrzeugs sowie elektronische recheneinrichtung
WO2008064616A1 (de) Verfahren und diagnosesystem zur diagnose eines technischen systems
WO2023247589A1 (de) Verfahren zum evaluieren eines sensormodells, verfahren zum trainieren eines erkennungsalgorithmus und sensorsystem
DE19529342C2 (de) Verfahren zur Visualisierung des Überdeckungsgrades beim Test eines endlichen Automaten
DE102021206323A1 (de) Verfahren zur Analyse einer elektrischen Schaltung
Eggleston et al. Modeling the cognitive complexity of visual displays
DE102020215387A1 (de) Verfahren zum Optimieren eines Testsatzes zur automatischen Qualifizierung eines virtuellen Modells für eine Kraftfahrzeugkomponente

Legal Events

Date Code Title Description
R163 Identified publications notified
R012 Request for examination validly filed
R081 Change of applicant/patentee

Owner name: NANYANG TECHNOLOGICAL UNIVERSITY, SG

Free format text: FORMER OWNERS: CONTINENTAL AUTOMOTIVE GMBH, 30165 HANNOVER, DE; NANYANG TECHNOLOGICAL UNIVERSITY, SINGAPUR, SG

Owner name: CONTINENTAL AUTOMOTIVE TECHNOLOGIES GMBH, DE

Free format text: FORMER OWNERS: CONTINENTAL AUTOMOTIVE GMBH, 30165 HANNOVER, DE; NANYANG TECHNOLOGICAL UNIVERSITY, SINGAPUR, SG

R081 Change of applicant/patentee

Owner name: NANYANG TECHNOLOGICAL UNIVERSITY, SG

Free format text: FORMER OWNERS: CONTINENTAL AUTOMOTIVE TECHNOLOGIES GMBH, 30165 HANNOVER, DE; NANYANG TECHNOLOGICAL UNIVERSITY, SINGAPUR, SG

Owner name: CONTINENTAL AUTOMOTIVE TECHNOLOGIES GMBH, DE

Free format text: FORMER OWNERS: CONTINENTAL AUTOMOTIVE TECHNOLOGIES GMBH, 30165 HANNOVER, DE; NANYANG TECHNOLOGICAL UNIVERSITY, SINGAPUR, SG