Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Kontr_ZPA_Int.doc
Скачиваний:
113
Добавлен:
10.11.2018
Размер:
668.67 Кб
Скачать

Программа решения задачи эс ("Транспортные средства")

/* Transport.pro */

domains % Типы данных:

колеса, винт, крыло, грузы, тcредство = string

database % Предикаты внутренней базы знаний

базтранспорт (колеса, винт, крыло, грузы, тcредство)

predicates % Предикаты:

repeat % Повтор

do_mbase

assert_database

clear_database

транспорт (колеса, винт, крыло, грузы, тcредство)

process (integer)

goal % Запрос:

do_mbase

транспорт ("1", "0","0","1", "Тcредство")

clauses % Правила:

repeat.

% Связь базы данных с базой знаний

транспорт ("1", "1","1","1", "Самолет")

транспорт ("1", "1","0","1", "Вертолет")

транспорт ("0", "1","0","1", "Катер")

транспорт ("0", "1","0","1", "Танкер")

транспорт ("1", "0","0","1", "Грузовик")

транспорт ("1", "0","0","0", "Такси")

assert_database :-

транспорт (Колеса, Винт, Крыло, Грузы, Тcредство),

assert_(базтранспорт (Колеса, Винт, Крыло, Грузы, Тcредство)),

fail.

assert_database :-!.

clear_database :-

retract (базтранспорт ( _, _, _, _, _ )),

fail.

clear_database :-!.

do_mbase:-

assert_database :-!.

clear_database.

clearwindow,

nl, nl, nl, nl,

% Создание интерфейса пользователя (вопросник)

readint (Choice), nl,

process (Choice),

removewindow.

process (1) :-

write ( "1 – Да" ), nl,

write ( "0 – Нет" ), nl,

write ( "Объект имеет Колеса?"),

readln (Колеса), nl,

write ( "Объект имеет Винт?"), nl,

readln (Винт), nl,

write ( "Объект имеет Крыло?"), nl,

readln (Крыло), nl,

write ( "Объект возит Грузы?"), nl,

readln (Грузы ),

базтранспорт (Колеса, Винт, Крыло, Грузы, Тcредство), nl,

write ( "Искомый объект -Тcредство"),

nl, nl, !, nl,

removewindow.

process (1):- nl,

write ( "Искомый объект не найден"),

readchar (_),

removewindow.

3.2. Порядок выполнения работы

3.1. Для своего варианта предметной области (см. "Лабораторную работу №1") разработать Prolog”-программы логической, семантической, фреймовой и продукционной моделей представления знаний (см. "Лабораторную работу №2").

3.2. Представить на экране и сделать распечатки (листинги) Prolog”-программ моделей представления знаний п.3.1 любой системе программирования).

3.3. Разработать Prolog”-программу решения задачи ЭС (см. "Лабораторную работу №1") в среде программирования "Turbo-Prolog" версии 2.0.

3.5. Представить на экране и сделать распечатку (листинг) Prolog”-программы решения задачи ЭС.

3.3. Отчет о работе

Отчет о лабораторной работе должен иметь следующую структуру и содержать разделы:

Титульный лист (см.выше)

Содержание работы

Название и цель работы (см.выше)

Реферат (теоретические сведения и общая характеристика работы – см.выше)

3.3.1. Расчетно-графическая часть

Вариант задания

Состав базы знаний

Запрос пользователя (постановка задачи ЭС)

Вопросник для осуществления диалога пользователя с ЭС

(Указанные выше разделы отчета взять из "Лабораторной работы №1")

3.3.2. Лабораторная часть

„Prolog”-программы логической, семантической, фреймовой и продукционной моделей представления базы знаний ЭС

„Prolog”-программа решения задачи ЭС в среде программирования "Turbo-Prolog" версии 2.0.

Анализ возможностей использования в ЭС базовых версий языка „Prolog”.

Литература

1. Девятков В.В. Системы искусственного интеллекта.– М.: МГТУ, - 2001.-352с.

2. Рідкокаша А.А. та ін. Основи систем штучного інтелекту. Навч. посібник. –Черкаси: Відлуння-Плюс, 2001. – 231 с.

3. Попов Э.В. и др. Статические и динамические экспертные системы. –М.: Финансы и статистика. -1996. – 320 с.

4. Крисевич В.С. и др. Экспертные системы для персональных компьютеров. / Справочное пособие. – Минск: ВШ, 1990. – 200 с.

5. Гаврилова Т.А., Хорошевский В.Ф. Базы знаний интеллектуальных систем. – СПб.: Питер, 2001. -384 с.

6. Осипов Г.С. Приобретение знаний интеллектуальными системами. – М.: Наука, 1997.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]