Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Задачу линейного программирования можно сформулировать так



Найти

 (2.1)

при условиях

 (2.2)

и

 (2.3)

Ограничения (2.3) называют условиями неотрицательности. В данном случае все условия имеют вид неравенств. Иногда они могут быть смешанными, т. е. неравенства и равенства.

Определение 3. Допустимым множеством решений задачи (2.1)—(2.3) называется множество R(х) всех векторов х, удовлетворяющих условиям (2.2) и (2.3).

Очевидно множество R(х) представляет собой выпуклое многогранное множество или выпуклый многогранник.

Отметим, что поскольку minF(х) эквивалентен max[-F(х)], то задачу ЛП всегда можно свести к эквивалентной задаче максимизации.

Стандартная форма задачи линейного программирования

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

 

Допустимые базисные решения.

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

Основные теоремы линейного программирования

В основе методов решения задач линейного программирования лежат следующие теоремы.

Основная теорема линейного программирования, устанавливающая место нахождения оптимальных решений.

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

Из теоремы 2.1 следует, что при отыскании оптимального решения достаточно просмотреть только крайние точки допустимого множества решений R.

Теорема 2.2. Каждое допустимое базисное решение соответствует крайней точке R.

Справедлива также следующая теорема, обратная к теореме 2.2. Теорема 2.3. Если  — крайняя точка допустимого множества решений R, то соответствующее решение x0 — является допустимым базисным решением системы ограничений задачи линейного программирования.

Используя результаты теорем 2.1 и 2.2, можно сделать вывод, что для отыскания оптимального решения задачи линейного программирования достаточно перебрать лишь допустимые базисные решения. Этот вы­вод лежит в основе многих методов решения задач линейного программирования.

 

Симплекс-метод.

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

Алгоритм симплекс-метода состоит из следующих шагов:

Шаг 0. Используя линейную модель стандартной формы, определяют начальное допустимое базисное решение путем приравнивания к нулю n-m (небазисных) переменных. При этом если матрица системы ограничений задачи линейного программирования содержит единичную подматрицу порядка m, то это решение очевидно. Переменные, столбцы которых образуют эту единичную матрицу, являются базисными, остальные – свободными. Если же такой единичной матрицы нет, то для получения начального базисного решения вводятся искусственные переменные. Затем базисные переменные выражаются через небазисные из соответствующих ограничений и полученные выражения подставляются в целевую функцию. Если используются искусственные переменные, то применяются специальные методы (метод больших штрафов, двухэтапный метод).

Шаг 1. Из числа текущих небазисных переменных выбирается включаемая в новый базис переменная, увеличение которой обеспечивает улучшение значения целевой функции. Если такой переменной нет, вычисления прекращаются, так как полученное базисное решение оптимально. В противном случае переходят к шагу 2.

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

Шаг 3. С помощью метода исключения переменных или метода Гаусса-Жордана находится новое базисное решение, соответствующее новым составам базисных и небазисных переменных и осуществляется переход к шагу 1.

Пример. Решить симплекс-методом задачу

Максимизировать z=3x1+2x2

при ограничениях x1+2x2£ 6;

2x1+x2£ 8;

-x1+x2£ 1;

x1£ 2;

x1³ 0, x2³ 0.

Решение.


Поделиться:



Последнее изменение этой страницы: 2019-10-03; Просмотров: 206; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.011 с.)
Главная | Случайная страница | Обратная связь