DE102017208143A1 - Verfahren zur rechnergestützten Benutzerassistenz bei der Erstellung eines Programms zur Analyse von Daten zumindest eines technischen Systems - Google Patents

Verfahren zur rechnergestützten Benutzerassistenz bei der Erstellung eines Programms zur Analyse von Daten zumindest eines technischen Systems Download PDF

Info

Publication number
DE102017208143A1
DE102017208143A1 DE102017208143.0A DE102017208143A DE102017208143A1 DE 102017208143 A1 DE102017208143 A1 DE 102017208143A1 DE 102017208143 A DE102017208143 A DE 102017208143A DE 102017208143 A1 DE102017208143 A1 DE 102017208143A1
Authority
DE
Germany
Prior art keywords
program
data
user
user interface
blocks
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.)
Withdrawn
Application number
DE102017208143.0A
Other languages
English (en)
Inventor
Sebastian-Philipp Brandt
Jan-Gregor Fischer
Michael Watzke
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.)
Siemens AG
Original Assignee
Siemens 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 Siemens AG filed Critical Siemens AG
Priority to DE102017208143.0A priority Critical patent/DE102017208143A1/de
Publication of DE102017208143A1 publication Critical patent/DE102017208143A1/de
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • G06F9/453Help systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs

Abstract

Die Erfindung betrifft ein Verfahren zur rechnergestützten Benutzerassistenz bei der Erstellung eines Programms zur Analyse von Daten zumindest eines technischen Systems. Für die Erstellung des Programms ist eine Vielzahl von Programmbausteinen (B, B1, ..., B4) verfügbar, wobei jeder Programmbaustein (B, B1, ..., B4) Datenkanäle umfassend eine Dateneingabe (IN) und eine Datenausgabe (OU) sowie eine Datenverarbeitungsfunktion (MA) zur Erzeugung der Datenausgabe (OU) aus der Dateneingabe (IN) spezifiziert. Im Rahmen des erfindungsgemäßen Verfahrens kann ein Benutzer über eine Benutzerschnittstelle (UI) neue Programmbausteine zu bereits vorhandenen Programmbausteinen (B, B1, ..., B4) des erstellenden Programms hinzufügen. Erfindungswesentlich ist dabei, dass jeder Programmbaustein (B, B1, ..., B4) zur Beschreibung seiner Dateneingabe (IN), Datenausgabe (OU) und Datenverarbeitungsfunktion (AM) mit semantischen Informationen (MI, MO, AM) aus einer Ontologie (ON) annotiert ist. Hierdurch wird die Durchführung einer Zulässigkeitsprüfung (ZP) mittels Inferenz (RE) basierend auf den semantischen Informationen (MI, MO, AM) aus der Ontologie (ON) ermöglicht. Mit anderen Worten kann über rechnergestütztes Schlussfolgern basierend auf den semantischen Informationen bestimmt werden, ob ein Programmbaustein (B, B1, ..., B4) bei seinem Hinzufügen weiterhin zu einer korrekten Ausführung des Programms führt. Das erfindungsgemäße Verfahren weist den Vorteil auf, dass ein Benutzer effizient bei der Erstellung von Programmen zu Datenanalyse von technischen Systemen, wie z.B. von Energieerzeugungsanlagen, Schienenfahrzeugen und medizinischen Geräten, unterstützt wird.

