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

Транспортная логистика (линейное программирование). Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
08.09.2026
Размер:
2 Мб
Скачать
☆
3.1. Симплекс-метод
A
b
c
0
, ,...
xx x
mn≤
mm n
mm n
a a aa a
a a aa a
a a aa a
     
 
 
   
 
1
( )
mm×
( )
nm−
( )
m nm×−
x
(, )=
T
m mm n
= =
( )
Ò
⋅
12
(, )
1
1 12
m
Предположим, что
12
(
m
) являются базисными переменными (при необходимости можно изменить нумерацию переменных cпомощью соответ­ствующих перестановок строк и столбцов матрицы A, вектор-столбца bи вектор-строки c).
Тогда первые mстолбцов матрицы:
11 12 1 1, 1 1
21 22 2 2, 1 2
=
A
a a aa a
1,1 1,2 1, 1, 1 1,
− − − −+ −
m m mm mm mn
1 2 ,1
m m mm m m mn
+
+
+
образуют квадратную невырожденную матрицу
A (базисную матрицу) размером
еся
столбцов образуют матрицу 2A размером
, а оставши-
.
Вэтом случае, векторы
ис разбиваются следую-
щим образом.
Вектор переменных:
x xx ,
где:
( , ,... ) , ( , ,... )
xx x x x x
xx ,
1 12 2 1 2
T
12
++
T
— сим-
вол транспонирования.
Вектор-строка коэффициентов целевой функции:
с=
cc ,
где: ции при базисных неизвестных
c  — вектор коэффициентов целевой функ-
— 51 —
( , ,... )
xx x=x ;
T
3. Методы решения задач линейного программирования
( )
nm−
2 12
( , ,... ) .
mm n
xx x
++
=Tx
1A2
b
⋅+ ⋅=Ax Ax b
−
1
11 1
1 11 1 2 2 1
−− −
AAx AA x Ab
−
=AA I
11
1 1 22 1
−−
x AA x Ab
2
0=x
11
−
x Ab
1
1
0−≥Ab
( )
c  — вектор при
2
свободных неизвестных
Исходная таблица условий задачи примет вид:
A
c
1
c
2
0
Первая строка таблицы соответствует уравнению:
11 22
.
Напервом шаге симплекс-метода необходимо най-
ти первоначальный опорный план (неотрицательное базисное решение системы). Для этого умножим обе ча­сти уравнения наматрицу так как попредположению
1
A слева (она существует,
1
A невырожденная матри-
ца):
⋅+ ⋅=
Сучетом того, что матрица
11
.
1
— единичная
матрица m-го порядка, запись уравнения упрощается:
Полагая
, найдем значения базисных пере-
менных:
Если при этом
+ ⋅=
1
=
.
, то:
1
−
1
— 52 —
, 0 ,
=x Ab
.
является первоначальным опорным планом.
I
12
−
AA
11−
Ab
1c2
x
11 2 2
=⋅+⋅cx cx
( )
11
Z.
2
x
1
( )
Z x
1
x
I
12
−
AA
11−
Ab
2 11 2
11
cA b
2 11 2
−
2
x
( )
−
0≥r
0≥x
( )
( )
11
Z0 .
−−
Эти преобразования системы ограничений соот-
ветствуют таблице:
1
3.1. Симплекс-метод
c
0
Вычислим значение целевой функции, подставив найденный первоначальный опорный план жение целевой функции
Z
(вторая строка
в выра-
таблицы):
1
−
=x cA b
Чтобы проверить, является ли полученный опор­ный план допустимым решением, выразим целевую функцию через свободные переменные го умножим первую строку последней таблицы на
. Для это-
c ивычтем еёиз второй строки так, чтобы коэффициенты встроке
при базисных неизвестных
стали рав-
ными 0:
1
1
−
0
Обозначим через
−c cA A
= −r c cA A вектор, состоящий
1
изкоэффициентов при свободных неизвестных левой функции. Опорное решение допустимым, если
и
.
1
−
−
це-
1
=x Ab будет
, 0
1
Последняя строка таблицы соответствует целевой
функции:
=⋅+ − ⋅+x x c cA A x cA b
1 2 11 2 2 11
— 53 —
3. Методы решения задач линейного программирования
2
0=x
( )
1
11
Z−=x cA b
Z0≥
2
x
r
0≥x
2 11 2
−
( )
!
.
!!
m
n
n
C
mnm
=
−
m
Внайденном первоначальном опорном плане (при
) значение целевой функции определяется через
постоянные параметры:
.
Видим, что соответствующее значение находится
в правом нижнем углу таблицы с противоположным
знаком.
Таким образом, цель симплекс-преобразований со­стоит втом, чтобы найти такие опорные планы намно­жестве допустимых решений, которые обеспечивают положительные значения целевой функции раженной только через свободные переменные
Если среди компонент вектора
имеется хотя
, вы-
.
быодна отрицательная, тополученный опорный план неявляется допустимым— при
целевая функция
может стать отрицательной.
На втором шаге симплекс-метода необходи­мо перейти к новому опорному плану, рассчитать
= −r c cA A и проверить его принадлежность мно-
1
жеству допустимых решений. В общем случае, для решения ЗЛП симплекс-методом потребуется найти ипроверить все возможные опорные решения:
опорных решений (опорных планов) необходимо вы­брать то, которое доставляет целевой функции мини­мальное неотрицательное значение. Такой опорный план называется оптимальным— наилучшим покри­терию c. Очевидно, что поиск всех опорных планов и выбор оптимального, при больших значительных вычислительных затрат.
На третьем шаге среди найденных допустимых
иn, требует
— 54 —
3.1. Симплекс-метод
{ }
X : ,0= ≤≥
r
s
r
0,  1,
is
a im≤=
≤Ax b
+ + +≤
b im≥=
11
= + + +→
0,  1,
j
x jn≥=
,  1, ,
x ax bi m
+==
min,
ss
Z rx q
⋅
= +→
0, 0, 1,
r a im< ≤=
Существуют различные модификации програм­мы поиска симплекс-методом оптимального решения намножестве допустимых решений, ограниченных вы­пуклым многогранником
x Ax b x [15, 26].
3.1.2. Признак неограниченности целевой функции
Возможны случаи, когда функция цели Z при решении задачи на минимум не ограничена снизу. Этот случай легко выявить при решении задачи сим­плекс-методом.
Пусть среди компонент вектора блице, соответствующей какому-либо опорному плану, имеется хотя бы одна отрицательная компонента, на­пример рицательны:
, ипри этом все коэффициенты столбца s от-
. Вэтом случае ЗЛП неимеет решения вследствие неограниченности снизу функции цели Z.
Пусть система ограничений
кбазисному виду:
в симплекс-та-
ЗЛП приведена
x a x a x ax b
,1 1 ,
i i m m i s s in n i
+⋅ + ⋅
где 0,  1,
i
, а целевая функция выражена через
свободные переменные следующим образом:
Z rx r x r x q
m s s nm n
+⋅ −
причем
Положив значения всех свободных переменных,
кроме
где
x , равными нулю, получим:
s
i is s i
s is
... ... ,
... ... min,
.
,
⋅
; q— константа.
— 55 —
3. Методы решения задач линейного программирования
0
s
r <
s
Z →−∞
0, 0, 0 
is j i
a xb≤ >≥
i i is
x ba i m=−≥ =
xi m=
s
12
23Zx x= +
11 22
ax ax b+≤
11 22
ax ax b+=
11 22
+≤
11 22
ax ax b+≥
Так как
то, вводя в базис переменную sx ,
можно уменьшить значение целевой функции.
Очевидно, что этой переменной
x можно при-
давать сколько угодно большие значения, при этом
, азначения всех остальных переменных оста-
ются неотрицательными. Действительно: из условий
следует, что 0,  1, 
Таким образом, ниодна из переменных
, 1,
i
.
невыйдет избазиса (не будет равна нулю). Это означа­ет, что, увеличивая
x , мы никогда не получим опор­ного решения, хотя значение целевой функции при этом будет уменьшаться. Вэтом случае задача неимеет решения вследствие неограниченности снизу целевой функции Z.
Пример 3.1. Рассмотрим следующую ЗЛП:
,
.
Известно, что точки, координаты которых удов-
летворяют уравнению
, лежат напрямой.
Назовем эту прямую граничной.
Граничная прямая разбивает плоскость надве по­луплоскости. Координаты точек одной полуплоскости удовлетворяют исходному неравенству а другой полуплоскости — неравенству
,ax ax b
. Следовательно, геометрической интерпретацией мно­жества решений линейного неравенства является по­луплоскость, лежащая по одну сторону от граничной прямой, включая саму прямую.
Чтобы определить искомую полуплоскость, нужно взять какую-либо точку, непринадлежащую граничной прямой, ипроверить, удовлетворяют лиее координаты данному неравенству.
— 56 —
3.1. Симплекс-метод
12
236
+≤
12
23 6
+=
12
12
236
+≤
12
23 6
+=
3 6, на знак равенства, и
3 6. Эта прямая делит координатную
3 6, то областью допустимых
6. Допустимая область решения на рис. 2.1
1
0x≤
12
236
+≤
12
23Zx x= +
i
x in≥=
0
j
r <
Заменим знак неравенства венства, и построим прямую делит координатную плоскость (0, плоскости (рис. 3.1). Так как точка О(0,0) удовлетво­ряет неравенству
xx
, тообластью допустимых решений ЗЛП является вся полуплоскость, которой принадлежит эта точка, включая прямую Допустимая область решения нарис. 3.1 показана дву­мя сплошными стрелками.
Рис. 3.1. Геометрическая интерпретация
неограниченности решений линейного неравенства
При смещении в область отрицательных значе-
ний
x (пунктирная стрелка на рисунке 3.1), реше-
ния
xx
по прежнему удовлетворяют неравенству
1
, при этом целевая функция
может быть отрицательной ине ограничена снизу.
Это означает, что при ограниченности снизу целевой функции Zв области допустимых решений является наличие хотя быод­ного столбца неположительных коэффициентов системы ограничений, соответствующего компонен­там
исследуемого опорного плана xв симплекс-
таблице.
xx
xx
, назнак ра-
. Эта прямая
X ,X ) надве полу-
xx
0,  1,
, признаком не-
.
— 57 —
3. Методы решения задач линейного программирования
mn×
A
mn≠
mn×
A
A
+
A
1nn−
×
A
mn+×
A
{ }
ij
a
ij
a
ij
a
3.2. Метод Мура-Пенроуза
В матричном анализе прямоугольные матрицы
, при шения ЗЛП транспортной логистики свырожденными матрицами условий роуза, воснову которого положены два замечательных свойства:
Неотрицательность элементов матрицы усло-
вий
.
Существование единственной псевдообратной
матрицы
Используя эти свойства, можно значительно упро­стить, исократить вычислительную программу поиска экстремального значения целевой функции задачи.
Основу метода решения вырожденных ЗЛП состав­ляют теорема Перрона-Фробениуса освойствах неотри- цательных матриц, и аналог квадратной обратной матрицы псевдообратная матрица Мура-Пенроуза
Предварительно уточним термины: неотрицатель- ность матриц ипсевдообращение матриц [3, 28, 29].
Определение 3.1. Матрица A= ся неотрицательной (положительной) и обозначается A≥ 0 (A>0), если
Обозначим символом |A| матрицу абсолютных зна­чений элементов матрицы А, ||A||
m×n
наR
.
Свойства неотрицательных матриц. Пусть A, B∈
n×m
. Тогда:
R
1. |A| ≥ 0 ∀A; |A| = 0 ⇔ A= 0.
2. |Ax| ≤ |A| |x|.
3. |Am| ≤ |A|m , ∀m = 1, 2, . . .
4. Если 0 ≤ A≤ B, то0 ≤ Am≤ Bm, ∀m = 1, 2, . . ..
, называются вырожденными. Для ре-
разработан метод Мура-Пен-
.
для обращения прямоугольных матриц—
.
m×n
≥ 0 (
∈R
> 0), i= 1, …, n; j= 1,…, m.
— евклидова норма
E
называет-
— 58 —
3.2. Метод Мура-Пенроуза
+
λ
+
λ
+ + ++
∃> =λ
+
λ
x
( )
.
+
ρ=λA
×
5. Если A> 0, x≥ 0 иx ≠ 0, тоAx > 0.
6. Если |A| ≤ |B|, то||A||
7. ||A||
= || |A| ||E.
E
≤ ||B||E.
E
# Теорема Перрона-Фробениуса. Для положитель-
ной матрицы Асуществует положительное собственное число этой матрицы меньше
такое, что все остальные собственные числа
поабсолютной величине (мо­дулю). Соответствующий этому собственному числу собственный вектор
x может быть выбран положи-
+
тельным:
0: .
x Ax x #
Число
из теоремы называется собственным
числом Перрона или собственным числом Перро- на-Фробениуса матрицы А, а соответствующий ему произвольный положительный собственный вектор
— собственным вектором Перрона–Фробениуса ма-
+
трицы А.
Обозначим через ρ(A)— спектральный радиус ма-
трицы А.
Определение 3.2. Спектральный радиус положи-
тельной матрицы Асовпадает сее собственным числом Перрона–Фробениуса:
# Теорема 3.1. Пусть A, B∈ R
n×n
. Если |A| ≤ B, то:
ρ(A) ≤ ρ(|A|) ≤ ρ(B). #
Если A– квадратная инеособенная матрица, тодля
нее существует обратная матрица A моугольная m
n-матрица или квадратная, но особен-
-1
. Если жеA— пря-
ная (имеет зависимые строки или столбцы), томатри­цаA не имеет обратной, исимвол A
-1
неимеет смысла.
Однако, для произвольной прямоугольной матрицыA существует псевдообратная матрица A
— 59 —
+
, которая
3. Методы решения задач линейного программирования
+
A
A
rangA
A
( )
mn×
m
n
{ }
rang min , )
=
, ,
, .
nmn
mmn
≥
≤
≥
mn×
A
( )
, , ,
−
() ()
++
=
TT
AA
, ,
, .
A mn
A mn
+
= ≥
= ≤
AI
обладает некоторыми свойствами обратной матрицы, и может быть использована в решении вырожденных систем линейных уравнений инеравенств.
Определение 3.3. Матрица A
+
называется псевдо-
обратной для матрицы A, если выполняются равенства
+
AA
A=A, A+=UA* иA+=A*V, где Uи V– соразмерные
произвольные матрицы.
# Первая теорема Мура-Пенроуза. Псевдообратная
матрица
Обозначим ранг матрицы
существует иединственна. #
через
— наи-
больший отличный от нуля минор матрицы. Полный ранг прямоугольной матрицы вен наименьшему числу независимых строк столбцов
(
A :
rang
mn
A
=
если
если
Свойства псевдообратной матрицы. Пусть
размера
≤
ра-
или
— положительная прямоугольная матрица. Существует единственная (левая или правая) псевдообратная ма­трица:
1
еслиm n левая
−
еслиm n правая
≥
≤
A
TT
AA A
+
=
T T1
( ) , , .
A AA
.
# Вторая теорема Мура-Пенроуза. Псевдообрат- ная матрица A y – Ax = u + v, где: u = y – Ax инорму: |x|
 
+
AI
+
минимизирует при x0 = A+y невязку:
2
≥|x0|2. #
nn
×
×
mm
— 60 —
если
если
= y – AA+y, v = A(x0 – x),
0