WikiPatents - Community Patent Review
Create Free Account  |  License or Sell Your Patent  |  WikiPatents Marketplace  |  WikiPatents Blog
Username:  Password:  
    
Advanced Search
Process control system with reconfigurable expert rules and control modules    
United States Patent5006992   
Link to this pagehttp://www.wikipatents.com/5006992.html
Inventor(s)Skeirik; Richard D. (Newark, DE)
AbstractAn integrated system for process control in which a process supervisor procedure (which is preferably the top-level procedure) is configured as a modular software structure, with modules which can be revised by a user at any time, without significantly interrupting the operation of the process supervisor. The modular software structure can define control parameters for many process control procedures, and can retrieve data from many sources (preferably including a historical database of process data, which can provide time-stamped data). The supervisor can also call on various expert subprocedures. Preferably the expert subprocedures can also be modified by an authorized user at any time, by calling up and editing a set of natural-language rule templates which correspond to the rules being executed by the expert subprocedure.
   














 Title Information Submit all comments and votes
 
Patent Text Patent PDF Print Page Summary File History
Plain text PDF images Print Summary File History
Inventor     Skeirik; Richard D. (Newark, DE)
Owner/Assignee     Du Pont de Nemours and Company (Wilmington, DE)
Patent assignment
All assignments
Publication Date     April 9, 1991
Application Number     07/103,014
PAIR File History     Application Data   Transaction History
Image File Wrapper   Patent Term   Fees
Litigation
Filing Date     September 30, 1987
US Classification     706/58 700/47 706/906
Int'l Classification     G06F 015/18
Examiner     MacDonald; Allen
Assistant Examiner    
Attorney/Law Firm     Saidman, Sterne Kessler & Goldstein
Address
Parent Case    
Priority Data    
USPTO Field of Search     364/513 364/468 364/469 364/148 364/149 364/150 364/151 364/152 364/191
Patent Tags     control reconfigurable expert rules control modules
   
Enter a comma (,) or semicolon (;) between multiple tag words/phrases.
Describe this patent:
 Amusing   
 Clever   
 Complex   
 Efficient   
 Historic   
 Important   
 Innovative   
 Interesting   
 Practical   
 Simple   
[no votes]
Patent WIKI

Share information and news about this patent, including information and news about the technology, inventors, company, ligation and licensing.

 References Submit all comments and votes
 
*references marked with an asterisk below are user-added references
 U.S. References
 
Add a new US reference:  
ReferenceRelevancyCommentsReferenceRelevancyComments
4825353
Jenkins
700/32
Apr,1989

[0 after 0 votes]
4783752
Kaplan
706/48
Nov,1988

[0 after 0 votes]
4670848
Schramm
706/62
Jun,1987

[0 after 0 votes]
4658370
Erman
706/60
Apr,1987

[0 after 0 votes]
4648044
Hardy
706/60
Mar,1987

[0 after 0 votes]
4628434
Tashiro
706/45
Dec,1986

[0 after 0 votes]
4616306
Kuzma
700/19
Oct,1986

[0 after 0 votes]
 Foreign References
 Other References
 Market Review Submit all comments and votes
   
Market Size
Estimate the gross annual revenues of the relevant market sector:
> $10B
$5B - $10B
$2B - $5B
$500M - $2B
$100M - $500M
$10M - $100M
$1M - $10M
$500K - $1M
$100K - $500K
< $100K
[No votes]
$0
 
$0   $2.5B   $5B   $7.5B   $10B
Market Share
Estimate the percentage of the relevant market sector this invention will capture:
75% - 100%
50% - 74.99%
25% - 49.99%
10 - 24.99%
5 - 9.99%
2 - 4.99%
1 - 1.99%
< 1%
[No votes]
0.0%
 
0%   25%   50%   75%   100%
Reasonable Royalty
What percentage of gross sales should the inventor or assignee be paid?
75% - 100%
50% - 74.99%
25% - 49.99%
10 - 24.99%
5 - 9.99%
2 - 4.99%
1 - 1.99%
< 1%
[No votes]
0.0%
 
0%   25%   50%   75%   100%
Public's "Guesstimation" of Royalty Value
Market SizeN/A[No votes]
xMarket ShareN/A[No votes]
xReasonable RoyaltyN/A[No votes]

