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

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

КнАГУ

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