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

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

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

Не всегда задача сразу представлена в каноническом виде. Если в задаче содержатся ограничения вида неравенств (кроме ограничений на неотрицательность переменных), то необходимо заменить их равенствами, введя дополнительные неотрицательные переменные – балансовые переменные.

Задача. Найдите минимальное значение функции

 

f (x1, x2 , x3 ) = x1 + 2x2 + 2x3

(2.6)

при ограничениях

 

 

 

+ x2 + x3 ³ 4;

 

x1

(2.7)

x1 - x2 + x3 ³ 2;

 

³ 0, j = 1,2,3.

 

x j

 

Решение

Спомощью балансовых неотрицательных переменных перейдем

ксистеме уравнений. Во все неравенства, имеющие знак «≤», дополнительные переменные входят со знаком плюс, увеличивая левую часть исходного неравенства до равенства с правой частью. Анало-

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

Исходная система после преобразований примет следующий вид:

x

+ x

2

+ x - x

4

= 4;

 

1

 

3

 

 

 

 

x1

- x2

+ x3 - x5 = 2;

(2.8)

 

 

 

 

 

 

 

 

 

³ 0, j = 1,5.

 

 

 

x j

 

 

 

В качестве исходных базисных переменных выберем (произвольно) х1 и х2. Решим систему уравнений из (2.8) методом Гаусса:

1 1 1

−1

0

 

4

 

0

2 0

−1 1

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-1 1

0

-1

 

 

 

 

-1 1

0 -1

 

 

1

 

2

 

1

 

2

0

1

0

−1/ 2

1/ 2

 

1

 

x2 = 1 + 0,5x4 - 0,5x5 ;

 

 

 

 

 

 

 

 

 

 

 

 

(2.9)

 

0

1

 

 

 

 

 

3

 

 

 

 

1

-1/ 2

-1/ 2

 

 

x1 = 3 - x3 + 0,5x4 + 0,5x5 .

 

 

 

 

71

Приравняв к нулю свободные переменные, получим исходное опорное решение Х1=(3, 1, 0, 0, 0). Проверим его на оптимальность с помощью симплексной таблицы.

Базисн.

Ci

1

2

2

0

0

bi

перем.

 

 

 

 

 

x1

x2

x3

x4

x5

 

 

x2

2

0

1

0

–1/2

1/2

1

x1

1

1

0

1

–1/2

–1/2

3

 

j

0

0

–1

–3/2

1/2

5

 

 

 

 

 

 

 

 

Так как решается задача на минимум, все оценки j в точке оптимума должны быть неположительны. Так как 5=1/2>0, то значение целевой функции можно улучшить. Заменим базисную переменную х2 на х5.

Составим симплексную таблицу для новых базисных переменных.

 

Базисн.

Ci

1

2

2

0

0

bi

 

 

перем.

 

 

 

 

 

 

 

x1

x2

x3

x4

x5

 

 

 

 

 

x5

 

0

0

2

0

–1

1

2

 

 

x1

 

1

1

1

1

–1

0

4

 

 

 

 

j

0

–1

–1

–1

0

4

 

 

 

 

 

 

 

 

 

 

 

 

Все оценки

j неположительны, решение X2=(4; 0; 0; 0; 2) опти-

мально, fmin=f(X2)=4.

2.3. ДВОЙСТВЕННЫЕ ЗАДАЧИ

Каждой задаче линейного программирования на максимум может быть сопоставлена в соответствие задача линейного программирования на минимум, получаемая из исходной задачи путем определенных преобразований. Эти задачи называются симметричными или взаимно-двойственными [4].

Исходная задача (Ι):

 

F (x) = c1 x1 + c2 x2 + cn xn → max

(2.10)

72

при ограничениях:

a x + a x

+…+ a x

£ b ;

 

11 1 12 2

 

 

1n n

 

1

 

a21x1 + a22 x2 ++ a2n xn £ b2

;

 

 

 

 

 

 

 

 

 

 

(2.11)

………………………………

a

x + a

m 2

x

+…+ a

x

£ b .

 

m1 1

 

2

 

 

mn

n

 

m

Условие неотрицательности:

 

 

 

 

 

 

 

 

 

x1 ³ 0;

 

x2

³ 0;xn

³ 0.

(2.12)

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

Двойственная задача (ΙΙ):

Z ( y) = b1 y1 + b2 y2 …+ bm ym ® min

при ограничениях:

