Measurements expert system and method for generating high-performance measurements software drivers
원문보기
IPC분류정보
국가/구분
United States(US) Patent
등록
국제특허분류(IPC7판)
G06F-017/00
G06F-009/44
출원번호
US-0010829
(2001-11-13)
발명자
/ 주소
Schmit, Geoffrey
Brumley, Jonathan
Schwan, Brent
Levy, Jack
출원인 / 주소
National Instruments Corporation
대리인 / 주소
Meyertons Hood Kivlin Kowert &
인용정보
피인용 횟수 :
11인용 특허 :
16
초록▼
A measurements expert system and method for generating high-performance measurements software drivers. The measurements expert system is able to interpret a customer's measurement task specification (MTS) specifying a measurement task, explore possible solution paths, and generate a solution, e.g.,
A measurements expert system and method for generating high-performance measurements software drivers. The measurements expert system is able to interpret a customer's measurement task specification (MTS) specifying a measurement task, explore possible solution paths, and generate a solution, e.g., a run-time specification (RTS), optimized for the customer's measurement system. The expert system includes programs for analyzing and validating a received MTS, and a plurality of measurements experts which are operable to analyze all or part of the MTS and populate complete or partial RTSs. The partial RTSs are iteratively populated by other experts to form complete RTSs. Competing RTSs may be assessed and a final RTS selected based upon user preferences. The final RTS is useable to configure one or more measurement devices according to the RTS, and to generate a run-time which is executable to perform the specified measurement task using the one or more measurement devices.
대표청구항▼
1. A memory medium comprising program instructions implementing an expert system, wherein the expert system is operable to perform:receiving a measurement task specification, wherein the measurement task specification specifies a measurement task; analyzing the measurement task specification; popula
1. A memory medium comprising program instructions implementing an expert system, wherein the expert system is operable to perform:receiving a measurement task specification, wherein the measurement task specification specifies a measurement task; analyzing the measurement task specification; populating one or more candidate run-time specifications; calculating one or more metrics for each of the populated candidate run-time specifications; and selecting one of the populated candidate run-time specifications based on the calculated metrics to produce a run-time specification, wherein the selected populated candidate run-time specification comprises at least a portion of said run-time specification; wherein the run-time specification is useable to: configure one or more measurement devices according to the run-time specification; and generate a run-time, wherein said run-time is executable to perform the measurement task. 2. The memory medium of claim 1,wherein said expert system comprises a plurality of experts; and wherein, in said populating the one or more candidate run-time specifications, the expert system is operable to select and invoke one or more of the plurality of experts to analyze the measurement task specification and populate the one or more candidate run-time specifications. 3. The memory medium of claim 2, wherein, in response to said invocation, each of the one or more experts is operable to:analyze the measurement task specification; populate at least one of the one or more candidate run-time specifications, thereby producing at least one respective populated candidate run-time specification, wherein each respective populated candidate run-time specification comprises one of a partial or complete solution for the measurement task; and for each respective populated candidate run-time specification comprising a partial solution, generate a respective new measurement task specification comprising an unsolved portion of the measurement task specification. 4. The memory medium of claim 2, wherein each of said one or more experts is operable to:analyze the measurement task specification; and if said analysis indicates that the expert is not operable to populate at least a portion of at least one of the one or more candidate run-time specifications, indicate to the expert system that the expert did not populate the one or more candidate run-time specifications for the measurement task specification. 5. The memory medium of claim 2, wherein each of said one or more experts is operable to:analyze the measurement task specification; and if said analysis indicates that the expert is operable to populate at least one of the one or more candidate run-time specifications, populate said at least one of the one or more candidate run-time specifications; and communicate said at least one of the one or more populated candidate run-time specifications to the expert system. 6. The memory medium of claim 2, wherein each of said one or more experts is operable to:analyze the measurement task specification; and if said analysis indicates that the expert is operable to populate only a first portion of at least one of the one or more candidate run-time specifications corresponding to a first portion of the measurement task specification, populate the first portion of said at least one of the one or more candidate run-time specifications; communicate the first portion of said at least one of the one or more candidate run-time specifications to the expert system; and submit a second portion of the measurement task specification to the expert system as a new, second measurement task specification, for which a respective candidate run-time specification portion was not populated. 7. The memory medium of claim 6, wherein the expert system is further operable to:receive said second measurement task specification; analyze the second measurement task specification; select and invoke one or more of the plurality of experts to analyze the second measurement task specification and populate one or more second candidate run-time specifications; calculate one or more metrics for each of the populated second candidate run-time specifications; and select one of the populated second candidate run-time specifications based on the calculated metrics; wherein the selected populated second candidate run-time specification comprises at least a second portion of said run-time specification of the measurement task. 8. The memory medium of claim 7, wherein, in response to said invocation, each of the one or more experts is operable to:analyze the second measurement task specification; populate at least one of the one or more second candidate run-time specifications, thereby producing at least one respective populated second candidate run-time specification, wherein each respective populated second candidate run-time specification comprises a partial or complete solution for the measurement task; and for each respective populated second candidate run-time specification comprising a partial solution, generate a respective new third measurement task specification comprising an unsolved portion of the second measurement task specification. 9. The memory medium of claim 8, wherein each said second portion of the measurement task specification comprises an unsolved measurement sub-task specification, wherein the expert system is further operable to perform an iterative process comprising:receiving unsolved measurement sub-task specifications; analyzing each unsolved measurement sub-task specification; selecting and invoking one or more other different experts of the plurality of experts to analyze each unsolved measurement sub-task specification and populate one or more respective candidate run-time specifications; calculating one or more metrics for each of the populated respective candidate run-time specifications; and select one of the populated respective candidate run-time specifications based on the calculated metrics; wherein the selected populated respective candidate run-time specification comprises at least a portion of said run-time specification of the measurement task; and wherein said iterative process is performed until either a complete run-time specification is populated, or the expert system determines that population of the complete run-time specification is not possible. 10. The memory medium of claim 9, wherein, in response to said invocation, each of the one or more experts is operable to:analyze at least one of the unsolved measurement sub-task specifications; populate at least one of the one or more respective candidate run-time specifications, thereby producing at least one populated respective candidate run-time specification, wherein each populated respective candidate run-time specification comprises a partial or complete solution for said at least one of the unsolved measurement sub-task specifications; and for each populated respective candidate run-time specification comprising a partial solution, generate a new, fourth respective measurement task specification, wherein the new, fourth respective measurement task specification comprises an unsolved portion of the unsolved measurement sub-task specification. 11. The memory medium of claim 2,wherein said memory medium is operable to store an expert registry, wherein said expert registry comprises information correlating each expert with one or more types of respective measurement tasks; and wherein said selecting one or more of the plurality of experts is performed based on the expert registry. 12. The memory medium of claim 1,wherein the memory medium is comprised in a computer-based measurement system; and wherein the computer-based measurement system includes the one or more measurement devices, wherein the configured one or more measurement devices are operable to respectively perform portions of the measurement task. 13. The memory medium of claim 12, wherein the memory medium contains further program instructions which are executable to:configure the one or more measurement devices according to the run-time specification; and generate a run-time, wherein said run-time is executable to perform the measurement task using the configured one or more measurement devices. 14. The memory medium of claim 1, wherein the expert system is further operable to validate the measurement task specification.15. The memory medium of claim 1, wherein the measurement task comprises a plurality of measurement sub-tasks.16. The memory medium of claim 1, wherein the measurement task comprises a complex measurement operation using a plurality of measurement devices.17. The memory medium of claim 1, wherein at least one of the one or more measurement devices comprises a hardware measurement device.18. The memory medium of claim 1, wherein at least one of the one or more measurement devices comprises a virtual measurement device.19. The memory medium of claim 1, wherein the one or more metrics are specified by a user.20. A method for performing a measurement task, the method comprising:receiving a measurement task specification specifying a measurement task; analyzing the measurement task specification, and generating one or more candidate run-time specifications for the measurement task in response to said analyzing; calculating one or more metrics for each of the one or more candidate run-time specifications; and selecting one of the one or more candidate run-time specifications based on the calculated metrics; wherein the selected candidate run-time specification is useable to: configure one or more measurement devices according to the selected run-time specification; and generate a run-time, wherein said run-time is executable to perform the measurement task. 21. The method of claim 20, further comprising:reserving one or more resources according to the selected run-time specification after said analyzing the selected run-time specification. 22. The method of claim 20, further comprising:validating the measurement task specification in response to said analyzing the measurement task specification. 23. The method of claim 20, further comprising:storing one or more of the measurement task specification, the selected run-time specification, and configuration information for the one or more measurement devices. 24. The method of claim 20, further comprising:executing said run-time to perform the measurement task. 25. The method of claim 20, wherein said analyzing the measurement task specification and generating one or more candidate run-time specifications for the measurement task comprises an expert system performing:analyzing the measurement task specification; validating the measurement task specification; and selecting and invoking one or more of a plurality of experts to analyze the measurement task specification and populate one or more candidate run-time specifications. 26. The memory medium of claim 25, further comprising each of the one or more experts performing:analyzing the measurement task specification; populating at least one of the one or more candidate run-time specifications, thereby producing at least one respective populated candidate run-time specification, wherein each respective populated candidate run-time specification comprises a partial or complete solution for the measurement task; and for each respective populated candidate run-time specification comprising a partial solution, generate a respective new measurement task specification comprising an unsolved portion of the measurement task specification. 27. The method of claim 25, further comprising each of the one or more experts performing:analyzing the measurement task specification; and if said analyzing indicates that the expert is not operable to populate at least a portion of at least one of the one or more candidate run-time specifications, indicating to the expert system that the expert did not populate the one or more candidate run-time specifications for the measurement task specification. 28. The method of claim 25, further comprising each of the one or more experts performing:analyzing the measurement task specification; and if said analyzing indicates that the expert is operable to populate at least one of the one or more candidate run-time specifications, populating said at least one of the one or more candidate run-time specifications; and communicating said at least one of the one or more candidate run-time specifications to the expert system. 29. The method of claim 25, further comprising each of the one or more experts performing:analyzing the measurement task specification; and if said analyzing indicates that the expert is operable to populate only a first portion of at least one of the one or more candidate run-time specifications corresponding to a first portion of the measurement task specification, populating the first portion of said at least one of the one or more candidate run-time specifications; communicating the first portion of said at least one of the one or more candidate run-time specifications to the expert system; and submitting a second portion of the measurement task specification to the expert system as a new, second measurement task specification, for which a respective candidate run-time specification portion was not populated. 30. The method of claim 29, further comprising the expert system performing:receiving said second measurement task specification; analyzing the second measurement task specification; selecting and invoking one or more of the plurality of experts to analyze the second measurement task specification and populate one or more second candidate run-time specifications; calculating one or more metrics for each of the populated second candidate run-time specifications; and selecting one of the populated candidate run-time specifications based on the calculated metrics; wherein the selected populated candidate run-time specification comprises at least a portion of said generated run-time specification of the measurement task. 31. The method of claim 30, further comprising each of the one or more experts, in response to said invocation, performing:analyzing the second measurement task specification; populating at least one of the one or more second candidate run-time specifications, thereby producing at least one respective populated second candidate run-time specification, wherein each respective populated second candidate run-time specification comprises a partial or complete solution for the measurement task; and for each respective populated second candidate run-time specification comprising a partial solution, generating a respective new, third measurement task specification comprising an unsolved portion of the second measurement task specification. 32. The method of claim 31, wherein each said second portion of the respective measurement task specification comprises an unsolved measurement sub-task specification, the method further comprising the expert system performing an iterative process comprising:receiving unsolved measurement sub-task specifications; analyzing each unsolved measurement sub-task specification; selecting and invoking one or more other different experts of the plurality of experts to analyze each unsolved measurement sub-task specification and populate one or more respective candidate run-time specifications; calculating one or more metrics for each of the populated respective candidate run-time specifications; and select one of the populated respective candidate run-time specifications based on the calculated metrics; wherein the selected populated respective candidate run-time specification comprises at least a portion of said generated run-time specification of the measurement task; wherein said iterative process is performed until either a complete run-time specification is populated, or the expert system determines that population of the complete run-time specification is not possible. 33. The method of claim 32, further comprising each of the one or more experts, in response to said invocation, performing:analyzing at least one of the unsolved measurement sub-task specifications; populating at least one of the one or more respective candidate run-time specifications, thereby producing at least one populated respective candidate run-time specification, wherein each populated respective candidate run-time specification comprises a partial or complete solution for said at least one of the unsolved measurement sub-task specifications; and for each populated respective candidate run-time specification comprising a partial solution, generating a new, fourth respective measurement task specification, wherein the new, fourth respective measurement task specification comprises an unsolved portion of the unsolved measurement sub-task specification. 34. The method of claim 25, further comprising:storing an expert registry, wherein said expert registry comprises information correlating each expert with one or more respective types of measurement tasks; and wherein said selecting one or more of the plurality of experts is performed based on the expert registry. 35. The method of claim 20, wherein the measurement task comprises a plurality of measurement sub-tasks.36. The method of claim 20, wherein the measurement task comprises a complex measurement operation using a plurality of measurement devices.37. The method of claim 20, wherein at least one of the one or more measurement devices comprises a measurement hardware device.38. The method of claim 20, wherein at least one of the one or more measurement devices comprises a virtual measurement device.39. The method of claim 20, wherein the one or more metrics are specified by a user.40. An expert system for generating a measurement program specification for a measurement task, comprising:a first software program operable to analyze a received measurement task specification specifying the measurement task; a validation software program operable to validate the measurement task specification; and a plurality of experts operable to generate the measurement program specification for the measurement task; wherein the measurement program specification is useable to perform the measurement task. 41. The expert system of claim 40,wherein the measurement program specification comprises a run-time specification which is executable to perform the measurement task; and wherein the expert system is operable to: select and invoke one or more of the plurality of experts to analyze the measurement task specification and populate one or more candidate run-time specifications; calculate one or more metrics for each of the populated candidate run-time specifications; and select one of the populated candidate run-time specifications based on the calculated metrics; wherein the selected populated candidate run-time specification comprises at least a portion of said run-time specification. 42. The expert system of claim 41, wherein, in response to said invocation, each of the one or more experts is operable to:analyze the measurement task specification; populate at least one of the one or more candidate run-time specifications, thereby producing at least one respective populated candidate run-time specification, wherein each respective populated candidate run-time specification comprises a partial or complete solution for the measurement task; and for each respective populated candidate run-time specification comprising a partial solution, generate a respective new measurement task specification comprising an unsolved portion of the measurement task specification. 43. The expert system of claim 42, wherein each of said one or more experts is operable to:analyze the measurement task specification; and if said analysis indicates that the expert is not operable to populate at least a portion of at least one of the one or more candidate run-time specifications, indicate to the expert system that the expert did not populate the one or more candidate run-time specifications for the measurement task specification. 44. The expert system of claim 42, wherein each of said one or more experts is operable to:analyze the measurement task specification; and if said analysis indicates that the expert is operable to populate at least one of the one or more candidate run-time specifications, populate said at least one of the one or more candidate run-time specifications; and communicate said at least one of the one or more populated candidate run-time specifications to the expert system. 45. The expert system of claim 42, wherein each of said one or more experts is operable to:analyze the measurement task specification; and if said analysis indicates that the expert is operable to populate only a first portion of the respective candidate run-time specification corresponding to a first portion of the measurement task specification, populate the first portion of the respective candidate run-time specification; communicate the first portion of the respective candidate run-time specification to the expert system; and submit a second portion of the respective measurement task specification to the expert system as a new, second measurement task specification, for which a respective candidate run-time specification portion was not populated. 46. The expert system of claim 45, wherein the expert system is further operable to:receive said second measurement task specification; analyze the second measurement task specification; select and invoke one or more of the plurality of experts to analyze the second measurement task specification and populate one or more second candidate run-time specifications; calculate one or more metrics for each of the populated second candidate run-time specifications; and select one of the populated candidate run-time specifications based on the calculated metrics; wherein the selected populated candidate run-time specification comprises at least a portion of said generated run-time specification of the measurement task. 47. The expert system of claim 46, wherein, in response to said invocation, each of the one or more experts is operable to:analyze the second measurement task specification; populate at least one of the one or more second candidate run-time specifications, thereby producing at least one respective populated second candidate run-time specification, wherein each respective populated second candidate run-time specification comprises a partial or complete solution for the measurement task; and for each respective populated second candidate run-time specification comprising a partial solution, generate a respective new, third measurement task specification comprising an unsolved portion of the second measurement task specification. 48. The expert system of claim 47, wherein each said second portion of the respective measurement task specification comprises an unsolved measurement sub-task specification, wherein the expert system is further operable to perform an iterative process comprising:receiving unsolved measurement sub-task specifications; analyzing each unsolved measurement sub-task specification; selecting and invoking one or more other different experts of the plurality of experts to analyze each unsolved measurement sub-task specification and populate one or more respective candidate run-time specifications; calculating one or more metrics for each of the populated respective candidate run-time specifications; and select one of the populated respective candidate run-time specifications based on the calculated metrics; wherein the selected populated respective candidate run-time specification comprises at least a portion of said run-time specification of the measurement task; wherein said iterative process is performed until either a complete run-time specification is populated, or the expert system determines that population of the complete run-time specification is not possible. 49. The expert system of claim 48, wherein, in response to said invocation, each of the one or more experts is operable to:analyze at least one of the unsolved measurement sub-task specifications; populate at least one of the one or more respective candidate run-time specifications, thereby producing at least one populated respective candidate run-time specification, wherein each populated respective candidate run-time specification comprises a partial or complete solution for said at least one of the unsolved measurement sub-task specifications; and for each populated respective candidate run-time specification comprising a partial solution, generate a new, fourth respective measurement task specification, wherein the new respective measurement task specification comprises an unsolved portion of the unsolved measurement sub-task specification. 50. The expert system of claim 41, further comprising:a storage system which is operable to store an expert registry, wherein said expert registry comprises information correlating each expert with one or more respective measurement tasks; and wherein said selecting one or more of the plurality of experts is performed based on the expert registry. 51. The expert system of claim 50, wherein at least one of the one or more measurement devices comprises a measurement hardware device.52. The expert system of claim 50, wherein at least one of the one or more measurement devices comprises a virtual measurement device.53. The expert system of claim 40,wherein the expert system is comprised in a computer-based measurement system; and wherein the computer-based measurement system includes one or more measurement devices, wherein the one or more measurement devices are operable to respectively perform portions of the measurement task.
연구과제 타임라인
LOADING...
LOADING...
LOADING...
LOADING...
LOADING...
이 특허에 인용된 특허 (16)
Hayles Tim ; Bednar James A., Attribute-based system and method for configuring and controlling a data acquisition task.
Jordan Dale A. (Aloha OR) Fitzsimmons Lynne A. (Portland OR) Greenseth William A. (Portland OR) Hoffman Gregory L. (Beaverton OR) Stubbs David D. (Portland OR), Block diagram editor system and method for controlling electronic instruments.
Jordan Dale A. (20075 SW. Pecan Aloha OR 97006) Fitzsimmons Lynne A. (2905 SW. 107th Portland OR 97225) Greenseth William A. (12255 SW. Foothill Dr. Portland OR 97225) Hoffman Gregory L. (14225 SW. W, Block diagram system and method for controlling electronic instruments with simulated graphic display.
Nguyen Binh Q. ; Nguyen Hung D. ; Redpath Richard J. ; Singhal Sandeep K., Method and system for connecting network hosts having different communication protocols.
Gaither Shawn A. (Saratoga CA) Shah Sunil C. (Mountain View CA), Method for operating a real-time expert system in a graphical programming environment.
Stubbs David D. (Portland OR) Barnett Mark P. (Portland OR) Greenseth William A. (Portland OR), Method of generating instruction sequences for controlling data flow processes.
Lewis Robert W. ; Tanner Matthew A. ; Walker Timothy K., Object-oriented computer program, system, and method for developing control schemes for facilities.
Williams Donald V. (Balmain AUX) Keeble John B. (Neutral Bay AUX) Oates John D. (Quakers Hill AUX) Campos Alejandro G. (North Rocks AUX), Scientific instrument emulator having a computer and an analog signal interface for real-time signal processing.
Ito, Yasuhiro; Sugure, Yasuo; Oho, Shigeru; Kurata, Hideaki, Computer system, program, and method for assigning computational resource to be used in simulation.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.