Скачать 167.24 Kb.
|
Правительство Российской Федерации Федеральное государственное автономное образовательное учреждение высшего профессионального образования "Национальный исследовательский университет "Высшая школа экономики" Факультет бизнес-информатики Программа дисциплины Командная разработка алгоритмов и программ для направлений 080700.62 «Бизнес-информатика» 231000.62 «Программная инженерия» подготовки бакалавра Автор программы: Морозенко В.В., доцент, к.ф.-м.н., v.morozenko@mail.ru Одобрена на заседании кафедры информационных технологий в бизнесе «___»_________201 г. Зав. кафедрой О.Л.Викентьева _______________________ Утверждена Учебно-методическим Советом НИУ ВШЭ - Пермь «___»_____________201 г. Председатель Г.Е. Володина ________________________ Пермь, 2012 Настоящая программа не может быть использована другими подразделениями университета и другими вузами без разрешения кафедры-разработчика программы. 1Область применения и нормативные ссылкиНастоящая программа учебной дисциплины устанавливает минимальные требования к знаниям и умениям студента и определяет содержание и виды учебных занятий и отчетности. Программа предназначена для преподавателей, ведущих данную дисциплину, учебных ассистентов и студентов направления подготовки 231000.62 «Программная инженерия» и 080700.62 «Бизнес-информатика», изучающих дисциплину «Командная разработка алгоритмов и программ». Программа разработана в соответствии с: Образовательным стандартом НИУ ВШЭ по направлению подготовки 231000.62 «Программная инженерия» (протокол от 02.07.2010 г. № 15); Образовательным стандартом НИУ ВШЭ по направлению подготовки 080700.62 «Бизнес-информатика» (протокол от 02.07.2010 г. № 15); Образовательной программой направления подготовки 231000.62 «Программная инженерия»; Образовательной программой направления подготовки 080700.62 «Бизнес-информатика»; Рабочим учебным планом университета по направлению подготовки 231000.62 «Программная инженерия», утвержденным в 2012г.; Рабочим учебным планом университета по направлению подготовки 080700.62 «Бизнес-информатика», утвержденным в 2012г. 2Цели освоения дисциплиныЦелью дисциплины «Командная разработка алгоритмов и программ» является изучение методов командной разработки алгоритмов для решения сложных вычислительных задач и оценивания их эффективности. Освоение дисциплины должно обеспечить базовые знания, которые дадут возможность выпускнику успешно работать в сфере организации процессов жизненного цикла ИС и ИКТ, аналитической поддержки процессов принятия решений для управления предприятием, обладать универсальными и предметно-специализированными компетенциями, способствующими его социальной мобильности и устойчивости на рынке труда. Программа дисциплины нацелена на формирование умений работать в команде, организованности, трудолюбия, ответственности, способности к саморазвитию, повышению своей квалификации и мастерства. Содержание программы дисциплины «Командная разработка алгоритмов и программ» должно обеспечить базовую подготовку студентов в процессе формирования устойчивых теоретических знаний и практических навыков разработки и анализа алгоритмов для дальнейшей учебной, научной и профессиональной деятельности. Для достижения поставленной цели при изучении дисциплины решаются следующие задачи: – дать знания о существующих эффективных алгоритмах для решения наиболее известных задач комбинаторной оптимизации, об их сложности и требованиям к памяти; – познакомить с классификацией оптимизационных задач и алгоритмов для их решения, особенностями задач комбинаторной оптимизации большой размерности; – привить навыки работы в команде при разработке алгоритмов и программных комплексов для решения сложных вычислительных задач. Курс призван повысить общую эрудицию студентов, дать им возможность ориентироваться в данной предметной области, подготовить к применению теоретических знаний при решении различных задач оптимизации, при изучении и разработке средств поддержки принятия решений. Студенты должны получить знания о существующих эффективных алгоритмах для решения наиболее известных задач комбинаторной оптимизации, методах их разработки и анализа в объеме, достаточном для успешного изучения курсов «Оптимизация и математические методы принятия решений», «Нечеткая логика и нейронные сети», «Распределенные алгоритмы и параллельное программирование», «Криптографические методы защиты» и др. Изучение данной дисциплины углубляет знания, полученные студентами при изучении курсов «Информатика и программирование» и «Дискретная математика». 3Компетенции обучающегося, формируемые в результате освоения дисциплиныВ результате освоения дисциплины студент должен: Знать: – о различных методах классификации существующих алгоритмов; – наиболее известные алгоритмы для работы с различными структурами данных; –– особенности точных, приближенных, эвристических, переборных, «жадных» алгоритмов. Уметь: – анализировать существующие алгоритмы с точки зрения их эффективности и применимости для решения прикладных задач; – разрабатывать новые алгоритмы для решения конкретных задач в области программной инженерии и бизнес-информатики; – оценивать сложность разработанных алгоритмов и обосновывать их корректность. Иметь навыки (приобрести опыт): – применения известных и разработки собственных алгоритмов для решения практических задач с учетом требований к точности, времени работы алгоритма и вычислительным ресурсам; - командной разработки алгоритмов для решения сложных вычислительных задач и оценивания их эффективности; – формализации и разработки математических моделей и алгоритмов для решения конкретных практических проблем в сфере программной инженерии и бизнес-информатики или их сведения к известным модельным задачам. В результате освоения дисциплины студент осваивает следующие компетенции:
4Место дисциплины в структуре образовательной программыНастоящая дисциплина относится к циклу математических и естественно научных дисциплин (факультативная часть). Изучение данной дисциплины базируется на следующих дисциплинах:
Для освоения учебной дисциплины, студенты должны владеть следующими знаниями и компетенциями:
Основные положения дисциплины должны быть использованы в дальнейшем при изучении следующих дисциплин:
5Тематический план учебной дисциплины
6Формы контроля знаний студентов
6.1Критерии оценки знаний, навыков При выполнении контрольной работы студент должен продемонстрировать знания основных понятий и алгоритмов из соответствующего раздела учебного курса, умения применять указанные алгоритмы для решения предложенных задач и обосновывать корректность полученных решений. Количество задач в контрольных работах – от 6 до 8. Каждая задача оценивается в 1-2 балла, так что общая сумма баллов равна 10. При выполнении домашнего задания студент должен продемонстрировать знания основных понятий и алгоритмов из соответствующего раздела учебного курса, умения самостоятельно изучать учебную литературу и применять полученные знания при решении предложенных задач. Количество задач в домашнем задании равно 10. Каждая задача оценивается в 1 балл. При выполнении письменной зачетной работы студент должен продемонстрировать знания основных понятий и алгоритмов из всего учебного курса, умения применять указанные алгоритмы для решения предложенных задач и обосновывать корректность полученных решений. Работа содержит 1 теоретический вопрос, который оценивается в 2 балла, и 5 практических заданий, каждое из которых оценивается в 1-2 балла, так что общая сумма баллов равна 10. Оценки по всем формам текущего контроля выставляются по 10-ти балльной шкале. 6.2Порядок формирования оценок по дисциплине Оценка за итоговый контроль основывается на результатах выполнения контрольных работ, домашнего задания и экзамена. Преподаватель оценивает работу студентов на практических занятиях: по карточкам, на которых указаны практические задания. Работа каждого студента оценивается с учетом количества задач, решенных им во время занятия. Оценки за работу на практических занятиях преподаватель выставляет в рабочую ведомость. Оценка по 10-ти балльной шкале за работу на практических занятиях определяется перед промежуточным или итоговым контролем и называется - Оаудиторная. Накопленная оценка за текущий контроль учитывает результаты студента по текущему контролю следующим образом: Онакопленная= 2/3*Отекущий + 1/3* Оаудиторная где Отекущийрассчитывается как взвешенная сумма всех форм текущего контроля, предусмотренных в РУП: Отекущий = n1·Ок/р + n2·Одз, при этом n1 = 0,7,n2 = 0,3. Способ округления накопленной оценки текущего контроля: арифметический. Результирующая оценка за дисциплину рассчитывается следующим образом Орезультирующая = 0,6* Онакопленная + 0,4*·Оэкз/зач Способ округления накопленной оценки промежуточного (итогового) контроля в форме зачета: арифметический. На пересдаче студенту не предоставляется возможность получить дополнительный балл для компенсации оценки за текущий контроль. На зачете студент может получить дополнительный вопрос (дополнительную практическую задачу, решить к пересдаче домашнее задание), ответ на который оценивается в 1 балл. 7Содержание дисциплины8Раздел 1. Алгоритмы и алгоритмические языки Тема 1. Классы алгоритмов (точные, приближенные, эффективные, переборные, рекурсивные). Количество часов аудиторной работы: 4. Общий объем самостоятельной работы студента: 8 часов. Тема 2. Структуры данных. Количество часов аудиторной работы: 4. Общий объем самостоятельной работы студента: 8 часов. Литература по разделу: Ахо А., Хопкрофт Дж., Ульман Дж. Структуры данных и алгоритмы. М.: Издательский дом «Вильямс», 2000. 9Раздел 2. Разработка программ Тема 3. Разработка алгоритмов и программ для решения задач по теме «Геометрия». Количество часов аудиторной работы: 6. Общий объем самостоятельной работы студента: 12 часов. Тема 4. Разработка алгоритмов и программ для решения задач по теме «Массивы». Количество часов аудиторной работы: 6. Общий объем самостоятельной работы студента: 12 часов. Тема 5. Разработка алгоритмов и программ для решения задач по теме «Графы». Количество часов аудиторной работы: 6. Общий объем самостоятельной работы студента: 12 часов. Тема 6. Разработка алгоритмов и программ для решения задач по теме «Рекурсия и динамическое программирование». Количество часов аудиторной работы: 6. Общий объем самостоятельной работы студента: 12 часов. Тема 7. Разработка алгоритмов и программ для решения задач по теме «Сортировка и поиск». Количество часов аудиторной работы: 6. Общий объем самостоятельной работы студента: 12 часов. Тема 8. Разработка алгоритмов и программ для решения задач по теме «Строки». Количество часов аудиторной работы: 6. Общий объем самостоятельной работы студента: 12 часов. Тема 9. Разработка алгоритмов и программ для решения задач по теме «Комбинаторика». Количество часов аудиторной работы: 6. Общий объем самостоятельной работы студента: 12 часов. Тема 10. Разработка алгоритмов и программ для решения задач по теме «Длинная арифметика». Количество часов аудиторной работы: 6. Общий объем самостоятельной работы студента: 12 часов. Литература по разделу: Кормен Т., Лейзерсон Ч., Ривест Р., Штайн К. Алгоритмы: построение и анализ, 2-е издание. М.: Издательский дом «Вильямс», 2012. 10Образовательные технологииНа лекциях рекомендуется иллюстрировать материал примерами, показывающими все этапы решения задачи: формализацию и построение математической модели, разработку алгоритма, доказательство его корректности, нахождение его сложности, написание программы, её отладку и тестирование, выполнение программы на реальных входных данных. На практических занятиях используются следующие методы обучения и контроля усвоения материала: разработка алгоритмов для конкретных задач и их практическая реализация в виде программного продукта с последующей отладкой и тестированием. При оценке выполненных заданий особое внимание рекомендуется обратить на оценки разработанных программ (получение теоретических оценок, сравнение проведенных экспериментов с результатами, полученными различными способами). Методические указания студентам: Студенту рекомендуется следующая схема выполнения домашних заданий:
При подготовке рекомендуется использовать электронные учебные материалы, имеющиеся в медиатеке. Выполненные задания должны сопровождаться данными анализа результатов (теоретическими оценками, сравнением результатов, полученных различными способами). 11Оценочные средства для текущего контроля и аттестации студента11.1Вопросы для оценки качества освоения дисциплины
а) нахождение минимального остовного дерева; б) нахождение кратчайшего гамильтонова цикла; в) нахождение минимально потока в сети; г) нахождение хроматического числа графа; д) определение изоморфности двух графов.
а) перемножение двух квадратных матриц; б) нахождение кратчайшего гамильтонова цикла; в) задача «о переносе Ханойской башни»; г) решение задачи останова (остановится ли заданная машина Тьюринга на заданном наборе входных данных); д) определение эквивалентности двух алгоритмов.
12Учебно-методическое и информационное обеспечение дисциплины12.1Базовый учебникКормен Т., Лейзерсон Ч., Ривест Р., Штайн К. Алгоритмы: построение и анализ, 2-е издание. М.: Издательский дом «Вильямс», 2012. 12.2Основная литература
12.3Дополнительная литература
12.4Программные средстваДля успешного освоения дисциплины, студент использует следующие программные средства:
13Материально-техническое обеспечение дисциплиныДля проведения лекционных занятий используется компьютер с установленным программным обеспечением для демонстрации презентаций и проектор. Практические занятия проводятся в компьютерных классах с установленным программным обеспечением, перечисленным выше. |