DE102020132384A1 - System, method and computer program product for configuring an optimized sensor set for a moving object - Google Patents

System, method and computer program product for configuring an optimized sensor set for a moving object Download PDF

Info

Publication number
DE102020132384A1
DE102020132384A1 DE102020132384.0A DE102020132384A DE102020132384A1 DE 102020132384 A1 DE102020132384 A1 DE 102020132384A1 DE 102020132384 A DE102020132384 A DE 102020132384A DE 102020132384 A1 DE102020132384 A1 DE 102020132384A1
Authority
DE
Germany
Prior art keywords
individuals
sensors
population
sensor
module
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
DE102020132384.0A
Other languages
German (de)
Inventor
Stefan Roos
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.)
Dr Ing HCF Porsche AG
Original Assignee
Dr Ing HCF Porsche AG
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 Dr Ing HCF Porsche AG filed Critical Dr Ing HCF Porsche AG
Priority to DE102020132384.0A priority Critical patent/DE102020132384A1/en
Publication of DE102020132384A1 publication Critical patent/DE102020132384A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/0097Predicting future conditions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/15Vehicle, aircraft or watercraft design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/12Computing arrangements based on biological models using genetic models
    • G06N3/126Evolutionary algorithms, e.g. genetic algorithms or genetic programming
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2420/00Indexing codes relating to the type of sensors based on the principle of their operation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/06Multi-objective optimisation, e.g. Pareto optimisation using simulated annealing [SA], ant colony algorithms or genetic algorithms [GA]

Abstract

Die Erfindung betrifft ein Verfahren zum Konfigurieren eines optimierten Sensorsets für ein sich bewegendes Objekt, umfassend:- Definieren zumindest einer Anforderung an ein Sensorset mit Sensoren zur Erfüllung einer Aufgabenfunktion des sich bewegenden Objekts;- Initialisieren einer Population von ausgewählten Individuen von Sensorsets, wobei jedem Individuum zumindest ein Parameter zugeordnet wird;- Generieren von synthetischen Sensordaten für jedes Sensorset innerhalb einer Simulation;- Bewerten der Qualität der synthetischen Sensordaten der Individuen mittels einer Bewertungsfunktion für alle Individuen der Population;- Feststellen, ob der Algorithmus beendet werden kann;- Beenden des Algorithmus, falls zumindest ein definiertes Abschlusskriterium zutrifft;- Auswählen von ein oder mehreren Individuen von Sensorsets basierend auf einem Bewertungsergebnis;- Kombinieren der Parameter von einem oder mehreren der ausgewählten Individuen miteinander und Erzeugen von ein oder mehreren Individuen der nächsten Generation;- Variieren der Parameter der Individuen der neuen Generation um ein definiertes Maß und Erzeugen eines neuen Individuums der neuen Population;- Übermitteln der neuen Population an das Initialisierungsmodul.The invention relates to a method for configuring an optimized sensor set for a moving object, comprising: - defining at least one requirement for a sensor set with sensors to fulfill a task function of the moving object; - initializing a population of selected individuals of sensor sets, each individual at least one parameter is assigned;- generating synthetic sensor data for each sensor set within a simulation;- evaluating the quality of the synthetic sensor data of the individuals using an evaluation function for all individuals of the population;- determining whether the algorithm can be terminated;- terminating the algorithm , if at least one defined termination criterion applies;- selecting one or more individuals from sensor sets based on an evaluation result;- combining the parameters of one or more of the selected individuals with one another and generating one or more Ind next generation individuals; - varying the parameters of the new generation individuals by a defined amount and creating a new individual of the new population; - submitting the new population to the initialization module.

Description

Die Erfindung betrifft ein System, Verfahren und Computerprogrammprodukt zum Konfigurieren eines optimierten Sensorsets für ein sich bewegendes Objekt, insbesondere ein Kraftfahrzeug.The invention relates to a system, method and computer program product for configuring an optimized sensor set for a moving object, in particular a motor vehicle.

Die Entwicklung des hochautomatisierten Fahrens (HAF) geht mit einem Komplexitätsanstieg von Fahrfunktionen einher, der zu einer Erhöhung der Anforderungen an Fahrzeugsensorsysteme führt. Für hochautomatisierte Fahrfunktionen sowie im Bereich der industriellen Robotik spielt die Umgebungswahrnehmung durch verschiedene Sensortechnologien wie z.B. LiDAR, Radar, Kamera und Ultraschall eine entscheidende Rolle.The development of highly automated driving (HAD) is accompanied by an increase in the complexity of driving functions, which leads to an increase in the demands on vehicle sensor systems. The perception of the environment through various sensor technologies such as LiDAR, radar, camera and ultrasound plays a decisive role for highly automated driving functions and in the field of industrial robotics.

Neben der Umgebungswahrnehmung liefern Eigenbewegungs- und Systemüberwachungs-Sensoren wie z.B. Kraft-/Drehmoment-Sensoren, Beschleunigungs-Sensoren, Temperatur-Sensoren oder Power-Management-Sensoren wichtige Informationen, um eine Aufgabe korrekt erfüllen zu können und/oder Kollisionen und Schäden zu vermeiden.In addition to the perception of the environment, self-motion and system monitoring sensors such as force/torque sensors, acceleration sensors, temperature sensors or power management sensors provide important information in order to be able to carry out a task correctly and/or to avoid collisions and damage .

Um bei steigender Komplexität der Aufgaben eines sich bewegenden Objekts z.B. eines Roboters oder eines automatisierten Kraftfahrzeugs für einen entsprechenden Erfolg der Aufgabe und für eine entsprechende Sicherheit zu sorgen, ist eine zuverlässige Umgebungswahrnehmung sowie Eigenbewegungs- und Systemüberwachung erforderlich. Um dieses Ziel zu erreichen, kann die Anzahl der erforderlichen Sensorelemente in einem Fahrzeug oder Roboter stark ansteigen. Zudem weisen einige Sensortechnologien Vor- und Nachteile auf, die von anderen Sensortechnologien ausgeglichen werden können. So haben beispielsweise Ultraschallsensoren eine begrenzte Reichweite von etwa einem Zentimeter bis zu einigen Metern und einen maximalen Richtkegel von etwa 30 Grad. Hinzu kommt, dass sie eine hohe Genauigkeit im Nahbereich bieten, die allerdings mit zunehmender Entfernung und zunehmendem Messwinkel abfällt. Außerdem sind sie anfällig für Temperatur- und Druckschwankungen sowie Störungen durch benachbarte Roboter oder Automobile, die Ultraschallsensoren mit gleicher Arbeitsfrequenz verwenden. Dennoch können sie in Kombination mit anderen Präsenzsensoren zuverlässige Positionsinformationen generieren. Daher ist die Kombination von verschiedenen Sensortechnologien im Rahmen einer Sensorfusion entscheidend, beispielsweise die Kombination von Sensorinformationen einer 2D/3D-Kamera, von LiDAR-Sensoren, Radar-Sensoren und Ultraschall-Sensoren, um einem Kraftfahrzeug oder einem Roboter zu ermöglichen, ihre Umgebung räumlich wahrzunehmen.In order to ensure that the tasks of a moving object, e.g. a robot or an automated motor vehicle, are successful and safe as the tasks of a moving object increase in complexity, reliable environmental perception as well as self-movement and system monitoring are required. In order to achieve this goal, the number of sensor elements required in a vehicle or robot can increase significantly. In addition, some sensor technologies have advantages and disadvantages that can be compensated for by other sensor technologies. Ultrasonic sensors, for example, have a limited range of around one centimeter to a few meters and a maximum directional cone of around 30 degrees. In addition, they offer a high level of accuracy at close range, which, however, decreases with increasing distance and measuring angle. In addition, they are susceptible to temperature and pressure fluctuations, as well as interference from neighboring robots or automobiles that use ultrasonic sensors with the same operating frequency. Nevertheless, in combination with other presence sensors, they can generate reliable position information. Therefore, the combination of different sensor technologies within the framework of a sensor fusion is crucial, for example the combination of sensor information from a 2D/3D camera, LiDAR sensors, radar sensors and ultrasonic sensors, in order to enable a motor vehicle or a robot to spatially perceive their surroundings to perceive

Um bei diesem Anstieg der erforderlichen Sensorelemente und den vielfältigen Kombinationsmöglichkeiten der Sensorfusion verschiedener Sensortechnologien eine geforderte Funktionsqualität und Sicherheit bei gleichzeitig tragbaren Kosten zu gewährleisten, ist eine Optimierung der Auslegung des Sensorsets, bestehend aus mindestens einem Sensorelement, wünschenswert. Eine Optimierung kann die Auswahl der verwendeten Sensorelemente, deren Technologie, Positionierung, Orientierung in einem Fahrzeug oder Roboter, sowie dessen Auflösung, Abtastrate oder Überwachungsbereich umfassen. Als Optimierungsverfahren ist ein genetischer Algorithmus angestrebt.In order to ensure the required functional quality and safety with this increase in the required sensor elements and the diverse possible combinations of sensor fusion of different sensor technologies while at the same time bearable costs, an optimization of the design of the sensor set, consisting of at least one sensor element, is desirable. Optimization can include the selection of the sensor elements used, their technology, positioning, orientation in a vehicle or robot, as well as their resolution, sampling rate or monitoring area. A genetic algorithm is aimed at as an optimization method.

