Экспертные системы

Логика предикатов в экспертных системах

С целью обеспечения решения проблем пропозициональной логики была разработана логика предикатов. Причем, пропозициональная логика рассматривается сегодня как подмножество логики предикатов. Предикат (лат. predicatum - заявлено, сказанное) - это термин логики и языкознания, что означает конститутивный член высказывания.

То есть, предикат представляет собой нечто, что утверждается или отрицается о субъекте. Логика предикатов позволяет рассматривать внутреннюю структуру выражений. В ней допускается использование таких специальных слов, как: «все», «некоторые», «ни один». Эти слова называются кванторами.

Кванторы позволяют предоставлять явные количественные оценки другим словам и точнее формулировать выражения. Все кванторы отвечают на вопрос «сколько» и, поэтому, позволяют применять более широкий круг выражений сравнению с пропозициональною логикой. Существуют различные виды кванторов и, для детального рассмотрения их сущности, возьмем самые распространенные из них: квантор всеобщности и квантор существования. Логика предикатов использует специальные слова - кванторы, которые предоставляют количественные оценки другим словам и точно формулируют выражения.

Квантор всеобщности

Квантор всеобщности обеспечивает организацию универсальных высказываний. Выражение с квантором всеобщности принимает одинаково истинное значение при подстановке всех объектов из одной области определения.

Квантор всеобщности представляется с помощью символа , за которым следует один или несколько параметров, соответствующих переменным области определения. Символ интерпретируется как «для каждого» или «для всех».

Например, выражение:

(х) (х + х = 2х)

свидетельствует о том, что для каждого х (где х - число) выражение х + х = 2х является истинным. Если это выражение будет обозначен символом р, то приведенное выше утверждение может быть представлено более кратко следующим образом:

(х) (р)

Следует отметить, что вместе с фиктивными переменными х и p можно использовать другие переменные, выражения и функции. Предположим, что Н - предикативная функция, обозначающий людей, а М - функция, обозначающая смертные существа. В таком случае утверждение, согласно которому все люди смертны, можно записать следующим образом:

(x) (H(x) → М(х))

Это утверждение читается так: для всех x, если х - человек, то х - смертен. Это предложение логики предикатов может быть также выражена в терминах продукционных правил:

IF х - человек THEN х - смертная

Квантор всеобщности может интерпретироваться как конъюнкция предикатов, относящихся к отдельным экземпляров.

Под экземпляром здесь понимается конкретный случай. Предположим, что человек с фамилией Петренко Р.М. является конкретным экземпляром класса клиентов банка. Тогда, эту мысль можно выразить через предикативную функцию «Клиент», для которой Петренко Р.М. будет аргументом:

Клиент (Петренко Р. М.)

Использование конъюнкции позволяет выражение логики предикатов, представлен в виде:

(x) Р (x)

интерпретировать в терминах экземпляров а i:

P (а 1) Λ Р (а 2) Λ Р (а 3) Λ • • • Λ P (a N)

В этом случае, последовательность точек (• • •) указывает, что действие предиката распространяется на все элементы данного класса. Таким образом, в приведенном выражении сказано, что предикат применяется ко всем экземпляров класса. В выражениях может быть несколько кванторов.

Например, для формулировки закона коммутативности суммы чисел нужны два кванторы:

(х) (у) (х + у = у + х)

В этом выражении утверждается, что «для каждого x и для каждого в сумма х и у равно сумме ута х».

Квантор существования

Квантор существования определяет утверждение как истинное, по крайней мере, одного элемента области определения. Он является ограниченной формой квантора всеобщности.

( х) (х • х = 1),

(х) (Клиент (х) Λ Фамилия (Петренко Г. М.))

В первом из выражений указано, что существует число х, результат умножения которой на самого себя равен единице. Во втором выражении сказано, что существует клиент по фамилии Петренко Р. М.. Квантор существования можно прочитать несколькими способами, в частности: «существует», «некоторый», «минимум один».

Так же, как квантор всеобщности может быть выражен с помощью конъюнкции, квантор существования может быть выражен с помощью дизъюнкции экземпляров, а i:

P (а 1) V Р (а 2) V Р (а 3) V • • • VP (a N)

Многие типы высказываний можно представить на основе логики предикатов с использованием кванторов всеобщности и существования. Однако, она имеет некоторые ограничения для представления знаний в экспертных системах.

Например, в логике предикатов невозможно выразить следующее высказывание: «Большинство клиентов банка взяла кредит в долларах». В нем квантор «большинство» означает «больше половины». Квантор «большинство» не может быть выражен в терминах квантора всеобщности и квантора существования.

Для реализации квантора «большинство» в логике должны быть предусмотрены предикаты, которые обеспечивают подсчет количества элементов (что возможно при использовании нечеткой логики). Еще одно ограничение логики предикатов заключается в том, что она не позволяет выражать зависимости, которые могут быть истинными иногда, но не всегда.

Указанная проблема также может быть решена с помощью нечеткой логики. Однако, внедрение в логическую систему средств проведения вычислений вызывает появление дополнительных осложнений.