Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Модели оптимизации. Математическое программирование, исследование операций. Учебно-методическое пособие

.pdf
Скачиваний:
0
Добавлен:
12.08.2026
Размер:
997 Кб
Скачать

Чтобы теперь выразить все переменные через свободные, в выражении для x4 выразим x1 и подставим полученное выражение во все остальные равенства.

x = −74

2

− 6

 

2

 

x

 

− 2

 

2

x

;

 

 

 

 

 

2

 

 

0

 

 

 

5

 

 

 

 

 

5

 

 

 

 

 

 

 

 

 

5

 

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

x = −11

+ 4

 

x

 

 

+

 

x

;

 

 

 

 

5

 

 

 

 

 

3

 

 

 

5

 

 

 

 

 

 

 

 

 

 

2

 

 

5

 

 

4

 

 

 

 

 

1

 

 

 

 

 

4

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

x = 5

x

 

 

+

x

;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

5

5

 

 

2

 

 

 

 

5

4

 

 

 

 

 

 

 

 

 

 

 

= −5

3

+ 1

2

 

 

 

 

 

 

+

2

 

 

 

 

 

 

 

 

x

x

 

 

 

x

.

 

 

 

5

 

 

 

 

 

 

 

 

 

5

 

 

 

 

 

 

 

 

5

 

 

 

2

 

 

 

5

 

 

4

 

 

 

 

Среди свободных членов в системе уравнений есть отрицательные элементы. Используем двойственный симплекс-метод. Выберем из них наибольший по модулю, а в его уравнении – любой отрицательный.

Чтобы теперь выразить все переменные через свободные, в выражении для x3 выразим x2 и подставим полученное выражение во все остальные равенства.

x = −91

3

 

 

 

−1

5

x −1

 

9

x

;

 

 

 

 

 

 

 

 

 

0

11

 

 

11

3

 

 

 

 

 

11

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7

 

 

 

 

 

 

 

5

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

x

 

= 2

 

 

+

 

 

 

x

x

;

 

 

 

 

 

 

 

 

22

 

 

 

 

 

 

 

 

 

2

11

 

 

 

 

 

3

 

11

 

 

4

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

3

 

 

 

 

 

 

 

 

 

 

 

 

x = 4

 

 

 

x +

 

 

x

;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

11

 

 

 

11

3

 

 

11

 

4

 

 

 

 

 

 

 

 

 

 

= −1

10

+

7

 

 

 

 

+

3

 

 

 

 

 

 

 

 

x

 

x

 

x

.

 

 

 

 

 

 

 

 

 

 

5

11

22

 

3

11

 

 

4

 

 

 

 

Среди свободных членов в системе уравнений есть отрицательные элементы. Используем двойственный симплекс-метод. Выберем из них наибольший по модулю, а в его уравнении – любой отрицательный.

121

Чтобы теперь выразить все переменные через свободные, в выражении для x5 выразим x3 и подставим полученное выражение во все остальные равенства.

x

 

= −100 −

4

x

 

 

 

− 4

4

x ;

 

 

4

 

 

0

 

 

 

 

 

 

 

 

 

7

 

 

 

 

 

7

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

5

 

 

 

 

x

 

= 4 −

x

 

+

 

x ;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

7

 

 

4

 

7

5

 

 

 

 

 

 

3

 

 

 

 

 

 

 

4

 

 

 

 

 

 

x = 3 +

 

x

 

 

 

x ;

 

 

 

 

 

 

 

 

 

 

1

7

 

 

 

4

 

7

 

 

5

 

 

 

 

 

= 6 −

6

 

 

 

 

+ 3

1

 

 

 

x

 

x

 

x .

 

 

 

 

 

 

 

3

7

 

 

3

 

 

 

 

7 5

 

 

В базисном столбце все элементы положительные.

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

Выражение для x0 не содержит положительных элементов. Найден оптимальный план.

Окончательный вариант системы уравнений:

x

 

= −100 −

4

x

 

 

 

− 4

4

x ;

 

 

4

 

 

0

 

 

 

 

 

 

 

 

 

7

 

 

 

 

 

7

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

 

 

 

 

 

 

 

4

 

 

 

 

 

 

x = 3 +

 

 

x

 

 

 

x ;

 

 

 

 

 

 

 

 

 

 

 

 

1

7

 

 

 

4

 

7

 

 

5

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

5

 

 

 

 

x

 

= 4 −

x

 

+

x ;

 

 

 

 

 

 

 

 

 

 

 

 

2

7

 

 

4

 

7

5

 

 

 

 

 

= 6 −

6

 

 

 

 

+ 3

1

 

 

 

x

 

x

 

x .

 

 

 

 

 

 

 

3

7

 

 

3

 

 

 

 

