Центр дистанционного обучения КнАГУ

Distance Education Center of KnASU

Логическое программирование

Аннотация

Логическое программирование, так же как и родственное ему направление – функциональное программирование, радикально отклоняется от основного пути развития языков программирования. Логическое программирование базируется на убеждении, что не человека следует обучать мышлению в терминах операций компьютера, а компьютер должен выполнять инструкции, свойственные человеку.

О курсе

Курс посвящен

Дисциплина «Логическое  программирование» необходима для формирования у студентов общекультурных и профессиональных компетенций, знаний, умений и навыков владения современными методами разработки и программной реализации моделей для трудноформализуемых и неформализуемых задач.

 

Цели курса

формирование у будущих бакалавров практических навыков разработки и программной реализации логических моделей для решения конкретных прикладных задач.

Результаты обучения

Знания, умения и навыки, полученные студентом в процессе изучения курса «Логическое программирование», в том числе необходимы в дальнейшем для изучения в курсах «Теория вычислительных процессов», «Системы искусственного интеллекта», «Нейрокомпьютерные системы».

Формат курса

Состав курса

Каждый раздел курса: – содержит теоретико-познавательный модуль, обеспеченный логически законченной частью учебной информации; – имеет тренингово-практический модуль (лабораторные, задачи и т.п.); – заканчивается контрольным модулем. В каждом разделе (за исключением редких, чисто описательных) четко сформулированы цель и постановка задачи, а также конфликтность ситуации, суть возникших проблем (зачем это нужно? почему это не было сделано ранее на основе старого аппарата?) и механизм разрешения этой конфликтности. Разделы курса выстроены в логическую цепочку по принципу «от простого – к сложному». Структура модулей каждого раздела соответствует иерархической структуре «абстрактное - конкретное».

Расписание курса

Модуль: Введение в логическое программирование.

Сравнительная характеристика методов структурного, функционального и логического программирования

Введение в ЛП (Видеолекция)
Введение (Домашнее задание)
Цифровой гражданин (Рубежный тест)
Опорный конспект 1 (Домашнее задание)
Знакомство с Visual Prolog (Лабораторная работа)

Модуль: Основные структуры, методы и приемы программирования на языке Пролог.

Общие сведения о логическом программировании. Основные структуры языка Пролог.

Краткий конспект (Домашнее задание)
Опорный конспект 2 (Домашнее задание)

Секционированность программ. Основные секции

Структуры языка и секционированность программ (Видеолекция)
Краткий конспект (Домашнее задание)
Секционированность программ (Лабораторная работа)

Основные способы создания оконного интерфейса. Основы дизайна программного обеспечения

Основы дизайна ПО (Традиционная лекция)

Составные объекты. Списки. Бинарные деревья. Операции со списками и бинарными деревьями.

Списки и бинарные деревья (Видеолекция)
Краткий конспект (Домашнее задание)
Списки (Домашнее задание)
Списки и бинарные деревья (Лабораторная работа)
Примеры и консультация (Дополнительный материал)

Рекурсивная обработка данных. Восходящая и нисходящая рекурсии

Рекурсия (Традиционная лекция)
Рекурсия. Краткий конспект (Домашнее задание)
Мини-тест (Рубежный тест)

Отсечение: красные и зеленые отсечения. Отрицание.

Краткий конспект (Домашнее задание)

Металогические и внелогические предикаты. Циклы, виды циклов.

Циклы (Традиционная лекция)
Опорный конспект (Домашнее задание)
Циклы (Лабораторная работа)

Модуль: Модели и методы решения трудно формализуемых задач.

Элементарные экспертные системы

Краткий конспект (Домашнее задание)
Элементарные экспертные системы (Лабораторная работа)

Графы, деревья, поиск пути на графе пространства состояний

"Слепые методы" поиска решений на графе пространства состояний (Расчетно-графическая работа)

Модуль: Итоговая аттестация.

Фонд оценочных средств

Материалы для подготовки к тестированию (Дополнительный материал)
Итоговая работа (Контрольная работа)

Модуль: Дополнительный материал.

Контрольная работа

Все о логическом программировании (Контрольная работа)

Дополнительные материалы

