Различные формы записи ЗЛП (общая, каноническая, симметрическая). Переход к канонической форме злп

Скачать Viber 23.07.2019
Скачать Viber

Cтраница 1


Каноническая форма задачи характеризуется следующими тремя признаками: 1) однородная система ограничений в виде системы уравнений; 2) однородные условия неотрицательности, распространяющиеся на все переменные, участвующие в задаче, и 3) максимизация, линейной функции. В данной задаче нарушены все эти три признака.  

Каноническая форма задачи характеризуется следующими тремя признаками: 1) однородная система ограничений в виде системы уравнений; 2) однородные условия неотрицательности, распространяющиеся на все переменные, участвующие в задаче, и 3) максимизация линейной функции. В данной задаче нарушены все эти три признака.  

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

Рассмотрим каноническую форму задачи линейного программирования и метод исключения Жордана - Гаусса.  

Часто оказывается удобной каноническая форма задачи линейного программирования.  

При преобразовании системы ограничений к канонической форме задачи линейного программирования неравенства (12) и (13) должны быть заменены равенствами. Для этого вводят дополнительные неотрицательные переменные.  

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

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

Виды ограничений и методы их преобразования.  

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

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

Рассмотрим сначала вторую каноническую форму задачи на минимум.  

Алгоритм симплекс-мете да гложно разбить на два этапа. На первом этапе исключением переменных находят базисное решение. Если оно найдено, то мы имеем каноническую форму задачи для перехода ко второму этапу. На втором этапе проверяют, есть ли ограниченный оптимум. Если он существует то определяются допус - тимые базисные решанпя ив которых выбирается оптимальное.  

Если решается задача в канонической форме, то используется лишь часть введенных во втором параграфе операций. Так, для канонической задачи на минимум реализуется только случай пункта 3.4.1, и нужны лишь операции циклической перестановки столбцов, прогонки столбца через зону вертикального окаймления, исправления структурных нарушений и часть операции усечения. Симметрично, при решении канонической задачи на максимум реализуется только случай пункта 3.4.2, и нужны операции циклической перестановки строк, прогонки строки через зону горизонтального окаймления, исправления структурных нарушений и другая часть операции усечения. В остальном никакой дополнительной специфики каноническая форма задачи не добавляет.  

В первом параграфе введения было показано, как общую задачу линейного программирования можно свести к одной из канонических форм. Для канонически (же задач описание метода последовательного улучшения формально упрощается, так как отпадает необходимость рассматривать два варианта нарушения условий оптимальности и два варианта выхода в следующую вершину. Однако при этом увеличиваются размеры базисной матрицы А [ /, J ], которые в основном и определяют трудоемкость одного шата. Тем не менее, во многих случаях применение метода к каноническим формам задачи оказывается предпочтительным, и в этом параграфе мы остановимся на вариантах метода, получающихся для частных задач линейного программирования.  

Страницы:      1

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

1. Каноническая задача линейного программирования в координатной записи имеет вид

.

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

(1.7)

2. Каноническая задача линейного программирования в векторной записи имеет вид

(1.8)

где ,

.

3. Каноническая задача линейного программирования в матричной записи имеет вид

(1.9)

, .

Здесь А – матрица коэффициентов системы уравнений, Х – матрица-столбец переменных задачи, – матрица-столбец правых частей системы ограничений.

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

(1.10)

(1.11)

1.4. Приведение общей задачи линейного программирования
к канонической форме

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

Теорема 1.1. О замене неравенства уравнением. Каждому решению неравенства

соответствует единственное решение уравнения

и неравенства

, (1.14)

и, наоборот, каждому решению уравнения (1.13) и неравенства (1.14) соответствует единственное решение неравенства (1.12).

Доказательство. Пусть – решение неравенства (1.12), тогда . Обозначим разность правой и левой частей этого неравенства через , т. е.

Очевидно . Подставим в уравнение (1.13) вместо переменных значения , получим

Таким образом, удовлетворяет уравнению (1.13) и неравенству (1.14). Значит доказана первая часть теоремы.

Пусть теперь удовлетворяет уравнению (1.13) и неравенству (1.14), т. е. имеем

И

Отбрасывая в левой части последнего равенства неотрицательную величину , получаем

т. е. удовлетворяет неравенству (1.12). Теорема доказана.

Если неравенство , то дополнительную неотрицательную переменную необходимо ввести в его левую часть со знаком минус, т. е. .

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

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

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

Пример 1.1. Привести к каноническому виду задачу линейного программирования.

Д

Решение . Перейдем к задаче на отыскание максимума целевой функции. Для этого изменим знаки коэффициентов целевой функции. Для превращения в уравнения второго и третьего неравенств системы ограничений введем неотрицательные дополнительные переменные (на математической модели эта операция отмечена буквой Д). Переменная вводится в левую часть второго неравенства со знаком "+", так как неравенство имеет вид . Переменная вводится в левую часть третьего неравенства со знаком "-", так как неравенство имеет вид . В целевую функцию переменные вводятся с коэффициентом, равным нулю. Переменную , на которую не наложено условие неотрицательности заменяем разностью , . Записываем задачу в каноническом виде

В некоторых случаях возникает необходимость приведения канонической задачи к симметричной задаче. Рассмотрим пример.

Пример 1.2. Привести к симметричному виду задачу линейного программирования

В исходной постановке ЗЛП могут допускать различные формы записи. Так, в одних задачах требуется максимизировать целевую функцию, в других - минимизировать; некоторые линейные ограничения могут иметь вид равенств, другие - неравенств и т.д.

Для единообразия записи ЗЛП вводится так называемая каноническая форма записи.

Говорят, что ЗЛП записана в канонической форме, если она имеет следующий вид:

Отметим следующие особенности канонического вида:

1) требуется минимизировать целевую функцию;

