Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

CLIPS - это общедоступный программный инструмент для построения экспертных систем . Название является аббревиатурой от «C Language Integrated Production System». Синтаксис и имя был вдохновлен Чарльз Форджи «s OPS5 . Первые версии CLIPS разрабатывались , начиная с 1985 года в НАСА - Космический центр Джонсон ( в качестве альтернативы не существующей системы АРТ * Inference) до середины 1990-х годов , когда ответственность Группы по вопросам развития перестала фокусироваться на технологии экспертной системы. Первоначальное название проекта - НАСА AI Language ( NAIL ).

CLIPS - вероятно, наиболее широко используемый инструмент экспертной системы. [1] Сам CLIPS написан на C , расширения могут быть написаны на C, а CLIPS может быть вызван из C. Его синтаксис похож на синтаксис языка программирования Lisp . [2]

CLIPS включает полный объектно-ориентированный язык для написания экспертных систем. COOL сочетает в себе парадигмы программирования процедурного, объектно-ориентированного и логического (доказательства теорем) языков. [3]

Факты и правила [ править ]

CLIPS использует прямую цепочку . [4] [2] Как и другие языки экспертных систем, CLIPS имеет дело с правилами и фактами. Различные факты могут сделать правило применимым. Затем применяется применимое правило. [4] Факты и правила создаются путем их предварительного определения, как показано ниже:

 ( deftemplate  car_problem  ( название слота  ) ( статус слота ))   ( deffacts  Trouble_shooting  ( car_problem  ( name  ignition_key )  ( status  on ))  ( car_problem  ( name  engine )  ( status  wont_start ))  ( car_problem  ( имя  фары )  ( статус  работа ))) ( defrule  rule1  ( car_problem  ( name  ignition_key )  ( status  on ))  ( car_problem  ( name  engine )  ( status  wont_start ))  =>  ( assert  ( car_problem  ( name  starter )  ( статус  неисправен ))))

После настройки команда (reset) заставляет CLIPS читать факты и правила. В данном случае это привело бы к утверждению трех фактов "Trouble_shooting". Затем используется команда (запустить). Учитывая, что оба факта, перечисленные в правиле 1, были утверждены, условия для выполнения его действия были выполнены, поэтому дополнительный факт утверждается в результате выполнения.

КЛИПЫ>  ( сброс ) КЛИПЫ>  ( повестка ) 0  rule1:  F-1, F-2 Для получения  в  общей сложности  от  1  активации. CLIPS>  ( факты ) f-0  ( исходный факт ) f-1  ( car_problem  ( name  ignition_key )  ( status  on )) f-2  ( car_problem  ( name  engine )  ( status  wont_start )) f-3  ( car_problem ( Наименование  фары )  ( статус  работы )) Для  в  общей сложности  из  4  фактов. CLIPS>  ( запустить ) CLIPS>  ( факты ) f-0  ( исходный факт ) f-1  ( car_problem  ( name  ignition_key )  ( status  on )) f-2  ( car_problem  ( name  engine )  ( status  wont_start )) f-3  ( car_problem ( Наименование  фара )  ( статус  работа )) F-4  ( car_problem  ( имя  стартер )  ( состояние  неисправность )) Для  в  общей сложности  от  5  фактов.

КЛИПСЫ> (assert <fact> +)

(Утверждение (объект (название «стул»)

(Материал дерево) (высота 3 фута) (Коричневый цвет)) CLIPS (retract <fact-index +) (retract 0) для цвета </syntaxhighlight>

В CLIPS значимость позволяет пользователю назначать приоритет (или вес) правилу.

Потомки [ править ]

Потомки языка CLIPS включают Jess (основанная на правилах часть CLIPS, переписанная на Java , позже она выросла в другом направлении), [5] и FuzzyCLIPS (который добавляет в язык понятие релевантности).

См. Также [ править ]

Ссылки [ править ]

  1. ^ Ди Стефано, Антонелла; Гангеми, Франсеск; Санторо, Коррадо (2005). ERESYE: искусственный интеллект в программах на Erlang . Материалы семинара ACM SIGPLAN 2005 года по Erlang. Таллинн, Эстония: ACM. С. 62–71. DOI : 10.1145 / 1088361.1088373 . ISBN 1-59593-066-3.
  2. ^ a b Джарратано, Джозеф С; Райли, Гэри Д. (2005). Экспертные системы: принципы и программирование . Бостон: Томсон. ISBN 81-315-0167-1.
  3. Рианна Райли, Гэри (30 ноября 2017 г.). Справочное руководство CLIPS: Том 1 - Основное руководство по программированию (PDF) . Дата обращения 9 июля 2019 .
  4. ^ a b Сандип, К; Ракеш, K (2011), "CLIPS на основе системы поддержки принятия решений для сетей водоснабжения", питьевой воды инженерных и естественных наук , 4 (1): 37-50, DOI : 10.5194 / dwes-4-37-2011
  5. ^ Goyal, R; Джаясудха, Т; Панди, П; Деви, Р. Д; Ребекка, А; Сарма, М, М; Лакшми, Б. (2014), "Система знаний для выбора продуктов спутниковых данных", Международный архив фотограмметрии, дистанционного зондирования и наук о пространственной информации , 40 (8): 1233–1236 «Изначально JESS был вдохновлен оболочкой экспертной системы CLIPS, но превратился в полную, самостоятельную среду под влиянием Java».

Внешние ссылки [ править ]

  • Официальный веб-сайт
  • НАСА КЛИПС: загрузки, информация, новости и история
  • Инструмент экспертной системы CLIPS: кандидат в ядро ​​диагностической системы
  • Учебник CLIPS по Code Project
  • Редактор кода для CLIPS