Derzeit werden Sensoren in einem Fahrzeug oder Roboter weitgehend aufgrund von Erfahrungswerten und Expertenwissen ausgelegt, so dass ein generalistisches Optimierungsverfahren bisher nicht gegeben ist.Sensors in a vehicle or robot are currently designed largely on the basis of empirical values and expert knowledge, so that a general optimization method has not yet been given.

Die CN 109917290 A beschreibt ein Temperaturbestimmungsverfahren für Kraftfahrzeugbatterien, wobei Temperaturmesspunkte mittels genetischer Algorithmen bestimmt und optimiert werden.the CN 109917290A describes a temperature determination method for motor vehicle batteries, with temperature measuring points being determined and optimized using genetic algorithms.

Die US 600 6604 A beschreibt ein Verfahren zum Bestimmen einer optimierten Anordnung von Flüssigkeitsoberflächensensoren zum Messen der Flüssigkeitsmenge in einem Behälter, wobei genetische Algorithmen verwendet werden.the U.S. 600 6604 A describes a method for determining an optimized arrangement of liquid surface sensors for measuring the amount of liquid in a container using genetic algorithms.

Die US 789 5021 B1 beschreibt ein Verfahren zum Anordnen eines Sensors in einer Umgebung, wobei optimale Werte mit einem genetischen Algorithmus über einen Satz von Fitnessfunktionsparametern bestimmt werden.the US 789 5021 B1 describes a method for placing a sensor in an environment where optimal values are determined with a genetic algorithm over a set of fitness function parameters.

Die der Erfindung zu Grunde liegende Aufgabe besteht nun darin, ein Verfahren, ein System und ein Computerprogrammprodukt zum Konfigurieren eines optimierten Sensorsets für ein sich bewegendes Objekt, insbesondere für ein Kraftfahrzeug, zu schaffen, das sich durch eine hohe Zuverlässigkeit und Genauigkeit bei gelichzeitig realisierbarem Optimierungsaufwand, auszeichnet.The object on which the invention is based is now to create a method, a system and a computer program product for configuring an optimized sensor set for a moving object, in particular for a motor vehicle, which is characterized by high reliability and accuracy with simultaneously realizable optimization effort , excellent.

Gemäß der vorliegenden Erfindung wird ein Verfahren, ein System und ein Computerprogrammprodukt vorgeschlagen, durch das die Auswahl, Positionierung, Orientierung der einzelnen Sensoren sowie deren Auflösung, Abtastrate und Überwachungsbereich für die Umgebungs- und/oder Eigen- und/oder Systemüberwachung eines sich bewegenden Objekts optimiert wird, um hierdurch die Grundlage für eine zuverlässige und genaue Sensorwahrnehmung und damit eine zuverlässige und genaue Funktionsweise der Aufgabenerfüllung des Objekts zu schaffen.According to the present invention, a method, a system and a computer program product is proposed by which the selection, positioning, orientation of the individual sensors and their resolution, sampling rate and monitoring range for the environmental and/or self-monitoring and/or system monitoring of a moving object is optimized in order to thereby create the basis for a reliable and accurate sensor perception and thus a reliable and accurate functioning of the task fulfillment of the object.

Diese Aufgabe wird hinsichtlich eines Verfahrens durch die Merkmale des Patentanspruchs 1, hinsichtlich eines Systems durch die Merkmale des Patentanspruchs 6, und hinsichtlich eines Computerprogrammprodukts durch die Merkmale des Patentanspruchs 11 erfindungsgemäß gelöst. Die weiteren Ansprüche betreffen bevorzugte Ausgestaltungen der Erfindung.This object is achieved according to the invention with regard to a method by the features of patent claim 1, with regard to a system by the features of patent claim 6, and with regard to a computer program product by the features of patent claim 11. The further claims relate to preferred embodiments of the invention.

Gemäß einem ersten Aspekt stellt die Erfindung ein Verfahren zum Konfigurieren eines optimierten Sensorsets für ein sich bewegendes Objekt, insbesondere eines Kraftfahrzeugs, bereit. Das Verfahren umfasst die folgenden Verfahrensschritte:

  • - Definieren von mindestens einer Anforderung an ein Sensorset, bestehend aus einem oder mehreren Sensoren, zur Erfüllung einer Aufgabenfunktion des sich bewegenden Objekts;
  • - Initialisieren einer Population von zufällig oder nach bestimmten Kriterien ausgewählten Individuen von Sensorsets, wobei jedem Individuum zumindest ein Parameter zugeordnet wird;
  • - Generieren von synthetischen Sensordaten und Referenzinformationen durch eine virtuelle Simulation für alle Individuen der Population;
  • - Bewerten der Qualität der vorliegenden synthetischen Sensordaten mittels einer Bewertungsfunktion, in Abhängigkeit der Anforderungen an die zu erfüllende Aufgabe, für alle Individuen der Population;
  • - Beenden des Algorithmus, falls zumindest ein definiertes Abschlusskriterium zutrifft;
  • - Auswählen von ein oder mehreren Individuen basierend auf dem Bewertungsergebnis der Bewertungsfunktion;
  • - Kombinieren der Parameter von einem oder mehreren der ausgewählten Individuen miteinander und Erzeugen von ein oder mehreren Individuen der nächsten Generation;
  • - Variieren der Parameter der Individuen der neuen Generation um ein definierbares Maß und Erzeugen eines neuen Individuums der neuen Generation;
  • - Übermitteln der neuen Population an das Initialisierungsmodul und Durchführen der vorangehenden Verfahrensschritte mit der neuen Population.
According to a first aspect, the invention provides a method for configuring an optimized sensor set for a moving object, in particular a motor vehicle. The procedure comprises the following procedural steps:
  • - defining at least one requirement for a sensor set consisting of one or more sensors to fulfill a task function of the moving object;
  • - Initializing a population of individuals from sensor sets selected randomly or according to specific criteria, with each individual being assigned at least one parameter;
  • - Generation of synthetic sensor data and reference information through a virtual simulation for all individuals of the population;
  • - Assess the quality of the available synthetic sensor data by means of an assessment function, depending on the requirements of the task to be performed, for all individuals in the population;
  • - Termination of the algorithm if at least one defined termination criterion applies;
  • - selecting one or more individuals based on the evaluation result of the evaluation function;
  • - combining the parameters of one or more of the selected individuals together and generating one or more next generation individuals;
  • - varying the parameters of the new generation individuals by a definable amount and creating a new new generation individual;
  • - Sending the new population to the initialization module and performing the previous method steps on the new population.

In einer Weiterbildung ist vorgesehen, dass es sich bei einem Parameter um eine Eigenschaft wie beispielsweise Technologie, Einbauposition, Orientierung, Auflösung, Abtastrate oder Überwachungsbereich eines Sensorelements handelt.A further development provides that a parameter is a property such as technology, installation position, orientation, resolution, sampling rate or monitoring range of a sensor element.

Insbesondere handelt es sich bei den Sensoren um 2D/3D-Kameras und/oder LiDAR-Sensoren und/oder Radar-Sensoren und/oder Ultraschall-Sensoren und/oder Kraft/Drehmoment-Sensoren und/oder Beschleunigungs-Sensoren und/oder Drucksensoren und/oder Temperatur-Sensoren und/oder Feuchtigkeitssensoren und/oder Power-Management-Sensoren.In particular, the sensors are 2D/3D cameras and/or LiDAR sensors and/or radar sensors and/or ultrasonic sensors and/or force/torque sensors and/or acceleration sensors and/or pressure sensors and /or temperature sensors and/or humidity sensors and/or power management sensors.

In einer Ausführungsform ist vorgesehen, dass eine oder mehrere der folgenden Bedingungen ein Abschlusskriterium darstellen: das Bewertungsergebnis hat einen Zielwert erreicht, der dadurch definiert wird, dass die Qualität der synthetischen Sensordaten eines Individuums über einem Schwellenwert liegt; und/oder die Individuen einer Population erreichen einen Konvergenzwert; und/oder eine gegebene maximale Anzahl von Iterationen wurde erreicht.In one embodiment it is provided that one or more of the following conditions constitute a termination criterion: the evaluation result has reached a target value which is defined by the quality of the synthetic sensor data of an individual being above a threshold value; and/or the individuals of a population reach a convergence value; and/or a given maximum number of iterations has been reached.

