
- •1.Типовые классы оптимизационных задач. Содержание этапа постановки задачи. Общая формальная постановка задачи.
- •2. Критерий оптимальности базисного распределения поставок.
- •Типовые классы оптимизационных задач. Вычисление решения. Классификация методов решения оптимизационных задач.
- •Распределительный метод решения транспортной задачи
- •1. Типовые классы оптимизационных задач. Выбор типа модели. Проверка и корректировка модели.
- •Открытая модель транспортной задачи.
- •1. Типовые классы оптимизационных задач. Понятие показателя и критерия эффективности.
- •Однопараметрическая постановка и решение задачи оптимизации классическим способом
- •Классический метод вычисления условного экстремума
- •1. Многопараметрическая постановка и решение задачи оптимизации классическим способом
- •2.Существо и содержание метода множителей Лагранжа
- •1. Общая и основная задачи линейного программирования
- •1. Свойства основной задачи линейного программирования
- •2.Принцип оптимальности и уравнение Беллмана
- •1.Графический метод решения задачи линейного программирования.
- •2. Постановка задачи целочисленного линейного программирования
- •1. Существо и содержание симплекс-метода решения задач линейного программирования.
- •2.Метод отсечения. Метод Гомори
- •1.Способы получения первоначального допустимого базисного решения. Метод искусственного базиса
- •2.Понятие о методе ветвей и границ
- •1.Геометрическая интерпретация основной задачи линейного программирования
- •2.Постановка задачи параметрического программирования. Аналитический метод решения задачи параметрического программирования.
- •1. Существо метода симплекс-таблиц
- •2. Постановка задачи параметрического программирования. Графический метод решения задачи параметрического программирования
- •Математическая модель транспортной задачи.
- •2.Решение задач нелинейного программирования методом штрафных функций.
1. Свойства основной задачи линейного программирования
В какой бы из форм не была записана задача линейного программирования ей присущ ряд свойств, которые вводятся следующим определениями:
1) План X = <x1, x2...> называется опорным или базисным планом основной задачи линейного программирования, если система векторов pj линейно не зависима. Т.к. векторы pj являются m методами, то из определения опорного плана следует что число положительных компонент не должно превышать m.
2) Опорный план называется не вырожденным, если он содержит ровно m положительных компонентов, в противном случае план называется вырожденным. Свойства основной задачи линейного программирования тесно связанны со свойствами выпуклых функций и выпуклых множеств.
3) Пусть x1,x2... произвольные точки Евклидового пространства E
Тогда выпуклой линейно комбинацией этой точек называется
альфаx1+альфаx2+альфаxn
сумма альфа=1, альфа=> 0, i=1,n
Теорема1. Множество планов задачи линейного программирования. Если оно не пустое то всегда выпуклое. Не пустое множество планов основной задачи линейного программирования называется многогранником решений, а любая угловая точка в программе решений - его вершиной.
Теорема2. Если основная задача имеет оптимальный план, то целевая функция принимает свое максимальное значение только в одной из вершин многогранника, если максимальное значение целевая функция принимает более чем 1 вершине, то она принимает его во всякой точке являющийся линейной комбинаций этих вершин.
Теорема3. Если система векторов p1 p2...pk, где k≤n вершина многогранника решений, то векторы pj соответствующие точкам xj линейно не зависимы.
На основании этих определений и теорем можно сделать несколько выводов лежащих в основе всех методов задач линейного программирования.
1) Не пустое множество планов основной задачи ленейного программирования образует выпуклый многогранник. Каждая вершина этого многогранника определяет опорный или базисный план. В одной из этих вершин многогранника целевая функция принимает максимальное значение, при условии что функция ограничена сверху на всем множестве планов. Если максимальное значение целевая функция принимает более чем в одной вершине, то она принимает его так же в любой точке, являющийся линейной комбинацией данных вершин.
2)При получении оптимального решения основной задачи линейного программирования достаточно просмотреть только крайние точки допустимого множиства решений.
3) Для получения оптимального решения задачи линейного программирования достаточно перебрать не все, а лиж допустимые базисные решения. Под дупустимым базисным решением будем понимать такое решение при котором все переменные искомого плана входящие в целевую функцию при решении задачи на максимум является положительными
2.Принцип оптимальности и уравнение Беллмана
Метод Динамического программирования. (Метод Беллмана). Существо метода заключается в поэтапном решении задачи. При этом выделяют два этапа решения задачи. На первом этапе осуществляется условная оптимизация. На втором этапе – безусловная оптимизация. Каждый из этапов выполняется по шагам. Есть 2 пути решения задачи. Начиная с последнего объекта и двигаясь к первому и от первого объекта двигаясь к первому. Но абсолютное большинство задач решается, начиная с последнего объекта.Именно на основе метода динамического программирования построены все основные алгоритмы, а с помощью них протоколы маршрутизации в распределенных сетях. Метод предполагает одну N-мерную задачу, в которой некий управляемый объект из состояния S0 s в состояние Sk может перевестись с помощью управления, являющимся N-мерным вектором. В задачу, состоящую из n одномерных задач, в которых тот же самый объект, из того же самого исходного состояния и в тоже самое конечное состояние Sk приводится по шагам. При этом к нему должно быть приложено скалярное управление Uk.
Беллман сформулировал и доказал принцип оптимальности, который в настоящее время трактуется как принцип оптимальности Беллмана: каково бы ни было состояние S системы, в результате какого-либо числа шагов, на ближайшем шаге необходимо выбирать управление таким образом, чтобы оно в совокупности с оптимальным управлением на всех шагах приводило к оптимальному выигрышу на всех оставшихся шагах, включая и данный.Таким образом метод динамического программирования является иторационным пошаговым методом, реализующим уравнение оптимальности (уравнение Беллмана)
По существу этот метод говорит о том, что начиная с последнего элемента (т.е. с результата) необходимо на каждом шаге выбирать такое воздействие, которое является оптимальным на данном шаге. И тогда оптимальным будет и весь процесс управления от S0 до Sk
Например, если у нас имеется сеть, как размеченыйй граф.
Требуется найти маршрут, оптимальный по времени. Такую задачу для такой небольшой сети можно решить методом перебора. Для метода динамического программирования введено несколько предположений:
Состояние Sk системы в конце k-го шага зависит только от предшествующего состояния Sk-1 и управления на k-м шаге (Uk). И не зависит от предшествующих состояний и предшествующих управлений. Такое требование называется отсутствием последействия и оно записывается следующим образом:
Целевая функция является аддитивной от показателя эффективности каждого шага. Т.е. если на k-м шаге имеем значение целевой функции Zk=fk()
Тогда задача пошаговой оптимизации и задача метода динамического программирования формулируется следующим образом: Определить, какое допустимое управление U, переводящее систему S из начального состояния S0 в конечное состояние Sk, при котором целевая функция принимает наибольшее или наименьшее значение.
Метод Динамического Программирования обладает следующими особенностями:
Задача оптимизации интерпретируется, как n-шаговый процесс управления.
Целевая функция равна сумме целевых функций на каждом шаге
Выбор управления на k-м шаге зависит только от состояния системы к этому шагу и не влияет на предшествующие шаги. Т.е. в системе отсутствует обратная связь.
Состояние Sk после k-го шага управления зависит только от состояния Sk-1 на предыдущем шаге и управления Uk на данном шаге. (Принцип отсутствия последействия)
На каждом шаге управление зависит от конечного числа управляющих переменных, а состояние Sk от конечного числа параметров.
С помощью метода динамического программирования могут решаться значительное число задач, которые относятся к следующим группам:
-задача распределения средств
-задача об оптимальном распределении ресурсов
-задачи о замене оборудования
Билет 9.