N/A

License Availablity
If you are NOT the owner or assignee, answer here:
Yes, license is available for purchase

No, license is not currently available



[No votes]
License Availablity
If you ARE the owner or assignee, answer here:
Yes, license is available for purchase

No, license is not currently available



[No votes]
Competitive Advantage
Does this invention have a significant competitive advantage over similar technologies?
Yes

No



[No votes]
Most helpful competitive advantage comment
[No comments]

Commercial Alternatives
Are there viable commercial alternatives for this invention?
Yes

No



[No votes]
Most helpful commercial alternative comment
[No comments]

 Technical Review Submit all comments and votes
 Claims Submit all comments and votes
 


What is claimed is:

1. A computer-based method for operating a substantially continuous process, comprising the steps of:

(1) operating the process with one or more sensors connected to sense conditions in the process, and one or more actuators connected to change conditions in the process;

(2) controlling one or more of said actuators with a process controller in accordance with signals received directly from one or more of said sensors and in accordance with one or more control parameters; and

(3) running a process supervisor procedure, comprising one or more software modules, for selectively defining one or more of said control parameters for said process controller, said process supervisor procedure also calling on at least one expert subprocedure which uses a knowledge base and inference structure relevant to the process.

2. The method of claim 1, wherein said knowledge base and inference structure of step (3) comprise the step of running a substantially real-time expert control procedure.

3. The method of claim 1, wherein said process controller of step (2) comprises the step of controlling said actuators substantially continuously in real time, and said expert subprocedure of step (3) comprises the step of not running continuously in real time.

4. The method of claim 1, wherein said process controller of step (2) comprises the step of using real-time logic, and said expert subprocedure of step (3) comprises the step of recurrently running as a batch process.

5. The method of claim 1, wherein said process controller of step (2) uses analog logic for controlling.

6. The method of claim 1, wherein respective data definitions comprise the step of defining said one or more software modules of step (3), including pointers to procedures which will carry out a respective function, and, for at least some of said software modules, parameters to be passed to said procedures pointed to.

7. The method of claim 1, wherein one or more of said control parameters of step (2) comprise the step of including goals of said process controller.

8. The method of claim 1, wherein said process controller of step (2) and said process supervisor procedure of step (3) comprise the step of using processes running on the same computer system.

9. The method of claim 1, wherein said process controller of step (2) and said process supervisor procedure of step (3) comprise the step of being part of the same software system.

10. The method of claim 1, wherein said expert subprocedure comprises the steps of:

(1) executing upon command from said process supervisor procedure;

(2) running under the control of a timing procedure; and

(3) preventing said process supervisor procedure from taking any further action until execution of said expert subprocedure is completed.

11. A computer-based method for operating a substantially continuous process, comprising the steps of:

(1) operating the process with one or more sensors connected to sense conditions in the process, and one or more actuators connected to change conditions in the process;

(2) controlling one or more of said actuators with a process controller in accordance with signals received from said sensors and in accordance with control parameters;

(3) running a process supervisor procedure for selectively defining one or more of said control parameters for said process controller, said supervisor procedure also calling on at least one expert subprocedure which uses a knowledge base and inference structure relevant to the process; and

(4) using an historical database containing at least one time-stamped data regarding the process, wherein said supervisor procedure or said expert subprocedure fetch at least one value from said historical database.

12. The method of claim 11, wherein said knowledge base and inference structure of step (3) comprise the step of defining a substantially real-time expert control procedure.

13. The method of claim 11, wherein one or more of said control parameters of step (2) comprise the step of including goals of said process controller.

14. A computer-based method for operating a substantially continuous process, comprising the steps of:

(1) operating the process with one or more sensors connected to sense conditions in the process, and one or more actuators connected to change conditions in the process;

(2) controlling one or more of said actuators with a process controller in accordance with signals received from said sensors and in accordance with control parameters;

(3) running a process supervisor procedure for selectively defining one or more of said control parameters for said process controller, said supervisor procedure also calling on at least one expert subprocedure which uses a knowledge base and inference structure relevant to the process; and