Description

  • Die Erfindung betrifft ein Verfahren und eine Vorrichtung zur rechnergestützten Benutzerassistenz bei der Erstellung eines Programms zur Analyse von Daten zumindest eines technischen Systems. Darüber hinaus betrifft die Erfindung ein entsprechendes Computerprogrammprodukt und Computerprogramm.
  • Zur Auswertung von Daten technischer Systeme sind Workflowbasierte Analysetools bekannt, wie z.B. Knime, Talend, Matlab und dergleichen. Diese Tools ermöglichen das Zusammensetzen von Programmbausteinen über eine Benutzerschnittstelle mit visueller Anzeige, um hierdurch ein Programm zur Datenanalyse zu erstellen. Dabei wird eine rudimentäre Unterstützung des Benutzers dahingehend gewährleistet, dass basierend auf groben syntaktischen Kriterien die Zulässigkeit der Verbindung von benachbarten Programmbausteinen eines Workflows überprüft wird. Oftmals werden dabei grundlegende syntaktische Fehler bei der Zusammensetzung der Programmbausteine nicht erkannt. Diese Fehler kommen in der Regel erst bei der Kompilierung des erstellten Programms zum Vorschein.
  • Aufgabe der Erfindung ist es, ein Verfahren zur rechnergestützten Benutzerassistenz bei der Erstellung eines Programms zur Analyse von Daten zumindest eines technischen Systems zu schaffen, mit dem die Zuverlässigkeit der Erkennung von syntaktischen Fehlern bei der Programmerstellung verbessert wird.
  • Diese Aufgabe wird durch die unabhängigen Patentansprüche gelöst. Weiterbildungen der Erfindung sind in den abhängigen Ansprüchen definiert.
  • Das erfindungsgemäße Verfahren dient zur rechnergestützten Benutzerassistenz bei der Erstellung eines Programms zur Analyse von Daten zumindest eines technischen Systems. Für die Erstellung des Programms ist eine Vielzahl von Programmbausteinen verfügbar, wobei jeder Programmbaustein Datenkanäle umfassend eine Dateneingabe und eine Datenausgabe sowie eine Datenverarbeitungsfunktion zur Erzeugung der Datenausgabe aus der Dateneingabe spezifiziert.
  • Im Rahmen des erfindungsgemäßen Verfahrens wird eine Benutzerschnittstelle umfassend eine visuelle Anzeige bereitgestellt, wobei ein Benutzer über die Benutzerschnittstelle unter Verwendung der visuellen Anzeige neue Programmbausteine zu einer Anzahl von bereits vorhandenen Programmbausteinen des zu erstellenden Programms hinzufügen kann. Der Vorgang des Hinzufügens läuft dabei derart ab, dass der Benutzer Programmbausteine aus der Vielzahl von Programmbausteinen auswählt und einen jeweiligen ausgewählten Programmbaustein mit einem oder mehreren bereits vorhandenen Programmbausteinen über die Kopplung von Datenkanälen zwischen dem jeweiligen ausgewählten Programmbaustein und zumindest einem bereits vorhandenen Programmbaustein verbindet. Hierzu verwendet der Benutzer vorzugsweise einen Cursor auf der visuellen Anzeige, den er beispielsweise mittels einer Computermaus bewegen kann.
  • Im Gegensatz zu herkömmlichen Verfahren zur Programmerstellung ist jeder Programmbaustein zur Beschreibung seiner Dateneingabe, Datenausgabe und Datenverarbeitungsfunktion mit semantischen Informationen aus einer Ontologie annotiert. Mit anderen Worten werden die semantischen Informationen in digitaler Form über eine Ontologie repräsentiert, d.h. es wird ein in einem logikbasierten Wissensrepräsentationsformalismus ausgedrücktes Modell zur Beschreibung der semantischen Informationen bereitgestellt. In einer bevorzugten Ausführungsform beruht die Ontologie auf einer OWL-Ontologiesprache (OWL = Web Ontology Language).
  • Erfindungsgemäß wird mit Hilfe der digitalen semantischen Informationen eine Zulässigkeitsprüfung durchgeführt, mittels welcher geprüft wird, ob das Hinzufügen eines Programmbausteins zu der Anzahl von bereits vorhandenen Programmbausteinen durch einen Benutzer zulässig ist, um eine korrekte Ausführung des Programms zu gewährleisten. Mit anderen Worten ist ein Hinzufügen nur dann zulässig, wenn hierdurch die korrekte Ausführung des Programms weiterhin gewährleistet ist. Hier und im Folgenden ist der Begriff der Zulässigkeit immer dahingehend zu verstehen, dass eine zulässige Hinzufügung eines Programmbausteins gewährleistet, dass das Programm mit dem hinzugefügten Programmbaustein weiterhin ausgeführt werden kann und nicht zu Programmfehlern bzw. einem Programmabbruch führt. Im Rahmen der Zulässigkeitsprüfung wird eine Inferenz, d.h. ein rechnergestütztes Schlussfolgern, basierend auf den digitalen semantischen Informationen aus der Ontologie durchgeführt. Das Ergebnis der Zulässigkeitsprüfung wird über die Benutzerschnittstelle ausgegeben, z.B. kann graphisch angezeigt werden, welche Verbindung zwischen Programmbausteinen nicht zulässig ist. Üblicherweise wird für den Begriff der Inferenz auch der Ausdruck „Reasoning“ verwendet. Zur Durchführung der Inferenz wird ein Programm in der Form eines Reasoners eingesetzt.
  • Das erfindungsgemäße Verfahren zeichnet sich dadurch aus, dass mittels geeigneter semantischer Annotation basierend auf einer Ontologie eine umfassende und zuverlässige Zulässigkeitsprüfung für hinzugefügte Programmbausteine durchgeführt werden kann. Auf diese Weise können schnell Fehler bei der Programmerstellung erkannt werden und der Benutzer kann das Programm entsprechend anpassen.
  • In einer bevorzugten Ausführungsform ist über die Benutzerschnittstelle ferner zumindest ein Teil der hinzugefügten Programmbausteine durch den Benutzer konfigurierbar. Ein Benutzer kann durch Konfiguration z.B. Parameter der Datenverarbeitungsfunktion näher festlegen. Die entsprechende Konfiguration des Programmbausteins durch den Benutzer wird bei der Zulässigkeitsprüfung sowie auch bei den weiter unten beschriebenen Funktionalitäten (semantische Suchfunktion, Hilfefunktion, Vorschlagsfunktion, Planungsfunktion) berücksichtigt.
  • In einer weiteren bevorzugten Ausführungsform wird als Benutzerschnittstelle eine graphische Benutzerschnittstelle bereitgestellt, über welche Programmbausteine und Verbindungen zwischen Programmbausteinen mittels graphischer Symbole auf der visuellen Anzeige angezeigt werden. Hierdurch wird eine besonders intuitiv bedienbare Benutzerschnittstelle zur Programmerstellung geschaffen.
  • In einer weiteren Variante des erfindungsgemäßen Verfahrens wird ferner eine manuelle semantische Suchfunktion basierend auf einer Benutzereingabe an der Benutzerschnittstelle bereitgestellt, wobei die manuelle semantische Suchfunktion aus den semantischen Informationen aus Ontologie wiederum mittels Inferenz bzw. Reasoning die Programmbausteine entsprechend der Benutzereingabe ermittelt und über die Benutzerschnittstelle ausgibt. Mit anderen Worten werden diejenigen Programmbausteine ausgegeben, welche auf die Suche entsprechend der Benutzereingabe passen.
  • In einer weiteren Ausgestaltung des erfindungsgemäßen Verfahrens wird ferner eine Hilfefunktion bereitgestellt, welche dem Benutzer über die Benutzerschnittstelle anzeigt, mit welchen Verbindungen (sofern vorhanden) zu anderen Programmbausteinen ein Hinzufügen eines über die Benutzerschnittstelle ausgegebenen Programmbausteins zu der Anzahl von bereits vorhandenen Programmbausteinen zulässig ist. Bei dem über die Benutzerschnittstelle ausgegebenen Programmbaustein handelt es sich in einer Variante um einen von dem Benutzer ausgewählten Programmbaustein. In einer anderen Variante handelt es sich um einen Programmbaustein, der mit der zuvor beschriebenen manuellen semantischen Suchfunktion ermittelt und ausgegeben wurde. Die Hilfefunktion führt eine Inferenz bzw. ein Reasoning basierend auf den semantischen Informationen aus der Ontologie durch. Die Hilfefunktion ermöglicht eine effiziente Entscheidungsunterstützung beim Hinzufügen von Programmbausteinen zu bereits vorhandenen Programmbausteinen.
  • In einer weiteren Ausgestaltung des erfindungsgemäßen Verfahrens wird eine Vorschlagsfunktion bereitgestellt, welche automatisiert Vorschläge zum zulässigen Hinzufügen von Programmbausteinen zu der Anzahl von bereits vorhandenen Programmbausteinen über die Benutzerschnittstelle ausgibt. Die Vorschläge werden über einen Planungsalgorithmus in Kombination mit Inferenz bzw. Reasoning basierend auf den semantischen Informationen aus der Ontologie ermittelt. Mit dieser Variante wird der Benutzer proaktiv durch die Ausgabe von Vorschlägen bei der Programmerstellung unterstützt. Dabei wechselwirkt ein Planungsalgorithmus mit einem entsprechenden Reasoner.
  • In einer weiteren Ausgestaltung des erfindungsgemäßen Verfahrens wird eine Planungsfunktion bereitgestellt, welche basierend auf einem Planungsziel, das durch eine Benutzereingabe an der Benutzerschnittstelle spezifiziert wird, automatisiert zumindest einen weiteren zulässig hinzufügbaren Programmbaustein zu der Anzahl von bereits vorhandenen Programmbausteinen hinzufügt und über die Benutzerschnittstelle ausgibt, wobei der zumindest eine hinzugefügte Programmbaustein über einen Planungsalgorithmus in Kombination mit Inferenz basierend auf den semantischen Informationen aus der Ontologie ermittelt wird. Auf diese Weise wird eine besonders effiziente Unterstützung des Benutzers bei der Programmerstellung erreicht. Gegebenenfalls kann mit der Planungsfunktion auch das gesamte zu erstellende Programm automatisiert durch Hinzufügen von Programmbausteinen vervollständigt werden.
  • Das im Rahmen der Erfindung zu erstellende Programm kann zur Analyse von Daten verschiedener technischer Systeme eingesetzt werden. Im Besonderen wird das Programm für folgende Daten genutzt:
    • - Daten von einer oder mehreren Energieerzeugungsanlagen oder Energieerzeugungseinheiten, insbesondere von einer oder mehreren Gasturbinen; und/oder
    • - Daten von einer oder mehreren Automatisierungsanlagen oder von einer oder mehreren Komponenten zumindest einer Automatisierungsanlage, wobei eine Automatisierungsanlage einen beliebigen Prozess und insbesondere einen Herstellungs- bzw. Fertigungsprozess automatisiert durchführen kann und wobei die Komponenten der Automatisierungsanlage z.B. Sensoren und/oder Aktuatoren darstellen; und/oder
    • - Daten von einem oder mehreren Verkehrsmitteln, insbesondere von einem oder mehreren Schienenfahrzeugen, wie z.B. einer oder mehreren Loks; und/oder
    • - Daten von einem oder mehreren medizinischen Geräten, wie z.B. von einem oder mehreren Magnetresonanztomographen oder Computertomographen.
  • In einer weiteren Ausgestaltung umfassen die zu analysierenden Daten Betriebsdaten in Form von beim Betrieb aufgetretenen Messdaten des oder der entsprechenden technischen Systeme.
  • Die Erfindung betrifft darüber hinaus eine Vorrichtung zur rechnergestützten Benutzerassistenz bei der Erstellung eines Programms zur Analyse von Daten zumindest eines technischen Systems, wobei für die Erstellung des Programms eine Vielzahl von Programmbausteinen in einem Speicher der Vorrichtung hinterlegt ist, wobei jeder Programmbaustein Datenkanäle umfassend eine Dateneingabe und eine Datenausgabe sowie eine Datenverarbeitungsfunktion zur Erzeugung der Datenausgabe aus der Dateneingabe spezifiziert. Die Vorrichtung ist dabei derart ausgestaltet, dass sie im Betrieb das erfindungsgemäße Verfahren bzw. eine oder mehrere bevorzugte Varianten des erfindungsgemäßen Verfahrens durchführt. Mit anderen Worten enthält die Vorrichtung eine Rechnereinheit in der Form von Software und Hardware, um die Schritte des erfindungsgemäßen Verfahrens umzusetzen.
  • Die Erfindung betrifft darüber hinaus ein Computerprogrammprodukt mit einem auf einem maschinenlesbaren Träger gespeicherten Programmcode zur Durchführung des erfindungsgemäßen Verfahrens bzw. einer oder mehrerer bevorzugter Varianten des erfindungsgemäßen Verfahrens, wenn der Programmcode auf einem Rechner ausgeführt wird.
  • Ferner umfasst die Erfindung ein Computerprogramm, mit einem Programmcode zur Durchführung des erfindungsgemäßen Verfahrens bzw. einer oder mehrerer bevorzugter Varianten des erfindungsgemäßen Verfahrens, wenn der Programmcode auf einem Rechner ausgeführt wird.
  • Ausführungsbeispiele der Erfindung werden nachfolgend anhand der beigefügten Figuren detailliert beschrieben.
  • Es zeigen:
    • 1 eine schematische Darstellung einer Benutzerschnittstelle, welche im Rahmen einer Ausführungsform des erfindungsgemäßen Verfahrens verwendet wird; und
    • 2 eine schematische Darstellung, welches die wesentlichen Komponenten einer Ausführungsform des erfindungsgemäßen Verfahrens wiedergibt.
  • Nachfolgend wird eine Ausführungsform des erfindungsgemäßen Verfahrens beschrieben, bei der ein Benutzer über eine graphische Benutzerschnittstelle Programmbausteine zu einem Workflow zusammensetzen kann, um ein Programm zu erstellen, mit dem Daten eines oder mehrerer technischer Systeme analysiert werden können.
  • 1 zeigt beispielhaft die graphische Benutzerschnittstelle UI, über die der Benutzer Programmbausteine zu einem Analyseprogramm zusammensetzen kann. Es ist dabei nur ein Ausschnitt der Benutzerschnittstelle in der Form eines Anzeigefensters AF dargestellt. Dieses Anzeigefenster wird auf einem Display wiedergegeben. Über weitere nicht gezeigte Teile der Benutzerschnittstelle UI kann ein Benutzer aus einer Bibliothek Programmbausteine auswählen und zu bereits vorhandenen Programmbausteinen, z.B. über „Drag and Drop“ mittels einer Computermaus, hinzufügen. Die hinzugefügten Programmbausteine werden in dem Anzeigefenster AF visualisiert. In dem Szenario der 1 sind zu dem Programm bereits die Programmbausteine B1, B2, B3 und B4 hinzugefügt worden.
  • In einem konkreten Anwendungsfall stellt der Programmbaustein B1 das Auslesen von Sensordaten einer Gasturbine aus einer Datenbank dar. Demgegenüber stellt der Programmbaustein B2 das Auslesen entsprechender Metadaten zu diesen Sensordaten dar, wobei die Metadaten den entsprechenden Sensor näher spezifizieren. Die Daten des Programmbausteins B1 und des Programmbausteins B2 werden einer Dateneingabe eines Programmbausteins B3 zugeführt, der die Sensordaten den entsprechenden Metadaten zuordnet. Anschließend werden die zusammengeführten Daten einem Programmbaustein B4 zugeführt, der eine Filterfunktion auf diese Daten anwendet.
  • Die entsprechenden Verbindungen zwischen den Programmbausteinen sind durch die Linien L wiedergegeben. Die Programmbausteine und die Verbindungen wurden über einen Benutzer an der Benutzerschnittstelle spezifiziert. Dabei ist zu beachten, dass die dargestellten Bezugszeichen in der tatsächlichen Darstellung der Anzeigefläche AF nicht enthalten sind. Vielmehr sind dort entsprechende Bezeichnungen bzw. Spezifikationen zu den dargestellten Programmbausteinen bzw. Verbindungen angegeben, so dass der Benutzer erkennen kann, welche Programmbausteine er mit welchen Verbindungen kombiniert hat.
  • Ein Benutzer kann nunmehr über die Benutzerschnittstelle einen neuen Programmbaustein auswählen und über von ihm spezifizierte Verbindungen mit einem oder mehreren anderen Programmbausteinen koppeln. Im erfindungsgemäßen Verfahren wird dabei angezeigt, ob ein entsprechendes Hinzufügen eines Programmbausteins in dem Sinne zulässig ist, dass weiterhin eine korrekte Ausführung des Programms mit dem hinzugefügten Programmbaustein möglich ist. Im Unterschied zu herkömmlichen Verfahren werden bei der Zulässigkeitsprüfung semantische Informationen in der Form von Metadaten aus einer Ontologie, d.h. aus einem in einem logikbasierten Wissensrepräsentationsformalismus ausgedrückten Modell, berücksichtigt. Hierzu sind die Programmbausteine mit zugeordneten Metadaten aus der Ontologie annotiert, wie nachfolgend anhand von 2 beschrieben wird.
  • 2 zeigt beispielhaft den Aufbau eines Programmbausteins B, wobei alle verfügbaren Programmbausteine, insbesondere auch die Programmbausteine B1 bis B4 aus 1, diesen Aufbau aufweisen. In an sich bekannter Weise spezifiziert dieser Programmbaustein eine Dateneingabe IN sowie eine Datenausgabe OU. Das Kernstück des Programmbausteins ist ein Modell-Algorithmus MA, welcher der Datenverarbeitungsfunktion im Sinne des Anspruchs 1 entspricht. Dieser Algorithmus erzeugt aus der Dateneingabe IN die entsprechende Datenausgabe OU. Darüber hinaus ist der Programmbaustein durch den Benutzer geeignet mittels Konfigurationsdaten CO konfigurierbar. Im Besonderen können dabei spezielle Parameter bei der Durchführung des Modell-Algorithmus festgelegt werden.
  • Im Unterschied zu herkömmlichen Programmbausteinen zeichnet sich der Programmbaustein B dadurch aus, dass der Programmbaustein mit Metadaten MI, MO und AM in der Form von semantischen Informationen aus einer Ontologie annotiert ist. Diese Ontologie ist in 2 mit dem Bezugszeichen ON bezeichnet. Die Metadaten MI betreffen dabei semantische Informationen zur Dateneingabe IN, die Metadaten MO semantischen Informationen zur Datenausgabe OU und die Metadaten AM (AM = Analytisches Modell) semantische Informationen zu dem Algorithmus MA.
  • Mit anderen Worten werden über die Metadaten MI, MO und AM zum einen der Input IN und der Output OU klassifiziert, und zum anderen wird eine Klassifikation des Modell-Algorithmus MA angegeben. Dies könnte z.B. die Klassifikation „Ausreißer-Detektion für ein Gauß-verteiltes kontinuierliches Signal“ sein, allerdings nicht als Text kodiert, sondern als Ausdruck der Ontologie ON. Der Modell-Algorithmus MA kann beispielsweise ein an sich bekannter Knime-Workflow oder entsprechender Knime-Baustein sein, der durch seine Konfiguration und durch sein Verhalten das analytische Modell AM konkret implementiert.
  • Je nach Ausgestaltung können die Metadaten verschiedene Informationen enthalten. Im Folgenden werden Beispiele dieser Informationen genannt, wobei auch nur ein Teil dieser Informationen als Metadaten verwendet werden kann.
  • Zur Beschreibung des Modell-Algorithmus können als Metadaten eine Dokumentation, eine funktionale Beschreibung, die Version, der Autor, Zugriffsrechte und dergleichen angegeben werden. Zur Beschreibung der Ein- und Ausgabedaten können als Metadaten Datentypen, Datenformate, Frequenzen, Abtastraten, Qualitätsattribute und dergleichen angegeben werden. Zur Beschreibung des Algorithmus können als Metadaten ferner die Berechnungskomplexität (Space, Time), die Ressourcenanforderungen (CPU, RAM, Network, Disk, Software-Versionen und dergleichen) angegeben werden. Ebenso können als Metadaten zur Beschreibung des Algorithmus Key-Performance-Indikatoren zur Qualitätssicherung angegeben werden, wie z.B. Precision-Recall bei Klassifikatoren oder Prediction-Precision bei Prädiktoren. Ferner können als Metadaten Informationen zur Zieldomäne des Algorithmus (z.B. Predictive Maintainance für Gasturbinen) angegeben werden.
  • Durch die Beschreibung der Metadaten basierend auf der Ontologie ON wird es ermöglicht, über Inferenz bzw. Reasoning RE (deutsch: Schlussfolgern) weitergehenden Informationen für das Zusammensetzen von Programmbausteinen abzuleiten und dem Benutzer über die Benutzerschnittstelle UI bei der Erstellung des entsprechenden Programms auszugeben. Gemäß der Ausführungsform der 2 werden dem Benutzer die Funktionalitäten einer bereits oben beschriebenen Zulässigkeitsprüfung ZP, einer manuellen semantischen Suchfunktion SF, einer Hilfefunktion HF, einer Vorschlagsfunktion VF sowie einer Planungsfunktion PF bereitgestellt. Diese Funktionalitäten werden im Folgenden näher erläutert. Alle Funktionalitäten verwenden das Reasoning RE, wobei in einer bevorzugten Ausführungsform das Reasoning auf eine OWL-Ontologie angewendet wird. Als Reasoner zum Durchführen des Reasonings kann beispielsweise Hermit oder Konclude eingesetzt werden.
  • Gemäß der Funktionalität der Zulässigkeitsprüfung ZP wird einem Benutzer über die Benutzerschnittstelle UI vermittelt, ob ein von ihm hinzugefügter Programmbaustein, der mit anderen vorhandenen Programmbausteinen verbunden ist, in dem Sinne zulässig ist, dass das Programm mit dem hinzugefügten Programmbaustein ausführbar ist. Wird dabei mit dem Reasoning RE festgestellt, dass gemäß den semantischen Informationen eine Ausführung nicht möglich ist, wird über die Benutzerschnittstelle eine entsprechende Meldung ausgegeben.
  • Gemäß der Funktionalität der semantischen Suche SF kann ein Benutzer über ein entsprechendes Eingabefeld auf der Benutzerschnittstelle Suchausdrücke eingeben, auf deren Basis dann mittels Reasoning basierend auf der Ontologie ON solche Programmbausteine ermittelt und zur Auswahl über die Benutzerschnittstelle bereitstellt werden, welche auf den Suchausdruck zutreffen.
  • Gemäß der Funktionalität der Hilfefunktion HF werden dem Benutzer Informationen ausgegeben, wie ein gemäß der Suchfunktion SF ermittelter Programmbaustein bzw. wie ein durch den Benutzer ausgewählter Programmbaustein geeignet mit anderen Programmbausteinen verbindbar ist, so dass das Programm ausführbar ist. Dabei wird wiederum Reasoning basierend auf der Ontologie ON verwendet. Gegebenenfalls kann auch die Information ausgegeben werden, dass es keine Verbindung des Programmbausteins zu anderen Programmbausteinen gibt, welche zu einem ausführbaren Programm führen.
  • Gemäß der Vorschlagsfunktion VF werden dem Benutzer über die Benutzerschnittstelle proaktiv Vorschläge gegeben, wie die bereits vorhandenen Programmbausteine geeignet mit weiteren Programmbausteinen ergänzt werden können. Zur Realisierung dieser Funktionalität wird das Reasoning RE mit einem Planungsprogramm kombiniert, um gültige Fortsetzungen des erstellten Workflows vorzuschlagen. Die Kombination von Reasoning mit Planungsalgorithmen ist dabei an sich aus dem Stand der Technik bekannt.
  • Gemäß der Planungsfunktion PF kann ein Benutzer über ein entsprechendes Eingabefeld auf der Benutzerschnittstelle ein Planungsziel spezifizieren. Basierend auf diesem Planungsziel wird dann das zu erstellende Programm automatisch vervollständigt, wobei hierfür wiederum das Reasoning RE mit einem Planungsalgorithmus kombiniert wird.
  • Die im Vorangegangenen beschriebenen Ausführungsformen der Erfindung weisen eine Reihe von Vorteilen auf. Insbesondere wird einem Benutzer durch die Verwendung von semantischen Metainformationen eine verbesserte Unterstützung beim Engineering analytischer Workflows gegeben. Durch die Bereitstellung von unabhängigen Metainformationen für die jeweiligen Programmbausteine können ggf. auch Programmbausteine aus unterschiedlichen Workflow-Tools miteinander kombiniert werden. Ferner können die Metainformationen und der zugehörige Algorithmus des entsprechenden Programmbausteins unabhängig voneinander verändert werden. Im Besonderen können die semantischen Informationen unverändert bleiben, wohingegen die konkrete Software-Implementierung des Algorithmus angepasst wird. Durch die semantische Annotation von Programmbausteinen wird der Aufwand bei der Erstellung von Workflows vermindert und somit eine Zeit- und Kostenersparnis erreicht. Darüber hinaus wird auch die Qualität des mit den Programmbausteinen erstellten Programms verbessert.
  • Das erfindungsgemäße Verfahren kann für die Analyse von Daten beliebiger technischer Systeme zum Einsatz kommen. Insbesondere können die Daten von medizinischen Geräten, von Energieerzeugungsanlagen bzw. Energieerzeugungseinheiten oder von Schienenfahrzeugen analysiert werden. Als Daten der technischen Systeme können insbesondere Betriebsdaten analysiert werden, beispielsweise können Betriebsdaten statistisch ausgewertet werden, um hierdurch Ursachen für Ausfälle zu identifizieren.