Insbesondere handelt es sich bei dem sich bewegenden Objekt um ein Kraftfahrzeug, ein Wasserfahrzeug, ein Luftfahrzeug oder einen Roboter.In particular, the moving object is a motor vehicle, a watercraft, an aircraft or a robot.

Gemäß einem zweiten Aspekt stellt die Erfindung ein System zum Konfigurieren eines optimierten Sensorsets für ein sich bewegendes Objekt, insbesondere eines Kraftfahrzeugs, bereit. Das System umfasst ein Anforderungsmodul, das ausgebildet ist, zumindest eine Anforderung an ein Sensorset bestehend aus mindestens einem Sensorelement zur Erfüllung einer Aufgabenfunktion des sich bewegenden Objekts zu definieren; ein Initialisierungsmodul, das ausgebildet ist, eine Population von zufällig oder nach bestimmten Kriterien ausgewählten Individuen von Sensorsets zu initialisieren, wobei jedem Individuum zumindest ein Sensorelement mit mindestens einem variierbaren Parameter zugeordnet wird; ein Simulationsmodul, das ausgebildet ist, innerhalb eines Katalogs definierter Simulationsszenarien, synthetische Sensordaten für ein oder mehrere Individuen einer Population zu generieren; ein Bewertungsmodul, das ausgebildet ist, die Qualität der vorliegenden synthetische Sensordaten mittels einer Bewertungsfunktion eines oder mehreren Individuen einer Population zu bewerten; ein Abschlussmodul, das ausgebildet ist, festzustellen, ob der Algorithmus beendet werden kann und den Algorithmus zu beenden, falls zumindest ein definiertes Abschlusskriterium zutrifft; ein Selektionsmodul, das ausgebildet ist, ein oder mehrere Individuen einer Population basierend auf einem Bewertungsergebnis der Bewertungsfunktion auszuwählen; ein Rekombinationsmodul, das ausgebildet ist, die Parameter von mindestens zwei der ausgewählten Individuen miteinander zu kombinieren und ein oder mehrere Individuen der nächsten Generation zu erzeugen; ein Mutationsmodul, das ausgebildet ist, die Parameter der Individuen der neuen Generation um ein definiertes Maß zu variieren und ein neues Individuum der neuen Population zu erzeugen sowie die neuen Population an das Initialisierungsmodul zu übermitteln.According to a second aspect, the invention provides a system for configuring an optimized sensor set for a moving object, in particular a motor vehicle. The system includes a requirement module which is designed to define at least one requirement for a sensor set consisting of at least one sensor element for fulfilling a task function of the moving object; an initialization module that is designed to initialize a population of individuals from sensor sets selected randomly or according to specific criteria, wherein each individual is assigned at least one sensor element with at least one variable parameter; a simulation module that is designed to generate synthetic sensor data for one or more individuals of a population within a catalog of defined simulation scenarios; an evaluation module that is designed to evaluate the quality of the available synthetic sensor data by means of an evaluation function of one or more individuals in a population; a termination module that is designed to determine whether the algorithm can be terminated and to terminate the algorithm if at least one defined termination criterion applies; a selection module configured to select one or more individuals from a population based on an evaluation result of the evaluation function; a recombination module configured to combine the parameters of at least two of the selected individuals and to generate one or more individuals of the next generation; a mutation module designed to vary the parameters of the new generation individuals by a defined amount and generate a new individual of the new population and the new ones Submit population to the initialization module.

In einer Weiterbildung ist vorgesehen, dass es sich bei einem Parameter um eine Eigenschaft wie beispielsweise Technologie, Einbauposition, Orientierung, Auflösung, Abtastrate oder Überwachungsbereich eines Sensorelements handelt.A further development provides that a parameter is a property such as technology, installation position, orientation, resolution, sampling rate or monitoring range of a sensor element.

In einer Ausführungsform ist vorgesehen, dass es sich bei den Sensoren um 2D/3D-Kameras und/oder LiDAR-Sensoren und/oder Radar-Sensoren und/oder Ultraschall-Sensoren und/oder Kraft/Drehmoment-Sensoren und/oder Beschleunigungs-Sensoren und/oder Drucksensoren und/oder Temperatur-Sensoren und/oder Feuchtigkeitssensoren und/oder Power-Management-Sensoren handelt.One embodiment provides that the sensors are 2D/3D cameras and/or LiDAR sensors and/or radar sensors and/or ultrasonic sensors and/or force/torque sensors and/or acceleration sensors and/or pressure sensors and/or temperature sensors and/or humidity sensors and/or power management sensors.

In einer weiteren Ausführungsform ist vorgesehen, dass eine oder mehrere der folgenden Bedingungen ein Abschlusskriterium darstellen: das Bewertungsergebnis hat einen Zielwert erreicht, der dadurch definiert wird, dass die Qualität der synthetischen Sensordaten eines Individuums über einem Schwellenwert liegt; und/oder die Individuen einer Population erreichen einen Konvergenzwert; und/oder eine gegebene maximale Anzahl von Iterationen wurde erreicht.In a further embodiment it is provided that one or more of the following conditions represent a conclusion criterion: the evaluation result has reached a target value which is defined by the fact that the quality of the synthetic sensor data of an individual is above a threshold value; and/or the individuals of a population reach a convergence value; and/or a given maximum number of iterations has been reached.

Insbesondere handelt es sich bei dem sich bewegenden Objekt um ein Kraftfahrzeug, ein Wasserfahrzeug, ein Luftfahrzeug oder einen Roboter.In particular, the moving object is a motor vehicle, a watercraft, an aircraft or a robot.

Gemäß einem dritten Aspekt stellt die Erfindung ein Computerprogrammprodukt bereit, das einen ausführbaren Programmcode umfasst, der so konfiguriert ist, dass er bei seiner Ausführung das Verfahren gemäß dem ersten Aspekt ausführt.According to a third aspect, the invention provides a computer program product comprising executable program code configured, when executed, to carry out the method according to the first aspect.

Nachfolgend wird die Erfindung anhand von in der Zeichnung dargestellten Ausführungsbeispielen näher erläutert.The invention is explained in more detail below with reference to exemplary embodiments illustrated in the drawing.

Dabei zeigt:

  • 1 eine schematische Darstellung eines Sensorsets für ein sich bewegendes Objekt;
  • 2 ein Blockdiagram zur Erläuterung eines Ausführungsbeispiels des erfindungsgemäßen Systems;
  • 3 ein Flussdiagramm zur Erläuterung der einzelnen Verfahrensschritte des erfindungsgemäßen Verfahrens;
  • 4 eine schematische Darstellung eines Computerprogrammprodukts gemäß einer Ausführungsform des dritten Aspekts der Erfindung.
It shows:
  • 1 a schematic representation of a sensor set for a moving object;
  • 2 a block diagram to explain an embodiment of the system according to the invention;
  • 3 a flowchart to explain the individual steps of the method according to the invention;
  • 4 a schematic representation of a computer program product according to an embodiment of the third aspect of the invention.

Zusätzliche Kennzeichen, Aspekte und Vorteile der Erfindung oder ihrer Ausführungsbeispiele werden durch die ausführliche Beschreibung in Verbindung mit den Ansprüchen ersichtlich.Additional features, aspects and advantages of the invention or embodiments thereof will become apparent from the detailed description coupled with the claims.

1 zeigt ein Sensorset 10 für ein sich bewegendes Objekt 20. Bei einem Sensorset 10 handelt es sich um eine Gruppe von ein oder mehreren Sensorelementen a1, a2, ..., ak; b1, b2, ..., bl; ...; n1, n2, ..., nm eines oder mehrerer Sensortypen S1, S2, ..., Sn für ein sich bewegendes Objekt 20 zur Ermittlung von Sensordaten. Bei dem sich bewegenden Objekt 20 kann es sich um ein Kraftfahrzeug, ein Luftfahrzeug wie Drohnen oder ein Wasserfahrzeug oder um einen Roboter beispielsweise in einer Produktionsanlage oder einem Logistikbetrieb handeln. 1 shows a sensor set 10 for a moving object 20. A sensor set 10 is a group of one or more sensor elements a 1 , a 2 , ..., ak ; b 1 , b 2 , ..., b 1 ; ...; n 1 , n 2 , ..., n m one or more sensor types S 1 , S 2 , ..., S n for a moving object 20 for determining sensor data. The moving object 20 can be a motor vehicle, an aircraft such as drones or a watercraft, or a robot, for example in a production facility or a logistics operation.