(4) selectively presenting to a user a functional structure for a new rule for said expert subprocedure and/or a functional structure corresponding to the user input from which a current version of said expert subprocedure was generated, and selectively compiling one or more user inputs from said functional structure into a new version of said expert subprocedure.

15. The method of claim 14, wherein said functional structure of step (4) comprises the step of including user-alterable portions which appear differently to said user than do other portions of said functional structure.

16. The method of claim 14, wherein said step of presenting functional structures includes presenting standardized data interface definitions such that the user can specify data having one of plural pre-defined temporal characteristics.

17. The method of claim 14, wherein said knowledge base and inference structure of step (3) comprise the step of defining a substantially real-time expert control procedure.

18. The method of claim 14, wherein one or more of said control parameters of step (2) comprise the step of including goals of said process controller.

19. A computer-based method for operating a substantially continuous process, comprising the steps of:

(1) operating the process with one or more sensors connected to sense conditions in the process, and one or more actuators connected to change conditions in the process;

(2) controlling one or more of said actuators with a process controller in accordance with signals received from said sensors and in accordance with control parameters;

(3) running a process supervisor procedure, comprising one or more software modules, for selectively defining one or more of said control parameters for said process controller, said process supervisor procedure also calling on at least one expert subprocedure which uses a knowledge base and inference structure relevant to the process;

(4) selectively presenting functional structures, to a user, for a new rule for said expert subprocedure and/or a functional structure corresponding to the user input from which a current version of said expert subprocedure was generated, and selectively compiling one or more user inputs from said functional structure into a new version of said expert subprocedure; and

(5) selectively presenting functional structures, to a user, for a new software module for said process supervisor procedure and/or a functional structure corresponding to a user input from which a current software module of said process supervisor procedure was generated, and selectively loading the user input from said functional structure to be used by said process supervisor procedure.

20. The method of claim 19, wherein said functional structure presented to the user in step (4) comprises the step of using a substantially natural language format.

21. The method of claim 19, wherein said functional structure presented to the user in step (4) comprises the step of using a substantially natural language format which is readily understandable by a user who is technically skilled in a predetermined art but who is not necessarily competent in any computer language.

22. The method of claim 19, wherein only restricted portions of said functional structure of step (4) comprises the step of allowing for user-alterability.

23. The method of claim 19, wherein said user-alterable portions of said functional structures appear differently to said user than do other portions of said functional structures.

24. The method of claim 19, wherein said step of presenting functional structure in step (4) further comprises the step of including presenting standardized data interface definitions such that the user can specify data having one of plural pre-defined temporal characteristics.

25. The method of claim 19, wherein said knowledge base and inference structure of step (3) comprises the step of defining a substantially real-time expert control procedure.

26. The method of claim 19, wherein respective data definitions comprise the step of defining said one or more software modules of step (3), including pointers to procedures which will carry out a respective function, and, for at least some of said software modules, parameters to be passed to said procedures pointed to.

27. The method of claim 19, wherein respective data definitions comprise the step of defining said one or more software modules of step (3), including pointers to procedures which will carry out a respective function, wherein most of said procedures pointed to correspond generally to one of a limited number of procedure types, and wherein at least some of said procedures pointed to also containing further pointers to procedures which do not correspond generally to any one of said limited number of procedure types, and, for at least some of said software modules, parameters to be passed to said procedures pointed to.

28. The method of claim 19, wherein one or more of said control parameters of step (2) comprise the step of including goals of said process controller.

29. A computer-based method for operating a substantially continuous process, comprising the steps of:

(1) operating the process with one or more sensors connected to sense conditions in the process, and one or more actuators connected to change conditions in the process; and

(2) controlling, using a process controller, one or more of said actuators

in accordance with signals received from one or more of said sensors

and in accordance with one or more control parameters,

(3) wherein at least one of said control parameters is redefined in accordance with output(s) which is selectively provided by at least one expert subprocedure which includes a knowledge base and inference structure relevant to the process, and

wherein said expert subprocedure fetches at least one value of a process variable from an historical database containing at least one time-stamped data regarding the process.

30. The method of claim 29, wherein said knowledge base and inference structure of step (3) comprise the step of defining a substantially real-time expert control procedure.