Claims (13)

  1. Verfahren zur rechnergestützten Benutzerassistenz bei der Erstellung eines Programms zur Analyse von Daten zumindest eines technischen Systems, wobei für die Erstellung des Programms eine Vielzahl von Programmbausteinen (B, B1, ..., B4) verfügbar ist, wobei jeder Programmbaustein (B, B1, ..., B4) Datenkanäle umfassend eine Dateneingabe (IN) und eine Datenausgabe (OU) sowie eine Datenverarbeitungsfunktion (MA) zur Erzeugung der Datenausgabe (OU) aus der Dateneingabe (IN) spezifiziert, bei dem - eine Benutzerschnittstelle (UI) umfassend eine visuelle Anzeige (AF) bereitgestellt wird, wobei ein Benutzer über die Benutzerschnittstelle (UI) unter Verwendung der visuellen Anzeige (AF) neue Programmbausteine (B, B1, ..., B4) zu einer Anzahl von bereits vorhandenen Programmbausteinen (B, B1, ..., B4) des zu erstellenden Programms hinzufügen kann, indem er Programmbausteine (B, B1, ..., B4) aus der Vielzahl von Programmbausteinen (B, B1, ..., B4) auswählt und einen jeweiligen ausgewählten Programmbaustein (B, B1, ..., B4) mit einem oder mehreren bereits vorhandenen Programmbausteinen (B, B1, ..., B4) über die Kopplung von Datenkanälen zwischen dem jeweiligen ausgewählten Programmbaustein (B, B1, ..., B4) und zumindest einem bereits vorhandenen Programmbaustein (B, B1, ..., B4) verbindet; - jeder Programmbaustein (B, B1, ..., B4) zur Beschreibung seiner Dateneingabe (IN), Datenausgabe (OU) und Datenverarbeitungsfunktion (AM) mit semantischen Informationen (MI, MO, AM) aus einer Ontologie (ON) annotiert ist; - eine Zulässigkeitsprüfung (ZP) durchgeführt wird, mittels welcher überprüft wird, ob das Hinzufügen eines Programmbausteins (B, B1, ..., B4) zu der Anzahl von bereits vorhandenen Programmbausteinen (B, B1, ..., B4) durch einen Benutzer zulässig ist, um eine korrekte Ausführung des Programms zu gewährleisten, wobei im Rahmen der Zulässigkeitsprüfung (ZP) eine Inferenz (RE) basierend auf den semantischen Informationen (MI, MO, AM) aus der Ontologie (ON) durchgeführt wird und wobei das Ergebnis der Zulässigkeitsprüfung (ZP) über die Benutzerschnittstelle (UI) ausgegeben wird.
  2. Verfahren nach Anspruch 1, wobei über die Benutzerschnittstelle (UI) ferner zumindest ein Teil der hinzugefügten Programmbausteine (B, B1, ..., B4) durch den Benutzer konfigurierbar ist.
  3. Verfahren nach Anspruch 1 oder 2, wobei als Benutzerschnittstelle (UI) eine graphische Benutzerschnittstelle bereitgestellt wird, über welche Programmbausteine (B, B1, ..., B4) und Verbindungen zwischen Programmbausteinen (B, B1, ..., B4) mittels graphischer Symbole auf der visuellen Anzeige (AF) angezeigt werden.
  4. Verfahren nach einem der vorhergehenden Ansprüche, wobei eine manuelle semantische Suchfunktion (SF) basierend auf einer Benutzereingabe an der Benutzerschnittstelle (UI) bereitgestellt wird, wobei die manuelle semantische Suchfunktion (SF) aus den semantischen Informationen (MI, MO, AM) aus der Ontologie (ON) mittels Inferenz (RE) die Programmbausteine (B, B1, ..., B4) entsprechend der Benutzereingabe ermittelt und über die Benutzerschnittstelle (UI) ausgibt.
  5. Verfahren nach einem der vorhergehenden Ansprüche, wobei eine Hilfefunktion (HF) bereitgestellt wird, welche dem Benutzer über die Benutzerschnittstelle (UI) anzeigt, mit welchen Verbindungen zu anderen Programmbausteinen (B, B1, ..., B4) ein Hinzufügen eines über die Benutzerschnittstelle (UI) ausgegebenen Programmbausteins (B, B1, ..., B4) zu der Anzahl von bereits vorhandenen Programmbausteinen (B, B1, ..., B4) zulässig ist, wobei die Hilfefunktion (HF) eine Inferenz (RE) basierend auf den semantischen Informationen (MI, MO, AM) aus der Ontologie (ON) durchführt.
  6. Verfahren nach einem der vorhergehenden Ansprüche, wobei eine Vorschlagsfunktion (VF) bereitgestellt wird, welche automatisiert Vorschläge zum zulässigen Hinzufügen von Programmbausteinen (B, B1, ..., B4) zu der Anzahl von bereits vorhandenen Programmbausteinen (B, B1, ..., B4) über die Benutzerschnittstelle (UI) ausgibt, wobei die Vorschläge über einen Planungsalgorithmus in Kombination mit Inferenz (RE) basierend auf den semantischen Informationen (MI, MO, AM) aus der Ontologie (ON) ermittelt werden.
  7. Verfahren nach einem der vorhergehenden Ansprüche, wobei eine Planungsfunktion (PF) bereitgestellt wird, welche basierend auf einem Planungsziel, das durch eine Benutzereingabe an der Benutzerschnittstelle (UI) spezifiziert wird, automatisiert zumindest einen weiteren zulässig hinzufügbaren Programmbaustein (B, B1, ..., B4) zu der Anzahl von bereits vorhandenen Programmbausteinen (B, B1, ..., B4) hinzufügt und über die Benutzerschnittstelle ausgibt, wobei der zumindest eine hinzugefügte Programmbaustein über einen Planungsalgorithmus in Kombination mit Inferenz (RE) basierend auf den semantischen Informationen (MI, MO, AM) aus der Ontologie (ON) ermittelt werden.
  8. Verfahren nach einem der vorhergehenden Ansprüche, wobei die Ontologie (ON) auf einer OWL-Ontologiesprache beruht.
  9. Verfahren nach einem der vorhergehenden Ansprüche, wobei das zu erstellende Programm zur Analyse von folgenden Daten dient: - Daten von einer oder mehreren Energieerzeugungsanlagen oder Energieerzeugungseinheiten, insbesondere von einer oder mehreren Gasturbinen; und/oder - Daten von einer oder mehreren Automatisierungsanlagen oder von einer oder mehreren Komponenten zumindest einer Automatisierungsanlage; und/oder - Daten von einem oder mehreren Verkehrsmitteln, insbesondere von einem oder mehreren Schienenfahrzeugen; und/oder - Daten von einem oder mehreren medizinischen Geräten.
  10. Vorrichtung zur rechnergestützten Benutzerassistenz bei der Erstellung eines Programms zur Analyse von Daten zumindest eines technischen Systems, wobei für die Erstellung des Programms eine Vielzahl von Programmbausteinen (B, B1, ..., B4) in einem Speicher der Vorrichtung hinterlegt ist, wobei jeder Programmbaustein (B, B1, ..., B4) Datenkanäle umfassend eine Dateneingabe (IN) und eine Datenausgabe (OU) sowie eine Datenverarbeitungsfunktion (MA) zur Erzeugung der Datenausgabe (OU) aus der Dateneingabe (IN) spezifiziert, wobei - die Vorrichtung im Betrieb eine Benutzerschnittstelle (UI) umfassend eine visuelle Anzeige (AF) bereitstellt, wobei ein Benutzer über die Benutzerschnittstelle (UI) unter Verwendung der visuellen Anzeige (AF) neue Programmbausteine (B, B1, ..., B4) zu einer Anzahl von bereits vorhandenen Programmbausteinen (B, B1, ..., B4) des zu erstellenden Programms hinzufügen kann, indem er Programmbausteine (B, B1, ..., B4) aus der Vielzahl von Programmbausteinen (B, B1, ..., B4) auswählt und einen jeweiligen ausgewählten Programmbaustein (B, B1, ..., B4) mit einem oder mehreren bereits vorhandenen Programmbausteinen (B, B1, ..., B4) über die Kopplung von Datenkanälen zwischen dem jeweiligen ausgewählten Programmbaustein (B, B1, ..., B4) und zumindest einem bereits vorhandenen Programmbaustein (B, B1, ..., B4) verbindet; - wobei jeder Programmbaustein (B, B1, ..., B4) zur Beschreibung seiner Dateneingabe (IN), Datenausgabe (OU) und Datenverarbeitungsfunktion (AM) mit semantischen Informationen (MI, MO, AM) aus einer Ontologie (ON) annotiert ist; - wobei die Vorrichtung dazu eingerichtet ist, eine Zulässigkeitsprüfung (ZP) durchzuführen, mittels welcher überprüft wird, ob das Hinzufügen eines Programmbausteins (B, B1, ..., B4) zu der Anzahl von bereits vorhandenen Programmbausteinen (B, B1, ..., B4) durch einen Benutzer zulässig ist, um eine korrekte Ausführung des Programms zu gewährleisten, wobei im Rahmen der Zulässigkeitsprüfung (ZP) eine Inferenz (RE) basierend auf den semantischen Informationen (MI, MO, AM) aus der Ontologie (ON) durchgeführt wird und wobei das Ergebnis der Zulässigkeitsprüfung (ZP) über die Benutzerschnittstelle (UI) ausgegeben wird.
  11. Vorrichtung nach Anspruch 10, welche derart ausgestaltet ist, dass mit der Vorrichtung ein Verfahren nach einem der Ansprüche 2 bis 8 durchführbar ist.
  12. Computerprogrammprodukt mit einem auf einem maschinenlesbaren Träger gespeicherten Programmcode zur Durchführung eines Verfahrens nach einem der Ansprüche 1 bis 9, wenn der Programmcode auf einem Rechner ausgeführt wird.
  13. Computerprogramm mit einem Programmcode zur Durchführung eines Verfahrens nach einem der Ansprüche 1 bis 9, wenn der Programmcode auf einem Rechner ausgeführt wird.
