Введение. Методические указания к лабораторным работам
РАЗРАБОТКА И ОТЛАДКА ПРОГРАММ
НА ЯЗЫКЕ ТУРБО-ПРОЛОГ
Методические указания к лабораторным работам
по дисциплине
«Языки программирования задач искусственного интеллекта»
Москва 2011
Составители к.т.н., доцент А.С.Топоркова, Т.И. Полятыкина
УДК 519.682
Разработка и отладка программ на языке Турбо-Пролог: Методические указания к лабораторным работам по дисциплине «Языки программирования задач искусственного интеллекта»/ Московский государственный институт электроники и математики.
Составители к.т.н., доцент А.С.Топоркова, Т.И. Полятыкина. М., 2011. 50с.
Основным содержанием указаний является ознакомление с принципами разработки и отладки программ в системе Турбо-Пролог.
Для студентов IV курса специализации «Автоматизация и интеллектуализация процессов обработки информации и управления» специальности – «Автоматизированные системы обработки информации и управления».
SBN
Содержание
Введение | |||||
1. | Цели и задачи работы | ||||
2. | Общие сведения о системе Турбо-Пролога | ||||
2.1. | Основной экран системы Турбо-Пролог | ||||
2.2. | Отладка и трассировка программы | ||||
3. | Описание задачи на Турбо-Прологе | ||||
3.1. | Основные понятия Турбо-Пролога | ||||
3.2. | Факты | ||||
3.3. | Целевые запросы | ||||
3.4. | Правила | ||||
3.5. | Термы | ||||
4. | Общая схема выполнения программы на языке Турбо-Пролог | ||||
4.1. | Структура программы на языке Турбо-Пролог | ||||
4.2. | Раздел описания констант | ||||
4.3. | Раздел описания областей определения | ||||
4.4. | Раздел описания предикатов внутренней базы данных | ||||
4.5. | Раздел описания предикатов | ||||
4.6. | Раздел описания предложений | ||||
4.7. | Раздел описания целевого запроса | ||||
4.8. | Предикаты ввода-вывода | ||||
4.9 | Некоторые стандартные функции и предикаты | ||||
5. | Управление выполнением программы | ||||
5.1. | Понятие бектрекинг | ||||
5.2. | Выбор среди альтернатив | ||||
5.3. | Использование предиката fail | ||||
5.4. | Создание бесконечных альтернатив при помощи предиката repeat | ||||
5.5. | Предикат not | ||||
6. | Рекурсия | ||||
7. | Отсечение | ||||
8. | Списки | ||||
9. | Строки, символы и символические имена | ||||
10. | Структуры | ||||
11. | Файлы | ||||
12. | Базы данных | ||||
Задачи для лабораторных работ по дисциплине ЯПЗИИ | |||||
Библиографический список | |||||
Введение
В последние годы возрос интерес к работам по искусственному интеллекту, особенно к практическому воплощению результатов этих работ в экспертных системах. Большую популярность в этом направлении приобрел язык логического программирования Пролог, основанный на самой старой модели представления знаний – исчислении предикатов первого порядка. Само название Пролог (PROgramming in LOGic) есть сокращение, означающее программирование на языке логики.
Начало истории языка относится к 1970-м годам. Будучи декларативным языком программирования, Пролог воспринимает в качестве программы некоторое описание задачи или базы знаний и сам производит логический вывод, а также поиск решения задач, пользуясь механизмом поиска с возвратом и унификацией.
Основными понятиями в языке Пролог являются факты, правила логического вывода и запросы, позволяющие описывать базы знаний, процедуры логического вывода и принятия решений.
Факты в языке Пролог описываются логическими предикатами с конкретными значениями. Правила в Прологе записываются в форме правил логического вывода с логическими заключениями и списком логических условий.
Особую роль в интерпретаторе Пролога играют конкретные запросы к базам знаний, на которые система логического программирования генерирует ответы «истина» и «ложь». Для обобщённых запросов с переменными в качестве аргументов Пролог выводит конкретные данные в подтверждение истинности обобщённых сведений и правил вывода.
Факты в базах знаний на языке Пролог представляют конкретные сведения (знания). Обобщённые сведения и знания в языке Пролог задаются правилами логического вывода (определениями) и наборами таких правил вывода (определений) над конкретными фактами и обобщёнными сведениями.
В настоящее время существует большое количество версий языка Пролог: Turbo Prolog, Visual Prolog, GNU Prolog, Quintus, SICStus, SWI-Prolog, YAP.