-
Die vorliegende Erfindung betrifft ein Verfahren sowie eine Datenverarbeitungsvorrichtung zum Analysieren einer Sensorverbundkonfiguration eines zumindest teilautonomen Roboters. Zudem betrifft die Erfindung einen zumindest teilautonomen Roboter. Ferner betrifft die Erfindung ein Computerprogramm sowie ein maschinenlesbares Speichermedium.
-
Stand der Technik
-
In der Automatisierungstechnik, Robotik, Fahrzeugtechnik usw. gibt es Aufgaben, in denen beispielsweise ein Umfeld eines Roboters wahrgenommen bzw. erfasst wird, also eine Umfelderfassung, um den Roboter zumindest teilweise autonom durch das Umfeld steuern zu können. Hierfür werden häufig mehrere Erfassungseinrichtungen, wie etwa Sensoren usw., benötigt, die gemeinsam als Sensorverbund unter Fusionierung der jeweiligen Erfassungsdaten verwendet werden.
-
Für die Umfelderfassung können zahlreiche Umfeldwahrnehmungsaufgaben vorgegeben sein, die beispielsweise eine Ermittlung eines Abstands von oder zu Objekten, eine Ermittlung der Geschwindigkeiten von Objekten, eine Ermittlung geometrischer Größen von Objekten, eine Ermittlung eines Objekttyps, (z.B. Verkehrsschild, Lichtzeichenanlage, Fußgänger, Kraftfahrzeug, Fahrbahnbegrenzung usw.) usw. umfassen können. Zudem kann gefordert sein, dass die verschiedenen Umfeldwahrnehmungsaufgaben unter unterschiedlichen Umweltbedingungen und für verschiedenste Varianten von Objekttypen zuverlässig geleistet werden. Diese Umweltbedingungen können beeinflusst werden durch z.B. das Wetter im Umfeld, wie z.B. Sonne, Wolken, Regen, Schnee, die Lichtverhältnisse im Umfeld, wie etwa Tag, Nacht, Dämmerung usw., die Jahreszeit, wie z.B. Frühling, Sommer, Herbst, Winter usw. Die Varianten von Objekttypen können beispielsweise verschiedene Größen, Geometrien, Farben, Muster, Materialien, wie etwa Metall, Holz, Stoff, Wasser usw. und/oder Bewegungszustände, wie etwa stehend, langsam, schnell usw., oder ähnliches umfassen.
-
Neben den oben beschriebenen funktionalen Aspekten kann es auch Anforderungen an die E/E-Sicherheit geben, die auch vom Sensorverbund erfüllt werden müssen und die für einzelne Sensoren ggf. unabhängig von der jeweiligen Sensor-Performanz sein können. Für eine Analyse und Ableitung von Anforderungen zur Absicherung der E/E-Sicherheit sind ggf. zahlreiche Experimente und Test notwendig.
-
Für einen zumindest teilweise autonomen Roboter, können eine große Anzahl und Vielfalt von zu betrachtenden Use-Cases/Szenarien und daraus resultierende Anforderungen an die Umfeldwahrnehmung nur schwer zu überblicken sein, was eine Analyse einer gewählten Sensorverbundkonfiguration im Hinblick auf die Auslegungskriterien, wie die oben erwähnten funktionalen Aspekte und die E/E-Sicherheit, aber auch Kosten usw., schwierig gestaltet.
-
Offenbarung der Erfindung
-
Ausführungsformen der Erfindung stellen eine verbesserte Möglichkeit zur Analyse einer Sensorverbundkonfiguration eines zumindest teilweise autonomen Roboters zur Verfügung. Vorteilhafte Weiterbildungen der Erfindung ergeben sich aus den abhängigen Ansprüchen, der Beschreibung sowie den begleitenden Figuren.
-
Ein erster Aspekt der Erfindung stellt ein, insbesondere modellbasiertes, Verfahren zum Analysieren einer Sensorverbundkonfiguration eines zumindest teilautonomen Roboters zur Verfügung. Das Verfahren ist vorzugsweise computerimplementiert und sieht die folgenden Schritte vor:
-
Es wird eine Mehrzahl von Raumabschnitten bestimmt, die ein Umfeld des Roboters räumlich unterteilen. Die Raumabschnitte können auch als Field-of-View-Elements (FoVE) bezeichnet werden. In anderen Worten, wird der Raum um den Roboter herum in verschiedene Abschnitte zerlegt. Die Raumabschnitte können auch eine oder mehrere Eigenschaften erfüllen, beispielsweise dass eine Summe aller Raumabschnitte den Raum um den Roboter bis zu einer definierten Entfernung (z.B. 200m) vollständig abdeckt, jeder Raumabschnitt eineindeutig identifizierbar ist und/oder einen physikalischen Distanzbereich, beispielsweise auch in alle drei Raumrichtungen, relativ zum Roboter beschreibt usw.
-
Es wird wenigstens eine verfügbare Einzelkomponentenperformanz einer jeweiligen Einzelkomponente, z.B. eines Einzelsensors, eine digitalen (Straßen) Karte usw., der Sensorverbundkonfiguration bezogen auf die bestimmten Raumabschnitte bestimmt. In andere Worten, wird für jeden Raumabschnitt beschrieben, welche Einzelkomponentenperformanz die jeweilige Einzelkomponente leisten bzw. erfüllen kann. Es versteht sich, dass für einen einzigen Raumabschnitt auch eine Mehrzahl von Einzelkomponentenperformanzen gleichzeitig gegeben sein können.
-
Es wird wenigstens eine Sensorverbundanforderung bestimmt, die durch die aus den Einzelkomponenten gebildete Sensorverbundkonfiguration bezogen auf die bestimmten Raumabschnitte zu erfüllen ist. In anderen Worten, wird für jeden Raumabschnitt beschrieben, welche Anforderungen pro Roboter-Use-Case vom Sensorverbund zu leisten bzw. erfüllen sind.
-
Es wird, insbesondere modellbasiert, eine lineare Optimierungsaufgabe generiert, deren Parameter durch zumindest die bestimmten Raumabschnitte, die bestimmten Einzelkomponentenperformanzen und/oder die bestimmten Sensorverbundanforderungen gebildet werden.
-
Dann wird die generierte lineare Optimierungsaufgabe gelöst, wobei die Lösung der linearen Optimierungsaufgabe zumindest angibt, ob das Umfeld des Roboters durch die Sensorverbundkonfiguration gemäß Sensorverbundanforderung erfassbar ist.
-
Durch das vorgeschlagene Verfahren können nicht nur die räumlichen Abhängigkeiten verschiedener Use-Case-Anforderungen in diesem neuen Ansatz nicht nur wie in einem herkömmlichen Requirements-Engineering-Prozess textuell beschrieben und über verschiedene Anforderungsebenen bis zu der Einzelkomponente, z.B. dem Einzelsensor, abgeleitet werden, sondern es werden zusätzlich in einem formalen Modell Raumabschnitte um das Fahrzeug definiert, für die die vom Sensorverbund, also vorzugsweise nicht vom jeweiligen Einzelsensor, zu leistende Umfeldwahrnehmungsaufgabe in einer formalen Notation spezifiziert wird, ggf. inklusive einem Qualitätsanspruch und E/E-Sicherheitseigenschaften. Zusätzlich dazu, werden für jeden Einzelsensor, beispielsweise bereits entwicklungsbegleitend, die Umfeldwahrnehmungsfähigkeiten, Architektur-Abhängigkeiten, und E/E-Sicherheitseigenschaften in derselben formalen Notation beschrieben und zusammen mit den formalisierten Use-Case-Anforderungen in das der Optimierungsaufgabe zugrundeliegende Modell integriert. Das so erstellte Modell kann nun automatisiert auf verschiedene Eigenschaften geprüft werden, um potentielle Lücken in der Sensorverbundkonfiguration effizient identifizieren zu können, welche sich z.B. durch Änderungen am Sensorverbund oder neu hinzukommende Use-Cases ergeben können.
-
Aufgrund der speziellen Form der Notation bzw. Modellierung von Anforderungen und Eigenschaften in Form eines Optimierungsproblems, ist es nicht nur möglich zu prüfen, ob der aktuell untersuchte Sensorverbund die Anforderungen grundsätzlich erfüllt, sondern es können ggf. direkt Optimierungspotentiale aufgezeigt werden. Dies ermöglicht einen hohen Automatisierungsgrad in der Analyse, eine Möglichkeit durch Betrachtung und/oder Modellierung verschiedener Aspekte, z.B. funktional, E/E-Sicherheit, Common-Cause-Fehler usw., globale Konfigurationsoptimierungen über alle Use-Cases durchzuführen und einen reduzierten Aufwand in der Spezifikation durch eine besonders schlanke und dennoch präzise formale Notation.
-
In einer Weiterbildung kann die Lösung der linearen Optimierungsaufgabe ferner angeben, ob die jeweilige Einzelkomponente zum Erfüllen der Sensorverbundanforderung benötigt wird. In anderen Worten, können ein oder mehrere Einzelkomponenten, z.B. Einzelsensoren, die zur Erfüllung der Anforderungen nicht zwingend notwendig sind während und/oder nach dem Lösen des Optimierungsproblems entfernt werden. Dies ermöglicht reduzierte Bereitstellungskosten für die Sensorverbundkonfiguration, da funktional überflüssige Einzelkomponenten identifiziert und entfernt werden können.
-
Gemäß einer Weiterbildung kann die Lösung der linearen Optimierungsaufgabe ferner angeben, welcher oder welche der Einzelkomponenten der Sensorverbundkonfiguration zum Erfüllen der bestimmten Sensorverbundanforderung mindestens notwendig sind. Dies ermöglicht reduzierte Bereitstellungskosten für die Sensorverbundkonfiguration, da funktional überflüssige Einzelkomponenten identifiziert und entfernt werden können.
-
In einer Weiterbildung können zum Bestimmen der Einzelkomponentenperformanz eine oder mehrere Eigenschaften der Einzelkomponente, insbesondere durch eine modellbezogene, formale Notation, beschrieben werden, die ausgewählt werden aus:
- - wenigstens einer Umfeldwahrnehmungsfähigkeit der Einzelkomponente,
- - wenigstens einer funktionalen Schwäche der Einzelkomponente,
- - einer Erfüllbarkeit von Sicherheitsanforderungen durch die Einzelkomponente und
- - wenigstens einer Abhängigkeit von anderen Komponenten innerhalb der Sensorverbundkonfiguration und/oder von anderen Komponenten einer Architektur des Roboters.
-
In anderen Worten, kann für jeden Raumabschnitt pro Einzelkomponente beschrieben werden, welche Umfeldwahrnehmungsaufgaben die Einzelkomponente leisten kann, welche funktionalen Schwächen die Einzelkomponente hat, wie beispielsweise „reduzierte Performance bei Dunkelheit“, welche E/E-Sicherheitsanforderungen die Einzelkomponente erfüllt und/oder welche technischen und/oder funktionalen Abhängigkeiten die Einzelkomponente zu anderen Architekturelementen hat. Dadurch können dem der Optimierungsaufgabe zugrundeliegenden Modell detaillierte Angaben zur Einzelkomponentenperformanz zugeführt werden, wobei dies durch eine formale Notation erfolgen kann.
-
Gemäß einer Weiterbildung können zum Bestimmen der Sensorverbundanforderung eine oder mehrere Eigenschaften der Einzelkomponente beschrieben werden, die ausgewählt werden aus:
- - wenigstens einer zu leistenden Umfeldwahrnehmungsaufgabe,
- - wenigstens einer zu vermeidenden funktionalen Schwäche,
- - wenigstens einer zu erfüllenden Sicherheitsanforderung
- - wenigstens einer zu vermeidenden Abhängigkeit von anderen Komponenten innerhalb der Sensorverbundkonfiguration und/oder von anderen Komponenten einer Architektur des Roboters, und
- - wenigstens einem der jeweiligen Einzelkomponente zugeordneten Kostenfaktor.
-
In anderen Worten, kann für jeden Raumabschnitt, insbesondere pro Roboter Use-Case, vom Sensorverbund beschrieben werden, welche Umfeldwahrnehmungsaufgaben zu leisten sind, welche funktionale Schwächen zu vermeiden sind, welche E/E-Sicherheitsanforderungen zu erfüllen sind und/oder zu vermeidende technische und funktionale Abhängigkeiten bestehen. Dadurch können dem der Optimierungsaufgabe zugrundeliegenden Modell detaillierte Angaben zur Einzelkomponentenperformanz zugeführt werden, wobei dies durch eine formale Notation erfolgen kann.
-
In einer Weiterbildung können die Einzelkomponentenperformanz und/oder die Sensorverbundanforderung durch eine Anzahl von Ganzzahlen, also Integer, beschrieben werden. Dies stellt eine besonders einfache Notation dar, bei der das Schema definiert werden kann. Dabei können beispielsweise bestimmte Zahlenbereiche bestimmten Teilen des Modells, also z.B. Zahlenwerte von 0 bis 3 für Einzelkomponentenanforderungen bzw. -aufgaben und Zahlenwerte von 3 bis 6 für Sensorverbundanforderungen bzw. -aufgaben verwendet werden. Es können auch binäre Zahlenwerte verwendet werden, beispielsweise für funktionale Schwächen usw. Auch für E/E-Sicherheitsanforderungen können bestimmte Zahlenwerte verwendet werden usw. Dies ermöglicht eine präzise, aber dennoch einfach zu handhabende Modellierung der verschiedenen Modellgrößen, die der generierten Optimierungsaufgabe zugrunde liegen.
-
Gemäß einer Weiterbildung kann die lineare Optimierungsaufgabe als ganzzahliges lineares Programm, ILP, generiert werden. Dies ermöglicht eine präzise, aber dennoch einfach zu handhabende Modellierung beim Generieren der linearen Optimierungsaufgabe. Das ILP kann algorithmisch gelöst werden, beispielsweise durch heuristische Verfahren, Schnittebenenverfahren usw., wobei die Modellierung bzw. die dieser zugrundeliegende Notation vergleichsweise wenig Rechenaufwand erzeugt.
-
In einer Weiterbildung kann sich die generierte lineare Optimierungsaufgabe ergeben zu:
- Minimiere cT x,
- mit den folgenden Bedingungen:
und
wobei x ein Variablenvektor für eine Komponente der Sensorverbundkonfiguration, c ein Parametervektor mit z.B. Kosten der Einzelkomponente, A eine Matrix mit einer Modellierung der Einzelkomponentenperformanzen und b ein Vektor mit einer Modellierung der Sensorverbundanforderungen ist.
-
Gemäß einer Weiterbildung kann die Mehrzahl von Raumabschnitten um den Roboter herum so bestimmt werden, dass deren Summe einen Raum um den Roboter bis zu einer vorbestimmbaren Entfernung vollständig abdeckt. Dadurch kann die analysierte Sensorverbundkonfiguration eine möglichst vollständige und genaue Umfeldwahrnehmung bewerkstelligen.
-
In einer Weiterbildung kann die verfügbare Einzelkomponentenperformanz und/oder die erfüllende Sensorverbundanforderung für jeden einzelnen aus der Mehrzahl von Raumabschnitten bestimmt werden. Dadurch kann die analysierte Sensorverbundkonfiguration eine möglichst vollständige und genaue Umfeldwahrnehmung bewerkstelligen.
-
Gemäß einer Weiterbildung kann anhand der Lösung der linearen Optimierungsaufgabe die Sensorverbundkonfiguration angepasst und/oder verifiziert werden. Dies kann ggf. manuell erfolgen, indem Einzelsensoren, die als entbehrlich identifiziert wurden, aus einer entsprechenden Spezifikation herausgenommen werden. Vorzugsweise kann dies aber auch dadurch erfolgen, dass eine Datenverarbeitungsrichtung zumindest teilautomatisiert die Einzelsensoren, die gemäß der Lösung entweder als benötigt oder obsolet identifiziert worden sind, in eine Spezifikation aufnimmt oder aus einer solchen entfernt. Die Spezifikation kann ein, ggf. elektronisch geführtes, Lastenheft oder ähnliches sein.
-
Ein zweiter Aspekt der Erfindung stellt eine Datenverarbeitungsvorrichtung zur Verfügung, die dazu eingerichtet ist, das Verfahren gemäß dem ersten Aspekt in einer oder mehreren der vorstehend beschriebenen Ausführungsvarianten durchzuführen.
-
Ein dritter Aspekt der Erfindung stellt einen zumindest teilweise autonomem Roboter, mit einer Sensorverbundkonfiguration zur Verfügung, die durch das v Verfahren gemäß dem ersten Aspekt in einer oder mehreren der vorstehend beschriebenen Ausführungsvarianten analysiert und/oder konfiguriert ist, wobei der Roboter anhand von Erfassungsdaten, die die Sensorverbundkonfiguration bereitstellt, ansteuerbar ist. Der Roboter kann besonders kostengünstig bereitgestellt werden, da die Sensorverbundkonfiguration vorzugsweise nur diejenigen Einzelkomponenten umfasst, die für eine zuverlässige Umfeldwahrnehmung benötigt werden, während hierzu überflüssige Einzelkomponenten identifiziert und eingespart werden können.
-
Ein vierter Aspekt der Erfindung stellt ein Computerprogramm zur Verfügung, das wenn es beispielsweise von einem Prozessor einer Datenverarbeitungseinrichtung ausgeführt wird, dazu eingerichtet ist, ein Verfahren gemäß dem ersten Aspekt durchzuführen.
-
Das Computerprogramm kann beispielsweise in einem Arbeitsspeicher einer Datenverarbeitungseinrichtung, wie etwa eines Datenprozessors geladen und/oder gespeichert sein, wobei die Datenverarbeitungseinrichtung auch Teil einer Ausführungsform der vorliegenden Erfindung sein kann. Diese Datenverarbeitungseinrichtung kann dazu eingerichtet sein, Verfahrensschritte des oben beschriebenen Verfahrens durchzuführen. Die Datenverarbeitungseinrichtung kann ferner dazu eingerichtet sein, das Computerprogramm bzw. das Verfahren automatisch auszuführen und/oder Eingaben eines Benutzers auszuführen. Das Computerprogramm kann auch über ein Datennetzwerk, wie etwa das Internet, bereitgestellt und von einem solchen Datennetzwerk aus in den Arbeitsspeicher der Datenverarbeitungseinrichtung heruntergeladen werden. Das Computerprogramm kann auch eine Aktualisierung eines bereits vorhandenen Computerprogramms umfassen, wodurch das vorhandene Computerprogramm beispielsweise zum Ausführen des oben beschriebenen Verfahrens befähigt werden kann.
-
Ein fünfter Aspekt der Erfindung stellt ein computerlesbares Speichermedium zur Verfügung. Das computerlesbare Speichermedium kann insbesondere ein Computerprogramm gemäß dem vierten Aspekt umfassen.
-
Das computerlesbare Speichermedium kann insbesondere, aber nicht notwendigerweise, ein nichtflüchtiges Medium sein, das sich insbesondere zum Speichern und/oder Verteilen eines Computerprogramms eignet. Das computerlesbare Speichermedium kann eine CD-ROM, eine DVD-ROM, ein optisches Speichermedium, ein Festkörpermedium oder ähnliches sein, das zusammen mit oder als Teil anderer Hardware geliefert wird. Zusätzlich oder alternativ dazu, kann das computerlesbare Speichermedium auch in anderer Form verteilt bzw. vertrieben werden, beispielsweise über ein Datennetzwerk, wie etwa das Internet oder andere drahtgebundene oder drahtlose Telekommunikationssysteme. Hierzu kann das computerlesbare Speichermedium beispielsweise als ein oder mehrere Datenpakete ausgeführt sein.
-
Weitere, die Erfindung verbessernde Maßnahmen werden nachstehend gemeinsam mit der Beschreibung der bevorzugten Ausführungsbeispiele der Erfindung anhand von Figuren näher dargestellt.
-
Figurenliste
-
Im Folgenden werden vorteilhafte Ausführungsbeispiele der Erfindung mit Bezug auf die begleitenden Figuren detailliert beschrieben. Es zeigen:
- 1 einen Roboter, der hier exemplarisch als Fahrzeug ausgebildet ist, mit einer Sensorverbundkonfiguration, die eine Mehrzahl von Sensoren als Einzelkomponenten umfasst,
- 2 eine schematische Draufsicht eines Ansatzes zum Analysieren einer Sensorverbundkonfiguration eines zumindest teilautonomen Roboters, dessen Umfeld in eine Mehrzahl von Raumabschnitten unterteilt ist, wobei Überdeckungsbereiche verschiedener Einzelkomponenten bzw. Einzelsensoren einer Sensorverbundkonfiguration angedeutet sind,
- 3 ein Mapping von Sensorverbundanforderungen auf spezifische Raumabschnitte, die ein Umfeld eines Roboters unterteilen, und
- 4 einen Ausschnitt einer Modellierungsmaske, in der ganzzahlige Werte eine Sensorverbundanforderung und eine Einzelkomponentenperformanz bezogen auf jeweilige, ein Umfeld eines Roboters unterteilende Raumabschnitte angeben.
-
Die Figuren sind lediglich schematisch und nicht maßstabsgetreu. In den Figuren sind gleiche, gleichwirkende oder ähnliche Elemente durchgängig mit gleichen Bezugszeichen versehen.
-
Ausführungsformen der Erfindung
-
1 zeigt einen wenigstens teilautonomen Roboter 100, der hier lediglich exemplarisch als Fahrzeug ausgebildet ist und im Folgenden als solches bezeichnet wird. Bei dem Fahrzeug 100 handelt es sich hier exemplarisch um ein zumindest teilweise automatisiert fahrendes, insbesondere aber ein hoch- oder vollautomatisiertes, Kraftfahrzeug. Dementsprechend verfügt das Fahrzeug 100 über (nicht näher bezeichnete) Aktuatoren und einen Fahrzeugantrieb, die zur automatisierten Fahrsteuerung, beispielsweise zum Beschleunigen, Bremsen, Lenken usw., des Fahrzeugs 100 elektronisch angesteuert werden können. Alternativ dazu, kann es sich bei dem wenigstens teilautonomen Roboter auch um einen anderen mobilen Roboter (nicht abgebildet) handeln, beispielsweise um einen solchen, der sich durch Fliegen, Schwimmen, Tauchen oder Schreiten fortbewegt. Bei dem mobilen Roboter kann es sich beispielsweise auch um einen wenigstens teilautonomen Rasenmäher oder einen wenigstens teilautonomen Putzroboter handeln. Auch in diesen Fällen können ein oder mehrere Aktuatoren, z.B. ein Antrieb und/oder eine Lenkung des mobilen Roboters derart elektronisch angesteuert werden, dass sich der Roboter wenigstens teilautonom bewegt.
-
Das Fahrzeug 100 verfügt zudem über einen Sensorverbund bzw. eine Sensorverbundkonfiguration, die als jeweilige Einzelkomponenten eine Mehrzahl von Einzelsensoren 110 umfasst, wie etwa optische Sensoren, insbesondere Kameras, Ultraschall- bzw. Radar-Sensoren, LIDAR-Sensoren usw., die zum Überwachen/Erfassen eines Fahrzeugumfeld des Fahrzeugs 100 eingerichtet sind. Erfassungsdaten der Sensoren 110 werden beispielsweise einer (nicht gezeigten) Datenverarbeitungseinrichtung des Fahrzeugs 100 zur Verfügung gestellt, die dazu eingerichtet ist, anhand der Erfassungsdaten eine Fahrstrategie zu planen und die Fahrzeugaktuatoren und/oder den Fahrantrieb entsprechend anzusteuern. Zusätzlich umfasst die Sensorverbundkonfiguration gemäß einigen Ausführungsformen auch digitale Karten, Navigationsdaten eines Satellitennavigationssystems, über Kommunikationsschnittstellen bereitgestellte Wetterdaten usw., die als Teil der Sensorverbundkonfiguration zugeordnet werden können.
-
Der Sensorverbund muss in dem Fahrzeug 100 eine Vielzahl von Anforderungen erfüllen und unterliegt verschiedenen Randbedingungen und Abhängigkeiten, z.B. Anforderungen an die E/E Sicherheit basierend auf Sicherheitsstandards (z.B. ISO 26262) usw. Beispielhafte Anforderungen können beispielsweise in Textform lauten: „Vermeide Fehler die dazu führen, dass ...“, „Erkenne Fehler in...“ usw. Davon ausgehend ist zu bestimmen, ob die Summe der Anforderungen und Randbedingungen durch die Mehrzahl von Einzelsensoren 110 des Sensorverbunds, die beispielsweise 2-stellige Anzahl, also 10, 11, 12, ..., 15, ..., 20 oder mehr, Einzelsensoren 110 aufweisen kann, die sich auch in etwa 2, 3 oder mehr verschiedene Sensortypen mit unterschiedlichen Eigenschaften und Abdeckungsbereichen unterteilen kann, im Sensorverbund erfüllt wird. Hierzu sind herkömmlicherweise aufwendige Analysen über verschiedene Domänen, wie etwa funktionale Themen, E/E Architektur, Sicherheitsfragen, notwendig. Selbst wenn bei einer solche domänenübergreifenden Analyse gezeigt werden kann, dass alle Anforderungen und Randbedingungen durch die gewählte Sensorverbundkonfiguration erfüllt sind, kann das Analyseergebnis mit der nächsten Änderung der Anforderungen, dem Sensorverbund oder der E/E-Architektur des Fahrzeugs 100 potentiell seine Gültigkeit verlieren.
-
Um das Problem der hohen Komplexität und vielen Abhängigkeiten im Rahmen der Entwicklung des Fahrzeugs 100 bzw. seiner Sensorkonfiguration beherrschbar zu machen, ist im Folgenden ein Ansatz beschrieben, der es ermöglicht, auf einer abstrahierten System-Ebene die verschiedenen Aspekte in einem gemeinsamen Modell abzubilden.
-
2 zeigt eine schematische, zweidimensionale Draufsicht eines modellbasierten Ansatzes zum Analysieren der Sensorverbundkonfiguration des Fahrzeugs 100. Das Umfeld des Fahrzeugs 100 ist in eine Mehrzahl von Raumabschnitten FoVE unterteilt, die auch als Field-of-View-Elements bezeichnet werden können. In diesem Ausführungsbeispiel ist das Fahrzeug 100 in der unteren linken Ecke von 2 angeordnet ist und bildet dort einen Ursprung eines kartesischen Koordinatensystems x-y-z mit zumindest einer x-Achse, die eine Entfernung in m (Metern) relativ zu dem Fahrzeug 100 angibt, und zumindest einer y-Achse, die eine Entfernung in m (Metern) relativ zu dem Fahrzeug 100 angibt.
-
Gemäß dem modellbasierten Ansatz wird der Raum um das Fahrzeug 100 in die verschiedenen Abschnitte, nämlich die Raumabschnitte FoVE, zerlegt, welche folgende Eigenschaften erfüllen:
- a. Die Summe aller Raumabschnitte FoVE deckt den Raum um das Fahrzeug 100 bis zu einer definierten Entfernung (z.B. 200m wie in 2) vollständig ab und
- b. jeder Raumabschnitt FoVE ist eineindeutig identifizierbar und beschreibt einen physikalischen Distanzbereich (in alle drei Raumrichtungen x, y, z) relativ zum Fahrzeug 100.
-
Gemäß dem modellbasierten Ansatz wird zudem für jeden Raumabschnitt FoVE wird pro Einzelsensor 110 der Sensorverbundkonfiguration beschrieben, welche
- i. Umfeldwahrnehmungsfähigkeit der Einzelsensor 110 hat,
- ii. funktionalen Schwächen der Einzelsensor 110 ggf. hat (z.B. „reduzierte Performanz bei Dunkelheit“),
- iii. E/E Sicherheitsanforderungen der Einzelsensor 110 erfüllt und
- iv. technischen & funktionalen Abhängigkeiten der Einzelsensor 110 zu anderen Architekturelementen der Sensorverbundkonfiguration und/oder des Fahrzeugs 100 hat.
-
Diese Beschreibung für jeden Raumabschnitt FoVE pro Einzelsensor 110 der Sensorverbundkonfiguration gibt eine verfügbare Einzelkomponentenperformanz der jeweiligen Einzelkomponente 110 der Sensorverbundkonfiguration bezogen auf die bestimmten Raumabschnitte FoVE an.
-
Gemäß dem modellbasierten Ansatz werden zudem für jeden Raumabschnitt FoVE die vom Sensorverbund pro Fahrzeug Use-Case
- i. zu leistenden Umfeldwahrnehmungsaufgaben,
- ii. zu vermeidenden funktionalen Schwächen,
- iii. zu erfüllenden E/E Sicherheitsanforderungen und
- iv. zu vermeidenden technischen und/oder funktionalen Abhängigkeiten.
-
Diese Beschreibung für jeden Raumabschnitt FoVE gibt eine Sensorverbundanforderung an, die durch die aus den Einzelkomponenten 110 gebildete Sensorverbundkonfiguration bezogen auf die bestimmten Raumabschnitte FoVE zu erfüllen ist.
-
Hiervon ausgehend, werden in dem modellbasierten Ansatz diskrete Zahlenwerte verwendet, um die jeweils verfügbare Einzelkomponentenperformanz und/oder die jeweilige Sensorverbundanforderung zu spezifizieren. Eine beispielhafte Notation durch Zahlenwerte hinsichtlich der Sensorverbundanforderung kann hierbei sein:
- i. Umfeldwahrnehmungsaufgaben werden in sogenannten „Quality Classes“ mit den Zahlenwerten 0 bis 3 (für Einzelsensorleistungen) und 3 bis 6 (für den Sensorverbund) beschrieben.
- ii. Bekannte funktionale Schwächen werden mit binären 0 oder 1 Zahlenwerten modelliert. Beispielsweise wird folgendermaßen modelliert: Bei Nichtvorhandensein einer bestimmten Schwäche - z.B. „Sensor ist robust gegen Dunkelheit.“ - wird dies mit einer 1 beschrieben, wohingegen bei einer vorhandenen Schwäche - z.B. „Sensor ist nicht robust gegen Dunkelheit.“ - dies mit einer 0 beschrieben wird.
- iii. E/E-Sicherheitsanforderungen (in der Fahrzeugtechnik beispielsweise beschrieben durch Automotive Safety Integrity Levels, ASILs, gemäß ISO 26262) werden mit folgenden Zahlenwerte im Modell beschrieben mit z.B. QM = 0; ASIL-A = 1, ASIL-B = 2 ; ASIL-C = 3; ASIL-D = 4.
- iv. Technische und funktionale Abhängigkeiten zu anderen Architekturelementen werden mit binären 0 oder 1 Zahlenwerte modelliert. Beispielsweise wird folgendermaßen modelliert: Gibt es keine Abhängigkeit - z.B. „Sensor ist unabhängig von Scheibenwischer.“ - wird dies mit dem Zahlenwert 1 beschrieben, wohingegen bei einer Abhängigkeit - z.B. „Sensor ist abhängig von Scheibenwischer.“ - dies mit dem Zahlenwert 0 beschrieben wird.
-
Im Modell werden die Zahlenwerte der jeweiligen Einzelsensoren 110 linear aufaddiert.
-
Dies ist passend und zulässig, da Quality-Class Werte (relative) 10er Potenzen an Restfehlerrate in der Erkennungsgüte repräsentieren. Beispielsweise gilt QC=1 für eine Restfehlerrate von 10^-1, QC=2 für eine Restfehlerrate von 10^-2 und QC=3 für eine Restfehlerrate von 10^-3. Damit wird aus der eigentlich benötigten Multiplikation von Fehlerraten in linearer Repräsentation eine (Exponenten-)Addition in einer logarithmischen Repräsentation. Die erlaubte Restfehlerrate pro QC kann dabei einfach über die Wahl einer geeigneten Exponenten-Basis (also anstatt 10 geht auch 50 oder 100) beliebig skaliert werden. Zudem kann es für den Sensorverbund des Fahrzeugs 100 entscheidend sein, ob eine funktionale Schwäche eines Einzelsensors 110 auf Ebene des Sensorverbunds (ggf. inklusive möglicher Fusionsalgorithmen) spürbar wird oder nicht. Daher können hier Anforderungen verwendet werden, die beispielsweise fordern, dass mindestens X aus N Sensoren robust gegenüber einer bestimmten Schwäche sind. Zudem entspricht die lineare Repräsentation in diesem Ausführungsbeispiel exakt dem Dekompositionsschema aus der ISO 26262-Sicherheitsnorm. Zudem kann für die korrekte Funktionsweise des Sensorverbund des Fahrzeugs 1100 wichtig sein, dass auch im Falle eines Hardware-Ausfalles die Fehlerfolgen nicht dazu führen, dass Umfeldinformationen fehlen, die zur sicheren Steuerung des Fahrzeugs 100 notwendig sind. Daher können hier Anforderungen verwendet werden, die beispielsweise fordern, dass mindestens X aus N Sensoren robust gegenüber bestimmten Hardware-Ausfällen und deren Folgen sind.
-
Nachfolgend ist ein Beispiel beschrieben, das exemplarisch zeigt, wie die Einzelkomponentenperformanz bzw. Einzelsensorperformanz und die Sensorverbundanforderung bzw. Use-Case-Anforderungen modelliert und in das Modell als Ganzzahlen integriert werden können.
-
In diesem Beispiel wird die Einzelkomponentenperformanz bzw. Einzelsensorperformanz modelliert, wobei exemplarisch ein Video-Kamera-Sensor (je nach Auflösung) ein „Durchfahrt verboten“-Schild aus großer Distanz (z.B. 400m) noch nicht eindeutig als solches erkennen, da nur sehr wenige Pixel das Schild erfassen. Dementsprechend wird im Modell eingetragen, dass für die „Erkennung eines Durchfahrt verboten‘-Schilds“ für die Raumabschnitte FoVE, die 200-400m Entfernung vom Fahrzeug 100 entsprechen, 0 gilt. In mittlerer Distanz (z.B. 200m) wird das Schild schon besser erkennbar und die Erkennungsrate steigt, ist aber nicht immer stabil. Dementsprechend wird Modell wird eingetragen, dass für die „Erkennung eines Durchfahrt verboten‘-Schilds“ für die Raumabschnitte FoVE, die 200-400m Entfernung vom Fahrzeug 100 entsprechen, 1 gilt. In kürzerer Distanz (z.B. 100m) lassen sich schon ausreichend viele Strukturen erkennen um das Durchfahrt verboten‘-Schild deutlich erkennen und korrekt interpretieren zu können. Dementsprechend wird im Modell eingetragen, dass für die „Erkennung eines Durchfahrt verboten‘-Schilds“ für die Raumabschnitte FoVE, die 000-100m Entfernung vom Fahrzeug 100 entsprechen, 2 gilt.
-
Demnach ist die Umfeldwahrnehmungsaufgabe stets dieselbe, variiert jedoch über die Distanz mit der Güte/Erkennungsrate. Dieser Zusammenhang wird im Modell entsprechend über die unterschiedlichen Quality-Class Werte 0/1/2/... für die verschiedenen Distanz-Bereiche repräsentiert.
-
Ferner werden in diesem Beispiel die Sensorverbundanforderung bzw. Use-Case-Anforderungen modelliert, wobei exemplarisch für die Anforderung „Erkenne ein Durchfahrt verboten‘-Schild in Fahrtrichtung bis zu mindestens 200m longitudinalem Abstand relativ zum Ego-Fahrzeug.“ (also hier dem Fahrzeug 100) im Modell wird eingetragen wird, dass für die „Erkennung eines ,Durchfahrt verboten‘ Schilds“ für die Raumabschnitte FoVE, die 200-400m Entfernung vom Fahrzeug 100 entsprechen, 2 gilt. Dieser Bereich ist in 3 durch eine entsprechende Schraffur gekennzeichnet. Für die Anforderung „Erkenne ein Durchfahrt verboten‘-Schild in Fahrtrichtung bis zu mindestens 100m longitudinalem Abstand relativ zum Ego-Fahrzeug“ (also hier dem Fahrzeug 100) wird im Modell eingetragen, dass für die Raumabschnitte FoVE, die 000-100m Entfernung vom Fahrzeug 100 entsprechen, 4 gilt.. Dieser Bereich ist in 3 durch eine entsprechende Schraffur gekennzeichnet.
-
3 zeigt in einer schematischen Darstellung ein Mapping dieser Sensorverbundanforderungen bzw. Use-Case-Anforderungen auf die Raumabschnitte FoVE. Es ist erkennbar, dass die Anforderungen über die Distanz in x und y-Richtung (im Beispiel gemäß 3 ist vereinfachend nur die y-Richtung betrachtet) variieren. Die angeforderte Güte übersteigen dabei die Sensor-Performanz des Einzelsensors 110, daher ist es notwendig über zusätzliche Sensoren/Kartendaten/etc. die Güte der Umfelderkennungsaufgabe „Erkennung eines Durchfahrt verboten‘-Schilds“ in den Bereichen zu steigern. Dafür werden beispielsweise zusätzliche Sensoren/Kartendaten/etc. analog zum im Beispiel dargestellten Video-Sensor modelliert und in das Modell integriert. Nun kann über eine Addition der Güte-Zahlen festgestellt werden, ob die angeforderte Güte erreicht werden kann oder nicht.
-
4 zeigt einen beispielhaften Ausschnitt einer Modellierungsmaske, in der die ganzzahligen Werte für die Sensorverbundanforderung und die Einzelkomponentenperformanz bezogen auf die jeweiligen Raumabschnitte FoVE angegeben sind. In der Spalte „SUM-PRODUCT“ (siehe rechte Seite der 4), sind die funktionalen Möglichkeiten (z.B. für erkenne „Do not pass“ sign“) in Kombination mit der tatsächlichen Abdeckung eines Raumabschnitt-Bereichs durch einen Sensor verrechnet. Z.B. kann die mit StereoCam bezeichnete (Stereo) Kamera funktional die Möglichkeit haben, ein Schild „Do not Pass signs“ in Entfernungen bis 200m mit QC-1 zu erkennen. Durch eine ungünstige Verbauposition, Blickrichtung usw., deckt die mit StereoCam bezeichnete Kamera mit ihrem Sichtkegel den Bereich jedoch nicht vollständig ab, was in diesem Ausführungsbeispiel in der Zeile „FoVE coverage“ modelliert ist, so dass der Beitrag der mit StereoCam bezeichneten Kamera nicht verlässlich ist und der Bereich entweder feingranularer unterteilt werden könnte (z.B. in 100-175m + 175-200m), oder im Modell eben angenommen wird, dass die mit StereoCam bezeichnete Kamera im Raumabschnitt FoVE 100-200m keinen verlässlichen Beitrag liefert. Im Raumabschnitt-Bereich von 100-200m wird für die ,„Do not pass“ sign‘-Erkennung durch zusätzliche Beträge weiterer Sensoren die geforderte funktionale Güte von mind. QC-2 erreicht, welche im Modell in Spalte „constraint operator“ (siehe rechte Seite der 4) in Form einer „größer gleich“-Bedingung formuliert ist.
-
Das gewählte Modellierungsformat repräsentiert nun eine lineare Optimierungsaufgabe als ganzzahliges lineares Programm, ILP, welches mit bewährten Lösungsverfahren effizient und global optimal gelöst werden kann. Eine allgemeine Form des Modells und Bedeutungen der ILP-Elemente für die Modellierung des Sensorverbunds sind hier:
- Minimiere cT x,
- mit den folgenden Bedingungen:
und
wobei x ein Variablenvektor für eine Komponente der Sensorverbundkonfiguration, c ein Parametervektor für Kosten der jeweiligen Einzelkomponente, A eine Matrix mit einer Modellierung der Einzelkomponentenperformanzen und b ein Vektor mit einer Modellierung der Sensorverbundanforderungen ist.
-
Im Lösungsschritt wird das Modell somit darauf geprüft, welche der modellierten Einzelkomponenten 110 notwendig sind, um alle formulierten Anforderungen erfüllen zu können. Falls es keine Lösung gibt, wird dies erkannt und „Problem unlösbar“ inklusive der verletzten Bedingungen zurückgegeben. Daraus kann abgeleitet werden, dass noch System-Schwächen vorhanden sind, die ggf. weiter zu analysieren sind und ggf. Änderungen am Sensorverbund erforderlich machen können. Gibt es eine Lösung, wird in der Zeile „Solution“ über 1 oder 0 entsprechend angezeigt, welche der verfügbaren Einzelkomponenten 110 für eine Lösung mindestens notwendig sind. Zudem werden damit erste Indikatoren erhalten, an welcher Stelle der Sensorverbund ggf. noch überdimensioniert ist und bei Bedarf evtl. reduziert werden könnte. Die optimierungsfreundliche Struktur des Modells kann zudem ausgenutzt werden, um zu Entwicklungsbeginn des Fahrzeugs 100 ein bewusst überdimensioniertes System aus zu vielen Sensorverbund-Einzelkomponenten 110 inklusive variierender und ggf. sogar überschneidender Verbaupositionen als Lösungsraum anzubieten. Der Lösungsalgorithmus generiert dann automatisch Lösungsvorschläge die den modellierten Anforderungen entsprechen. Anhand der Lösungsvorschläge kann die Sensorverbundkonfiguration dann manuell oder, vorzugsweise, automatisiert angepasst werden, was sich zum Beispiel in einer fahrzeugbezogenen Spezifikation der zu verwendenden Einzelkomponenten 110 niederschlagen kann.
-
Über die Vergabe von realen oder virtuellen Komponenten-Kosten können zudem nicht-technische Aspekte bei der Lösungsfindung berücksichtig werden. Z.B. kann ein kombinierter Wert aus Komponenten-Kosten (in z.B. Euro) und virtuellen „lntegrations“-Kosten (z.B. niedrig bei einer vergleichsweise einfach in das Fahrzeug 100 zu integrierenden Einzelsensoren 110, die z.B. wenig Bauraum benötigen und wenig Abwärme erzeugen bzw. hoch bei vergleichsweise schwierig zu integrierenden Einzelsensoren 110) genutzt werden, um auch aus OEM/Kundensicht optimale Lösungen generieren zu können, die aber in jedem Fall auch immer den technischen Anforderungen genügen.