Вектор-градиент имеет координаты
Построим линии уровня 2x1 + 3 x2 = а. При а = 0 получим прямую 2x1 + 3x2 = 0, проходящую через точки (0; 0) (3; -2). Так как задача на максимум, то передвигаем линию уровня в направлении градиента. Предельной точкой (последней из области допустимых решений, с которой соприкасается линия уровня) является точка С. Значит, в ней достигается максимум функции F.
Найдём её координаты. Для этого решим систему:

Таким образом, необходимо выпустить 6 шт. изделий А1, 4 шт. изделий А2, чтобы получить прибыль 24 ден. ед.
2. Симплексный метод решения задачи линейного программирования. Двойственная задача
Для решения ЗЛП существует универсальный метод – метод последовательного улучшения плана или симплекс-метод, который состоит из двух вычислительных процедур: симплекс-метода с естественным базисом и симплекс-метода с искусственным базисом (М-метод).
Выбор конкретной вычислительной процедуры осуществляется после приведения исходной ЗЛП к каноническому виду.
Для применения симплекс-метода с естественным базисом ЗЛП должна содержать единичную подматрицу размером mxm – в этом случае очевиден начальный опорный план.
Исследование опорного плана на оптимальность, а также дальнейший вычислительный процесс удобнее вести, если условия задачи и первоначальные данные записать в таблицу:
Базис | Сб | Р0 | с1 | с2 | ... | сm | cm+1 | ... | cn |
Р1 | Р2 | ... | Рm | Рm+1 | ... | Рn | |||
Р1 | с1 | b1 | 1 | 0 | ... | 0 | a1m+1 | ... | a1n |
Р2 | с2 | b2 | 0 | 1 | ... | 0 | a2m+1 | ... | a2n |
... | ... | ... | ... | ... | ... | ... | ... | ||
Рm | сm | bm | 0 | 0 | ... | 1 | amm+1 | ... | amn |
F0 | 0 | 0 | 0 | Δm+1 | Δn |
В первом столбце таблицы "Базис" записывают базисные векторы данного опорного плана. Во втором столбце - коэффициенты целевой функции (с1, с2,…, сm) при базисных переменных (напомним, что в базис входят только векторы, образующую единичную подматрицу). В третьем столбце Р0 - правая часть ограничений задачи (базисные компоненты плана). Таким образом, перемножая элементы второго столбца таблицы со столбцом Р0, и суммируя эти произведения, мы получаем значение целевой функции (F0=с1*b1 + с2*b2+…+ сm*bm).
Первая строка симплексной таблицы содержит коэффициенты целевой функции нашей задачи и остается неизменной на протяжении всего решения (с1, с2,…, сm).
В центральной части таблицы записывают коэффициенты при неизвестных в ограничениях исходной задачи. При этом следует заметить, что коэффициенты при базисных переменных в ограничениях задачи составляют единичную подматрицу. Последнюю оценочную строку рассчитывают по формуле
.
После заполнения таблицы исходный опорный план проверяют на оптимальность. Для этого просматривают элементы последней (оценочной) строки. Возможны три варианта:
1. Все оценки
, значит на основании признака оптимальности получен оптимальный план.
2.
для некоторого j, и все соответствующие этому индексу величины
, значит целевая функция не ограничена сверху на множестве планов.
3.
для некоторых индексов j, и для каждого такого j по крайней мере одно из чисел
, значит можно перейти к новому опорному плану, при котором значение целевой функции увеличится.
Переход от одного опорного плана к другому осуществляется исключением из исходного базиса какого-нибудь из векторов и введением в него нового вектора. В качестве вводимого в базис вектора берётся один из векторов, для которых
. Пусть это будет вектор Рk.
Для определения вектора, подлежащего исключению из базиса находят
. Тогда выполняется условие неотрицательности значений опорного плана. Пусть этот минимум достигается при i=r. Тогда из базиса исключают вектор Рr, а число
называют разрешающим элементом.
Элементы новой симплекс-таблицы получают методом Жордана-Гаусса по формулам:
для i = r;
.
Значения нового опорного плана рассчитываются по формулам:
для i = r;
.
Процесс решения продолжают либо до получения оптимального плана, либо до установления неограниченности целевой функции. Если среди оценок оптимального плана нулевые только оценки, соответствующие базисным векторам, то это говорит о единственности оптимального плана. Если же нулевая оценка соответствует вектору, не входящему в базис, то в общем случае это означает, что оптимальный план не единственный.
Если единичной подматрицы не обнаруживается, то либо придется перебирать все подсистемы m уравнений с m неизвестными в надежде обнаружить неотрицательные решения, либо прибегнуть к методу искусственного базиса.
Метод искусственного базиса заключается в том, что для получения единичной подматрицы коэффициентов мы вводим в исходную задачу неотрицательные так называемые искусственные переменные и включаем их в целевую функцию с коэффициентом +М для задачи минимизации и с коэффициентом –М для задачи максимизации, где М>0 – сколь угодно большое число. Полученная задача называется расширенной по отношению к исходной. Искусственные переменные образуют начальное базисное решение. Применив симплекс-метод, необходимо вывести из базиса все искусственные переменные. Если удается доказать (или показать), что искусственные переменные полностью вывести из базиса невозможно, то это означает, что задача не имеет решения, то есть ее ограничения противоречивы.
Если на текущей итерации из базиса выводится искусственная переменная, то в следующей симплекс-таблице соответствующий ей столбец можно удалить, в дальнейших итерациях он не будет участвовать.
Двойственность в задачах линейного программирования
С каждой задачей линейного программирования тесно связана другая линейная задача, называемая двойственной; первоначальная задача называется исходной или прямой.
Исходная задача | Двойственная задача |
|
|
Две приведенные задачи образуют двойственную пару.
Двойственная задача по отношению к исходной составляется согласно следующим правилам:
1) целевая функция исходной задачи формулируется на максимум, а целевая функция двойственной задачи — на минимум, при этом в задаче на максимум все неравенства в функциональных ограничениях имеют вид "£", в задаче на минимум — вид "³";
2) матрица А, составленная из коэффициентов при неизвестных в системе ограничений исходной задачи и аналогичная матрица Ат в двойственной задаче получаются друг из друга транспонированием;
3) число переменных в двойственной задаче равно числу функциональных ограничений исходной задачи, а число ограничений в системе двойственной задачи — числу переменных в исходной задаче;
4) коэффициентами при неизвестных в целевой функции двойственной задачи являются свободные члены в системе ограничений исходной задачи, а правыми частями в ограничениях двойственной задачи — коэффициенты при неизвестных в целевой функции исходной задачи;
5) если переменная xj исходной задачи может принимать только положительные значения, то j-ое условие в системе ограничений двойственной задачи является неравенством вида "≥". Если же переменная может принимать как положительные, так и отрицательные значения, то j-ое условие представляет собой уравнение. И наоборот, если i-ое соотношение в системе ограничений исходной задачи является неравенством, то i-ая переменная двойственной задачи yi. В противном случае переменная yi может принимать как положительные, так и отрицательные значения.
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 |




