- •5.1. Вопросы для промежуточного и итогового контроля
- •6. Критерии оценки знаний
- •Список рекомендуемой литературы
- •Теоретическая часть
- •Тема 1. Экстремальные задачи и методы их решения.
- •Выбор метода решения - один из важнейших этапов при решении задач оптимизации. Можно выделить следующие группы методов:
- •Тема 3. Классические задачи, решаемые методом динамического программирования.
- •План решения задачи методом динамического программирования.
- •Определение. Последовательность Фибоначчи определяется следующим образом:
- •Примеры задач, решаемых при помощи динамического программирования. Наибольшая общая подпоследовательность. (ноп, Longest Common Subsequence, lcs)
- •Решение
- •Примеры задач, решаемых при помощи динамического программирования. Наибольшая возрастающая подпоследовательность. (нвп, Longest Increasing Subsequence, lis)
- •Решение
- •Оптимизация метода динамического программирования (на примере задачи нахождения числа сочетаний )
- •Тема 4. Системы и процессы.
- •Тема 5. Дискретные и непрерывные задачи.
- •Тема 6. Динамическое программирование и линейное программирование
- •Тема 7. Задачи поиска оптимальных путей на графах с неотрицательными весами ребер.
- •Тема 8. Динамическое программирование в экономических задачах.
- •Алгоритм обратной прогонки. Алгоритм прямой прогонки.
- •Алгоритм обратной прогонки
- •Алгоритм прямой прогонки
- •Тема 9. Оптимальное управление.
- •Тема 10. Особенности решения задач динамического программирования. Примеры.
- •Тема 11. Применение метода динамического программирования к задачам синтеза расписаний обслуживания.
- •Однопроцессорные задачи синтеза расписаний обслуживания конечных детерминированных потоков заявок
- •Задачи синтеза расписаний обслуживания для систем с параллельными и последовательными процессорами
- •Задачи оптимального обслуживания стационарных объектов, расположенных в одномерной зоне
- •Тема 12. Труднорешаемые задачи. Полиномиально разрешимые конкретизации, приближенные и эвристические алгоритмы
- •Полиномиально разрешимые и np-трудные задачи
- •Полиномиально разрешимые подклассы труднорешаемых задач
- •Принципы построения приближенных и эвристических алгоритмов
- •Эвристические алгоритмы для задач синтеза расписаний обслуживания
- •Глоссарий
- •Сборник заданий, задач, примеров, упражнений и т.Д.
- •Задача 7. Максимальная подпоследовательность. Дана числовая последовательность, требуется найти длину наибольшей возрастающей подпоследовательности.
Глоссарий
Аддитивный критерий оптимальности – общее оптимальное решение является суммой оптимальных решений каждого шага.
AMPL («A Modeling Language for Mathematical Programming») – язык для математического программирования высокого уровня, разработанный в Bell Laboratories.
Алгоритм Флойда-Уоршелла – динамический алгоритм для нахождения кратчайших расстояний между всеми вершинами взвешенного ориентированного графа.
Алгоритма Дейкстры – находит оптимальные маршруты и их длину между одной конкретной вершиной (источником) и всеми остальными вершинами графа.
Бесконечный процесс – многошаговый процесс при N=.
Выпуклое программирование – целевая функция и ограничения – выпуклые функции.
Глобальные методы – имеют дело с многоэкстремальными целевыми функциями.
Геометрическое программирование – задачи наиболее плотного расположения объектов в заданной двумерной или трехмерной области.
Динамическое программирование – раздел математического программирования, совокупность приемов, позволяющих находить оптимальные решения, основанные на вычислении последствий каждого решения и выработке оптимальной стратегии для последующих решений.
Допустимое множество – множество ;
Дифференциальные уравнения – =g(x(t)).
Дифференциально-разностное уравнение – =h(x(t), x(t-)).
Допустимое управление – управление, удовлетворяющее заданным ограничениям.
Динамическое программирование сверху – это простое запоминание результатов решения тех подзадач, которые могут повторно встретиться в дальнейшем.
Динамическое программирование снизу – переформулирование сложной задачи в виде рекурсивной последовательности более простых подзадач.
Задача оптимизации – задача нахождения экстремума целевой функции в некоторой области конечномерного векторного пространства.
Задача триангуляции – выбрать такую совокупность хорд многоугольника, что никакие две хорды не будут пересекаться, а весь многоугольник будет поделен на треугольники и общая длин всех хорд минимальна.
Задача Лагранжа – задача с интегральным функционалом.
Задача Майера – задача с терминальным функционалом.
Задача Больца – задача с интегральным функционалом и с терминальным функционалом.
Задача оптимального быстродействия – задача с интегральным функционалом f0 1.
Задачи дискретного программирования – если X конечно или счётно;
Задача о загрузке – это задача о рациональной загрузке объекта.
Интегральное уравнение – x(t)=u(t) + g(x(s), t)ds.
Критерий поиска – условия и тип экстремума (max или min).
Локальные методы – сходятся к какому-нибудь локальному экстремуму целевой функции.
Линейное программирование – состоит в нахождении экстремального значения линейной функции многих переменных при линейных ограничениях.
Математическое программирование – дисциплина, изучающая теорию и методы решения задачи оптимизации.
Методы первого порядка – требуют вычисления первых частных производных функции.
Методы второго порядка – требуют вычисления вторых частных производных, то есть гессиана целевой функции.
Нелинейное программирование – целевая функция и ограничения нелинейные функции.
Оптимальный путь на графе – путь вдоль которого сумма весов минимальна (максимальна).
Оптимальность по Парето – такое состояние системы, при котором значение каждого частного критерия, описывающего состояние системы, не может быть улучшено без ухудшения положения других элементов.
Палиндромом – строка, которая одинаково читается как слева направо, так и справа налево.
Принцип инвариантного погружения – предполагает замену общей задачи на эквивалентную совокупность более простых задач.
Параметрическое программирование – это язык программирования ЧПУ.
Прямые методы – требующие только вычислений целевой функции в точках приближений.
Перекрывающиеся подзадачи – подзадачи, которые используются для решения некоторого количества задач (не одной) большего размера.
Рекуррентные соотношения – соотношения связывающие разные (соседние) элементы вектора или матрицы.
Разностное уравнение – x(t)=g(x(t-)).
Стохастическое линейное программирование – задача для которой коэффициенты ci целевой функции, коэффициенты aij в матрице коэффициентов, коэффициенты ограничений bi – являются случайными величинами.
Теория массового обслуживания – анализ и исследование явлений, возникающих в системах обслуживания.
Теория игр – изучает явления, возникающие в конфликтных ситуациях.
Целочисленное программирование – на оптимальные решения накладывается условие целочисленности.
Целевая функция – отображение f : X R;
Числа Фибоначчи – последовательность определяется так: F0 = 0, F1 = 1, Fn = Fn-1 + Fn-2.
Экстремальная задача – задача оптимизации.
Пример тестовых заданий для проверки знаний
Вариант 1
1. Математическая модель задачи линейной оптимизации может быть записана в следующей форме:
|
А) общей; Б) Лагранжа; В) канонической; Г) числовой; Д) симметричной. |
2. Непрерывная модель: |
А) уравнение струны Б) разностная схема В) законы Ньютона Г) конечное поле Д) уравнения Навье-Стокса |
3. Дискретная модель: |
А) уравнение теплопроводности Б) разностная схема В) уравнения Максвелла Г) конечное поле Д) уравнения гидродинамики |
4. Целевая функция задачи линейной оптимизации достигает экстремального значения: |
А) во внутренней точке области допустимых решений системы ограничений; Б) в любой точке области допустимых решений системы ограничений; В) в крайней точке (крайних точках) области допустимых решений системы ограничений. |
5. Величина двойственной оценки задачи линейной оптимизации численно равна: |
А) значению свободной переменной; Б) величине значения целевой функции при изменении соответствующего ресурса на единицу; В) оптимальному объему выпускаемой продукции. |
6. Какое из утверждений верно: |
А) если исходная задача является задачей максимизации целевой функции, то двойственная – также задача максимизации целевой функции; Б) если исходная задача является задачей максимизации целевой функции, то двойственная может быть как задачей минимизации, так и задачей максимизации; В) если исходная задача является задачей максимизации целевой функции, то двойственная – задачей минимизации целевой функции. |
7. Во всех ли задачах динамического программирования процесс решения является многошаговым (многоэтапным)? |
А) в большинстве задач; Б) да, во всех; В) не во всех. |
8. Линейная модель – это модель для операторов которой выполнено свойство: |
А) суперпозиции Б) аддитивности В) линейности Г) мультипликативности Д) ограниченности |
9. Задачу линейного программирования можно решить: |
А) Методом Лагранжа; Б) графическим методом; В) методом наименьших квадратов; Г) симплексным методом. |
10. Верно ли утверждение, что в задачах динамического программирования процесс решения является многошаговым (многоэтапным)? |
А) да; Б) нет; В) зависит от целевой функции. |
11. Верно ли, что оптимальным планом задачи линейного программирования называется план, доставляющий наименьшее (наибольшее) значение линейной функции? |
А) нет; Б) да; В) зависит от задачи. |
12. Динамическая система описывается элементами: |
А) гильбертового пространства Б) банахового пространства В) эвклидового пространства Г) двухточечного пространства Д) кольца целых чисел |