31. The method of claim 29, wherein said process controller of step (2) further comprises the step of operating substantially continuously in real time, and wherein said expert subprocedure of claim (3) comprises the step of not operating continuously in real time.

32. The method of claim 29, wherein said process controller of step (2) comprises the step of using real-time logic, and wherein said expert subprocedure of step (3) comprises the step of recurrently running as a batch process.

33. The method of claim 29, wherein said process controller uses analog logic for controlling.

34. A computer-based method for operating a substantially continuous process, comprising the steps of:

(1) operating the process with one or more sensors connected to sense conditions in the process, and one or more actuators connected to change conditions in the process; and

(2) controlling one or more of said actuators

in accordance with signals received from one or more of said sensors

and in accordance with one or more control parameters,

(3) wherein at least one of said control parameters is redefined in accordance with output(s) which is selectively provided by at least one expert subprocedure which includes a knowledge base and inference structure relevant to the process; and

(4) selectively presenting functional structures, to a user, for a new rule for said expert subprocedure and/or a functional structure corresponding to the user input from which a current version of said expert subprocedure was generated, and selectively compiling one or more user inputs from said functional structure into a new version of said expert subprocedure.

35. The method of claim 34, wherein said functional structure presented to the user in step (4) comprises the step of using a substantially natural language format which is readily understandable by a user who is technically skilled in a predetermined art but who is not necessarily competent in any computer language.

36. The method of claim 34, wherein only restricted portions of said functional structure of step (4) comprises the step of allowing for user-alterability.

37. The method of claim 34, wherein said functional structure of step (4) comprises the step of including user-alterable portions which appear differently to said user than do other portions of said functional structure.

38. The method of claim 34, wherein said step of presenting functional structures includes presenting standardized data interface definitions such that the user can specify data having one of plural pre-defined temporal characteristics.

39. The method of claim 34, wherein said knowledge base and inference structure of step (3) comprise the step of defining a substantially real-time expert control system.

40. A computer-based system for controlling a substantially continuous process, comprising:

(a) one or more sensors connected to sense conditions in the process, and one or more actuators connected to change conditions in the process;

(b) a process controller connected to directly receive sense data generated by at least one of said sensors, and connected to control one or more of said actuators in accordance with said sensor data and in accordance with respective control parameters;

(c) process supervisor means comprising one or more software modules, for communicating said control parameters to said process controller;

(d) at least one expert subprocedure means which uses a knowledge base and inference structure relevant to the process, and which is callable by said process supervisor means;

wherein said process supervisor means has a maximum iteration period significantly longer than the maximum iteration period of said process controller.

41. The system of claim 40, wherein said process supervisor means of element (c) uses means for cycling, and said process controller of element (b) runs substantially in real-time.

42. The system of claim 40, wherein said knowledge base and inference structure of element (d) define a substantially real-time expert control system.

43. The system of claim 40, wherein said process controller operates substantially continuously in real time, and said expert subprocedure means of element (d) does not operate continuously in real time.

44. The system of claim 40, wherein said process controller comprises real-time logic, and said expert subprocedure means of element (d) is recurrently run as a batch process.

45. The system of claim 40, wherein said controller is an analog controller.

46. The system of claim 40, wherein said one or more software modules of element (c) are defined by respective data definitions, including pointers to first means for carrying out a respective function, and, for at least some of said software modules, parameters to be passed to said first means pointed to.

47. The system of claim 40, wherein one or more of said control parameters of element (b) use goals of said process controller.

48. The system of claim 40, wherein said process controller of element (b) and said process supervisor means of element (c) comprise processes running on the same computer system.

49. The system of claim 40, wherein said process controller of element (b) and said process supervisor means of element (c) are both respective parts of the same software system.

50. A computer-based system for controlling a substantially continuous process, comprising:

(a) one or more sensors connected to sense conditions in the process, and one or more actuators connected to change conditions in the process;

(b) a process controller connected to receive sense data generated by at least one of said sensors, and connected to control one or more of said actuators in accordance with said sensor data and in accordance with respective control parameters;

(c) process supervisor means comprising one or more software modules, for communicating said control parameters to said process controller;

(d) at least one expert subprocedure means which uses a knowledge base and inference structure relevant to the process, and which is callable by said process supervisor means;

