Форма отчетности: зачет - Армавирский государственный

advertisement
Министерство образования и науки Российской Федерации
Федеральное государственное бюджетное образовательное учреждение
высшего профессионального образования
«Армавирская государственная педагогическая академия»
Институт прикладной информатики, математики и физики
Факультет прикладной информатики и информационных технологий
Кафедра информатики и информационных технологий обучения
Утверждено на заседании кафедры
Протокол №_____ от ”_____”_______________2012г.
Зав. кафедрой___________________
УЧЕБНО-МЕТОДИЧЕСКИЙ КОМПЛЕКС
по дисциплине по выбору
«ВВЕДЕНИЕ В ЛОГИЧЕСКОЕ ПРОГРАММИРОВАНИЕ»
для специальности
ИНФОРМАТИКА И ВЫЧИСЛИТЕЛЬНАЯ ТЕХНИКА
3 курс.
Форма отчетности: зачет
Составитель: Козырева Г.Ф.
Армавир, 2012
1. ПОЯСНИТЕЛЬНАЯ ЗАПИСКА.
Курс “Введение в логическое программирование” предназначен для ознакомления студентов с технологией логического программирования Основная задача курса заключается в
том, чтобы дать студентам представления о возможностях декларативных языков программирования, ознакомить студентов с методами программирования на этом языке, показать
спектр задач, решаемых с помощью этих языков.
Теоретическая часть курса включает в себя рассмотрение ПРОЛОГа на концептуальном уровне; изучение основных понятий, особенностей представления данных, наиболее типичных для декларативных языков программирования; задач и методов их решения. Практическая часть предполагает реализацию полученных знаний в виде программ на ЭВМ.
В результате изучения курса “ Введение в логическое программирование ” будущий
специалист должен иметь четкие представления о ПРОЛОГе как о языке, используемом для
решения задач в области экономики. Студенты должны уметь средствами ПРОЛОГа решать
простейшие задачи создания динамических баз данных, поиска информации в базе знаний.
Курс “ Введение в логическое программирование ” должен расширить представления будущего информатика-экономиста о возможностях вычислительной техники, сферах ее применения, показать наиболее перспективные направления развития информатизации общества.
Содержание курса “ Введение в логическое программирование ” составляет лекционный курс и лабораторные занятия. Лекционный курс позволяет изложить необходимый материал и создает теоретическую основу для практической отработки приемов решения задач. Лабораторные занятия проводятся по подгруппам и предусматривают реализацию полученных студентами заданий в виде программ на ЭВМ. Задания для лабораторных занятий
имеют проблемный характер, наиболее типичный для задач, решаемых методами и средствами декларативного программирования.
В результате изучения курса «Введение в логическое программирование» студент должен иметь представление:

о множестве задач, решаемых с применением декларативного программирования и о методах их решения с использованием языков логического;

о месте и роли, о состоянии развития современных декларативных языков, о
проблемах и направлениях развития декларативного программирования;
2

о вопросах представления данных для решения задач логического программирования, о приемах разработки программ с применением декларативных языков
программирования.
Студент должен знать:

базовые понятия и определения, используемые в логическом программировании;

методы и уровни представления данных, способы обработки и хранения данных;

основы технологии программирования в программных средствах, используемых
в современных декларативных языках.
Студент должен уметь:

разрабатывать и тестировать программы с применением программных средств,
используемых в современных декларативных языках;