DE102017208143.0A 2017-05-15 2017-05-15 Verfahren zur rechnergestützten Benutzerassistenz bei der Erstellung eines Programms zur Analyse von Daten zumindest eines technischen Systems Withdrawn DE102017208143A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102017208143.0A DE102017208143A1 (de) 2017-05-15 2017-05-15 Verfahren zur rechnergestützten Benutzerassistenz bei der Erstellung eines Programms zur Analyse von Daten zumindest eines technischen Systems

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102017208143.0A DE102017208143A1 (de) 2017-05-15 2017-05-15 Verfahren zur rechnergestützten Benutzerassistenz bei der Erstellung eines Programms zur Analyse von Daten zumindest eines technischen Systems

Publications (1)

Publication Number Publication Date
DE102017208143A1 true DE102017208143A1 (de) 2018-11-15

Family

ID=63962652

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102017208143.0A Withdrawn DE102017208143A1 (de) 2017-05-15 2017-05-15 Verfahren zur rechnergestützten Benutzerassistenz bei der Erstellung eines Programms zur Analyse von Daten zumindest eines technischen Systems

Country Status (1)

Country Link
DE (1) DE102017208143A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111831259A (zh) * 2020-04-15 2020-10-27 中国人民解放军军事科学院战争研究院 一种引导式的智能处理定制方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106570566A (zh) * 2016-10-28 2017-04-19 安徽农业大学 一种基于本体的茶树虫害知识表示和共享方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106570566A (zh) * 2016-10-28 2017-04-19 安徽农业大学 一种基于本体的茶树虫害知识表示和共享方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111831259A (zh) * 2020-04-15 2020-10-27 中国人民解放军军事科学院战争研究院 一种引导式的智能处理定制方法

