
- •Кафедра Информационных систем и вычислительной техники Национального минерально-сырьевого университета «Горный"
- •Содержание
- •История развития и современное состояние языка prolog
- •Тенденции в истории развития языка Prolog
- •Области применения языка Prolog
- •Современные реализации языка Prolog
- •Поддержка веб-технологий в реализацях Prolog
- •Основы разработки prolog-программ
- •Общие сведения о языке Prolog
- •Понятие факта, правила, запроса и процедуры
- •Механизм сопоставления и поиска с возвратом
- •Основные элементы языка Prolog
- •Среда разработки программ pie и система swi-prolog
- •Основы работы в консоли Prolog
- •Основы работы с программными файлами
- •Справка и помощь в среде swi-Prolog
- •Основы трассировки и отладки в среде pie и swi- Prolog
- •Графические интерфейсы на базе swi-Prolog/xpce
- •Загрузка и запуск программ swi-Prolog'a
- •Использование ярлыков для запуска программ
- •Использование командных и скриптовых сценариев
- •Среда разработки turbo-prolog
- •Структура программы на Turbo Prolog'e
- •Оболочка системы Turbo Prolog
- •Отладка и трассировка программ
- •Работа с простейшими программами в Turbo Prolog'e
- •Работа с графикой в Turbo Prolog'e
- •Среда разработки visual prolog
- •Интегрированная среда разработки
- •Разработка консольного проекта
- •Разработка gui проекта на Visual Prolog'e
- •Prolog — язык логического программирования
- •Системы основанные на знаниях
- •Логические модели и логическое программирование
- •Простейшие конструкции языка предикатов
- •Предикатные формулы
- •Определение правильно построенной формулы
- •Логический вывод
- •6.6.1. Правило резолюции для простых предложений
- •Правило резолюции для сложных предложений
- •Простая резолюция сверху вниз
- •Общая резолюция сверху вниз
- •Унификаторы и примеры унификации
- •Решение задач и извлечение ответа
- •Приложение 1. Запуск Turbo-Prolog в ос Windows 7
- •1. Стандартные предикаты ввода данных.
- •Предикаты преобразования данных
- •Предикаты работы с окнами.
- •Предикаты работы с файлами.
- •Предикаты управления экраном.
- •Предикаты обработки строк.
- •Предикаты работы с графикой.
- •Разные предикаты.
- •Правила вычисление атрибутов экрана.
- •Приложение 3. Пример программы построения дерева синтаксического анализа
- •Интеллектуальные информационные системы prolog - язык разработки интеллектуальных и экспертных систем
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РФ
Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования
«Санкт-Петербургский государственный лесотехнический университет» им. С.М. Кирова
Кафедра информационных систем и технологий
С.П.Хабаров, кандидат технических наук, доцент
ИНТЕЛЛЕКТУАЛЬНЫЕ ИНФОРМАЦИОННЫЕ СИСТЕМЫ
PROLOG - ЯЗЫК РАЗРАБОТКИ
ИНТЕЛЛЕКТУАЛЬНЫХ И ЭКСПЕРТНЫХ СИСТЕМ
Учебное пособие
для бакалавров и магистров направлений подготовки 230400 «Информационные системы и технологии»
и 230200 «Информационные системы»
Санкт-Петербург
2013
Рассмотрено и рекомендовано к изданию Учебно-методической комиссией лесохозяйственного факультета
Санкт-Петербургского государственного лесотехнического университета 12 октября 2013г.
Отв. редактор
Кандидат технических наук, доцент С.П. Хабаров
Рецензенты:
Кафедра Информационных систем и вычислительной техники Национального минерально-сырьевого университета «Горный"
(доктор технических наук, профессор И.В. Иванова), доктор технических наук, профессор, А.Ю. Тропченко (НУИИТМО)
УДК 004.89(075.8)
Хабаров С.П.
Интеллектуальные информационные системы. PROLOG- язык разработки интеллектуальных и экспертных систем: учебное пособие / С.П.Хабаров.- СПб. СПбГЛТУ, 2013.- 138 с.
ISBN
Представлено кафедрой информационных систем и технологий.
В пособии дана характеристика современного этапа развития языка Prolog и его возможностей для разработки интеллектуальных систем. Приведены общие сведения о конструкции языка и описан процесс разработки программ на этом
языке. Рассмотрены наиболее распространенные среды программирования: PIE, Tubo-
Prolog, SWI-Prolog и Visual-Prolog. Большое число примеров и заданий позволяет изучить основные методы работы в каждой из этих сред, а также познакомиться с особенностями их использования для реализации конкретных проектов.
Учебное пособие предназначено для бакалавров и магистров направлений подготовки 230400 «Информационные системы и технологии» и 230200 «Информационные системы». Оно будет полезно аспирантам, преподавателям вуза и специалистам, применяющим методы искусственного интеллекта в своей профессиональной деятельности.
Табл. 7. Ил. 81. Библиогр. 12 назв.
Темплан 2013 г. Изд. №
ISBN ©СПбГЛТУ, 2013
Содержание
ИНТЕЛЛЕКТУАЛЬНЫЕ ИНФОРМАЦИОННЫЕ СИСТЕМЫ 1
PROLOG - ЯЗЫК РАЗРАБОТКИ 1
ИНТЕЛЛЕКТУАЛЬНЫХ И ЭКСПЕРТНЫХ СИСТЕМ 1
Хабаров С.П. 2
СОДЕРЖАНИЕ 3
1. ИСТОРИЯ РАЗВИТИЯ И СОВРЕМЕННОЕ СОСТОЯНИЕ ЯЗЫКА PROLOG 5
1.1. Тенденции в истории развития языка Prolog 5
1.2. Области применения языка Prolog 8
1.3. Современные реализации языка Prolog 11
2. ОСНОВЫ РАЗРАБОТКИ PROLOG-ПРОГРАММ 18
2.1. Общие сведения о языке Prolog 18
2.2. Понятие факта, правила, запроса и процедуры 20
2.3. Механизм сопоставления и поиска с возвратом 21
2.4. Основные элементы языка Prolog 23
3. СРЕДА РАЗРАБОТКИ ПРОГРАММ PIE И СИСТЕМА SWI-PROLOG 27
3.1. Основы работы в консоли Prolog 29
3.2. Основы работы с программными файлами 33
3.3. Справка и помощь в среде SWI-Prolog 41
3.4. Основы трассировки и отладки в среде PIE и SWI- Prolog 44
3.5. Графические интерфейсы на базе SWI-Prolog/XPCE 48
3.6. Загрузка и запуск программ SWI-Prolog'a 55
3.6.1. Использование ярлыков для запуска программ 58
3.6.2. Использование командных и скриптовых сценариев 62
4. СРЕДА РАЗРАБОТКИ TURBO-PROLOG 68
4.1. Структура программы на Turbo Prolog'e 69
Секция domains 71
Секция predicates 73
Секция clauses 74
Секция goal 75
Секция database 76
4.2. Оболочка системы Turbo Prolog 77
Опция меню "Редактировать" (Ред) 79
Опция меню "Выполнить" (Вып) 80
Опция меню "Компилировать" (Компил) 80
Опция меню "Файлы” 80
Опция меню "Установки" (Устан) 81
4.3. Отладка и трассировка программ 81
4.4. Работа с простейшими программами в Turbo Prolog'e 84
Загрузка системы Turbo Prolog, ввод и запуск программ 84
Работа с программой в режиме диалога 85
Трассировка программ в среде системы Turbo Prolog'a 87
Работа с программами, содержащими внутреннюю цель 89
Простейшая программа ввода-вывода данных 91
Компиляция программ. 92
4.5. Работа с графикой в Turbo Prolog'e 94
5. СРЕДА РАЗРАБОТКИ VISUAL PROLOG 97
5.1. Интегрированная среда разработки 97
5.2. Разработка консольного проекта 98
Этап создания проекта 98
Дерево проекта (Project Tree) 100
Этап разработки программного кода проекта 101
Этап компиляции и запуска проекта 104
5.3. Разработка GUI проекта на Visual Prolog'e 106
Создание нового GUI проекта 107
Добавление формы в пустой проект 109
Настройка главного меню проекта 112
Разработка экранной формы 117
Организация вычислительных процедур проекта 119
6. PROLOG — ЯЗЫК ЛОГИЧЕСКОГО ПРОГРАММИРОВАНИЯ 121
6.1. Системы основанные на знаниях 121
6.2. Логические модели и логическое программирование 122
6.3. Простейшие конструкции языка предикатов 122
6.4. Предикатные формулы 123
6.5. Определение правильно построенной формулы 125
6.6. Логический вывод 126
6.6.1. Правило резолюции для простых предложений 127
6.6.2. Правило резолюции для сложных предложений 132
6.6.3. Простая резолюция сверху вниз 133
6.6.4. Общая резолюция сверху вниз 133
6.6.5. Унификаторы и примеры унификации 135
6.7. Решение задач и извлечение ответа 135
ПРИЛОЖЕНИЕ 137
Приложение 1. Запуск Turbo-Prolog в ОС Windows 7 137
Запуск DOSBox 138
Подключение русского языка 141
Дополнительные настройки DOSBox 142
Приложение 2. Служебные предикаты Турбо-Пролога 144
2. Предикаты преобразования данных 145
3. Предикаты работы с окнами. 146
4. Предикаты работы с файлами. 146
5. Предикаты управления экраном. 148
6. Предикаты обработки строк. 148
7. Предикаты работы с графикой. 149
8. Разные предикаты. 150
9. Правила вычисление атрибутов экрана. 151
Приложение 3. Пример программы построения дерева синтаксического анализа 153
Запись грамматических правил 153
Реализация грамматических правил на языке Prolog 154
БИБЛИОГРАФИЧЕСКИЙ СПИСОК 158
ИНТЕЛЛЕКТУАЛЬНЫЕ ИНФОРМАЦИОННЫЕ СИСТЕМЫ 159
PROLOG - ЯЗЫК РАЗРАБОТКИ 159
ИНТЕЛЛЕКТУАЛЬНЫХ И ЭКСПЕРТНЫХ СИСТЕМ 159