a y + a y

+…+ a y

m

³ c ;

 

11 1

12

2

 

1m

 

1

 

a21 y1 + a22 x2 ++ a2m ym ³ c2 ;

 

 

 

 

 

 

 

 

 

 

 

 

 

………………………………

 

a

y + a

m2

y

+…+ a

 

y

m

³ c

.

 

m1 1

 

 

2

 

mm

m

 

(2.13)

(2.14)

Условие неотрицательности:

 

y1 ³ 0; y2 ³ 0;ym ³ 0.

(2.15)

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

Двойственные задачи обладают следующими характеристиками.

1.В первой задаче определяется максимум линейной целевой функции, во второй – минимум.

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

73

3.Каждая из задач задана в стандартной форме, при этом в задаче максимизации все неравенства вида « ≤ », а в задаче минимизации все неравенства вида « ≥ ».

4.Матрицы коэффициентов при переменных в системе ограничений обеих задач являются транспонированными друг к другу.

5.Число неравенств в системе ограничений в одной задаче совпадает с числом переменных в другой задаче.

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

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

Исходной является задача (2.14)–(2.15) ( см. задачу II). Двойственной к ней будет задача:

Z ( y) = 15 y1 + 35 y2 - y3 + 2 y4

® min ,

(2.16)

3y1 +10 y2 - y3 - y4 ³ 1;

(2.17)

 

 

5 y1 + 7 y2 + y3 + y4 ³1.

 

 

Условие неотрицательности:

 

 

y1 ³ 0; y2 ³ 0; y3 ³ 0; y4

³ 0.

(2.18)

Решение двойственной задачи (2.16)–(2.18) может быть выполнено симплексным методом, как было показано выше.

2.4. ЦЕЛОЧИСЛЕННОЕ ПРОГРАММИРОВАНИЕ

При рассмотрении целого ряда задач финансового менеджмента и бизнеса необходимо учитывать требование целочисленности используемых переменных. Такие задачи называют задачами целочисленного программирования.

Задача целочисленного программирования формулируется следующим образом: найдите максимум или минимум функции

n

z(x) = c j x j (2.19)

j=1

74

при условиях

n

 

aij x j = bi , i = 1,2,..., m,

(2.20)

j=1

 

x j ³ 0, j = 1,2,..., n,

(2.21)

а также при дополнительном условии

 

x j – целые числа, j = 1,2,..., n.

(2.22)

Для решения задач целочисленного программирования используют метод отсечений (метод Гомори) и метод ветвей и границ [1, 5].

2.4.1.Метод Гомори

Воснове метода Гомори заложена идея, состоящая в том, что сначала решается задача линейного программирования (2.19)–(2.21) без учета условий целочисленности. Если полученное решение целочисленное, то оно принимается за оптимальный план задачи (2.19)–(2.22). Если же оптимальный план не является целочисленным, то есть решение содержит хотя бы одну дробную компоненту, то вводится дополнительное ограничение, учитывающее целочисленность компонент, а именно:

·любое целочисленное решение задачи ему удовлетворяет;

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

Для составления дополнительного ограничения используется последняя симплексная таблица.

Ограничение имеет вид:

m {h

}x

j

³ {f

},

kj

 

k

 

j=1

 

 

 

 

где {hkj } – дробная часть коэффициента при переменной x j в k -той строке последней симплексной таблице; {fk } – дробная часть значения базисной переменной xk .

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

75

Задача. Найдите оптимальное значение функции

 

z = x1 + 2x2 x3

при условиях

 

x1 + 4x2 − 2x3 + x4 = 6;

 

+ x2 + 2x3 - x5 = 6;

x1

 

 

2x1 - x2 + 2x3 = 4;

 

³ 0, x j - целые, j = 1,...,5.

x j

Решение

Приведем систему ограничений к единичному неотрицательному базису.

Б.п.

x1

x2

x3

x4

x5

 

bi

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-1

 

4

 

-2

1

 

 

0

 

 

 

 

 

6

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

1

 

2

0

 

 

-1

 

 

 

 

6

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

-1

 

2

0

 

 

0

 

 

 

 

 

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x1

1

 

3

 

0

1

 

 

0

 

 

 

 

 

10

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x2

-1

 

2

 

0

0

 

 

-1

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x3

1

 

1

 

1

0

 

 

0

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x1

5

 

 

0

 

0

1

 

 

3

 

 

 

 

 

7

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x2

