USRE37431EExpiredUtility

Intelligent help system

58
Assignee: AST RES INCPriority: Aug 2, 1990Filed: Oct 2, 1996Granted: Oct 30, 2001
Est. expiryAug 2, 2010(expired)· nominal 20-yr term from priority
G06F 9/453G06N 5/04
58
PatentIndex Score
38
Cited by
44
References
34
Claims

Abstract

An intelligent help system which processes information specific to a user and a system state is described. The system incorporates a monitoring device to determine which events to store as data in an historical queue. These data, as well as non-historical data (e.g. system state), are stored in a knowledge base. An inference engine tests rules against the knowledge base data, thereby providing a help tag. A display engine links the help tag with an appropriate solution tag to provide help text for display.

Claims

exact text as granted — not AI-modified
What is claimed is:  
     
       1. In a computer system, a method for aiding a user of a computer program, said method operating independent of said computer program, comprising the steps of: 
       storing a heldhelp  information database;  
       monitoring a series of user-directed events from an input device;  
       generating data indicating said series of user-directed events;  
       storing said generated data in a knowledge base;  
       storing a plurality of rules for analyzing said generated data to determine appropriate help information;  
       detecting a request for help information from the user;  
       testing said rules against said generated data using an inference engine, whereby rules which are satisfied by said data are proved rules;  
       selecting in response to the proved rules appropriate help information from said help information database; and  
       displaying said selected help information to the user.  
     
     
       2. The method of claim  1 , wherein said monitoring step further comprises monitoring a system state. 
     
     
       3. The method of claim  2 , wherein said monitoring a system state step further comprises monitoring a machine state, an application state, an accessory state, and a component state. 
     
     
       4. The method of claim  1 , wherein said monitoring step further comprises the steps of: 
       registering an application's menubar;  
       checking if the user has requested help;  
       updating a state information; and  
       updating a menubar.  
     
     
       5. The method of claim  1 , wherein said testing step comprises the steps of: 
       (a) selecting from said plurality of rules a first group of rules corresponding to a first plurality of user-directed events;  
       (b) attempting to prove each rule in said first group of rules;  
       (c) if a rule is proved, storing said rule as a proved rule in a plurality of proved rules; and  
       (d) repeating steps (a)-(c) for a subsequent group of rules until a rule is proved.  
     
     
       6. The method of claim  5 , wherein step (b) comprises attempting to match a premise with each of said first group of rules with said generated data. 
     
     
       7. The method of claim  5 , wherein step (c) comprises: 
       if a rule is proved, storing said rule as a proved rule in a plurality of linked proved rules.  
     
     
       8. The method of claim  1 , wherein said generating data step comprises generating an historical queue of said user-directed events. 
     
     
       9. The method of claim  1 , wherein said rule storing step comprises storing premise-conclusion statements from said help information database. 
     
     
       10. The method of claim  1 , wherein said displaying step comprises displaying textual help information to the user. 
     
     
       11. The method of claim  1 , wherein said displaying step comprises displaying graphical help information to the user. 
     
     
       12. The method of claim  1 , wherein said testing step comprises testing said rules against said generated data using a backward-chaining inference engine. 
     
     
       13. The method of claim  1 , wherein said testing step comprises testing rules against said generated data using a forward-chaining inference engine. 
     
     
       14. In a computer system, a method for aiding a user of a computer program, said method operating independent of said computer program, comprising the steps of: 
       storing a help information database;  
       storing a knowledge base for maintaining data;  
       identifying a series of user-directed events;  
       comparing said identified series with data stored in the knowledge base;  
       if said identified series is unknown to said knowledge base, asserting in said knowledge base data for indicating said unknown identified series;  
       if said identified series contradicts said knowledge base, retracting in said knowledge base data which contradicts said identified series;  
       if said identified series is already known to said knowledge base, reasserting in said knowledge base data for indicating said already known identified series;  
       storing a plurality of rules for analyzing said knowledge base to determine appropriate help information;  
       detecting a request for help information from the user;  
       testing said rules against said knowledge from the user;  
       testing said rules against said knowledge base using an inference engine, whereby rules which are satisfied by data stored in the knowledge base are proved rules;  
       selecting in response to said testing step appropriate help information from said help information database; and  
       displaying said selected help information to the user.  
     
     
       15. A help information system for aiding a user comprising: 
       a computer having a processor and a memory;  
       a display device coupled to said ocmputer;  
       an input device coupled to said computer;  
       monitoring means coupled to the input device for monitoring a sequence of user-directed events and for generating data indicating said events;  
       a knowledge base coupled to said monitoring means and stored in said memory, said knowledge base comprising said generated data, a plurality of rules for analyzing said generated data to determine appropriate help information, and a help information database for storing said appropriate help information;  
       inference engine means, coupled to said knowledge base, for applying said rules to said data to generate an inference engine outputs and  
       display engine means, coupled to said inference engine and coupled to said help information database, for interpreting said inference engine output to select appropriate help information for display by said display device to the user.  
     
     
       16. The system of claim  15 , wherein said monitoring means further comprises means for monitoring a system state. 
     
     
       17. The system of claim  16 , wherein said means for monitoring a system state comprises means for monitoring a machine state, an application state, an accessory state, and a component state. 
     
     
       18. The system of claim  15 , wherein said monitoring means comprises means, stored in memory and operably coupled to the input device, for interpreting a series of user-directed events and performing a history update based on the series. 
     
     
       19. The system of claim  15 , wherein said knowledge base further comprises an historical queue stored in memory and operably coupled to said generated data. 
     
     
       20. The system of claim  15 , wherein said inference engine means comprises backward-chaining inference engine means. 
     
     
       21. The system of claim  15 , wherein said inference engine means comprises forward-chaining inference engine means. 
     
     
       22. The system of claim  15 , wherein said help information comprises textual help information. 
     
     
       23. The system of claim  15 , wherein said help information comprises graphical help information. 
     
     
       24. A help information system for aiding a user comprising: 
       a computer having a processor and a memory;  
       an input device coupled to said computer;  
       a knowledge base, coupled to said memory, for maintaining data;  
       a plurality of rules, coupled to said memory, for analyzing said knowledge base;  
       means, coupled to said memory, for identifying a series of user-directed events from said input device;  
       means, coupled to said memory, for updating said knowledge base with said identified series;  
       means, coupled to said memory, for detecting a request for help information from the user;  
       a help information database, coupled to said memory, for selecting appropriate help information;  
       an inference engine, coupled to said memory, for testing said rules against said knowledge base to generate a help solution tag;  
       a display engine, coupled to said memory, for selecting help information from said help information database using said help solution tag; and  
       a display for displaying said selected help information to the user.  
     
     
       25. The system of claim  24 , wherein said means for updating said knowledge base comprises programming means for instructing said processor to perform the steps of: 
       comparing said identified series with data stored in the knowledge base;  
       if said identified series is unknown to said knowledge base, asserting data in said knowledge base data for indicating said unknown identified series;  
       if said identified series contradicts said knowledge base, retracting in said knowledge base data which contradicts said identified series; and  
       if said identified series is already known to said knowledge base, reasserting in said knowledge base data for indicating said already known identified series.  
     
     
       26. A help information system for aiding a user of a computer program comprising: 
       
         a computer having a processor and a memory;  
       
       
         a display device coupled to said computer;  
       
       
         an input device coupled to said computer;  
       
         monitoring means coupled to the input device for monitoring a sequence of user - directed events and for generating data indicating said events;    
       
         a knowledge base coupled to said monitoring means and stored in said memory, said knowledge base comprising said generated data, a plurality of rules for analyzing said generated data to determine appropriate help information, and a help information database for storing said appropriate help information;  
       
       
         inference engine means, coupled to said knowledge base, for applying said rules to said data to generate inference engine outputs;  
       
       
         selecting means coupled to said help information database, for selecting appropriate help information in response to said inference engine outputs; and  
       
       
         display engine means, coupled to said selecting means for presenting said appropriate help information for display by said display device to the user. 
       
     
     
       27. The system of claim  26 , wherein said monitoring means further comprises means for monitoring a system state. 
     
     
       28. The system of claim  27 , wherein said means for monitoring a system state comprises means for monitoring a machine state, an application state, an accessory state, and a component state. 
     
     
       29. The system of claim  26 , wherein said monitoring means comprises means, stored in memory and operably coupled to the input device, for interpreting a series of user- directed events and performing a history update based on the series.   
     
     
       30. The system of claim  26 , wherein said knowledge base further comprises an historical queue stored in memory and operably coupled to said generated data. 
     
     
       31. The system of claim  26 , wherein said inference engine means comprises backward- chaining inference engine means.   
     
     
       32. The system of claim  26 , wherein said inference engine means comprises forward- chaining inference engine means.   
     
     
       33. The system of claim  26 , wherein said help information comprises textual help information. 
     
     
       34. The system of claim  26 , wherein said help information comprises graphical help information.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.