Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЭММиМ_Оптимизационные модели и методы.doc
Скачиваний:
5
Добавлен:
01.05.2025
Размер:
148.99 Кб
Скачать

Симплексный метод

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

Представим систему ограничений в виде равенств:

1+3х23 = 440

1+4х2 + х4 = 393

1+5х2 + х5 = 450

целевая функция будет иметь вид:

L = 6x1 + 5x2 min.

Система ограничений представляет собой систему из 3 уравнений (m=3) с 5 неизвестными (n=5). Такая система имеет бесконечное множество решений.

В матричной форме система ограничений будет иметь вид:

x1A1 +x2A2 + … + xnAn = P0 ,

где Aj - векторы.

В системе, где m < n, (m – число уравнений, n – число неизвестных) m векторовAj линейно независимы.

Решение x = (x1, x2, …, xn), зависящее от любых m линейно независимых векторов, называется базисным решением системы (в нашем случае базис составляют m = 3 элемента решения, не равные нулю, а остальные 2 элемента решения равны нулю).

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

Очевидно, что одним из решений системы является

x = (0, 0, 440, 393, 450).

Такой план соответствует тому, что изделия А и В не выпускаются и L = 0.

Составим симплекс-таблицу.

Базис

Сj. баз

Сj

6

5

0

0

0

P0

A1

A2

A3

A4

A5

A3

0

440

3

1

0

0

A4

0

393

3

4

0

1

0

A5

0

450

3

5

0

0

1

Lj

0

0

0

0

0

0

j

-

-5

0

0

0




Определим Lj = cjбаз*aij. L1 = 4*0 + 3*0 + 3*0 = 0; L2 = 3*0 + 4*0 + 5*0 = 0;

Определим j = Ljcj. 1 = 0 – 6 = -6; 2 = 0 – 5 = -5; 3 = 0 – 0 = 0 …

Поскольку 1 и 2 <0, план не оптимальный. Перейдем к новому опорному плану.

Определим вектор, который будем вводить в базис (A1 или A2). Это должен быть вектор, для которого произведение j *j наименьшее.

j определяется как отношение свободных членов к положительным коэффициентам соответствующего вектора

Найдем j для A1:

1 = min (bi / aij) = min (440/4; 393/3; 450/3) = min(110; 131; 150) = 110.

Определим j для A2:

2 = min (bi / aij) = min (440/3; 393/4; 450/5) = min(146,6; 98,2; 90) = 90.

Определим произведения. Для A1 1 *1 = - 110 * 6 = -660. Для A2 2 *2 = 90 * 5 = -450. Наименьшее равно -660, таким образом, будем вводить в базис вектор A1.

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

Составим новую симплекс-таблицу.

Базис

Сбаз

Сj

6

5

0

0

0

P0

A1

A2

A3

A4

A5

A1

6

110

1

3 /4

1/4

0

0

A4

0

63

0

7/4

-3/4

1

0

A5

0

120

0

11/4

-3/4

0

1

Lj

660

6

18/4

6/4

0

0

j

0

-2/4

6/4

0

0

Вектор, вводимый в базис, должен иметь коэффициенты 1, 0 , 0. Для получения 1 в главной строке новой таблицы разделим все коэффициенты строки, соответствующей выводимому вектору A3 на 4. Чтобы второй элемент вектора A1 был равен 0 (строку, соответствующую вектору A4, получаем из его же строки в предыдущей таблице), умножим главную строку новой таблицы на –3 и сложим со второй строкой предыдущей таблицы.

-330

–3

-9/4

-3/4

0

0

393

3

4

0

1

0

63

0

7/4

-3/4

1

0

-330

–3

-9/4

-3/4

–0

-0

450

3

5

0

0

1

120

0

11/4

-3/4

0

1

Третью строку новой таблицы получим аналогично.

Таким образом, получен новый опорный план:

х = (110; 0; 0; 63; 120),

при котором функция цели

L = 6*110 + 5*0 = 660 – стала больше.

Проверим план на оптимальность, для чего определим Lj = cj*ai и j = Ljcj.

Поскольку 2= 2/4 > 0, план не оптимален.

Перейдем к новому опорному плану. Для этого введем в базис вектор A2, так как для него 2= -2/4 < 0.

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

1 = min (bi / aij) = min (110/3; 252/7; 480/11) = min(146,7; 36; 44) = 36.

Выводим вектор A4.

Составим новую таблицу.

Базис

Сбаз

Сj

6

5

0

0

0

P0

A1

A2

A3

A4

A5

A2

5

36

0

1

-3/7

4/7

0

A5

0

21

0

0

12/28

-44/28

1

A1

6

83

1

0

16/28

-12/28

0

Lj

678

6

5

9/7

2/7

0

j

0

0

9/7

2/7

0

Вектор, вводимый в базис, должен иметь коэффициенты 1, 0 , 0. Для получения 1 в главной строке новой таблицы разделим все коэффициенты строки, соответствующей выводимому вектору A4 на 7/4. Чтобы второй элемент вектора A2 был равен 0 (строку, соответствующую вектору A5, получаем из его же строки в предыдущей таблице), умножим главную строку новой таблицы на –11/4 и сложим с третьей строкой предыдущей таблицы. Для строки, соответствующей A1, главную строку умножим на –3/4.

-99

0

-11/4

33/28

–44/28

0

120

0

11/4

-3/4

0

1

21

0

0

12/28

-44/28

1

-27

0

-3/4

9/28

–12/28

0

110

1

3/4

1/4

0

0

83

1

0

16/28

-12/28

0

Получен новый опорный план:

х = (83; 36; 0; 0; 21),

при котором функция цели

L = 6*83 + 5*36 = 678 – стала больше. Это свидетельствует о том, что с каждым шагом мы приближаемся к оптимальному решению, то есть улучшаем план.

Проверим новый план на оптимальность, определив оценки оптимальности j.

Все j ≥ 0, поэтому полученный план оптимальный. Функция цели

Lmax = 678 грн.

Эта прибыль максимальна и может быть получена, если выпустить 83 изделия А и 36 изделий В.