(e) an historical database containing at least one time-stamped data regarding the process;

wherein said process supervisor means has a maximum iteration period significantly longer than the maximum iteration period of said process controller.

51. The system of claim 50, wherein said knowledge base and inference structure of element (d) define a substantially real-time expert control system.

52. The system of claim 50, wherein said one or more software modules of element (c) are defined by respective data definitions, including pointers to first means for carrying out a respective function, and, for at least some of said software modules, parameters to be passed to said first means pointed to.

53. The system of claim 50, wherein said one or more software modules of element (c) are defined by respective data definitions, including pointers to first means for carrying out a respective function, wherein most of said first means pointed to correspond generally to one of a limited number of procedure types, and wherein at least some of said first means pointed to also containing further pointers to second means which do not correspond generally to any one of said limited number of procedure types, and, for at least some of said software modules, parameters to be passed to said first means pointed to.

54. The system of claim 50, wherein one or more of said control parameters of element (b) use goals of said process controller.

55. A computer-based system for controlling a substantially continuous process, comprising:

(a) one or more sensors connected to sense conditions in the process, and one or more actuators connected to change conditions in the process;

(b) a process controller connected to receive sense data generated by at least one of said sensors, and connected to control one or more of said actuators in accordance with said sensor data and in accordance with respective control parameters;

(c) process supervisor means comprising one or more software modules, connected to communicate said respective control parameters to said process controller;

(d) at least one expert subprocedure means which uses a knowledge base and inference structure relevant to the process, and which is callable by said process supervisor means;

(e) build-expert means which is configured to:

(1) upon command, selectively present to a user a functional structure for a new rule for said expert subprocedure means;

(2) upon command, selectively present to a user a functional structure corresponding to the user input from which a current version of said expert subprocedure means was generated;

(3) and selectively to compile one or more user inputs from said functional structure into a new version of said expert subprocedure means;

wherein said process supervisor means has a maximum iteration period significantly longer than the maximum iteration period of said process controller.

56. The system of claim 55, wherein said functional structure of element (1) presented to the user has a substantially natural language format which is readily understandable by a user who is technically skilled in a predetermined art but who is not necessarily competent in any computer language.

57. The system of claim 55, wherein only restricted portions of said functional structure of element (1) is user-alterable.

58. The system of claim 55, wherein said functional structure of element (1) comprises user-alterable portions which appear differently to said user than do other portions of said functional structure.

59. The system of claim 55, wherein said functional structure of element (1) uses standardized data interface definitions such that the user can specify data having one of plural pre-defined temporal characteristics.

60. The system of claim 55, wherein said knowledge base and inference structure of element (d) define a substantially real-time expert control system.

61. The system of claim 55, wherein said one or more software modules of element (c) are defined by respective data definitions, including pointers to first means for carrying out a respective function, and, for at least some of said software modules, parameters to be passed to said first means pointed to.

62. The system of claim 55, wherein one or more of said control parameters of element (b) use goals of said process controller.

63. A computer-based system for controlling a substantially continuous process, comprising:

(a) one or more sensors connected to sense conditions in the process, and one or more actuators connected to change conditions in the process;

(b) a process controller connected to receive sense data generated by at least one of said sensors, and connected to control one or more of said actuators in accordance with said sensor data and in accordance with respective control parameters;

(c) process supervisor means comprising one or more software modules, for communicating said control parameters to said process controller;

(d) at least one expert subprocedure means which uses a knowledge base and inference structure relevant to the process, and which is callable by said process supervisor means; and

(e) build-expert means which is configured to:

(1) upon command, selectively present to a user a functional structure for a new rule for said expert subprocedure means;

(2) upon command, selectively present to a user a functional structure corresponding to the user input from which a current version of said expert subprocedure means was generated;

(3) and selectively to compile one or more user inputs from said functional structure into a new version of said expert subprocedure means; and

(f) build-supervisor means which is configured to:

(4) upon command, selectively present to a user a functional structure for a new software module for said process supervisor means;

(5) upon command, present to a user a functional structure corresponding to a user input from which a current software module of said process supervisor means was generated;

(6) and selectively to load the user input from said functional structure to be used by said process supervisor means;

wherein said process supervisor means has a maximum iteration period significantly longer than the maximum iteration period of said process controller.