Visual Prolog (Portable) - без помощи (Дополнительный материал)
Курс на будущее (Дополнительный материал)
Пособия (Дополнительный материал)
Электронный обучающий курс (Дополнительный материал)

Информационные ресурсы

           Основная литература

    1. Рублев В.С. Языки логического программирования [Электронный ресурс] / В.С. Рублев. - 2-е изд. - Электрон. текстовые данные. - М. : Интернет-Университет Информационных Технологий (ИНТУИТ), 2016. - 125 c. - 2227-8397. - Режим доступа: http://www.iprbookshop.ru/73741.html
    2. Ефимова Е.А. Основы программирования на языке Visual Prolog [Электронный ресурс] / Е.А. Ефимова. - 3-е изд. - Электрон. текстовые данные. - М. : Интернет-Университет Информационных Технологий (ИНТУИТ), Ай Пи Эр Медиа, 2019. - 265 c. - 978-5-4486-0517-8. - Режим доступа: http://www.iprbookshop.ru/79710.html
    3. Теория и практика логического программирования на языке Visual Prolog 7: Учебное пособие для вузов / Цуканова Н.И., Дмитриева Т.А. - М.: Гор. линия-Телеком, 2013. - 232 с.: 60x90 1/16. - (Учебное пособие для высших учебных заведений) ISBN 978-5-9912-0194-0 - Режим доступа: http://znanium.com/catalog/product/414543
    4. Козырева Г.Ф. Функциональное и логическое программирование [Электронный ресурс]: учебно-методическое пособие / Г.Ф. Козырева. - Электрон. текстовые данные. - Саратов: Ай Пи Эр Медиа, 2018. - 120 c. - 978-5-4486-0122-4. - Режим доступа: http://www.iprbookshop.ru/71596.html

    Дополнительная литература

    1. Кузнецов, А. С. Теория вычислительных процессов [Электронный ресурс] /Кузнецов А.С., Царев Р.Ю., Князьков А.Н. - Краснояр. : СФУ, 2015. - 184 с. // ZNANIUM.COM : электронно-библиотечная система. - Режим доступа: http://znanium.com/catalog.php, ограниченный. - Загл. с экрана.
    2. Ездаков, А.Л. Функциональное и логическое программирование: Учебное пособие / А. Л. Ездаков. - 2-е изд. - М.: Интернет-Университет Информационных Технологий; Бином. Лаборатория знаний, 2016. - 120с.
    3. Новиков П.В. Логическое программирование [Электронный ресурс]: учебно-методическое пособие к лабораторным работам / П.В. Новиков. - Электрон. текстовые данные. - Саратов: Вузовское образование, 2017. - 103 c. - 978-5-4487-0010-1. - Режим доступа: http://www.iprbookshop.ru/66314.html

Дополнительный инструментарий

  • Среда разработки Visual Prolog 5.2 (ссылка для свободного скачивания http://www.softslot.com/software-2136-visual-prolog-windows.html либо Visual Prolog 5.2 Portable (дополнительные материалы курса);
  • Операционная система Microsoft® Windows Professional 7 Russian и выше
  • Текстовый редактор OpenOffice (ссылка для свободного скачивания (https://www.openoffice.org/ru/download/index.html);
  • браузер Google Chrome или Internet Explorer.

Оценивание и документы

Правила Формирования оценки

 

Наименование оценочного средства

Шкала оценивания

 1

Лабораторная работа (5 работ)

10 баллов

 2

Опорный конспект (2 конспекта)

5 баллов

 3

Краткий конспект лекции (8 конспектов)

2 балла

 4

Мини-тест

4 балла

 5

Контрольная работа

50 баллов

 6

Расчетно-графическая работа

20 баллов

Система оценивания

Максимальное количество баллов за курс - 180. Студент должен предоставить ВСЕ работы, необходимые при изучении курса.

0 – 50 % от максимально возможной суммы баллов – «неудовлетворительно»

51 – 64 % от максимально возможной суммы баллов – «удовлетворительно»

65 – 80 % от максимально возможной суммы баллов – «хорошо»

81 – 100 % от максимально возможной суммы баллов – «отлично»



Занятий 33

Часов 180

Недель 16

ЧАСОВ В НЕДЕЛЮ 4

КнАГУ

КОМСОМОЛЬСКИЙ-НА-АМУРЕ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