ВУЗ:
Составители:
Рубрика:
Линейное программирование
26
точкой исходной задачи . Она, как и в предыдущем случае, вообще говоря, не
является оптимальной. Следовательно, необходимо продолжить поиск, не
уменьшая при этом полученное оптимальное значение 0
0
=
β
. По оценкам
0
<
j
α
(если такие есть) определяется вектор для введения в базис на данной
итерации. Процесс продолжается до тех пор , пока не исчезнут такие j, что
,0,0
=
<
jj
β
α
соответствующий столбец A
j
имеет элементы a
ij
>0.
Итак, сформулируем окончательный алгоритм решения произволь -
ной задачи линейного программирования.
1. Привести задачу к каноническому виду.
2. Проверить наличие единичного базиса среди столбцов матрицы ограниче-
ний. Если единичный базис имеется, то перейти к п .5.
3. Ввести в задачу искусственные переменные так, чтобы среди столбцов
полученной матрицы появился единичный базис в пространстве R
m
, где m
- число ограничений задачи .
4. Составить М - задачу: ввести искусственные переменные в целевую
функцию с коэффициентами, равными - М .
5. Составить исходную таблицу для оформления решения задачи . Если дан-
ный пункт выполняется после пункта 2, то фрагмент таблицы завершается
одной оценочной строкой, если после пункта 4, то двумя строками для
оценок
jjj
M
β
α
∆
+
=
(первая - для чисел
j
α
, вторая - для
j
β
).
6. Вычислить оценки всех векторов - ограничений задачи по формулам
∑
∈
−
=
Ii
jijij
cac
∆
При наличии искусственных векторов в базисе получим
выражения вида
α
β
jj
M
+
. Поместить
j
α
в первую оценочную строку,
j
β
- во вторую (нижнюю).
7. При наличии двух оценочных строк проверить, если все
≥
j
β
0, то перей-
ти к п .11, иначе - к п .9 с числами
j
β
. Если осталась одна оценочная стро-
ка , то проверить условие
0
≥
j
∆
. Если это условие выполняется, то пе-
рейти к п .12.
8. Просмотреть векторы-столбцы A
j
, для которых
j
α
<0. Если среди них су-
ществует такой , что все его координаты a
ij
≤
0, то перейти к п .13, иначе -
к п .9 с числами
jj
α
∆
=
.
9. Определить направляющий элемент для выполнения итерации по мето-
дуЖордана-Гаусса . Номер столбца k может быть выбран любым среди тех
j, для которых
∆
j
< 0. Номер строки l определяется следующим образом :
ik
i
a
lk
l
a
x
a
x
ik
min
0>
=
, где
i
x - базисные координаты проверяемой базисной точки ,
lk
a - направляющий элемент.
Линейное программирование точкой исходной задачи. Она, как и в предыдущем случае, вообще говоря, не является оптимальной. Следовательно, необходимо продолжить поиск, не уменьшая при этом полученное оптимальное значение β 0 =0 . По оценкам α j <0 (если такие есть) определяется вектор для введения в базис на данной итерации. Процесс продолжается до тех пор, пока не исчезнут такие j, что α j <0, β j =0, соответствующий столбец Aj имеет элементы aij>0. Итак, сформулируем окончательный алгоритм решения произволь- ной задачи линейного программирования. 1. Привести задачу к каноническому виду. 2. Проверить наличие единичного базиса среди столбцов матрицы ограниче- ний. Если единичный базис имеется, то перейти к п.5. 3. Ввести в задачу искусственные переменные так, чтобы среди столбцов полученной матрицы появился единичный базис в пространстве Rm , где m - число ограничений задачи. 4. Составить М - задачу: ввести искусственные переменные в целевую функцию с коэффициентами, равными - М. 5. Составить исходную таблицу для оформления решения задачи. Если дан- ный пункт выполняется после пункта 2, то фрагмент таблицы завершается одной оценочной строкой, если после пункта 4, то двумя строками для оценок ∆ j =α j +Mβ j (первая - для чисел α j , вторая - для β j ). 6. Вычислить оценки всех векторов-ограничений задачи по формулам ∆ j =∑ ci aij −c j При наличии искусственных векторов в базисе получим i∈I выражения вида α j +M βj . Поместить α j в первую оценочную строку, β j - во вторую (нижнюю). 7. При наличии двух оценочных строк проверить, если все β j ≥0, то перей- ти к п.11, иначе - к п.9 с числами β j . Если осталась одна оценочная стро- ка, то проверить условие ∆ j ≥0 . Если это условие выполняется, то пе- рейти к п.12. 8. Просмотреть векторы-столбцы Aj, для которых α j <0. Если среди них су- ществует такой, что все его координаты aij ≤ 0, то перейти к п.13, иначе - к п.9 с числами ∆ j =α j . 9. Определить направляющий элемент для выполнения итерации по мето- дуЖордана-Гаусса. Номер столбца k может быть выбран любым среди тех j, для которых ∆ j < 0. Номер строки l определяется следующим образом: xl x =min i , где x i - базисные координаты проверяемой базисной точки, alk aik >0 aik a lk - направляющий элемент. 26
Страницы
- « первая
- ‹ предыдущая
- …
- 22
- 23
- 24
- 25
- 26
- …
- следующая ›
- последняя »