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

Теория и методы оптимизации. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
07.09.2026
Размер:
1 Мб
Скачать
☆
уравнении вместо свободного члена ib использовать значение кон-
трольной суммы
соответствие:
c . Между корнями должно выполняться следующее
i
xx
ii
1
.
При реализации метода Гаусса по схеме единственного деления предполагалось, что диагональные элементы не равны нулю. Это можно гарантировать только на нулевом шаге (k = 0) в исходной системе. Од- нако в ходе преобразований вполне возможны ситуации, что главные диагональные элементы станут нулевыми. В этих условиях схема един­ственного деления становится неработоспособной, так
как в ходе пре­образований происходит деление на главные элементы. Выходом в та­кой ситуации является использование модификации метода Гаусса – метода главных элементов.
Основнаяидеяметода
1. На каждом шаге выбирают главный элемент матрицы А – макси­мальный по модулю коэффициент в матрице a строка.
2. Для всех строк, кроме главной, вычисляются множители:
. Строка p – главная
pq
a
iq
m
i

.
a
pq
3. К каждой неглавной строке добавляют главную, умноженную на сомножитель m
. В результате q-й столбец – нулевой.
i
4. Вычеркиваем p-ю строку и q-й столбец. В результате получаем
1
матрицу А
, размерность которой на единицу меньше предыдущей мат-
рицы А.
5. Процедуру повторяем с первого шага (n – 1) раз.
6. В результате составляем новую систему уравнений из вычеркну-
тых строк. Полученная матрица не треугольного вида, как в схеме един­ственного деления Гаусса. Но каждое уравнение содержит разное коли­чество неизвестных: в последнем уравнении – 1
неизвестное, в (n – 1)-м – 2 неизвестных и т. д., в первом уравнении – все n неизвестных. Такой вид преобразованной системы позволяет последовательно находить не­известные, начиная с последнего уравнения.
Решение той же самой системы методом Гаусса с выбором главно­го элемента представлено в табл. 4.4. В таблице выделены главные эле­менты и главные
строки.
81
Метод Гаусса с выбором главного элемента
Таблица 4.4
k mi
0 0 3 –1 0 5 7
–1/4 –2 1 1 0 0 –1 2 –1
1 –1
5/6 –5/2 5/4 – –15/4 –5
Прямой ход
ход
Обратный
– – – – –
2 –
– – – – – – – – – –
Коэффициенты при неизвестных
x
1
3
x
= 2
1
x
2
–1 – 5 7
5/12
x
= 1
2
x
3
4
– 5/12 5/6
x
= 3
3
b c
15 20
2x
2
3x
1
4x
3
Симплекс-метод тесно связан с «методом Гаусса с выбором глав­ного элемента» и основан на ряде утверждений, декларируемых в виде следующих теорем.
Теорема 1. Множество опорных планов – выпукло.
Теорема 2. Если задача линейного программирования разрешима,
то экстремум целевой функции достигается на одном из опорных пла­нов (допустимом базисном решении).
То есть оптимальное решение соответствует крайней точке выпук­лого множества.
Число опорных планов конечно и определяется числом
!
C
m
n
n
!( )!
mn m
.
Основная идея симплекс-метода состоит в направленном переборе опорных планов с последовательным уменьшением целевой функции. Принадлежит эта идея двум авторам: американскому математику Дж. Данцигу (1947 г.) и российскому математику Л.В. Канторовичу (1939 г.).
Алгоритм симплекс-метода включает три основных этапа:
I. Выбор начального опорного плана.
II. Переход от начального
опорного плана к другому опорному
плану с лучшим значением целевой функции.
82
III. Продолжение поиска опорного плана, улучшающего целевую
x
x
x
x
x
x
x
x
функцию до достижения оптимального плана. Приведение системы для смежного опорного плана к каноническому виду.
Определение. Смежным опорным планом называют план, отли-
чающийся от текущего лишь одной переменной.
Таким образом, механизм симплекс-метода состоит в получении смежных опорных планов.
Для получения смежного опорного плана одну базисную перемен­ную превращают в свободную, а эту свободную вводят в базисные пе­ременные. Основной здесь вопрос – какую переменную выбрать, чтобы целевая функция уменьшалась. Симплекс-метод позволяет целенаправ­ленно получать смежные планы, избегая простого перебора вершин. Рассмотрим этот механизм.
Составим симплекс-таблицу для задачи использования ресурсов (4.3). Для этого запишем задачу в каноническом виде и заменим цель поиска максимум на минимум.
() 3 2x min;
zx x
   
