![]() Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Математическое обеспечение оптимизационных моделей
Рассмотрим основные положения математического обеспечения оптимизационной модели на простейшей задаче математического программирования – задаче линейного программирования, особенность которой состоит в том, что целевая функция и функции ограничений имеют вид линейной функции. Стандартная формулировка общей задачи линейного программирования выглядит так: требуется найти экстремальное значение показателя эффективности (целевой функции)
при линейных ограничительных условиях, накладываемых на элементы решения:
………………………………………
где аij, bi, cj — заданные числа. Вектор Геометрическая интерпретация и графический метод решения задачи линейной оптимизации. Чтобы понять сущность получения оптимального плана, рассмотрим графический метод решения задачи линейного программирования на примере модели с двумя переменными
а11х1 + а12х2 ≤ b1 а21х1 + а22х2 ≤ b2 (3.1.11) ……………………………. аm1х1 + аm2х2 ≤ bm х1 ≥ 0, х2 ≥ 0 (3.1.12) Геометрически задача линейной оптимизации (3.1.10)-(3.1.12) представляет собой поиск такой точки многогранника решений (3.1.11)-(3.1.12), координаты которой доставляют линейной функции (3.1.10) наибольшее (наименьшее) значение, причем допустимыми решениями являются все точки многогранника решений. Графический метод решения состоит из следующих этапов. Этап 1. Сначала на координатной плоскости Ох1х2 строится допустимая многоугольная область (область допустимых решений, область определения), соответствующая ограничениям (3.1.10)-(3.1.12). На координатной плоскости Ох1х2 линейное уравнение вида аijхj+аijхj=bi изображается прямой, а линейное неравенство аijхj+аijхj ≤ bi или аijхj+аijхj ≥ bi является полуплоскостью. Условия неотрицательности определяют полуплоскости соответственно с граничными прямыми х1=0 и х2=0. Если система ограничений совместна, то полуплоскости, как выпуклые множества, пересекаясь, образуют общую часть, которая является выпуклым множеством и представляет собой совокупность точек, координаты каждой из которых составляют решение данной системы. Совокупность этих точек называют многоугольником решений. Это может быть точка, отрезок, луч, замкнутый многоугольник, неограниченная многоугольная область. Далее строится вектор-градиент линейной функции Этап 2. Прямая f =const, перпендикулярная вектору-градиенту, передвигается в направлении этого вектора в случае максимизации функции до тех пор, пока не покинет пределов многоугольной области. Предельная точка (или точки) области при этом движении и является точкой максимума целевой функции. Этап 3. Для нахождения координат точки максимума достаточно решить два уравнения прямых, получаемых из соответствующих ограничений и дающих в пересечении точку максимума. Значение f =B, найденное в получаемой точке, является максимальным. И затем останется выписать ответ, который будет иметь вид: В случае минимизации целевой функциипрямую f =const надо перемещать в направлении, противоположном вектору-градиенту (по направлению вектора-антиградиента). Ясно, что если прямая при своем движении не покидает допустимой области, то соответствующий максимум или минимум целевой функции не существует.
Пример 3.1.1. Фирма выпускает два вида древесно-стружечных плит ― обычные и улучшенные. При этом производятся две основные операции ― прессование и отделка. Требуется указать, какое количество плит каждого типа можно изготовить в течение месяца так, чтобы обеспечить максимальный доход при следующих ограничениях на ресурсы (материал, время, затраты): Таблица Исходные данные по имеющимся ресурсам (пример 3.1.1)
Если за каждые 100 обычных плит фирма получаем доход, равный 80 ден.ед., за каждые 100 плит улучшенного вида ― 100 ден.ед. Решение. Перейдем к построению математической модели поставленной задачи. Введем следующие обозначения. Пусть х1 ― количество партий в 100 плит обычного вида, изготавливаемых в течение месяца, х2 ― то же для плит улучшенного качества. Тогда ожидаемый доход модно записать так: f = 80 х1 + 100 х2 → max. (3.1.13) Для изготовления х1 партий в 100 плит обычного вида и х2 партий в 100 плит улучшенного вида требуется 5 х1 + 10 х2 килограммов дерева. Ясно, что полученное число не может превосходить количество материала, имеющегося в наличии, т.е. 1000 кг. Тем самым, ограничение на материал имеет вид: 5 х1 + 10 х2 ≤ 1000. Подобным же образом рассчитывается ограничения на время изготовления и затраты: прессование: 4 х1 +6 х2 ≤ 900, отделка: 4 х1 +4 х2 ≤ 600, затраты: 30 х1 +50 х2 ≤ 6000. Наряду с ограничениями на ресурсы нужно наложить условие неотрицательности на объемы выпуска плит: х1 ≥ 0, х2 ≥ 0. Итак подведем итог: требуется найти такие значения х1 и х2, подчиненные условиям
4 х1 + 6 х2 ≤ 900, 4 х1 + 4 х2 ≤ 600, (3.1.14) 30 х1 +50 х2 ≤ 6000, х1 ≥ 0, х2 ≥ 0, для которых f = 80 х1 + 100 х2 → max. Итак, соотношения (3.1.13) – (3.1.14) и есть математическая модель задачи поставленной в данном примере. Решим эту задачу графическим методом. Ограничения х1 ≥ 0, х2 ≥ 0 означают, что область решений будет лежать в первой четверти декартовой системы координат. Отметим эту область на рис. 3.1.1. Этап 1. Определим множество решений первого неравенства. Оно состоит из решения уравнения 5 х1 + 10 х2 = 1000 и строгого неравенства 5 х1 +10 х2 < 1000. Решением уравнения служат точки прямой 5 х1 + 10 х2 = 1000. Построим прямую по двум точкам (0; 100) и (200; 0), которые легко получить в результате последовательного обнуления одной из переменных: пусть х1=0, тогда х2= (1000 — 5*0)/10 = 100, пусть х2=0, тогда х1= (1000- 10*0)/5 = 200. На рисунке обозначим эту прямую цифрой I. Множество решений строгого неравенства — одна из полуплоскостей, на которую делит плоскость построенная прямая. Какая из них является искомой, можно выяснить при помощи одной контрольной точки. Если в произвольно взятой точке, не принадлежащей прямой, неравенство выполняется, то оно выполняется и во всех точках той полуплоскости, которой принадлежит контрольная точка, и не выполняется во всех точках другой полуплоскости. В качестве такой точки удобно брать начало координат. Подставим координаты (0; 0) в неравенство, получим 5*0+10*0 = 0 < 1000, т.е. оно выполняется. Следовательно, областью решения неравенства служит нижняя полуплоскость. Аналогичным образом построим области решения трех других неравенств 4 х1 +6 х2 ≤ 900, (0; 150) и (225; 0) на рисунке прямая II и берется нижняя полуплоскость; 4 х1 +4 х2 ≤ 600, (0; 150) и (150; 0) на рисунке прямая III и берется нижняя полуплоскость; 30 х1 +50 х2 ≤ 6000, (0; 120) и (200; 0) на рисунке прямая IV и опять берется нижняя полуплоскость. Внутренняя часть и является общей областью для всех неравенств. Это и будет область допустимых решений рассматриваемой задачи в виде замкнутого четырехугольника. Этап 2. Для определения направления движения к оптимуму построим вектор-градиент В нашем случае движение линии уровня будем осуществлять до ее пересечения с крайней точкой (пунктирная прямая f(max)), далее она выходит из области допустимых решений. Следовательно, именно в этой точке достигается максимум целевой функции. Этап 3. Найдем координаты этой точки, решив систему уравнений прямых пересечения в данной точке.
4 х1 +4 х2 = 600, х2 = 50 Вычислим значение целевой функции в данной точке, подставив найденные значения в выражение f = 80х1 + 100х2. Отсюда легко записать решение исходной задачи линейной оптимизации: х1 = 100, х2 = 50, fmax = 13000. Ответ:
Очевидно, что задача не будет иметь решений в случае, когда область допустимых решений есть пустое множество, т.е. — система ограничений задачи содержит противоречивые неравенства, и на координатной плоскости нет ни одной точки, удовлетворяющей этим ограничениям.
Рис 3.1.1. Графическое решение задачи.
Симплексный метод решения задачи линейной оптимизации. Трудность решения задачи линейного программирования заключается в том, что не все модели задач можно свести к равносильным моделям с двумя переменными, а с большим количеством ― практически невозможно решить. Наиболее распространенным методом решения задач линейного программирования является так называемый симплекс-метод. Из геометрической интерпретации задача линейной оптимизации видно, что экстремум функции достигается в угловой точке выпуклого многогранника, т.е. в области допустимых решений. Поэтому в основу симплекс-метода положена идея рассмотрения только крайних точек (вершин) многогранника, а не все бесконечное множество его точек. Симплексный метод это универсальный метод решения или метод последовательного улучшения планов. Суть этого метода заключается в том, что вначале получают допустимый вариант, удовлетворяющий всем ограничениям, но необязательно оптимальный (так называемое начальное опорное решение), оптимальность достигается последовательным улучшением исходного варианта за определенное число этапов (итераций). Нахождение начального опорного решения и переход к следующему опорному решению проводятся на основе применения метода Жордана-Гаусса для системы линейных уравнений в канонической форме, в которой должна быть предварительно записана исходная задача. Результат каждой итерации (включая данные задачи) удобно записывать в виде симплексной таблицы (вид которой представлен при решении задачи примера 3.1.2). Направление перехода от одного опорного решения к другому выбирается при этом на основе критерия оптимальности (целевой функции) исходной задачи. Предположим, что в симплексной таблице содержится некоторый опорный план (см. пример 3.1.2). Через конечное число шагов либо будет найден оптимальный план задачи, либо будет установлено неразрешимость задачи. Перебор опорных планов осуществляется в процессе перехода от одного базиса системы переменных к другому базису. При этом приходится определять переменные, участвующие в преобразовании базиса. Переменная, включаемая в базис в задаче максимизации, определяется по отрицательному коэффициенту в строке целевой функции симплексной таблицы. Если таких коэффициентов несколько, то выбирают максимальный по модулю. Такую переменную называют разрешающей, а столбец коэффициентов при ней разрешающим. Для выбора переменной исключаемой из базиса составляют симплексные отношения: это отношение свободного коэффициента к элементу такого же знака разрешающего столбца. Наименьшее из них и указывает уравнение (разрешающее), в котором содержится исключаемая переменная. После выбора разрешающего столбца и разрешающей строки определяется на их пересечении разрешающий элемент и осуществляется преобразование модели задачи к новому базису. Симплексное преобразование после выбора разрешающего элемента при табличных записях выполняется по следующим правилам: 1) Разрешающий элемент (ark) заменяют обратной величиной (т.е. 1/аrk); 2) Остальные элементы разрешающей строки делятся на разрешающий элемент (а'rj = 3) Остальные элементы разрешающего столбца делятся на разрешающий элемент и знак меняется на противоположный (a'ik = — 4) Остальные элементы таблицы преобразовываются по правилу прямоугольника: искомый элемент равен разности произведений элементов главной и побочной диагоналей, деленной на разрешающий элемент (по воображаемому прямоугольнику пересчета) (a'ij = Таким образом, получаем новый опорный план задачи в следующей симплексной таблице. А для того, чтобы определить является ли новый опорный план оптимальным, необходимо знать следующие признаки: Признак оптимальности задачи максимизации: Если все оценки индексной строки не отрицательны, то соответствующий план является оптимальным в задаче максимизации. Признак оптимальности задачи минимизации: Если все оценки индексной строки не положительны, то соответствующий план является оптимальным в задаче минимизации. В тех случаях, когда затруднительно найти первоначальный опорный план канонической формы задачи линейного программирования применяется метод искусственного базиса (М – метод). Решим симплексным методом следующую задачу. Пример 3.1.2. Предприятие выпускает четыре вида продукции П1, П2, П3 и П4. Для производства продукции оно располагает тремя ресурсами, запасы которых ограничены величинами 35, 30 и 40 единиц. Цена единицы готовой продукции соответственно равна 14, 10, 14 и 11 ден.ед. Удельные затраты на единицу продукции и цена единицы готовой продукции заданы в виде таблицы: Таблица Удельные затраты на единицу продукции (пример 3.1.2)
Требуется определить производственную программу предприятия, обеспечивающую максимальный доход. Решение: Составим математическую модель задачи. Пусть х1, х2, х3 и х4 ― искомые объемы производства продукции, а через f ― доход предприятия от производства и реализации всей продукции, который с учетом введенных обозначений определяется следующей функцией: f = 14х1+ 10х2+ 14х3+ 11х4 → max. (3.1.15)
4х1+ 2х2+ 2х3+ 3х4 ≤ 35, х1+ х2 + 2х3+ 3х4 ≤ 30, (3.1.16) 3х1+ х2+ 2х3+ х4 ≤ 40. По смыслу задачи объемы производства продукции не могут быть отрицательными, поэтому хj ≥ 0, (j= Введем в рассмотрение возможные остатки ресурсов: х5, х6, х7, или приведем модель задачи к каноническому виду и получим: f = 14х1+ 10х2+ 14х3+ 11х4 → max
х1+ х2 + 2х3+ 3х4 + х6 =30, (3.1.18) 3х1+ х2+ 2х3+ х4 + х7 = 40. хj ≥ 0, (j= Нам необходимо выделить начальный базис системы, т.е. выделить базисные переменные. Базисных переменных должно быть столько, сколько ограничений системы линейных уравнений, т.е. в нашем случае их должно быть три. Наши дополнительные переменные х5, х6, х7 и будут базисными, так как им соответствуют единичные векторы, которые образуют базис в трехмерном пространстве. Выразим эти переменные и получим:
х6 = 30 — (х1+ х2 + 2х3+ 3х4), (3.1.19) х7 = 40 – (3х1+ х2+ 2х3+ х4). Итак у нас х5, х6, х7 базисные переменные, а х1, х2, х3 и х4 будут свободными переменными. Приравнивая свободные переменные нулю мы получим х5 =35, х6 =30, х7 =40. Имеем некоторый допустимый план задачи Таблица 3.1
При решении задачи максимизации в строке целевой функции в столбцах свободных переменных не должно быть отрицательных коэффициентов. Мы видим, что в нашем случае, в столбцах свободных переменных в индексной строке присутствуют отрицательные коэффициенты, поэтому данный опорный план не является оптимальным. Будем улучшать его, переходя от одного базиса системы к другому. Выберем разрешающий столбец, как столбец, соответствующий наибольшей по модулю отрицательной оценке, т.е. max {│ -14│; │ -10│; │ -14│; │ -11│ } = 14. Из двух одинаковых оценок выберем одну, например, столбец соответствующий свободной переменной х1, он и будет разрешающим столбцом. Затем находим разрешающую строку по наименьшему симплексному отношению: min { На пересечении разрешающего столбца и разрешающей строки находим разрешающий элемент, выделяем его (мы выделили ячейку, в которой находится разрешающий элемент, равный 4). Строим следующую симплексную таблицу, меняя две переменные х1 и х5 местами и пересчитываем элементы по правилам симплексных преобразований.
Таблица 3.2
Анализируя полученные результаты, мы видим, что пока ещё не получен оптимальный план, так как не все оценки строки целевой функции принимают неотрицательные значения. Повторим наши преобразования, выбрав разрешающий элемент, равный 6/4. В результате получим следующую таблицу. Таблица 3.3
Еще раз проводя преобразования с элементами данной таблицы, мы получим оптимальный план, который находится в таблице 3.4. Таблица 3.4
Итак, в индексной строке последней таблицы нет ни одного отрицательного элемента, следовательно, содержащийся в ней план является оптимальным. Выпишем его, зная, что значения базисных переменных находится в столбце свободных коэффициентов, а все свободные переменные равны нулю. Ответ: Предприятию по оптимальному плану следует производить 5 единиц продукции вида П2, 12, 5 единиц продукции вида П3, продукции П1 и П4 выпускать не следует, при этом ресурсы Р1 и Р2 будут израсходованы полностью, а ресурс Р3 останется в количестве 10 единиц. Выручка предприятия при этом составит 225 ден.ед.
Для некоторых модификаций задачи линейного программирования могут быть использованы специальные методы решения, менее громоздкие, чем симплексный метод. Например, для транспортной задачи используют метод потенциалов. Теория двойственности в анализе оптимальных решений экономических задач. Не менее важным этапом, чем получение оптимального решения по модели задачи, является анализ модели и полученных результатов. В некоторых случаях анализ дает больше информации для принятия решения, чем само решение. И в этом нам поможет понятие двойственности. С каждой задачей линейного программирования тесно связана другая линейная задача, называемая двойственной. Пример 3.1.3. Сформулируем двойственную задачу для задачи об оптимальном планировании производства (пример 3.1.2). Предположим, что некоторая организация может закупить все ресурсы, которыми располагает предприятие. Необходимо определить оптимальные оценки на эти ресурсы, исходя из естественного условия, что покупающая организация стремится минимизировать общую оценку ресурсов. Нужно, однако, учитывать и тот факт, что за ресурсы покупающая организациядолжна уплатить сумму, не меньшую той, которую может, выручить предприятие при организации собственного производства продукции. Оставаясь в рамках производства в задаче примера 3.1.2 необходимо установить оценки используемых в производстве ресурсов с учетом их влияния на конечный результат производства. Решение: Обозначим эти оценки за единицу каждого вида ресурса соответственно через у1; у2 и у3 (Р1, Р2, Р3). Эти оценки для упрощения иногда называют внутренними ценами на ресурсы в условиях данного производства (теневыми ценами). Т.е. они представляют объективно необходимые затраты на производство продукции в данных условиях. Понятно, что при их определении следует руководствоваться следующими соображениями: 1. Оценка ресурсов, затрачиваемых на выпуск единицы готовой продукции должна быть не меньше оценки единицы готовой продукции, т.е.
П2: 2у1 + у2 + у3 ≥ 10 (3.1.20) П3: 2у1 + 2у2 + 2у3 ≥ 14 П1: 3у1 + 3у2 + у3 ≥ 11 2. Оценки по их смыслу должны выражаться не отрицательными числами, т.е. уi ≥ 0, i = 3. Для объективной оценки ресурсов необходимо требовать, чтобы общая стоимость всех ресурсов, находящихся в распоряжении предприятия, была возможно меньше, т.е. φ = 35 у1 + 30 у2 + 40 у3 → min (3.1.22) Итак, получили модель задачи: φ = 35 у1 + 30 у2 + 40 у3 → min
2у1 + у2 + у3 ≥ 10 (3.1.23) 2у1 + 2у2 + 2у3 ≥ 14 3у1 + 3у2 + у3 ≥ 11 уi ≥ 0, i = Компоненты оптимального плана двойственной задачи находятся в строке целевой функции последней симплексной таблицы решенной задачи. Чтобы правильно выписать компоненты оптимального плана двойственной задачи необходимо учесть соответствие между переменными двойственных задач, устанавливаемое для канонических форм, в котором базисным переменным одной задачи отвечают свободные переменные другой и наоборот. Используя данное соответствие из таблицы 3.6. находим значения двойственных переменных: у1 ~ х5 → у у4 ~ х1 → у у7 ~ х4 → у Таким образом, можно записать оптимальный план двойственной задачи:
Задача (3.1.20) — (3.1.22) называется двойственной к задаче (3.1.15) — (3.1.17). Эти две задачи представляют собой числовой пример пары симметричных двойственных задач. Система двойственных оценок (уi) тесно связана с конкретными условиями данного производства. С изменением этих условий меняется и система этих оценок. В общем виде модели двойственных задач имеют следующий вид:
Любую задачу внутри двойственной пары можно назвать прямой или исходной, тогда другая будет двойственной к ней. Анализируя модели задач двойственной пары, можно сделать следующие выводы о связях, существующих между элементами модели задач двойственной пары: 1. Коэффициентами целевой функции двойственной задачи, являются свободные члены ограничений прямой задачи, а свободными членами ограничений двойственной задачи — коэффициенты целевой функции прямой задачи. В двойственной задаче будет столько переменных, сколько ограничений в прямой и столько ограничений, сколько переменных в прямой задаче. Таким образом, каждому ограничению задачи отвечает соответствующая переменная двойственной задачи и наоборот. 2. Матрицы коэффициентов при переменных в двойственных задачах взаимно транспортированы. 3. Каждому ограничению ─ неравенству в двойственной задаче отвечает неотрицательная переменная, а каждому ограничению равенству ─ переменная произвольного знака и наоборот: каждой неотрицательной переменной ─ ограничение неравенство, а каждой переменной произвольного знака ─ ограничение равенство. При этом в задаче максимизации ограничения-неравенства имеют смысл«≤», ав задаче минимизации ─ «≥». 4. Если в прямой задаче функция целевая максимизируется, то в двойственной минимизируется и наоборот. Основные утверждения о взаимодвойственных задачах содержатся в следующих теоремах, называемых теоремами двойственности. Теорема 1 (основная).
Теорема 2 (о дополняющей нежесткости).
Теорема 3 (об оценках).
В пределах устойчивости двойственных оценок имеют место следующие свойства. 1. Двойственные оценки уi (i = С экономической точки зрения теорема 1 означает, что по оптимальному плану выпуска продукции все затраты внутри производства совпадают с оценкой готовой продукции, произведенной по этому плану, т.е. при оптимальном плане вся стоимость затрат внутри производства поглощается в стоимости готовой продукции. Т.е. затраты равны 35*3+30*4+40*0=225. Стоимость готовой продукции 14*0+10*5+14*12, 5+11*0=225. 2. Величина двойственной оценки того или иного ресурса показывает насколько возросло бы максимальное значение целевой функции, если бы объём данного ресурса увеличился бы на одну единицу (двойственные оценки измеряют эффективность малых приращений объёмов ресурсов в конкретных условиях данной задачи). В примере 3.1.2 увеличение ресурса Р1 на 1 единицу привело бы к росту максимальной суммы прибыли на 3 ден.ед. (y1 =3), а увеличение ресурса Р3 не повлияет на оптимальный план выпуска продукции и сумму прибыли. Указанное позволяет выявить направление ''расшивки'' узких мест, обеспечивающие получение наибольшего экономического эффекта, а также целесообразность изменения в структуре выпуска продукции с позиций общего оптимума. 3. Двойственные оценки отражают сравнительную дефицитность различных видов ресурсов в отношении принятого в задаче показателя эффективности. Оценки показывают, какие ресурсы являются более дефицитными (они будут иметь самые высокие оценки), какие менее дефицитными и какие совсем недефицитны (избыточны). В примере 3.1.2 недефицитным ресурсом является ресурс Р3 поскольку y3 = 0. Острее ощущается дефицитность ресурса Р2 (y2 = 4) − он более дефицитен, чем ресурс Р1 (y1 = 3). 4. Двойственные оценки позволяют определять своеобразные ''нормы заменяемости ресурсов'': имеется в виду не абсолютная заменяемость ресурсов, а относительная, т.е. заменяемость с точки зрения конечного эффекта и лишь в конкретных условиях данной задачи. Пример 3.1.4. Предположим, что из производства исключается 2 единицы дефицитного ресурса Р2. Понятно, что выручка снизится. Какое количество взаимозаменяемого ресурса Р1 следует ввести в производство с тем, чтобы возместить уменьшение выручки. Решение: Выручка (по третьей теореме двойственности) уменьшится на 2*у
5. Двойственные оценки служат инструментом определения эффективности отдельных хозяйственных решений (технических способов), с их помощью можно определять выгодность новых изделий, эффективность новых технологических способов: если Δ j = В условиях нашего экономического примера данные рассуждения интерпретируется так: в оптимальный план войдут только те виды продукции, затраты на которые внутри производства совпадут со стоимостью готовой продукции, и не войдут те виды, затраты на которые превышают стоимость готовой продукции. Таким образом, оценки позволяют оценить целесообразность выпуска тех или иных видов продукции, т.е. являются мерой убыточности при производстве не выгодных видов продукции. Пример 3.1.5. Проверить целесообразность выпуска продукции П5, если удельные затраты ресурсов составляют соответственно 5; 4; 6 условных единиц. Стоимость единицы продукции составляет а) 25 ден.ед.; б) 33 ден.ед. Решение. Найдем затраты на производство единицы продукции П5 5у а) 31 > 25 или Δ 5 =31-25=6. Следовательно производство продукта П5 по цене 25 ден.ед. не целесообразно. б) 31 < 33 или Δ 5 =31-33=-2. Следовательно производство продукта П5 по цене 33 ден.ед. целесообразно.
|