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

Исследование операций. Курс лекций. Учебное пособие

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

Если в канонической задаче положить все свободные переменные равными нулю, то базисные переменные будут равны неотрицательным свободным членам уравнений. Полученное таким способом решение ЗЛП называется базисным решением (планом) канонической задачи. При x1 = x2 = 0 из системы

(2.6) получим, что x3 = b1 0; x4 = b2 0 и базисное решение задачи будет иметь вид. При этом значение целевой функции Z(X )= c0 .

Из трех задач ЛП главная роль отводится канонической задаче, так как алгоритм симплекс-метода (речь о нем идет далее) непосредственно применяется к канонической задаче, а общая и основная задачи в конечном счете сводятся к канонической.

Рассмотрим ЗЛП в основном виде. Ведем более короткую запись ЗЛП в

матричной форме:

 

Z = CX min (max)

 

 

 

 

 

 

 

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

AX = B,

 

X 0 ,

 

 

 

 

 

 

 

 

 

 

 

 

a

 

a

 

a

 

 

 

 

x1

 

b1

 

 

11

12

a

1n

 

 

 

 

 

 

 

 

где C = (c1 ,c2 ,...,cn );

a

 

a

 

 

 

 

;

X

x2

 

b2

 

A =

21

 

22

 

2n

 

=

 

;

B =

.

 

...

. . .

.

 

 

 

 

...

 

...

 

 

a

m1

a

m2

a

 

 

 

 

x

 

 

b

 

 

 

 

 

 

mn

 

 

 

n

n

Векторная форма записи ЗЛП:

 

Z(X )= CX min (max)

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

A1 x1 + A2 x2 +... + An xn = A0 ; и условии X 0 ,

где CX – скалярное произведение векторов C = (c1 ,c2 ,...,cn ) и X = (x1 , x2 ,..., xn ), век-

a

 

 

a

 

 

a

 

 

b

 

 

11

 

12

 

1n

1

 

 

a21

 

a22

 

a2n

b2

 

(их называют векторами усло-

торы A1 =

 

;

A2 =

 

; ...; An =

 

;

A0 =

 

...

 

...

 

...

 

...

 

 

a

m1

 

a

m2

 

a

 

 

b

 

 

 

 

 

 

 

mn

n

 

вий) состоят соответственно из коэффициентов при переменных и свободных членов.

Пример. Привести к основному виду ЗЛП:

Z(X )= 3x1 + x2 + x3 min

x

+ 2x

2

+ x

3

= 7

 

1

 

 

 

 

 

x1 x2 + 2x3

1

x j 0, j =1, 2,3.

2x + x

2

2x

3

≥ −2

 

 

1

 

 

 

 

 

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

второе

 

и

 

 

третье

неравенства введем дополнительные переменные

x4 0 u

x5 0:

 

 

 

x

+ 2x

2

+ x

3

= 7

 

 

 

1

 

 

 

 

 

 

 

x1 x2 + 2x3 + x4 =1

x j 0, j =1, 2,3, 4,5 .

2x + x

2

2x

3

x

5

= −2

 

 

1

 

 

 

 

 

21

Целевая функция имеет вид Z(X )= 3x1 + x2 + x3 +0x4 +0x5 min .

Иногда возникает необходимость перейти в задаче от нахождения максимума к нахождению минимума, или наоборот. Для этого достаточно изменить знаки всех коэффициентов целевой функции на противоположные, а в остальном задачу оставить без изменения, т. е. Z max (Z )min .

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

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

Теорема 1. Множество всех допустимых решений системы ограничений задачи линейного программирования является выпуклым.

В частном случае, когда в систему ограничений входят только две переменные x1 и x2 , это множество можно изобразить на плоскости. Так как речь

идет о допустимых решениях ( x1 ≥ 0 и x2 0 ), то соответствующее множество

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

 

 

 

 

в

а

 

б

 

 

 

 

 

 

 

 

Рис. 2.1. Область допустимых решений:

а – неограниченная; б – замкнутая; в – противоречивая

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

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

22

Теорема 3. Каждому допустимому базисному решению задачи линейного программирования соответствует угловая точка многогранника решений, и наоборот, каждой угловой точке многогранника решений соответствует допустимое базисное решение.

Следствие т. 2 и т. 3: Если задача линейного программирования имеет оптимальное решение, то оно совпадает, по крайне мере, с одним из ее допустимых базисных решений.