5 2 160;
3 4 180;
7 196.
12
xxx
 
123

xx x
12 4
xx

15
.
Начальный опорный план и начальная симплекс-таблица приведе­ны в табл. 4.5.
Таблица 4.5
Начальный опорный план
Базис
3
4
5
k
Свободные переменные
b
1
5 2 1 0 0 160 32
3 4 0 1 0 180 60
7
–3 –2 – – –
2
0 0 0 1 196 28
3
4
5
Q
i
ik
  
3033
14
  
204 2
2
05
x

3

x
 
07
x
5

02
   
00

83
I. Итак, это начальный опорный план
x
x
x
x
базисные,
, xx – свободные. Свободные – значит, что они могут при-
12
1
. Переменные
нимать любые значения, но чаще их выбирают нулевыми.
0, 0 160, 180, 196
12345
xxx x .
Сам опорный план
1
(0, 0, 160, 180, 196) x .
, ,
xx –
345
Целевая функция
1
() 0zx
.
II. Нахождение смежного плана.
Его цель: одну переменную из свободных перевести в базис, так, чтобы целевая функция уменьшалась.
Для овладения механизмом получения смежных опорных планов необходимо ввести ряд соотношений. Для этого целесообразно записать задачу ЛП в стандартной векторно-матричной форме. Одновременно введем несколько определений.
n
() min
fx c x

jj
1
j
n
ax bi m
bim
 
ij j i
1
j
0 1,

j
0 1,

i
Определение. Приращение целевой функции
, 1,
jn
– это величина
k
cca
 
kk iik
i баз
(4.8)
,
где k свободным переменным, в нашем примере k = 1, k = 2.
означает, что суммирование ведется только по базисным пе-
базi
ременным, но для столбца свободных переменных.
Приращения вычисляются только для свободных переменных, то есть индекс k свободным.
– важнейшая величина, по которой и делают заключение о том,
k
какая из свободных переменных при переводе ее в базисную дает уменьшение целевой функции.
Это заключение основывается на следующей лемме.
Лемма 1. Если все приращения симплекс-плана 0
, следова-
k
тельно, текущий опорный план оптимальный.
84
Симплекс-метод использует следствие этой леммы.
x
x
x
x
x
x
x
x

Улучшение целевой функции приносит та свободная переменная
, приращение которой отрицательно: 0
k
.
k
Так как в текущем опорном плане может быть несколько отрица­тельных
обычно выбирают переменную
В нашем примере такой переменной является это может быть и
, то выбирать для замены можно любую переменную
k
, так как
2
с минимальным 0
k
0 .
2
.
k
. Строго говоря,
1
, но
k
Другая важнейшая величина симплекс-алгебры – это отношение
b
Величины
вычисляются для выбранного k-го столбца (с мини-
i
мальным значением
). Величина
k
переменных уйдет в свободные на место числяется только для 0 отношение
минимально.
i
a . Выбирается та переменная
ik
i
. (4.9)
i
a
ik
определяет, какая из базисных
i
, при этом отношение вы-
k
, для которой
1
Теоретической основой этого шага служит лемма.
Лемма 2. Если хотя бы одно из приращений 0
ди коэффициентов
есть хотя бы один положительный, то существует
a
ik
и при этом сре-
k
опорный план, улучшающий текущий.
Выбранная для данного примера переменная х
меняется местами с х1.
5
Элемент, стоящий на пересечении выбранного столбца и выбранной строки, называется ведущим, а вся строка – ведущей строкой.
III. Приведение системы к каноническому виду.
Так как переменную
ввели в базис, то она должна в третьем
1
уравнении иметь коэффициент, равный единице, а во всех остальных –
нулю. Записав второй столбец 00
, осуществим эквивалентные преоб-
1
разования с первой строкой системы.
Преобразование основано на методе Гаусса с выбором главного элемента.
К каждой неглавной строке добавляем главную, умноженную на
a
ik
a
pk
, где
a – главный или ведущий элемент;
lk
коэффициент
m
i

