Многокритериальные задачи линейного и нелинейного программирования

Источник:http://ami.nstu.ru/~post/lab_opt/report/rep8.doc

Абрамов М.В. Буняк А.А. Селезнев А.Н.

Цель работы: исследование многокритериальных задач линейного и нелинейного прог-раммирования при различных компромиссных критериях.

Задание работы:

• Определить тип компромиссного критерия, который необходимо использовать для решения варианта задания

• Используя программное обеспечение решения задач линейного и квадратичного программирования, исследовать влияние весовых коэффициентов ?i.

• Изобразить множество допустимых значений критериев в координатах Fi(Fj) в со-ответствии с вариантом задания. Найти Парето - оптимальное множество решений.

РЕШЕНИЕ

Для начала изобразим ту область на вещественной плоскости, в которой нас вынуждают локализоваться ограничения.

Отсюда сразу видно, что в принципе ограничение на отрицательность вектора X является излишним. Но для полноты анализа метода оставим это условие.

Мы имеем задачу принятия решения в условиях определенности при наличии двух кри-териев. Поскольку критерии сформулированы относительно максимизации некоторых абст-рактных величин, будем полагать, что оба критерия измеряются в одинаковых шкалах, а это значит, что обобщенный критерий будем выбирать в виде.

ЛИНЕЙНЫЕ ЗАДАЧИ.

На самом деле, F0 задает ничто иное как плоскость в пространстве (x1,x2,F0). Мы пом-ним, что оптимальное решение задачи линейного программирования достигается в угловой точки многогранника решений, а значит оптимальное решение будет зависеть от расположения плоскости F0 и плоскостью X1-O-X2.

Воспользуемся симплекс-методом и вычислим оптимальные компромиссные решения для различных W.

W=0.000; Xopt=(6.000,2.000); W=0.010; Xopt=(2.727,0.909); W=0.020; Xopt=(2.727,0.909); W=0.030; Xopt=(2.727,0.909); W=0.040; Xopt=(2.727,0.909); ………………………………………………………………………… W=1.000; Xopt=(2.727,0.909); Выбирая шаг 1е-7, получим: W=0.00000000; Xopt=(6.000,2.000); W=0.00000010; Xopt=(6.000,2.000); W=0.00000020; Xopt=(2.727,0.909); W=0.00000030; Xopt=(2.727,0.909); W=0.00000040; Xopt=(2.727,0.909); W=0.00000050; Xopt=(2.727,0.909); ……………………………………………………………………………………… W=0.00010000; Xopt=(2.727,0.909);

Это означает, что в действительности, критерии третий и второй, измеренные в единой шкале, настолько разновесомы, что второй критерий буквально «забивает» третий при крайне незначительном отклонении параметра от 0: это обусловлено тем, что при некоторых соотно-симых w (0.4-0.6) – легко увидеть на графике, что третий критерий выглядит незначительной помехой к уравнению плоскости, задаваемой вторым критерием.

На рисунке на следующей странице зеленой точкой показана точка (6,2), а красной – точка (2,727; 0,909). Из рисунка можно увидеть, что действительно, поскольку второй критерий имеет молниеносное убывание по фактору x2, то максимум будет достигаться при плане, имеющем минимальную x2-компоненту.

Теперь попробуем предположить, что столь различный вид критериев (величина коэффи-циентов) обусловлен разнородностью шкал этих критериев, и попробуем воспользоваться вто-рым представлением обобщенного критерия.

Для того, чтобы воспользоваться таким критерием, нужно найти максимальные значения на допустимом множестве X каждого из критериев, что есть однокритериальные задачи линейного программирования.

W=0.00000000; Xopt=(6.000,2.000); W=0.00100000; Xopt=(6.000,2.000); W=0.00200000; Xopt=(6.000,2.000); ……………………………………………………………………………………… W=0.31000000; Xopt=(6.000,2.000); W=0.31100000; Xopt=(6.000,2.000); W=0.31200000; Xopt=(6.000,2.000); W=0.31300000; Xopt=(2.727,0.909); W=0.31400000; Xopt=(2.727,0.909); W=0.31500000; Xopt=(2.727,0.909); …………………………………………………………………………………… W=0.99900000; Xopt=(2.727,0.909); W=1.00000000; Xopt=(2.727,0.909);

Очевидна более хорошая сбалансированность критериев: теперь выбирая W на переходах между оптимальными точками, например W=0.312, мы можем быть убеждены, что оба критерия дают неплохие результаты, в то время как при ненормированном обобщенном кри-терии, требуя от третьего критерия хоть какой-нибудь весомости, мы сводили на нет второй критерий. (Эти факты следуют из непрерывности критериев, как линейных функций).

Осталось изобразить допустимое множество значений критериев в координатах F2(F3) и выделить Парето - оптимальное множество. Для этого сделаем следующим образом, возьмем квадрат [x1,x2] = [0,0; 6,6] – равномерно рассыпем в нем точек, посчитаем значения критериев и сразу оговорим, что верхняя граница этого множества должна быть Парето – оптимальным множеством, так как исходная задача была задачей максимизации критериев.

КВАДРАТИЧНЫЕ ЗАДАЧИ.

Будем решать задачу методом Баранкина и Дорфмана, поскольку сумма двух квадратич-ных форм представляет собой квадратичную форму, а сумма двух линейных – линейную. Содержимое файла VIHOD.TXT для значений W из [0,1]: Cетка по W была подроблена с шагом 0.01;

W=0.01800000; Xopt=(0.652,1.739); W=0.01900000; Xopt=(0.652,1.739); W=0.02000000; Xopt=(0.652,1.739); W=0.02100000; Xopt=(6.000,2.000); W=0.02200000; Xopt=(6.000,2.000); W=0.02300000; Xopt=(6.000,2.000); ………………………………………………………………………………… W=0.05400000; Xopt=(6.000,2.000);

Квадратичная функция в этом случае, как было видно принимает свои оптимальные значения тоже в угловых точках допустимой области. Не будем останавливаться на минимизации суммы нормированных критериев, пос-кольку шкалы обоих критериев идентичны.