Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Транспортная логистика (линейное программирование). Учебное пособие
.pdf
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
rangA
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
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