Die verschiedenen Sensoren a1, a2, ..., ak; b1, b2, ..., bl; ...; n1, n2, ..., nm des Sensorsets 10 werden in dem sich bewegenden Objekt 20 und/oder der Umgebung des Objekts 20 an unterschiedlichen Positionen verbaut und verfügen über unterschiedliche Eigenschaften z.B. Einbauposition (in Koordinaten), Orientierung (in Winkeln), Auflösung (in Anzahl Messpunkte), Abtastrate (in Hz) oder Überwachungsbereich (in Winkeln). Die Sensorelemente, die aus dem Sensorset 10 und den weiteren damit verbundenen elektrischen und elektronischen Bauelementen wie Aktuatoren, Prozessoren und/oder Speicherelemente bestehen, dienen zur Erfassung von Messdaten, um bestimmte Aufgabenfunktionen des Objekts 20 zu erfüllen. Bei einer Aufgabenfunktion kann es sich zum Beispiel um einen Autopiloten bei einem Fahrzeug, eine Objekterkennung oder eine Lokalisierung oder um Bewegungsabläufe eines Roboters handeln. Das verwendete Sensorset muss daher derart ausgelegt und konfiguriert werden, dass durch die verwendeten Sensorelemente a1, a2, ..., ak; b1, b2, ..., bl; ...; n1, n2, ..., nm, alle relevanten Informationen erfasst werden, die für die jeweilige Aufgabenfunktion benötigt werden. Es kann auch erforderlich sein, dass mehrere Aufgabenfunktionen gleichzeitig erfüllt werden müssen, wie beispielsweise die Überwachung der Umgebung des Objekts 20 und die Koordinierung eines Bewegungsablaufs des Objekts 20.The various sensors a 1 , a 2 , ..., a k ; b 1 , b 2 , ..., b 1 ; ...; n 1 , n 2 , ), resolution (in number of measuring points), sampling rate (in Hz) or monitoring range (in angles). The sensor elements, which consist of the sensor set 10 and the other electrical and electronic components connected thereto, such as actuators, processors and/or storage elements, are used to acquire measurement data in order to fulfill specific task functions of the object 20 . A task function can be, for example, an autopilot in a vehicle, object recognition or localization or movement sequences of a robot. The sensor set used must therefore be designed and configured in such a way that the sensor elements a 1 , a 2 , . . . , a k ; b 1 , b 2 , ..., b 1 ; ...; n 1 , n 2 , ..., n m , all relevant information required for the respective task function is recorded. It may also be necessary for several task functions to be fulfilled simultaneously, such as monitoring the surroundings of the object 20 and coordinating a movement of the object 20.

Bei den Sensortypen S1, S2, ..., Sn handelt es sich beispielsweise um verschiedene Sensortechnologien wie 2D/3D-Kameras, LiDAR-Sensoren, Radar-Sensoren, Ultraschall-Sensoren, Kraft/Drehmoment-Sensoren, Beschleunigungs-Sensoren, Drucksensoren, Temperatursensoren, Feuchtigkeitssensoren oder Power-Management-Sensoren, die für verschiedene Aufgabenfunktionen eingesetzt werden. Es können auch mehrere Sensoren unterschiedlicher Sensortechnologien miteinander kombiniert werden, um ein oder mehrere Aufgabenfunktionen zu erfüllen.The sensor types S 1 , S 2 , , pressure sensors, temperature sensors, humidity sensors or power management sensors that are used for various task functions. Several sensors from different sensor technologies can also be combined with one another in order to fulfill one or more task functions.

Erfindungsgemäß werden zur Optimierung des verwendeten Sensorsets a1, a2, ..., ak; b1, b2, ..., bl; ...; n1, n2, ..., nm evolutionäre Algorithmen und insbesondere genetische Algorithmen eingesetzt, die auf einem Populationsansatz basieren, um mittels einer heuristischen Suche ein Optimierungsproblem zu lösen. Das System 100, gezeigt in 2, umfasst verschiedene Module, die teilweise mit Prozessoren und Speichereinheiten versehen sind.According to the invention, to optimize the sensor set used, a 1 , a 2 , . . . , a k ; b1 , b2 , ..., b l ; ...; n 1 , n 2 , ..., n m evolutionary algorithms and in particular genetic algorithms based on a population approach are used to solve an optimization problem using a heuristic search. The system 100 shown in 2 , includes various modules, some of which are equipped with processors and memory units.

Unter einem „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.In the context of the invention, a “processor” can be understood to mean, for example, a machine or an electronic circuit. A processor can in particular be a central processing unit (CPU), a microprocessor or a microcontroller, for example an application-specific integrated circuit or a digital signal processor, possibly in combination with a memory unit for storing program instructions, etc . A processor can also be understood to mean a virtualized processor, a virtual machine or a soft CPU. It can also be a programmable processor, for example, which is equipped with configuration steps for executing the mentioned method according to the invention or is configured with configuration steps in such a way that the programmable processor has the inventive features of the method, the component, the modules, or other aspects and/or or implemented partial aspects of the invention.

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.In the context of the invention, a “memory unit” or “memory module” and the like can mean, for example, a volatile memory in the form of a random-access memory (RAM) or a permanent memory such as a hard disk or a data carrier or e.g. B. be understood as a removable memory module. However, the storage module can also be a cloud-based storage solution.

Unter einem „Modul“ kann im Zusammenhang mit der Erfindung beispielsweise ein Prozessor und/oder eine Speichereinheit zum Speichern von Programmbefehlen verstanden werden. Beispielsweise ist ein Modul speziell dazu eingerichtet, die Programmbefehle derart auszuführen, damit der Prozessor und/oder die Speichereinheit Funktionen ausführt, um das erfindungsgemäße Verfahren oder einen Schritt des erfindungsgemäßen Verfahrens zu implementieren oder realisieren.In connection with the invention, a “module” can be understood to mean, for example, a processor and/or a memory unit for storing program instructions. For example, a module is specially set up to execute the program instructions in such a way that the processor and/or the memory unit executes functions in order to implement or realize the method according to the invention or a step of the method according to the invention.

Wie in 2 dargestellt, werden zunächst in einem Anforderungsmodul 110 die Anforderungen an ein Sensorset 10 bestehend aus den Sensoren a1, a2, ..., ak; b1, b2, ..., bl; ...; n1, n2, ..., nm definiert, um eine bestimmte Aufgabenfunktion zu erfüllen. Das Anforderungsmodul 110 kann über Benutzerschnittstellen verfügen, um die Anforderungen einzugeben oder sie automatisiert aus einem Anforderungskatalog einzulesen.As in 2 shown, the requirements for a sensor set 10 consisting of the sensors a 1 , a 2 , . . . ak ; b 1 , b 2 , ..., b 1 ; ...; n 1 , n 2 , ..., n m defined to fulfill a certain task function. The requirements module 110 can have user interfaces in order to enter the requirements or read them in automatically from a requirements catalogue.

In einem Initialisierungsmodul 120 wird eine initiale Population Ωt=0 von zufällig ausgewählten Individuen X1, X2, ..., Xk von Sensorsets 10 erzeugt. Jedes Individuum Xi entspricht einem Sensorset 10. Die einzelnen Individuen weisen einen genetischen Code auf, der beispielsweise als Zeichenkette und/oder als reale Ziffern und/oder in einer Baumstruktur darstellbar ist. Ein Beispiel für eine Zeichenkette ist ein Spaltenvektor mit einer Anzahl m von Elementen Ψ1, Ψ2, ..., Ψp. Die einzelnen Elemente einer Zeichenkette repräsentieren die Sensorparameter, welche die Eigenschaften eines Sensorelements, wie eine bestimmte Einbauposition, Orientierung, Auflösung, Abtastrate oder Überwachungsbereich abbilden.In an initialization module 120, an initial population Ω t =0 of randomly selected individuals X 1 , X 2 , . . . , X k from sensor sets 10 is generated. Each individual X i corresponds to a sensor set 10. The individual individuals have a genetic code that can be represented, for example, as a character string and/or as real digits and/or in a tree structure. An example of a character string is a column vector with a number m of elements Ψ 1 , Ψ 2 , ..., Ψ p . The individual elements of a character string represent the sensor parameters, which depict the properties of a sensor element, such as a specific installation position, orientation, resolution, sampling rate or monitoring area.

Eine Population Ω kann ebenso in einem anderen Modul erzeugt und an das Initialisierungsmodul 120 übermittelt werden. Ein Individuum Xi stellt somit eine individuelle Ausprägung eines Sensorsets 10 mit bestimmten Eigenschaften einzelner Sensoren a1, a2, ..., ak; b1, b2,...,bl; ...; n1, n2,..., nm hinsichtlich der Technologie, der Einbauposition, der Auflösung und/oder des Sichtfeldes, etc. dar. Die initialen Individuen X1, X2, ..., Xk können eine zufällige Auswahl oder eine aktuelle Serienausprägung darstellen und müssen nicht optimal sein.A population Ω can also be generated in another module and transmitted to the initialization module 120 . An individual X i thus represents an individual characteristic of a sensor set 10 with certain properties of individual sensors a 1 , a 2 , . . . ak ; b 1 , b 2 ,..., bl ; ...; n 1 , n 2 ,..., nm in terms of technology, installation position, resolution and/or field of view, etc. The initial individuals X 1 , X 2 ,..., X k can be a random selection or represent a current series version and do not have to be optimal.