2.3. Примеры задач линейного программирования

2.3.1. Задача об использовании ресурсов

При производстве двух видов продукции P1 и P2 используются три вида

сырья (ресурсов). Составить такой план выпуска продукции, при котором прибыль от ее реализации была бы максимальной.

Исходные данные представлены в табл. 2.1.

 

 

 

 

Таблица 2.1

Вид

Запас

 

Расход ресурса на единицу продукции

ресурса

ресурса

 

P1

P2

S1

20

2

 

1

S2

12

1

 

1

S3

30

1

 

3

Прибыль, усл. ден. ед.

40

 

50

Решение. Составим экономико-математическую модель задачи. Обозначим вектор переменных величин X (x1 , x2 ), где x1 – объем выпуска продукции 1-го

вида, x2 – объем выпуска продукции 2-го вида. Для их изготовления потребу-

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

2x1 + x2 20x1 + x2 12x1 +3x2 30

По смыслу задачи переменные x1 0; x2 0.

Суммарная прибыль от

реализации продукции (целевая функция):

Z(X )=C1x1 +C2 x2 max;

Z(X )= 40x1 +50x2 max .

Итак, экономико-математическая модель задачи: найти такой план выпуска продукции X (x1 , x2 ), удовлетворяющий системе ограничений, при котором функция Z(X ) принимает максимальное значение.

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

23

Обозначим x j

(j =1, 2,..., n) – число единиц продукции Pj , запланирован-

ной к производству;

bi (i =1, 2,..., m) – запас ресурса Si , aij – число единиц ре-

сурса, затрачиваемого на изготовление единицы продукции Pj (число aij часто называют технологическими коэффициентами); c j – прибыль от реализации единицы продукции Pj . Тогда экономико-математическая модель задачи об

использовании ресурсов в общей постановке примет вид:

найти такой план X (x1 , x2 ,..., xn ) выпуска продукции, удовлетворяющей системе

a

 

x

+ a

 

x

2

+.... + a

 

x

n

b

;

 

11

1

12

 

 

1n

 

 

1

 

 

a21 x1 + a22 x2 +.... + a2n xn

 

b2 ;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. . . . . . . . . . . . . . . .

 

 

a

 

x

+ a

m2

x

2

+.... + a

mn

x

n

b

;

 

m1 1

 

 

 

 

 

m

 

и условию

xi

0;i =1, 2,..., n ,

 

Z(X )= C1 x1 +C2 x2 +... +Cn xn принимает макси-

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

мальное значение.

 

 

 

 

 

 

 

 

2.3.2. Задача составления рациона (задача о диете, задача о смесях)

Имеются 3 вида корма, содержащие питательные вещества А, В, С. При откорме животных каждое животное ежедневно должно получать:

не менее 60 ед. питательного вещества А, не менее 50 ед. питательного вещества В, не менее 12 ед. питательного вещества С.

Содержание единиц питательного вещества в 1 кг каждого из видов корма приведены в табл. 2.2.

 

 

 

Таблица 2.2

Питательное

Количество ед. питательных веществ в 1 кг корма

вещество

1-й вид

2-й вид

3-й вид

А

1

3

4

В

2

4

2

С

1

4

3

Стоимость 1 кг

 

 

 

корма

9 усл. ед.

12 усл. ед.

10 усл. ед.

Составить дневной рацион, обеспечивающий получение необходимого количества питательных веществ при минимальных денежных затратах, если цена 1 кг корма первого вида составляет 9 усл. ед., второго вида – 12 усл. ед., третьего вида – 10 усл. ед.

Составим экономико-математическую модель задачи.

Обозначим x1; x2 ; x3 – количество кормов 1-го, 2-го и 3-го видов, входящих в

дневной рацион. Тогда этот рацион будет включать: x1 +3x2 + 4x3 – вещества А,

24

2x1 + 4x2 + 2x3 – вещества В, x1 + 4x2 + 3x3 – вещества С.

Так как содержание каждого питательного вещества должно быть соответственно не менее 60, 50 и 12 ед., то получим систему неравенств

x

+3x

2

+4x

3

60;

 

1

 

 

 

 

2x1 +4x2 +2x 50;

(2.7)

x

+4x

2

+3x 12.

 

1

 

 

 

 

 

Кроме того, переменные x1 0; x2 0; x3 0