1

 

1

 

0

0

 

 

1

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

x3

 

3

 

 

0

 

1

0

 

 

1

 

 

 

5

 

 

4

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4

 

 

 

 

x1

1

 

0

 

0

2

 

 

3

 

 

 

 

 

14

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5

 

 

5

 

 

 

 

 

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

0

 

1

 

0

1

 

 

1

 

 

12

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

5

 

 

5

 

 

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x3

0

 

0

 

1

3

 

7

 

 

2

 

 

 

 

 

 

 

 

5

 

 

 

 

 

 

 

 

 

 

 

 

10

 

10

 

 

 

 

 

14 12

2

 

 

36

 

Исходное опорное решение

x0

=

 

 

;

 

;

 

;0;0 ,

z(x0 ) =

 

.

 

 

 

5

 

 

 

5 5

5

 

 

 

76

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

Б.п.

ci

1

2

-1

0

 

 

 

0

 

 

 

 

bi

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x1

x2

x3

 

x4

 

x5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x1

1

1

0

0

2

 

 

 

3

 

 

 

14

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5

 

 

 

5

 

 

 

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

2

0

1

0

1

 

 

 

1

 

 

12

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

5

 

 

 

5

 

 

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x3

-1

0

0

1

3

 

7

 

 

2

 

 

 

 

 

 

 

 

 

5

 

 

 

 

 

 

 

10

 

10

 

 

 

 

 

0

0

0

11

 

9

 

 

 

 

36

 

 

j

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

10

 

 

10

 

 

 

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

14 12

2

 

 

 

 

36

 

x

опт =

 

 

;

 

;

 

;0;0 ,

z(

x

опт ) =

 

.

 

 

 

5

 

 

5 5

5

 

 

 

 

 

Оптимальное решение нецелочисленное:

 

x

 

=

14

 

,

x

 

=

 

12

,

x

 

=

2

.

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

5

 

 

 

 

5

 

3

 

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Выберем число с наибольшей дробной частью:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

14

4

 

 

12

 

2

 

 

2

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

=

 

 

,

 

 

 

=

 

 

 

,

 

 

 

 

=

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5

 

 

5

5

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5

 

 

 

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

14

 

=

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

=

14

 

 

Наибольшая дробная часть

 

 

 

 

,

поэтому принимаем

f1

 

 

,

 

 

5

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

соответствующую переменной x1 .

 

 

Из

 

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

выписываем строку, содержащую базисную переменную x1 :

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

3

 

 

14

 

 

 

2

 

2

 

3

 

 

 

3

 

 

14

 

 

 

4

 

 

 

 

 

 

 

 

 

 

 

 

 

x1 +

 

 

 

x4

+

 

 

x5

=

 

 

 

 

;

 

 

=

 

 

,

 

=

 

 

 

,

 

 

 

 

 

=

 

 

.

 

 

 

 

 

 

 

 

 

 

 

5

 

5

 

 

5

 

5

 

 

 

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5

 

 

 

 

 

5

 

 

5

 

 

 

 

 

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Дополнительное ограничение имеет вид:

2

x

 

 

+

3

x

³

4

,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5

 

 

4

5

 

5

 

5

 

 

 

 

 

 

 

 

 

 

 

с помощью балансовой переменной преобразуем неравенство в

уравнение

2

x

 

+

3

x

- x

=

4

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5

 

4

5

5

6

 

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

77

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

 

 

1

2

-1

0

 

 

0

 

 

0

 

 

 

 

 

 

 

Б.п.

ci

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

bi

 

x1

x2

x3

x4

x5

x6

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x1

1

1

0

0

2

 

 

3

 

 

0

 

 

14

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5

 

 

5

 

 

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

2

0

1

0

1

 

 

1

 

 

0

 

 

12

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

5

 

 

5

 

 

 

 

 

 

 

 

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x3

-1

0

0

1

3

 

7

 

0

 

 

 

2

 

 

 

 

 

 

 

 

 

 

5

 

 

 

 

 

 

 

10

 

10

 

 

 

 

 

 

 

 

 

 

 

 

0

0

0

2

 

 

3

 

 

-1

 

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5

 

 

5

 

 

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x1

1

1

0

0

0

 

 

0

 

 

1

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

2

0

1

0

1

 

 

0

 

 

1

 

8

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

3

 

 

 

 

 

 

 

 

 

3

 

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x3

-1

0

0

1

 