64. The system of claim 63, wherein said build-supervisor means of element (f) does not allow data corresponding to fresh user inputs to become actively accessed by said process supervisor means of element (c) until a validation run has been performed.

65. The system of claim 63, wherein said process supervisor means of element (c) uses means for cycling, and said process controller of element (b) runs substantially in real-time.

66. The system of claim 63, wherein said functional structure of element (1) presented to the user has a substantially natural language format which is readily understandable by a user who is technically skilled in a predetermined art but who is not necessarily competent in any computer language.

67. The system of claim 63, wherein only restricted portions of said functional structure of element (1) is user-alterable.

68. The system of claim 63, wherein said functional structure of element (1) comprises user-alterable portions which appear differently to said user than do other portions of said functional structure.

69. The system of claim 63, wherein said knowledge base and inference structure of element (d) define a substantially real-time expert control system.

70. The system of claim 63, wherein said process controller of element (b) operates substantially continuously in real time, and said expert subprocedure means of element (d) does not operate continuously in real time.

71. The system of claim 63, wherein said controller is an analog controller.

72. The system of claim 63, wherein said one or more software modules of element (c) are defined by respective data definitions, including pointers to first means for carrying out a respective function, and, for at least some of said software modules, parameters to be passed to said first means pointed to.

73. The system of claim 63, wherein said one or more software modules of element (c) are defined by respective data definitions, including pointers to first means for carrying out a respective function, wherein most of said means pointed to correspond generally to one of a limited number of procedure types, and wherein at least some of said first means pointed to also containing further pointers to second means which do not correspond generally to any one of said limited number of procedure types, and, for at least some of said software modules, parameters to be passed to said first means pointed to.

74. The system of claim 63, wherein one or more of said control parameters of element (b) use goals of said process controller.

75. The system of claim 63, wherein said process controller of element (b) and said process supervisor means of element (c) comprise processes running on the same computer system.

76. The system of claim 63, wherein said process controller of element (b) and said process supervisor means of element (c) are both respective parts of the same software system.

77. A computer-based method for operating a substantially continuous process, comprising the steps of:

(1) operating the process with one or more sensors connected to sense conditions in the process, and one or more actuators connected to change conditions in the process;

(2) controlling one or more of said actuators with a process controller in accordance with signals directly received from one or more of said sensors and in accordance with one or more control parameters;

(3) running a process supervisor procedure, comprising one or more software modules, connected to define one or more of said control parameters for said process controller; and

(4) calling by said process supervisor procedure an expert subprocedure which uses a knowledge base and inference structure relevant to the process for the steps of:

(i) defining one or more of said control parameters for said process controller; or

(ii) controlling the defining of one or more of said control parameters by said process supervisor procedure.

78. The method of claim 77, wherein step (4) comprises a step of using two or more expert subprocedures, each having its own knowledge base.

79. The method of claim 77, wherein the step of using at least two expert subprocedures comprises the step of using a common inference structure for at least two of said expert subprocedures.

80. A computer-based method for operating a substantially continuous process, comprising the steps of:

(1) operating the process with one or more sensors connected to sense conditions in the process, and one or more actuators connected to change conditions in the process; and

(2) controlling, using a process controller, one or more of said actuators

in accordance with signals directly received from one or more of said sensors

and in accordance with one or more control parameters,

(3) wherein at least one of said control parameters is redefined in accordance with output(s) which is selectively provided by at least one expert subprocedure which uses a knowledge base and inference structure relevant to the process.

81. A computer-based method for operating a substantially continuous process, comprising the steps of:

(1) operating the process with one or more sensors connected to sense conditions in the process, and one or more actuators connected to change conditions in the process;

(2) controlling one or more of said actuators with a process controller in accordance with signals directly received from one or more of said sensors and in accordance with one or more control parameters; and

(3) running a process supervisor procedure, for selectively defining one or more of said control parameters for said process controller, said process supervisor procedure selectively using an expert subprocedure which uses a knowledge base and inference structure relevant to the process.
 Description Submit all comments and votes
 


A portion of the disclosure of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent disclosure, as it appears in the Patent and Trademark Office patent files or records, but otherwise reserves all copyright rights whatsoever.

