Многокритериальные модели

реклама
МНОГОКРИТЕРИАЛЬНЫЕ МОДЕЛИ
Рассмотренные в предыдущей главе ситуации имели очень
важное общее свойство - каждой из них сопоставлялась
единственная целевая функция. Именно единственность этой
функции обеспечила возможность создания эффективных методов
решения оптимизационных задач. Однако, естественно, возникает
вопрос: а хорошо ли такие оптимизационные модели описывают
реальную действительность? Ответ на него неоднозначен.
Да, эти модели могут достаточно хорошо описывать
сравнительно
простые
ситуации,
скажем,
такие,
как
обсуждавшиеся выше. Нет, если приходится иметь дело с таким
очень часто встречающимся фактом, когда целе направленная
человеческая деятельность преследует сразу несколько целе й. В
качестве иллюстрации вспомним очень популярный одно время и
не утративший своей актуальности лозунг «Дадим больше обуви
лучшего качества по более низкой цене». Этот лозу нг в точности
характеризует те цели, которые стояли и стоят перед
специалистами обувной промышленности. Целей этих три, они
противоречивы, и с этим приходится считаться. Действительно,
хорош ли будет тот план, который по зволяет выпустить в д ва раза
больше обуви, чем выпускалось раньше, но такой, которая
разваливается через неделю? Нет, ясно, что он никого не
устраивает. А если выпустить мало обуви, но ве ликолепного
качества и по очень высокой цене? То же не годится. Понятно, что
всякий план производства обуви должен оцениваться сразу по
нескольким критериям. Такие задачи, в которых имеется не одна,
а
несколько
целевых
функций,
получили
название
многокритериальных задач. Методы решения их проиллюстрируем
на примере, рассмотренном в § 2 глава 3, лишь чуть усложнив его.
КАК РЕШАЮТ МНОГОКРИТЕРИАЛЬНЫЕ ЗАДАЧИ
Напомним, что речь идет об изготовлении п видов продуктов
из m видов сырья, причем требуется максимизировать суммарную
ценность произведенных продуктов. Кроме этой цели, добавим
еще одну. Допустим, что нам нужно максимизировать выпуск
продукта первого типа. Таким образом, теперь модель выглядит
так:
n
max  cjxj
(А)
{ xj} j=1
max x1
(В)
при условиях: 1. x j 0, J =1, 2, ..., n.
1
n
2. aij x j  b,i  1,2,..., m.
j 1
Прежде чем приступить к решению, обсудим задачу, чтобы
лучше почувствовать ее специфику. Потом и ме тоды решения
будут более понятны.
Итак, забудем на минутку о целевой функции ( А ) . Тогда не
составляет труда найти максимальное значение x 1 = x1 ,которое
удовлетворяет условиям 1 и 2. Однако нет никакой уверенности,
что при x 1 = x1 целевая функция ( А ) достигнет максимума. Более
того, она может быть от него очень далека. Совершенно
аналогично обстояло бы дело, если бы мы забыли о функции (В) и
и кали максимум функции (А).
В многокритериальной задаче претерпевает измене ние и
такое важное понятие, как оптимальный план. Действительно,
можно сказать, что допустимый план ( x 1 1 , x 2 1 , … , x n 1 ) хуже, чем
допустимый
план
(x 1 2 , x 2 2 , … , x n 2 ) ,
если
выполняются
неравенства
n
n
 c j x j  c j x j ,
1
j 1
2
j 1
x x
1
2
1
1
.
А вот сказать, какой план называется оптимальным, уже в
такой простой задаче оказывается невозможным. Так как,
*
*
*
вообще говоря, не существует такого плана ( x1 , x2 , …, x n ) ,
который
доставлял
бы
одновременно
макси мум
двум
ф у н к ц и я м - ( А ) и ( В ) . Это обстоятельство и является причиной
того, что методы решения многокритериальных задач
предусматривают в том или ином виде учет мнения лица,
принимающего решение (ЛПР). Поясним роль ЛПР, обсуждая
два часто употребляющихся метода решения этих задач.
I.
Сведение двух критериев к одному
Идея метода состоит в том, чтобы свести несколько (в нашем
случае два) критериев в один. Для реализации этого ЛПР
должен «взвесить» относительную важность для себя каждого
критерия, т. е. он должен выбрать из внемодельных
соображений число
(0
l ) , а затем построить единую
целевую функцию:
n
(  cj x j ) + ( l - )
1.
(С)
j
2
Если = 1, то в расчет принимается только целевая функц ия (A), а
функция ( В ) вообще исключается из рассмотрения. Если = 0, то
картина
обратная.
Глубокое
знание
реальной
проблемы,
накопленный опыт могут позволить ЛПР выбрать 0< < 1 так,
чтобы, решив оптимизационную задачу с единственно й целевой
функцие й ( С ) , он получил бы удовлетворяющее его решение для
исходной постановки задачи с двумя целевыми функциями.
По сути, встретив трудности при решении двухкритериальной
задачи, мы заменяем ее однокритериальной, решать которую
умеем.
II. Метод последовательных уступок
Будем решать задачу с единственной целевой функ цией ( В ) .
Пусть mах x1  x1 . Теперь, понимая, ч т о п р и
до
x1  x1
максимума целевой функции (A) может быть весьма далеко, ЛПР
делает уступку. Он согласен, что бы x1 не равнялось x1 а
отличалось бы от нее не более, чем на 1 0 % этой величины.
Естественно возникает сле дующая задача:
Найти
mах
n
c x
j 1
j
j
X j 0 , j = 1 , 2 , … п,
n
a
j 1
1j
0,9 x1
x j  b1, j  1,2,..., m.
x1 <
x.
1
Эта задача с единственной целевой функцией м ожет быть
решена известными методами. Величина x 1 примет теперь
значение x1 . А что если ЛПР готов сделать еще большую уступку?
Скажем, он согласен, чтобы x 1 отличалось от
x
1
не более, чем на
20% x 1 \. В этом случае неравенство (*) заменится на такое: 0,8
x.
1
< x 1 < x1 . , и снова задача может быть решена. Процесс уступок
может быть продолжен.
Быть может, кому-нибудь и покажется странным, что при
поиске плана, кроме формализованного алгоритма, фигурируют
такие понятия, как «опыт», «предпочтение». Однако странность
3
эта кажущаяся, включение «человеческого фактора» здесь вполне
уместно и естественно.
Если читатель обратится к своему жизненному опыту, то он,
несомненно, согласится с тем, что, если человек преследует
несколько целей, в какой-то момент почти всегда перед ним
возникает вопрос: чем и в какой степени пожертвовать? Мы
вернемся еще к этому вопросу в главе, посвященной имитационному
моделированию.
4
Скачать