ИРКУТСКИМ государственный университет путей сообщения
УДК 519.852.6 В.Е. Плиш,
к.ф.-м.н., Институт кибернетики им. В.М. Глушкова (г. Киев, Украина),
тел. 8 (3952) 427068
ПРЯМОЙ Р-МЕТОД ИССЛЕДОВАНИЯ И РЕШЕНИЯ ЗАДАЧ ЛИНЕЙНОГО ПРОГРАММИРОВАНИЯ
V.E. Plish
THE DIRECT R-METHOD OF AN INVESTIGATION AND A SOLUTION OF LINEAR PROGRAMMING PROBLEMS
Аннотация. Предлагается прямой Р-метод решения задач линейного программирования.
Ключевые слова: прямой Р-метод, задача линейного программирования, базис, оптимальный базис.
Abstract. The direct R-method of a solution of linear programming problems is suggested.
Keywords: direct R-method, linear programming problem, basis, optimal basis.
ВВЕДЕНИЕ
Проблеме математического анализа ситуаций, возникающих при управлении разнообразными видами деятельности человека с целью достижения максимального эффекта, посвящено много литературы. Это объясняется большой значимостью (в плане ожидаемой прибыли) задач принятия решений из самых широких предметных областей, поддержка решения которых осуществляется на базе оптимизационных математических моделей. Предметом настоящего исследования является линейное программирование (ЛП), как инструмент исследования однокритериальных линейных моделей. Последние находят широкое применение и в наши дни - для исследования процессов переходной экономики [1] и других не менее важных прикладных задач.
Стандартная задача линейного программирования представима в виде: найти максимум линейной целевой функции
max
x
S
j=i
cjxj
(l)
при ограничениях
S a^j < b, x > 0, i = l, m, j = l, n (2)
j=i
или в матричном представлении:
{ max(c, x)/ Ax < b, x > 0 }.
(3)
Данное представление задачи ЛП не ограничивает общности. Действительно, известно, что:
1) min (c,x) = max (-c,x );
2) система равенств S anxj = b, i = 1, m тожде-
j=1 j j
ственна системе неравенств:
n - n
Sajx} <b, i = l,m; S "S
j=i
j=i
xj <
V i=i J
f m \
l-2> )
V i=i J
3) неравенство вида Saijxj > bt тождественно не-
j=i
равенству вида - S aijxj <-bi.
j=i
Наибольшей известностью и популярностью во всем мире пользуется симплексный метод решения задач ЛП [2-4]. Он постоянно модифицируется и улучшается, но его сложность порядка о{нт) не позволяла отнести задачи ЛП к числу
хорошо решаемых задач - к классу Р-сложных задач. Предложенный же в 1979 г. Хачияном полиномиальный алгоритм [5], существенно отличающийся от симплексного метода, не заменил последнего в силу своей практической слабости. Основным достоинством метода Хачияна считается его теоретическая значимость.
«УЗКИЕ» МЕСТА СИМПЛЕКСНОГО МЕТОДА И ПУТИ ИХ УСТРАНЕНИЯ
Основная идея симплексного метода, как известно, состоит в следующем. Находится одна из вершин симплекса (исходный базис), а затем ищется ближайшая к ней вершина, значение целевой функции в которой возрастает (не убывает) и
a
у
x
Системный анализ. Моделирование. Транспорт. Энергетика. Строительство
т.д., пока не будет найден оптимальный базис -квадратная подматрица В матрицы А, обладающая свойствами оптимальности [6].
Задача выбора исходного базиса решается разными методами. Один из них, наиболее распространенный, состоит в переходе от стандартной формы (3) задачи ЛП к канонической
{тах(с, х)/Лх + у = Ь, х > 0,у > 0} (3')
путем введения т дополнительных переменных, т.е. увеличением размерности задачи.
Основной недостаток симплексного метода - его сложность. И хотя, как утверждают [7], его
о(п3),
Л =
Г в в Л А А
С = (св, Св ),
Ь =
Г ь Л
Ьв V Ьв ,
х = (хв, хв ),
хв = в ^Ьв,
хв = 0
и удовлетворяет условиям
тах = (св , хв ) = свВ ~1ЬВ, Вхв = Ьв,
в1хв < Ьв •
практическая сложность порядка ключены случаи его медленной сходимости и даже отсутствия таковой - зацикливание [8]. Эта ситуация объясняется тем, что сходимость симплексного метода базируется на некоторой эвристике использования градиента (локального оптимума).
Существенно упростить симплексный метод можно, отказавшись от выбора начального базиса и использования локального оптимума для выбора направления движения к глобальному оптимуму и перейдя к непосредственному (прямому) поиску глобального оптимума, т.е. решения.
Представим л, с , Ь и х в виде
Таким образом, определить решение задачи ЛП - значит, исследуя поставленную задачу на корректность, найти подмножество У в базисных переменных (столбцов), вносящих на паритетных условиях между собой максимальный «вклад» в целевую функцию, а также подмножество строк не ис- 1в оптимального базиса, т.е. строк, наиболее ог-
раничивающих значения переменных ; е У .
ОСНОВЫ ПРЯМОГО Р-МЕТОДА ИССЛЕДОВАНИЯ И РЕШЕНИЯ ЗАДАЧ ЛИНЕЙНОГО ПРОГРАММИРОВАНИЯ
Изложим основы прямого Р-метода исследования на корректность и решения задач линейного программирования (1), (2) и приведем доказательство оптимальности получаемого решения. Под корректной понимается задача ЛП, имеющая однозначное ограниченное решение. Некорректная задача - это задача, не имеющая решения или имеющая неограниченное или неоднозначное решение.
С целью упрощения дальнейшего изложения введем следующие обозначения:
{/': > 0, Ъ, > 0, ] е 3},
/21/: а ~ произвольные, Ь > 0, j е J}, 131/: а ~ произвольны е, Ь < 0, j е 3},
где В - базис; хв - базисные; а Хв - небазисные переменные; св и св - элементы целевой функции, соответствующие базисным и небазисным столбцам матрицы Л; Ьв и Ьв - элементы правой части вектора ограничений, соответствующие базисным и небазисным строкам матрицы ограничений.
Обозначим через I множество {1, 2,..., т}, и - подмножества множества I, соответствующие базисным и небазисным строкам матрицы Л; У - множество {1, 2, ..., п}: У и Уд - подмножества множества 3, соответствующие базисным и небазисным переменным (столбцам матрицы Л).
Решение задачи (3) в рамках введенных обозначений записывается в виде
У +: аг1 > 0,/ е П, У: а^ < 0,1 е I
У \}: С; > 0|, У\]: с} = 0}, У (; : cj < 0
- подмножество строк, наиболее ограничивающих хотя бы одно значение переменной; I; -подмножество строк 1к е I*, наиболее ограничивающих значение переменной ; е У , |Ь| - мощность множества Ь, У1 - подмножество переменных, наиболее ограниченных ц -й строкой (ресурсом).
Предлагаемый Р-метод исследования и решения задач ЛП основан на идее последовательного нахождения пары (10, ;0) - строки и столбца оптимального базиса - и состоит в следующем.
х
ИРКУТСКИМ государственный университет путей сообщения
1) Из системы ограничений (2) для каждого столбца ] е У определяем максимально (мини-
условия
мально для Ь. < 0) достижимое значение перемен- ^
_тшт
ние значения Ь. , то пара (/0, j0) определяется из
ной х
(cJ o ' \jo)
j •
= max
jeJn,ieI \ In
(cj ' Xij )'
(4')
2) Для каждой строки i e I определяем a" - гДе Xj - максимальн° для сл > 0 (минимально
относительный коэффициент ограниченности ею на паритетных условиях. Пусть ^ - строка, наиболее ограничивающая множество переменных хС,,] е У, а In - подмножество строк, не ограни-
чивающих указанное множество переменных.
3) Определяем пары (10, ]0) - строки и столбца оптимального базиса.
Если а. ^ > 0 для всех ] е У , то номер
столбца ]0 соответствует номеру переменной, ко-
для Ух = 0 и I з !3) достижимое значение переменной у е У11 на подмножестве строк 1 е I \ ^ или множестве 1 е I, если I = ¡п.
Замечание. В случае наличия подмножества строк 1 е I,, наиболее ограничивающих множество переменных х°с, ] е У , в качестве (г0, ]0) выбирается пара из (о, ]), вносящая максимальный "вклад" в целевую функцию. Под (г'0, ]0) понима-
~ ется пара, полученная для соответствующей стро-
торая вносит наибольший «вклад» в максимум це- ^ ' ^
ки 1 е I,.
левой функции для 1 -й строки, т.е. определяется из условия
(у • ) = тах (СУ • Ху),
где \j =■
Таким образом, номер столбца j0 определя-c
ется из условия max—— . Номер строки i0 е I \ In и
jeJ a
"sj
соответствует строке, наиболее ограничивающей
.6,
значение j0 -ой переменной, т.е. хг. . = min
ieI /1„ a
j0
Если в 1,, -й строке кроме положительных элементов имеется подмножество У столбцов ]1, для которых а = 0, т.е. не требующих использования наиболее дефицитного значения Ъ , то пара (10, ]0) определяется из условия:
Исключив переменную х , определенную из 1 -й строки, со всех других строк и целевой функции, переходим к определению следующей пары.
Теорема 1. Пусть для некоторого столбца ]0 обнаружится подмножество строк 10 е ^ . Оптимальному базису принадлежит только одна строка /0 из подмножества I; .
Доказательство. В случае ^ | > 1 строки 1к е ^^ линейно зависимы или несовместны. Действительно, пусть 1 и 1 - произвольные строки,
I,
Ь
Ь
принадлежащие
j0
т.е.
или
"kl j0
"k 2 j0
at j b
k2 = —^. Отсюда, если для всех j Ф j0 выпол-
Ь
"kl j0
няется условие
"k 2j
"k 2 j0
(cj0 ' X0 j0 ) =
in ax (cj' Xj )
jeJ jel\In
(4)
bk Ь
, то строки "k1 и
где х - максимально достижимое значение переменной ] е У на подмножестве строк 1 е I \ ^ . Если в 1 -й строке имеется подмножество
У11 столбцов ]11, для которых а. . < 0, т.е. подмножество столбцов, соответствующие значения переменных для которых влекут за собой увеличе-
1к1] 1к1]0 1к1 1к2 линейно зависимы. В этом случае в базис включается одна строка, а остальные исключаются из дальнейшего рассмотрения, как небазисные. Если же для некоторого подмножества столбцов ], е (], Ф ]0 ) рассматриваемых строк выполня-
ется неравенство
-Ф-
a,
a.
то строки несо-
"kljs "klj0
вместны. В базис включается одна строка, а под-
s
с
Ь
a
a
Системный анализ. Моделирование. Транспорт. Энергетика. Строительство
множество переменных ху- , ] е Js, полагают равными нулю, т.е. Js с ^ .
При определении пары (г0, ]0) может обнаружиться:
• наличие одной пары (строка, столбец), включаемой в базис;
• отсутствие хотя бы одной точки, удовлетворяющей системе ограничений (2), т.е. отсутствие решения;
• отсутствие строк, ограничивающих значение хотя бы одной переменной х^, ]к е J , т.е. наличие решения, причем априори неограниченного при условии с] > 0;
• наличие нескольких переменных, принадлежащих строке ^ и вносящих один и тот же наибольший «вклад» в целевую функцию, т.е. неоднозначность (альтернативность) решений.
Перейдем к обоснованию Р-метода, т.е. к доказательству оптимальности допустимого решения, определяемого Р-методом.
Теорема 2. Пусть рассматриваемая задача линейного программирования корректна. Тогда базис В, полученный Р-методом, является оптимальным, а вектор X = ВГХЪВ - решением задачи.
Доказательство. Двойственная задача по отношению к исходной задаче (3) имеет вид:
|ш1п(ъг , у) / Ату > ст, у > о|.
Известно [8], что если для некоторых допустимых базисных решений х' и у' исходной и
двойственной задач соответственно выполняется равенство значений целевых функций сх' = Ъту', то векторы X и у' являются решениями соответ-
ствующих задач.
Исходя из Р-метода, Вт является базисом двойственной задачи. Действительно, пусть (¿0, 70) - пара, определенная Р-методом для исходной задачи. Тогда Р-метод определяет для двойственной задачи пару (уо, ¿о). Таким образом, у' = (вт) ст - допустимое базисное решение двойственной задачи. Теперь для доказательства оптимальности вектора X необходимо установить
равенство значений целевых функций исходной и двойственной задач, т.е. выполнение равенства
сВ^Ъ = Ът (вт Г с . Применяя допустимые преобразования, имеем
сВ1Ъ = (сВ1ь) = Ът(В-1 )тст = Ът(Втст .
Теорема доказана.
Из основ метода вытекают очевидные следствия.
Следствие 1. Если в состав ограничений входят строки 11 е I1 с I, для которых Ъ = 0 , то
пару (г0, ]0) следует искать среди столбцов ] е J ,
для которых а, - < 0 . Если множество J - пустое,
то все переменные х^, ] е J, равны нулю. Если
при этом среди ограничений задачи есть строки 1 е /3, то такая задача не имеет решения.
Следствие 2. Максимально достижимые значения переменных х^, у е (J2 ^ Jз ) о J+, равны нулю. Следовательно, соответствующие столбцы являются небазисными (] е ^) и исключаются из рассматриваемого множества столбцов.
Следствие 3. Поскольку в ограничения (2) входят требования неотрицательности переменных, то пару (10, ]0) оптимального базиса следует искать, прежде всего, для подмножества столбцов ] е ^, если I = I или I = ^ /2; для непустого
подмножества столбцов ] е ^ о J, если J -подмножество столбцов, содержащих для 1 е 13 хотя бы один отрицательный элемент а] < 0.
ПРЯМОЙ Р-МЕТОД ИССЛЕДОВАНИЯ И РЕШЕНИЯ ЗАДАЧ ЛИНЕЙНОГО ПРОГРАММИРОВАНИЯ
Рассмотрим Р-метод определения пары (¿0,Уо) - строки и столбца оптимального базиса для основных классов ограничений.
Класс 1. Пусть I = 1Х. Тогда в силу следствия 2 множество J = J1.
1. Из системы ограничений (2) определяем максимально достижимые значения для каждой переменной у е J:
Ъ
Ш1П
1 е I,а,, >0ач
(5)
2. Для каждой строки 1 е ^ находим относительный коэффициент ограниченности по формуле:
а1 =-
Ъ
^ аг]х)
] е з
(6)
х
ИРКУТСКИМ государственный университет путей сообщения
3. Определяем пару (i0, j0). Пусть minai = as . Тогда j0 определяется
из условия
max ——
jeJ aiSj
j0
isJ 0
если для всех j e J значения
J'(
множество переменных j e J с J,
J
1. Для каждого у -го столбца системы (2)
определяем максимально достижимое значение соответствующей переменной:
Ъ
(7)
xC =
min
i e 12, a;j > 0 aij
Tj , если 3jr e J, для которого ai j < 0, i e/2,
a . > 0 . Номер hj
строки оптимального базиса определяется согласно основам Р-метода. Если для некоторого подмножества j e J1 значения a. . = 0, то пара
Jl hJi
(i0, j0) определяется из условия (4). Подмножество In с ID и определяется согласно ниже приведенным следствиям 4 и 5. ВЫВОДЫ
Следствие 4. Строки i e I1, для которых а > 1, не ограничивают ни одно из максимально
« c
достижимых значений переменных Xj , а значит,
являются небазисными и удаляются из дальнейшего рассмотрения.
Следствие 5. Пусть а"1 = max а'k и a > 0
>k elk 'к j
для всех j e J1. Тогда строки i g IK, для которых
а1 > a'k, небазисные, так как они не ограничивают ни одно из максимально достижимых значений переменных в большей степени, чем множество строк i e IK. Поэтому они тоже удаляются из дальнейшего рассмотрения.
Следствие 6. Переменные j e J'0 \ j0,
т - здесь и в дальнейшем сколь угодно большое положительное число.
2. Для каждой строки находим относительный коэффициент ограниченности по формуле:
Ъ — для Ъ > 0,
^ 1
Zi ^ aijxj X
Pj|Xj
aj >0
aij <0
(6')
Ti для Zi < 0.
> 1, наиболее ограниченные i0 -й строкой,
небазисные. Дефицитный ресурс (Ъ. ) максималь-
10
но используется на ту переменную, которая вносит наибольший «вклад» в целевую функцию. Формальный вывод следует из того, что базис -это квадратная матрица, т.е. каждому базисному столбцу соответствует одна уникальная базисная строка.
Следствие 7. Если строка содержит под-
>1, внося-
щих один и тот же максимальный «вклад» в целевую функцию, то задача имеет множество альтернативных решений.
Класс 2. Пусть I = !2 и
J = ^ ^ ^ Jз \ (J2 ^ Jз )о J+ .
Отсюда строки 11 е 12 с I2 , для которых Zl < 0 < Ъ , не ограничивают максимальные значения переменных на рассматриваемом шаге определения пары (¿о, Уо) , т е. относятся к подмножеству ^.
3. Поскольку для данного класса каждая строка содержит отрицательные элементы, то пара (¿о,Уо) оптимального базиса определяется по
формуле (4').
Рассматриваемая задача отличается от предыдущей тем, что кроме ограниченного одного или альтернативных решений, она может иметь неограниченное решение. Для данной задачи характерны следующие выводы.
Следствие 8. Решение рассматриваемой задачи неограниченное, если:
а) существует хотя бы один столбец ]г е J1 , для которого выполняется условие а^ < 0 для всех 1 е!2;
б) для всех строк 1 е! 2 выполняется условие ^ < 0.
Класс 3. Пусть I = Д ^ Д и
J = ^ ^ J2 ^ Jз \ (^2 ^ Jз )о J+ , т.е. все значения входных данных произвольные, за исключением требования неотрицательности вектора правой части.
1. Из системы ограничений 1 е I1 ] е J
класса 1 по формуле (5) определяем хс^ - максимально достижимые значения для каждой переменной ] е J .
c
а = <
Системный анализ. Моделирование. Транспорт. Энергетика. Строительство
2. Для каждой строки находим аг - относительный коэффициент ограниченности по формуле (6) для 1 е и по формуле (6') для 1 е !2. Подмножество определяется из класса 1, !и - из класса 2 , а -я строка определяется из подмножества 1 е (I \ ^) \ In.
3. Определение пары (¡0, У0) осуществляется по процедуре, описанной в основах метода.
ВЫВОДЫ
Следствие 9. Решение рассматриваемой задачи неограниченное в случае, если имеется хотя бы один столбец ]г е у, для которого выполняется условие а. < 0 для 1 е и а. = 0 для 1 е I,.
'' Уг 2 "г 1
Класс 4. Пусть I = 13 и
У = У ^У ^У \ (у ^ У )оУ + .
Существенным отличием этого класса задач от рассмотренных выше является наличие в его составе задач, не имеющих решения. Поэтому, определяя для этого класса задач решение, следует проводить исследование на наличие неотрицательных переменных, удовлетворяющих системе ограничений.
Ввиду того, что правые части строк 1 е !3 отрицательны, в оптимальный базис для каждой из этих строк входит хотя бы один столбец ]е У с
отрицательным коэффициентом а; < 0. Таким образом, поиск решения для задач этого класса следует начинать с подмножества столбцов
у е 3 с 3, содержащих хотя бы один отрицательный элемент а < 0.
1. Из каждого ] -го столбца системы 1 е !3,
] е У определяем минимально достижимое значение соответствующей переменной:
xj =
max
i е I3,atj < 0aij
Tj ,если 3jr e J, для которого atj < 0, i el3.
2. Для каждой строки 1 е ^ и столбцов
] е У находим относительный коэффициент ограниченности по формуле:
a = <
■ + T для Zi < 0,
(6'')
- для
Zi > 0.
Формула вычисления Z; определена в (6'). Из (6'') следует, что строки ц е l'3 с I3, для которых Z < 0 , не ограничивают найденные значения переменных на рассматриваемом шаге определения пары (" , j ) , т.е. относятся к подмножеству
In. Пусть е I, с I3 подмножество строк, для которых Z > 0, а с другой стороны Z - b < 0 •
r r r
Это значит, что значения исследуемой точки хС, " е I3, j е J не удовлетворяют подсистеме ограничений " е IГ, j е J . Поэтому необходим поиск новой точки. Из подмножества е I, определяем
as = min a'. Если подмножество I, = О , то
"еI3
" ь
as = max— .
ез Zi
3. Поскольку для данного класса каждая строка содержит отрицательные элементы, а зна-
W1
чит в "S -й строке имеется подмножество J
столбцов j , для которых a. . < 0, т.е. подмно-
"sJll
жество столбцов, соответствующие положительные значения переменных для которых уменьшают значение Z. ; то пара ( i0, j0) определяется из
"s
условия (4').
ВЫВОДЫ
Следствие 10. Отсутствие отрицательного элемента матрицы хотя бы в одной строке " е I3 является достаточным условием того, что задача не имеет решения.
Следствие 11. Задача имеет решение, если найдется хотя бы один столбец jr е J, для которого < 0 для всех строк " е I3. Причем решение
неограниченное, если jr е J1.
Следствие 12. Задача имеет решение, если Z < 0 для всех строк, т. е. подмножество I, = О.
Следствие 13. Задача не имеет решения, если Z > 0 для всех строк, т. е. I, = I.
Класс 5. Пусть I = I1 ^ I2 ^ I3 и J = J ^ J2 ^ J3 \ (J2 ^ J3)о J + .
Исходя из вышеизложенного для класса 4, поиск решения задач для класса 5 начинается с подмножества столбцов j е J с J, содержащих
b
ИРКУТСКИМ государственный университет путей сообщения
для строк i е I3 хотя бы один отрицательный элемент atj < 0 .
1. Для строк i е I1 определяем по формуле (5) максимально достижимые значения переменных xc, j е J .
j j
2. Для каждой строки i е I находим а1 - относительный коэффициент ограниченности по формуле (6) для 1 е I1 по формуле (6') для i е I2 и по формуле (6") для i е I3. Для i е I1 определяем подмножество ID небазисных строк согласно следствиям 4 и 5 класса 1. Исходя из выше изложенного для классов 2 и 4 строки ц е Il2 с I2, для которых Zj < 0, и строки 1л е I11 с I3, для которых Zt < 0, относятся к подмножеству IB. Если подмножество ir е I3 ^ О, то ais определяется из условия as = min а'. В противном случае iS -я
из подмножества
'gI3
_ШШШ
0(Сп2т), (п < т) или 0(Спт2), (п > да) , С < 1.
ПРИМЕРЫ
Рассмотрим Р-метод в сравнении с симплексным методом на различных, в том числе и на «экстремальных» для последнего, примерах, взятых из [8], по следующей вычислительной схеме (табл. 1).
Таблица 1
строка определяется
г е(т \ ^ )\Iи.
3. Если подмножество ^ ^ О, то пара (10, ]0) определяется из условия (4'), при условии,
что каждая строка е Гъ содержит хотя бы один отрицательный элемент, или, в противном случае, решение задачи отсутствует. Если подмножество Гъ = О, то пара (10, ]0) определяется из подсистемы 1 е (I \ ^) \ Д , ] е J по процедуре, описанной в основах метода.
ВЫВОДЫ
Следствие 14. Наличие в системе ограничений задачи ЛП подсистемы строк 1 е I1 влечет за собой отсутствие неограниченного решения.
Следствие 15. Наличие в системе ограничений задачи ЛП подсистемы строк 1 е Д влечет за собой возможность отсутствия решения.
СЛОЖНОСТЬ ВЫЧИСЛЕНИЙ Р-МЕТОДА
Предложенный Р-метод прямой (конечный), полиномиальный. Его вычислительная схема сводится, как видно, к вычислительной схеме решения систем линейных алгебраических уравнений методом Гаусса последовательного исключения со специальной процедурой выбора главного элемента. Сложность вычислений Р-метода с учетом сложности метода Гаусса [9] порядка
Номер шага Номера столбцов базисных переменных Номера столбцов небазисных переменных b а ц Z. i
С Коэффициенты целевой функции
xС Максимально (минимально) допустимые значения переменных 0 0 . . 0
Решение Значения переменных базиса 0 0 . . 0 Цель
Значения небазисных столбцов согласно следствию 2 отмечаются 0 и в дальнейшем исключаются из рассмотрения. Подчеркиванием выделяются элементы матрицы, наиболее ограничивающие значения переменных, а также а'я . Полужирным шрифтом с подчеркиванием выделяется переменная с ее максимальным «вкладом» в целевую функцию, а также соответствующий элемент матрицы со строкой и столбцом оптимального базиса.
Пример 1. Задача распределения ресурсов. Для симплексного метода понадобилось согласно с [8] четыре итерации для матрицы ограничений 4x7.
Нужно максимизировать функцию 4х1 + 5х2 + 9х3 + 11х4 при ограничениях:
X + x2 + X + x4 < 15, 7x + 5x2 + 3x3 + 2x4 < 120, 3x + 5x2 +10x3 + 15x < 100,
xf > 0, j = 1, 2, 3,4.
Системный анализ. Моделирование. Транспорт. Энергетика. Строительство
Шаг 1. Класс 1. Строка номер 2 согласно следствию 5 удаляется из рассмотрения. В оптимальный базис входит пара (1, 1). Согласно следствию 6 переменная номер 2 полагается равной нулю, а соответствующий столбец удаляется из дальнейшего рассмотрения как небазисный (табл. 2).
Таблица 2
Шаг 1 1 2 3 4 ь а'
С 4 5 9 11
1 1 1 1 1 15 0,321
2 7 5 3 2 120 0,538
3 3 5 10 15 100 0,312
хС 15 15 10 6,7
13 1,0 0,9 0,7
Шаг 2 1 3 4 2 ь
С 0 5 7
1 1 1 1 15
3 0 7 2 55
а3} 07 0,6
Решение 7,1 7,8 0 0 98,6
Пример 2. Медленная сходимость по симплексному методу.
Максимизировать х2 при ограничениях:
3х1 - 2х + 4х < -2,
3х1 - 8х3 < 6,
15х1 + 6х2 -12х3 < 222,
X + 4х < 12,
х, > 0, , = 1, 2,3.
Шаг 1. Класс 5. Столбец номер 1 согласно следствию 2 не принадлежит оптимальному базису и исключается из рассмотрения, а переменная номер 1 полагается равной нулю. Множество J состоит из одного столбца номер 2. Для соответствующей переменной хс2 выполняются ограничения 1 < хС < 37 . Таким образом, поскольку с2 > 0, определяем пару (3, 2) (табл. 4).
Таблица 4
Шаг 2. Класс 1. В оптимальный базис для строки номер 3 входит столбец номер 3. Согласно следствию 6 переменная номер 4 полагается равной нулю, а соответствующий столбец является небазисным. Оптимальный базис определен, а вместе с ним и решение (табл. 3).
Таблица 3
Шаг 1 1 2 3 ь
С 0 1 0
1 3 - 2 4 - 2
2 3 0 - 8 6
3 15 6 - 12 222
4 1 0 4 12
хС 0 37
Шаг 2. Класс 3. Множество J состоит из одного столбца номер 3, и получение решение задачи не составляет труда (табл. 5).
Таблица 5
Шаг 2 2 3 1 ь
С 0 2 72
1 0 0
2 0 - 8 6
4 0 4
3 1 - 4 12
37
Решение 43 3 0 43
Пример 3. Зацикливание по симплексному методу.
Максимизировать функцию
ИРКУТСКИМ государственный университет путей сообщения
0,75х -1 50х2 + 0,02х3 - 6х4 при ограничениях:
0,25 х - 60х - 0,04х + 9х < 0, 0,5х - 90х2 - 0,02х + 3х4 < 0,
Х3 < 1,
X > 0, ] = 1, 2, 3,4.
Шаг 1. Класс 3. Столбец номер 4 согласно следствию 2 не принадлежит оптимальному базису и исключается из рассмотрения, а переменная номер 4 полагается равной нулю. Согласно следствиям 1 и 3 множество У состоит из одного столбца номер 3. В оптимальный базис входит пара (3, 3) (табл. 6).
Таблица 6
Шаг 2 1 2 3 4 Ь
С 0,75 - 150 0
1 0,25 - 60 0 0,04
2 05 - 90 0 0,02
3 0 0 1 1
хС 0,04 0
Таблица 8
Шаг 3 2 1 3 4 Ь
С - 15 0,75 0
1 - 15 0 0 0,03
2 - 180 1 0 0,04
3 0 0 1 1
Решение 0 0,04 1 0 0,05
Шаг 1 1 2 3 4 Ь аг
С 0,75 - 150 0,02 - 6
1 0,25 - 60 - 0,04 9 0 Т
2 0,5 - 90 - 0,02 3 0 Т
3 0 0 1 0 1 1
1 0.
Пример 4. Неограниченное решение. Максимизировать х1 при ограничениях:
Г х - Х2 < 1,
[х + х < 1, х, > 0, ] = 1, 2.
Шаг 1. Класс 2. Согласно следствию 3 множество У состоит из одного столбца номер 1, откуда получаем пару оптимального базиса (1, 1) (табл. 9).
Таблица 9
Шаг 2. Класс 2. Согласно следствию 3 множество У состоит из одного столбца номер 1. Для столбца ]0 = 1 определяем строку /0 = 2 (табл. 7).
Таблица 7
Шаг 1 1 2 Ь а г
С 1 0
1 1 - 1 1 1
2 - 1 1 Т
хс 1
Шаг 2. Класс 2. Множество У состоит из одного столбца номер 2, который удовлетворяет условиям следствия 9, а значит, задача имеет неограниченное решение, которое получаем на этом шаге (табл. 10).
Таблица 10
На шаге 3 легко получаем решение (табл. 8).
Шаг 2 1 2 Ь
С 0 1
1 1 - 1 1
2 0 0 2
Решение 1+Т Т 1+Т
Системный анализ. Моделирование. Транспорт. Энергетика. Строительство
Пример 5. Недопустимое решение. Максимизировать х1 + Х2 при ограничениях:
Г- Х1 + Х2 <"1,
1Х1 " Х2 <"1,
Х > о, 1 = 1,2. Шаг 1. Класс 4. В данном примере J = J, Гъ = I .Согласно следствию 13 задача не имеет решения (табл. 11).
Таблица 11
Шаг 1 1 2 b Zi
c 1 1
1 -1 1 - 1 0
2 1 -1 - 1 0
xC 1 1
Пример 6. Множество альтернативных решений.
Максимизировать Х1 + Х2 при ограничениях:
х + х < з,
Х < 2, Х2 < 2 ^ > 0, 1 = 1,2.
Шаг 1. Класс 1. Строка г3 = 1 (табл. 12).
Так как = = 1, то, согласно следствию 7,
а11 а12
задача имеет множество альтернативных решений:
X + X = 3, X < 2, х < 2.
Таблица 12
Шаг 1 1 2 b а'
C 1 2 3 1 1 1 1 1 0 0 1 3 2 2 0,75 1 1
xC 2 2
au 1 1
Пример 7. Общая задача класса 5. Максимизировать 6x + 7x2 при ограничениях:
X + X - 20, 18х + 25x2 - 450,
- х + X - 10, 9х - 7х - 63, 2х - 3х2 - 6,
- х - X - -8, 2 х - 9 х --18,
- 17х - 2х2 --34, 0 - х - 21,
0 - X - 22.
Шаг 1. Класс 5. Подмножество J = J. Для класса 1: I = {1, 2, 9,10}, J = {1, 2} по формуле (5)
определяем , х°22. Для всех строк определяем а1 Откуда находим Г3 = О, ID ={9,10}, /и = I2 ^ I3 ={3, 4,..., 8}, min а' = а*. Со строки
' = 1 определяем j0 = 2. Со столбца j0 = 2 и строк (I \ ID ) \ In = {1,2} определяем minХ'2 = x22
и находим 70 = 2. Таким образом, в оптимальный базис входит пара (2, 2) (табл. 13).
Таблица 13
. В завершение приведем еще один пример из работы [10] .
Шаг 1 1 2 b а'
C 6 7
1 1 1 20 0,52
2 18 25 450 0,55
3 - 1 1 10 Т
4 9 - 7 63 1.1
5 2 - 3 6 Т
6 1 - 1 - 8 0,21+Т
7 2 - 9 - 18 0,15+Т
8 - 17 - 2 - 34 0,09+Т
9 1 0 21 > 1
10 0 1 22 > 1
xC 20 18
j au 6 7
ИРКУТСКИМ государственный университет путей сообщения
Шаг 2. Класс 5. Множество У состоит из одного столбца номер ]0 = 1. Отсюда легко находим /0 = 1, а вместе с тем и решение (табл. 14).
Таблица 14
Шаг 2 1 2 b ai
С 0,96 0
1 0,28 0 2 71
3 - 1,72 0 - 8 4,7+Т
4 14,04 0 189 13,5
5 4,16 0 60 14,5
6 - 0,26 0 10 T
7 8,48 0 144 17,0
8 - 15,56 0 2 T
2 0,72 1 18
Решение 7,1 12,9 132,9
как автономно, по аналогии с известными системами бухгалтерского учета, так и в составе информационно-аналитических систем [13] для поддержки управленческой деятельности.
БИБЛИОГРАФИЧЕСКИИ СПИСОК
0.
ЗАКЛЮЧЕНИЕ
Предложенный в работе Р-метод отличается не только полиномиальной сложностью и простотой вычислений, но и широкой возможностью исследования объекта моделирования. Этот метод по аналогии с методом формирования альтернативных решений на базе модели многокритериального линейного программирования [11], реализованным в системе [12], дает возможность не только исследовать задачу и получить адекватное решение, но и сформировать конструктивные рекомендации по изменению ситуации в плане достижения большего эффекта.
Кроме того, изложенные основы Р-метода применимы для разработки эффективных алгоритмов исследования и решения задач линейного программирования с целочисленными и булевыми переменными, а также для некоторых других оптимизационных задач. Подробно эта возможность Р-метода, как и конструктивные рекомендации по изменению задачи для получения большего эффекта, будут изложены отдельно.
Рассмотренный Р-метод для однокритери-альных задач ЛП вместе с методом [11] для исследования задач многокритериального линейного программирования являются эффективной математической базой для решения важнейших экономических задач. Реализованные для различных приложений: проблем бюджетирования, программно-целевого планирования, оперативного управления ресурсами, производством, сбытом и многих других, - они успешно могут применяться
4.
5.
6.
Михалевич М.В., Сергиенко И.В., Кошлай Л.Б. Моделирование внешнеэкономической деятельности в условиях переходной экономики // Кибернетика и системный анализ. 2001. №4. -С. 61-84.
1. Канторович Л.В. Математические методы в организации и планировании производства. Л. : ЛГУ, 1939.
2. DantzIg G.B. Linear Programming and Extensions. New Jersy : Princeton University Press, 1963. 625 P.
3. Муртаф Б. Современное линейное программирование. М. : Наука, 1984. 224 с. Хачиян Л.Г. Полиномиальный алгоритм в линейном программировании // Журн. вычисл. математики и мат.физики. - 1980. - Т. 20, №1. -С. 51-68.
Зойтендейк Г. Методы возможных направлений. М. : ИЛ, 1963. - 175 с. Лорьер Ж.Л. Системы искусственного интеллекта. М. : Мир, 1991. - 578 с.
7. Вагнер Г. Основы исследования операций. М. : Мир, 1972. - Т. 1. 335 с.
8. Фаддеева В.Н., Фаддеев Д.К. Вычислительные методы линейной алгебры. М. - Л.: Наука, 1963. 734 с.
Михалевич В.С., Волкович В.Л., Волошин А.Ф. Метод последовательного анализа в задачах линейного программирования большого размера // Кибернетика. - 1981. - №4. - С. 114-120.
10.Плиш В.Е. Алгоритмы формирования альтернативных решений на базе модели многокритериального линейного программирования // Кибернетика и системный анализ. - 1998. - №2. -С. 170-174.
11.Плиш В.Е., Трутень А.Е. Система ФОРА -формирование альтернативных вариантов решений на базе модели многокритериального линейного программирования // Кибернетика и системный анализ. - 1997. - №2. - С. 150-155.
12.Плиш В.Е., Трутень А.Е. Информационно -аналитические системы - "интеллектуальный" партнер лиц, принимающих решения // Кибернетика и системный анализ. - 2004. - №3. -С. 151-167.
9.