Anschließend wird die Population Ω an ein Simulationsmodul 130 überführt. Jedes Individuum Xi durchläuft einen Katalog definierter Simulationsszenarien, welche die Aufgabenfunktion bestmöglich repräsentieren. Das Simulationsmodul 130 generiert für jedes Individuum Xi synthetische Sensordaten.Then the population Ω is transferred to a simulation module 130 . Each individual X i runs through a catalog of defined simulation scenarios that best represent the task function. The simulation module 130 generates synthetic sensor data for each individual X i .

Basierend auf Anforderungen der Aufgabenfunktion wird eine Bewertungsfunktion F(Xi) bestimmt, um die Qualität eines bestimmten Individuums Xi eines Sensorsets 10 bestehend aus den verschiedenen Sensoren a1, a2, ..., ak; b1, b2, ..., bl; ...; n1, n2,..., nm zu bewerten. Die Bewertungsfunktion F(Xi) besteht beispielsweise aus gewichteten Eigenschaften ei, die den Kriterien entsprechen, die für eine optimierte Auswahl und Anordnung eines Individuums Xi des Sensorsets 10 erforderlich sind. Das Ziel des Algorithmus des erfindungsgemäßen Systems 100 ist es, Individuen Xi von Sensorsets 10 zu erzeugen, die ein hohes Bewertungsergebnis aufweisen, um die jeweilige Aufgabenfunktion hinsichtlich der Bewertungskriterien gut zu erfüllen.Based on requirements of the task function, an evaluation function F(X i ) is determined in order to assess the quality of a specific individual X i of a sensor set 10 consisting of the various sensors a 1 , a 2 , ..., ak ; b 1 , b 2 , ..., b 1 ; ...; n 1 , n 2 ,..., n m . The evaluation function F(X i ) consists, for example, of weighted properties e i that correspond to the criteria that are required for an optimized selection and arrangement of an individual X i of the sensor set 10 . The goal of the algorithm of the system 100 according to the invention is to generate individuals X i from sensor sets 10 that have a high evaluation result in order to fulfill the respective task function well with regard to the evaluation criteria.

In einem Bewertungsmodul 140 wird nun für jedes Individuum Xi der Population Ω mittels der Bewertungsfunktion F(Xi) eine Bewertung durchgeführt. Es wird bewertet, wie gut die synthetischen Sensordaten des Individuums Xi die definierten Anforderungen der Aufgabenfunktion erfüllen können. Auch weitere Kriterien wie beispielsweise die Kosten, das Gewicht, die Busauslastung, die übertragbare Datenrate, etc. des Sensorsets Xi fließen in die Bewertung mit ein. Alle Bewertungskriterien werden zu der Bewertungsfunktion F(Xi) kombiniert. Die Bewertungsfunktion F(Xi) kann beispielsweise eine lineare Kombination von Eigenschaften ei und derer Gewichtung wi aufweisen: F ( X i ) = w 1 e 1 + w 2 e 2 + + w n e n

Figure DE102020132384A1_0001
mit
F(Xi): Bewertungsfunktion
wi: Gewicht
ei: EigenschaftIn an evaluation module 140, an evaluation is now carried out for each individual X i of the population Ω using the evaluation function F(X i ). It is evaluated how well the synthetic sensor data of the individual X i defined the able to meet the requirements of the task function. Other criteria such as costs, weight, bus utilization, transmittable data rate, etc. of the sensor set X i are also included in the evaluation. All evaluation criteria are combined into the evaluation function F(X i ). For example, the evaluation function F(X i ) can have a linear combination of properties e i and their weighting w i : f ( X i ) = w 1 e 1 + w 2 e 2 + + w n e n
Figure DE102020132384A1_0001
With
F(X i ): evaluation function
w i : weight
ei : property

Ein hoher Wert für die Bewertungsfunktion F(Xi) ist ein Maß für die Qualität des jeweiligen Sensorsets Xi. Für jedes Individuum Xi der Population Ω wird mittels der Bewertungsfunktion F(Xi) ein Bewertungsergebnis berechnet.A high value for the evaluation function F(X i ) is a measure of the quality of the respective sensor set X i . An evaluation result is calculated for each individual X i of the population Ω using the evaluation function F(X i ).

Basierend auf dem Bewertungsergebnis werden ein oder mehrere Individuen Xi von Sensorsets 10 in einem Selektionsmodul 150 ausgewählt. Hierbei sind verschiedene Ansätze denkbar, wie beispielsweise die Auswahl der n-besten Individuen Xi oder aller Individuen Xi mit einem Bewertungsergebnis, das größer als ein Schwellenwert ist gemäß: F ( X i ) > S c h w e l l e n w e r t

Figure DE102020132384A1_0002
One or more individuals X i from sensor sets 10 are selected in a selection module 150 based on the evaluation result. Various approaches are conceivable here, such as selecting the n-best individuals X i or all individuals X i with an evaluation result that is greater than a threshold value according to: f ( X i ) > S c H w e l l e n w e right t
Figure DE102020132384A1_0002

Nun werden die ausgewählten Individuen Xi an ein Rekombinationsmodul 160 überführt. In dem Rekombinationsmodul 160 werden die Parameter Ψi von allen ausgewählten Individuen Xi miteinander kombiniert und ein oder mehrere Individuen Yi der nächsten Generation erzeugt. Somit vererben die selektierten Individuen Xi ihre Parameter Ψi an die nächste Generation. Hier sind mehrere Ansätze denkbar, wie diese Parameter Ψi vererbt werden können, beispielsweise über die Kombination der Parameter von zumindest zwei Elternteilen. Beispielsweise kann die Zeichenkette Ψ1, Ψ2, ..., Ψp eines Elters an einer zufälligen Stelle getrennt werden und mit den Parametwerten des anderen Elters aufgefüllt werden. So entsteht ein neues Individuum Yi, das Eigenschaften beider Elternteile aufweist.The selected individuals X i are now transferred to a recombination module 160 . In the recombination module 160, the parameters Ψ i of all selected individuals X i are combined with one another and one or more individuals Y i of the next generation are generated. Thus, the selected individuals X i inherit their parameters Ψ i to the next generation. Several approaches are conceivable here as to how these parameters Ψ i can be inherited, for example by combining the parameters of at least two parents. For example, a parent's string Ψ 1 , Ψ 2 , ..., Ψ p may be split at a random location and padded with the parameter values of the other parent. This creates a new individual Y i that has characteristics of both parents.

Nun werden in einem Mutationsmodul 170 die Parameter Ψi der Individuen Yi der neuen Generation um ein definiertes Maß variiert. Somit entsteht ein neues Individuum Y'i. Die Individuen Y'i stellen nun die neue Population Ωt+1 für einen erneuten Durchlauf der einzelnen Verfahrensschritte dar.Now, in a mutation module 170, the parameters Ψ i of the individuals Y i of the new generation are varied by a defined amount. A new individual Y' i thus arises. The individuals Y' i now represent the new population Ω t+1 for a new run through the individual method steps.

Die Verfahrensschritte in dem Initialisierungsmodul 120, dem Simulationsmodul 130, dem Bewertungsmodul 140, dem Selektionsmodul 150, dem Rekombinationsmodul 160 und dem Mutationsmodul 170 werden iterativ solange durchgeführt, bis ein in einem Abschlussmodul 180 definiertes Abbruchkriterium erfüllt ist. Hierfür können mehrere Abschlusskriterien ausgewählt werden, beispielsweise, dass das Bewertungsergebnis einen Zielwert erreicht hat, der dadurch definiert wird, dass die Abweichung unter einem Schwellenwert liegt. Ein anderes Kriterium kann sein, dass die Individuen der vorangehenden Population und die Individuen der nächsten Population sich annähern und somit einen Konvergenzwert erreichen. Ein weiteres Kriterium ist, dass eine gegebene maximale Anzahl von Iterationen erreicht wurde. Ist/sind eines oder mehrerer dieser Kriterien erreicht, so beendet das Abschlussmodul 180 den Algorithmus.The method steps in the initialization module 120, the simulation module 130, the evaluation module 140, the selection module 150, the recombination module 160 and the mutation module 170 are carried out iteratively until a termination criterion defined in a final module 180 is met. For this purpose, several completion criteria can be selected, for example that the evaluation result has reached a target value, which is defined by the fact that the deviation is below a threshold value. Another criterion can be that the individuals of the previous population and the individuals of the next population approach and thus reach a convergence value. Another criterion is that a given maximum number of iterations has been reached. If one or more of these criteria are met, the termination module 180 ends the algorithm.

