클립
CLIPS이 글은 검증을 위해 인용구가 추가로 필요하다. "CLIPS – · · · (2013년 9월 (이 템플릿 메시지를 하는 과 시기 학습) |
패러다임 | 전문가 제도 |
---|---|
첫 등장 | 1985 |
웹사이트 | http://www.clipsrules.net/ |
CLIP는 전문가 시스템을 구축하기 위한 공용 도메인 소프트웨어 도구다.이름은 "C Language Integrated Production System"의 약자다.구문과 이름은 찰스 구디의 OPS5에서 영감을 얻었다.CLIP의 첫 번째 버전은 1985년 NASA-존슨 우주센터에서 시작하여 (기존 시스템 ART*추론의 대안으로) 개발 그룹의 책임이 전문가 시스템 기술에 집중되는 것을 중단한 1990년대 중반까지 개발되었다.프로젝트의 원래 이름은 "NASA의 AI Language"(NEIL)이었다.
CLIP는 아마도 2005년 현재 가장 널리 사용되는 전문가 시스템 도구일 것이다.[1]CLIP 자체는 C로, 확장은 C로, CLIP는 C에서 호출할 수 있다.그것의 구문은 프로그래밍 언어인 Lisp와 유사하다.[2]
CLIP는 전문가 시스템 작성을 위한 완전한 객체 지향 언어를 통합한다.COOL은 절차적, 객체 지향적, 논리적(이론 증명) 언어의 프로그래밍 패러다임을 결합한다.[3]
사실과 규칙
CLIP는 전방 체인을 사용한다.[4][2]다른 전문가 시스템 언어와 마찬가지로 CLIP도 규칙과 사실을 다룬다.여러 가지 사실이 규칙을 적용할 수 있게 만들 수 있다.그런 다음 적용 가능한 규칙이 해제된다.[4]사실 및 규칙은 다음과 같이 먼저 정의함으로써 생성된다.
(교묘한 필치의 car_properties (슬롯을 달다 이름을 붙이다) (슬롯을 달다 지위)) (언행을 해제하다 트러블_미리 (car_properties (이름을 붙이다 점화_키) (지위 에 관하여)) (car_properties (이름을 붙이다 엔진) (지위 wont_start)) (car_properties (이름을 붙이다 전조등) (지위 일을 하다))) (통치를 어기다 규칙1 (car_properties (이름을 붙이다 점화_키) (지위 에 관하여)) (car_properties (이름을 붙이다 엔진) (지위 wont_start)) => (주장하다 (car_properties (이름을 붙이다 시발점) (지위 결점이 있는))))
이것을 설정하면 (재설정) 명령으로 CLIP가 사실과 규칙을 읽게 된다.이 경우, 그렇게 되면 세 가지 "고난_사격" 사실이 주장되게 된다.그런 다음 (실행) 명령을 사용한다.규칙1에 열거된 두 가지 사실이 모두 주장된 것을 볼 때, 그 행동을 할 수 있는 조건이 충족되었기 때문에 실행의 결과로 추가 사실이 주장된다.
클립> (리셋하다) 클립> (의제) 0 규칙1: f-1,f-2 을 위해 a 총계 의 1 활성화. 클립> (사실들) f-0 (초유의) f-1 (car_properties (이름을 붙이다 점화_키) (지위 에 관하여)) f-2 (car_properties (이름을 붙이다 엔진) (지위 wont_start)) f-3 (car_properties (이름을 붙이다 전조등) (지위 일을 하다)) 을 위해 a 총계 의 4 사실들 클립> (달리다) 클립> (사실들) f-0 (초유의) f-1 (car_properties (이름을 붙이다 점화_키) (지위 에 관하여)) f-2 (car_properties (이름을 붙이다 엔진) (지위 wont_start)) f-3 (car_properties (이름을 붙이다 전조등) (지위 일을 하다)) f-4 (car_properties (이름을 붙이다 시발점) (지위 결점이 있는)) 을 위해 a 총계 의 5 사실들 클립> (주장하다 <사실>+) (주장하다 (반대하다 (이름을 붙이다 "의자") (재료 목재의) (높이 3인치) (색 갈색의)) 클립(후퇴하다 <팩트-인덱스+) (후퇴하다 0) 을 위해 a 색을 칠하다
CLIP에서는 사용자가 규칙에 우선순위(또는 무게)를 할당할 수 있다.
후손
CLIP 언어의 후손으로는 제스(자바에서 다시 쓰여진 CLIP의 룰 기반 부분, 후에 다른 방향으로 성장)[5]와 퍼지CLIPS(언어에 관련성의 개념을 추가하는 것)가 있다.
참고 항목
참조
- ^ Di Stefano, Antonella; Gangemi, Francesc; Santoro, Corrado (2005). ERESYE: artificial intelligence in Erlang programs. Proceedings of the 2005 ACM SIGPLAN workshop on Erlang. Tallinn, Estonia: ACM. pp. 62–71. doi:10.1145/1088361.1088373. ISBN 1-59593-066-3.
- ^ a b Giarratano, Joseph C; Riley, Gary D (2005). Expert Systems: Principles and Programming. Boston: Thomson. ISBN 81-315-0167-1.
- ^ Riley, Gary (30 Nov 2017). CLIPS Reference Manual: Volume 1 - Basic Programming Guide (PDF). Retrieved 9 July 2019.
- ^ a b Sandeep, K; Rakesh, K (2011), "CLIPS based decision support system for water distribution networks", Drinking Water Engineering and Science, 4 (1): 37–50, doi:10.5194/dwes-4-37-2011
- ^ Goyal, R, Jayasudha, T, Pandey, P, 데비, R.D;레베카 A;Sarma, M, M;락슈미, B(2014년),"위성 자료 제품 선택을 위한 지식 기반 시스템", 국제 기록 보관소 웹 사진 측량의, 원격 탐사와 공간 정보 과학, 40(8):1233–1236"합동 연습 지원 체계는 원래 CLIPS 전문가 시스템 조개에 의해, 하지만 성장했다 영감을 받았다고 나그것의 윌리엄의 Nto 완전한 뚜렷한Java-influenced 환경이다.