7 5

 

 

Оптимальный план можно записать так:

x2 = 4 ; x1 = 3; x3 = 6 ;

F (x) = 16 × 4 +12 ×3 + 0 × 6 =100.

122

Задача 2. Составьте математическую модель задачи и решите задачу с помощью симплекс таблиц, также решите двойственную задачу.

Фирма, специализирующаяся на производстве полуфабрикатов, выпускает три продукта, каждый из которых получается путем специальной обработки картофеля. Картофель фирма может закупить у двух поставщиков. При этом объемы продуктов 1, 2, 3, которые можно получить из 1 т картофеля первого поставщика, отличаются от объемов, получаемых из того же количества картофеля другого поставщика. Соответствующие данные приведены в таблице.

Условия производства полуфабрикатов

 

 

 

Ограничения

Продукт

Поставщик №1

Поставщик №2

на объем

выпускаемой

 

 

 

 

 

 

продукции

 

 

 

 

I

0,2

0,3

1,8

 

 

 

 

II

0,2

0,1

1,2

 

 

 

 

III

0,3

0,3

2,4

 

 

 

 

Относительная прибыль

5

6

 

 

 

 

 

Какое количество картофеля следует купить у каждого из поставщиков?

Решение

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

симплексной таблицы.

 

 

 

Определим

максимальное

значение целевой функции

F ( X ) = 5x1 + 6x2

при следующих условиях ограничений:

 

0,2x1 + 0,3x2

≤ 1,8;

 

 

 

 

≤ 1,2;

 

0,2x1 + 0,1x2

 

0,3x + 0,3x

2

≤ 2,4.

 

 

1

 

Для построения первого опорного плана систему неравенств приведем к системе уравнений путем введения дополнительных переменных (переход к канонической форме).

123

В 1-м неравенстве вводим базисную переменную x3 . В 2-м неравенстве вводим базисную переменную x4 . В 3-м неравенстве вводим

базисную переменную x5 .

 

 

 

 

 

 

 

 

 

0,2x1 + 0,3x2 + x3 + 0x4 + 0x5

= 1,8;

 

 

+ 0,1x2 + 0x3 + x4 + 0x5

= 1,2;

0,2x1

0,3x + 0,3x

2

+ 0x

+ 0x

4

+ x

= 2,4.

 

1

 

 

3

 

 

5

 

Матрица коэффициентов

A = (aij )

 

 

этой системы уравнений

имеет вид:

 

 

 

 

 

 

 

 

 

 

 

 

 

0,2

0,3

1

 

 

0

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

A = 0,2

0,1

0

 

1

0

.

 

 

 

0,3

0,3

0

 

 

0

1

 

 

 

 

 

 

 

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

Решим систему уравнений относительно базисных переменных

x3 , x4 , x5 .

Полагая, что свободные переменные равны 0, получим первый опорный план:

X1 = (0; 0;1,8;1,2; 2,4) .

Базисное решение называется допустимым, если оно неотрицательно.

Базис

В

x1

x2

x3

x4

x5

 

 

 

 

 

 

 

x3

1,8

0,2

0,3

1

0

0

 

 

 

 

 

 

 

x4

1,2

0,2

0,1

0

1

0

x5

2,4

0,3

0,3

0

0

1

 

 

 

 

 

 

 

F(X0)

0

-5

-6

0

0

0

 

 

 

 

 

 

 

Переходим к основному алгоритму симплекс-метода.

Итерация № 0

1. Проверка критерия оптимальности.

124

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

2. Определение новой базисной переменной.

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

3. Определение новой свободной переменной.

Вычислим значения Di по строкам как частное от деления: bi / ai 2 , и из них выберем наименьшее:

1,8

1,2

 

2,8

 

= 6 .

min

 

;

 

;

 

 

 

 

 

 

0,3

0,1

0,3

 

 

Следовательно, 1-я строка является ведущей.

Разрешающий элемент равен (0,3) и находится на пересечении ведущего столбца и ведущей строки.

Базис

В

x1

x2

x3

x4

x5

min

x3

1,8

0,2

0,3

1

0

0

6

x4

1,2

0,2

0,1

0

1

0

12

 

 

 

 

 

 

 

 

x5

2,4

0,3

0,3

0

0

1

8

 

 

 

 

 

 

 

 

F(X1)

0

-5

-6

0

0

0

0

 

 

 

 

 

 

 

 

4. Пересчет симплекс-таблицы.

Формируем следующую часть симплексной таблицы. Вместо переменной x3 в план 1 войдет переменная x2 .

Строка, соответствующая переменной x2 в плане 1, получена в результате деления всех элементов строки x3 плана 0 на разрешающий элемент РЭ = 0,3.

