Метод математического программирования пример

Научная электронная библиотека

2. Линейное программирование. Интерпретация задач линейного программирования.

3. Задача распределения ресурсов. Аксиомы линейности.

1. Задачи математического программирования

Основная задача математического программирования. Рассмотрим множество:

023.wmf

(4.1)

где ϕj(x) – заданные скалярные функций; x = (x1, . xk) – вектор входных параметров объекта, альтернативы.

Пусть скалярная функция f(x) определена на множестве Х. Задачу минимизации функции f(x) на множестве Х будем называть основной задачей математического программирования.

Форма записи задачи математического программирования.

024.wmf

(4.2)

или, ей эквивалентный запись:

025.wmf

означает, что ставится задача:

1) либо найти оптимальную точку x* ∈ X:

026.wmf

2) либо, если существует такая х*, то найти

027.wmf

где inf f(x) – нижняя граница функции f(x).

3) либо: убедиться в том, что Х = ∅.

Если множества Х выпукло и выпукла функция f(x), то задачу (4.2) называют задачей выпуклого программирования.

Множество Х в задаче (4.2) называют допустимым множеством, точки этого множества – допустимыми точками; множество 028.wmf 029.wmf– исходным множеством альтернатив; неравенство ϕj(x) ≥ 0, 030.wmf, определяющие допустимое множество – ограничениями. Точку
031.wmfназывают решением или оптимальной точкой. Точку х, в которой выполняется необходимые условия, локального минимума функции f(x) на множестве Х, будем называть стационарной.

Задачи математического программирования должна содержать некую целевую функцию, оптимум которой следует определить, систему равенств и неравенств, описывающих условия-ограничения.

032.wmf

Общая задача математического программирования состоит в определении вектора х* с координатами , которой является решением задачи:

при 033.wmf034.wmf

Общую задачу математического программирования разбивают на задачи, названия которых определяются видом оптимизируемой функции, функций, входящих в условия – ограничения, типом переменных и алгоритмом решения:

– линейного программирования f(x), ϕj(x), hj(x) – линейны;

– нелинейного программирования – хотя одна из функций f(x), ϕj(x), hj(x) нелинейные;

– квадратичного программирования – f(x), является квадратичной функцией, ограничения (ϕj(x), hj(x)) нелинейные;

– сепарабельного программирования f(x) – представляет собой сумму функций, различных для каждой переменной, условия – ограничения могут быть как линейными, так и нелинейными;

– целочисленного программирования функция f(x) – выпукла, ϕj(x), hj(x) – вогнутые, решения представляют собой целочисленные значения.

2. Линейное программирование. Интерпретация задач линейного программирования

Наиболее разработанными в математическом программировании являются задачи линейного программирования (ЛП) Модели ЛП занимают чрезвычайно важное место среди известных моделей экономических явлений и производственных процессов.

В общем случае задача линейного программирования сводится к следующему: требуется найти некоторую совокупность переменных, удовлетворяющих системе ограничений в форме равенств или неравенств и минимизирующую (максимизирующую) линейную функцию. Следовательно, формально имеем задачу:

Найти точку x = (x1, . xk), n-мерного пространство, которая удовлетворяют системе ограничений:

035.wmf

(4.3)

036.wmf

(4.4)

037.wmf

(4.5)

и минимизирует (максимизирует) линейную функцию:

038.wmf

(4.6)

Это общая задача линейного программирования.

Множество точек х, удовлетворяющих (4.3)–(4.5), называется допустимым множеством (областью) и обычно обозначается буквой D. Любая точка допустимого множества называется допустимой точкой (допустимым решением, вектором, планом). Линейная функция, подлежащая минимизации или максимизации, называется целевой функцией. Допустимая точка, которая минимизирует (максимизирует) целевую функцию, называется решением задачи ЛП, оптимальным планом.

Очевидно, задача максимизации целевой функции (с, х) при каких-либо ограничениях эквивалентна задаче минимизации –(с, х). При этом

Естественным ответом на вопрос о том, как решать сформулированную задачу ЛП (4.3)–(4.6), кажется следующий метод простого перебора: найти произвольное решение х1 системы (4.3)–(4.5), вычислить (с, х1), затем найти другое решение х2, вычислить (с, х2) и т.д. и среди полученного спектра значений целевой функции (с, х), выбрать наименьшее. Значение х, реализующее минимум целевой функции, будет решением задачи ЛП. Но этот путь перебора оказывается труднореализуемым или даже нереализуемым в силу сложности поиска допустимых решений задачи ЛП. Допустимая область имеет, вообще говоря, бесконечное множество точек и может являться многогранным множеством. Это, в частности, означает, что если D принадлежат две какие-либо точки, то D принадлежат и все точки, соединяющего эти точки.

С геометрической точки зрения решением задачи ЛП является одна из вершин допустимого множества, тем самым решение сводится к перебору конечного числа вершин.

Для простоты рассуждений рассмотрим задачу ЛП в двумерном пространстве.

Пусть ограничения задачи имеют следующий вид:

039.wmf

(4.7)

Требуется найти минимум целевой функции

Допустим, что система (4.7) совместно и соответствующее ей многогранное множество ограничено, т.е. является многоугольником. Очевидно, что каждое из неравенств (11.7) определяет полуплоскость соответственно с граничной прямой

ai1x1 + ai2x2 ai2x2 ≤ bi, i = 1, . m

и целевая функция принимает одно и то же значение f во всех точках прямой

где f – некоторая константа.

При изменении (уменьшение или увеличение) получаем семейство параллельных прямых, называемых линиями уровня функции c1x1 + c2x2. Предположим, что многоугольник и линии уровня имеют вид, представленной на рис. 4.1. Нас интересуют те точки многоугольника D, которые принадлежат линии уровня с наименьшим значением f. Известно, что если перемещать прямую c1x1 + c2x2 = f в направлении ее нормали с, то значение f будет убывать.

