Е) Вспомогательные символы – круглые скобки, запятые и т.п.
Вывод, дающий заключение из двух посылок можно представить следующим образом:
Предпосылка 1. Все металлы электропроводны.
Предпосылка 2. Медь металл.
Заключение: медь электропроводна.
Если вместо имен субъектов поставить переменные x, y, z, то можно получить логическую формулу:
Предпосылка 1. металл (x) электропроводен (x)
Предпосылка 2. металл (медь)
Заключение: электропроводна (медь).
Логика предикатов рассматривает вопрос, можно ли, представляя предложения в виде логических формул, с помощью выводов получить из нескольких логических формул некоторую конечную логическую формулу.
Таким образом в логике предикатов основным объектом исследования является формула. При ее определении используется понятие «терм» (некоторая сущность), объединяющая название элементарных функций, к которым применима предикатная буква. Терм определяется следующим образом:
- всякая предметная переменная или предметная константа являются термами;
- если f – n-местная функция из n аргументов и t1 …..tn – термы, то f(t1…..tn) есть терм;
Выражение p (t1…..tn), где p – предикатный символ m аргументов и t1…..tm – термы называется атомарной функцией или атомом.
Атомы и всякие выражения из них есть правильно построенные формулы (ППФ).
Пример;
Предпосылка 1. (логическая формула) x (p(x)) q(x)
Предпосылка 2. (атом) p(a)
Заключение (атом) q(a)
Здесь p – металл, q – электропроводность, a – медь.
Интерпретация. Формула имеет определенный смысл, т.е. обозначает определенное высказывание, если существует какая-либо интерпретация.. Интерпретировать формулу – значит связать с ней определенное множество М, т.е. конкретизировать предметную область, называемую областью интерпретации и указать соответствие, относящееся:
- каждой предметной константе в формуле конкретный элемент из М;
- каждой n-местной функциональной букве в формуле – конкретную n-местную функцию на М;
- каждой n-местной предикатной букве в формуле конкретное отношение между n элементами из М.
Иными словами – интерпретирование формул исчисления предикатов это конкретизация предметной области М и соответствия между символами, входящими в формулы с одной стороны, и элементами, функциями и отношениями на М с другой.
Пример: элементарная формула G(f(a,b), g(f,b))
Интерпретация: М – множество действительных чисел; a,b –числа 2 и 3 соответственно; f – функция сложения (f(a,b) = a+b); g – функция умножения (g(a,ba0 =ab); G - отношение «не меньше» . Формула обозначает высказывание « сумма 2+3 не меньше произведения 2*3». Результат «ложь». Если изменить интерпретацию, b = 1 или b = 2, то результатом будет «истина».
Другая формула при той же интерпретации:
G(f(g(x,x),g(y,y),g(a,g(x,y)))
Формула обозначает высказывание
x2 + y2> 2xy
Высказывание верно при любом x и y из М и всегда истинно.
Для описания высказываний на языке предикатов в заданной предметной области часто для обозначения предикатных букв и констант используются слова или сокращения, которые являются названиями определяемых ими свойств, отношений, объектов.
( x) [ Дельфин (x) умный (x)]
Дельфин наделен умственными способностями
( x) [Слон (x) --- цвет (x, серый)]
Все слоны имеют серую окраску.
Логика предикатов применяется для решения сравнительно простых задач.
Продукционные модели знаний
Продукционные модели занимают особое положение, т.к. они являются наиболее декларативным способом представления знаний. Продукционная модель представления знаний – это набор правил вида
ЕСЛИ «условие, ТО «действие»,
где «условие» образец для поиска в базе данных (утверждение о состоянии базы данных); «действие» - действие, выполняемое при успешном исходе поиска в базе (процедуры, которые могут изменять состояние базы данных). Действия могут быть промежуточными, выступающие далее как условия и целевыми, завершающими работу системы.
В продукционных моделях используются некоторые элементы логических моделей, что позволяет организовать из них эффективные процедуры вывода, а с другой стороны, более наглядно отражают знания, чем классические логические модели. Правила вывода в этих моделях называются продукциями.
Системы продукций – это набор правил, используемый как база знаний, поэтому его еще называют базой правил. Продукции соответствуют навыкам в долгосрочной памяти человека. Подобно навыкам в долгосрочной памяти эти продукции не изменяются при работе системы. Они вызываются «по образцу» для решения данной проблемы.. Рабочая память продукционной системы соответствует краткосрочной памяти или текущей области внимания человека. Содержание рабочей области после решения задачи не сохраняется.
Примеры фактов и правил.
Факт 1. Зажженная плита – горячая.
Правило 1. Если положить руку на зажженную плиту, то можно обжечься.
В общем виде под продукцией понимается выражение следующего вида:
( I); Q; P; AB; N
Здесь I – имя продукции, с помощью которого эта продукция выделяется из всего множества продукций. В качестве имени может выступать какое-то словосочетание или порядковый номер продукции. Q - характеризует сферу применения продукции. Примерами сфер применения могут быть «роботизированный участок», «приготовление пищи» и другие. Разделение знаний на отдельные сферы позволяет экономить время на поиск нужных знаний.
Основным элементом продукции является ее ядро А В. Интерпретация ядра продукции может быть различной, но чаще всего звучит так: ЕСЛИ А, ТО В1, ИНАЧЕ В2. Элемент Р – условие применимости. Обычно Р представляет собой логическое выражение. Когда Р принимает значение «истина» ядро активизируется. Если Р «ложно», то ядро не может быть использовано. Элемент N описывает постусловия продукции. Это действия, которые выполняются только в том случае, если ядро продукции реализовалось.
В системе продукций должны быть заданы специальные процедуры управления продукциями, с помощью которых происходит активизация продукций и выбор для выполнения той или иной продукции из числа активизированных. Продукционные системы имеют давнюю историю. Их ограничение – в применении к крупномасштабным задачам, т.к. большое число правил приводит к замедлению скорости вывода. Кроме того, продукционная модель не имеет механизма вывода из тупиковых состояний в процессе поиска. Она продолжает работать, пока не будут исчерпаны все допустимые продукции.
Преимущества продукционной модели представления знаний:
- простота и гибкость выделения знаний;
- отделение знаний от программы поиска;
- модульность продукционных правил (правила не могут вызывать другие правила);
- простота пополнения и модификации;
- возможность эвристического управления поиском;
- возможность трассировки «цепочки рассуждений»;
- простота механизма вывода;
- независимость от выбора языка программирования;
- для ПК это простой и точный механизм использования знаний с высокой однородностью, описанных по одному синтаксису;
- продукционные правила являются правдоподобной моделью решения задачи человеком.
Фрагмент управления транспортным роботом:
Правило 1: Если i-й накопитель пуст – перейти к i+1 накопителю.
Правило 2: Если в i-том накопителе есть детали И тележка робота не заполнена, то освободить накопитель и перейти к i+1 накопителю.
Правило 3: Если тележка робота заполнена, то отвезти детали на склад и вернуться к i-тому накопителю.
Продукционная система имеет три компонента. Это знания, представленные в виде системы продукций в базе правил (БП), образцы условий в рабочей памяти (РП) и механизм вывода (МВ) (рис. ).
Машина (механизм) вывода.
Программа, управляющая перебором правил называется машиной вывода (интерпретатором правил). МВ выполняет две функции: а) просмотр существующих фактов из рабочей памяти (базы данных) и правил из базы знаний с добавлением (по мере возможности) в рабочую память новых фактов; б) определение порядка просмотра и применения правил.
Этот механизм управляет процессом консультации, сохраняя для пользователя информацию о полученных заключениях, и запрашивает у него информацию, когда для срабатывания очередного правила в РП оказывается недостаточно данных.
МВ представляет собой небольшую по объему программу и включает два компонента – один реализует вывод, второй управляет этим процессом.
Действие компонента вывода основано на применении правила, называемого modusponens. «Если известно, что истинно утверждение А и существует правило ЕСЛИ А ,ТО В, тогда утверждение В также истинно». Правила срабатывают, когда находятся факты, удовлетворяющие их левой части. «Если истинна посылка, то должно быть истинно и заключение». Компонент вывода должен функционировать даже при недостатке информации.
Управляющий компонент определяет порядок применения правил и выполняет четыре функции:
1. Сопоставление = образец правила сопоставляется с известным фактом.
2. Выбор – если в конкретной ситуации может быть применено сразу несколько правил, то из них выбирается одно, наиболее подходящее по заданному критерию (разрешение конфликтов).
3. Срабатывание – если образец правила при сопоставлении совпал с каким-либо фактом из РП, то правило срабатывает.
4. Действие – РП подвергается изменению путем добавления в нее заключения сработавшего правила. Если в правой части правила содержится указание на какое-либо действие, то оно выполняется.
Интерпретатор (МВ) работает циклически. В каждом цикле он просматривает все правила, чтобы выявить те, которые совпадают с известными на данный момент фактами из РП. После выбора правило срабатывает, его заключение заносится в РП, и цикл повторяется снова. В одном цикле может сработать только одно правило.