1

 

 

0

 

 

7

 

 

4

 

 

6

 

 

 

 

 

 

 

 

 

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

6

 

 

 

x

0

0

0

0

2

 

 

1

 

 

5

 

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5

 

 

 

 

3

 

 

 

 

 

 

 

 

 

3

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

0

0

1

 

 

0

 

 

3

 

 

6

 

 

 

j

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Среди оценок нет отрицательных, следовательно, получено оптимальное решение задачи:

 

 

8

4

4

 

 

 

 

xопт = 2;

 

;

 

;0;

 

;0 ,

z(xопт ) = 6.

3

 

 

 

 

3

3

 

 

 

 

Однако решение не является целочисленным:

x

 

=

8

 

, x =

4

, x =

4

.

2

 

 

 

 

 

 

 

 

3

 

3

3

 

 

5

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

8

 

=

2

4

 

=

1

 

 

 

 

 

 

 

 

,

 

 

 

.

 

 

 

 

3

 

 

 

 

 

3

 

3

 

 

3

 

 

78

 

8

 

=

2

 

 

Наибольшая дробная часть

 

 

 

 

,

поэтому второе

 

3

 

3

 

 

 

дополнительное ограничение составляется для второй строки последней симплексной таблицы:

 

 

 

 

 

 

x

 

+

1

x

 

-

1

x

 

=

8

.

 

 

 

 

 

 

 

 

 

 

2

 

4

 

 

6

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

3

 

3

 

 

 

 

 

Ограничение имеет вид:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

x

 

+

2

x ³

2

 

или

1

x

 

+

2

x

- x

=

2

.

 

 

 

 

3

 

 

 

 

3

4

3

5

 

 

 

 

 

3

 

4

 

3

 

5

7

3

 

Это ограничение добавляется в симплексную таблицу. Новая задача решается симплексным методом.

Б.п.

ci

1

2

-1

0

 

0

0

 

 

 

 

 

0

 

bi

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x1

x2

x3

x4

x5

x6

x7

 

 

 

 

 

x1

1

1

0

0

0

 

0

1

 

 

 

 

 

0

 

2

 

x

2

0

1

0

1

 

0

1

 

 

 

0

 

8

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

3

 

 

3

 

 

 

 

 

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x3

-1

0

0

1

 

1

 

0

7

 

 

 

0

 

 

4

 

6

 

 

 

 

 

 

 

 

3

 

 

 

 

 

 

 

 

6

 

 

 

 

 

 

 

x

0

0

0

0

2

 

1

5

 

 

0

 

4

 

 

 

 

 

 

 

 

 

 

 

5

 

 

 

 

3

 

 

3

 

 

 

 

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

0

0

1

 

0

2

 

 

 

 

 

-1

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

 

3

 

 

 

 

 

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x1

1

1

0

0

0

 

0

1

 

 

 

 

 

0

 

2

 

x2

2

0

1

0

0

 

0

-1

 

 

 

1

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x3

-1

0

0

1

0

 

0

3

 

 

1

 

1

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

x5

0

0

0

0

0

 

1

-3

 

 

 

2

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x4

0

0

0

0

1

 

0

2

 

 

 

 

 

-3

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

0

0

0

 

0

1

 

 

 

 

 

3

 

5

 

 

j

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

79

Оптимальное решение задачи:

xопт = (2;2;1;2;0;0;0).

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

xопт = (2;2;1;2;0) zmax = 5 .

2.4.2. Метод ветвей и границ

Задача. Контейнер объемом 5 м3 помещен на контейнеровоз грузоподъемностью 12 т. Контейнер требуется заполнить грузом двух наименований. Масса единицы груза m j (в тоннах), объем единицы

груза Vj (в м3), стоимость c j (в условных денежных единицах) приведены в таблице.

Вид груза

m j

Vj

c j

1

3

1

10

 

 

 

 

2

1

2

12

 

 

 

 

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

Решение. Математическая модель задачи имеет вид:

z(x) = 10x1 + 12x2 → max ,

3x1 + x2

≤ 12;

x + 2x

 

£ 5;

1

 

2

 

 

 

³ 0;

 

 

x1

 

 

x

 

³ 0;

 

 

 

2

 

 

 

 

 

, x2 - целые,

x1

где x1, x2 − число единиц соответственно первого и второго груза. Сначала решаем задачу графически, без условия целочисленно-

сти решения (рис. 2.2).

80

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