Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
230100.62-01 Информатика и вычислительная техни...doc
Скачиваний:
7
Добавлен:
12.09.2019
Размер:
753.66 Кб
Скачать

«Функциональное и логическое программирование»

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

Задачи дисциплины: развитие современного профессионального мировоззрения и знакомство с нестандартными подходами к решению задач на компьютерах. Получение навыков построения моделей на основе функциональной парадигмы.

В результате изучения дисциплины студенты должны:

знать: особенности и роль функционального программирования как методологий решения задач искусственного интеллекта; тенденции и перспективы развития инструментальных средств функционального программирования, общие сведения о языке логического программирования; основные элементы языка и приемы программирования; согласование целевых утверждений; арифметику в языке логического программирования;

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

владеть: навыками практического программирования конкретных задач с использованием языка логического программирования Пролог и функционального программирования Лисп.

Содержание дисциплины:

Основы функциональной парадигмы

Основные понятия функционального программирования. Лямда-исчисление А.Черча. Рекурсивные функции. Языки функционального программирования.

Язык программирования Лисп

Основы языка Лисп. Символы, константы, атомы, логические значения. Списки и способы их записи. Базовые функции языка Лисп.

Определение функции в программе. Лямбда-выражения. Передача параметров в Лиспе. Область действия параметров.

Простая рекурсия. Работа со списками. Отображающие функционалы.

Современный этап развития функционального программирования

Основы логической парадигмы.

Основы языка программирования Пролог.

Современный этап развития логического программирования.

Аннотация примерной программы дисциплины

«Структуры и алгоритмы компьютерной обработки данных»

Цель дисциплины: Расширение и углубление знаний и умений в области создания и использования эффективных структур данных и алгоритмов в прикладных задачах, теоретических и экспериментальных оценок эффективности алгоритмов.

В результате изучения дисциплины студенты должны:

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

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

Владеть: навыками практического программирования конкретных задач в определенной языковой среде.

Содержание дисциплины:

Абстрактный тип данных: спецификация, представление, реализация; линейные структуры данных: стек, очередь, дек; нелинейные структуры данных: иерархические списки, деревья и леса, бинарные деревья; обходы деревьев; задачи поиска и кодирования (сжатия) данных, кодовые деревья, оптимальные префиксные коды; исчерпывающий поиск: перебор с возвратом, метод ветвей и границ, динамическое программирование; быстрый поиск: бинарный поиск, хеширование; использование деревьев в задачах поиска: бинарные деревья поиска, случайные, оптимальные, сбалансированные по высоте (АВЛ) и рандомизированные деревья поиска; задачи сортировки; внутренняя и внешняя сортировки; алгоритмы сортировки; оптимальная сортировка; порядковые статистики; анализ сложности и эффективности алгоритмов поиска и сортировки; файлы: организация и обработка, представление деревьями: B-деревья; алгоритмы на графах: представления графов, схемы поиска в глубину и ширину, минимальное остовное дерево, кратчайшие пути; теория сложности алгоритмов: NP-сложные и труднорешаемые задачи.

Аннотация примерной программы дисциплины

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]