DE69130766T2 - Intelligentes hilfssystem - Google Patents
Intelligentes hilfssystemInfo
- Publication number
- DE69130766T2 DE69130766T2 DE69130766T DE69130766T DE69130766T2 DE 69130766 T2 DE69130766 T2 DE 69130766T2 DE 69130766 T DE69130766 T DE 69130766T DE 69130766 T DE69130766 T DE 69130766T DE 69130766 T2 DE69130766 T2 DE 69130766T2
- Authority
- DE
- Germany
- Prior art keywords
- user
- knowledge base
- rules
- data
- checking
- 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.)
- Expired - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
- G06F9/453—Help systems
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S706/00—Data processing: artificial intelligence
- Y10S706/902—Application using ai with detail of the ai system
- Y10S706/911—Nonmedical diagnostics
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S706/00—Data processing: artificial intelligence
- Y10S706/902—Application using ai with detail of the ai system
- Y10S706/927—Education or instruction
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Digital Computer Display Output (AREA)
Description
- Diese Erfindung betrifft Hilfssysteme für Computer; spezifischer betrifft sie Hilfssysteme, die einen Anwender eines Computers durch Bereitstellung kontextsensitiver Hilfe unterstützen.
- Um einen Computer effektiv zu betreiben, muß ein Anwender eine Anzahl von Befehlen und Datenformaten beherrschen. Man erreicht dies gewöhnlich durch Einsatz von Stunden zum Lesen gedruckter Anwenderdokumentation und/oder durch Anwendung von trial and error-Techniken.
- Es sind bereits computerunterstützte Hilfssysteme entwickelt worden, die eine on-line Unterstützung für Computeranwender ermöglichen. Als Antwort auf eine Anforderung durch einen Anwender zeigen diese Systeme Hilfsinformation auf dem Anzeigeschirm des Computers an. Einfache Hilfssysteme starten unabhängig von den Umständen stets mit der gleichen Anzeige und der Anwender muß spezifische Informationen eingeben, um Hilfe für seine oder ihre besondere Situation zu finden. Fortgeschrittenere Hilfssysteme zeigen kontextsensitive Hilfe an. Kontextsensitive Hilfssysteme ermitteln, in welchem speziellen Teil eines Anwendungsprogramms sich der Anwender befindet. Es wird dann Hilfsinformation angezeigt, die relevant für diesen Anwenderstandort ist.
- Während solche kontextsensitiven Hilfssysteme eine Verbesserung gegenüber einfachen Hilfssystemen darstellen, weisen sie zahlreiche Beschränkungen auf. Derartige Systeme sind üblicherweise eng an ein Anwendungsprogramm gekoppelt; sie müssen sich auf das Anwendungsprogramm stützen, um den Kontext zu verfolgen und zu speichern. Da diese Systeme auf die Anzeige von Hilfsinformation auf Basis des Programmstandortes limitiert sind, liefern diese des weiteren stets die gleiche Hilfsinformation für einen gegebenen Standort unabhängig davon, wie der Anwender dorthin gelangte. Während solche Systeme die. Annehmlichkeit einer on-line Hilfe ermöglichen, ist die Hilfsinformation, die sie erbringen, nicht mehr als ein Anwenderhandbuch, welches auf einen gegebenen Programmbildschirm oder eine Funktion bezogen ist. Im Ergebnis neigen diese Hilfssysteme dazu, von begrenzter Nützlichkeit für den Anwender zu sein, der nicht spezifisch das Problem, identifizieren kann oder der "seinen Weg verloren" hat.
- Die EP-A-0436459 beschreibt ein intelligentes Hilfssystem, welches Hilfsinformation bereitstellt, nachdem ein Anwender ein fehlerhaftes Kommando oder eine Frage eingibt.
- Die Erfindung erkennt einen Bedarf an einem intelligenten Hilfssystem, welches Informationen, die spezifisch für die Anwendervorgeschichte sind, wie Tasks, die er oder sie erfolgreich ausgeführt hat (und wie oft) oder vorangehend Hilfe dazu hatte, und Informationen, die einen Status einer Maschine und einen Status einer programmierten Anwendung definieren, verarbeitet.
- Gemäß der Erfindung wird ein intelligentes Hilfssystem zur Unterstützung eines Anwenders eines Computerprogramms mittels Pflege einer historischen Schlange und Verwendung von Techniken der künstlichen Intelligenz vorgeschlagen, um Hilfsinformation, die auf anwendergesteuerten Ereignissen und dem gegenwärtigen Status des Systems basiert, auszuwählen. Insbesondere werden anwendergesteuerte Aktivitäten überwacht und in der historischen Schlange innerhalb einer Wissensbank gespeichert. Systemzustände werden ebenfalls überwacht und gespeichert. Die Wissensbank wird dann von einer Folgerungsmaschine eingesetzt, um die spezifische Art von Hilfe, die der Anwender benötigt, zu isolieren. Somit wird dem Anwender auf Anfrage Unterstützung gegeben, die passend für den Level dieses Anwenders im Verständnis oder der Erfahrung und für die gegenwärtigen Aktivitäten, die er oder sie ausgeführt hat, ist.
- Fig. 1 ist ein Blockdiagramm eines Computersystems, in welchem die Erfindung verkörpert sein kann.
- Fig. 2 ist ein Blockdiagramm eines Computersoftwaresystems, das in der bevorzugten Ausführungsform verwendet wird.
- Fig. 3a illustriert die Verarbeitung von anwendergesteuerten Ereignissen und Systemzuständen zu Hilfsinformation.
- Fig. 3b ist ein Flußdiagramm der generellen Verfahren des Hilfssystems.
- Fig. 4 ist ein Flußdiagramm einer Anfrage durch die Überprüfungseinheit.
- Fig. 5A-B zeigen ein Flußdiagramm der Verfahren der Ereignisinterpreter.
- Fig. 6 ist ein Flußdiagramm der Verfahren zum Verarbeiten von Ereignissen.
- Fig. 7 ist ein Flußdiagramm der Verfahren zur Identifizierung von Tasks.
- Fig. 8 illustriert die Regeltaxonomie der Erfindung.
- Fig. 9 illustriert Frames und Slots für die Speicherung von Wissen.
- Fig. 10A-B zeigen ein Flußdiagramm der Verfahren zum Überprüfen von Regeln.
- Fig. 11 illustriert den Betrieb der Anzeigemaschine.
- Unter Bezugnahme auf Fig. 1 ist die bevorzugte Ausführungsform der Erfindung auf einem Computersystem 100 implementiert, welches einen Zentralprozessor 102, einen Systemspeicher 103, eine Anzeigeeinheit 105, eine Tastatur 106, eine Maus 107, einen Plattenspeicher 108, einen I/O-Controller 101 und Verbindungsmittel 110, wie einen Systembus aufweist. In der bevorzugten Ausführungsform wird ein Tandy 1000 Series Computer (Tandy Corporation of Ft. Worth, Texas) als System 100 verwendet.
- Unter Bezugnahme auf Fig. 2 wird ein Computersoftwaresystem 200 gezeigt, um das Computersystem gemäß Fig. 1 zu programmieren. Das Softwaresystem 200 ist im Systemspeicher 103 und auf dem Plattenprozessor 108 abgespeichert. Das System 200 programmiert den Zentralprozessor 102, um ein grafisches Anwenderinterface (GUI) auf dem Anzeigemonitor 105 anzuzeigen. In der bevorzugten Ausführungsform ist das Hilfssystem 204 in die Tandy DeskMate Umgebung 203 implementiert, die ein Softwareinterface 205 zwischen einem Anwender 206, einer Computeranwendung 202 und einem Betriebssystem 201 darstellt. Hinsichtlich der DeskMate Umgebung 203 ist hinreichend Detail angefügt, um ein Verständnis der Erfindung zu ermöglichen. (Anhang, DeskMate Systemübersicht und DeskMate Systemarchitektur). Es wird jedoch augenscheinlich, daß ein durch diese Spezifikation informierter Fachmann die Erfindung in anderen Betriebsumgebungen implementieren könnte.
- In der bevorzugten Ausführungsform wird ein Paradigma künstlicher Intelligenz (Al) verwendet, um mit Wissen umzugehen, welches weitläufig und unbestimmt sein kann und zu mehreren Lösungen für eine gegebene Situation führt. Ein Al Modell besitzt die Fähigkeit, aus dem, was es bereits kennt, mehr Wissen zu erlernen oder zu folgern. Somit kann das System, wenn ein Anwender Hilfe anfordert und das Hilfssystem keine Lösung erhalten kann, weitere Informationen vom Anwender erhalten und sich dann an die Situation erinnern; beim nächsten Mal, wenn diese Situation auftritt, kann eine Lösung ohne erneutes Befragen des Anwenders angegeben werden.
- Unter Bezugnahme auf Fig. 3A umfaßt das Hilfssystem 300 der bevorzugten Ausführungsform eine Überprüfungseinheit 320 zum Sammeln von Daten, die in Antwort auf anwendergesteuerte Ereignisse und Systemzustände 310 erzeugt werden, eine Wissenbank 330 zum Speichern von Daten 331 zusammen mit einer Hilfsinformationsdatenbank 335, die zur Ermittlung der besten zu gebenden Hilfe verwendet wird, eine Folgerungsmaschine 340 zum Interpretieren von Daten 331 und der Hilfsinformationsdatenbank 335 in der Wissensbank 330, und einer Anzeigemaschine 350 zum. Präsentieren geeigneter Hilfsinformation 360 auf einer Anzeigeeinheit 105. Die Daten 331 umfassen eine historische Schlange 332 und ein Statusdata 333, während die Hilfsinformationsdatenbank 335 eine Vielzahl von Regeln 334 und Text 336 enthält.
- Fig. 3B ist ein Flußdiagramm, welches die generellen Verfahren des Hilfssystems 300 illustriert. Im Schritt 351 werden anwendergesteuerte Ereignisse und Systemzustände überprüft. Anwendergesteuerte Ereignisse sind die Aktivitäten, die ein Anwender in einem Anwendungsprogramm durchführt, z. B. Speichern einer Datei in einer Zeichenanwendung oder Kopieren eines Textblocks in einer Textverarbeitungsanwendung. Der Systemstatus enthält einen Maschinenstatus und einen anwendungsspezifischen Status. Im Schritt 352 wird die im Schritt 351 gesammelte Information als Fakt oder Daten 331 der Wissensbank 330 gespeichert. Spezifisch werden sequentielle anwendergesteuerte Ereignisse in der historischen Schlange 332 gespeichert und Wissen über das System wird als Statusdaten 333 gespeichert. Falls in Schritt 353 der Anwender Hilfe anfordert (z. B. Drücken der F1 Taste), dann prüft in Schritt 355 die Folgerungsmaschine 340 bekannte Daten 331 gegen Hilfssystemregeln 334. Falls jedoch keine Hilfe im Schritt 353 angefordert wird, springt die Routine zurück zum Überprüfungsschritt 351.
- Die Wissensbank 330 speichert Heuristik in Form von Regeln. Die Regeln 334, wie die im Schritt 355 verwendeten, sind Prämisse-Ergebnis-Aussagen, die von einem Anwendungsentwickler vordefiniert sind und die Folgerungsmaschine 340 bei der Auswahl einer Ausgabe führen. Zum Beispiel angenommen, ein Anwender befindet sich in einer Text-Listbox (Textverarbeitung) und keine Daten sind ausgewählt. Eine Regel, die dieses prüfen würde, ist:
- if
- no files
- running.listbox TEXT
- then
- help running text
- Diese Regel versucht durch Bestätigen ihrer Prämisse "no files." zu "greifen". Zuerst prüft sie die bekannten Daten 331 in der Wissensbank 330. Falls diese nicht in den Daten 331 enthalten ist, prüft sie nach anderen Regeln mit dieser Prämisse als deren Ergebnis. Falls im Schritt 356 eine Übereinstimmung gefunden wird, greift die entsprechende Regel als nächstes in Schrift 357. Im Schritt 358 wird als Antwort auf die spezielle Regel, die greift, ein Ergebnis angegeben und geeignete Hilfsinformation 360 angezeigt. Das Format der Regeln in dieser Ausführungsform wird nachfolgend unter Bezugnahme auf Fig. 8 beschrieben.
- Die Überprüfungseinheit 320 und ihre Funktionen werden nun im Detail beschrieben. Da die Überprüfungseinheit 320 Anwendereingaben verfolgt oder überprüft, hat sie Verarbeitungsfähigkeiten. Sie kann Daten in der Wissensbasis 330 nach Indentifizieren einer Sequenz von einem oder mehreren Ergebnissen oder Zuständen angeben. Sie kann Daten betreffend Zustände, die nicht länger wahr sind, entfernen oder widerrufen oder einen neuen Wert für alte Daten erneut angeben. Sie verfolgt die Anzahl, in der eine Aktivität von einem Anwender erfolgreich abgeschlossen worden ist.
- Die Überprüfungseinheit 320 überprüft verschiedene Typen von Information, einschließlich Maschinenzustände, anwendungsspezifische Zustände und historische Information. Der Maschinenstatus beinhaltet den gegenwärtigen Systemlevel, wie etwa innerhalb einer Anwendung oder Zubehör, Betrieb einer Komponente, oder auf dem Desktopinterface. Ein Zubehör ist eine Anwendung, die über einer anderen Anwendung "aufgeklappt" werden kann. Beispiele von Zubehör beinhalten einen Aufklapp-Rechner, Kalender oder Wecker. Eine Komponente ist ein grafisches Element, das mit einem Anwender zur Anzeige und zur Annahme von Information vom Anwender zusammenwirkt. Zum Beispiel beinhalten die Komponenten in einer Dialogbox Radioknöpfe, Druckknöpfe und Eingabefelder. Die Menüleiste ist ebenfalls eine Komponente.
- Die Überprüfungseinheit 320 überprüft auch anwendungsspezifische Zustände (application specifics) einschließlich einmalige Information zu einer Anwendung und Komponentenzustände einschließlich Information innerhalb des gegenwärtigen Maschinenstatus, der entweder anwendungsspezifisch oder allgemein ist, aber in der gleichen Weise in jeder Anwendung erzeugt wird. Zum Beispiel werden in allen Anwendungen, die eine Menüleiste aufweisen, Auswahlen durch Selektieren eines Items aus dem Menü getroffen.
- Die Überprüfungseinheit 320 verfolgt auch historische Information, die den Abschluß eines Tasks, für den Hilfe definiert wurde, indiziert. Diese Daten werden in der historischen Schlange 332 gespeichert. Ein erfolgreicher Abschluß indiziert, daß der Anwendung nicht länger Hilfe bei der Durchführung dieses Tasks benötigt. Es kann spezifischere Hilfsinformation anstelle allgemeiner Information gegeben werden, je mehr Erfahrung der Anwender mit einem Programm erwirbt.
- Die Struktur der historischen Schlange 332 wird nun im Detail beschrieben. Für jeden Zugang wird ein Zugangstyp gespeichert. Zum Beispiel fügt die Überprüfungseinheit 320, wenn der Anwender eine Dialogbox betreibt, einen Dialogboxzugang (CMP_DLG_BOX) der historischen Schlange 332 hinzu und speichert dann das zugehörige Eingabefeld, Listbox, Radioknopf, Iconknopf und Checkbox-Information. Jeder Zugang in die historische Schlange 332 kann in Abhängigkeit vom Typ des erfolgten Zugangs von variabler Länge sein. Ein einmaliger "return code" wird jeder Komponente zugewiesen, um die Unterscheidung zwischen den Komponenten zu erleichtern. Ein Fernzeiger auf eine Zugangsstruktur (z. B. Dialogbox, Komponente und/oder Menüleistenstrukturen) wird gespeichert, um direkten Zugriff auf diese Struktur zu ermöglichen. Hierauf folgend wird Dialog und Komponenteninformation kopiert. Das verwendete Format kann eine variable Länge aufweisen. Ein Unterzugangsflag wird definiert, um anzuzeigen, ob dort ein Unterzugang vorhanden ist. Zum Beispiel kann eine Komponente nach wie vor laufen, während die Menüleiste verarbeitet wird, so daß die Menüleiste Teil eines einzelnen Zugangs ist. Falls der Flag auf einen Wert wahr gesetzt wird, werden sämtliche Unterzugangsdaten gespeichert. Ein weiteres Flag wird definiert, um Tastendrucke des Anwenders, die während des Zugangs erfolgten, zu indizieren. Dies ermöglicht dem System z. B. zu ermitteln, ob der Anwender begonnen hat, Daten in eine Dialogbox einzugeben oder ob er unverzüglich Hilfe gewählt hat. Der Name der Box und Menüzugänge, wie DLGBOX, MSG BOX, LISTBOX oder MENU wird gespeichert, um eine Box von anderen zu unterscheiden. Ein drittes Flag wird definiert, um Tastendrucke des Anwenders, die vor dem Aufruf von Hilfe erfolgten, zu indizieren. Dies ermöglicht dem System zu ermitteln, was der Anwender in der Anwendung machte.
- Variablen, die eine historische Schlange 332 manipulieren, sind wie folgt definiert:
- ihm_HelpQ: Die 500 byte Schlange, eine ist in jedem Task-Datenbereich der Core Service Routine (CSR) vorhanden.
- ihm_TOP: Der physikalische Start des HelpQ-Puffers.
- ihm ENDQ: Das physikalische Ende des HelpQ-Puffers.
- ihm_start_ptr: Zeiger auf den ersten Zugang in die Schlange (welcher historisch der letzte ist).
- ihm_cur_ptr: Zeiger auf das erste Byte des letzten Zugangs in der HelpQ.
- ihm_end_ptr: Zeiger auf das letzte Byte der in die HelpQ eingegebenen Daten.
- ihm_save_ptr: Der ptr Wert des letzten erstellten Zugangs, gespeichert da ein ungültiger ptr in die HelpQ als eine NULL eingegebenen wurde.
- ihm_menu_ptr1: Doppelwortzeiger auf die gegenwärtige Menüleiste. Aktualisiert jedesmal, wenn mb_draw aufgerufen wird.
- Die Datenstruktur der Schlange kann wie folgt zusammengefaßt werden:
- dw - offset des vorangehenden Zugangs
- dw - typ
- dw - return code
- dw - struct ptr-offset
- dw - struct ptr-Segment
- db - # Unterzugänge
- db - Länge des Namens
- db(?) - Name von dlg box, msg box, Menu, Listbox
- db - keyflag - irgendwelche Maus- oder Tastenereignisse vor Zugang?
- db(?) - Unterzugangsdaten
- db - keyflag - irgendwelche Maus- oder Tastenereignisse während Zugang?
- dw - Länge der kopierten Information oder 0
- In der bevorzugten Ausführungsform tritt die Überprüfung von Information an verschiedenen Stellen im Softwaresystem 200 auf. Alle Statusveränderungen, die in einer Ausführung von Dialog und Mitteilungsboxen resultieren, werden überprüft. In der DeskMate Umgebung 203 werden Befehle vom Anwender über eine Menüleiste eingegeben und von Ereignisinterpretern, die auf Menüleistenveränderungen prüfen, verarbeitet. Zusätzlich können die Anwendungsprogramme selber Statusveränderungen in ihren jeweiligen Arbeitsbereichen indizieren.
- Die DeskMate Umgebung 203 ist in die folgende Hierarchie von Levelveränderungen unterteilt, um die Aufgabe des Überprüfers, Information zu aktualisieren, zu vereinfachen:
- 1. Top level zu Anwendung/Zubehör oder Menüleiste/Komponente;
- 2. Anwendung zu Zubehör oder Menüleiste/Komponente oder Rückkehr zu Top level;
- 3. Zubehör zu Menüleiste/Komponente oder Rückkehr zu Anwendung oder Top level.
- Zu den folgenden Zuständen wird spezifische Information benötigt: Anwendung läuft oder wurde geschlossen; welche Anwendung läuft; Zubehör läuft oder wurde geschlossen; welches Zubehör läuft; Dialogbox läuft oder wurde geschlossen; Mitteilungsbox läuft oder wurde geschlossen; Komponente läuft oder wurde geschlossen; Menüleiste wurde heruntergezogen oder zurückgegeben; Anwender auf Desktop; falls Anwender nicht im Top level, der erreichte Level vor dem gegenwärtigen. Die Variable; "level" nimmt die Werte von DeskTop, Menüleiste, Dlg_box, Message_box, Info_box oder Komponente an. Die Überprüfung kann die Statusänderung durch Erhalt der Adressaufrufe aus der DeskMate Umgebung 203 erhalten, die einen Funktionsaufruf für ein Anwendungsprogramm oder eine Ressource indizieren.
- Die Fig. 4 illustriert, wie die Überprüfungseinheit 320 nach der Adresse von Aufrufen, an denen sie interessiert ist, anfragt. In der DeskMate Umgebung 203 rufen Anwendungen Core Service Routinen (CSR) auf, um Komponenten und Dialog-, Informations- und Mitteilungsboxen laufen zu lassen. Ein Menüleisteninterpreter handhabt die Verarbeitung der Menüleiste. Deshalb können unabhängig von einer Anwendung, die Aufrufe, die die Strukturen verändern, welche die Anwendung verwendet, überprüft werden, um Informationsveränderungen zu verfolgen.
- Somit sind die Schritte wie folgt. Im Schritt 401 wird ein Zugangsaufruf zu einer Core Service Routine getätigt. In Schritt 402 wird der Komponententyp identifiziert und dann mit einer Liste von Komponenten, an denen die Überprüfungseinheit 320 interessiert ist, verglichen. Falls im Schritt 403 die Komponente in der Tafel gelistet ist, nimmt dann im Schritt 404 die Überprüfungseinheit 320 die Anwendungsparameter und ihren Strukturzeiger auf, um Daten aus den Anwendungsstrukturen zu kopieren. Die Strukturen werden nicht modifiziert. Beim Ausstieg des Dienstes und bevor die Steuerung der Anwendung zurückgegeben wird, greift die Überprüfungseinheit 320 im Schritt 405 erneut auf Daten in den Strukturen zu, dieses Mal zum Zweck von Aktualisierungen der historischen Information.
- Da eine Unterscheidung zwischen Anwendungen und Zubehör gemacht wird, wird eine Variable "program" definiert, um zu indizieren, welches spezielle Programm läuft. Programm nimmt den Wert des Programmnamens, welcher das gleiche Identifizierungsmittel für die Hilfsinformationsdatenbank 335 im Zusammenhang mit der Anwendung oder Zubehör ist, an.
- Zwei Ereignisinterpreter nehmen Menüleistenveränderungen auf. Das ausgewählte Menü ist wichtig für den Status, während das zurückgegebene Item wichtig für die Historie ist. Ein Ereignisinterpreter hoher Priorität nimmt die Menüleistenveränderungen auf, wenn Hilfe angefordert wird und ein Ereignisinterpreter niedriger Priorität erledigt alle Veränderungen aus dem Menüleisten-Returncode. Der Interpreter hoher Priorität prüft Ereignisse zuerst vor jeglicher weiterer Verarbeitung durch das DeskMate System. Auf der anderen Seite prüft der Interpreter niedriger Priorität Ereignisse, nachdem sie durch das DeskMate System verarbeitet worden sind.
- Die Figuren 5A-B illustrieren das Verfahren der Ereignisinterpreter. Im Schritt 501 registriert die Anwendung die Menüleiste mit der Überprüfungseinheit 320. Falls der Anwender bei Schritt 502 die F1 (Hilfe) Taste ausgewählt hat, wird dann bei Schritt 503 die Statusinformation gemäß in welchem Level das System betrieben wird (indiziert durch die Variable "level") aktualisiert. Falls level im Schritt SO&sub4; null entspricht, ist dann die Menüleiste das letzte veränderte Element, von daher wird eine Menüleistenaktualisierung benötigt. Bei Schritt 505 führt der Menüleisteninterpreter eine Aktualisierung durch. Jedoch wird, falls "level" nicht null ist, der Schritt 505 übersprungen. Bei Schritt 506 prüft der Interpreter niedriger Priorität den Ereignistyp. Falls dieser im Schritt 507 die Menüleiste ist (level = menubar), dann führt im Schritt 508 der Interpreter niedriger Priorität eine Historie-Aktualisierung durch, die durch Aufnahme des Returncode und Vergleich seines Wertes mit den Menüleisten-Menüs durchgeführt wird. Der mit dem Returncode korrespondierende String ist das interessierende Item. Bei Schritt 509 springt die Routine zurück auf Schritt 501, um einen anderen F1-Tastendruck zu erwarten.
- Die mit den Funktionen der obigen Komponenten assoziierten Regeln sind in der Weise geschrieben, daß falls eine Komponente einen Titelstring aufweist, dieser String verwendet wird, um ihre Hilfequelle zu identifizieren. Falls eine Komponente keinen Titelstring aufweist, wird dann der Name der Komponente als ihr Identifikationsmerkmal verwendet.
- Da alle Anwendungen die Merkmale der DeskMate Umgebung 203 nutzen, ist eine Standard-Wiedergabe von Daten 331 und Regeln 334 möglich: Zum Beispiel können die folgenden Variablen verwendet werden, um Ereignisse und Zustände zu indizieren:
- menu.selected
- menu.item.selected
- dlg.box.running
- dlg.box.focus
- msg.box.running
- cmp.running
- listbox.item.selected
- checkbox.item.selected
- Anwendungsspezifische Information wird erhalten, indem die Anwendung Daten in den gegenwärtigen Statusdaten 333 in der Wissensbank 330 angibt. Die Anwendung vollbringt dies durch Durchführen eines Aufrufs zu einer "Assert"-Funktion mit den Parametern "Variable" und "Wert", die Zeiger auf Strings sind. Die Variable sollte eine Variable in der Regelprämisse erfüllen, d. h. die Regel muß im voraus definiert sein. Eine Anwendung sollte jegliche historische Information in Bezug auf ihre einmalige Statuskonfiguration angeben. Anwendungsdaten werden aus den gegenwärtigen Statusdaten 333 von der Anwendung durch Aufrufen einer "Retract"-Funktion entfernt, da diese Daten nicht länger wahr sind. Obwohl die Anwendungen direkt Daten in der Wissensbank 330 angeben können, ermitteln sie nicht, welche Hilfe zu geben ist. Statt dessen liefern sie die Eingaben für diese Ermittlung.
- Historische Information wird durch Verwendung einer Anwender I. D. zur Identifikation der einmaligen historischen Information des Anwenders erhalten. Diese historische Information wird am Ende eines Taskabschlusses aktualisiert. Wenn der Anwender z. B. erfolgreich eine Kopierfunktion ausgeführt hat, erkennt die Überprüfungseinheit 320 dies durch Überprüfung, daß der Anwender "text" ausgewählt hat und dann "kopieren" aus dem Dateimenü ausgewählt hat. Nachdem sie ermittelt hat, daß der Anwender diesen Task beherrscht, aktualisiert die Überprüfungseinheit 320 die historische Information des Anwenders. Für historische Information, die mit den spezifischen Daten der Anwendung assoziiert sind, aktualisiert die Anwendung selbst die Information durch Aufruf der Funktion UpdateHistory mit einem Parameter, der auf einen die gerade abgeschlossene Aktivität repräsentierenden String zeigt.
- Fig. 6 faßt das Verfahren zur Verarbeitung der Ereignisse von den Ereignisinterpretern zusammen. Bei Schritt 601 werden Ereignisse durch Prüfung der Mauskoordinaten und des Ereignistyps und Werts verarbeitet. Im Schritt 602 werden Ereignisse durch Versuche, eine Regel, die eine Dateneingabe oder einen Widerruf in der Wissensbank 330 durchführen würde, greifen zu lassen oder auszulösen, identifiziert. Diese Regeln repräsentieren alle Bedingungen, die zum Angeben oder Widerrufen von Daten wahr sein müssen. Falls eine Regel im Schritt 603 greift, dann ist das Ergebnis identifiziert, Schritt 604. Falls die Regel nicht greift, dann ist das Ereignis nicht identifiziert, Schritt 605.
- Fig. 7 illustriert den in Schritt 602 (Fig. 6) verwendeten Ansatz zum Identifizieren eines Tasks (Sequenz von Ereignissen). In Schritt 701 wird ein Tasten- oder Mausereignis geprüft. Im Schritt 702 wird dann, falls das Ergebnis nicht mit der ersten Prämissenlinie in allen mit dem Systemlevel assoziierten Regeln übereinstimmt, das Ereignis in Schritt 704 verworfen. Andernfalls werden im Schritt 703 alle Regeln, die greifen, auf einer Agenda plaziert, die den/die wahrscheinlichsten Task(s) repräsentiert. Bei Schritt 705 werden die Regeln durch Prüfung der nächsten Tasten oder Mausereignisse, die hereinkommen, bestätigt oder widerlegt. Falls alle Regeln in der Agenda bei Schritt 706 fehlgehen, wird dann die erste analysierte Taste verworfen und die nächste Taste zur Suche nach neuen Regeln verwendet, Schritt 708; anderenfalls wird in Schritt 707 die Agenda gelöscht und die Prozedur springt zurück zu Schritt 701, um das nächste Tasten/Mausereignis zu prüfen.
- Da die überprüfte Information abhängig vom Maschinenstatuslevel ist, werden die generierten Daten gemäß diesen Levels unterteilt. Die Überprüfungseinheit 320 versucht Daten anzugeben, die für einen gegebenen Level gelten. Jede Anwendung oder jedes Zubehör kann als ein selbständiges Objekt (als ein Level) aufgefaßt werden, das bestimmte Aktivitäten durchführt, von denen einige gleich mit anderen Objekten sind. Daher ist es günstig, die Überprüfungsdatenstruktur in "Frames" zu unterteilen. Ein Frame enthält die Aktivitäten, die jede Anwendung beherrscht, mit gegenwärtigen Werten und historischer Information. Die Frames weisen Slots zum Speichern der von den Regeln verwendeten Daten oder einem Zeiger auf einen anderen Frame auf.
- In der bevorzugten Ausführungsform werden die Anwendereingabe und der Systemstatus durch, die Überprüfungseinheit 320 zur Weitergabe als Daten an die Wissensbank 330 zwecks Speichern analysiert. Befehle zum Steuern dieses Datenflusses zu und von der Wissensbank 330 sind definiert. Daten werden durch den Befehl Assert in Frames gespeichert. Alte Information wird durch den Befehl Retract gelöscht. Eine Abfrage an die Wissensbank 330, um Information zu erlangen, wird durch einen Befehl Query durchgeführt. Vorangehende Daten werden durch einen Befehl Reassert erneut angegeben.
- Die Wissensbank 330 enthält formelles (tradionelle Datenbankinformation) und informelles (heuristisches) Wissen, das regelbasiert ist. Fig. 8 demonstriert die Regeltaxonomie. Am unteren Level der Regelhierarchie 800 steht eine einzelne Regel 804, die ein Muster-zu-Handlungs-Ziel definiert. Das Muster ist als die linke Seite einer Regel bekannt, während die Handlung die rechte Seite ist. Die Regeln verwenden die üblichen logischen Operatoren AND, OR und NOT, ebenso wie boolsche Operatoren wie IF, THEN und ELSE. Zusätzlich indiziert das Schlüsselwort TEST, daß ein Vergleich durchzuführen ist. Die rechte Seite einer Regel kann eine ELSE-Bedingung aufweisen, eine Angabe, einen Widerruf, eine andere Regel oder einen Prozeduraufruf. Zum Beispiel könnte in der Regel:
- IF a THEN b, ELSE c
- b eine Angabe, die Daten b den Daten 331 hinzufügen würde, sein; mehrfache Datenangaben sind möglich. Ein Widerruf würde Daten b aus den Daten 331 löschen:
- IF a THEN (RETRACT b).
- "Eine andere Regel" könnte wie folgt eingebettet sein:
- IF a THEN b, IF (TEST (= bc)) THEN d.
- Ein Beispiel eines Prozeduraufrufs würde sein:
- IF a THEN (CALL HelpTutorial (a)).
- Verknüpfte-Regeln 803 sind eine Verknüpfung zwischen Regeln, die das gleiche Ergebnis teilen. Dies ist eine Gestaltungsausführung, die dazu gedacht ist, den Folgerungsprozeß durch Kennen von alternativen Lösungswegen einfacher zu machen. Regelgruppen 802 gruppieren Regeln mit einem gemeinsamen Zweck. Regeln z. B. mit einem Ergebnis, das indiziert, welche spezifische Hilfe zu geben ist, sind alle Regeln, die den Zielstatus ermitteln. Eine Gruppe kann ein (optionales) Prioritätsidentifikationsmerkmal aufweisen, so daß die wichtigsten oder spezifischen Regeln bei der Suche zuerst ausprobiert werden können. Dies impliziert nicht, daß eine Regelgruppe bei einer Suche ausgelassen wird. Regelklassen 801 sind eine weitere Konzeptualisierung von Regeln. Sie separieren individuelle Wissensbanken, die jeweils ein eigenes Identifikationsmerkmal aufweisen, durch welches sie unterschieden werden. Dieses Idenfikationsmerkmal kann von einem Satz Steuerungsregeln verwendet werden, die die Maschinenstatusinformationen zum Indizieren von Wissensbankzugriff verwenden.
- Die Prämisse jeder Regel enthält ebenfalls formelles oder informelles Wissen. Das informelle Wissen wird formell, wenn eine Regel erfolgreich greift. Das formelle Wissen wird in Framestrukturen in der Wissensbank 330 gespeichert und hierauf aus dieser zugegriffen. Frames können aus anderen Frames erstellt werden, die auch geteilt werden können. Mit dieser Datenstruktur ist es möglich, nur auf den mit der gegenwärtigen Statusinformation assoziierten Frame zuzugreifen, wenn die Überprüfungseinheit 320 die historischen Informationen des Anwenders aktualisiert. Die Frameslots sind ähnlich jedweder verknüpfter Liste, ausgenommen sie repräsentieren Handlungen und Attribute eines Objekts oder Konzepte, die die Frames repräsentieren. Da Frames die Beziehung zwischen einer Anwenderaktivität und der assoziierten Heuristik indizieren, die zum interpretieren dieser Aktivität verwendet wird, ist es einfach, nur auf relevante Information zuzugreifen. Fig. 9 illustriert einen Frame 901 mit seinen zugehörigen Slots 902.
- Regelklassen 801 sind aufgebaut aus Zeigern auf die Variablen und Werte in den Frames. Die Slots, die einen anderen Frame enthalten, stellen tatsächlich eine andere Gruppe innerhalb einer Regelklasse dar. In einem framebasierten Schlußfolgerungssystem wählt man den zu bestätigenden Frame durch Auffüllen von Slotwerten aus: Die Slots enthalten die Regeln. Der erfolgreiche Abschluß eines Frames ergibt eine Lösung.
- Die Syntax zum Schreiben der Regeln lautet:
- BEGIN.RULECLASS
- < id>
- BEGIN.RULEGROUP
- < id>
- IF
- (< Variable> IS < Wert> )
- (< Wert> )
- (NOT (< Variable> IS < Wert> ))
- (TEST (< Variable> EQ < #> ))
- THEN
- (< Wert> )
- END.RULEGROUP
- END.RULECLASS
- Zum Zwecke der Illustration und nicht zur Beschränkung, können die Regeln als Datenstrukturen codiert werden (dargestellt in der Sprache C):
- Die Eingaben in die Wissensbank 330 sind die von der Überprüfungseinheit 320 gesammelten Daten. Die Ausgaben der Wissensbank 330 sind Daten 331 und Regeln 334, die die Folgerungsmaschine 340 zur Prüfung auswählt und Hilfsinformationstext 336, den die Anzeigemaschine 350 verarbeitet. Die Regeln 334 sind vom Anwendungsentwickler vordefiniert. Die Frames indizieren die Beziehung zwischen der Anwenderaktivität und der assoziierten Heuristik, die zur Interpretation der Aktivität verwendet wird, so daß es einfacher gemacht wird, nur auf die benötigte Information zuzugreifen. Die wissensbasierten Regeln sind so strukturiert, daß offensichtliche Assoziationen zwischen Regeln in der Wissensbank 330 eingebunden werden können, um die Gestaltung und die Folgerungen aus diesen Regeln zu vereinfachen.
- Die Folgerungsmaschine 340 interpretiert Daten 331 und Regeln 334 in der Wissensbank 330, um dem Anwender eine Hilfslösung zu geben, oder sie fragt intelligent nach weiterer Information, um eine Lösung zu finden. In der bevorzugten Ausführungsform arbeitet die Folgerungsmaschine 340 unter Einsatz eines rückwärtsverkettenden Verfahrens. Dieses Verfahren beginnt mit einem Zielstatus (eine spezielle Art von Hilfe) und versucht, diesen durch Erreichen von ursprünglichen bekannten Daten zu bestätigen.
- Wie die Fig. 10A-B illustrieren, sind die von der Folgerungsmaschine 340 befolgten Schritte die folgenden. Im Schritt 1001 wird auf die Wissensbank 330 gemäß dem Systemstatuslevel zugegriffen. Im Schritt 1002 wird eine Gruppe von Regeln (Ziel) in Abhängigkeit vom Systemstatus aus der Wissensbank 330 ausgewählt und als eine Hypothese verwendet. Als nächstes wird im Schritt 1003 ein Versuch unternommen, das Ergebnis jeder Regel durch Bestätigung ihrer Prämisse zu bestätigen. Falls im Schritt 1004 die geprüfte Prämisse das Ergebnis einer anderen Regel ist, wird sie auf einen Stack geschoben (last-in first-out Struktur des Systemspeichers 103) und es wird ein Versuch unternommen, die andere Regelprämisse im Schritt 1005 zu belegen. Im Schritt 1006 wird, falls eine Prämisse bestätigt ist, diese in einer Arbeitstatsache oder Datenliste bei Schritt 1007 angegeben. Anderenfalls, falls die Prämisse fehlgeht, wird in Schritt 1008 eine Suche nach einer Regel mit dem gleichen Ergebnis durchgeführt, welche die Folgerungsmaschine 340 dann zu bestätigen versucht. Im Schritt 1009 hat, wenn alle Prämissen in der Regel bestätigt sind, die Regel gegriffen und das Ergebnis kann in Schritt 1010 angegeben werden. In Schritt 1011 wird dieses Verfahren wiederholt, bis dort keine Zielzustände zum Analysieren mehr vorhanden sind oder keine Lösung gefunden wird. Im letzteren Fall ist die Wissensbank 330 unvollständig und von daher fragt die Folgerungsmaschine 340 beim Anwender nach weiteren Informationen an oder erläutert statt dessen dem Anwender, daß für das spezielle Szenario keine Hilfe definiert ist.
- Die Eingaben in die Folgerungsmaschine 340 sind Daten 331 und Regeln 334, die in der Wissensbank 330 enthalten sind. Einige der Regeln 334 steuern andere Wissensbanken, die ausgewählt werden können. Die Folgerungsmaschine 340 prüft zuerst die Regeln 334, um die passende Regelklasse 801 auszuwählen. Da die Gruppen 802 unter der Klasse 801 indizieren, ob sie Zielzustände sind, kann die Maschine 340 auch indizieren, welche Regeln als Hypothesen eingesetzt werden. Die abschließende Ausgabe aus der Folgerungsmaschine 340 ist ein Hilfs-"Kennzeichen", welches eine spezielle Hilfslösung indiziert. Zusätzlich erstellt die Maschine eine temporäre Ausgabe von Daten, die während der Bestätigung der Regeln angegeben werden.
- Die Anzeigemaschine 350 ist ein Interface zwischen der Ausgabe der Folgerungsmaschine 340 und dem Hilfstext 336, welche dem Anwender einen einfachen Zugriff auf die hilfreichsten Hilfethemen ermöglicht. Die Anzeigemaschine 350 bietet allgemeine bis in die Tiefe gehende Hilfe für einen Anwender an. Sie verarbeitet das Hilfekennzeichen der Folgerungsmaschine, um kontextsensitive Hilfe anzubieten. Zusätzlich besitzt die Hilfsinformation selbst Kennzeichen, die von der Anzeigemaschine 350 dazu verwendet werden, weitere Hilfsinformation zu lokalisieren. Dies ermöglicht einem Anwender, spezifische Hilfe aus einer Unterauswahl von Hilfsinformation auszuwählen.
- Die von der Anzeigemaschine 350 genutzte Hilfsinformationsdatenstruktur ist für jede Anwendung/Zubehör und Systemressourceinterfaces definiert. Hilfe, die über mehrere Anwendungen wiederholt wird, ist in Gruppen unterteilt. Die Hilfsinformation, die angegeben wird, ist für novice-, intermediate- und advanced-Anwender individualisiert. Es wird ein Anzeigeformat eingesetzt, welches einem Anwender ermöglicht, ein einzelnes Item an Hilfe aus einer vorgeschlagenen Liste auszuwählen, es dem Anmelder ermöglicht, die Auswahl von Hilfe fortzusetzen, bis er abbrechen möchte und es dem Anwender ermöglicht, die Hilfethemen nach einem speziellen Thema zu durchsuchen.
- Die Struktur, in welcher auf die Hilfsinformation zugegriffen und diese gespeichert wird, ist nach Anwendung/Zubehör oder Systemkomponente (benötigt spezifische Namensidentifikation, kein Typ), Erfahrungslevel des Anwenders, Art (automatisch ermittelt oder vom Anwender aufgerufen) und Themenidentifikationsmerkmal klassifiziert. Eine Hilfsstruktur (in der Sprache C) kann z. B. sein:
- struct Help Source {
- int Subject;
- int Kind;
- int HelpLevel;
- char *pTopicString };
- die aufgefüllt werden kann durch:
- Subject gleich TEXT_SUBSTITUTION
- Kind gleich AUTO
- HelpLevel gleich NOVICE
- und pTopicString zeigt auf "Text Subsitution."
- Unter Bezugnahme auf Fig. 11 wird nun die Verarbeitung der Hilfsinformation in Anzeigemaschine 350 im Detail beschrieben. Die Hilfsinformationsdatenbank 335 ist eine Text 336 und Regeln 334 - Felder enthaltende Datenbank, d. h. Hilfsinformationstext 336 ist mit Hilfsinformationsregeln 334 verknüpft. Zusätzlich ist ein Kennzeichen 1102 zur Wiedergabe der Lösung, die eine Regel erzeugt, vorgesehen. Die Anzeigemaschine 350 verbindet das Kennzeichen 1102 mit einem Lösungskennzeichen 1101 der Folgerungsmaschine 340. Der korrespondierende Text (aus Text 336) ist der aktuelle Text, der als Hilfsinformation 360 zur Anzeigeeinheit 105 geschickt wird.
- Die Organisation der Regeln 334 ist wie folgt. Sie enthält die folgenden Felder: Grp, Rule#, PorC#, Var#, Var, Val, Bind, KeyW, and Q#. Grp ist eine Regelgruppe. Gruppe 0 ist stets die Gruppe, in der die Regeln plaziert sind, die eine Lösung angeben. Wenn diese Regeln irgendeine andere Regel zum Greifen veranlassen, sind diese Regeln in einer anderen Gruppe. Rule# ist die Nummer der Regel. Die Regeln sind durch eine Regelnummer sortiert, da man wünschen könnte, eine Regel vor einer anderen auf Greifen auszuprobieren. PorC# ist eine Prämissen oder Ergebnisnummer. Die Records auf der Tafel sind ebenfalls nach PorC# sortiert. Das Ergebnis ist Nummer 0, weil es das erste aus der Tafel gezogene Element ist, wenn die Folgerungsmaschine 340 beginnt, Regeln greifen zu lassen. (Dies deshalb, weil sie rückwärts- verkettend vorgeht - Start mit dem Ergebnis und dann Bestätigen der Prämissen). Var# ist ein Identifikationsmerkmal für die Maschine, eine schnellere Suche durchzuführen. Jede neue zur Tafel hinzugefügte Variable besitzt ein einziges Identifikationsmerkmal. Die Variablen sind DeskMate Komponenten, wie eine Dialogbox. Var, das Variablenfeld, ist ein String, der eine Variable repräsentiert, für die ein Wert erwartet wird, wie etwa "running.cmp" (INAKTIVES FELD). Value ist das Stringfeld, welches einen Wert enthält. Falls der Wert der gegenwärtige für die Variable ist, dann trifft die Prämissenlinie zu. Bind ist eine Bindevariable. Falls eine Regel eine Bindung aufweist, wird die Variable an den gegenwärtig bekannten Wert der Variable gebunden. Dies eliminiert die Wiederholung von Regeln, die exakt das Gleiche tun. Nur Prämissen können binden. KeyW ist eine Nummer, die die Negation (NOT) einer Prämisse oder einen TEST oder CALL indiziert. TEST führt Nummernvergleiche aus und setzt voraus, daß das Wertstringfeld ein numerischer Wert ist. CALL wird zum Ausführen einer vordefinierten Funktion verwendet. Die Parameter der Funktion sind im Wertfeld plaziert. Q# ist die Nummer in der Schlange 332, für die ein Prämissentest angewendet wird. Falls die Schlangennummer 0 entspricht, wird angenommen, daß die Prämisse keine vordefinierten Daten verwendet.
- Obwohl die Erfindung in einigen Details mit spezifischem Bezug zu einer einzelnen bevorzugten Ausführungsform und gewissen Alternativen beschrieben wurde, ist nicht die Absicht vorhanden, die Erfindung auf diese spezielle Ausführungsform oder diese spezifischen Alternativen zu beschränken. Zum Beispiel könnte ein Fachmann ein solches Hilfssystem in einer anderen Interfaceumgebung oder ohne jegliche Interfaceumgebung implementieren. Rückwärts-verkettend ist nur eine von vielen möglichen Al-Techniken, die zur Verarbeitung von Daten und Regeln verwendbar sind, andere mögliche Techniken schließen vorwärts-verkettende und Regel-Wert-Verfahren ein. Die Eingabeeinheit ist nicht auf eine Tastatur und eine Zeigeeinheit beschränkt, sondern erwägt jegliche Mittel, durch die Daten in einen Computer gelangen, wie etwa durch Spracherkennung. Die Hilfsinformation ist nicht auf ein spezifisches Medium beschränkt, sondern schließt statt dessen jegliche Übermittlung von Hilfsinformation, wie grafische Darstellungen, ein. Der tatsächliche Umfang der Erfindung ist nicht durch die vorangegangene Beschreibung, sondern durch die nachfolgenden Ansprüche definiert.
Claims (25)
1. Verfahren zur Unterstützung eines Anwenders eines Computerprogramms in einem
Computersystem, wobei das Verfahren unabhängig vom Computerprogramm
arbeitet, umfassend die Schritte:
speichern einer Hilfsinformations-Datenbank;
überprüfen einer Reihe von anwendergesteuerten Ereignissen an einer
Eingabeeinheit;
erzeugen von Daten, die die Reihe von anwendergesteuerten Daten indizieren;
speichern der erzeugten Daten in einer Wissensbank;
speichern einer Vielzahl von Regeln zum Analysieren der erzeugten Daten, um eine
geeignete Hilfsinformation zu ermitteln;
feststellen einer Anforderung von Hilfsinformation durch den Anwender;
prüfen der Regeln gegen die erzeugten Daten unter Verwendung einer
Folgerungsmaschine;
auswählen der geeigneten Hilfsinformation aus der Hilfsinformations-Datenbank als
Antwort auf den Prüfschritt; und
anzeigen der ausgewählten Hilfsinformation an den Anwender.
2. Verfahren nach Anspruch 1, wobei der Überprüfungsschritt ferner ein Überprüfen
eines Systemzustandes umfaßt.
3. Verfahren nach Anspruch 2, wobei der Schritt des Überprüfens eines
Systemzustandes ferner ein Überprüfen eines Maschinenzustandes, eines
Anwendungszustandes, eines Zubehörzustandes und eines Komponentenzustandes
umfaßt.
4. Verfahren nach Anspruch 1, wobei der Überprüfungsschritt ferner die Schritte
umfaßt:
registrieren einer Anwendungsmenüleiste;
überprüfen, ob der Anwender Hilfe angefordert hat;
aktualisieren einer Zustandsinformation; und
aktualisieren einer Menüleiste.
5. Verfahren nach Anspruch 1, wobei der Prüfschritt die Schritte umfaßt:
(a) auswählen einer ersten Gruppe von Regeln aus der Vielzahl von Regeln, die mit
einer ersten Vielzahl von anwendergesteuerten Ereignissen korrespondieren;
(b) prüfen jeder Regel in der ersten Gruppe von Regeln;
(c) falls eine Regel bestätigt ist, abspeichern der Regel als eine bestätigte Regel
zusammen mit einer Vielzahl von bestätigten Regeln; und
(d) wiederholen der Schritte in (a)-(c) für eine nachfolgende Gruppe von Regeln,
bis eine Regel bestätigt ist.
6. Verfahren nach Anspruch 5, wobei Schritt (b) ein Vergleichen einer Prämisse aus
jeder der ersten Gruppe von Regeln mit den erzeugten Daten umfaßt.
7. Verfahren nach Anspruch 5, wobei Schritt (c) umfaßt:
falls eine Regel bestätigt ist, speichern dieser Regel als eine bestätigte Regel
zusammen mit einer Vielzahl von verknüpften bestätigten Regeln.
8. Verfahren nach Anspruch 1, wobei der Schritt des Erzeugens der Daten ein Erzeugen
einer historischen Schlange der anwendergesteuerten Ereignisse umfaßt.
9. Verfahren nach Anspruch 1, wobei der Schritt des Regelspeicherns ein Speichern
von Prämisse-Ergebnis-Aussagen aus der Hilfsinformations-Datenbank umfaßt.
10. Verfahren nach Anspruch 1, wobei der Anzeigeschritt ein Anzeigen von textlichen
Hilfsinformationen an den Anwender umfaßt.
11. Verfahren nach Anspruch 1, wobei der Anzeigeschritt ein Anzeigen von grafischen
Hilfsinformationen an den Anwender umfaßt.
12. Verfahren nach Anspruch 1, wobei der Prüfschritt ein Prüfen der Regeln gegen die
erzeugten Daten unter Verwendung einer rückwärtsverkettenden
Folgerungsmaschine umfaßt.
13. Verfahren nach Anspruch 1, wobei der Prüfschritt ein Prüfen der Regeln gegen die
erzeugten Daten unter Verwendung einer vorwärts-verkettenden
Folgerungsmaschine umfaßt.
14. Verfahren nach Anspruch 1, umfassend die weiteren Schritte:
falls die überprüfte Reihe von Ereignissen der Wissensbank unbekannt ist, angeben
von Daten in der Wissensbank, um die unbekannte Reihe zu indizieren; falls die
überprüfte Reihe von Ereignissen der Wissensbank widerspricht, widerrufen von
Daten in der Wissensbank, die der Reihe widersprechen; und, falls die überprüfte
Reihe von Ereignissen bereits der Wissensbank bekannt ist, erneutes angeben von
Daten in der Wissensbank, um die bereits bekannte Reihe zu indizieren.
15. Hilfsinformationssystem zur Unterstützung eines Anwenders, umfassend:
einen Computer, der einen Prozessor und einen Speicher aufweist;
eine mit dem Computer verbundene Anzeigeeinheit;
eine mit dem Computer verbundene Eingabeeinheit;
mit der Eingabeeinheit verbundene Überprüfungsmittel zum Überprüfen einer
Abfolge von anwendergesteuerten Ereignissen und zum Erzeugen von Daten, die die
Ereignisse indizieren;
eine Wissensbank, die mit den Überprüfungsmitteln verbunden und im Speicher
gespeichert ist, wobei die Wissensbank die erzeugten Daten, eine Vielzahl von
Regeln zum Analysieren der erzeugten Daten, um geeignete Hilfsinformation zu
ermitteln, und eine Hilfsinformations-Datenbank zum Speichern der geeigneten
Hilfsinformation umfaßt;
Folgerungsmaschinenmittel, die mit der Wissensbank verbunden sind, um die
Regeln auf die Daten anzuwenden und eine Folgerungsmaschinenausgabe zu
erzeugen; und
Anzeigemaschinenmittel, die mit der Folgerungsmaschine und mit der
Hilfsinformations-Datenbank verbunden sind, um die Folgerungsmaschinenausgabe
zu interpretieren und um geeignete Hilfsinformation zur Anzeige durch die
Anzeigeeinheit an den Anwender als Antwort auf eine Anforderung durch den
Anwender auszuwählen.
16. System nach Anspruch 15, wobei die Überprüfungsmittel ferner Mittel zum
Überprüfen eines Systemzustandes umfassen.
17. System nach Anspruch 16, wobei die Mittel zum Überprüfen eines Systemzustandes
Mittel zum Überprüfen eines Maschinenzustandes, eines Anwendungszustandes,
eines Zubehörzustandes und eines Komponentenzustandes umfassen.
18. System nach Anspruch 15, wobei die Überprüfungsmittel eine Vielzahl von
Ereignisinterpretern umfassen.
19. System nach Anspruch 15, wobei die Wissensbank ferner eine historische Schlange
umfaßt.
20. System nach Anspruch 15, wobei die Folgerungsmaschinenmittel
rückwärtsverkettende Folgerungsmaschinenmittel umfassen.
21. System nach Anspruch 15, wobei die Folgerungsmaschinenmittel
vorwärtsverkettende Folgerungsmaschinenmittel umfassen.
22. System nach Anspruch. 15, wobei die Hilfsinformation textliche Hilfsinformation
umfaßt.
23. System nach Anspruch 15, wobei die Hilfsinformation grafische Hilfsinformation
umfaßt.
24. System nach Anspruch 15, ferner umfassend:
mit dem Speicher verbundene Mittel zum Aktualisieren der Wissensbank mit der
überprüften Reihe von Ereignissen.
25. System nach Anspruch 24, wobei die Mittel zum Aktualisieren der Wissensbank
Programm-Mittel zum Anweisen des Prozessors umfassen, um die Schritte
durchzuführen:
falls die überprüfte Reihe von Ereignissen der Wissensbank unbekannt ist, angeben
von Daten in der Wissensbank, um die unbekannte Reihe zu indizieren;
falls die überprüfte Reihe von Ereignissen der Wissensbank widerspricht, widerrufen
von Daten in der Wissensbank, die der Reihe widersprechen; und
falls die überprüfte Reihe von Ereignissen bereits der Wissensbank bekannt ist,
erneutes angeben von Daten in der Wissensbank; um die bereits bekannte Reihe zu
indizieren.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US07/562,046 US5103498A (en) | 1990-08-02 | 1990-08-02 | Intelligent help system |
| PCT/US1991/005062 WO1992002880A1 (en) | 1990-08-02 | 1991-07-17 | Intelligent help system |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| DE69130766D1 DE69130766D1 (de) | 1999-02-25 |
| DE69130766T2 true DE69130766T2 (de) | 1999-09-02 |
Family
ID=24244558
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DE69130766T Expired - Lifetime DE69130766T2 (de) | 1990-08-02 | 1991-07-17 | Intelligentes hilfssystem |
Country Status (6)
| Country | Link |
|---|---|
| US (2) | US5103498A (de) |
| EP (1) | EP0541712B1 (de) |
| AU (1) | AU8401991A (de) |
| DE (1) | DE69130766T2 (de) |
| SG (1) | SG48223A1 (de) |
| WO (1) | WO1992002880A1 (de) |
Families Citing this family (245)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5651100A (en) * | 1990-06-28 | 1997-07-22 | Omron Corporation | Approximate reasoning apparatus |
| US5222197A (en) * | 1990-06-28 | 1993-06-22 | Digital Equipment Corporation | Rule invocation mechanism for inductive learning engine |
| US5430836A (en) * | 1991-03-01 | 1995-07-04 | Ast Research, Inc. | Application control module for common user access interface |
| US5586218A (en) * | 1991-03-04 | 1996-12-17 | Inference Corporation | Autonomous learning and reasoning agent |
| DE69230968D1 (de) * | 1991-03-04 | 2000-05-31 | Inference Corp | Fall-basiertes deduktives system |
| ATE208067T1 (de) * | 1991-03-18 | 2001-11-15 | Echelon Corp | Programmiersprachestrukturen für ein netzwerk zur übertragung, abtastung und steuerung von informationen |
| JPH0520044A (ja) * | 1991-07-15 | 1993-01-29 | Personal Joho Kankyo Kyokai | ユーザインタフエース装置 |
| US6162060A (en) * | 1991-08-09 | 2000-12-19 | Texas Instruments Incorporated | System and method for the delivery, authoring, and management of courseware over a computer network |
| US5455949A (en) * | 1991-09-06 | 1995-10-03 | International Business Machines Corporation | Method for representing and signaling run-time program conditions |
| JPH0831041B2 (ja) * | 1991-09-06 | 1996-03-27 | インターナショナル・ビジネス・マシーンズ・コーポレイション | プログラム条件処理方法およびコンピュータ・システム |
| US5555346A (en) * | 1991-10-04 | 1996-09-10 | Beyond Corporated | Event-driven rule-based messaging system |
| US5283856A (en) * | 1991-10-04 | 1994-02-01 | Beyond, Inc. | Event-driven rule-based messaging system |
| US5627764A (en) * | 1991-10-04 | 1997-05-06 | Banyan Systems, Inc. | Automatic electronic messaging system with feedback and work flow administration |
| US5903454A (en) * | 1991-12-23 | 1999-05-11 | Hoffberg; Linda Irene | Human-factored interface corporating adaptive pattern recognition based controller apparatus |
| US8352400B2 (en) | 1991-12-23 | 2013-01-08 | Hoffberg Steven M | Adaptive pattern recognition based controller apparatus and method and human-factored interface therefore |
| US10361802B1 (en) | 1999-02-01 | 2019-07-23 | Blanding Hovenweep, Llc | Adaptive pattern recognition based control system and method |
| USRE47908E1 (en) | 1991-12-23 | 2020-03-17 | Blanding Hovenweep, Llc | Ergonomic man-machine interface incorporating adaptive pattern recognition based control system |
| USRE48056E1 (en) | 1991-12-23 | 2020-06-16 | Blanding Hovenweep, Llc | Ergonomic man-machine interface incorporating adaptive pattern recognition based control system |
| US6081750A (en) * | 1991-12-23 | 2000-06-27 | Hoffberg; Steven Mark | Ergonomic man-machine interface incorporating adaptive pattern recognition based control system |
| USRE46310E1 (en) | 1991-12-23 | 2017-02-14 | Blanding Hovenweep, Llc | Ergonomic man-machine interface incorporating adaptive pattern recognition based control system |
| US6400996B1 (en) | 1999-02-01 | 2002-06-04 | Steven M. Hoffberg | Adaptive pattern recognition based control system and method |
| US6850252B1 (en) | 1999-10-05 | 2005-02-01 | Steven M. Hoffberg | Intelligent electronic appliance system and method |
| US7242988B1 (en) | 1991-12-23 | 2007-07-10 | Linda Irene Hoffberg | Adaptive pattern recognition based controller apparatus and method and human-factored interface therefore |
| US6418424B1 (en) | 1991-12-23 | 2002-07-09 | Steven M. Hoffberg | Ergonomic man-machine interface incorporating adaptive pattern recognition based control system |
| US6343991B1 (en) * | 1997-10-01 | 2002-02-05 | Brad A. Armstrong | Game control with analog pressure sensor |
| US5317677A (en) * | 1992-04-16 | 1994-05-31 | Hughes Aircraft Company | Matching technique for context sensitive rule application |
| JP2939050B2 (ja) * | 1992-05-26 | 1999-08-25 | シャープ株式会社 | デ−タ通信装置 |
| US5390281A (en) * | 1992-05-27 | 1995-02-14 | Apple Computer, Inc. | Method and apparatus for deducing user intent and providing computer implemented services |
| US5434777A (en) * | 1992-05-27 | 1995-07-18 | Apple Computer, Inc. | Method and apparatus for processing natural language |
| US5477447A (en) * | 1992-05-27 | 1995-12-19 | Apple Computer, Incorporated | Method and apparatus for providing computer-implemented assistance |
| DE4228281A1 (de) * | 1992-08-26 | 1994-03-03 | Koenig & Bauer Ag | Verfahren zur Anzeige von Maschinenstörungen |
| US5432940A (en) * | 1992-11-02 | 1995-07-11 | Borland International, Inc. | System and methods for improved computer-based training |
| US5598511A (en) * | 1992-12-28 | 1997-01-28 | Intel Corporation | Method and apparatus for interpreting data and accessing on-line documentation in a computer system |
| US6049792A (en) * | 1993-03-19 | 2000-04-11 | Ricoh Company Limited | Automatic invocation of computational resources without user intervention across a network |
| US5546502A (en) * | 1993-03-19 | 1996-08-13 | Ricoh Company, Ltd. | Automatic invocation of computational resources without user intervention |
| US6633861B2 (en) * | 1993-03-19 | 2003-10-14 | Ricoh Company Limited | Automatic invocation of computational resources without user intervention across a network |
| US5701399A (en) * | 1993-06-09 | 1997-12-23 | Inference Corporation | Integration of case-based search engine into help database |
| JPH0772767A (ja) * | 1993-06-15 | 1995-03-17 | Xerox Corp | 対話型ユーザ支援システム |
| US5537590A (en) * | 1993-08-05 | 1996-07-16 | Amado; Armando | Apparatus for applying analysis rules to data sets in a relational database to generate a database of diagnostic records linked to the data sets |
| US5504887A (en) * | 1993-09-10 | 1996-04-02 | International Business Machines Corporation | Storage clustering and packing of objects on the basis of query workload ranking |
| US5521844A (en) * | 1993-09-10 | 1996-05-28 | Beloit Corporation | Printing press monitoring and advising system |
| US5982365A (en) * | 1993-11-19 | 1999-11-09 | Apple Computer, Inc. | System and methods for interactively generating and testing help systems |
| US5572670A (en) * | 1994-01-10 | 1996-11-05 | Storage Technology Corporation | Bi-directional translator for diagnostic sensor data |
| US5819090A (en) * | 1994-03-04 | 1998-10-06 | Ast Research, Inc. | Application control module for common user access interface |
| US5799292A (en) * | 1994-04-29 | 1998-08-25 | International Business Machines Corporation | Adaptive hypermedia presentation method and system |
| WO1995034051A1 (en) * | 1994-06-06 | 1995-12-14 | Spectragraphics Corporation | Method and apparatus for capturing and distributing graphical data |
| US5563805A (en) * | 1994-08-16 | 1996-10-08 | International Business Machines Corporation | Multimedia context-sensitive real-time-help mechanism for use in a data processing system |
| EP0712075A3 (de) * | 1994-11-08 | 1997-10-22 | Canon Kk | Informationsverarbeitungsverfahren und -anlage, welche die Information versteht und danach handelt |
| JP3898238B2 (ja) * | 1994-12-02 | 2007-03-28 | 株式会社バンダイナムコゲームス | ビデオゲーム装置及びその画像合成方法 |
| US5701400A (en) * | 1995-03-08 | 1997-12-23 | Amado; Carlos Armando | Method and apparatus for applying if-then-else rules to data sets in a relational data base and generating from the results of application of said rules a database of diagnostics linked to said data sets to aid executive analysis of financial data |
| US6182056B1 (en) | 1995-05-22 | 2001-01-30 | Gte Data Services Incorporated | Method of modeling complex navigational logic in a client/server environment |
| US5870727A (en) * | 1995-05-22 | 1999-02-09 | Gte Data Services Incorporated | Rule-based system for the provision of complex navigational logic |
| US6067525A (en) | 1995-10-30 | 2000-05-23 | Clear With Computers | Integrated computerized sales force automation system |
| JP3195226B2 (ja) * | 1996-03-14 | 2001-08-06 | 株式会社東芝 | 業務支援システム |
| US6688888B1 (en) * | 1996-03-19 | 2004-02-10 | Chi Fai Ho | Computer-aided learning system and method |
| US5727129A (en) * | 1996-06-04 | 1998-03-10 | International Business Machines Corporation | Network system for profiling and actively facilitating user activities |
| US7555458B1 (en) | 1996-06-05 | 2009-06-30 | Fraud Control System.Com Corporation | Method of billing a purchase made over a computer network |
| US20030195846A1 (en) | 1996-06-05 | 2003-10-16 | David Felger | Method of billing a purchase made over a computer network |
| US8229844B2 (en) | 1996-06-05 | 2012-07-24 | Fraud Control Systems.Com Corporation | Method of billing a purchase made over a computer network |
| JP3698491B2 (ja) * | 1996-07-02 | 2005-09-21 | 株式会社ドラゴン | テレビ型バカラゲーム遊戯装置 |
| US6021403A (en) * | 1996-07-19 | 2000-02-01 | Microsoft Corporation | Intelligent user assistance facility |
| US5778233A (en) * | 1996-10-11 | 1998-07-07 | International Business Machines Corporation | Method and apparatus for enabling global compiler optimizations in the presence of exception handlers within a computer program |
| US8745493B2 (en) * | 1996-10-25 | 2014-06-03 | Karen A. McKirchy | Method and apparatus for providing instructional help, at multiple levels of sophistication, in a learning application |
| US7607147B1 (en) * | 1996-12-11 | 2009-10-20 | The Nielsen Company (Us), Llc | Interactive service device metering systems |
| GB2324892B (en) * | 1997-03-14 | 1999-12-01 | Interactuality Limited | Process monitoring system |
| US6038560A (en) * | 1997-05-21 | 2000-03-14 | Oracle Corporation | Concept knowledge base search and retrieval system |
| US6003020A (en) * | 1997-10-30 | 1999-12-14 | Sapient Health Network | Intelligent profiling system |
| US6527556B1 (en) | 1997-11-12 | 2003-03-04 | Intellishare, Llc | Method and system for creating an integrated learning environment with a pattern-generator and course-outlining tool for content authoring, an interactive learning tool, and related administrative tools |
| US6062862A (en) * | 1997-11-12 | 2000-05-16 | Koskinen; Robin S. | Financial services product training apparatus and method related thereto |
| US6002400A (en) * | 1997-11-19 | 1999-12-14 | International Business Machines Corporation | Method and apparatus for handles to components in graphical windows user interface |
| JPH11242547A (ja) * | 1998-02-26 | 1999-09-07 | Nec Corp | コンピュータユーザ支援システム |
| US6795814B1 (en) * | 1998-06-04 | 2004-09-21 | Gateway, Inc. | System and method for CMOS integration |
| US9792659B2 (en) * | 1999-04-13 | 2017-10-17 | Iplearn, Llc | Computer-aided methods and apparatus to access materials in a network environment |
| IL125684A0 (en) * | 1998-08-06 | 1999-04-11 | Univ Ben Gurion | Method for computer operation by an intelligent user adaptive interface |
| US6134019A (en) * | 1998-09-03 | 2000-10-17 | Xerox Corporation | Help button service for a user interface in a digital printing scanning or facsimile system |
| US6219047B1 (en) | 1998-09-17 | 2001-04-17 | John Bell | Training agent |
| US6381711B1 (en) | 1998-10-20 | 2002-04-30 | International Business Machines Corporation | Method and apparatus for unified, pre-addressed, context-sensitive reporting |
| US6341359B1 (en) | 1998-12-14 | 2002-01-22 | International Business Machines Corporation | Self-diagnosing and self correcting data entry components |
| US6964010B1 (en) | 1998-12-14 | 2005-11-08 | International Business Machines Corporation | Formatted-item list control |
| US7904187B2 (en) | 1999-02-01 | 2011-03-08 | Hoffberg Steven M | Internet appliance system and method |
| JP2000262747A (ja) * | 1999-03-18 | 2000-09-26 | Sega Enterp Ltd | 画像処理装置、電子遊戯装置及びテレビゲーム機用記憶媒体 |
| US6269355B1 (en) * | 1999-04-15 | 2001-07-31 | Kadiri, Inc. | Automated process guidance system and method using knowledge management system |
| US6573906B1 (en) | 1999-04-26 | 2003-06-03 | International Business Machines Corporation | Method and system for delivering integrated user assistance information and traditional help from the same source |
| US6340977B1 (en) | 1999-05-07 | 2002-01-22 | Philip Lui | System and method for dynamic assistance in software applications using behavior and host application models |
| US6421655B1 (en) * | 1999-06-04 | 2002-07-16 | Microsoft Corporation | Computer-based representations and reasoning methods for engaging users in goal-oriented conversations |
| US7337159B2 (en) * | 1999-09-30 | 2008-02-26 | Topiary Communications, Inc. | System and method for sharing of expert knowledge |
| US6985889B1 (en) | 1999-09-30 | 2006-01-10 | Topiary Communications, Inc. | System and method for sharing of expert knowledge |
| GB2359215B (en) * | 2000-02-08 | 2004-02-25 | Helpmagic Com Ltd | Information service |
| US8645137B2 (en) | 2000-03-16 | 2014-02-04 | Apple Inc. | Fast, language-independent method for user authentication by voice |
| WO2001069573A1 (en) * | 2000-03-16 | 2001-09-20 | University Of Southern California | Adaptable smart techniques for user interaction |
| WO2002029759A2 (en) * | 2000-10-06 | 2002-04-11 | Charles Wong | Virtual training sales and support |
| US20020095597A1 (en) * | 2001-01-13 | 2002-07-18 | Norden Gregory L. | Reusable solutions for aircraft servicing |
| GB2375030B (en) * | 2001-04-27 | 2005-05-11 | Ibm | Changing user interface following difficulty in use |
| DE60136052D1 (de) * | 2001-05-04 | 2008-11-20 | Microsoft Corp | Schnittstellensteuerung |
| US20030028513A1 (en) * | 2001-07-13 | 2003-02-06 | Neal Pawar | System and method for providing help services |
| US7194685B2 (en) * | 2001-08-13 | 2007-03-20 | International Business Machines Corporation | Method and apparatus for tracking usage of online help systems |
| US20030059009A1 (en) * | 2001-09-24 | 2003-03-27 | Teleware, Inc. | Modular multi-media communication management system with context dependent multi-media help functionality |
| US6871163B2 (en) | 2002-05-31 | 2005-03-22 | Sap Aktiengesellschaft | Behavior-based adaptation of computer systems |
| US7239981B2 (en) | 2002-07-26 | 2007-07-03 | Arbitron Inc. | Systems and methods for gathering audience measurement data |
| US20040145601A1 (en) * | 2003-01-29 | 2004-07-29 | International Business Machines Corporation | Method and a device for providing additional functionality to a separate application |
| US7694223B2 (en) * | 2003-06-04 | 2010-04-06 | Sony Computer Entertainment Inc. | Methods and systems for recording user actions in computer programs |
| US20050081153A1 (en) * | 2003-08-12 | 2005-04-14 | Gbs Global Business Software And Services Limited | Method for providing process-dependent data |
| JP2007528063A (ja) * | 2004-03-01 | 2007-10-04 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | チュートリアル生成ユニット |
| US20060041499A1 (en) * | 2004-08-23 | 2006-02-23 | Transaxtions Llc | Obtaining A Need With Guiding Information And Credit Worthiness Using A Competitive Process |
| US7543232B2 (en) * | 2004-10-19 | 2009-06-02 | International Business Machines Corporation | Intelligent web based help system |
| US20060095315A1 (en) * | 2004-10-29 | 2006-05-04 | Sbc Knowledge Ventures L.P. | Method and apparatus for a mechanized attendance management system |
| US8296162B1 (en) | 2005-02-01 | 2012-10-23 | Webmd Llc. | Systems, devices, and methods for providing healthcare information |
| US20060212463A1 (en) * | 2005-03-15 | 2006-09-21 | Jensen Jens O | Method and apparatus for extracting metadata information from an application |
| US9183752B2 (en) * | 2005-07-14 | 2015-11-10 | Red Hat, Inc. | Tutorial generator with automatic capture of screenshots |
| WO2007017796A2 (en) * | 2005-08-11 | 2007-02-15 | Philips Intellectual Property & Standards Gmbh | Method for introducing interaction pattern and application functionalities |
| US8677377B2 (en) | 2005-09-08 | 2014-03-18 | Apple Inc. | Method and apparatus for building an intelligent automated assistant |
| US7475054B2 (en) * | 2005-11-30 | 2009-01-06 | The Boeing Company | Integrating multiple information-providing systems |
| US7533339B2 (en) * | 2005-12-29 | 2009-05-12 | Sap Ag | System and method for providing user help |
| US7526722B2 (en) * | 2005-12-29 | 2009-04-28 | Sap Ag | System and method for providing user help according to user category |
| US7979798B2 (en) * | 2005-12-30 | 2011-07-12 | Sap Ag | System and method for providing user help tips |
| US8166412B2 (en) * | 2006-01-13 | 2012-04-24 | Adobe Systems Incorporated | Visual cue discernment on scattered data |
| US8099664B2 (en) * | 2006-03-17 | 2012-01-17 | Microsoft Corporation | Dynamic help user interface control with secured customization |
| US9299039B1 (en) * | 2006-08-23 | 2016-03-29 | A9.Com, Inc. | Managing task lists utilizing integrated information requests |
| US9318108B2 (en) | 2010-01-18 | 2016-04-19 | Apple Inc. | Intelligent automated assistant |
| US7711462B2 (en) * | 2006-12-15 | 2010-05-04 | International Business Machines Corporation | Vehicle help system and method |
| US8380530B2 (en) | 2007-02-02 | 2013-02-19 | Webmd Llc. | Personalized health records with associative relationships |
| US8738606B2 (en) * | 2007-03-30 | 2014-05-27 | Microsoft Corporation | Query generation using environment configuration |
| US8977255B2 (en) | 2007-04-03 | 2015-03-10 | Apple Inc. | Method and system for operating a multi-function portable electronic device using voice-activation |
| US9135340B2 (en) * | 2007-09-12 | 2015-09-15 | Datalaw, Inc. | Research system and method with record builder |
| US9330720B2 (en) | 2008-01-03 | 2016-05-03 | Apple Inc. | Methods and apparatus for altering audio output signals |
| US8996376B2 (en) | 2008-04-05 | 2015-03-31 | Apple Inc. | Intelligent text-to-speech conversion |
| US10496753B2 (en) | 2010-01-18 | 2019-12-03 | Apple Inc. | Automatically adapting user interfaces for hands-free interaction |
| US20100030549A1 (en) | 2008-07-31 | 2010-02-04 | Lee Michael M | Mobile device having human language translation capability with positional feedback |
| US8504599B1 (en) | 2008-10-07 | 2013-08-06 | Honda Motor Co., Ltd. | Intelligent system for database retrieval |
| US9124769B2 (en) | 2008-10-31 | 2015-09-01 | The Nielsen Company (Us), Llc | Methods and apparatus to verify presentation of media content |
| WO2010067118A1 (en) | 2008-12-11 | 2010-06-17 | Novauris Technologies Limited | Speech recognition involving a mobile device |
| US10241644B2 (en) | 2011-06-03 | 2019-03-26 | Apple Inc. | Actionable reminder entries |
| US20120309363A1 (en) | 2011-06-03 | 2012-12-06 | Apple Inc. | Triggering notifications associated with tasks items that represent tasks to perform |
| US10241752B2 (en) | 2011-09-30 | 2019-03-26 | Apple Inc. | Interface for a virtual digital assistant |
| US9858925B2 (en) | 2009-06-05 | 2018-01-02 | Apple Inc. | Using context information to facilitate processing of commands in a virtual assistant |
| US9431006B2 (en) | 2009-07-02 | 2016-08-30 | Apple Inc. | Methods and apparatuses for automatic speech recognition |
| US8635584B2 (en) * | 2009-10-13 | 2014-01-21 | Yahoo! Inc. | Tutorial systems for code creation and provenance tracking |
| US10553209B2 (en) | 2010-01-18 | 2020-02-04 | Apple Inc. | Systems and methods for hands-free notification summaries |
| US10705794B2 (en) | 2010-01-18 | 2020-07-07 | Apple Inc. | Automatically adapting user interfaces for hands-free interaction |
| US10276170B2 (en) | 2010-01-18 | 2019-04-30 | Apple Inc. | Intelligent automated assistant |
| US10679605B2 (en) | 2010-01-18 | 2020-06-09 | Apple Inc. | Hands-free list-reading by intelligent automated assistant |
| CA2691326A1 (en) | 2010-01-28 | 2011-07-28 | Ibm Canada Limited - Ibm Canada Limitee | Integrated automatic user support and assistance |
| US8682667B2 (en) | 2010-02-25 | 2014-03-25 | Apple Inc. | User profiling for selecting user specific voice input processing information |
| US8396815B2 (en) * | 2010-04-29 | 2013-03-12 | International Business Machines Corporation | Adaptive business process automation |
| CN102238268B (zh) | 2010-04-30 | 2013-10-30 | 腾讯科技(深圳)有限公司 | 一种信息提示方法及装置 |
| US10762293B2 (en) | 2010-12-22 | 2020-09-01 | Apple Inc. | Using parts-of-speech tagging and named entity recognition for spelling correction |
| US9262612B2 (en) | 2011-03-21 | 2016-02-16 | Apple Inc. | Device access using voice authentication |
| US10057736B2 (en) | 2011-06-03 | 2018-08-21 | Apple Inc. | Active transport based notifications |
| US8994660B2 (en) | 2011-08-29 | 2015-03-31 | Apple Inc. | Text correction processing |
| US10134385B2 (en) | 2012-03-02 | 2018-11-20 | Apple Inc. | Systems and methods for name pronunciation |
| US9483461B2 (en) | 2012-03-06 | 2016-11-01 | Apple Inc. | Handling speech synthesis of content for multiple languages |
| US9280610B2 (en) | 2012-05-14 | 2016-03-08 | Apple Inc. | Crowd sourcing information to fulfill user requests |
| US8560305B1 (en) * | 2012-05-16 | 2013-10-15 | Hristo Georgiev | Logifolg |
| US9721563B2 (en) | 2012-06-08 | 2017-08-01 | Apple Inc. | Name recognition system |
| US9495129B2 (en) | 2012-06-29 | 2016-11-15 | Apple Inc. | Device, method, and user interface for voice-activated navigation and browsing of a document |
| US9576574B2 (en) | 2012-09-10 | 2017-02-21 | Apple Inc. | Context-sensitive handling of interruptions by intelligent digital assistant |
| US9547647B2 (en) | 2012-09-19 | 2017-01-17 | Apple Inc. | Voice-based media searching |
| US20140115459A1 (en) * | 2012-10-24 | 2014-04-24 | Michael Norwood | Help system |
| DE212014000045U1 (de) | 2013-02-07 | 2015-09-24 | Apple Inc. | Sprach-Trigger für einen digitalen Assistenten |
| CN105339866B (zh) | 2013-03-01 | 2018-09-07 | 托比股份公司 | 延迟扭曲凝视交互 |
| US9864498B2 (en) | 2013-03-13 | 2018-01-09 | Tobii Ab | Automatic scrolling based on gaze detection |
| US9368114B2 (en) | 2013-03-14 | 2016-06-14 | Apple Inc. | Context-sensitive handling of interruptions |
| AU2014233517B2 (en) | 2013-03-15 | 2017-05-25 | Apple Inc. | Training an at least partial voice command system |
| WO2014150518A1 (en) * | 2013-03-15 | 2014-09-25 | Legacy Media, Llc | Provision of predefined communications |
| WO2014144579A1 (en) | 2013-03-15 | 2014-09-18 | Apple Inc. | System and method for updating an adaptive speech recognition model |
| US9582608B2 (en) | 2013-06-07 | 2017-02-28 | Apple Inc. | Unified ranking with entropy-weighted information for phrase-based semantic auto-completion |
| WO2014197334A2 (en) | 2013-06-07 | 2014-12-11 | Apple Inc. | System and method for user-specified pronunciation of words for speech synthesis and recognition |
| WO2014197336A1 (en) | 2013-06-07 | 2014-12-11 | Apple Inc. | System and method for detecting errors in interactions with a voice-based digital assistant |
| WO2014197335A1 (en) | 2013-06-08 | 2014-12-11 | Apple Inc. | Interpreting and acting upon commands that involve sharing information with remote devices |
| US10176167B2 (en) | 2013-06-09 | 2019-01-08 | Apple Inc. | System and method for inferring user intent from speech inputs |
| DE112014002747T5 (de) | 2013-06-09 | 2016-03-03 | Apple Inc. | Vorrichtung, Verfahren und grafische Benutzerschnittstelle zum Ermöglichen einer Konversationspersistenz über zwei oder mehr Instanzen eines digitalen Assistenten |
| AU2014278595B2 (en) | 2013-06-13 | 2017-04-06 | Apple Inc. | System and method for emergency calls initiated by voice command |
| DE112014003653B4 (de) | 2013-08-06 | 2024-04-18 | Apple Inc. | Automatisch aktivierende intelligente Antworten auf der Grundlage von Aktivitäten von entfernt angeordneten Vorrichtungen |
| GB2518203A (en) * | 2013-09-13 | 2015-03-18 | Ibm | GUI configuration |
| US10317995B2 (en) | 2013-11-18 | 2019-06-11 | Tobii Ab | Component determination and gaze provoked interaction |
| US10558262B2 (en) | 2013-11-18 | 2020-02-11 | Tobii Ab | Component determination and gaze provoked interaction |
| US9620105B2 (en) | 2014-05-15 | 2017-04-11 | Apple Inc. | Analyzing audio input for efficient speech and music recognition |
| US10592095B2 (en) | 2014-05-23 | 2020-03-17 | Apple Inc. | Instantaneous speaking of content on touch devices |
| US9502031B2 (en) | 2014-05-27 | 2016-11-22 | Apple Inc. | Method for supporting dynamic grammars in WFST-based ASR |
| CN110797019B (zh) | 2014-05-30 | 2023-08-29 | 苹果公司 | 多命令单一话语输入方法 |
| US9633004B2 (en) | 2014-05-30 | 2017-04-25 | Apple Inc. | Better resolution when referencing to concepts |
| US9785630B2 (en) | 2014-05-30 | 2017-10-10 | Apple Inc. | Text prediction using combined word N-gram and unigram language models |
| US9734193B2 (en) | 2014-05-30 | 2017-08-15 | Apple Inc. | Determining domain salience ranking from ambiguous words in natural speech |
| US9430463B2 (en) | 2014-05-30 | 2016-08-30 | Apple Inc. | Exemplar-based natural language processing |
| US9842101B2 (en) | 2014-05-30 | 2017-12-12 | Apple Inc. | Predictive conversion of language input |
| US9715875B2 (en) | 2014-05-30 | 2017-07-25 | Apple Inc. | Reducing the need for manual start/end-pointing and trigger phrases |
| US10289433B2 (en) | 2014-05-30 | 2019-05-14 | Apple Inc. | Domain specific language for encoding assistant dialog |
| US10078631B2 (en) | 2014-05-30 | 2018-09-18 | Apple Inc. | Entropy-guided text prediction using combined word and character n-gram language models |
| US9760559B2 (en) | 2014-05-30 | 2017-09-12 | Apple Inc. | Predictive text input |
| US10170123B2 (en) | 2014-05-30 | 2019-01-01 | Apple Inc. | Intelligent assistant for home automation |
| US9338493B2 (en) | 2014-06-30 | 2016-05-10 | Apple Inc. | Intelligent automated assistant for TV user interactions |
| US10659851B2 (en) | 2014-06-30 | 2020-05-19 | Apple Inc. | Real-time digital assistant knowledge updates |
| US10446141B2 (en) | 2014-08-28 | 2019-10-15 | Apple Inc. | Automatic speech recognition based on user feedback |
| US9818400B2 (en) | 2014-09-11 | 2017-11-14 | Apple Inc. | Method and apparatus for discovering trending terms in speech requests |
| US10789041B2 (en) | 2014-09-12 | 2020-09-29 | Apple Inc. | Dynamic thresholds for always listening speech trigger |
| US9606986B2 (en) | 2014-09-29 | 2017-03-28 | Apple Inc. | Integrated word N-gram and class M-gram language models |
| US9886432B2 (en) | 2014-09-30 | 2018-02-06 | Apple Inc. | Parsimonious handling of word inflection via categorical stem + suffix N-gram language models |
| US9668121B2 (en) | 2014-09-30 | 2017-05-30 | Apple Inc. | Social reminders |
| US10074360B2 (en) | 2014-09-30 | 2018-09-11 | Apple Inc. | Providing an indication of the suitability of speech recognition |
| US9646609B2 (en) | 2014-09-30 | 2017-05-09 | Apple Inc. | Caching apparatus for serving phonetic pronunciations |
| US10127911B2 (en) | 2014-09-30 | 2018-11-13 | Apple Inc. | Speaker identification and unsupervised speaker adaptation techniques |
| US10552013B2 (en) | 2014-12-02 | 2020-02-04 | Apple Inc. | Data detection |
| US9711141B2 (en) | 2014-12-09 | 2017-07-18 | Apple Inc. | Disambiguating heteronyms in speech synthesis |
| US11568177B2 (en) * | 2015-01-19 | 2023-01-31 | Kabushiki Kaisha Toshiba | Sequential data analysis apparatus and program |
| US9865280B2 (en) | 2015-03-06 | 2018-01-09 | Apple Inc. | Structured dictation using intelligent automated assistants |
| US9886953B2 (en) | 2015-03-08 | 2018-02-06 | Apple Inc. | Virtual assistant activation |
| US10567477B2 (en) | 2015-03-08 | 2020-02-18 | Apple Inc. | Virtual assistant continuity |
| US9721566B2 (en) | 2015-03-08 | 2017-08-01 | Apple Inc. | Competing devices responding to voice triggers |
| US9899019B2 (en) | 2015-03-18 | 2018-02-20 | Apple Inc. | Systems and methods for structured stem and suffix language models |
| US9842105B2 (en) | 2015-04-16 | 2017-12-12 | Apple Inc. | Parsimonious continuous-space phrase representations for natural language processing |
| JP6438346B2 (ja) * | 2015-05-12 | 2018-12-12 | 日本電信電話株式会社 | 操作支援装置、操作支援プログラムおよび操作支援方法 |
| US10083688B2 (en) | 2015-05-27 | 2018-09-25 | Apple Inc. | Device voice control for selecting a displayed affordance |
| US10127220B2 (en) | 2015-06-04 | 2018-11-13 | Apple Inc. | Language identification from short strings |
| US10101822B2 (en) | 2015-06-05 | 2018-10-16 | Apple Inc. | Language input correction |
| US11025565B2 (en) | 2015-06-07 | 2021-06-01 | Apple Inc. | Personalized prediction of responses for instant messaging |
| US10186254B2 (en) | 2015-06-07 | 2019-01-22 | Apple Inc. | Context-based endpoint detection |
| US10255907B2 (en) | 2015-06-07 | 2019-04-09 | Apple Inc. | Automatic accent detection using acoustic models |
| US10671428B2 (en) | 2015-09-08 | 2020-06-02 | Apple Inc. | Distributed personal assistant |
| US10747498B2 (en) | 2015-09-08 | 2020-08-18 | Apple Inc. | Zero latency digital assistant |
| US9697820B2 (en) | 2015-09-24 | 2017-07-04 | Apple Inc. | Unit-selection text-to-speech synthesis using concatenation-sensitive neural networks |
| US10366158B2 (en) | 2015-09-29 | 2019-07-30 | Apple Inc. | Efficient word encoding for recurrent neural network language models |
| US11010550B2 (en) | 2015-09-29 | 2021-05-18 | Apple Inc. | Unified language modeling framework for word prediction, auto-completion and auto-correction |
| US11587559B2 (en) | 2015-09-30 | 2023-02-21 | Apple Inc. | Intelligent device identification |
| US10691473B2 (en) | 2015-11-06 | 2020-06-23 | Apple Inc. | Intelligent automated assistant in a messaging environment |
| US10049668B2 (en) | 2015-12-02 | 2018-08-14 | Apple Inc. | Applying neural network language models to weighted finite state transducers for automatic speech recognition |
| US10223066B2 (en) | 2015-12-23 | 2019-03-05 | Apple Inc. | Proactive assistance based on dialog communication between devices |
| US10446143B2 (en) | 2016-03-14 | 2019-10-15 | Apple Inc. | Identification of voice inputs providing credentials |
| US9934775B2 (en) | 2016-05-26 | 2018-04-03 | Apple Inc. | Unit-selection text-to-speech synthesis based on predicted concatenation parameters |
| US9972304B2 (en) | 2016-06-03 | 2018-05-15 | Apple Inc. | Privacy preserving distributed evaluation framework for embedded personalized systems |
| US10249300B2 (en) | 2016-06-06 | 2019-04-02 | Apple Inc. | Intelligent list reading |
| US10049663B2 (en) | 2016-06-08 | 2018-08-14 | Apple, Inc. | Intelligent automated assistant for media exploration |
| DK179309B1 (en) | 2016-06-09 | 2018-04-23 | Apple Inc | Intelligent automated assistant in a home environment |
| US10490187B2 (en) | 2016-06-10 | 2019-11-26 | Apple Inc. | Digital assistant providing automated status report |
| US10067938B2 (en) | 2016-06-10 | 2018-09-04 | Apple Inc. | Multilingual word prediction |
| US10509862B2 (en) | 2016-06-10 | 2019-12-17 | Apple Inc. | Dynamic phrase expansion of language input |
| US10586535B2 (en) | 2016-06-10 | 2020-03-10 | Apple Inc. | Intelligent digital assistant in a multi-tasking environment |
| US10192552B2 (en) | 2016-06-10 | 2019-01-29 | Apple Inc. | Digital assistant providing whispered speech |
| DK179343B1 (en) | 2016-06-11 | 2018-05-14 | Apple Inc | Intelligent task discovery |
| DK201670540A1 (en) | 2016-06-11 | 2018-01-08 | Apple Inc | Application integration with a digital assistant |
| DK179049B1 (en) | 2016-06-11 | 2017-09-18 | Apple Inc | Data driven natural language event detection and classification |
| DK179415B1 (en) | 2016-06-11 | 2018-06-14 | Apple Inc | Intelligent device arbitration and control |
| US10579400B2 (en) * | 2016-11-11 | 2020-03-03 | International Business Machines Corporation | Path-sensitive contextual help system |
| US10593346B2 (en) | 2016-12-22 | 2020-03-17 | Apple Inc. | Rank-reduced token representation for automatic speech recognition |
| DK179745B1 (en) | 2017-05-12 | 2019-05-01 | Apple Inc. | SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT |
| DK201770431A1 (en) | 2017-05-15 | 2018-12-20 | Apple Inc. | Optimizing dialogue policy decisions for digital assistants using implicit feedback |
Family Cites Families (21)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4156284A (en) * | 1977-11-21 | 1979-05-22 | General Electric Company | Signal processing apparatus |
| US4648044A (en) | 1984-06-06 | 1987-03-03 | Teknowledge, Inc. | Basic expert system tool |
| US4658370A (en) | 1984-06-07 | 1987-04-14 | Teknowledge, Inc. | Knowledge engineering tool |
| EP0218218A3 (de) * | 1985-10-07 | 1989-11-08 | Sharp Kabushiki Kaisha | Eingabe- und Aufbereitungssystem in einem Frage-und-Antwort-System |
| JPS6398741A (ja) * | 1986-10-15 | 1988-04-30 | Fujitsu Ltd | 複数エキスパ−トシステムの逐次実行制御方式 |
| JPS63124148A (ja) * | 1986-11-13 | 1988-05-27 | Nec Corp | 知識ベ−スフアイル管理方式 |
| US4860214A (en) | 1987-01-22 | 1989-08-22 | Ricoh Company, Ltd. | Inference system |
| US4885757A (en) * | 1987-06-01 | 1989-12-05 | Texas Instruments Incorporated | Digital adaptive receiver employing maximum-likelihood sequence estimation with neural networks |
| US4873661A (en) * | 1987-08-27 | 1989-10-10 | Yannis Tsividis | Switched neural networks |
| US4903226A (en) * | 1987-08-27 | 1990-02-20 | Yannis Tsividis | Switched networks |
| US4964077A (en) | 1987-10-06 | 1990-10-16 | International Business Machines Corporation | Method for automatically adjusting help information displayed in an online interactive system |
| US5023833A (en) * | 1987-12-08 | 1991-06-11 | California Institute Of Technology | Feed forward neural network for unary associative memory |
| US5008810A (en) * | 1988-09-29 | 1991-04-16 | Process Modeling Investment Corp. | System for displaying different subsets of screen views, entering different amount of information, and determining correctness of input dependent upon current user input |
| JP2690996B2 (ja) | 1989-02-17 | 1997-12-17 | 株式会社日立製作所 | 履歴依存ヘルプ制御方式 |
| JPH02287670A (ja) * | 1989-04-27 | 1990-11-27 | Mitsubishi Electric Corp | 半導体神経回路網 |
| US4962342A (en) * | 1989-05-04 | 1990-10-09 | Synaptics, Inc. | Dynamic synapse for neural network |
| US4988891A (en) * | 1989-05-09 | 1991-01-29 | Mitsubishi Denki Kabushiki Kaisha | Semiconductor neural network including photosensitive coupling elements |
| US5167010A (en) | 1989-08-03 | 1992-11-24 | Westinghouse Electric Corp. | Expert advice display processing system |
| US4942367A (en) * | 1989-09-29 | 1990-07-17 | General Electric Company | Auto-zeroing switched-capacitance buffer amplifiers with minus-unity voltage gain |
| US5239617A (en) | 1990-01-05 | 1993-08-24 | International Business Machines Corporation | Method and apparatus providing an intelligent help explanation paradigm paralleling computer user activity |
| US5039870A (en) * | 1990-05-21 | 1991-08-13 | General Electric Company | Weighted summation circuits having different-weight ranks of capacitive structures |
-
1990
- 1990-08-02 US US07/562,046 patent/US5103498A/en not_active Ceased
-
1991
- 1991-07-17 DE DE69130766T patent/DE69130766T2/de not_active Expired - Lifetime
- 1991-07-17 EP EP91915742A patent/EP0541712B1/de not_active Expired - Lifetime
- 1991-07-17 WO PCT/US1991/005062 patent/WO1992002880A1/en active IP Right Grant
- 1991-07-17 SG SG1996008071A patent/SG48223A1/en unknown
- 1991-07-17 AU AU84019/91A patent/AU8401991A/en not_active Abandoned
-
1999
- 1999-08-17 US US09/375,867 patent/USRE39302E1/en not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| DE69130766D1 (de) | 1999-02-25 |
| USRE39302E1 (en) | 2006-09-19 |
| EP0541712B1 (de) | 1999-01-13 |
| AU8401991A (en) | 1992-03-02 |
| HK1012102A1 (en) | 1999-07-23 |
| WO1992002880A1 (en) | 1992-02-20 |
| US5103498A (en) | 1992-04-07 |
| EP0541712A1 (de) | 1993-05-19 |
| EP0541712A4 (en) | 1994-06-15 |
| SG48223A1 (en) | 1998-04-17 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE69130766T2 (de) | Intelligentes hilfssystem | |
| DE69327318T2 (de) | Unterstützung für systementwicklung. | |
| US6009420A (en) | Computer-implemented decision management system with dynamically generated questions and answer choices | |
| DE69429866T2 (de) | Verfahren und gerät zur modellierung und abfrage von datenbankenstrukturen mit natürlichen sprachartigen konstruktionen | |
| US5835900A (en) | Computer-implemented decision management system with dynamically generated questions and answer choices | |
| DE69429247T2 (de) | Verfahren zur wissendarstellung in einem rechner | |
| DE69609866T2 (de) | Flexibles system und verfahren zum verknüpfen von hyperlinks | |
| DE3650736T2 (de) | Informationswiederauffindungsverfahren | |
| DE69022842T2 (de) | Verwendung von Befehlsähnlichkeiten in einem intelligenten Hilfssystem. | |
| DE69029983T2 (de) | Leistungsverbesserungsgerät für auf Regeln beruhendes Expertensystem | |
| DE69333854T2 (de) | Automatisches Aufrufen von Rechnermitteln ohne Bedienereingriff | |
| DE69030664T2 (de) | Expertensystem | |
| DE4428060A1 (de) | Dokumentations-Schnittstellensystem in einem Informationsverwaltungssystem | |
| USRE37431E1 (en) | Intelligent help system | |
| DE69023389T2 (de) | "Unbekannt"-Antwortverarbeitung in einem Expertendiagnosesystem. | |
| DE19705955A1 (de) | Verfahren zum Generieren einer Implementierung eines Workflow-Prozessmodells in einer Objektumgebung | |
| DE19632854A1 (de) | Kontext-Identifizierer verwendendes System und Verfahren für eine individuelle Menüanpassung in einem Fenster | |
| DE3851207T2 (de) | Verfahren zur Bedienung eines Rechnergraphiksystems. | |
| DE19960050A1 (de) | Grafische Benutzerschnittstelle zur Entwicklung von Anwendungsbeispielen unter Verwendung einer Testobjektbibliothek | |
| DE69428144T2 (de) | Menuabfragesystem | |
| DE102008013053A1 (de) | Verbesserte Regelausführung in Expertensystemen | |
| DE69232452T2 (de) | Expertensystem mit einem Wissenserfassungsunterstützungssystem | |
| DE69715525T2 (de) | Verfahren und System um Datenstrukturen zu vereinigen | |
| DE19960048A1 (de) | Zeitgesteuerte Startbedingungen für Aktivitäten in Workflow-Management-Systemen | |
| DE69420926T2 (de) | Sequentieller informationsintegrationsdienst fuer dateiuebertragungsintegration zwischen mehreren programmodulen und einem speicher in einem computer |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 8364 | No opposition during term of opposition | ||
| 8328 | Change in the person/name/address of the agent |
Representative=s name: MUELLER-GERBES & WAGNER PATENTANWAELTE, 53225 BONN |
|
| 8327 | Change in the person/name/address of the patent owner |
Owner name: SAMSUNG ELECTRONICS CO., LTD., SUWON CITY, KR |