k – номер столбца ведущего элемента; p – строка ведущего элемента.
85
Таким образом, можно записать следующий смежный план:
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
28, 0, 20, 96, 0 ,
2
() 328 84.
fx
  
2
Полностью симплекс-таблица для решения задачи приведена в табл. 4.6. На каждом шаге выделен ведущий элемент и выбранное при­ращение.
Таблица 4.6
Симплекс-таблица
Переменные
1
5 2 1 0 0 160 32
3 4 0 1 0 180 60
7
0
0 4 0 1 –3/7 96 24
1 0 0 0 1/7 28 –
–
2
0 0 0 1 196 28
–2 – – –
2
–2
3
1 0 –5/7 20 10
– – 3/7
4
b Q
I
II
m
i
–5/7
–3/7
–2
0
Базис
3
4
5
k
3
4
1
k
–3
5/14
III
–1/7
IV
2
4
1
k
2
5
1
k
0 1 1/2 0 –5/14 10 –
0 0 –2 1
1 0 0 0 1/7 28 196
– – 1 –
0 1 –3/14 5/14 0 30
0 0 –2 1 1 56
1 0 2/7 –1/7 0 20
– – 6/14 4/14 –
Запишем последовательности опорных планов.
Шаг 1.
0, 0, 160, 180, 196 , ( ) 0xfx
11

05 02
x
 
3
       
3 0 3 3, 2 0 4 2
14 2
 
x
   
07 00
x
5
 
1
–2/7
.
56 56
.
86
Шаг 2.
       
Шаг 3.
28, 0, 20, 96, 0 , ( ) 3 28 84xfx.
22

02 0 5/7
x

3
2 0 4 2, 0 0 3 / 7 3 / 7
24 5

x
  

30 3 1/7
x
1

.
28, 10, 0, 56, 0 , ( ) 104xfx
33

21/2 2 5/14
x


2
0 0 2 1, 0 0 1 2 / 7
    
34 5

x
  
3 0 3 1/ 7
x

1

Шаг 4.
20, 30, 0, 0, 56 , ( ) 120xfx – оптимальный план.
44

2 3 /14 2 5 /14
xx


22
0 0 2 6 /14, 0 0 1 4 /14
     
35 45
Так как все приращения положительны (

xx
  
3 2 / 7 3 1/ 7
xx

11

, 0
 ), следовательно,
34
опорный план нельзя улучшить.
Замечание
Если на шаге I выбрать
k
разрешающим столбцом, то страте-
2

гия поиска такова:
xfx
xfx
0, 45, 70, 196, 0 ( ) 90;

22

20, 30, 0, 0, 56 ( ) 120.

33

.
.
.
Оптимум достигнут за 2 шага.
4.4.2.Методискусственногобазиса
Необходимым условием применения симплекс-метода является на­личие опорного плана, то есть допустимого базисного решения канони­ческой системы уравнений. Для этого должны выполняться следующие условия:
система должна иметь каноническую (ступенчатую) структуру;
присутствуют только ограничения-равенства;
правые части ограничений положительны; переменные задачи положительны.
Без этих условий нельзя получить опорный план. Однако в реаль­ных задачах далеко не всегда выполняются перечисленные условия.
87
Существует специальный метод, называемый искусственным бази-

x
x
x

f
сом, который позволяет в любой задаче линейного программирования получить начальный опорный план.
Пусть задача линейного программирования приведена к стандарт­ному виду:
Пусть все тельны,
n

