Постановка задачи и методы математического программирования.
Математическая постановка (модель) задачи математического программирования (МП) выглядит следующим образом:
необходимо определить значения вектора переменных
x = (x1,x2,…, xn), которые удовлетворяют ограничениям вида
g i (x1,x2,…, xn) bi , для всех i = 1,…, m
и доставляют максимум или минимум целевой функции
f (x1,x2,…, xn) → max (min).
Решением (планом, вектором управления) задачи МП называется всякий вектор х из пространства E n (E n — n-мерное векторное пространство), в геометрической интерпретации – это точка векторного n-мерного пространства. Допустимым решением (планом) задачи МП называется такое решение задачи, которое удовлетворяет ее ограничениям g i (x1,x2,…,xn) bi , для всех i = 1,…, m.
Совокупность допустимых решений задачи называют областью допустимых решений (ОДР) задачи МП, которую, как правило, обозначают как D. Оптимальным решением х*называется такое допустимое решение, при котором целевая функция достигает своего оптимального (в нашем случае — максимального) значения, т. е. решение, удовлетворяющее условию max f(x) = f(x*). Величина f* = f(x*) называется оптимальным значением целевой функции.
Окончательным решением задачи является пара (х*, f*), состоящая из оптимального решения и оптимального значения целевой функции
Постановка задачи и методы стохастического программирования
При перспективном и оперативном планировании работы предприятия возникает необходимость в учете ряда случайных факторов, существенно влияющих на процесс производства. К таким факторам относятся спрос, который не всегда может быть предсказуем, непредусмотренные сбои в поступлении сырья, энергии, рабочей силы, неисправности и аварии оборудования. Еще больше случайных факторов необходимо учитывать при планировании производства, эффективность которого зависит от климатических условий, урожайности и т.д. Поэтому, например, задачи планирования лесного производства целесообразно ставить и исследовать в терминах и понятиях стохастического программирования, когда элементы задачи линейного программирования (матрица коэффициентов A, вектора ресурсов b, вектора оценок c) часто оказываются случайными. Подобного типа задачи ЛП принято классифицировать как задачи стохастического программирования (СП).
Подходы к постановке и анализу стохастических задач существенно различаются в зависимости от последовательности получения информации — в один прием или по частям. При построении стохастической модели важно также знать, необходимо ли принять единственное решение, не подлежащее корректировке, или можно по мере накопления информации один или несколько раз корректировать решение. В соответствии с этим в стохастическом программировании исследуются одноэтапные, двухэтапные и многоэтапные задачи.
В одноэтапных задачах решение принимается один раз и не корректируется. Они различаются по показателям качества решения (по целевым функциям), по характеру ограничений и по виду решения.
Задача СП может быть сформулирована в M- и P- постановках по отношению к записи целевой функции и ограничений.
Случайны элементы вектора с (целевая функция).
При M-постановке целевая функция W записывается в виде
что означает оптимизацию математического ожидания целевой функции. От математического ожидания целевой функции можно перейти к математическому ожиданию случайной величины cj
Wmin — предварительно заданное допустимое наихудшее (минимальное) значение целевой функции.
Wmax — предварительно заданное допустимое наихудшее (максимальное) значение целевой функции.
Суть P-постановки заключается в том, что необходимо найти такие значения xj, при которых максимизируется вероятность того, что целевая функция будет не хуже предельно допустимого значения.
Ограничения задачи, которые должны выполняться при всех реализациях параметров условий задачи, называются жесткими ограничениями. Часто возникают ситуации, в которых постановка задачи позволяет заменить жесткие ограничения их усреднением по распределению случайных параметров. Такие ограничения называют статистическими:
В тех случаях, когда по содержательным соображениям можно допустить, чтобы невязки в условиях не превышали заданных с вероятностями, небольшими i>0, говорят о стохастических задачах с вероятностными ограничениями:
т.е. вероятность выполнения каждого заданного ограничения должна быть не менее назначенной величины i. Параметры i предполагаются заданными или являются решениями задачи более высокого уровня.
Представленные задачи как в M-, так и в P- постановках непосредственно решены быть не могут. Возможным методом решения этих задач является переход к их детерминированным эквивалентам. В основе этого перехода лежит использование закона распределения случайной величины. В инженерной практике наиболее часто используется нормальный закон распределения, поэтому дальнейшие зависимости приведем для этого случая.
Принимаем, что aij, bi, cj подчинены нормальному закону распределения. В этом случае будет справедлива следующие детерминированные постановки:
и j — математическое ожидание и среднее квадратическое отклонение случайной величины cj.
— соответственно, математические ожидания и дисперсии случайных величин aij и bi;
— значение центрированной нормированной случайной величины в нормальном законе распределения, соответствующей заданному уровню вероятности соблюдения ограничений i.
Сделаем несколько замечаний к приведенным зависимостям:
- задача стохастического программирования сведена к задаче нелинейной оптимизации и может быть решена одним из рассматриваемых ранее методов;
- сравнение ограничения ресурса в стохастическом программировании и аналогичным ограничением в задаче линейного программирования показывает, что учет случайного характера величин aij и bi приводит к уменьшению располагаемого ресурса на величину
т.е. к необходимости в дополнительном ресурсе. Однако этот дополнительный ресурс может оказаться неиспользованным, но для гарантированного выполнения плана его иметь необходимо.
В задачах принятия оптимальных решений широкое применение получил метод Монте-Карло. Основными особенностями этого метода, основанного на многократном повторении одного и того же алгоритма для каждой случайной реализации, являются: универсальность (метод не накладывает практически никаких ограничений на исследуемые параметры, на вид законов распределения); простота расчетного алгоритма; необходимость большого числа реализаций для достижения хорошей точности; возможность реализации на его основе процедуры поиска оптимальных параметров проектирования. Отметим основные факторы, определившие применение метода статистического моделирования в задачах исследования качества при проектировании: метод применим для задач, формализация которых другими методами затруднена или даже невозможна; возможно применение этого метода для машинного эксперимента над не созданной в натуре системы, когда натурный эксперимент затруднен, требует больших затрат времени и средств или вообще не допустим по другим соображениям.
- Кузнецов Ю.Н., Кузубов В.И., Волощенко А.Б. Математическое программирование. – М.: Высшая школа, 1980. – 300 с.
- Г о л ь ш т е й н Е. Г., Ю д и н Д. Б., Новые направления в линейном программировании, М., 1966; [2] Theorie der Hnearen parametrischen Optimierung, В., 1974.
- «Математические методы: Учебник» / Партика Т.Л., Попов И.И. – М: ФОРУМ: ИНФРА, 2005.
- Акулич И.Л. Математическое программирование в примерах и задачах. – М.: Высшая школа, 1986. –
7. Общая постановка и разновидности задач математического программирования
Математическое программирование — обширная область знаний. Мы рассмотрели далеко не полностью один из разделов — линейное программирование.
Общая математическая схема задачи математического программирования такова: дана некоторая функция
и некоторая система ограничений , наложенных на переменные x1, x2, . . . , xn:
Требуется найти такой набор значений переменных x1, x2, . . . , xn, который удовлетворяет ограничениям (7.2), и при этом условии минимизирует или максимизирует функцию (7.1).
Если все фигурирующие в (7.1) и (7.2) функции линейны, то мы имеем ЗЛП. В противном случае получается задача нелинейного программирования.
Для задач нелинейного программирования нет такого универсального метода решения, каким является симплекс-метод для ЗЛП. Только для узких классов задач нелинейного программирования разработаны точные методы, основная масса решается приближенно.
В некоторых задачах математического программирования ОДР состоит из дискретного множества точек. Такие задачи называются дискретными оптимизационными задачами. Например, если в ЗЛП потребовать, чтобы переменные принимали только целые значения, то получится дискретная оптимизационная задача — задача целочисленного линейного программирования. Дискретные задачи, как правило, сложнее непрерывных. По задачам дискретной оптимизации в настоящее время проводятся интенсивные научные исследования.
Важной областью является и динамическое программирование. Здесь изучаются методы поэтапного решения оптимизационных задач. Такие методы используются в особенно сложных задачах. Например, при составлении плана работы завода на год целесообразно разбить год на месяцы и план работы на каждый месяц увязывать с планами на предыдущие и последующие месяцы.
Наконец отметим, что встречаются задачи математического программирования, в которых исходные данные являются случайными величинами. Такие задачи изучает стохастическое программирование. Стохастическое программирование использует теоретико-вероятностные, статистические и оптимизационные методы.
По математическому программированию написано уже много книг. Приводимая литература — незначительная часть их. Но в ней можно найти изложение основных положений математического программирования, а также ссылки на другие источники.
Литература
1. Крушевский А.В., Швецов К.М. Математическое программирование и моделирование в экономике.-К.: Вища шк., 1979
2. Кузнецов Ю.Н., Кузубов В.М., Волощенко А.Б. Математическое программирование.-М.: Высш.шк.,1980
3. Таха X. Введение в исследование операций. (В 2-х книгах).- М.:Мир,1985
4. Мину М. Математическое программирование. Теория и алгоритмы.-М.: Наука, 1990.