CROSS-REFERENCE TO OTHER APPLICATIONS

The following applications of common assignee contain some common disclosure, and are believed to have effective filing dates identical with that of the present application:

EXPERT SYSTEM WITH NATURAL-LANGUAGE RULE UPDATING (Dupont docket No. PI-445 (1100/1 filed Sept. 30, 1987; Ser. No. 103,050 now U.S. Pat. No. 4,920,499));

EXPERT SYSTEM WITH THREE CLASSES OF RULES (Dupont docket No. PI-446 (1100/2 filed Sept. 30, 1987; Ser. No. 102,832 now U.S. Pat. No. 4,884,217));

PROCESS CONTROL SYSTEM WITH ACTION LOGGING (Dupont docket No. PI-448 (1100/4 filed Sept. 30, 1987; Ser. No. 103,118 now U.S. Pat. No. 4,907,167));

PROCESS CONTROL SYSTEM WITH ON-LINE RECONFIGURABLE MODULES (Dupont docket No. PI-449 (1100/5 filed Sept. 30, 1987; Ser. No. 103,047 pending));

and PROCESS CONTROL SYSTEM WITH MULTIPLE MODULE SEQUENCE OPTIONS (Dupont docket No. PI-450 (1100/6 filed Sept. 30, 1987; Ser. No. 103,124 now U.S. Pat. No. 4,910,691)).

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to expert systems (also known as knowledge-based systems), to process control systems, and to hybrids thereof.

2. Discussion of Related Art