(2.8)

Общая стоимость рациона составит Z(X )= 9x1 +12x2 +10x3 .

Итак, экономико-математическая модель задачи должна составить дневной рацион X = (x1 , x2 , x3 ), удовлетворяющий системе (2.7) и условию (2 .8), при ко-

тором целевая функция Z(X )= 9x1 +12x2 +10x3 min принимает минималь-

ное значение.

Задачу можно обобщить на любое количество переменных.

2.3.3. Задача об использовании мощностей (о загрузке оборудования)

Для производства двух видов изделий А и В используются три типа те х- нологического оборудования: S1 , S2 и S3 . Для производства единицы изделия А

оборудование первого типа используется в течение 1 ч, оборудование второго типа – 3 ч, оборудование третьего типа – 3 ч.

Для производства единицы изделия В оборудование первого типа используется в течение 2 ч, оборудование второго типа – 3 ч, оборудование третьего типа – 1 ч.

На изготовление всех изделий предприятие может использовать оборудование первого типа не более чем 32 ч, оборудование второго типа – 60 ч, оборудование третьего типа – 50 ч.

Прибыль от реализации единицы готового изделия А составляет 4 денежные единицы, а изделия В – 2 денежные единицы.

Составить план производства изделий А и В, обеспечивающий максимальную прибыль от их реализации. Исходные данные занесены в табл. 2.3.

 

 

 

 

 

Т а б л и ц а 2.3

Тип

 

Общий фонд

Затраты времени на обработку одного

 

рабочего времени

 

изделия, ч

оборудования

 

 

А

 

В

 

 

оборудования, ч

 

S1

 

32

1

 

2

S2

 

60

3

 

3

S3

 

50

3

 

1

Прибыль, ден. ед.

 

4

 

2

25

Составим экономико-математическую модель задачи. Под планом про-

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

 

Ведем переменные задачи: пусть x1 – объем выпуска изделия А,

x2 – объ-

ем выпуска изделия В.

 

 

 

 

Прибыль рассчитывается по формуле: Z = 4x1 + 2x2 .

 

 

Тогда математическая модель задачи будет иметь следующий вид.

 

1) Система ограничений:

 

 

x

+2x

 

32;

 

 

 

 

1

 

2

 

 

 

 

 

3x1 +3x2 60;

 

 

 

 

 

 

 

50.

 

 

 

 

3x1 + x2

 

 

 

 

 

2) По смыслу задачи

переменные x1 0; x2 0

(условие неотрицательно-

сти переменных).

 

 

 

 

 

3)

Целевая

функция

– суммарная прибыль

от реализации

изделий:

Z(x1 , x2 ) = 4x1 + 2x2

max .

 

 

 

Итак, экономико-математическая модель задачи: найти такой план выпуска изделий X (x1 , x2 ), удовлетворяющий системе ограничений, при котором функ-

ция Z(X ) принимает максимальное значение.

Тема 3. Геометрическая интерпретация задачи линейного программирования

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

При n = 2 общая задача имеет вид

a

 

x

+ a

 

x

2

b ;

 

 

11

1

12

 

 

 

1

 

 

 

a21 x1 + a22 x2 b2 ;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(3.1)

... . . . ... .

 

 

 

a

 

x

+ a

m

2

x

2

b

m

;

 

 

m1 1

 

 

 

 

 

 

x1 0; x2 0.

 

 

 

(3.2)

Z(X )= c1 x1 + c2 x2

max(min).

(3.3)

Каждое линейное неравенство системы (3.1) на плоскости x1 0x2 определяет полуплоскость с границей, задаваемой прямой

ai1x1 +ai2 x2 =bi ,(i =1,2,...,m); условие неотрицательности переменных x1 0

и x2 0 определяют полуплоскости справа от прямой x2 = 0 и вверх от прямой x1 = 0 , т. е. первую координатную четверть.

26

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

В случае несовместности системы (3.1) – (3.2) множество решений пусто. Целевая функция Z(X )= F(x1 , x2 ) является функцией двух переменных.

Градиент функции (grad Z ) – это вектор, координатами которого являются

частные производные данной функции, т. е. grad Z = Z ; Z .

x1 x2

Z

= c ;

Z

= c

2

, вектор

grad Z = (c ;c

2

)

перпендикулярен к линиям уровня и

 

 

1

x2

1

 

