Следите за новостями и участвуйте в обсуждениях!
Подписывайтесь на
наш Инстаграм,
Телеграм-канал и
присоединяйтесь к чату сообщества — чтобы не пропустить результаты конкурса грантов!
Программирование задач высокой сложности
-
Цель: Формирование у студентов глубоких знаний и практических навыков решения задач повышенной алгоритмической и вычислительной сложности. Развитие компетенций в области проектирования, оптимизации и реализации эффективных программных решений для сложных прикладных и научных задач. Обучение методам оценки сложности алгоритмов, выбора оптимальных стратегий и технологий программирования для работы с большими объемами данных, ограниченными ресурсами и высокими требованиями к скорости выполнения. Содержание: Введение в задачи высокой сложности: Классификация сложных задач: NP-полные, NP-трудные задачи. Постановка задач и анализ требований к программным решениям. Методы проектирования эффективных алгоритмов: Динамическое программирование.Использование ИИ при моделировании задач с применением метода динамического программирования Жадные алгоритмы. Разделяй и властвуй, метод ветвей и границ. Алгоритмы на графах, теория игр, комбинаторные методы. Оптимизация программных решений: Профилирование и анализ производительности кода. Оптимизация по памяти и времени выполнения. Параллельное и распределенное программирование. Использование специализированных библиотек и инструментов: Библиотеки для высокопроизводительных вычислений (например, OpenMP, MPI, CUDA). Средства для работы с большими данными. Решение прикладных задач высокой сложности: Распознавание образов, машинное обучение. Криптография, защита информации. Оптимизационные задачи в логистике, финансах, медицине. Проектная деятельность: Разработка программного решения для конкретной сложной задачи. Оценка результатов и защита проекта.
-
Образовательная программа 6B01530 Информатика
-
Кредитов 4
-
Селективная дисциплина
-
Год обучения 4
-
Семестр 1