На месте разрешающего элемента в плане 1 получаем 1. В остальных клетках столбца x2 плана 1 записываем нули. Таким образом, в новом плане 1 заполнены строка x2 и столбец x2 .

Все остальные элементы нового плана 1, включая элементы индексной строки, определяются по правилу прямоугольника.

125

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

НЭ = СЭ − ( А В) / РЭ,

где СЭ – элемент старого плана; РЭ – разрешающий элемент (0.3); А и В – элементы старого плана, образующие прямоугольник с элементами СЭ и РЭ.

Представим расчет каждого элемента в виде таблицы. После преобразований получаем новую таблицу.

Базис

В

x1

x2

x3

x4

x5

 

 

 

 

 

 

 

x2

6

0,67

1

3,33

0

0

 

 

 

 

 

 

 

x4

0,6

0,13

0

-0,33

1

0

 

 

 

 

 

 

 

x5

0,6

0,1

0

-1

0

1

 

 

 

 

 

 

 

F(X1)

36

-1

0

20

0

0

 

 

 

 

 

 

 

Итерация № 1

1. Проверка критерия оптимальности.

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

2. Определение новой базисной переменной.

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

3. Определение новой свободной переменной.

Вычислим значения Di по строкам как частное от деления: bi / ai1

и из них выберем наименьшее:

 

 

 

 

 

 

6

0,6

0,6

 

= 4,5.

min

 

;

 

;

 

 

 

 

 

0,67

0,13

0,1

 

 

Следовательно, 2-я строка является ведущей.

Разрешающий элемент равен (0,13) и находится на пересечении ведущего столбца и ведущей строки.

126

Базис

В

x1

x2

x3

x4

x5

min

 

 

 

 

 

 

 

 

x2

6

0,67

1

3,33

0

0

9

 

 

 

 

 

 

 

 

x4

0,6

0.13

0

-0,33

1

0

4,5

 

 

 

 

 

 

 

 

x5

0,6

0,1

0

-1

0

1

6

 

 

 

 

 

 

 

 

F(X2)

36

-1

0

20

0

0

0

 

 

 

 

 

 

 

 

4. Пересчет симплекс-таблицы.

Формируем следующую часть симплексной таблицы. Вместо переменной x4 в план 2 войдет переменная x1 .

Строка, соответствующая переменной x1 в плане 2, получена в результате деления всех элементов строки x4 плана 1 на разрешающий элемент РЭ = 0.13.

На месте разрешающего элемента в плане 2 получаем 1. В остальных клетках столбца x1 плана 2 записываем нули.

Таким образом, в новом плане 2 заполнены строка x1 и столбец x1 . Все остальные элементы нового плана 2, включая элементы ин-

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

 

B

 

 

x1

 

x2

 

 

x3

 

x4

x5

 

 

 

 

 

0.13•0.67

0•0.67

 

-0.33•0.67

1•0.67

0•0.67

 

 

 

 

0.67-

0.13

= 0.01

1- 0.13

= 1

3.33-

0.13

= 4.99

0- 0.13 = -5.02

0- 0.13

= 0

0.6 / 0.13 = 4.5

0.13 / 0.13 = 1

0 / 0.13 = 0

-0.33 / 0.13 = -2.5

1 / 0.13 =

0 / 0.13 = 0

 

 

 

 

 

 

 

 

 

 

 

7.5

 

 

 

0.6•0.1

 

 

0.13•0.1

0•0.1

 

-0.33•0.1

 

1•0.1

0•0.1

 

0.6-

0.13

= 0.15

0.1- 0.13

= 0

0- 0.13 = 0

-1-

0.13

= -0.75

0- 0.13 = -0.75

1- 0.13 = 1

 

 

 

 

 

 

 

 

 

 

 

0.6•(-1)

 

0.13•(-1)

 

0•(-1)

 

-0.33•(-1)

 

1•(-1)

0•(-1)

 

36-

0.13

= 40.5

-1-

0.13

= -0.03

0- 0.13

= 0

20-

0.13

= 17.53

0- 0.13 = 7.5

0- 0.13

= 0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

После преобразований получаем новую таблицу.

Базис

В

x1

x2

x3

x4

x5

 

 

 

 

 

 

 

x2

3

0

1

5

-5

0

 

 

 

 

 

 

 

x1

4,5

1

0

-2,5

7,5

0

x5

0,15

0

0

-0,75

-0,75

1

 

 

 

 

 

 

 

F(X2)

40,5

0

0

17,5

7,5

0

 

 

 

 

 

 

 

127

Проверка критерия оптимальности: cреди значений индексной строки нет отрицательных. Поэтому эта таблица определяет оптимальный план задачи.

Окончательный вариант симплекс-таблицы.

Базис

В

x1

x2

