CLIPS

CLIPS Download

CLIPS(C Language Implementation Production System)는 NASA의 Johnson Space Center 내에 있는 인공지능연구실에서 개발된 것으로서 전향추론 규칙 기반의 시스템이다. CLIPS는 C언어를 이용하여 개발이 되었지만 CLIPS에서 사용되는 명령어나 규칙의 형태는 LISP언어와 유사하다. 이러한 CLIPS는 기본적으로 아래와 같은 세 가지 요소로 구성이 되어 있다.

  CLIPS를 이용함으로서 간단한 지식기반 시스템을 개발할 수 있으며, 본 부록에서는 이에 대하여 기술한다.

 

2. CLIPS의 시작과 종료

  우선 CLIPS의 실행을 시작하기 위해서는 다음과 같은 명령어를 입력한다.

  일단 CLIPS가 메모리로 적재되면 아래와 같은 프롬프트가 생성된다.

  이 상태에서 CLIPS의 명령어를 입력할 수 있으며 CLIPS의 실행을 종료하기 위한 명령어는 다음과 같다.

3. 사실

  CLIPS에서 사실(fact)은 괄호로 묶여진 하나 또는 그 이상의 항목으로 이루어진다.

4. 규칙

  CLIPS에서 규칙은 "defrule"이라는 명령어를 이용하여 정의되며 형식은 다음과 같다.
   (defrule r-name comment
               patt-1 ... patt-n
               =>
               act-1 ... act-m)

  위에서 r-name은 규칙의 이름을 의미하며 comment는 선택 사항으로 규칙을 설명해 주는 부분으로서 반드시 이중따옴표로 묶어야 한다. "patt-1 ... patt-n"은 규칙의 전제부를 나타내는 리스트이며 "act-1 ... act-m"은 규칙의 결론부를 나타낸다. 한편, 저장되어 있는 규칙들의 리스트를 확인하려면 "rules"라는 명령어를 이용하며 형식은 아래와 같다.

    (rules)

  그리고 특정 규칙의 내용을 구체적으로 확인하려면 아래와 같은 명령어를 이용하면 된다.

    (pprule r-name)

  저장된 규칙 중에서 특정 규칙을 제거하려면 그 규칙의 이름과 함께 "excise"라는 명령어를 이용하면 된다.

    (excise r-name) 

5. 변수, 연산자 그리고 특수 기호

  CLIPS에서는 규칙내의 패턴들을 처리하기 위하여 몇 가지 기능들을 제공해 주며 여기에는 변수, 연산자, 특수 기호 등이 있다.

6. CLIPS에서의 입·출력