Various known teachings which are believed to be related to various ones of the innovations disclosed in the present application will now be discussed. However, applicant specifically notes that not every idea discussed in this section is necessarily prior art. For example, the characterizations of the particular patents and publications discussed may relate them to inventive concepts in a way which is itself based on knowledge of some of the inventive concepts. Moreover, the following discussion attempts to fairly present various suggested technical alternatives (to the best of applicant's knowledge), even though the teachings of some of those technical alternatives may not be "prior art" under the patent laws of the United States or of other countries. Similarly, the Summary of the Invention section of the present application may contain some discussion of prior art teachings, interspersed with discussion of generally applicable innovative teachings and/or specific discussion of the best mode as presently contemplated, and applicant specifically notes that statements made in the Summary section do not necessarily delimit the various inventions claimed in the present application or in related applications.

Process Control Generally

To compete in global markets, manufacturers must continually improve the quality and cost of manufacture of their products. They must do this in the face of changing market needs, changing raw materials costs, and reduced staffing. Automatic computer control of the manufacturing process can play an important part in this, especially in the chemical process industry. Most process plants already have the basic automatic regulating controls (low level controls) needed to control the plant at a given operating point. These provide the foundation for higher level supervisory controls (referred to here as supervisor procedures or supervisors) that seek to improve quality, reduce cost, and increase plant uptime by moving the plant to a different operating point. These changes can be made directly via the lower level controls, or indirectly via the plant operator.

Although supervisory controls have been in use for years, they have lacked a number of desirable features. To best improve quality and cost, a supervisor procedure should:

help control the quality of the end product;

reduce the cost of operating the plant;

help avoid unnecessary upsets or shutdowns;

work effectively with plant operators;

act in concert with standard operating procedures; and

be supportable by plant operating and support people.

To measure quality, a supervisor procedure should ideally have access to measurements of the basic properties of the product which affect its value and usefulness to the customer. Since most product properties measurements are sampled (and are measured in a laboratory), the supervisor should have access to a historical process database which can store these measurements as well as the basic process data from the lower level control systems. Since sampled measurements and the process itself normally include some components of random variation, the supervisor should include statistical tests which can determine if a sequence of sampled measurements is varying normally around its aim value (i.e. is "on aim"), or has shifted significantly from aim (is "off aim").

To control quality, a supervisor procedure should have the capability to change the operating point of the process (via the lower level controls) when a measured property goes off aim. It should have the ability to act in response to new data or statistical tests, or to act at regular time intervals. It should also be able to preemptively change the operating point when basic conditions (such as plant production rate) change. It should allow a number of independent control objectives, and new ones should be easy to add. Since the process may use any number of different low level controllers, the supervisor should be able to communicate with all of them.

To work effectively with plant operators, a supervisor procedure should be understandable. It should carry out its control actions in a way that is natural and understandable to operators. It should provide enough information about its current state and its past actions for the operator to judge its performance. It should inform the operator when it acts (or chooses not to act), explaining how much action was taken, where it was taken, why it was done, and what effect it might have. Since the effect of actions taken to control quality and reduce cost can last longer than a single shift, it should provide a record of all its actions.

To act appropriately under all circumstances, to reduce operating costs in a way consistent with quality, to help avoid unnecessary upsets and shutdowns, and to take operating procedures into account, a supervisor should ideally include the logical decision making capabilities of expert systems. Because decisions will normally focus on a specific task or area, many independent expert systems should be allowed. The expert systems should have access to the many sources of process measurements, laboratory measurements, and control system parameters. They should be able to reason symbolically using that information, and to make their decisions take effect through communication and control actions. To work effectively, the supervisor should be able to control its expert system functions in concert with its other functions.

To be supported by plant personnel, the supervisor should be easy to use. It should allow common control actions to be set up easily, with a means of customizing less common functions. It should allow control actions to be changed easily. It should have a simple means of specifying the informative messages to be generated about it actions. Its expert systems should allow process knowledge to be entered, stored, and updated in a way that plant support people understand. It should provide a simple, appropriate knowledge representation which naturally includes data retrieval, symbolic reasoning, and effective means of implementing decisions in the plant. The knowledge structure should allow any authorized plant expert to enter knowledge, without restricting access to those who know computer languages or have memorized special rule structures.

The present invention addresses many of these concerns.

Normally supervisory control has been thought of separately from another higher level of control called optimizing control, which seeks to minimize operating cost. In some cases, the requirement to minimize variation in product properties (i.e. to improve product quality) is absolutely primary, so that cost optimization only be performed as an objective secondary to quality objectives. In this environment, use of classical optimization techniques to achieve cost optimization may not be possible. In other cases, it has been possible to integrate a balance of supervisory and optimizing control into the supervisor.

Modularity

Supervisory control systems using a modular structure are well known. For example, the Process Monitoring and Control-1000 (PMC-1000) control package marketed by Hewlett Packard is a modular control package which can function as a supervisory control system. PMC modules, called blocks, perform alarming and limiting, proportional/integral/derivative control, trending, driving an electrical output, running programs, and other functions. Each block writes one or more output values into memory. To build PMC control structures, the user creates as many blocks as needed and links them to other block output values. A new runnable system must then be generated. Once the system is running, parameters such as gain constants can be changed, but the linking of blocks is fixed. PMC runs on a base time cycle, and blocks can only be scheduled to execute at multiples of the base cycle time. Although PMC maintains a historical database, it cannot be used for control, and does not effectively store intermittently sampled data. It is believed that there is no maximum number of blocks.

It is believed that some earlier discussion of the significance of modularity in process control software is found in Watson, "Process Control Using Modular Package Software," IEE Conference Publications number 102 (1973) (which is hereby incorporated by reference).

Historical Process Database

A database of historical process data is generally described in Hale and Sellars, "Historical Data Recording for Process Computers," 77 Chem. Eng'g Progress 38 (1981) (which is hereby incorporated by reference).

Continuous Control Actions

In classical feedback and feedforward control, the prior art teaches that the best control results are achieved by making continuous changes to the process. In computer control, where cyclic operation forces changes to be made in discrete steps, many small, frequent steps are conventionally preferred. While in principle this gives the best possible control performance, such control actions are very difficult to visualize. In fact, it may be impossible to determine what actions have been taken by what control strategies, and how long the control strategies have been making changes. This makes it very difficult to judge whether control strategies are working properly, or even if they are working at all. This method of control also runs counter to the methods used by operators, who generally make a few significant changes and wait to see the effects.

In feedback control, the use of a deadband is a well known way of avoiding small actions caused by a noisy measurement. (That is, if the control variable falls within a specified deadband of values surrounding the goal value, the control value will not be manipulated.) This deadband, as is well known, helps to avoid instability in control systems. Statistical process control also tends to reduce the number of feedback control actions. However, neither technique is sufficient to make all control actions understandable, since some actions will not be considered no