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




Программа поиска - часть 11


                                        % Первое дерево ИЛИ-списка - наилучшее

                f( Дер, F),  !.

        оценка( и :[ ], 0) :-   !.

        оценка( и : [Дер1 | ДД], F) :-

                f( Дер1, F1),

                оценка( и : ДД, F2),

                F is F1 + F2,  !.

        оценка( Дер, F) :-

                f( Дер, F).

% Отношение выбор( Деревья, Лучшее, Остальные, Предел, Предел1):

% Остальные - И / ИЛИ-список Деревья без его "лучшего" дерева

% Лучшее; Предел - ограничение для Списка Деревья, Предел1 -

% ограничение для дерева Лучшее

        выбор( Оп : [Дер], Дер, Оп : [ ], Предел, Предел) :-  !.

                                                               % Только один кандидат

        выбор( Оп : [Дер | ДД], Дер, Оп : ДД, Предел, Предел1) :-

                оценка( Оп : ДД, F),

                ( Оп = или,  !,  мин( Предел, F, Предел1);



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