4_1.tif

Выберем достаточно большое f и будем перемещать прямую c1x1 + c2x2 = f в направлении –с. При этом линии уровня (с, х) = f вначале впервые коснется многоугольника, потом пересчет его и, наконец наступит момент, когда она коснется многоугольника в последний раз. Из рис. 4.1 следует, что прямая будет соприкасаться с многоугольником в точках А и В, причем в А значение целевой функции минимально.

Если же многоугольник не ограничен, то может быть два случая:

1) прямая, передвигаясь в направлении –с, все время пересекает многоугольник D; в этом случае линейная форма не ограничена на допустимой области и ее минимум равен –∞;

2) в результате передвижения вдоль направления –с прямая становится опорной к многоугольнику D.

Угловыми (крайними) точками выпуклого множества называются точки, не являющиеся выпуклой комбинацией двух различных точек этого множества. Угловые точки многогранника называются его вершинами.

Итак, геометрическая интерпретация подсказывает нам, что решением задачи ЛП может быть крайняя точка допустимого множества.

Теорема. Пусть допустимое множество D задачи линейного программирования (4.3)–(4.6) является многогранником. Тогда целевая функция (4.6) достигает своего минимума в вершине D. Если линейная форма принимает минимальное значение более чем в одной точке, то она достигает того же значения в любой точке, являющейся их выпуклой комбинацией.

Экономическая интерпретация задач линейного программирования

040.wmf

041.wmf

(4.8)

042.wmf

можно интерпретировать как задача производственного планирования. Оно состоит в определении такого набора х1, …, хn, интенсивностей технологических процессов, который удовлетворяют ограничениям по ресурсам, плановым заданиям по ресурсам, плановым заданиям и максимизирует суммарные доходы предприятия.

Двойственной задаче (4.8), т.е.:

и переменным можно придать следующий смысл.

043.wmf

Пусть ui ≥ 0 – удельная оценка i-го ингредиента, измеренная в тех же единицах, в которых измеряется доход (убыток) каждой технологии. Тогда представляет собой суммарную оценку всех затрат предприятия, связанных с работой по j-й технологии с единичной интенсивностью. Ограничения же двойственной задачи

044.wmf

являются вполне естественными, так как предполагается, что учтены все затрачиваемые факторы, в том числе вложенный и производство труд, и, следовательно, результат производства (доход или убыток) не может превышать затрат.

045.wmf

Целевая функция двойственной задачи выражает суммарную
оценку всех ингредиентов. Тогда задача, двойственная к общей задаче производственного планирования, может быть интерпретирована как задача нахождения таких удельных оценок всех ингредиентов, участвующих в производстве, для которых суммарная оценка минимальна. При этом оценки должны быть такими, чтобы суммарная оценка каждой технологии при единичной интенсивности была не меньше соответствующего дохода (убытка).

3. Задача распределения ресурсов. Аксиомы линейности

Задача распределения ресурсов. На предприятии, выпускающем неоднородную продукцию, необходимо определить уровни производства для каждого продукта в течение заданного периода времени. Уровни производства имеют ряд ограничений:

заданных линейными соотношениями.

В рамках этих ограничений необходимо оптимизировать целевую функцию.

Целью можно считать получение максимальной прибыли (целей может быть больше чем одна, что чаще всего имеет место).

Допустим, фирма реализует 1–4 технологических процессов. Технологические процессы 1 и 2 ориентированы на выпуск продукции А, 3 и 4 ориентированы на выпуск продукта В.

Расходы каждого технологического процесса определяются трудозатратами (в человеко-неделях), недельным потреблением материала Y и Z.

Поскольку затраты на разных технологических процессах не одинаковые, прибыльность процессов окажется разной.

Далее необходимо принять допущения относительно технологии производства, которые обеспечат линейность модели. Назовем их аксиомами линейности.

1. Делимость. Для каждого технологического процесса (Т.П.) суммарное потребление каждого из потребляемых ресурсов и прибыль пропорциональны объему выпускаемой продукции.

а) Т.е. все показатели Т.П. могут быть увеличены или уменьшены при сохранении их взаимной пропорциональности.

Для выпуска 10 единиц продукции x1 необходимо 10 человеко-недель, 70 единиц материала Y, 30 единиц материала Z. Доход составит 40 единиц.

б) Все производственно-экономические показатели могут принимать как целочисленные, так и вещественные значения.

При составлении производственного плана на неделю примем следующие производственно-экономические показатели и ограничения:

2. Аддитивность. Если значения каждой из управляющих переменных xj определенно, то полное количество каждого из потребленных ресурсов равняется сумме одноименных ресурсов, затраченных при реализации всех Т.П., а полная прибыль равна сумме прибылей всех Т.П.

Принятие аксиом делимости и аддитивности эквивалентно утверждению о представлении математической модели в виде линейных соотношений. А именно: доходы строго пропорциональны затраченным ресурсам.

В реальных ситуациях такое утверждение можно принимать лишь приближенно.

В рассматриваемом примере будем считать все три неравенства, которые можно составить, задаются линейными соотношениями:

4×1 + 5×2 + 9×3 + 11х4 ≡ max; (4.10)

1×1 + 1×2 + 1×3 + 1×4 ≤ 15 (колич. человеко-недель);

7×1 + 5×2 + 3×3 + 2×4 ≤ 120 (ед. материала Y); (4.12)

3×1 + 5×2 + 10×3 + 15×4 ≤ 100 (ед. материала Z).

Уравнение (4.11) определяет суммарную прибыль производственно-технологического процесса из табл. 4.1.

Источник

Читайте также:  Обоснование выбора используемого языка программирования
Оцените статью