использовать специальную литературу в изучаемой предметной области.
3
2. ТЕМАТИЧЕСКИЙ ПЛАН УЧЕБНОЙ ДИСЦИПЛИНЫ.
№
Всего
Раздел, тема
часов
В т.ч. аудиторных,час
Всего
Из них
Самост.
работа,
аудит.
Лекции
Лаб. работы
час
1
2
3
4
5
6
1
Представление о логическом
программировании
Среда программирования
Visual Prolog.
Основы языка ПРОЛОГ
Предложения: факты и
правила. Запросы
Переменные в ПРОЛОГе
Объекты и типы данных в
ПРОЛОГе. Структура программы на ПРОЛОГе.
Поиск с возвратом. Управление поиском с возвратом:
предикаты fail и отсечения
Арифметические вычисления.
Рекурсия. Достоинства и
недостатки рекурсии.
Списки. Операции со списками.
Итого:
8
4
2
2
4
8
4
2
2
4
8
4
2
2
4
10
4
2
2
6
10
4
2
2
6
10
4
2
2
6
12
6
4
2
6
66
30
16
14
36
2
3
4
5
6
7
4
3. СОДЕРЖАНИЕ УЧЕБНОЙ ДИСЦИПЛИНЫ.
3.1. Содержание лекций.
1.
Тема: Представление о логическом программировании. Среда программирования Visual
Prolog.
Содержание:
1. Процедурные и декларативные языки программирования. Назначение декларативных языков, их особенности.
2. Использование ПРОЛОГа для решения задач, связанных с проблемами искусственного
интеллекта.
3. Фундаментальные свойства ПРОЛОГа.
4. Предикаты как отношения между объектами. Структура предикатов.
5.Среда программирования Visual Prolog: возможности, структура.
2, 3.
Тема: Основы языка ПРОЛОГ. Предложения: факты и правила. Запросы.
Содержание:
1.Представление данных при помощи фактов. Факты унарные, бинарные, n-нарные. Примеры записи фактов.
2. Предложения-правила в ПРОЛОГе. Структура правила. База знаний в ПРОЛОГе. Примеры
записи правил.
3.Цели программы, их назначение. Цели простые и составные. Конъюнкция и дизъюнкция
целей. Запросы с константами и запросы с переменными. Примеры запросов.
4.
Тема: Объекты данных. Структура программы ПРОЛОГа.
Содержание:
1.Классификация объектов данных: атомы и числа, переменные, структуры.
2. Стандартные типы данных.
3. Разделы программы: domains, database, predicates, goal, clauses.
4. Описание доменов и предикатов.
5.Примеры.
5.
Тема: Поиск с возвратом. Управление поиском
Содержание:
1.Основные принципы поиска с возвратом в ПРОЛОГе. Сопоставление и унификация
2.Управление поиском с возвратом: предикаты fail и отсечения
3.Примеры.
6.
Тема: Арифметика в ПРОЛОГе.
Содержание:
1. Математические операции и функции в Прологе.
2. Запись математических выражений. Примеры.
5
Лекция № 7. Рекурсия.
1. Рекурсия, ее достоинства и недостатки.
2. Методы организации рекурсии.
3. Примеры решения задач.
Лекция № 7, 8.
Тема: Списки.
Содержание:
1. Понятие списка в ПРОЛОГе. Представление списков. Структура списка.
2. Стандартные задачи обработки списков: генерирование списка, объединение списков,
определение длины списка, удаление и вставка элемента в список.
3.Примеры.
3.2. Содержание лабораторных работ.
Лабораторная работа № 1.
Тема: Среда программирования Visual Prolog. Факты и правила. Запросы.
1. Структура среды.
2. Работа с окнами.
3. Открытие и сохранение файлов.
4. Запуск программ на исполнение в режиме Test Goal.
5. Отработка практических навыков по формулировке целей. Запись простых и составных
целей.
6. Отработка практических навыков по набору и редактированию простейших программ.
7. Решение задач на построение новых правил.
8. Составление простейших программ.
9. Реализация программы на ПЭВМ.
10. Защита и анализ выполненных заданий.
1.
2.
3.
4.
Лабораторная работа № 2.
Тема: Структура программы в ПРОЛОГе.
Создание простейших проектов.
Отработка практических навыков по набору и редактированию простейших программ.
Реализация программы на ПЭВМ.
Защита и анализ выполненных заданий.
Лабораторная работа № 3.
Тема: Поиск с возвратом
1. Изучение механизм поиска с возвратом на примере программы.
2. Реализация программы на ПЭВМ.
3. Трассировка программы в среде Visual Prolog.
4. Построение целевого дерева поиска решения.
5. Анализ выполненных заданий.
Лабораторная работа № 4.
Тема: Управление поиском с возвратом: предикат fail и отсечения
1. Примеры программ с повторяющимися действиями.
6
2. Примеры программ с отсечением.
3. Отработка практических навыков составления программ, содержащих повторяющиеся
действия.
4. Реализация программы на ПЭВМ.
Лабораторная работа № 5.
Тема: Арифметика в Прологе.
1. Примеры программ с арифметическими действиями.
2. Отработка практических навыков составления программ, содержащих арифметические
действия.
3. Реализация программы на ПЭВМ.
4. Анализ выполненных заданий.
Лабораторная работа № 6.
Тема: Рекурсия.
1. Примеры задач на рекурсию.
2. Решение задач методом простой рекурсии.
3. Решение задач методом обобщенного правила рекурсии.
Лабораторная работа № 7.
Тема: Работа со списками.
План.
1. Составление программ формирования списков.
2. Операции над списками: объединение списков, вставка элемента в список, удаление элемента из списка.
3. Реализация программ на ПЭВМ.
4. Анализ выполненных заданий.
3.4.Содержание и виды самостоятельной работы студентов
1) Проработка лекционного материала.
2) Работа с литературой:
a) к лекции № 1 [1], [6], [7];
b) к лекции № 2 [3], [5],[7], [8];
c) к лекции № 3 [1], [5], [7], [8];
d) к лекции № 4 [3], [5], [7], [8];
e) к лекции № 5 [3], [4], [7], [8];
f) к лекции № 6 [1], [3], [4], [5];
g) к лекции № 7 [1], [3], [4], [8];
h) к лекции № 8 [3], [5],[7], [8];
i) к лекции № 9 [1], [5], [7], [8];
3) Подготовка к лабораторным занятиям.
Изучить литературу:
a) к лаб. раб. № 1 [1], [3], [7];
b) к лаб. раб. № 2 [1], [2],[5], [8];
7
c)
d)
e)
f)
g)
h)
i)
j)
k)
l)
к лаб. раб. № 3 [3], [4], [5], [8];
к лаб. раб. № 4 [1], [4], [7], [8];
к лаб. раб. № 5 [1], [3], [7];
к лаб. раб. № 6 [1], [3], [4], [8].
к лаб. раб. № 7 [1], [3], [7];
к лаб. раб. № 8 [1], [2],[5], [8];
к лаб. раб. № 9 [3], [4], [5], [8];
к лаб. раб. № 10 [1], [4], [7], [8];
к лаб. раб. № 11 [1], [3], [7];
к лаб. раб. № 12 [1], [3], [4], [8].
8
4. РЕКОМЕНДАЦИИ ПО ОРГАНИЗАЦИИ
САМОСТОЯТЕЛЬНОЙ РАБОТЫ СТУДЕНТОВ
Самостоятельная работа студентов состоит в изучении рекомендуемой литературы,
проработке лекционного материала, выполнения предложенных заданий.
Особое значение имеет самостоятельная работа студентов в компьютерном классе, где
они должны получить прочные навыки реализации составленной программы на ЭВМ, умения по набору, редактированию и запуску программы. Одним из результатов самостоятельной работы за ЭВМ является развитие навыков по проведению анализа результатов выполнения программы, умения доказывать правильность составленного алгоритма.
Самостоятельная работа студентов должна быть направлена на формирование и углубление практических навыков работы с ЭВМ, на овладение приемами постановки и разработки основных этапов решения задачи. В течение семестра студенты должны изучить основные понятия и методы решения задач на ПРОЛОГе.
5.ТРЕБОВАНИЯ К ЗАЧЕТУ
Выполнение и защита всех лабораторных работ.
6. СПИСОК РЕКОМЕНДУЕМОЙ ДЛЯ ИЗУЧЕНИЯ ЛИТЕРАТУРЫ
6.1. Основная литература
1. Братко И. Программирование на языке ПРОЛОГ для искуственного интеллекта.- М.,
1990.
2.
3.
4.
5.
Ин Ц., Соломон Д. Использование Турбо-Пролога. -М., 1993.
Клоксин У., Меллиш К. Программирование на языке ПРОЛОГ. -М., 1991.
Макаллистер Дж. Искусственный интеллект и Пролог на микроЭВМ.- М., 1990.
Янсон А. Турбо-Пролог в сжатом изложении. -М.,1990.
6.2.Дополнительная литература
7. Бир Ст. Кибернетика и управление производством. - М., 1963.
8. Вейценбаум Дж. Возможности вычислительных машин и человеческий разум. От
суждений к вычислениям. М., 1982.
9. Гутенмахер Л.И. Электронные информационно-логические машины, - М., 1970.
10.
Кирсанов Б.С., Попов Э.В. Экспертные системы. Состояние и перспективы.-В
сб. “Экспертные системы”.-М., 1986.
11.
Попов Э.В. Экспертные системы. М., 1987.
12.
Рейтман В.Р. Разработка программ для решения интеллектуальных проблем.
“Зарубежная радиоэлектроника”, 1982, №1.
13.
Симонс Дж. ЭВМ пятого поколения: компьютеры 90-х годов. - М., 1985 г.
14.
Тимофеев А.В. Информатика и искусственный интеллект.- М.,1992.
9
Download