2) все линейные ограничения, кроме требований неотрицательности переменных, имеют вид равенств;

    на все переменные наложены требования неотрицательности.

Покажем, что любую ЗЛП можно привести к каноническому виду.

1) Если в ЗЛП требуется максимизировать целевую функцию f, то положим g = - f и потребуем минимизировать функцию g. Получится новая ЗЛП, которая эквивалентна исходной в том смысле, что каждое оптимальное решение исходной задачи будет оптимальным решением новой задачи и наоборот.

2) Предположим, что в ЗЛП есть линейное ограничение вида

Заменим такое ограничение следующими двумя ограничениями:

где z - новая переменная, которая в целевую функцию вводится с коэффициентом 0 (иначе говоря, переменная z не вводится в целевую функцию). Значение переменной z можно не учитывать после решения новой задачи.

Аналогично, ограничение вида заменяется двумя ограничениями:

3) Предположим, что в ЗЛП не ко всем переменным предъявлено требование неотрицательности. Тогда каждую, переменную , на которую не наложено требование неотрицательности, представим в виде разности двух неотрицательных переменных:

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

Указанными приемами любая ЗЛП приводится к каноническому виду.

Пример. Привести к каноническому виду

Проделаем описанные действия.

Теперь получим ЗЛП в каноническом виде:

2.7. Понятие опорного плана злп.

Пусть ВЛП задана в каноническом виде (2.3 - 2.5). Предположим, что система уравнений (2.4) приведена к жордановой форме с неотрицательными правыми частями:

(2.6)

где
.

Приравняв к нулю свободные переменные, получим базисное решение системы (2.4)

В силу условия
набор значений переменных (2.7) удовлетворяет и ограничениям (2.5). Поэтому (2.6) являетсядопустимым решением ЗЛП .

Допустимое решение (2.7) называется базисным допустимым решением или опорным планом ЗЛП. При этом говорят, что переменные
образуют допустимый базис.

Оказывается, что если ОДР изобразить геометрически, то каждый опорный план ЗЛП соответствует вершине многогранника. Поэтому справедлива следующая теорема.

Если ЗЛП разрешима, то существует оптимальный опорный план.

3. Симплексный метод решения злп

3.1. Общая характеристика и основные этапы симплекс – метода

Основоположниками симплекс-метода являются советский математик Л.В. Канторович и американский математик Дж. Данциг.

Симплекс-методом можно решить любую ЗЛП или обнаружить ее неразрешимость. Многие специальные классы ЗЛП можно решить другими, более эффективными для этих классов методами. Однако преимущество симплекс-метода - его универсальность. Почти для всех ЭВМ разработаны стандартные программы для решения ЗЛП симплекс - методом.

Опишем общую идею симплекс-метода.

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

При решении ЗЛП симплекс-методом можно выделить следующие этапы:

1) приведение ЗЛП к каноническому виду;

2) приведение системы линейных уравнений к жордановой форме с неотрицательными правыми частями с одновременной проверкой на неразрешимость ЗЛП из-за противоречивости системы линейных ограничений;

3) исследование опорного плана на оптимальность;

4) исследование ЗЛП на неразрешимость из-за неограниченности снизу на ОДР целевой функции;

5) переход к новому, "лучшему" опорному плану.

Аналитическим методом решения задачи линейного программирования является симплексный метод. Для его применения задачи ЛП, представленные различным образом, должны быть приведены к канонической форме. Задача линейного программирования, записанная в виде (2.1.1)-(2.1.3), представляет собой развернутую форму записи общей задачи линейного программирования (ЗЛП).