In dem Fall jedoch, dass ein Abschlusskriterium nicht erfüllt ist, wird eine neue Population Ωt+1 erzeugt. Die neue Population Ωt+1 wird nun an das Initialisierungsmodul 120 übermittelt und die Verfahrensschritte werden solange iterativ durchgeführt, bis ein Abschlusskriterium erfüllt ist.However, in the event that a closure criterion is not met, a new population Ω t+1 is created. The new population Ω t+1 is now transmitted to the initialization module 120 and the method steps are carried out iteratively until a termination criterion is met.

Das erfindungsgemäße Verfahren lässt sich zur Optimierung ganzer Sensorsets 10 verwenden, kann aber auch zur Optimierung eines einzelnen Sensors eingesetzt werden.The method according to the invention can be used to optimize entire sensor sets 10, but can also be used to optimize an individual sensor.

Es ist auch denkbar, den Verfahrensschritt in dem Rekombinationsmodul 160 oder den Verfahrensschritt in dem Mutationsmodul 170 nicht vorzusehen.It is also conceivable not to provide the method step in the recombination module 160 or the method step in the mutation module 170 .

In 3 sind die Verfahrensschritte zum Konfigurieren eines optimierten Sensorsets 10 für ein sich bewegendes Objekt 20 dargestellt.In 3 the method steps for configuring an optimized sensor set 10 for a moving object 20 are shown.

In einem Schritt S10 wird in einem Anforderungsmodul 110 zumindest eine Anforderung an ein Sensorset 10 mit ein oder mehreren Sensoren a1, a2, ..., ak; b1, b2,...,bl; ...; n1, n2,...,nm zur Erfüllung einer Aufgabenfunktion eines sich bewegenden Objekts definiert.In a step S10, in a request module 110, at least one request is made to a sensor set 10 with one or more sensors a1, a2, . . . ak; b1, b2,..., bl ; ...; n1,n2,...,n m are defined to fulfill a task function of a moving object.

In einem Schritt S20 wird in einem Initialisierungsmodul 120 eine Population Ω von zufällig oder nach bestimmten Kriterien ausgewählten Individuen X1, X2, ..., Xn von Sensorsets 10 initialisiert, wobei jedem Individuum Xi zumindest ein Parameter Ψi zugeordnet wird.In a step S20 , a population Ω of individuals X 1 , X 2 , .

In einem Schritt S30, durchläuft jedes Individuum Xi in einem Simulationsmodul 130 einen Katalog definierter Simulationsszenarien, welche die Aufgabenfunktion bestmöglich repräsentieren. Das Simulationsmodul 130 generiert für jedes Individuum Xi synthetische Sensordaten.In a step S30, each individual X i runs through a catalog of defined simulation scenarios in a simulation module 130, which represent the task function in the best possible way. The simulation module 130 generates synthetic sensor data for each individual X i .

In einem Schritt S40 wird in einem Bewertungsmodul 140 für jedes Individuum Xi der Population Ω die Qualität der synthetischen Sensordaten mittels einer Bewertungsfunktion F(Xi) hinsichtlich der an das Sensorset gestellten Anforderungen für die Erfüllung einer bestimmten Aufgabe bewertet.In a step S40, the quality of the synthetic sensor data is evaluated in an evaluation module 140 for each individual X i of the population Ω using an evaluation function F(X i ) with regard to the requirements placed on the sensor set for fulfilling a specific task.

In einem Schritt S50 wird in einem Abschlussmodul 180 festgestellt, ob der Algorithmus beendet werden kann.In a step S50, a termination module 180 determines whether the algorithm can be terminated.

In einem Schritt S60 wird der Algorithmus beendet, falls zumindest ein im Abschlussmodul 180 definiertes Abschlusskriterium zutrifft.In a step S60, the algorithm is terminated if at least one termination criterion defined in the termination module 180 applies.

In einem Schritt S70 werden basierend auf dem Bewertungsergebnis ein oder mehrere Individuen Xi von Sensorsets 10 in einem Selektionsmodul 150 ausgewählt.In a step S70, one or more individuals X i from sensor sets 10 are selected in a selection module 150 based on the evaluation result.

In einem Schritt S80 werden in einem Rekombinationsmodul 160 die Parameter Ψi von einem oder mehreren der ausgewählten Individuen Xi miteinander kombiniert und ein oder mehrere Individuen Yi der nächsten Generation erzeugt.In a step S80, the parameters Ψ i of one or more of the selected individuals X i are combined with one another in a recombination module 160 and one or more individuals Y i of the next generation are generated.

In einem Schritt S90 werden in einem Mutationsmodul 170 die Parameter Ψi der Individuen Yi der neuen Generation um ein definiertes Maß variiert und ein neues Individuum Y'i der neuen Population Ωt+1 erzeugt.In a step S90, the parameters Ψ i of the individuals Y i of the new generation are varied by a defined amount in a mutation module 170 and a new individual Y′ i of the new population Ω t+1 is generated.

In einem Schritt S100 wird die Population Ωt+1 der neuen Generation an das Initialisierungsmodul 120 übermittelt. Hierbei wird die neue Generation Ωt+1 in die aktuelle Population Ωt überführt und anschließend die Schritte S10 - S50 durchgeführt.The population Ω t+1 of the new generation is transmitted to the initialization module 120 in a step S100. In this case, the new generation Ω t+1 is transferred to the current population Ω t and then steps S10-S50 are carried out.

4 stellt schematisch ein Computerprogrammprodukt 700 dar, das einen ausführbaren Programmcode 750 umfasst, der konfiguriert ist, um das Verfahren gemäß dem ersten Aspekt der vorliegenden Erfindung auszuführen, wenn es ausgeführt wird. 4 Figure 12 schematically illustrates a computer program product 700 comprising executable program code 750 configured to perform the method according to the first aspect of the present invention when executed.

Mit dem Verfahren gemäß der vorliegenden Erfindung können Zeit und Kosten für das Konfigurieren geeigneter Sensorsets 10 reduziert und die Sicherheit des sich bewegenden Objekts 20, insbesondere eines Kraftfahrzeugs verbessert werden. Durch die Verwendung eines evolutionären Algorithmus ist eine Anpassung der Parameter Ψi, die einen Einfluss auf die Datenqualität eines Sensorsets 10 haben, autonom und automatisch ermöglicht.With the method according to the present invention, time and costs for configuring suitable sensor sets 10 can be reduced and the safety of the moving object 20, in particular a motor vehicle, can be improved. The use of an evolutionary algorithm enables the parameters Ψ i that have an influence on the data quality of a sensor set 10 to be adapted autonomously and automatically.

BezugszeichenlisteReference List

1010
Sensorsetsensor set
2020
Objektobject
100100
System zum Konfigurieren eines SensorsetsSystem for configuring a sensor set
110110
Anforderungsmodulrequirements module
120120
Initialisierungsmodulinitialization module
130130
Simulationsmodulsimulation module
140140
Bewertungsmodulrating module
150150
Selektionsmodulselection module
160160
Rekombinationsmodulrecombination module
170170
Mutationsmodulmutation module
180180
Abschlussmodulfinal module
700700
Computerprogrammproduktcomputer program product
750750
Programmcode program code
a1, a2, ..., ak; b1, b2, ..., bl; ...; n1, n2, ..., nma1, a2, ..., ak; b1, b2, ..., bl; ...; n1, n2, ..., nm
Sensorensensors
X1, X2, ..., Xi, ..., XnX1, X2, ..., Xi, ..., Xn
Individuen von Sensorsetsindividuals of sensor sets
Y1, Y2, ..., Yi, ..., YnY1, Y2, ..., Yi, ..., Yn
Individuen von Sensorsets der nächsten GenerationIndividuals of next-generation sensor sets
ΩtΩt
Population der aktuellen GenerationCurrent generation population
Ωt+1Ωt+1
Population der nächsten Generationnext generation population
Ψ1, Ψ2, ..., Ψi, ..., ΨpΨ1, Ψ2, ..., Ψi, ..., Ψp
Parameter-Zeichenketteparameter string
F(Xi)F(Xi)
Bewertungsfunktionrating function

ZITATE ENTHALTEN IN DER BESCHREIBUNGQUOTES INCLUDED IN DESCRIPTION

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.This list of documents cited by the applicant was generated automatically and is included solely for the better information of the reader. The list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions.

Zitierte PatentliteraturPatent Literature Cited

  • CN 109917290 A [0007]CN 109917290A [0007]
  • US 6006604 A [0008]US6006604A [0008]
  • US 7895021 B1 [0009]US7895021B1 [0009]

Claims (11)

