Программирование на языке ПРОЛОГ для искуственного интеллекта




Поиск с предпочтением - часть 10


        мин( X, Y, X) :-
             Х =< Y,   !.

        мин( X, Y, Y).

line();

Рис. 12. 3.  Программа поиска с предпочтением.

Аргументы процедуры расширить имеют следующий смысл:

Путь             Путь между стартовой вершиной и корнем дерева Дер.

Дер               Текущее (под)дерево поиска.

Предел         Предельное значение f-оценки, при котором допускается расширение.

Дер1            Дерево Дер, расширенное в пределах ограничения Предел;
                    f-оценка дерева Дер1 больше, чем Предел ( если только при расширении не была обнаружена целевая вершина).

ЕстьРеш      Индикатор, принимающий значения "да", "нет" и "никогда".

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

Переменные Путь, Дер, и Предел - это "входные" параметры процедуры расширить в том смысле, что при каждом обращении к расширить они всегда конкретизированы. Процедура расширить порождает результаты трех видов. Какой вид результата получен, можно определить по значению индикатора ЕстьРеш следующим образом:

(1)        ЕстьРеш = да.

            Решение = решающий путь, найденный при расширении дерева Дер с учетом ограничения Предел.




Содержание  Назад  Вперед