Канонической задачей линейного программирования (КЗЛГТ) будем называть следующую задачу:

при ограничениях, имеющих вид равенств,


Если для задачи в форме (2.3.1)-(2.3.4) выполняется условие т = п, то ее решение сводится к решению системы уравнений

  • (2.3.2) . При этом задача не будет иметь решений, если условие
  • (2.3.3) не выполняется или система уравнений не имеет решения.

условие т

  • 1. Для перехода от задачи максимизации целевой функции (2.3.1) к задаче минимизации достаточно взять все коэффициенты Cj целевой функции с обратными знаками и решить полученную задачу на максимум. После нахождения максимума значение целевой функции надо взять с обратным знаком. Оптимальное решение останется прежним.
  • 2. Для перехода от ограничения типа «меньше или равно» к равенству в него необходимо со знаком «плюс»:

3. Для перехода от ограничения типа «больше или равно» к равенству в него необходимо ввести дополнительную неотрицательную переменную со знаком «минус»:

При этом в каждое неравенство вводится своя (п + /)-я дополнительная переменная.

  • 4. Все равенства, имеющие отрицательные свободные члены, делятся на -1, для того чтобы выполнялось условие (2.3.4).
  • 5. Если на некоторую переменнуюXj не накладывается условие неотрицательности , то делают замену переменных Xj=х". - х" x"j > 0, х"> 0. В преобразованной задаче все переменные неотрицательные.

Имеет место утверждение, что любую ЗЛП можно привести к канонической форме.

Пример 2.3.1. Преобразуем задачу, приведенную в примере 2.2.2, в каноническую форму. Целевая функция и система ограничений выглядят следующим образом:

Введем в первое неравенство дополнительную переменную jc 3 > 0 со знаком «плюс», во второе х 4 > 0 со знаком «минус» и в третье х 5 > 0 также со знаком «плюс». В результате получим систему ограничений задачи в канонической форме:

При этих ограничениях нужно найти максимальное значение функции:

Рассмотрим экономический смысл дополнительных переменных в канонической задаче оптимального использования ресурсов.