Ein Verfahren zum Konfigurieren eines optimierten Sensorsets (10) für ein sich bewegendes Objekt (20), insbesondere eines Kraftfahrzeugs, umfassend: - Definieren (S10) zumindest einer Anforderung an ein Sensorset (10) mit ein oder mehreren Sensoren (a1, a2, ..., ak; b1, b2, ..., bl; ...; n1, n2, ..., nm) zur Erfüllung einer Aufgabenfunktion des sich bewegenden Objekts (20); - Initialisieren (S20) einer Population (Ω) von zufällig oder nach bestimmten Kriterien ausgewählten Individuen (X1, X2, ..., Xn) von Sensorsets (10), wobei jedem Individuum (Xi) zumindest ein Parameter (Ψi) zugeordnet wird; - Generieren (S30) von synthetischen Sensordaten und Referenzinformationen durch die Simulation für alle Individuen (Xi) der Population (Ω); - Bewerten (S40) der Qualität der synthetischen Sensordaten mittels einer Bewertungsfunktion (F(Xi)) für die synthetischen Sensordaten und/oder weiteren Daten für ein oder mehrere Individuen (Xi) der Population; - Feststellen (S50), ob der Algorithmus beendet werden kann; - Beenden (S60) des Algorithmus, falls zumindest ein definiertes Abschlusskriterium zutrifft; - Auswählen (S70) von ein oder mehreren Individuen (Xi) von Sensorsets (10) basierend auf einem Bewertungsergebnis der Bewertungsfunktion (F(Xi)); - Kombinieren (S80) der Parameter (Ψi) von allen selektierten Individuen (Xi) miteinander und Erzeugen von ein oder mehreren Individuen (Yi) der nächsten Generation; - Variieren (S90) der Parameter (Ψi) der Individuen (Yi) der neuen Generation um ein definiertes Maß und Erzeugen eines neuen Individuums (Y'i) der neuen Population (Ωt+1); - Übermitteln (S100) der neuen Population (Ωt+1) an das Initialisierungsmodul (120) und Durchführen der Verfahrensschritte (S10 - S50) mit der neuen Population (Ωt+1 → Ω).A method for configuring an optimized sensor set (10) for a moving object (20), in particular a motor vehicle, comprising: - defining (S10) at least one requirement for a sensor set (10) with one or more sensors (a 1 , a 2 , ..., ak ; b 1 , b 2 , ..., b l ; ...; n 1 , n 2 , ..., n m ) for fulfilling a task function of the moving object (20); - Initializing (S20) a population (Ω) of individuals (X 1 , X 2 , ..., X n ) of sensor sets (10) selected randomly or according to certain criteria, wherein each individual (X i ) has at least one parameter (Ψ i ) is assigned; - Generating (S30) synthetic sensor data and reference information through the simulation for all individuals (X i ) of the population (Ω); - Evaluation (S40) of the quality of the synthetic sensor data by means of an evaluation function (F(X i )) for the synthetic sensor data and/or further data for one or more individuals (X i ) of the population; - determining (S50) whether the algorithm can be terminated; - Terminating (S60) the algorithm if at least one defined termination criterion applies; - selecting (S70) one or more individuals (X i ) from sensor sets (10) based on an evaluation result of the evaluation function (F(X i )); - combining (S80) the parameters (Ψ i ) of all selected individuals (X i ) with one another and generating one or more individuals (Y i ) of the next generation; - varying (S90) the parameters (Ψ i ) of the individuals (Y i ) of the new generation by a defined amount and generating a new individual (Y' i ) of the new population (Ω t+1 ); - Transmission (S100) of the new population (Ω t+1 ) to the initialization module (120) and carrying out the method steps (S10-S50) with the new population (Ω t+1 → Ω). Verfahren nach Anspruch 1, wobei es sich bei einem Parameter (Ψi) um eine bestimmte Eigenschaft eines Sensorelements wie beispielsweise der Positionierung, Orientierung in einem Fahrzeug oder Roboter, sowie dessen Auflösung, Abtastrate oder Überwachungsbereich handelt.procedure after claim 1 , where a parameter (Ψ i ) is a specific property of a sensor element, such as the positioning, orientation in a vehicle or robot, and its resolution, sampling rate or monitoring range. Verfahren nach einem der vorangehenden Ansprüche, wobei es sich bei den Sensoren (a1, a2, ..., ak; b1, b2, ..., bl; ...; n1, n2, ..., nm) um 2D/3D-Kameras, LiDAR-Sensoren, Radar-Sensoren, Ultraschall-Sensoren, Kraft/Drehmoment-Sensoren, Beschleunigungs-Sensoren, Drucksensoren, Temperatursensoren, Feuchtigkeitssensoren oder Power-Management-Sensoren handelt.Method according to one of the preceding claims, wherein the sensors (a 1 , a 2 , ..., ak ; b 1 , b 2 , ..., b l ; ...; n 1 , n 2 , ..., n m ) are 2D/3D cameras, LiDAR sensors, radar sensors, ultrasonic sensors, force/torque sensors, acceleration sensors, pressure sensors, temperature sensors, humidity sensors or power management sensors. Verfahren nach einem der vorangehenden Ansprüche, wobei eine oder mehrere der folgenden Bedingungen ein Abschlusskriterium darstellen: das Bewertungsergebnis hat einen Zielwert erreicht, der dadurch definiert wird, dass die Abweichung unter einem Schwellenwert liegt, und/oder die Individuen (X1, X2, ..., Xn) der Population (Ω) nähern sich an und die Population (Ω) erreicht einen Konvergenzwert, und/oder eine gegebene maximale Anzahl von Iterationen wurde erreicht.Method according to one of the preceding claims, in which one or more of the following conditions constitute a termination criterion: the evaluation result has reached a target value which is defined by the deviation being below a threshold value, and/or the individuals (X 1 , X 2 , ..., X n ) of the population (Ω) are approaching and the population (Ω) is reaching a convergence value and/or a given maximum number of iterations has been reached. Verfahren nach einem der vorangehenden Ansprüche, wobei es sich bei dem sich bewegenden Objekt (20) um ein Kraftfahrzeug, ein Wasserfahrzeug, ein Luftfahrzeug oder einen Roboter handelt.Method according to one of the preceding claims, in which the moving object (20) is an automobile, a watercraft, an aircraft or a robot. System (100) zum Konfigurieren eines optimierten Sensorsets (10) für ein sich bewegendes Objekt (20), insbesondere eines Kraftfahrzeugs, umfassend ein Anforderungsmodul (110), das ausgebildet ist, zumindest eine Anforderung an ein Sensorset (10) mit ein oder mehreren Sensoren (a1, a2, ..., ak; b1, b2, ..., bl; ...; n1, n2, ..., nm) zur Erfüllung einer Aufgabenfunktion des sich bewegenden Objekts (20) zu definieren; ein Initialisierungsmodul (120), das ausgebildet ist, eine Population (Ω) von zufällig oder nach bestimmten Kriterien ausgewählten Individuen (X1, X2, ..., Xn) von Sensorsets (10) zu initialisieren, wobei jedem Individuum (Xi) zumindest ein Parameter (Ψi) zugeordnet wird; ein Simulationsmodul (130), das ausgebildet ist, innerhalb eines Katalogs definierter Simulationsszenarien synthetische Sensordaten und/oder Referenzinformationen für alle Individuen (Xi) der Population (Ω) zu generieren; ein Bewertungsmodul (140), das ausgebildet ist, die Qualität der Individuen (Xi) mittels einer Bewertungsfunktion (F(Xi)) für die synthetischen Sensordaten für alle Individuen (Xi) der Population zu bewerten; ein Abschlussmodul (180), das ausgebildet ist, festzustellen, ob der Algorithmus beendet werden kann und den Algorithmus zu beenden, falls zumindest ein definiertes Abschlusskriterium zutrifft; ein Selektionsmodul (150), das ausgebildet ist, ein oder mehrere Individuen (Xi) von Sensorsets (10) basierend auf einem Bewertungsergebnis der Bewertungsfunktion (F(Xi)) auszuwählen; ein Rekombinationsmodul (160), das ausgebildet ist, die Parameter (Ψi) von einem oder mehreren der ausgewählten Individuen (Xi) miteinander zu kombinieren und ein oder mehrere Individuen (Yi) der nächsten Generation zu erzeugen; ein Mutationsmodul (170), das ausgebildet ist, die Parameter (Ψi) der Individuen (Yi) der neuen Generation um ein definiertes Maß zu variieren und ein neues Individuum (Y'i) der neuen Population (Ωt+1) zu erzeugen sowie die neuen Population (Ωt+1) an das Initialisierungsmodul (120) zu übermitteln.System (100) for configuring an optimized sensor set (10) for a moving object (20), in particular a motor vehicle, comprising a requirement module (110) which is designed to make at least one requirement for a sensor set (10) with one or more sensors (a 1 , a 2 , ..., a k ; b 1 , b 2 , ..., b l ; ...; n 1 , n 2 , ..., n m ) to fulfill a task function of the itself to define moving object (20); an initialization module (120) that is designed to initialize a population (Ω) of individuals (X 1 , X 2 , ..., X n ) of sensor sets (10) selected randomly or according to specific criteria, with each individual (X i ) at least one parameter (Ψ i ) is assigned; a simulation module (130) which is designed to generate synthetic sensor data and/or reference information for all individuals (X i ) of the population (Ω) within a catalog of defined simulation scenarios; an evaluation module (140) which is designed to evaluate the quality of the individuals (X i ) by means of an evaluation function (F(X i )) for the synthetic sensor data for all individuals (X i ) of the population; a termination module (180) configured to determine whether the algorithm can be terminated and to terminate the algorithm if at least one defined termination criterion applies; a selection module (150) which is designed to select one or more individuals (X i ) from sensor sets (10) based on an evaluation result of the evaluation function (F(Xi)); a recombination module (160) configured to combine the parameters (Ψ i ) of one or more of the selected individuals (X i ) with one another and to generate one or more individuals (Y i ) of the next generation; a mutation module (170) which is designed to vary the parameters (Ψ i ) of the individuals (Y i ) of the new generation by a defined amount and add a new individual (Y' i ) to the new population (Ω t+1 ). generate and transmit the new population (Ω t+1 ) to the initialization module (120). System (100) nach Anspruch 6, wobei es sich bei einem Parameter (Ψi) um eine bestimmte Eigenschaft eines Sensorelements wie beispielsweise der Positionierung, Orientierung in einem Fahrzeug oder Roboter, sowie dessen Auflösung, Abtastrate oder Überwachungsbereich handelt.system (100) after claim 6 , where a parameter (Ψ i ) is a particular eigen shank of a sensor element such as the positioning, orientation in a vehicle or robot, as well as its resolution, sampling rate or monitoring area. System (100) nach einem der Ansprüche 6-8, wobei es sich bei den Sensoren (a1, a2, ..., ak; b1, b2, ..., bl; ...; n1, n2, ..., nm) um 2D/3D-Kameras, LiDAR-Sensoren, Radar-Sensoren, Ultraschall-Sensoren, Kraft/Drehmoment-Sensoren, Beschleunigungs-Sensoren, Drucksensoren, Temperatursensoren, Feuchtigkeitssensoren oder Power-Management-Sensoren handelt.System (100) according to one of Claims 6 - 8th , where the sensors (a 1 , a 2 , ..., a k ; b 1 , b 2 , ..., b l ; ...; n 1 , n 2 , ..., n m ) are 2D/3D cameras, LiDAR sensors, radar sensors, ultrasonic sensors, force/torque sensors, acceleration sensors, pressure sensors, temperature sensors, humidity sensors or power management sensors. System (100) nach einem der Ansprüche 6-9, wobei eine oder mehrere der folgenden Bedingungen ein Abschlusskriterium darstellen: das Bewertungsergebnis hat einen Zielwert erreicht, der dadurch definiert wird, dass die Abweichung unter einem Schwellenwert liegt, und/oder die Individuen (X1, X2, ..., Xn) der Population (Ω) nähern sich an und die Population (Ω) erreicht einen Konvergenzwert, und/oder eine gegebene maximale Anzahl von Iterationen wurde erreicht.System (100) according to one of Claims 6 - 9 , where one or more of the following conditions constitute a termination criterion: the evaluation result has reached a target value, which is defined by the deviation being below a threshold value, and/or the individuals (X 1 , X 2 , ..., X n ) of the population (Ω) are approaching and the population (Ω) is reaching a convergence value, and/or a given maximum number of iterations has been reached. System (100) nach einem der Ansprüche 6-10, wobei es sich bei dem sich bewegenden Objekt (20) um ein Kraftfahrzeug, ein Wasserfahrzeug, ein Luftfahrzeug oder einen Roboter handelt.System (100) according to one of Claims 6 - 10 , wherein the moving object (20) is a motor vehicle, a watercraft, an aircraft or a robot. Computerprogrammprodukt (700), umfassend einen ausführbaren Programmcode (750), der so konfiguriert ist, dass er bei seiner Ausführung das Verfahren nach einem der Ansprüche 1 bis 5 ausführt.Computer program product (700), comprising an executable program code (750), which is configured so that when it is executed it performs the method according to any one of Claims 1 until 5 executes
DE102020132384.0A 2020-12-07 2020-12-07 System, method and computer program product for configuring an optimized sensor set for a moving object Pending DE102020132384A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102020132384.0A DE102020132384A1 (en) 2020-12-07 2020-12-07 System, method and computer program product for configuring an optimized sensor set for a moving object

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102020132384.0A DE102020132384A1 (en) 2020-12-07 2020-12-07 System, method and computer program product for configuring an optimized sensor set for a moving object

