Негосударственное образовательное учреждение высшего профессионального образования «МОСКОВСКИЙ ПСИХОЛОГО-СОЦИАЛЬНЫЙ УНИВЕРСИТЕТ» ФАКУЛЬТЕТ ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ УТВЕРЖДАЮ Проректор по учебной работе _________________С.Г. Дембицкий "_____"__________________20___ г. РАБОЧАЯ ПРОГРАММА ДИСЦИПЛИНЫ ТЕОРИЯ АЛГОРИТМОВ Направление подготовки 230700 – ПРИКЛАДНАЯ ИНФОРМАТИКА Профиль подготовки Прикладная информатика (в экономике) Квалификация (степень) выпускника Бакалавр Форма обучения очная, заочная Рекомендовано Ученым советом НОУ ВПО «МПСУ» (протокол № ___ от 20__г.) Одобрено кафедрой (протокол № информатики и математики от 20 г.) Зав.кафедрой _______________________________ Москва 2012 Рабочая программа предназначена для бакалавров кафедр Информатики и математики и Информационных технологий очной и заочной формы обучения факультета информационных технологий МПСУ, обучающихся по направлению подготовки 230700 – Прикладная информатика. Программа включает в себя цели освоения дисциплины, место дисциплины в структуре ООП бакалавриата, компетенции обучающегося, формируемые в результате освоения дисциплины, структуру и содержание дисциплины, образовательные технологии, применяемые при изучении дисциплины, учебно-методическое и информационное обеспечение дисциплины, включающее в себя основную и дополнительную литературу, рекомендованную для изучения материалов учебного курса, кроме этого, приводятся базы данных, информационно-справочные и поисковые системы, помогающие обучаемым освоить учебный материал. Рабочая программа будет полезна как студентам, так и преподавателям, проводящим занятия по дисциплинам базового и специального циклов. Программа разработана к.п.н., профессором Лейбовским М.А. Рецензент – к.т.н., доцент Голованов Д.В. 1. Цели освоения дисциплины Теория алгоритмов Цели освоения дисциплины Теория алгоритмов – Воспитать у студентов культуру логических рассуждений, привить навыки работы со сложными логическими конструкциями, научить анализировать алгоритмы поиска оптимальных решений, научить использовать методы математической логики и теории алгоритмов в практической деятельности. 2.Место дисциплины (модуля) в структуре ООП бакалавриата Перечень дисциплин, усвоение которых необходимо для изучения курса: для изучения дисциплины «Теория алгоритмов» студент должен знать математику в пределах программы средней школы и первого семестра. Дисциплина (модуль) Теория алгоритмов входит в Математический и естественнонаучный цикл дисциплин, Вариативную составляющую Базовой части учебного плана. Дисциплина необходима для последующего изучения таких дисциплин, как Теория экономических информационных систем Основы экономической кибернетики Мат. методы в исследовании экономики Методы принятия решений Автоматизированный бух учет и финансовая отчетность 3 Компетенции обучающегося, формируемые в результате освоения дисциплины Теория алгоритмов Процесс изучения дисциплины направлен на формирование следующих компетенций или их составляющих: ОК-2: способен логически верно, аргументировано и ясно строить устную и письменную речь, владеть навыками ведения дискуссии и полемики; ОК-5: способен самостоятельно приобретать и использовать в практической деятельности новые знания и умения, стремится к саморазвитию; ОК-6: способен осознавать социальную значимость своей будущей профессии, обладать высокой мотивацией к выполнению профессиональной деятельности; ОК-8: способен работать с информацией в глобальных компьютерных сетях; ПК-3: способен использовать основные законы естественнонаучных дисциплин в профессиональной деятельности и эксплуатировать современное электронное оборудование и информационно-коммуникационные технологии в соответствии с целями образовательной программы бакалавра; ПК-4: способен ставить и решать прикладные задачи с использованием современных информационно-коммуникационных технологий; ПК-22: способен готовить обзоры научной литературы и электронных информационнообразовательных ресурсов для профессиональной деятельности. В результате освоения дисциплины обучающийся должен: - знать: основные понятия алгебры множеств; основные понятия логики предикатов; основные понятия отображений и отношений на множествах; основные понятия логики высказываний; основные понятия в теории алгоритмов; основные понятия теории моделей; основные понятия комбинаторики; основные понятия неклассических логик; основные принципы построения машины Тьюринга; основные понятия о производительности и вычислительной сложности алгоритмов. уметь: определять множества различными способами; строить диаграммы Эйлера-Венна; определять тип отношения на множествах и его свойства; составлять таблицы истинности для различных логических операций; упрощать логические формулы; анализировать систему булевых функций на полноту и независимость; находить множество истинности предикатов; применять язык логики предикатов при записи математических предложений, в том числе при решении задач; доказывать рекурсивность функции; использовать оптимизационные алгоритмы при поиске решения; применять алгоритмы распознавания общезначимости формул в частных случаях; строить машину Тьюринга для различных задач; определять вычислительную сложность алгоритма; оптимизировать алгоритмы работы машины Тьюринга; - иметь представление: о группах, полугруппах, моноидах, кольцах и полях основных формулах комбинаторики многозначных логиках неклассических логиках; алгоритмах Маркова. Основными видами занятий являются лекции, практические занятия. Лекционные занятия служат для изложения содержания тем программы с учетом квалификационных требований. Практические задачи служат для закрепления теоретических основ, излагаемых в лекциях, получение практических навыков решения физических задач, проведения адекватного физического и математического моделирования, физических измерений и обработки экспериментальных данных. Основными видами промежуточного контроля является опрос, защита практических работ, выполняемых в компьютерных классах. Основным видом рубежного контроля знаний является экзамен. 4. Структура и содержание дисциплины (модуля) Теория алгоритмов. Общая трудоемкость дисциплины составляет 3 зачетные единицы, 108 часов, изучается в течение одного семестра по очной и заочной форме обучения. Очная форма обучения (срок обучения 4 года) Виды учебной работы, включая самостоятельную работу студентов и трудоемкость (в часах) С № п/п Разделы и темы дисциплины ем ес тр В С Из них аудиторные занятия С а К о К у Формы текущего контроля успеваемости Форма Е Г О Л е к ц и и Ла бо ра то р. пр ак ти ку м П р а к т и ч е с к .з а н я т и я / с е м и н а р ы И н т е р а к т и в м о с т о я т е л ь н а я р а б о т а н т р о л ь н а я р а б о т а р с о в а я промежуточной аттестации (по семестрам) р а б о т а 1 Тема 1. Элементы математической логики. 1 12 2 2 8 Результаты опроса, защиты практических работ 2 Тема 2. Алгебра логики. 1 12 2 2 8 Результаты опроса, защиты практических работ 1 12 2 2 8 Результаты опроса, защиты практических работ 1 12 2 2 8 Результаты опроса, защиты практических работ 1 12 2 2 8 Результаты опроса, защиты практических работ 1 12 2 2 8 Результаты опроса, защиты практических работ 3 4 5 6 Тема 3. Элементы комбинаторного анализа. Тема 4. Множества и отображения. Тема 5. Логика предикатов и логика первого порядка. Тема 6. Элементы теории кодирования 7 Тема 7. Коды Хемминга 1 12 2 2 8 Результаты опроса, защиты практических работ 8 Тема 8. Элементы теории автоматов 1 12 2 2 8 Результаты опроса, защиты практических работ 1 12 2 2 8 Результаты опроса, защиты практических работ 108 18 18 72 Экзамен 9 Тема 9. Элементы теории алгоритмов ИТОГО Заочная форма обучения (срок обучения 5 лет) Виды учебной работы, включая самостоятельную работу студентов и трудоемкость (в часах) С № п/п Разделы и темы дисциплины ем ес тр В С Е Г О Л е к ц и и Из них аудиторные занятия П р а к т и ч е с Ла И к бо н . ра т з то е а р. р н пр а я ак к т ти т и ку и я м в / с е м и н а р ы С а м ос то ят ел ь на я ра бо та К о н т р о л ь н а я р а б о т а К у р с о в а я р а б о т а Формы текущего контроля успеваемости Форма промежуточной аттестации (по семестрам) 1 Тема 1. Элементы математической логики. 3 12 0,5 - 11,5 Результаты опроса, защиты практических работ 2 Тема 2. Алгебра логики. 3 12 0,5 - 11,5 Результаты опроса, защиты практических работ 3 12 0,5 1 10,5 Результаты опроса, защиты практических работ 3 12 0,5 - 11,5 Результаты опроса, защиты практических работ 3 12 0,5 - 11,5 Результаты опроса, защиты практических работ 3 12 0,5 - 11,5 Результаты опроса, защиты практических работ 3 12 0,5 - 11,5 Результаты опроса, защиты практических работ 3 4 5 6 7 Тема 3. Элементы комбинаторного анализа. Тема 4. Множества и отображения. Тема 5. Логика предикатов и логика первого порядка. Тема 6. Элементы теории кодирования Тема 7. Коды Хемминга 8 9 Тема 8. Элементы теории автоматов Тема 9. Элементы теории алгоритмов ИТОГО 3 12 0,5 - 11,5 Результаты опроса, защиты практических работ 3 12 - 1 11 Результаты опроса, защиты практических работ 108 4 2 102 Экзамен 5. Образовательные технологии Лекционные занятия проводятся с использованием педагогической технологии продукционного обучения. Используя проектор на большой экран и (или) интерактивную доску, преподаватель демонстрирует студентам вид экрана своего компьютера и выполняет операции по решению задачи изучаемой темы, объясняя суть выполняемой работы. Наблюдая за действиями преподавателя, студент повторяет их, самостоятельно решая задачу изучаемой темы. В результате студент приобретает не только знания, но и практические навыки по решению задач на компьютере. Альтернативным вариантом проведения лекционного занятия является демонстрация слайдов лекционного материала с подробным объяснением излагаемого учебного материала. Это занимает примерно половину лекционного занятия. Затем студентам предлагается воспроизвести на своих компьютерах решение тех задач, которые перед этим объяснял преподаватель. При этом преподаватель оказывает индивидуальную помощь тем студентами, у которых возникают затруднения при выполнении задания. Содержание дисциплины Тема 1. Элементы математической логики. Составные высказывания. Простейшие связки. Другие связки. Логические отношения. Варианты импликации. Основные законы, определяющие свойства введенных логических операций. Тема 2. Алгебра логики. Булевы функции. Свойства элементарных булевых функций. Дизъюнктивные и конъюнктивные нормальные формы алгебры высказываний. Совершенная дизъюнктивная и совершенно конъюнктивная нормальные формы. Многочлены Жегалкина. Проблемы разрешимости. Некоторые приложения алгебры логики. Тема 3. Элементы комбинаторного анализа. Основные правила комбинаторики. Перечислительная комбинаторика или теория перечислений. Комбинации элементов с повторениями. Бином Ньютона. Тема 4. Множества и отображения. Понятие множества. Способы задания множеств. Подмножества. Операции над множествами. Соотношение между множествами и составными высказываниями. Соотношение между высказываниями и соответствующими им множествами истинности. Абстрактные законы операций над множествами. Корженси и декартово произведение множеств. Бинарные отноешния. Отображение множеств. Функции. Тема 5. Логика предикатов и логика первого порядка. Предикаты. Применение предикатов в алгебре. Булева алгебра предикатов. Кванторы. Формулы логики предикатов. Приведенные и нормальные формы в логике предикатов. Исчисление предикатов. Тема 6. Элементы теории кодирования Кодирование как способ представления информации. Помехоустойчивое кодирование. Канал связи. Криптология. Алфавитное кодирование. Математическое изучение алфавитного кодирования. Проблема взаимодействия однозначности алгоритмического кодирования. Общий критерий взаимной однозначности. Тема 7. Коды Хемминга Двоичный алфавит. Самокорректирующие коды. Коды Хемминга. Алгоритм построения кода Хемминга. Обнаружение ошибки в кодах Хемминга. Декодирование(получение исходного сообщения). Тема 8. Элементы теории автоматов Понятие конечного автомата. Определение конечного автомата. Способы задания конечного автомата. Примеры конечных автоматов. Каноническое уравнение автомата. Тема 9. Элементы теории алгоритмов Вычислимые функции и алгоритмы. Теория рекурсивных функций. Характерные черты алгоритма. Вычислимые, частично-рекурсивные и общерекурсивные функции. Примитивная рекурсия. Определение минимизации. Примитивная рекурсия некоторых арифметических функций. Словарные множества и функции. Машина Тьюринга. Неразрешимые алгоритмические проблемы. Тезис Черча. Нормальные алгоритмы Маркова. На практическом занятии студент может получить помощь преподавателя по тем вопросам, которые вызвали у него затруднения. Перед завершением практического занятия по текущей теме студент посылает преподавателю из компьютерного класса электронное письмо, прикрепляя к нему zip-файл разработанных материалов. 6. Учебно-методическое обеспечение самостоятельной работы студентов. Оценочные средства для текущего контроля успеваемости, промежуточной аттестации по итогам освоения дисциплины. Основными видами занятий являются лекции, практические занятия. Основными видами промежуточного контроля является опрос, защита практических работ, выполняемых в компьютерных классах. Самостоятельная работа студентов сводится к изучению теоретического материала как по лекциям, так и по предлагаемым литературным источникам, а также к выполнению домашних заданий и подготовке к опросу. Примерные темы практических занятий 1. 2. 3. 4. 5. 6. 7. 8. 9. Простейшие операции над множествами, их свойства. Бинарные отношения, их свойства. Функциональные отображения Рекурсивные функции. Алгоритм вычисления функции, начальные условия для рекурсии. Логические операции. Таблицы истинностных значений. Равносильные преобразования формул. Упрощение логических формул. Аксиоматика булевых алгебр. Интерпретация булевых алгебр. Решение логических задач методами алгебры высказываний. Основные понятия логики предикатов. Формы текущего контроля Оценка работы студента в аудитории (оценка за текущую успеваемость): по каждой теме за работу на практических занятиях выставляется в рабочую ведомость оценка 0 или 1 балл. Рассчитывается интегральная оценка текущей работы студента (Оаудиторная) как процент оценок «зачтено» за проверочные работы, приведенная к 10-балльной оценке Оценка выполнения заданий для самостоятельной работы студентов(Осам. работа): в первом модуле выполняется задание №1, во втором модуле – задание №2; максимальная оценка выполнения каждого задания 5 баллов Форма промежуточного контроля Промежуточный контроль проводится в форме контрольной работы; максимальная оценка за выполнение контрольной работы 10 баллов(Оконтрольная) Промежуточный контроль включает самостоятельное выполнение домашней работы максимальная оценка 10 баллов (Одз). Форма итогового контроля экзамен (максимальная оценка 10 баллов) Методика формирования накопительной оценки текущего контроля знаний и умений Накопительная оценка текущего контроля знаний и умений студентов рассчитывается как среднее арифметическое четырех 10-балльных оценок: оценки работы студента в аудитории, оценки выполнения заданий для самостоятельной работы и оценки за контрольную и домашнюю работу. Методика формирования результирующей оценки итогового контроля знаний и умений Изучение дисциплины заканчивается письменным зачетом, который (с учетом ответов студента на заданные преподавателем дополнительные вопросы по тематике изучаемой дисциплины) оценивается 10-балльной оценкой. Итоговая оценка рассчитывается по формуле: Оитоговый = k1·Озачет + k2 (Ок/р + Одз +Оаудиторная+ Осам. работа )/4 где k1 = 0,6; k2 = 0,4 Методические рекомендации студентам по выполнению самостоятельной работы Для обеспечения самостоятельной работы студентов разработаны электронное учебное пособие и Web-сайт информационной поддержки программы изучаемой дисциплины. Он содержит конспекты лекций, контрольный вопросы и задания для практикумов. Информационное обеспечение дисциплины также включает ряд книг, которые студенты могут взять в библиотеке университета. При выполнении самостоятельной работы (дома или в компьютерном классе) студент более детально знакомится с теоретическим материалом пройденных тем, используя Web-сайт информационной поддержки программы изучаемой дисциплины, проверяют уровень понимания учебного материала с помощью контрольных вопросов и вырабатывает практические умения, решая задачи для практикумов. Вопросы к экзамену 1. Интуитивное понятие алгоритма, признаки алгоритма, примеры. Алгоритм как задача вычисления функции. 2. Необходимость уточнения понятия алгоритма 3. Аксиоматические теории. 4. Вычислимые функции, простейшие вычислимых функций. 5. Основные операторы формальной теории вычислимых функций и их свойства. 6. Примитивно рекурсивные предикаты и их свойства. 7. Примитивно рекурсивные функции и их свойства, примеры. 8. Частично рекурсивные и общерекурсивные функции свойства, примеры. 9. Теоремы о несчетности числовых функций и счетности вычислимых функций. Тезис Черча. 10. Универсальные функции. 11. Определение машины Тьюринга. Машинное слово. 12. Модель машины Тьюринга. 13. Работа машины Тьюринга 14. Вычислимые по Тьюрингу функции. Тезис Тьюринга. Вычислимость по Тьюрингу ЧРФ. 15. Композиция машин Тьюринга 16. Универсальная машина Тьюринга. 17. Машина Поста. 18. Ассоциативные исчисления основные определения. 19. Дедуктивные цепочки. 20. Алгоритмы Маркова, определение 21. Марковские подстановки. Нормально вычислимые функции 22. Тезисы Черча, Тьюринга и Маркова. 23. Неразрешимые алгоритмические проблемы. 24. Разрешимые и перечислимые множества, свойства, примеры. Характеристические функции. 25. Теорема Поста. 26. Геделевская нумерация алгоритмов. 27. Теоремы о параметризации и неподвижной точки. Теорема Райса. 28. Проблема распознавания самоприменимости машин Тьюринга. 29. Проблема останова. 30. Грамматики. Языки, иерархия языков по Хомскому. 31. Сложность алгоритмов. Классы сложности 7. Учебно-методическое и информационное обеспечение дисциплины (модуля) Теория алгоритмов. а) основная литература: 1. 2. Лихтарников Л.М., Сукачева Т.Г. Математическая логика – СПб: Лань, 2009. Шапорев С.Д.. Математическая логика - СПб: БХВ-Петербург, 2007. б) дополнительная литература: А.Н. Колмагоров, А.Г.Драгалин «Математическая логика» классический университетский учебник, МГУ им Ломоносова 2009. 4. Ю.А. Алеев, С.Ф. Тюрин «дискретная математика и математическая логика» Москва, 2006. 3. 8. Материально-техническое обеспечение дисциплины (модуля) Теория алгоритмов. Персональные компьютеры слушателей не ниже Pentium 4 с подключением к Internet, ОС Windows не ниже Windows XP или *nix. Компьютер преподавателя. Проектор, подключенный к компьютеру преподавателя. Экран или интерактивная доска.