규칙 기반 시스템
지식을 규칙의 형태로 표현하는 방법에 대해 알아봅니다.읽는데 4분 정도 걸려요.추론
구축된 지식과 주어진 데이터, 정보를 이용해 새로운 사실을 생성하는 것으로 전향(순방향) 추론과 후향(역방향) 추론으로 나뉜다.
전향 추론
규칙의 조건부와 만족하는 사실이 있을 때 규칙의 결론부를 실행하거나 처리하는 방식으로 아래와 같이 순방향으로 추론하는 방식이다.
후향 추론
어떤 사실을 검증하거나 확인하고 싶은 경우에 관심 대상의 사실을 결론부에 갖고 있는 규칙을 찾아서 조건부가 만족하는지를 확힌하는 방식으로 아래와 같이 역방향으로 추론하는 방식이다.
규칙 기반 시스템
지식을 규칙과 사실로 기술하며 아래와 같은 구조로 관리된다.
문제 해결을 위한 지식인 규칙
은 규칙 베이스에서 관리되며, 생성 메모리 라고도 불린다.
문제에 대해 알려진 데이터나 정보인 사실
은 작업 메모리에서 관리된다.
참고로, 추론 과정의 중간 결과나 사용자로부터 받은 문제에 대한 정보 역시 여기서 관리된다.
추론 엔진
실행할 수 있는 규칙을 찾아 해당 규칙을 실행하는데 아래의 3단계의 과정을 반복한다.
-
패턴 매칭
작업 메모리의 사실과 규칙 메모리에 있는 규칙의 조건부를 대조하여 일치하는 규칙을 찾아냄. -
경합 해소
찾아낸 규칙 중 경합되는 규칙(경합 집합)에 대해 하나의 규칙을 선택함.
경합 해소 전략에는 다음과 같은 전략이 있음.-
규칙 우선
미리 규칙에 우선순위를 부여하고, 경합시 우선순위가 높은 규칙을 우선 선택
우선순위 태그 기준
-
최신 우선
가장 최근에 입력된 데이터와 매칭된 규칙을 우선 선택
시간 태그 기준
-
최초 우선
경합 집합에서 가장 먼저 매칭된 규칙을 우선 선택 -
상세 우선
조건부가 가장 상세하거나 복잡한 규칙을 우선 선택
태그말고 조건문의 길이 기준
-
-
규칙 실행