Пример 2.3.2. Задача оптимального использования ресурсов (задача о коврах) [ 17 J.

В распоряжении фабрики имеется определенное количество ресурсов трех видов: труд (80 человекодней), сырье (480 кг) и оборудование (130 станкочасов). Фабрика может выпускать ковры четырех видов. Информация о количестве единиц каждого ресурса, необходимых для производства одного ковра каждого вида, и о доходах, получаемых предприятием от единицы каждого вида товаров, приведена в табл. 2.3.1.

Требуется найти такой план выпуска продукции, при котором ее общая стоимость будет максимальной.

Экономико-математическая модель задачи Переменные : х х,х 2 , х 3 , х 4 - количество ковров каждого типа. Целевая функция - это общая стоимость продукции, которую необходимо максимизировать:

Ограничения по ресурсам :

Приведем задачу к канонической форме, вводя дополнительные переменные х 5 , х 6 и х 7:

Далее будет показано, что оптимальным планом выпуска продукции является вектор X* = (0; 30; 10; 0), значение целевой функции равно 150, т.е. для максимизации общей стоимости продукции необходимо выпустить 30 ковров второго вида и 10 ковров третьего вида. Подставим оптимальные значения вектора X в ограничения КЗЛП:

Получим, что ресурсы «труд» и «оборудование» используются полностью, ресурс «сырье» имеется в избытке:

В этом случае х в показывает, что сырья осталось 200 кг.

Таким образом, основные переменные x v х 2 , х 3 , х л означают количество ковров каждого типа, а дополнительные переменные х 5 , х 6 их 7 - объем недоиспользованных ресурсов.

Ответ. Оптимальный план выпуска продукции X* = (0; 30;

10; 0).

Планом , или допустимым решением , КЗЛП называется вектор X = (jc p х 2 ,..., х п ), удовлетворяющий условиям (2.3.2)-(2.3.4).

Если все компоненты базисного решения системы ограничений КЗЛП неотрицательны, то такое решение называется опорным решением или опорным планом. Число положительных компонент опорного плана не может превышать т.

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

Оптимальным планом или оптимальным решением ЗЛП называется план, доставляющий наибольшее (наименьшее) значение линейной функции (2.3.1).

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

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

Пример 2.3.3. Получить решение задачи об оптимальном использовании ограниченных ресурсов (решить ЗЛ П):

Решение. Приведем задачу к каноническому виду путем введения дополнительных переменныхх 3 , х 4 и х 5:

Найдем все опорные планы системы ограничений данной КЗЛП (л? - 5; /77 - 3); их количество не превышает 10:

Используя метод Жордана - Гаусса (см. параграф 1.4), выписываем все базисные решения системы уравнений (табл. 2.3.2).

Номер

базис

ного

решения

Базис

План

Среди десяти базисных решений пять опорных:

Указанным опорным планам на рис. 2.3.1 отвечают соответственно следующие угловые точки и значения ЦФ в них:


Рис. 2.3.1.

Согласно теории ЛП оптимальное решение содержится среди опорных планов.

Таким образом, максимальное значение, равное 2300, целевая функция достигает в точке В на опорном плане Х 5 = (70; 80; 0; 60; 0).

Ответ. Оптимальный план задачи: х { = 70, х 2 = 80, значение целевой функции f(x v х 2) = 2300.

Каноническая форма ЗЛП - задача линейного программирования вида ax = b где a - матрица коэффициентов, b - вектор ограничений.

Назначение сервиса . Онлайн-калькулятор предназначен для перехода ЗЛП к КЗЛП. Приведение задачи к канонической форме означает, что все ограничения будут иметь вид равенств, путем ввода дополнительных переменных.
Если на какую-либо переменную x j не наложено ограничение, то она заменяется на разность дополнительных переменных, x j = x j1 - x j2 , x j1 ≥ 0, x j2 ≥ 0.

Инструкция . Выберите количество переменных и количество строк (количество ограничений). Полученное решение сохраняется в файле Word .

Количество переменных 2 3 4 5 6 7 8 9 10
Количество строк (количество ограничений) 2 3 4 5 6 7 8 9 10
Как привести задачу линейного программирования к канонической форме

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

Математическая модель называется канонической , если ее система ограничений представлена в виде системы m линейно независимых уравнений (ранг системы r=m), в системе выделен единичный базис , определены свободные переменные и целевая функция выражена через свободные переменные. При этом правые части уравнений неотрицательны (b i ≥ 0).

Переменные, входящие в одно из уравнений системы с коэффициентом один и отсутствующие в других уравнениях называются базисными неизвестными , а все другие - свободными .

Решение системы называется базисным , если в нем свободные переменные равны 0, и оно имеет вид:
X баз = (0, 0; b 1 , …, b m), f(X баз) = c 0

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

Базисное решение называется опорным, если оно допустимо, т.е. все правые части уравнений системы (или неравенств) положительны b i ≥ 0.

Компактная форма канонической модели имеет вид:
AX = b
X ≥ 0
Z = CX(max)

Понятие допустимого решения, области допустимых решений, оптимального решения задачи линейного программирования .
Определение 1 . Вектор X, удовлетворяющий системе ограничений ЗЛП, в том числе и условиям неотрицательности, если они имеются, называется допустимым решением ЗЛП.
Определение 2 . Совокупность всех допустимых решений образует область допустимых решений (ОДР) ЗЛП.
Определение 3 . Допустимое решение, для которого целевая функция достигает максимума (или минимума), называется оптимальным решением.

Пример №1 . Следующую задачу ЛП привести к каноническому виду: F(X) = 5x 1 + 3x 2 → max при ограничениях:
2x 1 + 3x 2 ≤20
3x 1 + x 2 ≤15
4x 1 ≤16
3x 2 ≤12
Модель записана в стандартной форме. Введем балансовые неотрицательные переменные x 3 , x 4 , x 5 , x 6 , которые прибавим к левым частям ограничений-неравенств. В целевую функцию все дополнительные переменные введем с коэффициентами, равными нулю:
В первом неравенстве смысла (≤) вводим базисную переменную x 3 . Во 2-ом неравенстве смысла (≤) вводим базисную переменную x 4 . В третьем неравенстве вводим базисную переменную x 5 . В 4-м неравенстве - базисную переменную x 6 . Получим каноническую форму модели:
2x 1 + 3x 2 + 1x 3 + 0x 4 + 0x 5 + 0x 6 = 20
3x 1 + 1x 2 + 0x 3 + 1x 4 + 0x 5 + 0x 6 = 15
4x 1 + 0x 2 + 0x 3 + 0x 4 + 1x 5 + 0x 6 = 16
0x 1 + 3x 2 + 0x 3 + 0x 4 + 0x 5 + 1x 6 = 12
F(X) = 5x 1 + 3x 2 + 0x 3 + 0x 4 + 0x 5 + 0x 6 → max

Пример №2 . Найти два опорных решения системы
x 1 + 2x 4 - 2x 5 = 4
x 3 + 3x 4 + x 5 = 5
x 2 + 3x 5 = 2



Рекомендуем почитать

Наверх