ВІКІСТОРІНКА
Навигация:
Інформатика
Історія
Автоматизація
Адміністрування
Антропологія
Архітектура
Біологія
Будівництво
Бухгалтерія
Військова наука
Виробництво
Географія
Геологія
Господарство
Демографія
Екологія
Економіка
Електроніка
Енергетика
Журналістика
Кінематографія
Комп'ютеризація
Креслення
Кулінарія
Культура
Культура
Лінгвістика
Література
Лексикологія
Логіка
Маркетинг
Математика
Медицина
Менеджмент
Металургія
Метрологія
Мистецтво
Музика
Наукознавство
Освіта
Охорона Праці
Підприємництво
Педагогіка
Поліграфія
Право
Приладобудування
Програмування
Психологія
Радіозв'язок
Релігія
Риторика
Соціологія
Спорт
Стандартизація
Статистика
Технології
Торгівля
Транспорт
Фізіологія
Фізика
Філософія
Фінанси
Фармакологія


Симплексный метод решения задач линейного программирования

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

Основное содержание метода состоит в следующем:

1. Указать способ нахождения начального (опорного) решения.

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

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

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

 

Найти такие решения, которые максимизировали (минимизировали) бы целевую функцию Z (X) = c1x1 + c2x2 + … + cnxn .

Для нахождения опорного решения воспользуемся тем, что любое базисное решение является опорным. Найдем базисное решение методом Жордана-Гаусса. При этом разрешающие элементы для всех преобразований Жордана-Гаусса будем выбирать так, чтобы правые части уравнений системы оставались неотрицательными. Тогда найденное базисное решение будет допустимым, т.е. опорным.

Выразим x1, x2, …, xr (r£m) через остальные переменные:

 

где b¢1³ 0, b¢2³ 0,…, b¢r³ 0. Если ограничительные условия заданы неравенствами, то их можно преобразовать в равенства путем введения новых неотрицательных балансовых переменных. Ограничительные условия могут задаваться и смешанным образом, т.е. неравенствами и уравнениями, тогда указанным способом их можно свести только к уравнениям. Переменные (неизвестные) x1, x2, …, xr называются базисными, а весь набор { x1, x2,…, xr}- базисом, остальные переменные называются свободными, система ограничений называется системой, приведенной к единичному базису. Подставляя в целевую функцию вместо базисных переменных их выражения через свободные из системы, получим

Z (X) = gr+1xr+1 + gr+2xr+2 + … + gnxn.

 

Теперь, полагая все свободные переменные равными нулю, найдем значения базисных переменных: x1 = b¢1, x2 = b¢2 , …, xr = b¢r. Таким образом, решение ( b¢1, b¢2,…, b¢r, 0, …, 0) является допустимым- оно называется базисным. Решение задачи с помощью симплекс-метода распадается на ряд шагов, заключающихся в том, что от данного базиса Б мы переходим к другому базису Б¢ с таким расчетом, чтобы значение целевой функции увеличивалось или, по крайней мере, не уменьшалось.

Пример. Максимизировать целевую функцию Z (X) = -x4 + x5 при ограничениях: x1+ x4– 2x5 =1, x2 –2x4+ x5 =2, x3 + 3x4 + x5 =3.

Решение. Данная система уравнений-ограничений совместна, т.к. ранги матрицы системы

 

и расширенной матрицы

 

совпадают и равны 3. Следовательно, система уравнений совместна и три переменные (базисные) можно линейно выразить через две свободные переменные. Выразим, например, x1, x2 и x3 через x4 и x5, т.е. приведем систему к единичному базису:

Целевую функцию Z (X) =-x4 + x5 выразим через свободные переменные x4 и x5 (в данном примере функция уже выражена через них). Теперь при x4=0, x5=0 найдем значения базисных переменных: x1 =1, x2 =2, x3 =3, x4 =0, x5 =0, или (1, 2, 3, 0, 0). При найденном допустимом решении целевая функция Z (X) имеет значение 0, т.е. Z1 =0.

Теперь попытаемся увеличить значение Z1; увеличение x4 уменьшит Z1, т.к. перед x4 стоит отрицательный коэффициент, а увеличение x5 дает увеличение и Z1. Увеличим поэтому x5 так, чтобы x1 , x2 , x3 не стали отрицательными, оставив x4 =0. Из второго уравнения системы (15) следует, что x5 можно увеличить до 2. Таким образом, получаем следующие значения переменных: x1 =5, x2 =0, x3 =1, x4 =0, x5 =2 или (5, 0, 1, 0, 2).

Значение целевой функции Z (X) при этом допустимом решении равно Z2 =2, т.е. при втором шаге оно увеличилось.

Далее, примем за свободные переменные х2 и х4, т.е. именно те, которые в новом решении имеют нулевые значения. С этой целью из второго уравнения системы (15) выразим х5 через х2 и х4 и получим х5 =2 – х2 + 2х4. Тогда

 

Переменные х1, х3 и х5 образуют новый базис. Для увеличения значения Z(X) будем увеличивать х4. Из второго уравнения системы (16) видно, что при условии неотрицательности х3 значение х4 можно довести до х4 =1/5. При этом условии новое допустимое решение есть х1 =28 ¤ 5, х2=0, х3=0, х4 =1 ¤ 5, х5 =12 ¤ 5 или (28 ¤ 5, 0, 0, 1 ¤ 5, 12 ¤ 5). Значение целевой функции при этом Z3 =11 ¤ 5.

Выразим теперь х1, х4, х5 через свободные переменные х2 и х3:

 

Переменные х1, х4 и х5 образуют новый базис. Т.к. в последней целевой функции обе свободные переменные входят с отрицательными коэффициентами, то наибольшее значение Z (X) достигает при х2 =0, х3 =0. Это означает, что решение (28 ¤ 5,0,0,1 ¤ 5,12 ¤ 5) является оптимальным и Zmax =11/5.

 

© 2013 wikipage.com.ua - Дякуємо за посилання на wikipage.com.ua | Контакти