Язык создания экспертных систем clips: поддерживаемые парадигмы, основные структуры данных, конструкции языка для обработки данных и осуществления вывода.
CLIPS представляет собой современный инструмент, предназначенный для создания экспертных систем. CLIPS состоит из интерактивной среды – экспертной оболочки со своим способом представления знаний, гибкого и мощного языка и нескольких вспомогательных инструментов. CLIPS поддерживает эвристическую и процедурную парадигму представления знаний.
Основные конструкции:
факты - одна из основных форм представления данных в CLIPS. Каждый факт представляет собой определенный набор данных, сохраняемый в текущем списке фактов — рабочей памяти системы.
Правила - служат для представления эвристик или так называемых "эмпирических правил", которые определяют набор действий, выполняемых при возникновении некоторой ситуации.
Глобальные переменные - глобальная переменная доступна везде после своего создания (а не только в правиле, в котором она получила свое значение).
Функции - являются последовательностью действий с заданным именем, возвращающей некоторое значение или выполняющей различные полезные действия (например, вывод информации на экран).
CLIPS сочетает в себе 3 парадигмы программирования: логическую, процедурную и объектно-ориентированную. Также, в CLIPS предусмотрены 3 основных формата представления информации: факты, глобальные переменные и объекты.
Интерфейс среды CLIPSWindows в целом соответствует Prolog. Команда (run) запускает выполнение программы в среде (с машиной логического вывода), (reset) – обновляет рабочую память, а (clear) – полностью очищает среду CLIPS (рабочую память). Опция главного меню Load позволяет загрузить файл с конструкциями, а Load Batch – файл с командами (программу).
Форматы представления данных в CLIPS
Факты являются одной из основных форм высокого уровня для представления информации в системе CLIPS. Факт (fact) – это список элементарных значений, на которые ссылаются либо позиционно (упорядоченные (ordered) факты), либо по имени (неупорядоченные (non-ordered) или шаблонные (template) факты).
Глобальные переменные. Конструкция defglobal позволяет описывать переменные, которые являются глобальными в контексте окружения CLIPS. То есть глобальная переменная доступна в любом месте окружения CLIPS и сохраняет свое значение независимо от других конструкций.
Объекты в CLIPS могут быть описаны как символьные, строковые, целые или вещественные числа, значения с множеством полей, внешние адреса или объекты определенного пользователем класса.
Для создания пользовательского класса используется конструкция defclass.
Правила, функции и хэндлеры в CLIPS
Среда CLIPS имеет встроенные средства для осуществления логического вывода, но позволяет программисту управлять очередностью выполнения правил (посредством параметра salience).
Эвристический подход. Одним из основных подходов к представлению знаний в CLIPS является использование правил. Разработчик интеллектуальной системы (инженер по знаниям) задает набор правил, которые совместно работают над разрешением проблемы.
Процедурный подход. CLIPS также поддерживает процедурный механизм, как большинство традиционных языков программирования, таких как Pascal или C. Функции, заданные конструкцией deffunction и встроенные функции CLIPS позволяют пользователю создавать новые исполнимые элементы, выполняющие полезные второстепенные действия или возвращают некоторое полезное значение.
В CLIPS процедурный и эвристический механизмы представления знаний могут тесно взаимодействовать путем вызова пользовательских функций как из LHS, так и из RHS. для создания пользовательских функций используется конструктор deffunction.
Взаимодействие с классами осуществляется путём отправки им «сообщений». Для этого сначала определяется «хэндлер» (по смыслу близок к функциям), через конструкцию defmessage-handler:
(defmessage-handler Guideline print-tag () ; выводит содержимое слота tag класса Guideline
(printout t ?self:tag crlf)
)
Затем в нужном месте программы классу отправляется «сообщение»:
?guideline <- (object (is-a Guideline))
=>
(send ?guideline print-tag ())
- Многокритериальное пр. Качественный и количественный анализ. Пространственные модели.
- Пр в условиях неопределенности. Парадигма анализа решений. Деревья решений.
- Теория полезности. Принцип максимальной ожидаемой полезности. Методы прямого построения функции полезности
- Теория полезности. Основные свойства функции полезности. Учет отношения к риску в функции полезности.
- Теория полезности. Обоснование s- образности кривой полезности.
- Теория полезности. Определение отношения к риску на основе понятия детерминированного эквивалента.
- Определение детерминированного эквивалента. Детерминированный эквивалент для выпуклой и вогнутой функции.
- Стратегическая эквивалентность функций полезности. Линейная функция полезности.
- Логарифмическая функция полезности. Пример.
- Экспоненциальная функция полезности. Пример.
- Квадратичная функция полезности. Пример.
- Теоремы о несклонности к риску. Надбавка за риск.
- Теоремы о склонности к риску. Надбавка за риск.
- Пример функции полезности для лпр несклонного к риску.
- Пример функции полезности для лпр склонного к риску.
- Мера несклонности к риску. Обоснование. Интерпретация функции несклонности к риску.
- Связь между надбавкой за риск и функцией несклонности к риску.
- Особенности и признаки интеллектуальности информационных систем.
- Классификация иис. Системы с интеллектуальным интерфейсом
- Экспертные системы. Архитектура экспертной системы. Назначение составных частей эс.
- База знаний и механизм вывода на знаниях. Сравнительный анализ.
- 22 Этапы создания экспертной системы. Идентификация предметной области. Построение концептуальной модели. Типы моделей
- Этапы проектирования экспертной системы. Формализация базы знаний. Классификация моделей представления знаний
- Особенности знаний и их отличие от данных. Декларативные и процедурные знания. Системы, основанные на знаниях. Этапы трансформации данных и знаний. Базы данных и базы знаний
- Самообучающиеся системы. Технологии olap и Data Mining. Определение Data Mining. Основные типы закономерностей, извлекаемых с помощью Data Mining
- Индукция и дедукция. Алгоритм индуктивного обучения. Деревья решений
- Искусственные нейронные сети. Обучение нейронных сетей
- Системы, основанные на прецедентах (Case Based Reasoning)
- Прямой логический вывод в эс на основе правила Modus Ponens.
- Обратный логический вывод в эс на основе правила Modus Ponens
- Семантические сети. Основные типы отношений в семантических сетях. Правила построения семантических сетей
- Теория фреймов. Структура фрейма. Слоты и присоединенные процедуры. Механизм вывода на фреймах
- Механизм вероятностного вывода на основе правил Байеса и коэффициентов уверенности
- Основные понятия теории нечетких множеств. Операции над нечеткими множествами. Понятия нечеткой и лингвистической переменной. Основы нечеткого логического вывода.
- Понятие онтологии. Классификация онтологий и их применение.
- Редакторы онтологий, формализмы и форматы представления онтологий
- Элементы фреймовых онтологий – классы, экземпляры, слоты (типы значений, кардинальность), отношения и т.Д.
- Подход к формированию онтологий в редакторе Protégé. Последовательность создания онтологий
- Язык создания экспертных систем clips: поддерживаемые парадигмы, основные структуры данных, конструкции языка для обработки данных и осуществления вывода.