728x90

전문가시스템 (Expert System) 을 구축하는 툴에서 추론엔진 (Inference Engine) 은 지식베이스에서 답을 찾아내는 역할을 한다. 즉 지식베이스의 정보에 대해 추론하고 결론을 형식화하는 방법론을 제공하는 것으로서 전문가시스템의 두뇌에 해당한다. 추론엔진은 다음과 같은 세가지 주요 요소를 가진다.

인터프리터 (interpreter) : 기본적인 규칙을 적용하여 선택된 agenda item 을 수행한다.
스케줄러 (scheduler) : 우선순위에 따라 추론규칙을 적용한 효과를 추정하여 agenda 에서 제어를 유지하거나 다른 영역을 수행한다.
일관성 강화 (consistency enforcer) : 나타난 해 (solution) 의 일관된 표현을 유지하려 한다. ..... (Wikipedia : Inference engine)
추론엔진은 다음의 과정을 거쳐서 수행된다.  

패턴매칭 (Pattern Matching) : 새로운 사실 (fact) 가 입력된 작업기억 (working memory) 에서 규칙 (rule) 이 있는 production memory 간의 패턴 매칭하여 매칭되는 rule 들을 찾아낸다.
갈등해결 (Conflict Resolution) : 복수개의 rule 이 해당될 때 (trigger) 최적의 rule 을 선택한다.
실행 (Execution) : 선택된 rule 을 실행하고 새로이 얻은 fact 를 모두 작업기억에 저장하여 다시 패턴매칭을 시작한다.
우리는 주어진 상황에 대한 지식을 가지고 새로운 사실을 유도하는 데 익숙해 있다.  실제 우리가 알고 있는 모든 과학적 사실들이 일정한 추론의 틀에서 비롯되었다고 하여도 과언이 아니다. 추론 (Reasoning) 이란, 이미 알고 있는 명제를 기초로하여 새로운 명제를 유도하는 과정으로 전제와 결론 간의 논리적 관계를 다루는데 반하여, 논증이란 전제나 결론의 진위를 밝힌다. 여기서 결론이란 새로 유도된 명제를 말하며, 전제란 결론의 근거를 제공하는 이미 알려진 명제를 일컫는다.


추론 (Inference) 의 종류

① Deduction (연역법) : A → B 즉 A를 알면 B를 안다.
즉 가설을 통하여 증명을 하는 것이다. 이를 위해 주전제(major premise)  와 부전제( minor premise)를 서술해야 한다
주전제 : IF X = 어머니 THEN X = 여자
부전제 : 영자는 어머니이다
연역 : 따라서 영자는 여자다

결과는 항상True 이다. 즉 연역에 의한 추론은 항상 옳다.이것을 추론의 건전성 (soundness) 라 한다 . production rule, semantic net, logic   모두 연역법에 속한다

② Abduction : A → B 에서 B를 알면 A를 안다.
주전제 : IF X = 어머니 THEN X = 여자
부전제 : 영자는 여자다
Abduction : 영자는 어머니다
Abduction은 rule 의 condition을 추측해 내는것이다

결과는 False일 수 있다. Abduction 은 일종의 추측이고 다수의 경우에 옳지만 항상 그런 것은 아니다. 따라서 Abduction은 유사 추론 (plausible inference) 이라고한다. 즉 deduction 과는 달리 추론의 합법적인 형태는 아니다. Abduction 은 heuristic 의 일종으로 작용하며 시작할 장소를 알려준다

③ Induction (귀납법) : Instance로부터 Rule을 만들어 낸다.
증명으로부터 가설을 유도해낸다. 즉 결론은 얻어진 사실로부터 추론된다.
은행나무는 낙엽이 진다. 단풍나무는 낙엽이 진다.
⇒ 모든 나무는 낙엽이 진다 : False

결과는 False일 수 있다. : Instance가 모든 Case를 전부 보여줄 수는 없기 때문이다. 유도된 결론은 정확하지 않을수 있고 또한 새로운 사실이 알려질 경우 변할수 있다.  



추론전략 (Inference Strategy)

Forward Chaining

A → B 즉 조건 A가 Working Memory에 있으면 B를 수행한다. 따라서 당연히 Deduction에 속한다.

Backward Chaining

A → B 즉 IF A THEN B 에서 A 가 주어져 있을 때 B를 추론할 필요가 있는가를 살피고, 필요시에 A 로부터 B를 얻어내는 deduction 의 일종이다. Backward 방향의 진행은 수많은 Rule을 모두 수행하지 않고 조건을 만족하는 Rule을 찾아서 수행하기 위한 추론의 효율성 때문이다. Backward 방향에 의해 논리상으로는 Abduction에 가깝다.그러나 Abduction은 IF A THEN B에서 B 로부터 A를 유도하는 것으로 근본적으로 다르다.  

+ Recent posts