Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Системный анализ. Учебное пособие для бакалавров и специалистов
.pdf
nn
xcxcxcF ...
2211
,...
,...
,...
,...
,...
2211
11212111
2211
22222121
11212111
nnmnmm
knnkkk
knknkk
nn
nn
bxaxaxa
bxaxaxa
bxaxaxa
bxaxaxa
bxaxaxa
);,1(0 nlljx
i
nn
ybybybF ...
2211
*
,...
,...
,...
,...
,...
2211
11212111
2211
22222112
11221111
mmmnnn
lmmlll
kmmlll
mm
mm
cyayaya
cyayaya
cyayaya
cyayaya
cyayaya
);,1(0 mkkiy
i
2.2.1.1. Двойственная задача
С каждой задачей ЛП можно определенным образом сопоставить
некоторую другую задачу ЛП, называемую двойственной по
отношению к исходной или прямой. Дадим определение
двойственной задачи по отношению к общей задаче ЛП, состоящей в
нахождении максимального значения функции
при условиях
.
Определение 1. Задача, состоящая в определении минимального
значения функции
при условиях
,
называется двойственной по отношения к общей задаче.
Эти задачи образуют пару задач, называемую в ЛП двойственной
парой. Сравнивая две сформулированные задачи, видим, что
двойственная задача по отношению к исходной составляется согласно
следующим правилам.
41

mnmm
n
n
aaa
aaa
aaa
A
21
22221
11211
mnnn
m
m
T
aaa
aaa
aaa
A
21
22212
12111
j
x
j
j
x
j
i
i
0iy
i
y
1. ЦФ исходной задачи задается на максимум, а ЦФ двойственной –
на минимум.
2. Матрица
,
составленная из коэффициентов при неизвестных в системе
ограничений исходной задачи, и аналогичная матрица
в двойственной задаче получаются друг из друга транспонированием.
3. Число переменных в двойственной задаче равно числу
ограничений в системе исходной задачи, а число ограничений в
системе двойственной задачи – числу переменных в исходной задаче.
4. Коэффициентами при неизвестных в ЦФ двойственной задачи
являются свободные члены в системе условий исходной задачи, а
правыми частями в ограничениях системы условий двойственной
задачи – коэффициенты при неизвестных в ЦФ исходной задачи.
5. Если переменная
лишь неотрицательные значения, то
исходной задачи может принимать только
-е ограничение в системе
условий двойственной задачи является неравенством вида . Если же
переменная
отрицательные значения, то
может принимать как положительные, так и
-е ограничение в системе условий
двойственной задачи представляет собой уравнение. Аналогичные
связи имеют место между ограничениями исходной задачи и
переменными двойственной задачи. Если
условий исходной задачи является неравенством, то
двойственной задачи
то переменная
может принимать как положительные, так и
. Если же i-е ограничение есть уравнение,
-е ограничение в системе
-я переменная
отрицательные значения.
Двойственные пары задач обычно подразделяются на
симметричные и несимметричные. В симметричной паре переменные
обоих задач могут принимать только лишь неотрицательные значения.
42

321
44 xxxF
,11652
,1323
,1242
321
321
321
xxx
xxx
xxx
.0,,
321
xxx
652
231
412
A
624
531
212
T
A
321
*
111312 yyyF
,1624
,153
,422
321
321
321
yyy
yyy
yyy
.0,31yy
X
YFXF*
***
YFXF
*
X
*
Y
*
X
*
Y
Пример. Сформулировать двойственную задачу для задачи,
состоящей в максимизации функции
при условиях
Решение. Для данной задачи
,
.
В соответствии с общими правилами задача, двойственная по
отношению к данной, формулируется следующим образом: найти
минимум функции
при условиях
Каждая из задач двойственной пары фактически является
самостоятельной задачей ЛП и может быть решена независимо одна от
другой. Однако при определении симплексным методом оптимального
плана одной из задач тем самым находится решение и другой задачи.
Существующие зависимости между решениями прямой и
двойственной задач характеризуются сформулированными ниже
леммами и теоремами двойственности.
Лемма 1. Если X – некоторый план исходной задачи, а Y –
произвольный план двойственной задачи, то значение ЦФ исходной
задачи на плане
задачи на плане Y, т.е.
Лемма 2. Если
прямой и обратной задач, то
а
– оптимальный план двойственной задачи.
всегда не превосходит значение ЦФ двойственной
.
для некоторых планов
и
– оптимальны план исходной задачи,
Теорема 1. Если одна из пары двойственных задач, прямая или
обратная, имеет оптимальный план, то и другая имеет оптимальный
43

*
minmax
FF
)...,,,(
**
2
*
1
*
n
xxxX
)...,,,(
**
2
*
1
*
n
yyyY
nj ,1
0
*
1
*
j
m
i
jiij
xcya
m
AAA ,,,21
n
BBB ,,,21
ij
c
j
i
a
i
j
b
ij
x
i
min
j
ijij
xcF
1 1
m
i
jij
bx
1
nj ,1
план, и значения ЦФ задач при их оптимальных планах равны между
собой, т.е.
.
Если ЦФ одной из пары двойственных задач не ограничена (для
исходной задачи – сверху, для двойственной – снизу), то другая задача
вообще не имеет планов.
Теорема 2. План
исходной задачи и план
двойственной задачи являются оптимальными
планами этих задач тогда и только тогда, когда для любого j (
выполняется равенство
.
2.2.1.2. Транспортная задача
Общая постановка транспортной задачи состоит в определении
оптимального плана перевозок некоторого однородного груза из m
пунктов отправления
в n пунктов назначения
. При этом в качестве критерия оптимальности обычно
берется либо минимальная стоимость перевозок всего груза, либо
минимальное время его доставки.
Рассмотрим транспортную задачу, в качестве критерия
оптимальности которой взята минимальная стоимость перевозок всего
груза. Обозначим через
тарифы перевозок единицы груза из i-го
)
пункта отправления в
-м пункте отправления, через
назначения, а через
-й пункт назначения, через
– запасы груза в
– потребности в грузе в j-м пункте
– количество единиц груза, перевозимого из
-го пункта отправления в j-й пункт назначения. Тогда
математическая постановка транспортной задачи состоит в
определении минимального значения функции
при условиях
(
),
44

n
j
iij
ax
1
mi ,1
0ijx
mi ,1
nj ,1
ij
x
mi ,1
nj ,1
ij
xX
mi ,1
nj ,1
**
ij
xX
mi ,1
nj ,1
Пункты
отправления
Пункты назначения
Запасы
B1
. . .
Bj
. . .
Bn
A1
c11
x11
. . .
c1j
x1j
. . .
c1n
x1n
a1
. . .
. . .
. . .
. . .
. . .
. . .
. . .
Ai
ci1
xi1
. . .
cij
xij
. . .
cin
xin
ai
. . .
. . .
. . .
. . .
. . .
. . .
. . .
Am
cm1
xm1
. . .
cmj
xmj
. . .
cmn
xmn
am
Потребности
b1
. . .
bj
. . .
bn
Поскольку переменные
(
(
(
),
;
).
;
) удовлетворяют
системам линейных уравнений и условию неотрицательности,
обеспечиваются доставка необходимого количества груза в каждый из
пунктов назначения, вывоз имеющегося груза из всех пунктов
отправления, а также исключаются обратные перевозки.
Определение 2. Всякое неотрицательное решение систем
линейных уравнений, определяемое матрицей
(
;
), называется планом транспортной задачи.
Определение 3. План
(
;
), при котором
целевая функция принимает свое минимальное значение, называется
оптимальным планом транспортной задачи.
Обычно исходные данные транспортной задачи записываются в
виде таблицы или двудольного графа (табл. 2.1, рис. 2.7).
Таблица 2.1. Исходные данные транспортной задачи в общем виде
45

0 j
m
1 1
i
n
z
ПОСТАВЩИКИ ПОТРЕБИТЕЛИ
a
1
a
j
a
m
b
1
b
i
b
n
c
11
c
1i
c
j1
c
ji
c
jn
c
mn
c
mi
...
... ...
...
mj
j
a
1
ni
i
b
1
n
i
i
m
j
j
ba
11
n
i
i
m
j
j
ba
11
1n
n
i
i
m
j
jn
bab
11
1
mic
ni
,101,
Рис. 2.7. Исходные данные транспортной задачи в виде
Общее наличие груза у поставщиков равно
потребность в грузе в пунктах назначения равна
двудольного графа
, а общая
. Если общая
потребность в грузе в пунктах назначения равна запасу груза в пунктах
отправления, т.е.
, то модель такой транспортной задачи
называется закрытой. Если же указанное условие не выполняется, то
модель транспортной задачи называется открытой.
Теорема. Для разрешимости транспортной задачи необходимо и
достаточно, чтобы запасы груза в пунктах отправления были равны
потребностям в грузе в пунктах назначения, т.е. чтобы выполнялось
данное равенство.
В случае превышения запаса над потребностью, т.е. при
, вводят фиктивный
потребностью
и соответствующие тарифы считают
-й пункт назначения с
равными нулю:
транспортной задачей, для которой выполняется равенство
закрытости.
. Полученная задача является
46

n
i
i
m
j
j
ba
11
1m
m
j
j
n
i
im
aba
11
1
njc
jm
,10,1
ij
x
n
nm
mn
1 mn
1 mn
1 mn
321
,, AAA
100
1
a
200
2
a, 120
3
a
321
,, BBB
200
1
b
110
2
b, 803b
ij
C
Грузы, ед.
200
1
b
110
2
b 803b
100
1
a
4 2 6
200
2
a
7 5 3
120
3
a
1 7 6
Аналогично при
отправления с запасом груза
тарифы считают равными нулю:
вводят фиктивный
и соответствующие
-й пункт
. Этим задача
сводится к транспортной задаче с закрытой моделью, из оптимального
плана которой получается оптимальный план исходной задачи.
Поэтому будем рассматривать только закрытую модель транспортной
задачи.
Число переменных
отправления и
пунктами назначения равно
системе ограничений равно
в транспортной задаче с m пунктами
, а число уравнений в
. Так как предполагается, что
выполняется условие закрытости, то число линейно независимых
уравнений равно
транспортной задачи может иметь не более
. Следовательно, опорный план
отличных от нуля
неизвестных.
Если в опорном плане число отличных от нуля компонент равно в
точности
, то план является невырожденным, а если меньше –
то вырожденным.
Для определения опорного плана существует несколько методов –
метод северо-западного угла, метод минимального элемента и метод
аппроксимации Фогеля.
Пример. На складах
хранится
,
единиц одного того же груза соответственно. Требуется
доставить его трем потребителям
составляют
перевозки
указаны в транспортной таблице.
,
единицы груза с i-го склада j-му потребителю
единиц груза. Стоимость
, заказы которых
Требуется найти минимальную стоимость перевозок.
47

321
,, bbb
4
b
4
b
4
B
4
b
n
xx ,,1
Грузы, ед.
200
1
b
110
2
b 803b
304b
100
1
a
4
1
x
2
2
x
6
3
x
0
4
x 200
2
a
7
5
x
5
6
x
3
7
x
0
8
x
120
3
a
1
9
x
7
10
x
6
11
x
0
12
x
Грузы, ед.
200
1
b
110
2
b 803b
100
1
a
4
2
100
2
x
6
200
2
a
7
805x
5
106x
3
807x
120
3
a
1
120
9
x
7
6
1170120803105807100213572
97652
xxxxxF
Для этого сверх имеющихся n пунктов назначения
еще один, фиктивный, пункт назначения
, которому припишем
введем
фиктивную заявку, равную избытку запасов над заявками. Стоимость
перевозок из всех пунктов отправления в фиктивный пункт назначения
будем считать равной нулю. Введением фиктивного пункта
назначения
с его заявкой
мы сравняли баланс транспортной
задачи, и теперь его можно решать как обычную транспортную задачу
с правильным балансом (количество перевезенного груза обозначим
символами
Результаты заносят в транспортную таблицу:
соответственно).
Минимальная стоимость перевозок:
.
2.2.2. Целочисленное линейное программирование
При решении многих задач (планирование мелкосерийного
производства, распределение кораблей по путям сообщения,
выработка суждений типа «да-нет» и т.п.) нецелочисленное решение
не имеет смысла. Попытка округления до целых значений приводит
либо к нарушению ограничений задачи, либо к недоиспользованию
ресурсов. Если найти решение задачи симплексным методом, то оно
может оказаться как целочисленным, так и нет. Для произвольной
линейной программы (за исключением транспортной задачи)
гарантировать целочисленность решения невозможно.
В случае двухмерной задачи проблема решается путем выявления
всех целочисленных точек, близких к границе множества планов
построения «выпуклой целочисленной оболочки» (выпуклого
48

max
1
nj
jj
xcF
n
j
ijij
bxa
1
mi ,1
0jx
nj ,1
j
x
nj ,1
0
X
0max
XFF
0
X
XFXF
0
0
X
i
x
0
X
i
K
1iK
множества планов, содержащего все целочисленные планы), и
решения задачи над этим множеством.
B общем случае выдвигается идея последовательного отсечения
нецелочисленных оптимальных планов: обычным симплексным
методом отыскивается оптимальный план и, если он
нецелочисленный, строится дополнительное ограничение, отсекающее
найденный оптимальный план, но не отсекающее ни одного
целочисленного плана.
2.2.2.1. Метод ветвей и границ
Пусть требуется определить максимальное значение функции
при условиях
(
),
– целые (
).
(
),
Решение задачи целочисленного программирования начинают с
определения симплексным методом оптимального плана задачи без
учета целочисленности переменных. Пусть им является план
. Если
среди компонент этого плана нет дробных чисел, то найденный план
является оптимальным планом задачи целочисленного
программирования, найдено искомое решение задачи и
Если же среди компонент плана
ни одно из решений не
.
удовлетворяет условию целочисленности, необходимо осуществить
упорядоченный переход к новым планам, пока не будет найдено
решение задачи. Покажем, как это можно сделать, предварительно
отметив, что
Предполагая, что найденный оптимальный план
для всякого последующего плана X.
не
удовлетворяет условию целочисленности переменных, тем самым
считаем, что среди его компонент есть дробные числа. Пусть,
например, переменная
приняла в плане
дробное значение.
Тогда в оптимальном целочисленном плане ее значение будет, по
крайней мере, либо меньше или равно ближайшему меньшему целому
числу
числу
, либо больше или равно ближайшему большему целому
. Определяя эти числа, находим симплексным методом
решение двух задач ЛП:
49

;,10
,
,,1
max,
00
1
1
njx
Kx
mibxa
xcF
I
j
ii
n
j
ijij
n
j
jj
.,10
,1
,,1
max,
00
1
1
njx
Kx
mibxa
xcF
II
j
ii
n
j
ijij
n
j
jj
0
X
Найдем решение задач ЛП (I) и (II). Возможен один из четырех
случаев.
1. Одна из задач неразрешима, а другая имеет целочисленный
оптимальный план. Тогда этот план и значение ЦФ на нем дают
решение исходной задачи.
2. Одна из задач неразрешима, а другая имеет оптимальный план,
среди компонент которого есть дробные числа. Тогда рассматриваем
вторую задачу и в ее оптимальном плане выбираем одну из компонент,
значение которой равно дробному числу, и строим две задачи,
аналогичные задачам (I) и (II).
3. Обе задачи разрешимы. Одна из задач имеет оптимальный
целочисленный план, а в оптимальном плане другой задачи есть
дробные числа. Тогда вычисляем значение ЦФ на этих планах и
сравниваем их между собой. Если на целочисленном оптимальном
плане значение ЦФ больше или равно ее значению на плане, среди
компонент которого есть дробные числа, то данный целочисленный
план является оптимальным для исходной задачи, и он вместе со
значением ЦФ на нем дает искомое решение. Если же значение ЦФ
больше на плане, среди компонент которого есть дробные числа, то
следует взять одно из таких чисел и для задачи, план которой
рассматривается, необходимо построить две задачи, аналогичные (I) и
(II).
4. Обе задачи разрешимы, и среди оптимальных планов обеих задач
есть дробные числа. Тогда вычисляем значение ЦФ на данных
оптимальных планах и рассматриваем ту из задач, для которой
значение ЦФ является наибольшим. В оптимальном плане этой задачи
выбираем одну из компонент, значение которой является дробным
числом, и строим две задачи, аналогичные (I) и (II).
Таким образом, описанный выше итерационный процесс может
быть представлен в виде некоторого дерева, на котором исходная
соединенная с ней ветвью вершина отвечает оптимальным планам
задач (I) и (II). Каждая из этих вершин имеет свои ветвления. При этом
50
вершина отвечает оптимальному плану
задачи, а каждая
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