x3

x4

x5

x2

3

0

1

5

-5

0

 

 

 

 

 

 

 

x1

4,5

1

0

-2,5

7,5

0

 

 

 

 

 

 

 

x5

0,15

0

0

-0,75

-0,75

1

 

 

 

 

 

 

 

F(X3)

40,5

0

0

17,5

7,5

0

 

 

 

 

 

 

 

Оптимальный план можно записать так:

x1 ==x2x5 =

F = 5

4,5;

3;

0,15.

× 4,5 + 6 ×3 = 40,5.

Составим двойственную задачу к прямой задаче.

Решение двойственной задачи дает оптимальную систему оценок ресурсов.

Выясним экономический смысл двойственной задачи. Заметим, что каждое слагаемое в левой части ограничений должно измеряться в тех же единицах, что и правая.

1,8 y1 + 1,2 y2 + 2,4 y3 → min;

 

+ 0,2 y2 + 0,3y3 ³ 5;

0,2 y1

 

+ 0,1y2 + 0,3y3 ³ 6;

0,3y1

y , y

, y

3

³ 0.

1 2

 

 

Переменные y j называются допустимым решением двойственной задачи. Переменные y j называются оптимальными, если они допусти-

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

мальный план двойственной задачи.

128

Из первой теоремы двойственности следует, что Y = C A−1 . Составим матрицу A из компонентов векторов, входящих в опти-

мальный базис

 

0,3

0,2

0

 

 

 

 

 

 

A =

0,1

0,2

0

.

 

0,3

0,3

1

 

 

 

Определив обратную матрицу А-1 через алгебраические дополнения, получим

5

− 5

0

 

 

− 2,5

 

 

 

A−1 =

7,5

0

.

 

− 0,75

− 0,75

1

 

 

 

Как видно из последнего плана симплексной таблицы, обратная матрица A-1 расположена в столбцах дополнительных переменных.

 

5

− 5

0

 

Тогда Y = C A−1 = (6,5,0)×

− 2,5

7,5

0

= (17,5;7,5;0).

 

 

− 0,75

− 0,75

1

 

 

 

 

Оптимальный план двойственной задачи равен:

y

= 17,5;

 

 

 

 

1

 

 

 

 

 

y2 = 7,5;

 

 

 

 

 

= 0.

 

 

 

 

y5

 

 

 

 

Z (Y ) =1,8 ×17,5 +1,2 × 7,5 + 2,4 × 0 = 40,5 .

Задача 3. Решить задачу, используя метод Гомори.

7x1 + 2x2

- x3 = 14;

(3.6)

4x

+ 5x

2

³ 20;

(3.7)

 

1

 

 

 

 

, x2 целые

(3.8)

x1

 

³ 0;

 

 

(3.9)

x1

 

 

 

 

 

x

³ 0.

 

 

(3.10

1

 

 

 

 

 

Решим прямую задачу линейного программирования методом Гомори.

129

Определим

минимальное

значение

целевой

функции

F (x) = 3x1 + 2x2

при следующих условиях ограничений.

 

 

7x1

+ 2x2 x3 = 14;

 

 

 

 

+ 5x2

³ 20.

 

 

 

4x1

 

 

Для построения первого опорного плана систему неравенств приведем к системе уравнений путем введения дополнительных переменных (переход к канонической форме).

В 2-м неравенстве вводим базисную переменную x4 со знаком минус.

7x1

+ 2x2 x3 + 0x4

= 14;

 

+ 5x2 + 0x3 - x4

= 20.

4x1

Введем искусственные переменные x: в 1-м равенстве вводим переменную x5; в 2-м равенстве вводим переменную x6.

7x1 + 2x2 x3 + 0x4 + x5 + 0x6

= 14;

 

+ 0x3 - x4 + 0x5 + x6

= 20.

4x1 + 5x2

Для постановки задачи на минимум целевую функцию запишем

так:

 

 

 

 

 

 

 

F ( X ) = 3x1 + 2x2 + Mx5 + Mx6

→ min .

 

 

 

Из уравнений выражаем искусственные переменные:

x = 14 − 7x − 2x

 

+ x ;

 

 

5

 

1

 

2

3

 

 

x6 = 20 - 4x1 - 5x2 + x4 ,

 

которые подставим в целевую функцию:

 

 

 

F ( X ) = (3 −11M )x1 + (2 − 7M )x2 + Mx4 + 34M → min .

Матрица коэффициентов A = (aij

) этой системы уравнений имеет

вид:

 

 

 

 

 

 

 

7

2

−1

0

 

1

0

 

A =

 

 

 

 

 

.

 

5

0

-1

0

 

 

4

1

 

Решим систему уравнений относительно базисных переменных

x5, x6.

130

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]