
82 Бтава 3. Методы поиска решений для динамических баз знаний
• относительно невысокая эффективность получаемой программы по
сравнению с использованием традиционных процедурных систем
(языков) программирования.
Первый недостаток, как отмечается в [79], имеет и свою положитель-
ную сторону, заставляя выносить вопросы корректности продукционной
модели на самый высокий уровень — уровень представления знаний.
На этом уровне активно работает эксперт и проблема корректности реша-
ется с существенно меньшими трудозатратами, чем когда она «опустится»
на уровень сгенерированной программы.
Относительно второго недостатка заметим, что с развитием непроце-
дурного, декларативного стиля программирования, в частности продук-
ционного и функционального, и вычислительных систем, поддерживаю-
щих этот стиль (например потоковых ЭВМ), различие в эффективности
получаемых программ все более уменьшается.
3.2.4. Анализ продукционных систем
3.2.4.1.
Алгоритмический подход
Продукционные системы (модели) будем рассматривать с точки зре-
ния формальных систем [71, 103]. Следуя [71], формальная система
определяется своим алфавитом А = {а,}, г =
1,
т, и конечной сово-
купностью «правил вывода» Pj,...,P„. Под i-местным правилом вы-
вода Р, при этом понимается некоторое рекурсивное множество i-ок
(а;1,...,Ж;) слов в алфавите А. Данное множество обычно задается
некоторым «простым» правилом, позволяюшлм для любой произволь-
но взятой Z-ки слов узнать, обладает она соответствующим признаком
или нет.
Слово и называется непосредственным следствием из некоторой
совокупности слов V (обозначается U = и), если возможно указать такое
правило вывода Р, и такие слова
Х\,...
,xi в U, что последовательность
{xi,... ,Xi,u) принадлежит Р,.
Слово и называется следствием из совокупности слов U, или выво-
димо из и (в данной формальной системе) (обозначается U
—
и), если
можно указать такую конечную последовательность слов (a;i,..., ж;), что
и = xi, {и,
Ж]}
= Х2,..., {и, Xi,..., xi}
—
и. Дополнительно полагается,
что каждое слово есть непосредственное следствие самого себя, т. е., если
и С и,
то
и = и.
Формальным доказательством на основе некоторой совокупности
слов и формальной системы F называется любая конечная последо-
вательность слов (xi,X2, ••. ,Xt) из F, обладающая свойством для ка-
ждого X,, О < г < t, или X си, или {х\,Х2,... ,Xt} = х. Последнее
слово X формального доказательства называется его утверждением, а все
формальное доказательство {х\,Х2,... ,xt) называется формальным вы-
водом X из {ж} на основе U.
Из определения формальной выводимости непосредственно вытека-
ют следующие ее свойства:
1) если и
—
uuU
—
W,ToW
—
и;
2) если и
—
и и {и, и}
—
W,TOU
- w;