Читаем Prolog полностью

Наконец, несколько замечаний относительно новой версии процедуры ответпольз. Она будет проще, чем процедура рис. 14.11, так как в запросах, передаваемых пользователю, уже не будет переменных. На этот раз пользователь в качестве ответа введет некоторую вероятность (вместо "да" или "нет"). Если пользователю ничего неизвестно о событии, содержащемся в вопросе, то вероятность этого события не изменится. Пользователь может также задать вопрос "почему" и получить изображение объекта Трасса в качестве объяснения. Кроме того, следует разрешить пользователю задавать вопрос: "Какова текущая вероятность моей гипотезы?" Тогда, если он устал вводить новую информацию (или у него мало времени), он может прекратить консультационный сеанс, довольствуясь ответом системы, полученным на основании неполной информации.

% Процедура

% рассмотреть( Цель, Трасса, Ответ)

%

% находит степень правдоподобия утверждения "цель это правда".

% Оценка правдоподобия содержится в объекте Ответ. Трасса - это

% цепочка целей-предшественников и правил, которую можно

% использовать в объяснении типа "почему"

        рассмотреть( Цель, Трасса, ( Цель: Вер) было

                                    'выведено по' ПравОтв) :-

                bagof( Прав: если Условие то Цель с Сила, Правила),

                                    % Все правила, относящиеся к цели

                априори( Цель, Вер0),

                                    % Априорная вероятность цели

                модиф( Вер0, Правила, Трасса, Вер, ПравОтв).

                                    % Модифицировать априорные вероятности

        рассмотреть( Цель1 и Цель2, Трасса,

                                ( Цель1 и Цель2 : Вер было 'выведено из'

                                ( Ответ1 и Ответ2) ) :-

                !,

                рассмотреть( Цель1, Трасса, Ответ1),

                рассмотреть( Цель2, Трасса, Ответ2),

                вероятность( Ответ1, В1),

                вероятность( Ответ2, В2),

                мин( В1, В2, Вер).

        рассмотреть( Цель1 или Цель2, Трасса,

                                ( Цель или Цель2:Вер) было 'выведено из'

                                ( Ответ1 и Ответ2) ) :-

                !,

                рассмотреть( Цель1, Трасса, Ответ1),

                рассмотреть( Цель2, Трасса, Ответ2),

                вероятность( Ответ1, В1),

                вероятность( Ответ2, В2),

                макс( В1, В2, Вер).

        рассмотреть( не Цель, Трасса,

                        ( не Цель:Вер) было 'выведено из' Ответ) :-

                !,

                рассмотреть( Цель, Трасса, Ответ),

                вероятность( Ответ, В),

                обратить( В, Вер).

        рассмотреть( Цель, Трасса, ( Цель: Вер) было сказано) :-

                ответпольз( Цель, Трасса, Вер).

                                    % Ответ, выведенный пользователем

% Отношение

%

% модиф( Вер0, Правила, Трасса, Вер, ПравОтв)

%

% Существует Цель с априорной вероятностью Вер0. Правила имеют

% отношение к утверждению Цель; суммарное влияние этих правил

% (точнее, их условных частей) на Вер0 приводит к тому,

% что Вер0 заменяется на апостериорную вероятность Вер;

% Трасса - список целей-предков и правил, использовавшихся

% при выводе утверждения Цель;

% ПравОтв - результаты анализа условных частей

% правил из списка Правила.

        модиф( Вер0, [ ], Трасса, Вер0, [ ]).

                                    % Нет правил - нет модификации

        модиф( Вер0,

                        [ Прав : если Усл то Цель с Сила | Правила],

                        Трасса, Вер, [Прав из Ответ | ПравОтв] ):-

                рассмотреть( Усл, [Цель по Прав | Трасса], Ответ),

                                    % Условие из первого правила

                априори( Усл, В0),

                вероятность( Ответ, В),

                импликация( В0, В, Сила, Вер0, Вер1),

                                    % "Мягкая" импликация

                модиф( Вер1, Правила, Трасса, Вер, ПравОтв).

Рис. 14. 16.  Определение степени правдоподобия гипотезы при помощи

распространения информации об оценке уверенности по сети вывода.

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

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

14. 7.    Заключительные замечания

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

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

Перейти на страницу:

Похожие книги

12 великих трагедий
12 великих трагедий

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

Александр Николаевич Островский , Иоганн Вольфганг фон Гёте , Оскар Уайльд , Педро Кальдерон , Фридрих Иоганн Кристоф Шиллер

Драматургия / Проза / Зарубежная классическая проза / Европейская старинная литература / Прочая старинная литература / Древние книги
Волчья тропа
Волчья тропа

Мир после ядерной катастрофы. Человечество выжило, но высокие технологии остались в прошлом – цивилизация откатилась назад, во времена Дикого Запада.Своенравная, строптивая Элка была совсем маленькой, когда страшная буря унесла ее в лес. Суровый охотник, приютивший у себя девочку, научил ее всему, что умел сам, – ставить капканы, мастерить ловушки для белок, стрелять из ружья и разделывать дичь.А потом она выросла и узнала страшную тайну, разбившую вдребезги привычную жизнь. И теперь ей остается только одно – бежать далеко на север, на золотые прииски, куда когда-то в поисках счастья ушли ее родители.Это будет долгий, смертельно опасный и трудный путь. Путь во мраке. Путь по Волчьей тропе… Путь, где единственным защитником и другом будет таинственный волк с черной отметиной…

Алексей Семенов , Бет Льюис , Даха Тараторина , Евгения Ляшко , Сергей Васильевич Самаров

Фантастика / Приключения / Боевик / Славянское фэнтези / Прочая старинная литература