x1

 

 

 

 

 

 

направлен в сторону наибольшего возрастания функции.

Линии уровня функции двух переменных - множество параллельных прямых Z(X )= const , т.е. c1 x1 +c2 x2 = C , где С – произвольная постоянная.

Решение задачи (3.1) – (3.3) сводится к отысканию такой точки X * области решений, через которую проходит линия уровня Z(X )= const , соответ-

ствующая наибольшему (наименьшему) значению функции Z (X * )= Zmax (Zmin ).

Построив прямую c1 x1 +c2 x2 = const (например, при значении C = 0), параллельным переносом ее перемещают по области решений в направлении grad Z , если Z max или в противоположном направлении, если Z min

(рис. 3.1).

Рис. 3.1. Отыскание оптимума целевой функции

Оптимальное значение целевая функция принимает в угловых точках или на границе многоугольника решений (в соответствии со свойствами задачи ЛП).

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

27

Пример. Решить задачу линейного программирования графическим методом.

Математическая модель задачи:

 

x

 

 

 

10,

 

1

5x2

525,

12x1

 

3x

+10x

2

210,

 

1

 

 

 

 

3x

+5x

2

105,

 

1

 

 

 

x1 0, x2 0;

Z1 (X )= 9x1 10x2 max

Z2 (X )= 6x1 +5x2 min

Решение. Построим на плоскости (x1 0x2 ) область допустимых решений

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

1)x1 =10;

2)12x1 5x2 = 525;

3)3x1 +10x2 = 210;

4)3x1 +5x2 =105.

Проведем на плоскости эти прямые (рис. 3.2).

Рис. 3.2. Область допустимых решений

28

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

Подставим в первое неравенство x1 = 0 и x2 = 0, получим неверное нера-

венство 0 10 , следовательно, точка (0;0) – не принадлежит полуплоскости решений. Нужную полуплоскость можно пометить каким-либо способом (на рис. 3.2 – это стрелки).

Аналогично решаем три других неравенства.

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

Рис. 3.3. Решение задачи на максимум

29

Далее решим задачу на максимум:

 

x1

 

 

 

10,

12x

5x

2

525,

 

1

 

 

 

 

 

3x1

+10x2

210,

 

3x

+5x

2

105,

 

1

 

 

 

 

 

 

x2

0.

 

 

x1 0,

 

 

 

Z1 = 9x1

 

10x2

max

Найдем grad Z1 = (9;10), он указывает направление наискорейшего воз-

растания целевой функции.

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

Z(X )= 9x1 10x2 = 0 (рис. 3.3).

График линии уровня (построен штриховой линией) передвигается в направлении, обозначенном стрелкой, в направлении своего градиента до тех пор, пока не достигнет граничной точки многоугольника – точки D. Эта точка является точкой пересечения линий (2) и (3). Решая систему, составленную из

данных уравнений

12x

5x

 

= 525

(3,4)

 

1

 

2

= 210

(3,5)

 

3x1

+10x2

получаем координаты точки

140

; 7

 

, определяющие оптимальное решение

D

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

задачи X

 

140

;

 

 

 

 

 

 

 

 

 

 

 

 

 

* =

3

7 .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

При этом значение целевой функции составит

 

 

 

 

 

 

140

 

 

9 140 10 3 = 350 .

 

 

 

 

 

 

Z1 (X *)= Zmax

3

 

; 7 =

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Теперь решим задачу на минимум:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

 

 

 

10,

 

 

 

 

 

 

 

 

 

 

 

1

 

 

5x2

525,

 

 

Z

 

= 6x

 

+ 5x

 

min

12x1

 

.

x1 0, x2 0.

 

 

 

 

3x1

 

+10x2

210,

 

2

 

1

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3x

 

+5x

2

105,

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

Найдем grad Z2 = (6; 5), он указывает направление наискорейшего возрас-

тания целевой функции.

Найдем минимальное значение целевой функции на области решений. Для этого построим произвольную линию уровня, например Z(X )= 6x1 +5x2 = 0 . График линии уровня на рис. 3.4. показан штриховой лини-

ей, которая передвигается в направлении, противоположном обозначенному стрелкой, в направлении противоположном своему градиенту до тех пор, пока не достигнет граничной точки многоугольника – точки А. Эта точка является точкой пересечения линий (1) и (3). Решая систему, составленную из данных

30

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