() min;
fx c x
n
j
1
0
b , но часть или все базисные переменные отрица-
i
0
. Следовательно, опорного плана нет.
j
jj
j
1
ax bi m
 
ij j i
, 1, .
Дополним уравнения-ограничения искусственными переменными
0, 1,
(предполагаем, что все
j
jn).
Введем m переменных (по количеству уравнений): 0, 1,
,
ni
которые в новой системе будут базисными, а отрицательные
im
0
x
j
уйдут в свободные.
В результате получим следующую эквивалентную задачу.
m
ˆ
() min;
fx x

ni
i
1
n
Здесь переменные
ax x bi m
xknm
 
ij j n i i
j
1
0, 1, .

k
не имеют никакого отношения к исходной
nix
, 1, ;
(4.10)
задаче линейного программирования. Они служат лишь для получения опорного плана и называются искусственными переменными. А новая
ˆ
целевая функция
сформирована для полноты задачи.
()
x
В оптимальном опорном плане искусственные переменные должны быть равны нулю. В противном случае нарушится условие первона­чальной задачи.
В начальном опорном плане искусственные переменные являются базисными, то есть не равны нулю, а в оптимальном плане искусствен­ные переменные должны быть равны нулю. Значит, искусственные пе­ременные
должны стать в оптимальном плане свободными. В этом пе­реводе и состоит основная идея метода: перевод искусственных пере­менных из базисных переменных в свободные. Рассмотрим механизм такого перевода на примере.
88
Пример

x

() 2 max;
fx x x

12
 
25;
xx
12
 
35;
xx
12
   
237;
xx
12

xx
12
, 0.
xx
12
9;
Перепишем ЗЛП в стандартной форме. Для этого введем дополни-
, , ,
тельные переменные
xxx и запишем задачу в канонической
3456
форме.
() 2 min;
fx x x
  
12
 
2 5;
xxx
123

3 5;
xx x
12 4
  
2 3 7;
xx x
12 5
9;

xx x
12 6

0, 1,6.
xi
Свободные переменные
примут значения
i
, 0xx
12
5, 5, 7, 9.xx xx 
34 56
, при этом базисные переменные
Так как часть базисных
переменных отрицательны, следовательно опорного плана нет. Для по­лучения начального опорного плана введем переменные
в двух
, xx
78
первых уравнениях-ограничениях и сформулируем вспомогательную задачу:
ˆ

fx x x
() min;
xxx x
2 5;
 
xx x x
  
12 4 8
2 3 7;
  
xx x

12 6
xi

i
78
123 7
3 5;
xx x
12 5
9;
0, 1,8.
Таким образом, начальным базисом является
1
0, 0, 0, 0, 7, 9, 5, 5x .
89
Симплекс-таблица с искусственным базисом
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
Таблица 4.7
m
i
Базис
1
2
3
4
5
6
7
8
b
I
1
3
0
–1
–
1/3
II
–
1/5
–
9/5
–
2/5
7
8
5
6
ˆ
k
7
2
5
6
ˆ
k
2 1 –1 0 0 0 1 0 5 5
1
3
0 –1 0 0 0 1 5 5/3
–2 3 0 0 1 0 0 0 7 7/3
1 1 0 0 0 1 0 0 9 9
–3
5/3
–4
0 –1 1/3 0 0 1
1/3 1 0
1 1 – – – –
–
1/3
–
1/3
0 0 0 1/3 5/3 5
10/3 2
–3 0 0 1 1 0 0 –1 2 –
2/3 0 0 1/3 0 1 0
–
5/3
– 1
–
1/3
– – – 4/3
–
1/3
22/3 11
III
1
2
5
6
ˆ
k
k
1 0 –3/5 1/5 0 0
0 1 1/5
–
2/5
0 0
0 0 –9/5 8/5 1 0 9/5
0 0 2/5 1/5 0 1
– – 0 0 – – 1 1
– – –1/5
–
3/5
– –
90
3/5 –
1/5
–
1/5
2/5 1
–
8/5
–
2/5 –1/5
2
8
6
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]