Similar Documents

Publication Publication Date Title
WO2007020231A2 (de) System für den maschinengestützten entwurf technischer vorrichtungen
EP3446185B1 (de) Verfahren und vorrichtung zur gestaltung eines produktionsprozesses zum produzieren eines aus mehreren teilprodukten zusammengesetzten produkts
DE102008008500B3 (de) Verfahren zur rechnergestützten Konfiguration eines technischen Systems
EP2122428A1 (de) Verfahren und system zur ermittlung von zuverlässigkeitsparametern einer technischen anlage
WO2007006671A1 (de) Verfahren und softwaresystem zur konfiguration eines modularen systems
EP1657670A1 (de) System und Verfahren zur Status- und Fortschriftskontrolle eines technischen Prozesses oder eines technischen Projektes
EP3047341B1 (de) System zum rechnergestützten erstellen von regeln zur überwachung und/oder diagnose einer technischen anlage
EP2795414B1 (de) Automatisierte projektierung einer leittechnik einer technischen anlage
EP2290593A1 (de) Verfahren zur Unterstützung einer Planung einer technischen Anlage
DE102017208143A1 (de) Verfahren zur rechnergestützten Benutzerassistenz bei der Erstellung eines Programms zur Analyse von Daten zumindest eines technischen Systems
EP2483775A1 (de) Verfahren und anordnung zum installieren und konfigurieren eines computersystems
EP3968213A1 (de) Verfahren und vorrichtung zum ermitteln eines gleisgebundenen schienenpfades in einer gleisanlage
WO2000002162A1 (de) Vorrichtung und verfahren zur erstellung eines virtuellen anlagenmodells
DE10232659A1 (de) Verfahren und Konfigurator zur Erstellung eines Anlagenkonzepts aus einer Anzahl von Anlagenkomponenten
EP1691310A2 (de) Verfahren zur Herstellung eines komplexen technischen Systems
DE102016214666A1 (de) Verfahren und Vorrichtung zur Gestaltung einer technischen Anlage
DE102011012071A1 (de) Anforderungseinbringungs-/-auslesewerkzeug, genannt r2db
EP2560085A1 (de) Verfahren zur Konfiguration einer Anzeigevorrichtung zur Anzeige von dynamischen Alarmmeldungen eines Steuer- und Überwachungssystems einer technischen Automatisierungsanlage
EP3933593A1 (de) Verfahren und computerprogramm zum testen eines technischen systems
DE102010047954A1 (de) Formelle offline-Verifikation ausführbarer Modelle
EP3056994B1 (de) Vorrichtung und verfahren zur erfassung, überprüfung und speicherung von prozessdaten aus mindestens zwei prozessschritten
DE102018212801A1 (de) Diagnose komplexer Systeme
WO2010026151A1 (de) Verfahren zur einräumung einer zugriffsberechtigung auf ein rechnerbasiertes objekt in einem automatisierungssystem, computerprogramm und automatisierungssystem
EP3717975A1 (de) Verfahren und vorrichtung zur projektierung einer spezifi-schen verfahrenstechnischen anlage
DE102004023634B4 (de) Verfahren zur Vollständigkeits- und Konsistenzprüfung einer Informationsbibliothek

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee