-
Die Erfindung betrifft ein System, ein Verfahren und ein Computerprogrammprodukt zur optimierten Testplanung für das Prototypenmanagement einer Entität, insbesondere für Prototypen eines Kraftfahrzeugmodells.
-
Bei der Entwicklung von neuen Modellreihen einer Entität, wie beispielsweise bei neuen Kraftfahrzeugmodellen, werden verschiedene Prototypen bereitgestellt, die auch als Erprobungsträger bezeichnet werden und sich hinsichtlich der Ausprägung von einzelnen Kategorien, Merkmalen, Eigenschaften und Komponenten voneinander unterscheiden. Einzelne Kategorien wie beispielsweise ein Bremssystem oder die Software für hochautomatisierte Fahrfunktionen bei einem Kraftfahrzeug werden in der Testphase von der jeweils dafür spezialisierten Testabteilung getestet. Da die Erprobungsträger unterschiedlich ausgestattet sind, ist der Testbedarf und die benötigte Zeit für das Durchlaufen einer Vielzahl von Testabteilungen für die verschiedenen Kategorien, Komponenten und Ausstattungsmerkmale ebenfalls unterschiedlich. Hinzu kommen noch länderspezifische Unterschiede und Vorgaben, an die das Design und die Ausstattung eines neuen Kraftfahrzeugmodells angepasst werden muss. Die Herstellung eines Prototyps bzw. Erprobungsträgers ist jedoch aufgrund der vielen manuellen Prozessschritte kostenintensiv, so dass eine möglichst optimale Nutzung eines Prototyps durch die verschiedenen Testabteilungen und Teststationen erstrebenswert ist. Bei der Zuteilung und Zuordnung der verschiedenen Prototypen an die unterschiedlichen Testabteilungen müssen allerdings eine Vielzahl von Randbedingungen wie die Auslastung der jeweiligen Testabteilung, das Testverfahren und Umgebungsbedingungen berücksichtigt werden, so dass es schwierig ist, eine optimierte Nutzung und damit Auslastung der Prototypen zu planen. Standzeiten der Prototypen sind jedoch mit hohen Kosten verbunden, da sich hierdurch die Ermittlung von aussagekräftigen Testergebnissen und damit auch die Markteinführung zeitlich verzögert.
-
Es werden daher zunehmend mathematische Verfahren unter Verwendung von klassischen Algorithmen eingesetzt, um Testplanungsoptimierungsfunktionen zu lösen. Allerdings sind aufgrund der großen Anzahl von Kategorien, Variablen und Randbedingungen die Ergebnisse nicht immer sehr zuverlässig und oft zu ungenau, um in der Praxis umgesetzt werden zu können. Dies wird noch verstärkt durch die hohen Rechenzeiten für die Berechnung der Testpläne. Des Weiteren ergeben sich bei komplexen Systemen oft Lösungsräume mit einer Vielzahl von lokalen Nebenminima, so dass oft nicht ersichtlich ist, welche dieser Minima geeignet für eine Lösung des Problems sein können. Hierdurch ist die Planung unflexibel, so dass eine kurzfristige Reaktion auf aktuelle Ereignisse kaum möglich ist.
-
Die
DE 10 2020 003 625 A1 betrifft ein Verfahren zur Testplanung einer erweiterten Funktionsprüfung von Fahrzeugen unter Verwendung von künstlicher Intelligenz. In einem Ranking-Verfahrensschritt wird ein Ranking unter Anwendung einer Punktzahlfunktion durchgeführt.
-
Die
EP 3 173 984 A1 offenbart ein Verfahren zum Identifizieren von abgestimmten Parameterwerten zum Optimieren eines Datensatzes auf der Grundlage eines Referenzdatensatzes. Die Referenzwerte werden durch einen Quantenglühen-Optimierungsalgorithmus (engl. quantum annealing) bestimmt
-
Die
EP 3 754 566 A1 offenbart ein Verfahren zum benutzerfreundlichen Formulieren eines Optimierungsproblems mittels einer elektronischen Benutzerschnittstelle. Für die Lösung des derart formulierten Optimierungsproblems kann ein Quantencomputer verwendet werden.
-
Die
US 2011/0060710 A1 offenbart ein System bestehend aus einem Quantenprozessor und einem Digitalprozessor.
-
Die
DE 10 2016 220 913 A1 offenbart ein Verfahren zum Generieren von Testfällen für autonome Kraftfahrzeuge, wobei die Testfälle unter Verwendung von Daten, die von am öffentlichen Straßenverkehr teilnehmenden Kraftfahrzeugen gesammelt wurden, automatisch generiert werden.
-
Eine Aufgabe der vorliegenden Erfindung besteht somit darin, ein System, ein Verfahren und ein Computerprogrammprodukt zur optimierten Testplanung für das Prototypenmanagement einer Entität, insbesondere für Prototypen eines Kraftfahrzeugmodells, zu schaffen, um hierdurch eine verbesserte Effizienz der Testabläufe sowie eine optimierte Nutzung von Ressourcen und damit der Kostenstruktur zu erreichen.
-
Diese Aufgabe wird hinsichtlich eines Verfahrens durch die Merkmale des Patentanspruchs 1, hinsichtlich eines Systems durch die Merkmale des Patentanspruchs 10 und hinsichtlich eines Computerprogrammprodukt durch die Merkmale des Patentanspruchs 15 erfindungsgemäß gelöst. Die weiteren Ansprüche betreffen bevorzugte Ausgestaltungen der Erfindung.
-
Gemäß einem ersten Aspekt stellt die Erfindung ein Verfahren zur optimierten Testplanung für das Prototypenmanagement einer Entität, insbesondere für Prototypen P1, P2, ..., Pn eines Kraftfahrzeugmodells, bereit. Die Prototypen P1, P2, ..., Pn unterscheiden sich hinsichtlich ihrer Konfiguration voneinander, wobei eine Konfiguration zumindest durch ausgewählte Kategorien K1, K2, ..., Kn und/oder Eigenschaften E1, E2, ..., En definiert ist. Das Verfahren umfasst die folgenden Verfahrensschritte:
- - Generieren von ersten Daten zu einer ersten Konfiguration von ein oder mehreren Prototypen P1, P2, ..., Pn mittels Sensoren und/oder einer Datenbank von einem Eingabemodul;
- - Generieren von zweiten Daten zu einer Zeitplanung von Testabteilungen A1, A2, ..., An zum Testen der Prototypen P1, P2, ..., Pn von dem Eingabemodul, wobei eine Zeitplanung die Zuordnung zumindest eines Zeitintervalls Δtj zu einer Kategorie Kj und/oder Eigenschaft Ej umfasst;
- - Übermitteln der ersten Daten und der zweiten Daten von dem Eingabemodul an ein Transformationsmodul, wobei das Transformationsmodul zumindest einen Encoder und ein Graphenmodul umfasst;
- - Transformieren der ersten Daten und zweiten Daten in codierte Daten in dem Encoder, so dass die codierten Daten von dem Graphenmodul bearbeitbar sind;
- - Erzeugen einer Menge Q von Graphen aus den codierten Daten, wobei ein Graph jeweils eine mögliche Zuordnung der verschiedenen Prototypen P1, P2, ..., Pn zu einer Zeitplanung der Testabteilungen A1, A2, ..., An abbildet;
- - Weitergeben der Menge Q von Graphen an ein Quantentestplanungsmodul;
- - Auffinden zumindest eines Zielgraphen aus der Menge Q von Graphen mittels eines Quantenalgorithmus, wobei der Zielgraph ein optimales Minimum hinsichtlich der Anzahl der benötigten Prototypen P1, P2, ..., Pn für die ausgewählten Kategorien K1, K2, ..., Kn und Eigenschaften E1, E2, ..., En und der benötigten Zeit zum Testen der ausgewählten Kategorien K1, K2, ..., Kn und/oder Eigenschaften E1, E2, ..., En der Prototypen P1, P2, ..., Pn darstellt.
-
In einer Weiterentwicklung ist vorgesehen, dass der Zielgraph an ein Ausgabemodul weitergegeben wird, das den Zielgraphen in Ausgabedaten transformiert, wobei die Ausgabedaten die Anzahl der ausgewählten Prototypen P1, P2, ..., Pn mit ihrer jeweiligen Konfiguration und Testpläne für die ausgewählten Prototypen P1, P2, ..., Pn insbesondere in Form von Graphiken, Textnachrichten, Hologrammen, Kennzahlen, Diagrammen, und/oder Power-Point Präsentationen, etc. umfassen.
-
In einer vorteilhaften Ausführungsform ist vorgesehen, dass der Quantenalgorithmus als Quantenglühen (engl. quantum annealing) ausgebildet ist.
-
In einer weiteren Ausführungsform ist vorgesehen, dass eine Graphenfärbung und/oder Graphenaufteilung (engl. clique partitioning) zum Auffinden eines Zielgraphen verwendet wird/werden.
-
Vorteilhafterweise weist das Transformationsmodul zumindest einen Encoder auf, der insbesondere als One-Hot-Encoder ausgebildet ist.
-
Insbesondere umfasst das Ausgabemodul zumindest einen Decoder zum Transformieren und Decodieren des Zielgraphen in Ausgabedaten.
-
Vorteilhaftweise ist vorgesehen, dass das Quantentestplanungsmodul einen Quantenprozessor umfasst.
-
In einer weiteren Ausführungsform ist vorgesehen, dass das Eingabemodul und/oder das Transformationsmodul und/oder das Quantentestplanungsmodul und/oder das Ausgabemodul über eine oder mehrere technische Schnittstellen und Protokolle für den Zugang zu einer Cloud-Computing-Infrastruktur verfügt/verfügen oder in der Cloud-Computing-Infrastruktur integriert ist/sind.
-
Insbesondere ist vorgesehen, dass der Encoder und der Decoder neuronale Netze und/oder rekurrente neuronale Netze und/oder gefaltete neuronale Netze (Convolutional Neural Networks) verwenden.
-
Gemäß einem zweiten Aspekt stellt die Erfindung ein System zur optimierten Testplanung für das Prototypenmanagement einer Entität, insbesondere für Prototypen P1, P2, ..., Pn eines Kraftfahrzeugmodells, bereit. Die Prototypen P1, P2, ..., Pn unterscheiden sich hinsichtlich ihrer Konfiguration voneinander und eine Konfiguration ist zumindest durch ausgewählte Kategorien K1, K2, ..., Kn und/oder Eigenschaften E1, E2, ..., En definiert. Das System umfasst ein Eingabemodul, das ausgebildet, erste Daten zu einer ersten Konfiguration von ein oder mehreren Prototypen P1, P2, ..., P3 mittels Sensoren und/oder einer Datenbank und zweite Daten zu einer Zeitplanung von Testabteilungen A1, A2, ..., An zum Testen der Prototypen P1, P2, ..., Pn zu generieren, wobei eine Zeitplanung die Zuordnung zumindest eines Zeitintervalls Δtj zu einer Kategorie Kj und/oder einer Eigenschaft Ej umfasst; ein Transformationsmodul, das einen Encoder und ein Graphenmodul umfasst, wobei das Transformationsmodul mit dem Eingabemodul verbunden ist und ausgebildet ist, die ersten Daten und die zweiten Daten in codierte Daten in dem Encoder derart zu transformieren, dass die codierten Daten von dem Graphenmodul bearbeitbar sind; wobei das Graphenmodul ausgebildet ist, eine Menge Q von Graphen aus den codierten Daten zu erzeugen, wobei ein Graph jeweils eine mögliche Zuordnung der verschiedenen Prototypen P1, P2, ..., Pn zu der Zeitplanung der Testabteilungen A1, A2, ..., An abbildet; ein Quantentestplanungsmodul, das mit dem Graphenmodul verbunden ist und ausgebildet ist, zumindest einen Zielgraphen aus der Menge Q von Graphen mittels eines Quantenalgorithmus aufzufinden, wobei der Zielgraph ein optimales Minimum hinsichtlich der Anzahl der benötigten Prototypen P1, P2, ..., Pn für die ausgewählten Kategorien K1, K2, ...., Kn und Eigenschaften E1, E2, ..., En und der benötigten Zeit zum Testen der ausgewählten Kategorien K1, K2, ..., Kn und/oder Eigenschaften E1, E2, ..., En der Prototypen P1, P2, ..., Pn darstellt.
-
In einer Weiterentwicklung ist vorgesehen, dass das Quantentestplanungsmodul ausgebildet ist, den Zielgraphen an ein Ausgabemodul weiterzugeben, wobei das Ausgabemodul ausgebildet ist, den Zielgraphen in Ausgabedaten zu transformieren, wobei die Ausgabedaten die Anzahl der ausgewählten Prototypen P1, P2, ..., Pn mit ihrer jeweiligen Konfiguration und Testpläne für die ausgewählten Prototypen P1, P2, ..., Pn hinsichtlich ihrer Konfiguration insbesondere in Form von Graphiken, Textnachrichten, Hologrammen, Kennzahlen, Diagrammen, und/oder Power-Point Präsentationen, etc. umfassen.
-
In einer vorteilhaften Ausführungsform ist vorgesehen, dass der Quantenalgorithmus als Quantenglühen (engl. quantum annealing) ausgebildet ist.
-
In einer weiteren Ausführungsform ist vorgesehen, dass eine Graphenfärbung und/oder Graphenaufteilung (engl. clique partitioning) zum Auffinden eines Zielgraphen verwendet wird/werden.
-
Insbesondere weist das Transformationsmodul zumindest einen Encoder auf, der insbesondere als One-Hot-Encoder ausgebildet ist.
-
Vorteilhaftweise umfasst das Ausgabemodul zumindest einen Decoder zum Transformieren und Decodieren des Zielgraphen in Ausgabedaten.
-
Gemäß einem dritten Aspekt betrifft die Erfindung ein Computerprogrammprodukt, umfassend einen ausführbaren Programmcode, der so konfiguriert ist, dass er bei seiner Ausführung das Verfahren gemäß dem ersten Aspekt ausführt.
-
Nachfolgend wird die Erfindung anhand eines in der Zeichnung dargestellten Ausführungsbeispiels näher erläutert.
-
Dabei zeigt:
- 1 eine schematische Darstellung eines erfindungsgemäßen Systems zur optimierten Testplanung von Prototypen einer Entität;
- 2 eine schematische Darstellung eines Graphen;
- 3 ein Flussdiagramm zur Erläuterung der einzelnen Verfahrensschritte eines erfindungsgemäßen Verfahrens;
- 4 ein Computerprogrammprodukt gemäß einer Ausführungsform des dritten Aspekts der Erfindung.
-
Zusätzliche Merkmale, Aspekte und Vorteile der Erfindung oder ihrer Ausführungsbeispiele werden durch die ausführliche Beschreibung in Verbindung mit den Ansprüchen ersichtlich.
-
1 zeigt ein System 100 zur optimierten Testplanung von Prototypen P1, P2, ..., Pn einer Entität 10. Es kann sich bei der Entität 10 um ein Kraftfahrzeug, ein autonom fahrendes Fahrzeug, ein landwirtschaftliches Fahrzeug wie einen Mähdrescher, einen Roboter in der Produktion oder in Service- und Pflegeeinrichtungen, oder um ein Wasserfahrzeug oder um ein Flugobjekt wie ein Flugzeug oder eine Drohne sowie um deren Teilkomponenten und Teilaufbauten handeln. Des Weiteren kann die Entität 10 auch als ein wissenschaftliches Analyseinstrument, ein medizinisches Gerät zur Diagnose und Unterstützung von Körperfunktionen, ein Haushaltsgerät, eine Werkzeugmaschine, ein Prüfstand, ein mechatronisches Bauteil, ein Antriebssystem, etc. ausgebildet sein. Insbesondere handelt es sich bei der Entität 10 um ein neues Modell oder eine Modellreihe eines Kraftfahrzeugs.
-
Bei der Entwicklung von neuen Modellreihen einer Entität 10, wie beispielsweise bei neuen Kraftfahrzeugmodellen, werden verschiedene Prototypen P1, P2, ..., Pn bereitgestellt, die auch als Erprobungsträger bezeichnet werden und sich hinsichtlich der Konfiguration von einzelnen Kategorien, Merkmalen, und Komponenten voneinander unterscheiden. Einzelne Kategorien wie beispielsweise ein Bremssystem oder die Software für hochautomatisierte Fahrfunktionen bei einem Kraftfahrzeug werden in der Testphase von der jeweils dafür spezialisierten Testabteilung getestet. Da die Prototypen P1, P2, ..., Pn unterschiedlich konfiguriert sind, ist der Testbedarf und die dafür benötigte Zeit für das Durchlaufen einer Vielzahl von Testabteilungen A1, A2, ..., An für die verschiedenen Kategorien, Komponenten und Ausstattungsmerkmale ebenfalls unterschiedlich. Hinzu kommen noch länderspezifische Unterschiede und Vorgaben, an die das Design und die Ausstattung eines neuen Kraftfahrzeugmodells angepasst werden muss. Die Herstellung eines Prototyps Pj ist jedoch aufgrund der vielen manuellen Prozessschritte kostenintensiv, so dass eine möglichst optimale Nutzung eines Prototyps Pj durch die verschiedenen Testabteilungen A1, A2, ..., An und Teststationen erstrebenswert ist. Bei der Zuteilung und Zuordnung der verschiedenen Prototypen P1, P2, ..., Pn an die verschiedenen Testabteilungen A1, A2, ..., An müssen allerdings eine Vielzahl von Randbedingungen wie die Auslastung der jeweiligen Testabteilung Aj, das Testverfahren und Umgebungsbedingungen berücksichtigt werden, so dass es schwierig ist, eine optimierte Nutzung und damit Auslastung der Prototypen P1, P2, ..., Pn zu planen. Standzeiten der Prototypen P1, P2, ..., Pn sind jedoch mit hohen Kosten verbunden, da sich hierdurch die Ermittlung von aussagekräftigen Testergebnissen und damit auch die Markteinführung zeitlich verzögert.
-
Die Konfiguration eines Prototyps Pj kann durch verschiedene Kategorien K1, K2, ..., Kn gekennzeichnet werden. Bei den Kategorien kann es sich beispielsweise um einen Verbrennungsmotor, einen Elektromotor, das Bremssystem, das Lichtsystem, das Sicherheitssystem, Softwarekomponenten, etc. handeln. Die Kategorien K1, K2, ..., Kn wiederum können Eigenschaften E1, E2, ..., En enthalten, wie beispielsweise die Antriebskraft, das Gewicht, die Zylinderanzahl, die Zahl und Anordnung der Airbags, die Art der Software, etc. Die Eigenschaften E1, E2, ..., En können somit numerische, zeitliche, räumliche, akustische, optische, chemische und/oder sonstige Eigenschaften umfassen und es kann vorgesehen sein, dass sie mit Sensoren 20 gemessen werden. Bei den Sensoren 20 kann es sich beispielsweise um Uhren, Zähler, Drucksensoren, Piezosensoren, Drehzahlsensoren, kapazitive Sensoren, induktive Sensoren, Temperatursensoren und/oder bildaufnehmende Sensoren wie Kameras im sichtbaren Bereich, ultravioletten Bereich und/oder im infraroten Bereich handeln. Zudem können LIDAR (Light detection and ranging) Systeme mit optischer Abstands- und Geschwindigkeitsmessung, stereoskopische optische Kamerasysteme, Ultraschallsysteme und/oder Radarsysteme verwendet werden.
-
Auch wenn im Folgenden die Eigenschaften mit den Bezugszeichen E1, E2, ..., En bezeichnet werden, ist die Eigenschaft E1 für die Kategorie K1 nicht notwendigerweise mit der Eigenschaft E1 für die Kategorie K2 identisch, aber aus Gründen einer übersichtlichen Darstellung wird auf eine weitere Spezifizierung der Eigenschaften E1, E2, ..., En in Bezug auf die jeweilige Kategorie K1, K2, ..., Kn verzichtet. Im Rahmen der Erfindung sind darüber hinaus weitere Untergliederungen und Zuordnungen von Kennwerten, Kennzahlen und Merkmalen zu den verschiedenen Kategorien K1, K2, ..., Kn sowie den Eigenschaften E1, E2, ..., En möglich. Bei den Kennwerten, Kennzahlen und Merkmalen kann es sich beispielsweise um Randbedingungen handeln aufgrund von länderspezifischen Vorgaben.
-
Verschiedene Testabteilungen A1, A2, ..., An sind für das Testen der verschiedenen Kategorien K1, K2, ..., Kn eines Prototyps Pj zuständig. Dabei kann eine Testabteilung Aj jeweils nur eine Kategorie Kj testen. Es kann aber auch vorgesehen sein, dass eine Testabteilung Aj mehr als eine Kategorie Kj testet. Zudem kann es eine Beziehung zwischen den verschiedenen Kategorien K1, K2, ..., Kn geben, so dass das Testen einer ersten Kategorie Ki vor dem Testen einer zweiten Kategorie Kj erfolgen muss.
-
Das Testen einer ersten Kategorie K1 mit den Eigenschaften E1, E2, ..., En erfordert ein bestimmtes erstes Zeitintervall Δt1 und das Testen einer zweiten Kategorie K2 mit den Eigenschaften E1, E2, ..., En ein zweites Zeitintervall Δt2. Um eine möglichst gleichmäßige Auslastung der Testabteilungen A1, A2, ..., An zu erreichen, ist es wünschenswert, dass Leerzeiten vermieden werden und stets ein Prototyp Pj einer Testabteilung Aj zur Verfügung steht. Darüber hinaus ist es aus Kostengründen wünschenswert, dass die zu testenden Kategorien K1, K2, ...; Kn auf möglichst wenige Prototypen P1, P2, ..., Pn verteilt werden, um die Anzahl der erforderlichen Prototypen zu begrenzen. Somit handelt es sich bei der erfindungsgemäßen Aufgabe um ein gegenseitig abhängiges Optimierungsproblem, denn bei einer unbegrenzten Anzahl von Prototypen P1, P2, ..., Pn wären zwar die Testabteilungen A1, A2, ..., An gleichmäßig ausgelastet, wenn nicht sogar überlastet, aber gleichzeitig steigen die Kosten für die Herstellung der Prototypen P1, P2, ..., Pn an. Bei einer sehr geringen Anzahl von Prototypen P1, P2, ..., Pn treten wiederum Leerzeiten in den Abteilungen A1, A2, ..., An auf.
-
Um eine kostengünstige und zeitsparende Testplanung zu realisieren, muss somit die Anzahl und die Konfigurierung der Prototyen P1, P2, ..., Pn zu der Zeitplanung der Testabteilungen A1, A2, ..., An passen. Eine optimierte Testplanung umfasst somit die Berechnung einer optimalen Anzahl an Prototypen P1, P2, ..., Pn, deren Konfigurationen alle erforderlichen Kategorien K1, K2, ..., Kn sowie deren gegenseitigen Abhängigkeiten abdecken, und die Zuordnung der einzelnen Prototypen P1, P2, ..., Pn zu den verschiedenen Testabteilungen A1, A2, ..., An. Das Ziel der Testplanung besteht darin, die Gesamteffizienz der Herstellung von Prototypen P1, P2, ..., Pn und den Testablauf in den Testabteilungen A1, A2, ..., An zu optimieren. Dabei liegen die Herausforderungen bei der Zuordnung und Zuteilung darin, den jeweiligen Bedarf aller Testabteilungen A1, A2, ..., An zu ermitteln und die Testabteilungen Aj zu bestimmen, die sich einen Prototyp Pj teilen können. Darüber hinaus muss die optimale Reihenfolge der Verteilung und Zuteilung eines Prototyps Pj unter Berücksichtigung der verschiedenen vorherrschenden Zwänge bestimmt werden.
-
Mit der Anzahl der in die Testplanung integrierten Kategorien K1, K2, ..., Kn steigt die Komplexität der Testplanung und damit die Schwierigkeit einer Optimierung. Die Testplanung stellt sich somit als ein hochkomplexes kombinatorisches Optimierungsproblem dar. Derartige hochkomplexen Problemstellungen benötigen zu ihrer Lösung häufig eine hohe Rechenzeit, so dass entsprechend der Ressourcenverbrauch ansteigt. Es ist bekannt, Optimierungsalgorithmen wie genetische und evolutionäre Algorithmen für die Lösung eines Optimierungsproblems zu verwenden. Allerdings sind aufgrund der großen Anzahl von Kategorien, Variablen und Randbedingungen die Ergebnisse nicht immer sehr zuverlässig und oft zu ungenau, um in der Praxis umgesetzt werden zu können. Dies wird noch verstärkt durch die langen Rechenzeiten für die Berechnung der Testpläne. Des Weiteren ergeben sich bei komplexen Systemen oft Lösungsräume mit einer Vielzahl von lokalen Nebenminima, so dass oft nicht ersichtlich ist, welche dieser Minima geeignet für eine Lösung des Problems sein können.
-
Erfindungsgemäß werden daher für die Lösung des beschriebenen Problems Quantencomputeralgorithmen und Quantenprozessoren eingesetzt, da mit ihnen die Geschwindigkeit in der Berechnung erheblich gesteigert werden kann. Mit Quantenalgorithmen und Quantencomputern sind bestimmte nichtdeterministische Operationen möglich, die zu einer Steigerung der Rechengeschwindigkeit führen und damit Probleme lösen können, die mit klassischen Rechnern in überschaubarer Zeit nicht lösbar sind.
-
Erfindungsgemäß umfasst das System 100 ein Eingabemodul 200, ein Transformationsmodul 300, ein Quantentestplanungsmodul 400 und ein Ausgabemodul 500. Das Eingabemodul 200, das Transformationsmodul 300 und das Ausgabemodul 400 sind vorzugsweise als klassische Module ausgebildet und jeweils mit einem klassischen Prozessor und/oder einer Speichereinheit versehen sein. Insbesondere ist das Transformationsmodul 300 mit einem klassischen Prozessor 320 und einer Speichereinheit 340 versehen.
-
Unter einem klassischen „Prozessor“ kann im Zusammenhang mit der Erfindung beispielsweise eine Maschine oder eine elektronische Schaltung verstanden werden. Bei einem Prozessor kann es sich insbesondere um einen Hauptprozessor (engl. Central Processing Unit, CPU), einen Mikroprozessor oder einen Mikrocontroller, beispielsweise eine anwendungsspezifische integrierte Schaltung oder einen digitalen Signalprozessor, möglicherweise in Kombination mit einer Speichereinheit zum Speichern von Programmbefehlen, etc. handeln. Auch kann unter einem Prozessor ein virtualisierter Prozessor, eine virtuelle Maschine oder eine Soft-CPU verstanden werden. Es kann sich beispielsweise auch um einen programmierbaren Prozessor handeln, der mit Konfigurationsschritten zur Ausführung des genannten erfindungsgemäßen Verfahrens ausgerüstet wird oder mit Konfigurationsschritten derart konfiguriert ist, dass der programmierbare Prozessor die erfindungsgemäßen Merkmale des Verfahrens, der Komponente, der Module, oder anderer Aspekte und/oder Teilaspekte der Erfindung realisiert. Insbesondere kann der Prozessor hochparallele Recheneinheiten und leistungsfähige Grafikmodule enthalten.
-
Unter einer „Speichereinheit“ oder „Speichermodul“ und dergleichen kann im Zusammenhang mit der Erfindung beispielsweise ein flüchtiger Speicher in Form eines Arbeitsspeichers (engl. Random-Access Memory, RAM) oder ein dauerhafter Speicher wie eine Festplatte oder ein Datenträger oder z. B. ein wechselbares Speichermodul verstanden werden. Es kann sich bei dem Speichermodul aber auch um eine cloudbasierte Speicherlösung handeln.
-
Unter einem „Modul“ kann im Zusammenhang mit der Erfindung beispielsweise ein Prozessor und/oder eine Speichereinheit zum Speichern von Programmbefehlen verstanden werden. Beispielsweise ist der Prozessor speziell dazu eingerichtet, die Programmbefehle derart auszuführen, damit der Prozessor und/oder die Steuereinheit Funktionen ausführt, um das erfindungsgemäße Verfahren oder einen Schritt des erfindungsgemäßen Verfahrens zu implementieren oder realisieren.
-
Zudem kann das Eingabemodul 200 mit den Sensoren 20 verbunden sein, die Daten von Eigenschaften der Prototypen P1, P2, ..., Pn messen und übermitteln. Bei den von den Sensoren 20 ermitteln Daten kann es sich um Bilder und/oder Daten über physikalische, chemische, biometrische und/oder physiologische Prozesse und Zustände handeln.
-
Des Weiteren kann das Eingabemodul 200 mit zumindest einer Datenbank 220 verbunden sein, in der historische Daten in Form von Bildern, Graphiken, Zeitreihen, Kenngrößen, etc. gespeichert sind. Insbesondere können digitale Zwillinge (engl. digital twin) der Prototypen P1, P2, ..., Pn oder von Teilkomponenten der Prototypen P1, P2, ..., Pn in der Datenbank 220 gespeichert sein. Ein digitaler Zwilling stellt ein digitales Modell in der virtuellen Welt dar und enthält Simulationen und Algorithmen, die Merkmale und das Verhalten des Prototypen P1, P2, ..., Pn bzw. der Kategorien K1, K2, ..., Kn eines Prototypen Pi beschreiben. Des Weiteren können Zielgrößen und Zielwerte in der Datenbank 220 abgelegt sein, die einen Sicherheitsstandard und/oder länderspezifische Anforderungen definieren. Unter „Datenbank“ ist sowohl ein Speicheralgorithmus als auch die Hardware in Form einer Speichereinheit zu verstehen. Insbesondere kann die Datenbank 220 als Cloud-Computing-Infrastruktur 700 ausgebildet sein.
-
Unter „Daten“ sind im Zusammenhang mit der Erfindung sowohl Rohdaten als auch bereits aufbereitete Daten aus den Messergebnissen der Sensoren 20 und/oder in der Datenbank 220 und/ oder einer Cloud-Computing-Infrastruktur 700 gespeicherte Daten und/oder manuelle eingegebene Daten zu verstehen.
-
Das Eingabemodul 200 ist insbesondere als Benutzerschnittstelle zur Eingabe und Generierung von Daten 250, 270 in Form von Textnachrichten und/oder Sprachnachrichten und/oder Bildern und Graphiken ausgebildet. Hierzu sind insbesondere eine Tastatur, ein Mikrofon, eine Kamera und/oder ein als Touchscreen ausgebildetes Display vorgesehen.
-
Die von dem Eingabemodul 200 generierten Daten 250, 270 werden mittels Kommunikationsverbindungen wie beispielsweise ein CAN-Bus-System (Controller Area Network) an das Transformationsmodul 300 weitergeleitet. Es können aber auch drahtlose Verbindungen vorgesehen sein. Eine drahtlose Kommunikationsverbindung ist insbesondere als Mobilfunkverbindung und/oder einer Nahfeldkommunikationsverbindung wie Bluetooth®, Ethernet, NFC (near field communication) oder Wi-Fi® ausgebildet.
-
Das Ausgabemodul 500 ist zur Ausgabe von Ausgabedaten 550 wie einer Konfigurationsliste von ausgewählten Prototypen P1, P2, ..., Pn und einem Testplan zum Testen der ausgewählten Prototypen P1, P2, ..., Pn ausgebildet. Das Eingabemodul 200 und das Ausgabemodul 500 können in einem Hardwaregerät wie einem Computer, einem Tablet, einem Smartphone, etc. integriert sein.
-
Das Transformationsmodul 300 und/oder das Ausgabemodul 500 können als selbstständige Rechnereinheiten oder als cloudbasierte Lösung ausgebildet sein. Die Datenbank 220 kann auch in der Cloud-Computing-Infrastruktur 700 integriert sein.
-
Es kann vorgesehen sein, dass insbesondere das Eingabemodul 200 und/oder das Ausgabemodul 500 mit Mobilfunkmodulen des 5G-Standards ausgestattet sind. 5G ist der Mobilfunkstandard der fünften Generation und zeichnet sich im Vergleich zum 4G-Mobilfunkstandard durch höhere Datenraten bis zu 10 Gbit/sec, der Nutzung höherer Frequenzbereiche wie beispielsweise 2100, 2600 oder 3600 Megahertz, eine erhöhte Frequenzkapazität und damit einen erhöhten Datendurchsatz und eine Echtzeitdatenübertragung aus, da bis zu eine Million Geräte pro Quadratkilometer gleichzeitig ansprechbar sind. Die Latenzzeiten betragen wenige Millisekunden bis unter 1 ms, so dass Echtzeitübertragungen von Daten und von Berechnungsergebnissen möglich sind. Die in das Eingabemodul 200 eingegebenen Daten 250, 270 können in Echtzeit an das in der Cloud-Computing-Infrastruktur 700 integrierte Transformationsmodul 300 gesendet werden.
-
Diese Geschwindigkeit bei der Datenübermittlung ist erforderlich, wenn cloudbasierte Lösungen für die Verarbeitung der Daten verwendet werden sollen. Cloudbasierte Lösungen bieten den Vorteil von hohen und damit schnellen Rechenleistungen. Um die Verbindung zu der Cloud-Computing-Infrastruktur 700 mittels einer Mobilfunkverbindung zu schützen, sind insbesondere kryptographische Verschlüsselungsverfahren vorgesehen.
-
In das Eingabemodul 200 werden Daten zu den verschiedenen Prototypen P1, P2, ..., Pn eingeben, die verschiedene Kategorien K1, K2, ..., Kn sowie Eigenschaften E1, E2, ..., En umfassen können, aus denen das Eingabemodul 200 erste Daten 250 generiert. Die ersten Daten 250 können durch die Eingabe von Daten in Form von Textnachrichten, Sprachnachrichten, Graphiken und Bildern generiert werden, die beispielsweise wie folgt lauten können:
- a) Prototyp 1 enthält die Kategorien K1, K2 und K3 mit den jeweils spezifizierten Eigenschaften E1, E2, ... En.
- b) Prototyp 2 enthält die Kategorien K1, K3 und K4 mit den jeweils spezifizierten Eigenschaften E1, E2, ... En.
- c) Prototyp 3 enthält die Kategorien K1, K2, K4 und K7 mit den jeweils spezifizierten Eigenschaften E1, E2, ... En.
- d) etc.
-
Außerdem werden Daten zur Zeitplanung der Testabteilungen A1, A2, ..., An eingegeben, aus denen das Eingabemodul 200 zweite Daten 270 generiert. Beispiele von Daten zur Zeitplanung können wie folgt aussehen:
- a) Das Zeitintervall Δt1 zum Testen der Kategorie K1 in der Testabteilung A1 dauert 3 Tage und kann vom 02. - 14. Mai 2022 durchgeführt werden.
- b) Das Zeitintervall Δt2 zum Testen der Kategorie K2 in der Testabteilung A2 dauert 5 Tage und kann vom 04. - 12. Mai 2022 durchgeführt werden.
- c) Das Zeitintervall Δt3 zum Testen der Kategorie K3 in der Testabteilung A3 dauert 2 Tage und kann vom 02. - 25. Mai 2022 durchgeführt werden.
- d) etc.
-
Die von dem Eingabemodul 200 generierten ersten Daten 250 und zweiten Daten 270 werden an das Transformationsmodul 300 weitergegeben. Da es sich bei den generierten ersten Daten 250 und zweiten Daten 270 insbesondere um kategoriale Daten handelt, werden diese in dem Transformationsmodul 300 von einem Encoder 350 derart konvertiert, dass sie von Algorithmen des maschinellen Lernens verwendet werden können. Insbesondere ist der Encoder 350 als One-Hot-Encoder ausgebildet. Die Grundidee der One-Hot-Codierung besteht darin, neue Variablen zu erstellen, die die Werte 0 und 1 annehmen und die ursprünglichen kategorialen Werte der ersten und zweiten Daten 250, 270 repräsentieren. So werden beispielsweise die kategorialen Daten „Elektromotor“ oder „Verbrennungsmotor“ in entsprechende numerische Ganzzahlen als Variablen abgebildet.
-
Der Encoder 350 verwendet zur Codierung insbesondere Algorithmen der künstlichen Intelligenz, insbesondere neuronale Netzwerke. Ein neuronales Netzwerk besteht aus Neuronen, die in mehreren Schichten angeordnet und unterschiedlich miteinander verbunden sind. Ein Neuron ist in der Lage, an seinem Eingang Informationen von außerhalb oder von einem anderen Neuron entgegenzunehmen, die Information in einer bestimmten Art zu bewerten und sie in veränderter Form am Neuronen-Ausgang an ein weiteres Neuron weiterzuleiten oder als Endergebnis auszugeben. Hidden-Neuronen sind zwischen den Input-Neuronen und Output-Neuronen angeordnet. Je nach Netzwerktyp können mehrere Schichten von Hidden-Neuronen vorhanden sein. Sie sorgen für die Weiterleitung und Verarbeitung der Informationen. Output-Neuronen liefern schließlich ein Ergebnis und geben dieses an die Außenwelt aus. Durch die Anordnung und die Verknüpfung der Neuronen entstehen verschiedene Typen von neuronalen Netzwerken wie Feedforward-Netzwerke, Rekurrente Netzwerke oder Convolutional Neural Networks. Die Netzwerke lassen sich durch unbeaufsichtigtes oder überwachtes Lernen trainieren.
-
Die derart codierten Daten 355 werden an ein Graphenmodul 350 weitergeben, das aus den codierten Daten 355 eine Menge Q von Graphen 375 erzeugt. Wie in der 2 dargestellt, wird als Graph 375 eine abstrakte Struktur bezeichnet, die eine Anzahl von Objekten zusammen mit den zwischen diesen Objekten bestehenden Verbindungen repräsentiert. Die Objekte selbst werden als Knoten des Graphen bezeichnet und die Verbindungen zwischen zwei Knoten als Kanten. Die Kanten können ungerichtet sein oder eine Richtung aufweisen. Es können auch mehrere Kanten zwischen zwei Knoten existieren.
-
Die Knoten des Graphen 375 stellen die verschiedenen möglichen Prototypen P1, P2, ..., Pn mit einer jeweils anderen Konfiguration dar, die sich aus der Eingabe von verschiedenen Kategorien K1, K2, ..., Kn mit Eigenschaften E1, E2, ..., En ergeben. Den Knoten sind jeweils die Zeiten Δt1, Δt2, ..., Δtn zugeordnet, die für das Testen der Kategorien K1, K2, ..., Kn in den verschiedenen Testabteilungen A1, A2, ..., An erforderlich sind.
-
Die Menge Q der Graphen 357 stellt nun eine Vielzahl an Möglichkeiten dar hinsichtlich der Anzahl an Prototypen P1, P2, ..., Pn und der Gestaltung von Testplänen. Die einzelnen Graphen 357 unterscheiden sich somit hinsichtlich Anzahl der Prototypen P1, P2, ..., Pn als auch der Testzeiten und damit Testpläne.
-
Für die Auffindung eines optimierten Graphen in der Menge Z der Graphen 357 wird ein Algorithmus wie Graphenfärbung und/oder Graphenaufteilung (engl. clique partitioning) verwendet. Bei der Graphenfärbung werden den Knoten KG1, KG2, ...; KGn Farben zugeordnet, aus denen die verschiedenen Produktvarianten P1, P2, ..., Pn berechnet werden können. Es ist allerdings mit klassischen Berechnungsverfahren schwierig, das Graphenfärbungsproblem zu lösen. Daher wird erfindungsgemäß ein Quantenalgorithmus 440 zur Lösung des Graphenproblems verwendet.
-
Um den optimierten Graphen in der Menge Q der Graphen 357 zu finden, wird die Menge Q der Graphen 357 an das Quantentestplanungsmodul 400 übermittelt. Das klassische Transformationsmodul 300 und das Quantenplanungsmodul 400 sind mittels einer Kommunikationsverbindung miteinander verbunden. Insbesondere ist vorgesehen, dass das Quantentestplanungsmodul 400 in eine bestehende Hard- und Softwarearchitektur eingebettet werden kann. Dies bedeutet, dass an den klassischen Modulen des Systems 100 keine oder nur geringe Veränderungen vorgenommen werden müssen, um das Quantentestplanungsmodul 400 zu integrieren.
-
Das Quantentestplanungsmodul 400 weist zumindest einen Quantenprozessor 420 auf, der ausgebildet ist, einen Quantenalgorithmus 440 auszuführen. Der Quantenalgorithmus 440 ist ausgebildet, zumindest ein optimales Minimum hinsichtlich der Testzeiten, der Kosten der Prototypen, etc. über der Menge Q der Graphen 357 aufzufinden. Dieser von dem Quantenalgorithmus 440 ermittelte optimierte Graph wird als Zielgraph 475 bezeichnet. Mit einem optimalen Minimum wird im Rahmen der Erfindung ein Minimum bezeichnet, das eine gute Lösung des Problems darstellt. Dies bedeutet, dass auch mehr als ein Minimum gefunden werden kann, das eine akzeptable Lösung des Problems darstellt.
-
Als Quantenalgorithmus 440 wird im Folgenden ein Algorithmus bezeichnet, der zur Ausführung einen Quantencomputer benötigt. Da in der Quantenmechanik der Zustand eines Systems nicht wie in der klassischen Mechanik exakt vorhersagbar ist und daher einem möglichen Messwert nur eine Wahrscheinlichkeit zuordnen lässt, handelt es sich bei Quantenalgorithmen 440 um probabilistische Algorithmen, die nur eine Wahrscheinlichkeit für ein Ergebnis angeben können. Allerdings kann durch Wiederholung von Rechenoperationen mit dem Quantenalgorithmus 440 die Fehlerwahrscheinlichkeit beliebig klein werden. Für die Berechnung werden verschiedene, gleichzeitig existierende quantenmechanische Zustände von Teilsystemen überlagert (Superpositions-Prinzip). Die Variablen der Algorithmen werden in Quantenbits (Qubits) gespeichert.
-
Insbesondere wird als Quantenalgorithmus 440 für das Auffinden zumindest eines optimalenMinimums über der Menge Q der Graphen 357 ein Quantenglühen-Algorithmus (engl. quantum annealing) verwendet. Beim Quantenglühen wird mittels der Quantenphysik der minimale Energiezustand einer Zielfunktion ermittelt. Es handelt sich somit um eine Metaverfahren basierend auf Quantenfluktuationen, um zumindest ein optimales Minimum innerhalb einer möglicherweise sehr großen, aber endlichen Menge an möglichen Lösungen zu finden, die insbesondere zahlreiche lokale Minima aufweisen. Das Quantenglühen geht von einer quantenmechanischen Überlagerung aller möglichen Zustände mit gleichen Gewichten aus. Dann entwickelt sich das System gemäß der zeitabhängigen Schrödinger-Gleichung.
-
Der Zielgraph 475 kann direkt von dem Ausgabemodul 500 ausgegeben werden. Es kann aber auch vorgesehen sein, dass das Ausgabemodul 500 über ein Ausgabe-Transformationsmodul 520 verfügt, das den von dem Quantentestplanungsmodul 400 aufgefundenen Zielgraphen 475 in ein für einen Benutzer zugängliches Datenformat in Form von Ausgabedaten 550 übersetzt. Bei den Ausgabedaten 550 kann es sich beispielsweise um eine Darstellung der Konfiguration der relevanten Prototypen P1, P2, ..., Pn und einen Testplan zum Testen dieser Prototypen P1, P2, ..., Pn in Form von Texten, Bildern oder Graphiken, Diagrammen, mathematische Formeln, Power-Point Präsentationen, etc. handeln. Hierzu kann das Ausgabe-Transformierungsmodul 520 insbesondere einen Decoder 570 aufweisen.
-
Insbesondere kann vorgesehen sein, dass die Berechnungsergebnisse in Form von Prototypenkonfigurationen und Testplänen in der Cloud-Computing-Infrastruktur 700 gespeichert werden und jeweils über das Internet verfügbar sind.
-
Durch die Verwendung des Quantentestplanungsmoduls 400 mit einem Quantenalgorithmus 440 wird eine Beschleunigung der Rechenzeit für eine vorausschauende Testplanung für die Prototypen P1, P2, ..., Pn einer Entität 10 ermöglicht. Das Quantentestplanungsmodul 400 ermöglicht es, komplexe Optimierungsprobleme in einer geringen Rechenzeit zu lösen. Hierdurch kann die Anzahl der benötigten Prototypen P1, P2, ..., Pn begrenzt werden, so dass Kosten für die Herstellung von nicht benötigten Prototypen eingespart werden können. Zudem kann die Planung des Zeitablaufs der Testprozesse optimiert werden, so dass diese effizienter gestaltet werden können. In einer Weiterentwicklung der Erfindung kann vorgesehen sein, neu entstehende Randbedingungen aufgrund von neuen Vorgaben, Umweltbedingungen oder insbesondere aufgrund der Testergebnisse selbst wiederum als Daten 250, 270 einzugeben, so dass dann eine entsprechend modifizierte Testplanung entwickelt werden kann. Da die Rechenzeit deutlich verkürzt ist aufgrund des Einsatzes von Quantenalgorithmen, kann somit schnell auf Änderungen reagiert werden und eine neue Anzahl von Prototypen P1, P2, ..., Pn und ein Erprobungsplan erstellt werden.
-
Wie in 3 dargestellt, umfasst ein Verfahren zur optimierten Testplanung für das Prototypenmanagement einer Entität 10, die folgenden Verfahrensschritte:
- In einem Schritt S10 werden erste Daten 250 zu ein oder mehreren Prototypen P1, P2, ..., P3 mittels Sensoren 20 und/oder einer Datenbank 220 von einem Eingabemodul 200 generiert.
-
In einem Schritt S20 werden zweite Daten 270 zu einer Zeitplanung von Testabteilungen A1, A2, ..., An zum Testen der Prototypen P1, P2, ..., Pn von dem Eingabemodul 200 generiert, wobei eine Zeitplanung die Zuordnung zumindest eines Zeitintervalls Δtj zu einer Kategorie Kj und/oder Eigenschaft Ej umfasst.
-
In einem Schritt S30 werden die ersten Daten 250 und die zweiten Daten 270 von dem Eingabemodul 200 an ein Transformationsmodul 300 übermittelt, wobei das Transformationsmodul 300 zumindest einen Encoder 350 und ein Graphenmodul 370 umfasst.
-
In einem Schritt S40 werden die ersten Daten 250 und die zweiten Daten 270 in codierte Daten 355 in dem Encoder 350 transformiert, so dass die codierten Daten 355 von dem Graphenmodul 370 bearbeitbar sind.
-
In einem Schritt S50 wird eine Menge Q von Graphen 375 aus den codierten Daten 355 erzeugt, wobei ein Graph 375 jeweils eine mögliche Zuordnung der verschiedenen Prototypen P1, P2, ..., Pn zu einer Zeitplanung der Testabteilungen A1, A2, ..., An abbildet.
-
In einem Schritt S60 wird die Menge Q von Graphen 375 an ein Quantentestplanungsmodul 400 weitergegeben.
-
In einem Schritt S70 wird zumindest ein Zielgraphen 475 aus der Menge Q von Graphen 375 mittels eines Quantenalgorithmus 440 aufgefunden, wobei der Zielgraph 475 ein optimales Minimum hinsichtlich der Anzahl der benötigten Prototypen P1, P2, ..., Pn für die ausgewählten Kategorien K1, K2, ...., Kn und Eigenschaften E1, E2, ..., En und der benötigten Zeit zum Testen der ausgewählten Kategorien K1, K2, ..., Kn und/oder Eigenschaften E1, E2, ..., En der Prototypen P1, P2, ..., Pn darstellt.
-
Die vorliegende Erfindung bietet durch die Verwendung von Quantenalgorithmen wie insbesondere Quantenglühen die Möglichkeit, die Planbarkeit von Testprozessen durch eine optimierte Auswahl von relevanten Prototypen deutlich zu erhöhen. Da die Komplexität durch einen quantenmechanischen Optimierungsalgorithmus reduziert wird, können hierdurch insgesamt verbesserte Prototypen und damit auch Testergebnisse erzielt werden, die ressourcenschonender und kostengünstiger sind.
-
Bezugszeichen
-
- 10
- Entität
- 20
- Sensoren
- 100
- System
- 200
- Eingabemodul
- 220
- Datenbank
- 250
- erste Daten
- 270
- zweite Daten
- 300
- Transformationsmodul
- 320
- Prozessor
- 340
- Speichereinheit
- 350
- Encoder
- 355
- codierte Daten
- 370
- Graphenmodul
- 375
- Graphen
- 400
- Quantentestplanungsmodul
- 420
- Quantenprozessor
- 440
- Quantenalgorithmus
- 475
- Zielgraph
- 500
- Ausgabemodul
- 550
- Ausgabedaten
- 570
- Decoder
- 700
- Cloud-Computing-Infrastruktur
- 900
- Computerprogrammprodukt
- 950
- Programmcode
- P1, P2, ..., Pn
- Prototypen
- K1, K2, ..., Kn
- Kategorien
- E1, E2, ..., En
- Eigenschaften
- Q
- Menge aller Graphen 375
-
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
-
- DE 102020003625 A1 [0004]
- EP 3173984 A1 [0005]
- EP 3754566 A1 [0006]
- US 2011/0060710 A1 [0007]
- DE 102016220913 A1 [0008]