Программа дисциплины опд. В. 02., Сд. В логическое программирование для студентов специальности 230102 Автоматизированные системы обработки информации и управления
Вид материала | Программа дисциплины |
- Программа дисциплины опд. Ф. 10, Дн. Ф операционные системы для студентов специальности, 203.73kb.
- Программа дисциплины опд. Ф. 02., Дн. Ф. 01. Компьютерная графика для студентов специальности, 247.67kb.
- Программа дисциплины опд. Ф. 09. Организация ЭВМ и систем для студентов специальности, 243.54kb.
- Рабочая программа по дисциплине «Алгоритмические языки и программирование» Для специальности, 208.45kb.
- Программа дисциплины опд. Ф. 13., Опд. Ф. 11 Методы и средства защиты компьютерной, 333.08kb.
- Рабочая программа по дисциплине «Основы разработки Internet-приложений» для специальности, 51.53kb.
- Рабочая программа по дисциплине: Методы и средства защиты компьютерной информации Для, 75.18kb.
- Рабочая программа по дисциплине " Метрология, стандартизация и сертификация " для специальности, 284.04kb.
- Программа дисциплины опд. Р , дн. В. 2 Теория информационных процессов для студентов, 161.55kb.
- Рабочая программа по курсу "Моделирование систем" для специальности 230102 "Автоматизированные, 99.53kb.
Министерство образования и науки Российской Федерации
Федеральное агентство по образованию
ОБНИНСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ АТОМНОЙ ЭНЕРГЕТИКИ (ИАТЭ)
| УТВЕРЖДАЮ |
| Проректор по учебной работе ___________________ С.Б. Бурухин |
| «______»___________ 200__ г. |
ПРОГРАММА ДИСЦИПЛИНЫ
ОПД.В.02., СД.В.2. ЛОГИЧЕСКОЕ ПРОГРАММИРОВАНИЕ
для студентов специальности
230102 – Автоматизированные системы обработки информации и управления
направления 230100 – Информатика и вычислительная техника
ДС.08. ЛОГИЧЕСКОЕ ПРОГРАММИРОВАНИЕ
для студентов специальности
230201 – Информационные системы и технологии
направления 230200 – Информационные системы
Форма обучения: очная, заочная
Объем дисциплины и виды учебной работы в соответствии с учебными планами
Вид учебной работы | Всего часов 230100 (очное) | Семестры | Всего часов 230102 (очное) | Семестры | Всего часов 230201 (очное) | Семестры | Всего часов 230102 (заочн.) | Курс |
5 | 5 | 5 | 3 | |||||
Общая трудоемкость дисциплины | 104 | 104 | 90 | 90 | 136 | 136 | 90 | 90 |
Аудиторные занятия | 68 | 68 | 68 | 68 | 68 | 68 | 16 | 16 |
Лекции | 34 | 34 | 34 | 34 | 34 | 34 | 8 | 8 |
Практические занятия и семинары | – | – | – | – | – | – | – | – |
Лабораторные работы | 34 | 34 | 34 | 34 | 34 | 34 | 8 | 8 |
Курсовой проект (работа) | – | – | – | – | – | – | – | – |
Самостоятельная работа | 36 | 36 | 22 | 22 | 68 | 68 | 74 | 74 |
Расчетно-графические работы | – | – | – | – | – | – | – | – |
Вид итогового контроля (зачет, экзамен) | Экз. | Экз. | Экз. | Экз. | Экз. | Экз. | Экз. | Экз. |
Обнинск 2008
Программа составлена с соответствии с Государственными образовательными стандартами высшего профессионального образования по направлению подготовки
- дипломированного специалиста 654600 Информатика и вычислительная техника (№ 224 тех/дс от 27.03.2000),
- дипломированного специалиста 654700 Информационные системы (№ 276 тех/дс от 27.03.2000),
- бакалавров 552800 Информатика и вычислительная техника (№ 35 тех/бак от 13.03.2000).
Программу составил:
___________________ А.В. Васяшин, ст. преподаватель кафедры АСУ
Программа рассмотрена на заседании кафедры АСУ (протокол № 6-у от 25.01.2008 г.)
Заведующий кафедрой АСУ
___________________ А.Н. Анохин
«____»_____________ 200__ г.
СОГЛАСОВАНО
Начальник Учебно-методического управления ___________________ Ю.Д. Соколова | Декан факультета кибернетики ___________________ А.В. Антонов «____»_____________ 200__ г. |
| Декан факультета заочного отделения ___________________ А.А. Росляков «____»_____________ 200__ г. |
1. Цели и задачи дисциплины
Целью дисциплины является изучение студентами логического программирования как средства разработки интеллектуальных систем.
Основными задачами изучения дисциплины являются:
- знание основ логического программирования и сферы его применения;
- приемы программирования и организацию баз данных и знаний на языке ПРОЛОГ;
- умение использовать входящую и выходящую рекурсии как основной метод разработки предикатов ПРОЛОГА, организовывать исчерпывающий перебор вариантов, используя механизм поиска с возвратом;
- с помощью метода анализа состояний разрабатывать и тестировать ПРОЛОГ-программы; использовать интерпретатор Arity/Prolog версии 7.0.
2. Требования к уровню освоения содержания дисциплины
В результате изучения дисциплины студент должен
знать: основы логического программирования и сферы его применения, приемы программирования и методы организации баз данных и знаний средствами языка ПРОЛОГ, основные понятия логического и функционального программирования; методы разработки логических программ; декларативную и процедурную семантику ПРОЛОГА; этапы разработки предикатов и процедур; иметь представления об истории, целях и задачах исследований в области логического и функционального программирования; применении логического программирования при разработке прикладных систем искусственного интеллект; применения языка ПРОЛОГ в области обработки текстов на естественном языке; областях применения логического и функционального программирования;
уметь: использовать входящую и выходящую рекурсии как основной метод разработки предикатов ПРОЛОГА, организовывать исчерпывающий перебор вариантов, используя механизм поиска с возвратом; с помощью метода анализа состояний разрабатывать и тестировать ПРОЛОГ-программы; использовать интерпретатор Arity/Prolog версии 7.0;
иметь навыки: разработки программ средней сложности на языке ПРОЛОГ.
Входные дисциплины: Дискретная математика, Информатика, Информационные технологии, Организация ЭВМ (для студентов специальности 230102), Архитектура ЭВМ и систем (для студентов специальности 230201).
Выходные дисциплины по специальности 230102 – АСОИУ: Системы искусственного интеллекта, Теоретические основы автоматизированного управления, Проектирование АСОИУ, учебно-исследовательская работа, дипломное проектирование.
Выходные дисциплины по специальности 230201 – ИСТ: Интеллектуальные информационные системы, Представление знаний в информационных системах, Администрирование в информационных системах, Проектирование ИС, учебно-исследовательская работа, дипломное проектирование.
3. Содержание дисциплины
3.1. Лекции
Номер темы | Тема | Литература | Число часов (очное) | Число часов (заочн.) |
1 | Введение в логическое программирование | [1, гл. 1] | 4 | 1 |
2 | Списки и арифметика ПРОЛОГА | [1, гл. 3] | 6 | 3 |
3 | Использование структур | [1, гл. 4] | 4 | 3 |
4 | Интерпретатор ПРОЛОГА и основные приемы программирования | [1, гл. 5, 8] | 6 | 1 |
5 | Организация термов в базы данных | [3, гл. 2] | 4 | – |
6 | Интерфейсные возможности ПРОЛОГА | [1, гл. 6] | 4 | – |
7 | Обработка естественных языков | [1, гл. 21] | 6 | – |
1. Введение в логическое программирование. Назначение языка. ПРОЛОГ – язык искусственного интеллекта. Терминология ПРОЛОГА. Декларативная семантика ПРОЛОГА. Процедурная семантика ПРОЛОГА. Факты и работа с ними. Переменные ПРОЛОГА.
Унификация переменных. Простые типы данных и структуры. Правила.
2. Списки и арифметика ПРОЛОГА. Списки – специальный тип структур. Рекурсия основной метод обработки списков. Предикаты findall, setof, bagof и sort. Арифметические операции. Предикат is. Счетчики и предикаты работы с ними.
3. Использование структур. Структуры и деревья. Бинарные структуры. Основные приёмы обработки бинарных структур. Структуры произвольной арности и их обработка. Предикаты: functor, arg.
4. Интерпретатор ПРОЛОГА и основные приемы программирования. Поиск с возвратом (работа интерпретатора). Входящая рекурсия. Выходящая рекурсия. Вынуждаемый возврат. Организация циклов. Способы управления обработкой целей. Сокращение пространства поиска. Предикат «сократить». Определение операции в ПРОЛОГЕ. Метапрограммирование. Метод анализа состояний – метод разработки процедур.
5. Организация термов в базы данных. База данных. Ссылочные номера термов в базе данных. Предикаты: recordz, recorda, recorded, instance, erase, eraseall.
6. Интерфейсные возможности ПРОЛОГА. Предикаты работы с клавиатурой. Вывод на экран. Оконные функции. Менеджер оконного диалога и его основные компоненты.
Организация главного экрана программы и бар-меню. Предикаты работы с файлами.
7. Обработка естественных языков. Грамматики непосредственных составляющих. Формализация синтаксиса языка посредством продукций грамматики. DCG-расширение. Простейшая форма продукций. Продукции для построения дерева грамматического разбора. Организация контекстно-чувствительных правил.
3.2. Практические и семинарские занятия – не предусмотрены.
3.3. Лабораторный практикум
Раздел(ы) | Название лабораторной работы | Число часов (очное) | Число часов (заочн.) |
1 | Детерминированные предикаты для работы со списками. Освоение интерпретатора ПРОЛОГА | 6 | 2 |
2 | Недетерминированные процедуры работы со списками | 4 | 2 |
3 | Процедуры работы с бинарными структурами | 6 | 2 |
4 | Процедуры для работы со структурами произвольной арности | 6 | 2 |
5 | Работа с внутренней базой данных ПРОЛОГА | 6 | – |
1-6 | Решение комплексной итоговой задачи по курсу | 6 | – |
3.4. Курсовые проекты (работы) – не предусмотрены.
3.5. Формы текущего контроля
Раздел(ы) | Форма контроля | Неделя (очное) | Заочн. |
2-3 | Контрольная работа | 5 | – |
4-5 | Контрольная работа | 10 | – |
1-6 | Лабораторная работа №6 | 16 | – |
1-6 | Контрольная работа | – | + |
3.6. Самостоятельная работа
№ | Тема | Литература | Часов 230102 (очная) | Часов 230100 (очная) | Часов 230201 (очная) | Часов 230102 (заочн.) |
1 | Списки и арифметика ПРОЛОГА | [1, гл. 3] | 4 | 6 | 10 | 6 |
2 | Использование структур | [1, гл. 4] | 4 | 6 | 10 | 6 |
3 | Основные приемы программирования | [1, гл. 5, 8] | 2 | 4 | 8 | 8 |
4 | Освоение основных приёмов работы в интерпретаторе | [5 доп.] | 2 | 4 | 8 | 4 |
5 | Организация термов в базы данных | [5 доп.] | 4 | 6 | 12 | 20 |
6 | Интерфейсные возможности ПРОЛОГА | [5 доп.] | 2 | 4 | 8 | 20 |
7 | Обработка естественных языков | [3, гл. 5] | 4 | 6 | 12 | 12 |
Контроль самостоятельной работы студентов производится в ходе приёма лабораторных работ.
4.1. Рекомендуемая литература
4.1.1. Основная литература
1. Братко И. Алгоритмы искусственного интеллекта на языке PROLOG, 3-е изда-
ние: Пер. с англ. – М. : Издательский дом "Вильямс", 2004. – 640 с. (имеется электронный вариант)
2. Шрайнер П.А. Основы программирования на языке Пролог: курс лекций: учебное пособие / П.А. Шрайнер – М.: Интернет-Университет Информационных Технологий, 2005. – 176 с. (имеется электронный вариант)
3. Малпас Дж. Реляционный язык Пролог и его применение: Пер. с англ. / Под ред. В.Н. Соболева. – М: Наука, 1990. – 464 с. (4 экз., имеется электронный вариант)
4. Братко И. Программирование на языке Пролог для искусственного интеллекта: Пер. с англ. – М.: Мир, 1990. – 560 с. (12 экз., имеется электронный вариант)
5. Хоггер К. Введение в логическое программирование: Пер. с англ. – М.: Мир, 1988. – 348 с. (4 экз., имеется электронный вариант)
6. Стерлинг Л., Шапиро Э. Искусство программирования на языке Пролог: Пер. с англ. – М.: Мир, 1990. – 235 с. (24 экз., имеется электронный вариант)
4.1.2. Дополнительная литература
1. Стобо Д.Ж. Язык программирования Пролог: Пер. с англ. – М.: Радио и связь, 1993. – 368 с. (имеется электронный вариант)
2. Марселлус Д. Программирование экспертных систем на Турбо Прологе. – М.: Финансы и статистика, 1994. – 256 с. (2 экз)
3. Ковальски Р. Логика в решении проблем. – М.: Наука, 1990. – 280 с. (2 экз)
4. Метакидес Г., Нероуд А. Принципы логики и логическое программирование / Пер. с англ. под ред. к.ф.м.н В.А. Захарова и акад. В.А. Садовничего. – М.: Изд-во «Факториал», 1998. – 288 с. (имеется электронный вариант)
5. The Arity/Prolog compiler and interpreter. Version 6.1. Arity Corporation Damonmill Square Concord, Massachusetts 01742, 1992, Arity Corporation. – 444 с. (имеется электронный вариант)
4.2. Средства обеспечения освоения дисциплины
Программные комплексы Microsoft Windows (95,98,NT,2000), интерпретатор Arity Prolog.
5. Материально-техническое обеспечение дисциплины
Компьютерные классы сетевых технологий, ЛВС, серверы Internet.