Publications (1)

Publication Number Publication Date
DE102020132384A1 true DE102020132384A1 (en) 2022-06-09

Family

ID=81655413

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102020132384.0A Pending DE102020132384A1 (en) 2020-12-07 2020-12-07 System, method and computer program product for configuring an optimized sensor set for a moving object

Country Status (1)

Country Link
DE (1) DE102020132384A1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6006604A (en) 1997-12-23 1999-12-28 Simmonds Precision Products, Inc. Probe placement using genetic algorithm analysis
US7895021B1 (en) 2006-06-13 2011-02-22 The United States Of America As Represented By The Secretary Of The Navy Method of sensor disposition
CN109917290A (en) 2019-02-13 2019-06-21 北京长城华冠汽车科技股份有限公司 A kind of temperature determining method and device of Vehicular dynamic battery group

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6006604A (en) 1997-12-23 1999-12-28 Simmonds Precision Products, Inc. Probe placement using genetic algorithm analysis
US7895021B1 (en) 2006-06-13 2011-02-22 The United States Of America As Represented By The Secretary Of The Navy Method of sensor disposition
CN109917290A (en) 2019-02-13 2019-06-21 北京长城华冠汽车科技股份有限公司 A kind of temperature determining method and device of Vehicular dynamic battery group

Similar Documents

Publication Publication Date Title
DE112009003656B4 (en) Method and system for in-production optimization of the parameters of a robot used for assembly
EP3785177B1 (en) Method and device for determining a network-configuration of a neural network
DE102018128289B4 (en) METHOD AND DEVICE FOR AUTONOMOUS SYSTEM PERFORMANCE AND CLASSIFICATION
DE202010017612U1 (en) Improved genetic algorithm with multiple targets for component design optimization
EP4193135A1 (en) Computer-implemented method for providing a test process for traffic scenarios to be tested
DE112020001774T5 (en) DATA SET-DEPENDENT LOW-RANKING DETACHMENT OF NEURAL NETWORKS
DE102018008685A1 (en) Method for training an artificial neural network, artificial neural network, use of an artificial neural network and corresponding computer program, machine-readable storage medium and corresponding device
DE102021109382A1 (en) SYSTEM AND PROCEDURE OF A MONOTON NEURAL OPERATOR NETWORK TECHNICAL FIELD
DE102019209616A1 (en) Carrying out a given task with the aid of at least one robot
DE102021124445A1 (en) META-FEATURE TRAINING MODELS FOR MACHINE LEARNING ALGORITHMS
DE102021104178A1 (en) DYNAMICALLY ROUTED FIELD DISCRIMINATOR
DE102020132384A1 (en) System, method and computer program product for configuring an optimized sensor set for a moving object
DE102023202593A1 (en) Method and system for recommending modules for an engineering project
DE102018129871A1 (en) Train a deep convolutional neural network to process sensor data for use in a driving support system
DE102020132383A1 (en) System, method and computer program product for optimizing a sensing function of a sensor set for a moving object
DE102018218611A1 (en) Method and computing device for generating a three-dimensional CAD model
DE102020126154A1 (en) CERTIFIED ROBUSTNESS AGAINST ADVERSARY ATTACKS FOR DEEP REINFORCING LEARNING
DE102020127051A1 (en) Method for determining safety-critical output values using a data analysis device for a technical entity
DE102019215256A1 (en) Method for generating a digital localization map for determining a location of an at least partially automated mobile platform
DE102013208643B4 (en) System, method and product for locating a vehicle key using neural networks
DE102021211185B4 (en) Device and method for controlling a robot
DE102022200718B3 (en) Method and device for processing object data and driver assistance system
DE102022212583A1 (en) Image quantization using machine learning
DE102023205473A1 (en) Improving the performance of neural networks under distribution shifting
DE102021110083A1 (en) Training an artificial neural network to test an automatic driving function of a vehicle

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication