KR100241849B1 - Blackboard-based Mixed Reasoning Expert System - Google Patents
Blackboard-based Mixed Reasoning Expert System Download PDFInfo
- Publication number
- KR100241849B1 KR100241849B1 KR1019970022423A KR19970022423A KR100241849B1 KR 100241849 B1 KR100241849 B1 KR 100241849B1 KR 1019970022423 A KR1019970022423 A KR 1019970022423A KR 19970022423 A KR19970022423 A KR 19970022423A KR 100241849 B1 KR100241849 B1 KR 100241849B1
- Authority
- KR
- South Korea
- Prior art keywords
- knowledge
- rule
- event
- blackboard
- rules
- Prior art date
Links
Images
Abstract
지식표현 및 지식기반이 간단한 소형시스템과 복잡한 대형시스템에 대하여 능동적으로 대처하며, 독립된 추론엔진을 갖는 블랙보드 기반의 전문가시스템에 관한 것이다. 본 발명의 전문가시스템은 대상물로부터 획득하는 데이타를 모니터링하여 증상을 결정하는 모니터링모듈과, 모니터링모듈에서 결정한 증상을 이벤트로 생성하는 이벤트핸들러와, 사실과 규칙의 형태로 지식을 저장하는 지식베이스 및 사실과 규칙으로부터 새로운 사실을 추정하여 추출하는 추론엔진으로 된 지식원과, 고장진단과정에서 생성되는 정보를 저장하는 작업메모리인 블랙보드 사이에서 서로 제어하지 않고 블랙보드의 변화에 의해서만 추론엔진이 가동되도록 구성된다. 따라서, 본 발명은 블랙보드와 추론엔진 사이에 독립성을 제공하여 추가나 삭제가 용이하며, 다른 형태의 지식통합이 가능하고, 다중추론이 가능한 장점을 갖는다.Knowledge expression and knowledge base actively deal with simple and complex large-scale systems, and a blackboard-based expert system with independent inference engine. The expert system of the present invention includes a monitoring module for determining symptoms by monitoring data obtained from an object, an event handler for generating symptoms determined by the monitoring module as an event, a knowledge base and facts for storing knowledge in the form of facts and rules. The reasoning engine is operated only by the change of the blackboard without controlling each other between the knowledge source of the inference engine that estimates and extracts new facts from the rule and the rule, and the working memory that stores the information generated in the troubleshooting process. It is composed. Therefore, the present invention provides an independence between the blackboard and the inference engine, and thus can be easily added or deleted, other forms of knowledge integration, and multiple inferences are possible.
Description
본 발명은 전문가시스템(expert system)에 관한 것으로, 보다 상세하게는, 블랙보드(blackboard) 기반의 혼합추론 전문가시스템에 관한 것이다.The present invention relates to an expert system, and more particularly, to a blackboard-based mixed reasoning expert system.
전문가시스템과 같은 지식시스템은 전문가에 의해 사용되는 추론업무를 애뮬레이트하는 컴퓨터시스템이다. 이러한 지식시스템은 전형적으로 "지식베이스(knowledge base)"내에 저장된 엔코드된 전문가의 지식을 번역하는데 "추론엔진(inference engine)"을 사용한다. 지식베이스의 영역 또는 문제의 범위가 충분히 좁고, 충분히 큰 규모의 지식이 지식베이스내에 적당히 코드된다면, 전문가시스템은 전문가의 능력에 필적하는 또는 그를 초과하는 성능을 달성할 수 있다. 이처럼, 전문가시스템은 어려운 문제를 해결하기 위하여 전문가의 지식을 적용시키는 것으로, 반복적인 방법에 의한 문제해결행위로서 사고의 개념을 나타내기 위해 심볼을 사용한다. 전문가시스템은 문제분야의 특수한 영역에 국한된 전문지식을 저장한 지식베이스가 있고, 이 지식베이스에는 지식이 사실이나 규칙의 형태로 저장된다. 전문가시스템의 핵심부분은 추론기관인데, 이는 현 상황에 적합한 규칙을 찾아내고, 이를 수행시키는 역할을 담당한다. 그러나, 사용자의 입장에서는 이러한 전문가시스템을 보다 편하게 다루고 싶어한다. 이를 위하여 지원하는 부분(supporting environment)을 전문가시스템의 개발기구로부터 얻어와서 사용한다. 이러한 지원부분중에서 중요한 것은 사용자가 보다 쉽게 자료를 처리하고 전문가시스템과의 통화를 하기 위한 입출력장치(input/output interface 혹은 user interface)부분과 문제분야의 전문가로부터 지식베이스를 구축, 변경등을 하기 위한 지식획득부분(knowledge acquisition part)이 중요하다. 이렇듯 지식베이스, 사용자 인터페이스, 추론기관, 지식획득의 네부분을 전문가시스템의 기본구조라고 한다. 여기서, 지식베이스의 구성을 규칙과 사실로써 나타내었다.Knowledge systems, such as expert systems, are computer systems that emulate the inference tasks used by professionals. Such knowledge systems typically use an "inference engine" to translate the knowledge of an encoded expert stored in a "knowledge base." If the area of the knowledge base or the scope of the problem is sufficiently narrow and a sufficiently large amount of knowledge is properly coded in the knowledge base, the expert system can achieve performance comparable to or exceeding that of the expert. As such, the expert system applies the expert's knowledge to solve difficult problems, and uses symbols to represent the concept of thinking as a problem solving act by repetitive methods. The expert system has a knowledge base that stores expertise that is specific to a particular area of the problem area, where knowledge is stored in the form of facts or rules. A key part of the expert system is the reasoning agency, which is responsible for identifying and implementing the appropriate rules for the current situation. However, from the user's point of view, he wants to handle these expert systems more conveniently. To this end, a supporting environment is obtained from the development system of the expert system. Among these support areas, it is important that users input and output (input / output interface or user interface) to handle data more easily and talk to expert system, and to build and change knowledge base from experts in problem areas. The knowledge acquisition part is important. As such, the four parts of the knowledge base, user interface, reasoning agency, and knowledge acquisition are called the basic structure of the expert system. Here, the construction of the knowledge base is shown as rules and facts.
전문가시스템은 의료용장비, 기계 또는 전자장비등 사용범위에 제한되지 않는다. 크레인과 같은 구조물 장비내의 고장을 진단하기 위한 전문가시스템에서는, RBR, MBR, CBR등의 방법을 독립적으로 사용하였다. 여기서, RBR(Rule Based Reasoning)은 기본적으로 행해지는 추론방법으로서 전향추론 또는 후향추론방법을 사용하여 결과를 도출해 내는 방법이다. MBR(Model Based Reasoning)은 장비 자체의 구조와 기능을 체계적으로 지식베이스에 모델로서 구조화시킴으로서 규모가 크거나 복잡한 내용의 추론을 더욱 정확하고 상세하게 그리고 용이하게 하는 방법이다. CBR(Case Based Reasoning)은 과거의 진단사례들을 지식베이스에 저장하였다가 새로운 상황이 입력되었을 때 유사한 과거 상황을 추론하여 비교, 혹은 유사한 분석을 하는 방법으로 결과를 도출해 내는 방법이다.The expert system is not limited to the scope of use such as medical equipment, mechanical or electronic equipment. In the expert system for diagnosing failures in structural equipment such as cranes, methods such as RBR, MBR, and CBR were used independently. Here, RBR (Rule Based Reasoning) is basically a method of deriving a result using a forward reasoning or backward reasoning method. Model Based Reasoning (MBR) is a method of systematically organizing the structure and function of the equipment itself as a model in the knowledge base to make inferences of large or complex contents more accurate, detailed and easier. CBR (Case Based Reasoning) is a method of storing past diagnosis cases in the knowledge base and inferring similar past situations when a new situation is entered and comparing them or performing similar analysis.
이와 같이 전문가시스템은 크게 지식베이스, 작업메모리, 제어부분 및 추론엔진으로 구성된다. 세부적으로는 지식베이스모듈, 추론엔진모듈, 지식획득모듈, 설명모듈, 사용자인터페이스모듈로 분류되어 진다. 크게는 추론엔진과 지식베이스로 분류된다. 추론이란 알고 있는 사실(fact)과 규칙(rule)으로부터 새로운 사실을 추정하여 추출해나가는 과정을 말한다. 지식베이스는 데이타를 나타내는 사실과 그러한 사실들을 의사결정의 자료로 사용하는 규칙으로 구성되고 전문가시스템에서 사용되는 특별한 주제에 대한 지식의 데이타베이스이다. 추론엔진은 전향추론, 후향추론, 혼합형추론기법등이 있다. 지식획득모듈은 지식의 습득을 관리하는 시스템이며, 설명모듈은 사용자에게 시스템이 "어떻게 결론을 내렸는가?", "왜 특별한 어떤 데이타를 필요로 하였는가?"하는 결론이나 중간결과에 도달하게 된 추론과정을 사용자에게 설명해주는 기능을 가지고 있다. 전문가시스템은 전문가의 지식을 규칙, 프레임 또는 모델등을 기반으로 표현한 지식베이스로 추론엔진이 지식베이스를 바탕으로 지식들을 이용하여 진단을 수행한다. 이러한 진단의 수행속도를 빠르게 하기 위해 작업메모리인 블랙보드구조를 이용한다. 블랙보드구조는 다양한 지식표현, 추론방법, 제어들의 통합관리가 유용하며, 지식베이스를 형성하는 주제별 지식그룹들에 대해 상호 연결없이 독립적인 "Loosely Coupled Type"이고, 동적으로 적정지식 적용 및 경험적인(Oppertunistic)추론방법이 용이하여 상대적으로 복잡한 문제해결도메인에 적용유리하다.As such, the expert system is largely composed of knowledge base, working memory, control part, and inference engine. In detail, it is classified into knowledge base module, inference engine module, knowledge acquisition module, explanation module, and user interface module. It is largely classified into inference engine and knowledge base. Inference is the process of estimating and extracting new facts from known facts and rules. A knowledge base is a database of knowledge on a particular subject used in expert systems, consisting of the facts representing data and the rules that use those facts as the data for decision making. Reasoning engines include forward reasoning, backward reasoning, and hybrid reasoning. The knowledge acquisition module is a system that manages the acquisition of knowledge, and the explanation module infers the process of inferring the user to the conclusions or intermediate results of "how did the system conclude?" And "why special data was needed?" It has a function to explain to the user. The expert system is a knowledge base that expresses the expert's knowledge based on rules, frames, or models, and the inference engine performs diagnosis based on the knowledge base. In order to speed up the execution of this diagnosis, the board structure, which is a working memory, is used. The Blackboard structure is useful for integrated management of various knowledge expressions, reasoning methods, and controls, and is an independent "Loosely Coupled Type" without the interconnection of thematic knowledge groups that form the knowledge base. (Oppertunistic) The reasoning method is easy to apply to relatively complex problem solving domains.
많은 시스템에서 실시간문제해결을 위한 추론구조로 블랙보드를 이용하며, 블랙보드는 고장진단과정에서 생성되는 메시지이름, 기타고장의 증세, 가정할 수 있는 고장의 원인등 진단과정에서 동적으로 생성되는 모든 종류의 정보가 존재하는 곳이다. 이와 같은 블랙보드상의 정보는 동적으로 고장진단지식원(knowledge source)들을 트리거한다. 고장진단지식원은 고장진단에 이용될 수 있는 각종 규칙들을 의미한다. 이와 같은 규칙은 여러 가지 형태로 구성되며 각각의 지식원 사이에는 서로 제어하지를 않고 블랙보드의 변화에 의해서만 지식원이 가동된다. 즉, 블랙보드의 변화인 새로운 고장진단상태만이 지식원을 트리거하고 지식원은 다른 지식원에 의해서 구동이 되지 않는다. 이와 같은 독립성은 지식원의 자유로운 추가나 삭제를 용이하게 해준다. 작업메모리, 지식원, 그리고 제어를 기본구성요소로 하는 블랙보드는 하나의 구조안에 다른 형태의 지식통합이 가능하며, 다중추론이 가능한 구조적인 특성등 장점이 있으나 기존의 규칙기반 시스템보다 프로그램 구성이 복잡하다.Many systems use a blackboard as a reasoning structure for real-time problem solving. The blackboard is a dynamic system that generates all the dynamically generated diagnostic information such as message names, other symptoms, and possible causes of failures. This is where the kind of information exists. This information on the blackboard dynamically triggers knowledge sources. Trouble shooting knowledge source refers to various rules that can be used for troubleshooting. These rules are composed of various forms, and the knowledge sources are operated only by the change of the blackboard without controlling each other. That is, only a new fault diagnosis state, which is a change of the blackboard, triggers a knowledge source and the knowledge source is not driven by another knowledge source. This independence facilitates the free addition or deletion of knowledge sources. Blackboards, which consist of working memory, knowledge sources, and controls as basic components, have the advantage of integrating knowledge of different forms in one structure and structural features that can be inferred. Complex.
그런데, 이와 같은 종래의 전문가시스템은 실시간 문제해결을 위한 추론구조로 블랙보드를 이용한다. 이는 지식기반이 복잡한 시스템에 대해서만 적용되는 단점이 있었다.However, such a conventional expert system uses a black board as an inference structure for real-time problem solving. This has the disadvantage that the knowledge base is only applied to complex systems.
따라서, 본 발명의 목적은 지식표현 및 지식기반이 간단한 소형시스템과 복잡한 대형시스템에 대하여 블랙보드를 능동적으로 사용할 수 있는 독립된 추론엔진을 갖는 블랙보드 기반의 혼합추론 전문가시스템을 제공함에 있다.Accordingly, an object of the present invention is to provide a blackboard-based mixed reasoning expert system having an independent reasoning engine that can actively use a blackboard for a small system with a simple knowledge expression and a knowledge base and a complex large system.
도 1은 본 발명에 따른 블랙보드 기반의 혼합추론 전문가시스템을 나타내는 구성도,1 is a block diagram showing a blackboard-based mixed reasoning expert system according to the present invention,
도 2는 도 1 시스템의 추론엔진부를 나타내는 상세도,Figure 2 is a detailed view showing the inference engine of the system of Figure 1,
도 3는 도 2 추론엔진부의 인터프리터를 나타내는 상세도,3 is a detailed view illustrating an interpreter of the inference engine of FIG. 2;
도 4는 도 2 추론엔진부의 추론제어기를 나타내는 상세도,4 is a detailed view illustrating an inference controller of the inference engine of FIG. 2;
도 5은 도 2 패턴매쳐의 동작을 설명하기 위한 개념도,5 is a conceptual diagram illustrating the operation of the pattern matcher of FIG. 2;
도 6은 도 1 시스템의 블랙보드를 나타내는 상세도,6 is a detailed view showing a blackboard of the system of FIG. 1;
도 7은 도 1 시스템의 지식베이스를 나타내는 상세도.FIG. 7 is a detailed view of the knowledge base of the system of FIG. 1; FIG.
<도면의 주요부분에 대한 부호의 설명><Description of the symbols for the main parts of the drawings>
10 : 모니터링모듈 20 : 사용자인터페이스10: monitoring module 20: user interface
30 : 이벤트핸들러 40 : 추론엔진부30: event handler 40: inference engine
41 : 인터프리터 42 : 패턴매쳐41: interpreter 42: pattern matcher
43 : 스케줄러 44 : 추론제어기43: scheduler 44: inference controller
50 : 학습모듈 60 : 개발자인터페이스50: learning module 60: developer interface
70 : 지식획득모듈 80 : 지식베이스70: knowledge acquisition module 80: knowledge base
81 : 도메인지식 82 : 메타지식81: domain knowledge 82: meta knowledge
90 : 블랙보드부 91 : 블랙보드90: Blackboard 91: Blackboard
92 : 에이젼다92: Agenda
이와 같은 목적을 달성하기 위한 본 발명에 따른 블랙보드 기반의 혼합추론 전문가시스템은, 대상물의 고장을 진단하기 위한 전문가시스템에 있어서, 대상물로부터 획득하는 데이타와 행위지식에 대한 규칙과의 매칭을 수행하고, 매칭완료된 규칙들중 순위에 따라 선택하는 규칙을 수행하여 증상을 결정하는 모니터링모듈과, 상기 모니터링모듈에서 결정한 증상을 이벤트로 생성하여 출력하는 이벤트핸들러와, 상기 이벤트핸들러에서 생성하는 이벤트와 블랙보드부에서 로드하는 도메인규칙을 대상으로 패턴매칭을 수행하고, 매칭된 규칙들중 순위에 따라 선택하는 규칙을 수행하여 새로운 사실을 추정하여 추출하는 추론엔진부와, 규칙과 사실의 형태로 지식을 저장하며, 상기 추론엔진부에서 수행되는 모든 의사결정에 대한 여러표현형태의 지식을 제공하여 그에 대하여 생성되는 패턴네트워크를 저장하는 도메인지식, 그리고 메타지식을 구비한 지식베이스, 및 상기 이벤트핸들러에 의해 생성되는 이벤트에 해당하는 규칙을 상기 추론엔진부로 출력하고, 그에 대응하는 추론결과를 통해 증상에 부합되는 규칙들을 관리하는 작업메모리인 블랙보드부를 포함한다.Blackboard-based mixed inference expert system according to the present invention for achieving the above object, in the expert system for diagnosing the failure of the object, performing matching between the rules obtained for the data and behavior knowledge obtained from the object and A monitoring module for determining a symptom by performing a rule selected according to a ranking among the completed matching rules, an event handler for generating and outputting a symptom determined by the monitoring module as an event, an event and a blackboard generated by the event handler. Pattern matching is performed on domain rules loaded by the department, and the inference engine unit estimates and extracts new facts by performing a rule selected according to the rank among the matching rules, and stores the knowledge in the form of rules and facts. Knowledge of multiple representations of all decisions made by the inference engine. Provide a knowledge base having a domain knowledge and a meta knowledge, and a rule corresponding to an event generated by the event handler to the inference engine unit, and output the inference result corresponding thereto. It includes a blackboard, which is a working memory that manages rules according to symptoms.
이하, 첨부한 도면들을 참조하여 본 발명의 바람직한 실시예를 상세히 기술하기로 한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.
도 1은 본 발명에 따른 블랙보드 기반의 혼합추론 전문가시스템의 구성도를 보여준다. 도 1를 보면, 본 발명의 전문가시스템은 크게 지식베이스(80)와 추론엔진부(40)로 이루어지는 지식원과 작업메모리로써의 블랙보드부(90)로 구성되며, 학습모듈(50)과 모니터링을 위한 모니터링모듈(10), 이벤트핸들러(30), 사용자인터페이스(20)로 구성된다. 그리고, 개발자 및 학습모듈(50)에 의해 얻어지는 새로운 사례들을 개발자인터페이스(60)를 통해 새로운 지식으로 습득하는 지식획득모듈(70)로 구성된다. 추론엔진부(40)는 새로운 지식을 추론하기 위하여 어떻게 규칙들을 적용할 것인가를 결정하는 인터프리터(41), 선택된 규칙을 어떤 순서로 적용시킬 것인가를 결정하는 스케쥴러(43), 패턴매쳐(42), 추론제어기(44)로 구성된다. 지식베이스(80)는 사실(Fact)과 규칙(Rule)을 저장하는 도메인지식(81)과 메타지식(82)을 포함한다. 블랙보드부(90)는 블랙보드(91)와 에이젼다(92)를 포함한다.Figure 1 shows the configuration of the blackboard-based mixed reasoning expert system according to the present invention. Referring to FIG. 1, the expert system of the present invention is composed of a knowledge base consisting of a
도 1에서, 전문가시스템은 진단이 수행될 대상 구조물과 양호하게 친숙한 사용자 사이에서 대상 구조물의 고장을 진단하기 위한 절차를 수행한다. 전문가시스템은 크게 모니터링동작과 진단동작을 수행한다. 모니터링동작은 센서를 통해 획득한 데이타를 대상으로 오동작에 의한 증상인지 정상동작에 의한 사실인지를 판단한다. 진단동작은 모니터링동작에 의해 오동작으로 판단되는 경우 이를 진단한다.In FIG. 1, the expert system performs a procedure for diagnosing a failure of a target structure between a target structure to be diagnosed and a user who is familiar with it. The expert system largely performs monitoring and diagnostic operations. The monitoring operation determines whether the symptom due to a malfunction or the fact is normal due to the data acquired through the sensor. The diagnosis operation diagnoses the malfunction when it is determined to be a malfunction by the monitoring operation.
먼저, 모니터링동작은 전문가시스템의 모니터링모듈(10)내에서 이루어진다. 모니터링모듈(10)에는 지식베이스가 존재하여 미도시된 센서를 통해 대상물을 이루는 각 구성요소들로부터 획득하는 데이타를 모니터링할 수 있다. 모니터링과 진단에 대한 수행흐름은 동일하므로 모니터링에 대해서는 개략적으로 설명한다. 획득한 데이타는 블랙보드부(90)의 블랙보드(91)를 트리거한다. 블랙보드(91)는 모니터링모듈(10)에 존재하는 지식베이스로부터 행위지식(behavioral knowledge)을 로드한다. 모니터링모듈(10)은 로드한 행위지식에 대한 규칙과 획득한 데이타와의 매칭단계를 수행한다. 모니터링모듈(10)은 매칭이 완료된 규칙들을 블랙보드부(90)의 에이젼다(92)로 출력한다. 에이젼다(92)는 매칭이 완료된 규칙들을 트리거된 에이젼다에 위치시킨 후 전략에 따라 실행가능한 에이젼다로 이동시킨다. 스케줄러(43)는 실행가능한 에이젼다에 위치한 규칙들(KSARs)중 우선순위등을 따라 규칙을 선택하고, 선택한 규칙(Selected KSAR)을 인터프리터(41)에 의해서 차례로 규칙화이어(rule fire)를 수행하도록 한다. 여기서, 화이어는 생성시스템을 운영하는 동안 조건부가 만족되는 규칙이 수행됨을 의미하며, 인터프리터(41)에 의한 행동부의 수행을 의미한다.First, the monitoring operation is performed in the
한편, 위와 같은 모니터링절차를 거쳐 결정된 증상을 대상으로 진단을 수행하거나 사용자가 추측을 통해 고장을 감지하는 경우 고장진단요구를 사용자인터페이스(20)를 통해 입력하면 진단을 수행한다. 이때, 블랙보드부(90)는 모니터링을 위한 행위지식 대신 블랙보드(91)내의 컨트롤블랙보드로 메타지식과 그에 해당하는 메타지식네트워크를 로드한다. 여기서, 메타지식(metaknowledge)은 시스템이 갖는 자신의 사고(reason)에 관한 지식이라 하며, 이는 지식에 대한 지식을 의미한다. 로드된 메타지식을 이용하여 해당 메타노드를 탐색한다. 메타노드탐색을 위해서는 패턴매쳐(42), 스케줄러(43), 인터프리터(41)를 차례로 호출해야 한다. 탐색된 메타노드를 이용하여 최소한의 도메인 규칙 집합을 블랙보드(91)내의 도메인블랙보드로 로드한 후 도메인네트워크를 로드한다. 블랙보드(91)의 증상과 도메인규칙을 대상으로 패턴매쳐(42)가 패턴매칭을 수행하여 매칭된 규칙을 트리거된 에이젼다로 위치시킨 후 매칭정도에 따라 실행에이젼다로 상태 이동시킨다. 실행에이젼다에 적재된 규칙들을 대상으로 스케줄러(43)는 스케줄링을 수행하여 선택된 규칙을 인터프리터(41)에서 수행한다.On the other hand, if the diagnosis is performed on the symptoms determined through the monitoring procedure as described above or if the user detects a failure by guessing, the diagnosis is performed by inputting a failure diagnosis request through the
도 2는 추론엔진부(40)의 상세도를 보여준다. 도 2를 보면, 추론엔진부(40)는 인터프리터(Interpreter)(41), 패턴매쳐(42), 스케줄러(43) 및 추론제어기(44)로 구성된다. 이 구성들에 대한 특징은 다음 표 1과 같이 정의된다.2 shows a detailed view of the
[표 1]TABLE 1
추론엔진부(40)는 이벤트핸들러(30)에서 전달된 이벤트로 블랙보드(91)내의 도메인블랙보드를 갱신(Update)하고, 이벤트에 포함된 증상과 도메인블랙보드에 저장되어 있는 획득된 증상을 가지고 패턴매쳐(42)를 호출하여 부합되는 규칙을 찾아 에이젼다(92)내의 트리거-에이젼다에 저장한다. 패턴매칭과정에서는 우선순위를 고려한 키-증상과 모든 증상에 관련한 관련-증상으로 나누어 매칭을 수행한다. 트리거-에이젼다에 저장된 규칙들을 대상으로 매칭율을 기준하여 수행-에이젼다로 상태이동을 시킨 후, 스케줄러(43)가 이들중 하나를 선택하여 인터프리터(41)가 선택된 규칙의 결론부를 수행시킨다. 수행결과는 최종 액션일 경우 이를 사용자인터페이스(20)를 통해 사용자의 검증을 거친 후 결론여부를 결정하고 중간액션일 경우 이 자체를 새로운 사실로 간주하여 획득된 증상과 함께 다시 패턴매쳐(42)를 호출하여 다시 부합되는 규칙을 선정하는 과정을 반복한다. 최종 결론에 도달한 경우 사용자에게 메시지를 출력하고, 이 과정이 새로운 지식인 경우 지식베이스(80)에 추가한다.The
도 3은 인터프리터(41)의 상세도를 보여준다. 도 3를 보면, 인터프리터(41)는 이벤트분류기(411)와 실행큐(412) 및 액션수행기(413)를 포함한다. 이벤트분류기(411)는 이벤트핸들러(30)에서 전달된 이벤트를 분류하여 실행 또는 실행대기를 결정한다. 여기서, 이벤트는 이벤트핸들러(30)에서 전달된 것뿐만 아니라 패턴매쳐(42)에서 전달된 데이타도 포함된다. 그래서, 이벤트분류기(411)는 패턴매쳐(42)에서 전달된 데이타에 해당하는 이벤트를 분류하여 실행 또는 실행대기를 결정한다. 실행큐(412)는 이벤트분류기(411)를 통해 분류된 이벤트를 저장하고, 저장된 이벤트를 액션수행기(413)로 출력한다. 액션수행기(413)는 이벤트분류기(411)를 통해 패턴매칭이 완료된 규칙의 결론부 및 실행큐(412)에서 읽혀지는 이벤트를 실행시켜 그 결과를 사용자가 알 수 있도록 사용자인터페이스(20)로 메시지출력한다. 액션수행기(413)는 실행결과를 통해 도메인블랙보드의 내용을 갱신한다.3 shows a detailed view of the
도 4는 추론제어기(44)의 상세도를 보여준다. 도 4를 보면, 추론제어기(44)는 추론전략결정모듈(441), 추론전략진행모듈(442) 및 KSAR컴파일러(443)로 구성된다.4 shows a detailed view of the
추론전략은 추론중 규칙을 사용하는 방법에 따라 전향연결(forward chaining), 후향연결(backward chaining), 직접연결(direct chaining)의 세가지가 있다. 추론전략결정모듈(441)은 개발자가 초기 시스템개발시 선택하게 되며, 추론의 목적과 문제분야의 성격에 따라서 이 세가지 추론전략중 하나를 선택한다. 추론전략진행모듈(442)은 그 선택된 추론전략에 따라서 추론을 진행할 수 있도록 제어한다. KSAR컴파일러(443)는 선택된 추론전략을 컴파일하여 스케줄러(43)에 전달한다.There are three inference strategies, forward chaining, backward chaining, and direct chaining, depending on how the rule is used during inference. The reasoning
도 5은 패턴매쳐(42)의 동작을 설명하기 위한 개념도를 보여준다. 도 5를 보면, 패턴매쳐(42)는 대상이 될 규칙과 획득된 증상(사실)을 이용하여 크게 6가지 단계로 나누어 수행된다. 매칭의 대상이 되는 규칙을 진단에 적용될 규칙으로 가정한 후 이를 초기 가설로 설정한다. 초기가설은 획득된 증상과의 매칭정도를 기반으로 하여 획득한 증상을 가져오기 위한 세미-액티베이트(Semi-activate) 또는 서스팬드(suspend)단계, 블랙보드를 트리거하기 위한 액티베이트(activate)단계, 결론을 내리는 컨크루드(conclude) 또는 그 가설이 소용없음을 나타내는 리젝트(jeject)등의 단계로 상태이동을 하면서 매칭을 수행한다. 즉, 설정된 가설을 수행시 초기에 서스팬드(suspend hypothesis)로 설정된 경우(단계 501), 획득된 증상을 가져오기 위한 세미-액티베이트로 진행한다(suspend-to-semi-active hypothesis)(단계 502). 단계 502를 통해 세미-액티베이트(semi-activate hypothesis)단계로 상태가 이동되면 획득한 증상을 가져온다(단계 503). 세미-액티베이트(semi-activate hypothesis)단계에서 다시 서스팬드로 상태로 진행하거나(semi-active-to-suspend hypothesis)(단계 504), 증상이 사실인지를 검증하기 위한 액티베이트로 진행한다(assume-symptoms-expected-on hypothesis)(단계 505). 단계 505를 통해 액티베이트(activate hypothesis)단계로 상태가 이동되면 그 증상이 사실인지를 검증한다(단계 506). 검증결과에 따라 여러 가지 상태로 진행할 수 있다. 검증결과, 결론을 위해서는 컨크루드(conclude hypothesis)단계로 이동하여(단계 507), 결론을 내려 획득된 증상이 설정한 가설 즉, 적용된 규칙에 어느 정도의 관련증상인지를 구한다(confirm-fault hypothesis)(단계 508). 검증결과, 필요없는 증상이면 리젝트(reject hypothesis)단계로 이동하여(단계 509), 그 증상을 제거한다(remove-symptom-assumed-on hypothesis)(단계 510). 검증결과, 획득한 증상이 설정한 가설을 만족하는 경우 인-액티베이트(in-activate hypothesis)단계로 이동한다(단계 511). 인-액티베이트(in-activate hypothesis)상태에서는 다시 검증할 필요가 있는 경우 단계 506의 액티베이트(activate hypothesis)상태로 이동하고, 소용없는 경우 단계 509의 리젝트(reject hypothesis)상태로 이동한다. 새로운 가설이 필요한 경우에는 단계 501의 서스팬드(suspend hypothesis)상태로 이동하고, 그 이외의 경우에는 리파인먼트마네져(refinement manager)단계로 이동하여(단계 512) 개선된 제안을 한다(suggest refinement hypothesis)(단계 513). 이와 같은 매칭과정에서 매칭정도를 수식화한 후 이값을 이용하여 에이젼다상태변환시 이용한다.5 shows a conceptual diagram for explaining the operation of the
도 6은 블랙보드시스템(90)의 상세도를 보여준다. 도 6를 보면, 블랙보드시스템(90)는 크게 블랙보드(91)와 에이젼다(92)로 구성된다. 블랙보드(91)는 도메인블랙보드(912), 컨트롤블랙보드(913), 추론엔진(40)으로부터 얻어지는 사실(fact)을 저장하는 메모리(914)로 구성되며, 입출력은 블랙보드관리자인 로더(911)와 디스패쳐(915)에 의해서 이루어진다. 도메인블랙보드(912)는 패턴네트워크영역과 도메인규칙영역으로 나누어지며, 패턴네트워크영역은 도메인규칙영역에 로드되는 규칙들에 대한 패턴네트워크를 저장한다. 컨트롤블랙보드(913)는 메타지식에 관한 전반적인 정보를 저장하여 추론과정중에 이용한다. 이 정보에는 메타지식에 관한 네트워크도 포함된다. 에이젼다(92)는 증상에 부합되는 규칙들을 관리하며, 트리거-에이젼다(921)와 실행-에이젼다(922)로 이루어진다. 트리거-에이젼다(921)는 패턴매칭이 기준치 이상 이루어진 규칙들을 저장하여 이들중 실행 가능한 것들을 선정하여 실행-에이젼다(922)로 상태이동시킨다. 상태이동은 에이젼다관리자에 의해서 수행된다.6 shows a detailed view of the
도 7은 지식베이스(80)의 상세도를 보여준다. 도 7를 보면, 지식베이스(80)는 영구적인 정적메모리를 사용한다. 이는 전문가시스템의 가장 중요한 부분으로 추론엔진에서 수행되는 모든 의사결정에 대한 여러 표현형태의 지식을 제공한다. 지식베이스(80)는 지식의 입출력을 지식베이스관리자인 로더와 디스패쳐에 의해서 관리되며, 도메인에 적용될 도메인지식(81)과 이들 도메인지식의 상위단계인 컨트롤지식 즉, 메타지식(82)을 포함한다. 도메인지식은 규칙과 사실로 나누어 저장되며, 추론엔진으로 호출되는 지식들은 패턴네트워크가 생성이 되어 같이 저장된다.7 shows a detailed view of the
상술한 바와 같이, 본 발명의 전문가시스템은 블랙보드와 추론엔진의 장점들을 수행하는 구조로 쉘을 설계하여 추론제어에 융통성을 갖으며, 여러개의 지식베이스언어 이용이 가능하게 한다. 또한, 지식을 여러개로 분할하여 각각의 추론엔진 결합이 가능하며, 별개의 지식표현과 적용이 가능하고 추론시 다양한 전략의 적용이 가능하므로 다중 지식표현에 대한 다중추론구조의 구현이 용이하다.As described above, the expert system of the present invention has a structure that performs the advantages of the blackboard and the inference engine, has flexibility in inference control, and enables the use of multiple knowledge base languages. In addition, it is possible to combine each reasoning engine by dividing the knowledge into multiple, separate knowledge expression and application, and various strategies can be applied during inference, so it is easy to implement multiple reasoning structure for multiple knowledge expression.
Claims (6)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970022423A KR100241849B1 (en) | 1997-05-31 | 1997-05-31 | Blackboard-based Mixed Reasoning Expert System |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970022423A KR100241849B1 (en) | 1997-05-31 | 1997-05-31 | Blackboard-based Mixed Reasoning Expert System |
Publications (2)
Publication Number | Publication Date |
---|---|
KR19980086147A KR19980086147A (en) | 1998-12-05 |
KR100241849B1 true KR100241849B1 (en) | 2000-03-02 |
Family
ID=65999307
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019970022423A KR100241849B1 (en) | 1997-05-31 | 1997-05-31 | Blackboard-based Mixed Reasoning Expert System |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100241849B1 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112036571B (en) * | 2020-08-25 | 2023-12-29 | 深圳市酷开网络科技股份有限公司 | Multi-domain expert system joint reasoning method and system |
CN114205218B (en) * | 2021-12-16 | 2023-07-28 | 杭州谐云科技有限公司 | Container network fault diagnosis method and system |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR970022423A (en) * | 1995-10-02 | 1997-05-28 | 구자홍 | Method of Manufacturing Substrate for Liquid Crystal Display |
-
1997
- 1997-05-31 KR KR1019970022423A patent/KR100241849B1/en not_active IP Right Cessation
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR970022423A (en) * | 1995-10-02 | 1997-05-28 | 구자홍 | Method of Manufacturing Substrate for Liquid Crystal Display |
Also Published As
Publication number | Publication date |
---|---|
KR19980086147A (en) | 1998-12-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Mokhtari et al. | A unit commitment expert system (power system control) | |
Levesque et al. | Cognitive robotics | |
Paiva et al. | TAGUS—A user and learner modeling workbench | |
US5412758A (en) | Flexible system for knowledge acquisition in expert system development | |
US5402526A (en) | Interruptibility/priority control scheme for artificial intelligence software shell | |
US5434952A (en) | System and method for specifying an expert system | |
US5398304A (en) | Control process for artificial intelligence software shell | |
Maurel et al. | Ceylon: A service-oriented framework for building autonomic managers | |
Kaindl | An integration of scenarios with their purposes in task modeling | |
Dunskus et al. | Using single function agents to investigate conflict | |
KR100241849B1 (en) | Blackboard-based Mixed Reasoning Expert System | |
Singh et al. | Declarative representations of multiagent systems | |
McManus et al. | Design and analysis techniques for concurrent blackboard systems | |
Van Hee et al. | OR and AI approaches to decision support systems | |
Wu et al. | Combining bayesian belief networks and the goal structuring notation to support architectural reasoning about safety | |
EP0439343A2 (en) | Method of operating an expert system and computer systems therefor | |
Vukovic et al. | SHOP2 and TLPlan for proactive service composition | |
Haugeneder et al. | Knowledge-based configuration of operating systems—problems in modeling the domain knowledge | |
Novick | Modeling belief and action in a multi-agent system | |
Stolze | Task level frameworks for cooperative expert system design | |
Long et al. | Scheduling problems in pddl | |
Chen | On using static analysis in distributed system testing | |
Kahn | From Application Shell to Knowledge Acquisition System. | |
Zeroual et al. | KBMS: a knowledge-based system for modeling software system specifications | |
Chaghrouchni et al. | Machine Learning in Predicting the Appropriate Model of Software Process Models Deviation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20041108 Year of fee payment: 6 |
|
LAPS | Lapse due to unpaid annual fee |