Методы искусственного интеллекта для синтеза проектных решений. Подольский В.Е - 42 стр.

UptoLike

6.9. ПОРОЖДЕНИЕ МНОЖЕСТВЕННЫХ РЕШЕНИЙ
Простейшая ситуация, в которой некоторые множества факторов допускают несколько ответов на вопрос, возникает,
когда в этом множестве имеется несколько фактов, сопоставимых с вопросом.
Пример. На ужин приглашены шесть человек (три юноши и три девушки). Необходимо определить, все возможные
пары:
predicates
men (symbol).
girl (symbol).
para (symbol, symbol).
goal
para (X, Y).
clauses
men (garry).
men (pit).
men (nick)
girl (merry).
girl (terry).
para (x, y) :- men(X), girl(y), write(X,’,’, Y ), nl, fail.
(nl – встроенный предикат, обозначающий перевод строки).
В данном примере введён предикат – fail, который осуществляет вынужденное неудачное завершение выполнения
предиката. Это выражение позволит продолжить поиск, когда найдено решение.
Аналогично, в рассмотренном ранее примере на принадлежность элемента списку также может потребоваться знать,
сколько раз элемент повторяется в списке. Мы можем использовать этот же механизм:
domains
L=symbol *
predicates
yes(symbol, L).
clauses
yes (x,[x|_]) :- write(“yes”).
yes(x,[_|y]) :- yes(x, y).
goal
clearwindow, write(“\ символ ? ”), read(X), yes(X, [a, b, b, d, e, d, d ]), fail.
В этом случае, если мы введём символ d , то слово “yes” будет введено три раза, так как символ d трижды встречается в
списке.
6.10. ФОРМИРОВАНИЕ СОСТАВНЫХ ЦЕЛЕВЫХ УТВЕРЖДЕНИЙ
В правилах вида х:- у, термину может состоять из одного целевого утверждения; либо представлять конъюнкцию
целевых утверждений или дизъюнкцию. Существуют предикаты, позволяющие реализовать конъюнкцию или дизъюнкцию.
1. Конъюнкция целей
Определяется функтором “,”, т.е. если А и Вцелевые утверждения, то целевое утверждение А, В cогласуется с базой
знаний, если согласуется и А и В. Если Асогласуется , а В не согласуется, то делается попытка найти новое доказательство
согласованности для А. Если А не согласуется, то не согласуется и конъюнкция в целом.
2. Дизъюнкция целей
Определяется функтором “;”. Если А и Вцелевые утверждения то их дизъюнкция: А; В согласуется с базой знаний, если
согласуется А или В.
Пример:
chelovek(X) :- X= “Aдам”; X= “ева”; мать (X, Y).
Будем считать, что объект Х является человеком, если ХАдам, или ХЕва, или у Х есть мать.
7. ПРОГРАММНО ЛАБОРАТОРНЫЙ КОМПЛЕКС
ДЛЯ АНАЛИЗА ЗНАНИЙ В ЭКСПЕРТНОЙ
СИСТЕМЕ НЕЧЁТКОГО ПРИНЯТИЯ РЕШЕНИЙ
В настоящее время большую актуальность приобретает использование экспертных систем для решения объёмных,
трудно формализуемых задач в различных предметных областях. Эти задачи характеризуются, как правило, отсутствием или
сложностью формальных алгоритмов решения, неполнотой и нечёткостью исходной информации, нечёткостью достигаемых
целей. Данные особенности приводят к необходимости использования в процессе решения данных задач знаний,
полученных от человека-эксперта в предметной области, и разработки экспертных систем, осуществляющих сбор и
управление этими знаниями, принимающими решения об оптимальном способе достижения целей в условиях неполноты и
нечёткости. Для выполнения данных задач был разработан программно-лабораторный комплекс.
Для принятия решений используется база знаний, которая содержит факты и знания.
Факты представляют собой информацию о лингвистических переменных (пример в табл. 24) и располагаются во
внутренней базе данных экспертной системы (рис. 17).