Теория принятия решений

advertisement
ТЕОРИЯ ПРИНЯТИЯ РЕШЕНИЙ
ГЛАВА 3
МАРКОВСКИЕ МОДЕЛИ ПРИНЯТИЯ РЕШЕНИЙ.
ЗАДАЧА МНОГОКРИТЕРИАЛЬНОЙ ОПТИМИЗАЦИИ
Глава 1. Введение в теорию принятия решений.
Глава 2. Моделирование и обработка информации.
Глава 3. Марковские модели принятия решений. Задача многокритериальной оптимизации.
ОГЛАВЛЕНИЕ
Стр.
1 МАРКОВСКИЕ МОДЕЛИ ПРИНЯТИЯ РЕШЕНИЙ.................................................................. 3
1.1 Основные понятия ..................................................................................................................... 3
2 ПРИНЯТИЕ РЕШЕНИЙ ПРИ КОНЕЧНОМ ГОРИЗОНТЕ ПЛАНИРОВАНИЯ .................... 7
2.1 Постановка задачи ..................................................................................................................... 7
2.2 Метод итераций по стратегиям ................................................................................................ 8
3 ПРИНЯТИЕ РЕШЕНИЙ ПРИ БЕСКОНЕЧНОМ ГОРИЗОНТЕ ПЛАНИРОВАНИЯ .......... 12
3.1 Постановка задачи ................................................................................................................... 12
3.2 Метод полного перебора .......................................................................................................... 13
3.3 Метод итераций по стратегиям .............................................................................................. 17
3.3.1 Метод итераций по стратегиям без дисконтирования ................................................. 17
3.3.2 Метод итераций по стратегиям с дисконтированием................................................... 21
3.4 Метод линейного программирования ................................................................................... 24
3.4.1 Постановка общей задачи линейного программирования и ее анализ ...................... 29
3.4.2 Формы записи задач линейного программирования ................................................... 35
3.4.3 Задачи, приводящие к задачам линейного программирования ................................. 41
4 ЗАДАЧА МНОГОКРИТЕРИАЛЬНОЙ ОПТИМИЗАЦИИ И МЕТОДЫ ЕЕ РЕШЕНИЯ .... 45
4.1 Постановка задачи многокритериальной оптимизации и ее особенности ....................... 45
4.2 Понятие решения в задаче многокритериальной оптимизации ........................................ 48
4.3 Методы задания предпочтений на множестве целевых функций ..................................... 50
4.4 Метод идеальной точки ........................................................................................................... 56
ГЛОССАРИЙ ..................................................................................................................................... 63
2
1 МАРКОВСКИЕ МОДЕЛИ ПРИНЯТИЯ РЕШЕНИЙ
1.1 Основные понятия
Марковский процесс – это процесс, протекающий в некоторой системе, при котором для
каждого момента времени поведение системы в будущем зависит только от состояния системы в
данный момент и не зависит от того, каким образом система пришла в это состояние.
Случайная цепь – это случайный процесс X(t) с дискретным временем и дискретным
множеством значений. Простая марковская цепь – это случайная цепь, для которой в каждый
момент времени закон распределения Х(tk) вполне определяется значением Х(tk-1) и не зависит от
предыдущих значений.
Марковская задача принятия решений – это задача математического программирования к
многошаговым задачам принятия решений в условиях риска, в которой процесс изменения состояния любой изучаемой системы является марковским процессом с конечным множеством
возможных состояний и дискретным временем. Математические модели, приводящие к таким
задачам, называют марковскими моделями принятия решений.
В марковских моделях принятия решений поощрения (доход, потери) задают матрицей
доходов. Матрица доходов – это матрица, элементами которой являются доходы (положительные
значения) или затраты (отрицательные значения), возникающие вследствие перехода системы из
одного возможного состояния в другое. Матрица переходных вероятностей – это матрица,
каждый элемент pij которой является вероятностью перехода из состояния Si в состояние Sj.
Матрицы переходных вероятностей и матрицы доходов зависят от стратегий, т.е. допустимых
решений, которыми располагает лицо, принимающее решения. Основная цель — определение
оптимальной стратегии (оптимального решения), максимизирующей ожидаемый доход за
конечное или бесконечное число этапов марковского процесса изменения состояния изучаемой
системы.
Иллюстрацией здесь может служить пример с садовником, который, несмотря на его
простоту, может быть полезен при анализе актуальных прикладных задач (управление запасами,
замена оборудования, контроль и регулирование емкости водохранилища и т.д.). Напомним, что
садовник, проводя химический анализ почвы, каждый год в начале сезона оценивает
продуктивность своего сада как хорошую, удовлетворительную или плохую. Оценка состояния
сада позволяет садовнику принять одно из допустимых решений: обойтись без дополнительной
обработки или провести обработку, включающую, например, внесение удобрений. Это требует
дополнительных затрат, а цель садовника — получить максимальный доход. Отметим, что
садовник планирует поработать на своем участке еще N лет и его интересует оптимальный
вариант своих действий, отражающий, в какие годы нужно проводить дополнительную обработку
участка.
Рассмотрим некоторую динамическую систему S с возможными дискретными состояниями
Sj, j = 1, 2, … m, которая в фиксированные последовательные моменты времени t1 < t2 < ...
случайным образом переходит скачком (мгновенно) из одного возможного состояния в другое или
остается в прежнем. При этом будем предполагать, что сам процесс изменения состояния
изучаемой системы S является марковским процессом, т.е. вероятность перехода системы S в
3
любое возможное состояние в момент времени ti определяется состоянием, достигнутым в момент
времени ti–1, и не зависит от того, когда и как она пришла в это состояние. Фиксированные
моменты времени ti принято называть шагами (или этапами) марковского скалярного процесса
изменения состояния системы S.
Для удобства дальнейших рассуждений некоторый момент времени t0 < t1 будем считать
начальным и введем случайное событие sik, состоящее в том, что после i этапов исходная система
S находится в состоянии Sk, k = 1, 2, … m. При этом i = 0 соответствует начальному этапу, и при
любом фиксированном i события sik, k = 1, 2, … m образуют полную группу событий. Поэтому
m
k 1
P[sik] є 1, i = 1, 2, …, N.
Кроме того, вектор
i
i
i
p(i) = (P[s 1], P[s 2], …, P[s m])
T
является вектором вероятностей состояний системы S после i этапов при i = 1, 2, …, N и вектором
начальных вероятностей состояний системы S при i = 0.
В соответствии с исходными допущениями условная вероятность реализации случайного
i
i-1
события s k при условии s j зависит от принятого после (i–1)-го этапа решения Xni-1 из множества
G допустимых решений.
Таким образом,
i
i-1
pjk( i | Xni-1) = P[ s | s j; Xni-1]
k
и матрица переходных вероятностей
P( i | Xni-1) = (p ( i | Xni-1)).
jk
При этом нетрудно убедиться в том, что верны следующие утверждения:
а) сумма элементов любой строки матрицы переходных вероятностей P( i | Xni-1) равна
единице;
б) вектор вероятностей состояний изучаемой системы S после i этапов равен произведению
транспонированной матрицы переходных вероятностей P( i | Xni-1) на вектор вероятностей
состояний после (i -1)-го этапа, т.е.
p(i) = P( i | Xni-1)p(i –1).
Из приведенных рассуждений, в значительной степени очевидных, следует вывод о том, что в
общем случае вектор вероятностей состояний системы S после N этапов зависит от вектора
4
начальных вероятностей ее состояний р(0) и вектора (Xn0 Xn1 … XnN-1))
T
N
G , который называют
вектором решений. Действительно,
T
T
T
p(N) = P ( N | XnN-1)p(N –1) = P ( N | XnN-1) P ( N – 1 | XnN-2)p(N – 2) = …
T
T
T
… = P ( N | XnN-1) P ( N –1 | XnN-2)… P ( 1 | Xn0) p(0).
Пример 1.1. Каждый год в начале сезона садовник проводит химический анализ почвы на
своем участке и по его результатам оценивает продуктивность сада на новый сезон как хорошую,
удовлетворительную или плохую (таблица 1). По результатам многолетних наблюдений садовник
установил, что продуктивность сада в текущем году можно считать зависящей лишь от состояния
почвы в предыдущем году. Таким образом, процесс изменения состояния почвы представляет
собой марковский процесс с тремя возможными состояниями и дискретным временем.
Таблица 1. Продуктивность почвы и соответствующее каждой из ее характеристик состояние системы
Продуктивность почвы
Хорошая
Удовлетворительная
Плохая
Состояние системы
S1
S2
S3
Пусть в рассматриваемом примере матрица переходных вероятностей является постоянной
0, 2 0,5 0,3
P1 =
0
0
0,5 0,5 ,
0
1
где номера строк и столбцов — это номера состояний системы S1, S2, S3 (см. таблицу 1) в текущем
и последующем годах, соответственно. Так, например, если в текущем (i – 1)-м году состояние
почвы хорошее, то вероятность ее перехода в плохое состояние в последующем i-м году равна
i
i-1
p13(i) = Р [s 3 | s1 ] = 0,3.
Садовник может принять решение о применении удобрений с целью повышения
продуктивности сада, т.е. с целью улучшения состояния почвы, так как в противном случае
переходные вероятности не изменятся. Если же садовник принял решение о применении
удобрений, то переходные вероятности задаются матрицей
0,3
P2 =
0, 6
0,1
0,3 ,
0, 05 0, 4 0,55
0,1
0, 6
наглядно иллюстрирующей улучшение состояния почвы в последующие годы.
В рассматриваемом примере множество допустимых решений G = {X1, Х2}, где X1 — решение
не вносить удобрений, a X2 — решение внести удобрения. Таким образом, для i = 1, 2, …, N
матрица переходных вероятностей равна
P( i | Xni-1 ) =
5
P1 , X ni 1
X1
P2 , X ni 1
X2
.
С переходом системы S из одного состояния в другое связана матрица дохода R(i | Xni-1 ) =
= (rjk( i | Xni-1 ))
Mm(R), в которой элемент rjk( i | Xni-1 ) есть доход (положительное значение) или
убыток (отрицательное значение) за i-й этап. При этом доход или убыток за i-й этап связан лишь с
переходом системы из состояния Sj, в котором она находилась после (i – 1)-го этапа, в состояние Sk
при принятии решения Xni-1
G.
Величина
m
nj( Xni-1) =
pjk( i | Xni-1) rjk( i | Xni-1)
(1)
k 1
определяет ожидаемый доход за i-й этап, если после (i –1)-го этапа система находилась в
состоянии Sj и было принято решение Xni-1
G. Заметим, что ожидаемый доход связан лишь с
переходами системы из одного возможного состояния в другое при фиксированном допустимом
решении.
Далее в качестве принципа оптимальности, совпадающего в рассматриваемом случае с
критерием оптимальности, использована максимизация ожидаемого дохода за N этапов. При этом
специфика решения задачи прежде всего связана с тем, будет ли число этапов N конечным или
нет. В соответствии с этим рассматривают задачи принятия решений с конечным горизонтом
планирования, когда N < , или с бесконечным горизонтом планирования, когда N = .
Необходимо отметить, что лицо, принимающее решения, может интересовать величина
ожидаемого дохода при заранее определенной стратегии поведения в случае того или иного
состояния системы. Так, например, лицо, принимающее решения, может считать, что если после
(i –1)-го этапа система находится в состоянии Sj, то безотносительно к конкретному значению
j всегда необходимо принимать решение X*
G. В этом случае говорят, что процесс принятия
решений описывается стационарными стратегиями. При этом каждой стационарной стратегии
будут соответствовать свои матрицы переходных вероятностей и доходов.
Пример 1.2. Продолжим анализ задачи с садовником (см. пример 1.1) и для наглядности будем
считать, что матрицы доходов (в условных денежных единицах), соответствующие матрицам
переходных вероятностей P1 и P2, имеют следующий вид:
7 6
3
6 5
R1 = 0 5 1 , R2 = 7 4
0 0
1
6 3
1
0 ,
2
где в матрице доходов R2 учтены затраты, связанные с внесением удобрений, и
R ( i | Xni-1 ) =
R1 , X ni 1
X1
R2 , X ni 1
X2
.
Характер задачи принятия решений, стоящей перед садовником, прежде всего связан с тем,
будет ли его деятельность продолжаться конечное число лет (N <
будут заниматься садом всю свою жизнь (N =
) или он и его наследники
). Но в любом случае садовнику необходимо
выбирать наилучшую стратегию поведения (вносить или не вносить удобрения) при известных
6
результатах химического анализа почвы, характеризующих ее состояние, с целью максимизации
ожидаемого дохода за N лет.
В частности, садовник может решить, вносить удобрения тогда и только тогда, когда
состояние почвы плохое. Этой (одной из возможных) стационарной стратегии соответствуют свои
матрицы переходных вероятностей Р и доходов R
0, 2
0,5
0
0,5
0,3
7 6
0,5 , R = 0 5
P=
0, 05 0, 4 0,55
6 3
3
1 .
2
Они отличаются от матриц P1 и R1 лишь третьими строками, заимствованными из матриц P2 и
R2, соответственно.
2 ПРИНЯТИЕ РЕШЕНИЙ ПРИ КОНЕЧНОМ ГОРИЗОНТЕ ПЛАНИРОВАНИЯ
2.1 Постановка задачи
При конечном горизонте планирования (N < ) марковскую задачу принятия решений можно
представить как задачу динамического программирования.
Для доказательства введем следующее определение: оптимальный ожидаемый доход fi(j) –
это наилучший доход в смысле используемого принципа оптимальности за этапы с номерами
i, i + 1, ..., N при условии, что после (i –1)-го этапа изучаемая система S находится в состоянии Sj,
где j
{1, 2, ..., m}. Так как горизонт планирования конечен, то для оптимальных ожидаемых
доходов должны быть выполнены естественные условия:
fN+1(j)
0, j = 1, 2, …, m.
Оптимальный ожидаемый доход fi(j) на этапах с номерами i, i + 1, ..., N складывается из двух
составляющих. Первая составляющая — оптимальный ожидаемый доход на (i + 1)-м этапе,
обусловленный одним лишь переходом системы S из состояния Sj, в котором она находилась на
i-м этапе, в любое допустимое состояние Sk, k = 1, 2, …, m на (i + 1)-м этапе (рисунок 1).
Рисунок 1. Графическое представление составляющих оптимального ожидаемого дохода f (j)
i
на этапах с номерами i, i+1
7
Эта составляющая равна
max j(Xni),
Xmi G
m
j(Xni) =
pjk( i +1 | Xni) rjk( i +1 | Xni),
k 1
где pjk( i +1 | Xni) — условная вероятность того, что после (i + 1)-го этапа система S будет
находиться в состоянии Sk, если после i этапов она находилась в состоянии Sj и было принято
допустимое решение Xni; rjk( i +1 | Xni) — доход или убыток, связанный лишь с переходом системы
из состояния Sj, в котором она находилась после i этапов, в состояние Sk на (i +1)-м этапе в
результате принятия решения Xni из множества допустимых решений G.
Вторая составляющая оптимального ожидаемого дохода fi(j) определяется совокупностью
оптимальных ожидаемых доходов fi+1(k), k = 1, 2, …, m с учетом переходных вероятностей
pjk( i +1 | Xni), k = 1, 2, …, m
m
max
Xmi G
pjk(i +1 | Xni) fi+1(k).
k 1
В результате проведенных рассуждений мы приходим к рекуррентному уравнению
динамического программирования с конечным числом этапов, связывающему оптимальные
ожидаемые доходы fi(j), j = 1, 2, …, m и fi+1(k), k = 1, 2, …, m:
m
fi(j) = max
{ j(Xni) +
Xm G
i
pjk( i +1 | Xni) fi+1(k)},
k 1
i = 1, 2, …, N–1, j = 1, 2, …, m.
При этом напомним, что fN+1(k)
0, k = 1, 2, …, m и
m
pjk( i +1 | Xni) rjk( i +1 | Xni), j = 1, 2, …, m.
j(Xni) =
k 1
2.2 Метод итераций по стратегиям
Пример 2.1. Вернемся к задаче с садовником, которую мы начали рассматривать в примерах
1.1, 1.2, и предположим, что он планирует прекратить занятие садоводством через три года и за
этот период хочет получить максимальный доход. Для этого ему необходимо выработать
оптимальную стратегию поведения (в смысле максимума суммарного дохода).
Напомним, что изучаемая система (сад) имеет три возможных состояния, определяемые
состоянием почвы: S1 — хорошее, S2 — удовлетворительное, S3 — плохое. Множество
8
допустимых решений садовника G = {X1, Х2}, где Х1 — решение о невнесении удобрений, a X2 —
решение о внесении удобрений. Матрица переходных вероятностей имеет вид
P1 , X ni 1
X1
P2 , X ni 1
X2
R1 , X ni 1
X1
R2 , X ni 1
X2
P( i | Xni-1 ) =
0, 2 0, 5 0, 3
где P1 =
0
0
0,3
0,6
,
0,1
0, 5 0, 5 , P = 0,1 0,6 0,3 ,
2
0
1
0,05 0, 4 0,55
а матрица дохода имеет вид
R( i | Xni-1 ) =
7 6
3
6 5
где R1 = 0 5 1 , R2 = 7 4
0 0
1
6 3
,
1
0 .
2
В рассматриваемом случае горизонт планирования N = 3, а элементы матриц доходов и
переходных вероятностей не зависят от номера этапа.
Воспользовавшись матрицами P1, P2, R1, R2 и их независимостью от номера этапа, вычислим
ожидаемые доходы (1), обусловленные одним лишь переходом изучаемой системы S из одного
возможного состояния в другое, при различных вариантах допустимых решений из множества G:
(X1) = 0,2 · 7 + 0,5 · 6 + 0,3 · 3 = 5,3,
1
(X1) = 0 · 0 + 0,5 · 5 + 0,5 · 1 = 3,
2
(X1) = 0 · 0 + 0 · 0 + 1 · (-1) = – 1,
3
(X2) = 0,3 · 6 + 0,6 · 5 + 0,1 · (-1) = 4,7,
1
(X2) = 0,1 · 7 + 0,6 · 4 + 0,3 · 0 = 3,1,
2
(X2) = 0,05 · 6 + 0,4 · 3 + 0,55 · (-2) = 0,4.
3
Для наглядности воспользуемся табличным алгоритмом решения рассматриваемой задачи
(таблица 2 — этап 3, соответствующий f3(j), таблица 3 — этап 2, соответствующий f2(j), таблица 4
— этап 1, соответствующий f1(j)). При этом нумерация этапов „с конца” обусловлена
определением оптимального ожидаемого дохода fi(j).
Таблица 2. Этап 3 алгоритма решения задачи к примеру 2.1, соответствующий f (j)
3
9
Таблица 3. Этап 2 алгоритма решения задачи к примеру 2.1, соответствующий f (j)
2
Таблица 4. Этап 1 алгоритма решения задачи к примеру 2.1, соответствующий f (j)
1
Из оптимального решения следует, что первые два года садовник должен применять
удобрения при любом состоянии системы, т.е. вне зависимости от результатов химического анализа почвы (первые два года оптимальным является допустимое решение X2 для всех возможных
состояний), но на последнем этапе (третий год) ему следует применять удобрения лишь при
удовлетворительном (S2) и плохом (S3) состояниях почвы. В этом случае суммарный ожидаемый
доход составит 10,74 при хорошем состоянии почвы в начале первого года, 7,92 — при
удовлетворительном и 4,23 — при плохом состоянии почвы в начале первого года.
Заметим, что при нахождении оптимальной стратегии поведения садовника в главе 1 мы
воспользовались тем, что по самой природе рекуррентного уравнения для определения оптимальных ожидаемых доходов {fi(j)} их значения вычисляются итеративно. Метод итераций по
стратегиям – это метод решения задач дискретного динамического программирования.
В марковских моделях принятия решений матрицы поощрений {R( i | Xni-1 )}, которые в
соответствии со сложившейся терминологией мы назвали матрицами доходов, в общем случае не
обязательно отражают доходы в прямом смысле этого слова. Но если матрицы {R( i | Xni-1 )}
действительно являются матрицами доходов, а длительность каждого этапа — год, то при
нахождении оптимального решения необходимо учитывать дисконтирование путем введения
10
годового коэффициента дисконтирования. Годовой коэффициент дисконтирования – это
коэффициент, определяемый по формуле
=
где k — годовая норма процента и 0 <
1
1 k
,
< 1. Годовой коэффициент дисконтирования указывает на
то, что D денежных единиц будущего года равны
D денежным единицам настоящего года.
Поэтому в рассматриваемом случае при построении марковской модели принятия решений
необходимо использовать коэффициент дисконтирования ожидаемых оптимальных доходов для
последовательных этапов, вследствие чего значения {fi(j)} — приведенные величины ожидаемых
оптимальных доходов по всем этапам. При введении коэффициента дисконтирования исходное
рекуррентное уравнение динамического программирования с конечным числом этапов,
связывающее оптимальные ожидаемые доходы fi(j), j = 1, 2, …, m и fi+1(j), j = 1, 2, …, m, имеет вид
fi(j) = max
Xmi G { j(Xni) +
m
pjk( i +1 | Xni) fi+1(k)},
k 1
i = 1, 2, …, N, j = 1, 2, …, m,
где fN+1(k)
0, k = 1, 2, …, m, и
m
pjk( i +1 | Xni) rjk( i +1 | Xni), j = 1, 2, …, m.
j(Xni) =
k 1
Решение задачи принятия оптимального решения с учетом дисконтирования ничем не
отличается от решения аналогичной задачи, но без учета дисконтирования, т.е. при
= 1. Есте-
ственно, что в общем случае оптимальные решения, полученные с учетом и без учета
дисконтирования, могут различаться.
Следует также отметить, что рекуррентные уравнения динамического программирования
могут быть использованы для оценки любой стационарной стратегии. В этом случае с учетом
дисконтирования имеем
m
pjk(i) fi+1(k), i = 1, 2, …, N, j = 1, 2, …, m,
fi(j) = j(i) +
k 1
где fN+1(k)
0, k = 1, 2, …, m,
m
pjk(i) rjk(i), j = 1, 2, …, m, i = 1, 2, …, N, j = 1, 2, …, m,
j(i) =
k 1
a pjk(i) и rjk(i) — элементы матриц переходных вероятностей и доходов на i-м этапе,
соответствующих оцениваемой стационарной стратегии, а
вания.
11
— годовой коэффициент дисконтиро-
Пример 2.2. Найдя оптимальную стратегию поведения при трехлетнем горизонте
планирования без дисконтирования (см. пример 2.1), садовник решил оценить ожидаемый доход
без дисконтирования для стационарной стратегии, реализация которой предполагает внесение
удобрений тогда и только тогда, когда состояние почвы плохое. В этом случае (см. пример 1.2)
P=
0, 2
0,5
0,3
7 6
3
0
0,5
0,5 , R = 0 5
6 3
1
0, 05 0, 4 0,55
2
и остается лишь воспользоваться рекуррентным уравнением динамического программирования:
f3(1) = 0,2 · 7 + 0,5 · 6 + 0,3 · 3 = 5,3,
f3 (2) = 0 · 0 + 0,5 · 5 + 0,5 · 1 = 3,
f3 (3) = 0,05 · 6 + 0,4 · 3 + 0,55 · (-2) = 0,4,
f2 (1) = 5,3 + 0,2 · 5,3 + 0,5 · 3 + 0,3 · 0,4 = 7,98,
f2 (2) = 3 + 0 · 5,3 + 0,5 · 3 + 0,5 · 0,4 = 4,7,
f2 (3) = 0,4 + 0,05 · 5,3 + 0,4 · 3 + 0,55 · 0,4 = 2,09,
f1 (1) = 5,3 + 0,2 · 7,98 + 0,5 · 4,7 + 0,3 · 2,09 = 9,87,
f1 (2) = 3 + 0 · 7,98 + 0,5 · 4,7 + 0,5 · 2,09 = 6,39,
f1 (3) = 0,4 + 0,05 · 7,98 + 0,4 · 4,7 + 0,55 · 2,09 = 3,83.
Таким образом, при реализации рассматриваемой стационарной стратегии в зависимости от
состояния почвы на начальном этапе садовнику следует ожидать суммарный доход в размере 9,87;
6,39 и 3,83 денежных единиц, соответственно.
3 ПРИНЯТИЕ РЕШЕНИЙ ПРИ БЕСКОНЕЧНОМ ГОРИЗОНТЕ ПЛАНИРОВАНИЯ
3.1 Постановка задачи
На практике нередкими являются случаи, когда либо задача принятия решений охватывает
весьма значительное число этапов, т.е. N велико, либо горизонт планирования бесконечен (N = ).
В этих ситуациях процедуры нахождения оптимального решения обладают специфическими
особенностями, в основе которых — свойства марковских процессов.
12
Поведение марковского процесса на долгосрочном горизонте планирования, когда N велико,
характеризует его независимость от начального состояния системы. В этом случае будем
говорить, что система достигла установившегося состояния. Нас будут интересовать решения, для
которых соответствующие цепи Маркова допускают существование установившегося состояния
изучаемой системы. При дальнейших рассуждениях совокупность этапов, предшествующих
этапам функционирования системы в установившемся состоянии, будем называть переходным
периодом.
Здесь мы рассмотрим проблему определения оптимальной долгосрочной стратегии
марковской задачи принятия решений. При оценке долгосрочной стратегии целесообразно
базироваться на максимизации ожидаемого дохода или минимизации ожидаемых затрат за
переходный период, так как при достижении изучаемой системой установившегося состояния эти
показатели стабилизируются.
Можно указать два основных метода решения задач принятия решений с бесконечным числом
этапов. Метод полного перебора – это метод решения задач принятия решений с бесконечным
числом этапов, связанный с перебором всех возможных стационарных стратегий принятия
решений. В этом случае оптимальное решение может быть найдено путем оценивания
эффективности каждой стационарной стратегии. Применение метода полного перебора оправдано
лишь в тех случаях, когда число элементов множества G допустимых решений и, как следствие,
число элементов множества D всех стационарных стратегий невелико в смысле вычислительных
затрат.
При использовании второго метода, называемого методом итераций по стратегиям, трудности
вычислительного характера не являются столь значимыми, как при применении метода полного
перебора.
Однородная марковская цепь – это простая марковская цепь, в которой вероятности
перехода из состояния Si в состояние Sj за интервал времени (tk-1, tk) зависят от длины интервала
t = (tk-1– tk) и не зависят от начала отсчета tk, т.е.
pij(tk-1, tk) = pij(t).
Однородный марковский процесс – это марковский процесс, для которого однородна
соответствующая марковская цепь.
Для упрощения дальнейших рассуждений мы будем предполагать, что марковский процесс
изменения состояний изучаемой системы S однородный, т.е. матрицы переходных вероятностей и
матрицы доходов не зависят от номера этапа i = 1, 2, ….
3.2 Метод полного перебора
Предположим, что в рассматриваемой задаче принятия решений множество всех стационарных стратегий состоит из К элементов и Pk = (pjn(k))
Мm(R), Rk = (rjn(k))
Мm(R) — матрицы
одношаговых переходных вероятностей и доходов, соответствующие стационарной стратегии с
номером k = 1, 2, …, K, где m — число возможных состояний изучаемой системы S. Метод
полного перебора включает следующие этапы реализации.
13
Этап 1. Вычисление ожидаемого дохода за один шаг при k-й стационарной стратегии для
всех возможных состояний системы S:
m
pjn(k) rjn(k), j = 1, 2, …, m.
(k) =
j
k 1
Этап 2. Вычисление стационарных вероятностей Пj(k), j = 1, 2, …, m, матрицы переходных
вероятностей Pk, соответствующей стационарной стратегии с номером k = 1, 2, …, К. Как известно
из курса теории случайных процессов, эти вероятности, если они существуют, являются решением
следующей системы линейных алгебраических уравнений:
m
П (k) (Pk – Im) =
где П(k) = (П1(k) П2(k) ... Пm(k))
,
1m
k 1
Пj(k) = 1,
M1m(R), Im — единичная матрица порядка m, a
1m
— нулевая
матрица типа 1 · m.
Этап 3. Определение ожидаемого дохода для всех стационарных стратегий:
m
E(k) =
k 1
Пj(k) j(k), k = 1, 2, …, К.
Этап 4. Определение номера k* оптимальной стационарной стратегии из условия
E(k*) = max E(k).
1 k K
Алгоритм реализации метода полного перебора не нуждается в обосновании, поэтому сразу
перейдем к рассмотрению примера.
Пример 3.1. В задаче с садовником имеется всего восемь стационарных стратегий:
1. Вообще не применять удобрений.
2. Применять удобрения при любом состоянии почвы.
3. Применять удобрения лишь в том случае, когда почва находится в состоянии S1 (хорошем).
4. Применять удобрения лишь в том случае, когда почва находится в состоянии S2
(удовлетворительном).
5. Применять удобрения лишь в том случае, когда почва находится в состоянии S3 (плохом).
6. Применять удобрения лишь в том случае, когда почва находится или в состоянии S1, или в
состоянии S2.
7. Применять удобрения лишь в том случае, когда почва находится или в состоянии S1, или в
состоянии S3.
8. Применять удобрения лишь в том случае, когда почва находится или в состоянии S2, или в
состоянии S3.
14
Как было показано в примере 1.2, матрицы переходных вероятностей и матрицы доходов для
стационарных стратегий с номерами от 3 до 8 могут быть получены из соответствующих матриц
для стационарных стратегий с номерами 1 и 2:
0, 2 0,5 0,3
P1 =
P2 =
0
7 6
0,5 0,5 , R = 0 5
1
0
1
0 0
0
0,3
0, 6
0,1
0, 6
0,1
0,3 , R = 7 4
2
0, 05 0, 4 0,55
6 3
0
6 5
0,5 0,5 , R = 0 5
3
0
1
0 0
0
1 ;
1
6 5
0,3 0, 6 0,1
P3 =
3
0, 2 0,5 0,3
7 6
1
0
;
2
1
1 ;
1
3
P4 = 0,1 0, 6 0,3 , R4 = 7 4 0 ;
P5 =
0
0
1
0 0
0, 2
0,5
0,3
0
0,5
7 6
0,5 , R = 0 5
5
0, 05 0, 4 0,55
6 3
0,3 0, 6 0,1
6 5
P6 = 0,1 0, 6 0,3 , R6 = 7 4
0
0
1
0 0
P7 =
P8 =
0,1
1
3
1 ;
2
1
0 ;
1
0,3
0, 6
6 5
0
0,5
0,5 , R = 0 5
7
0, 05 0, 4 0,55
6 3
1 ;
2
0, 2
0,5
3
0,1
0, 6
0,3
7 6
0,3 , R = 7 4
8
0, 05 0, 4 0,55
6 3
На первом этапе вычисляют ожидаемые доходы
1
0 .
2
(k) для всех стационарных стратегий
j
(см. пример 2.1). Результаты вычислений приведены в таблице 5.
Таблица 5. Ожидаемые доходы j(k) для всех стационарных стратегий к примеру 3.1
Ожидаемый
доход
k=1
k=2
k=3
k=4
k=5
k=6
k=7
k=8
(k )
2 (k )
5,3
4,7
4,7
5,3
5,3
4,7
4,7
5,3
3
3,1
3
3,1
3
3,1
3
3,1
(k )
–1
0,4
–1
–1
0,4
–1
0,4
0,4
1
3
15
На втором этапе вычисляют стационарные вероятности П j(k) матриц переходных
вероятностей Pk для всех стационарных стратегий и всех возможных состояний изучаемой системы. Так, например, для второй стационарной стратегии стационарные вероятности Пj(2), j = 1,
2, 3 являются решением системы линейных алгебраических уравнений
Результаты вычислений приведены в таблице 6.
Таблица 6. Стационарные вероятности Пj(k) матриц переходных вероятностей P для всех
k
стационарных стратегий и всех возможных состояний системы к примеру 3.1
Стационарная
вероятность
k=1
k=2
k=3
k=4
k=5
k=6
k=7
k=8
П1 (k )
П2 (k )
0
5/59
0
0
5/154
0
5/137
12/135
0
31/59
0
0
69/154
0
62/137
69/135
П3 (k )
0
22/59
1
1
80/154
1
70/137
54/135
На третьем этапе вычисляют ожидаемый доход E(k) для каждой стационарной стратегии с
учетом результатов, полученных на первых двух этапах реализации алгоритма (см. таблицы 5 и 6).
Результаты вычислений приведены в таблице 7.
Таблица 7.
k
k=1
k=2
k=3
k=4
k=5
k=6
k=7
k=8
E(k )
–1
2,26
0,4
–1
1,72
–1
1,73
2,22
На четвертом этапе находят (см. таблицу 7)
E(k*)= max E(k) = E(2) = 2,26.
k 1,2...8
Ожидаемый доход Е(к) для каждой стационарной стратегии с учетом результатов,
полученных на первых двух этапах реализации алгоритма к примеру 3.1.
Таким образом, оптимальной является вторая стационарная стратегия, реализация которой
предполагает применение удобрений при любом состоянии почвы.
В примере 3.1 следует обратить внимание на линейную зависимость трех первых уравнений
системы линейных алгебраических уравнений для определения стационарных вероятностей Пj(2).
Это обстоятельство не является случайным, так как в общем случае требуется найти
нетривиальное решение квадратной однородной системы линейных алгебраических уравнений
т
т
(Pk – Im) П (k)=Qml, где Qml =
значения неизвестных в которой неотрицательны, т.е. Пj(k)
T
1m
,
0, j = 1, 2,…, m, а их сумма равна
единице. Таким образом, необходимым условием существования стационарных вероятностей для
стационарной стратегии с номером k, k = 1, 2, … m является условие det (Pk – Im) = 0.
16
Чтобы оценить трудности, связанные с практическим использованием метода полного
перебора, предположим, что (см. пример 1.1) у садовника множество G допустимых решений состоит не из двух, а из четырех элементов: X1 — решение о невнесении удобрений; X2 — решение о
внесении удобрений один раз в сезон; X3 — решение о внесении удобрений дважды в сезон;
X4 — решение о внесении удобрений трижды в сезон. В этом случае общее число стационарных
стратегий, имеющихся в распоряжении садовника, равно 64. Сложно перечислить все
стационарные стратегии в явном виде. Кроме того, велики вычислительные затраты, необходимые
для практической реализации метода полного перебора.
3.3 Метод итераций по стратегиям
3.3.1 Метод итераций по стратегиям без дисконтирования
При анализе марковской задачи принятия решений с конечным горизонтом планирования N
мы использовали понятие оптимального ожидаемого дохода fi(j) за этапы с номерами i, i +1, ..., N,
вычисляемого при условии, что после j этапов изучаемая система S находилась в состоянии Sj. При
бесконечном горизонте планирования удобнее использовать понятие ожидаемого дохода F (j) за
этапы с номерами 1, 2, ..., при условии, что к этапу с номером +1 изучаемая система S будет
находиться в состоянии Sj. В этом случае, предполагая однородность соответствующей цепи
Маркова, для любой конкретной стратегии с матрицей переходных вероятностей Р = (pjk)
и матрицей доходов R = (rjk)
Мm(R)
Мm(R) можно получить матричное рекуррентное уравнение
F =
+ PF -1,
(2)
при записи которого использованы следующие обозначения:
F (1)
.
F = .
.
F (m)
1
.
,n= .
.
m
,
j
=
k 1
pjkrjk, j = 1, 2, …, m.
m
Фактически уравнение (2) является матричным аналогом рекуррентного уравнения, лежащего
в основе метода итераций по стратегиям при конечном горизонте планирования (см. раздел 2). Но
оно позволяет исследовать асимптотическое поведение изучаемого процесса при неограниченном
возрастании числа этапов, т.е. при
.
Для удобства дальнейших рассуждений введем матрицу-столбец
T
J = (l ... 1)
Mm1(R)
и вспомним, что сумма элементов любой строки матрицы переходных вероятностей Р равна
единице так же, как и сумма всех ее стационарных вероятностей, представленных матрицейстрокой
П = (П1 … Пm)
17
M1m(R).
Таким образом,
PJ
J, ПJ
1.
(3)
А так как матрица-строка П стационарных вероятностей матрицы переходных вероятностей Р
удовлетворяет уравнению
П(P – Im) =
lm
,
или, что то же самое,
ПР = П,
то, умножив уравнение (2) слева на матрицу-строку П, приходим к равенству
П(F – F -1) = П .
Таким образом, ожидаемый доход за один этап при больших значениях номеров этапов
безотносительно к состоянию, в котором система S окажется в начале следующего этапа, равен
m
E=П =
k 1
Пj j.
Если учесть, что при долгосрочном горизонте планирования поведение однородного
марковского процесса характеризует его независимость от начального состояния системы S, то
можно предположить, что при больших номерах
этапа значение ожидаемого дохода F (j)
складывается из двух составляющих. Первой составляющей является величина
E, зависящая
лишь от числа рассмотренных этапов и ожидаемого дохода за один этап безотносительно к
состоянию системы в начале следующего этапа. Вторая составляющая, которую обозначим F(j),
полностью определяется лишь состоянием Sj, в котором система будет находиться в начале
( + 1)-го этапа. Но в этом случае
F (j) = E + F(j), j = 1, 2,…, m,
или
F = E J + F,
T
где F = (F(1) ... F(m) ) и уравнение (2) может быть представлено в следующем виде:
EJ+F=
+ P((
18
– 1)E J + F).
А так как имеет место первое из равенств (3), то приходим к матричному уравнению
E J + (Im – P)F =
относительно скаляра Е и вектора F, т.е. имеем систему m линейных алгебраических уравнений
E + F(j) – pjkFt(k) = j, j = 1, 2,…, m
(4)
относительно m + 1 неизвестных E, F(1), ..., F(m). При этом, как и в случае конечного горизонта
планирования, конечной целью является определение стратегии, приводящей к максимальному
значению Е.
В связи с тем, что в нашем распоряжении имеется система (4), состоящая из m уравнений с
m + 1 неизвестными, оптимальное значение Е не может быть определено за один шаг. Поэтому
используют итерационную процедуру, начиная с произвольной стратегии, а затем определяя
новую стратегию, дающую лучшее значение Е. Процесс решения завершают, если две
последовательно определенные стратегии совпадают.
Итерационный процесс состоит из двух основных этапов, называемых этапом оценивания
параметров и этапом улучшения стратегии.
Этап оценивания параметров. Предположим, что G =
решений. Выбираем произвольную стратегию
Используя соответствующие стратегии
Xi
M
i 1
T
— множество допустимых
= (Xn1 Xn2 ... Xnm) , где Xnj
G, j = 1, 2,…, m.
, матрицу переходных вероятностей Р( ) = (pjk( )) и
матрицу доходов R( ) = (rjk( )) и полагая F (m) = 0, решаем систему линейных алгебраических
уравнений
E + F (j) –
m
pjk( )F (k) = j( ), j = 1, 2,…, m
k 1
относительно E , F (1), ..., F (m– 1).
Этап улучшения стратегии. Для каждого состояния Sj, j = 1, 2,…, m находим допустимое
решение Хj*
G, на котором достигается
max { (Xi) +
j
Xi G
m
k 1
pjk(Xi)F (k)}.
T
Эти оптимальные решения образуют новую стратегию t = (X1* Х2* ... Xm*) . Если t = , то
стратегия t и является оптимальной. В противном случае нужно обозначить стратегию t через
вернуться к первому этапу — этапу оценивания параметров.
Отметим, что согласно (4)
и
m
E = j(Xi) +
k 1
pjk(Xi)F (k) – F (k),
т.е. задача максимизации на этапе улучшения стратегии эквивалентна задаче максимизации
суммарного ожидаемого дохода за один этап по всему множеству допустимых решений G.
19
Пример 3.2. Вернемся к задаче с садовником при бесконечном горизонте планирования,
рассмотренной в примере 3.1, и решим ее методом итераций по стратегиям.
В качестве произвольной стратегии используем стратегию, исключающую использование
удобрений (см. пример 3.1). В этом случае
0, 2 0,5 0,3
0
P( ) =
0
7 6
0,5 0,5 , R( ) = 0 5
0
1
0 0
3
1 .
1
На этапе оценивания параметров, учитывая, что F (3) = 0, получаем систему линейных
алгебраических уравнений (см. таблицу 5, столбец k = 1), которая имеет единственное решение
E = –1, F (1)
12,54, F (2)=8.
В рассматриваемой задаче множество G допустимых решений содержит всего лишь два
элемента (см. пример 2.1). Результаты соответствующих вычислений на этапе улучшения
стратегии приведены в таблице 8, где использованы уже найденные значения nj(Xi) (см. таблицу 5,
столбцы k = 1 и k = 2).
T
Таблица 8. Результаты вычислений на этапе улучшения стратегии =(x1,x1 ... x1) к примеру 3.2
T
Новая стратегия = (X2 Х2 X2) предусматривает применение удобрений при любом состоянии
T
= (X1 Х1 X1) , поэтому возвращаемся на этап оценивания
почвы. Она отличается от стратегии
параметров, полагая = (X2 Х2 X2)
T.
Новой стратегии соответствуют матрицы (см. пример 3.1)
P( ) =
0,3
0, 6
0,1
0, 6
0,1
6 5
0,3 , R( ) = 7 4
0, 05 0, 4 0,55
6 3
1
0 ,
2
которые при F (3) = 0 определяют следующую систему линейных алгебраических уравнений
(см. таблицу 5, k = 2):
E (1 0,3) F (1) 0,6F (2) 4,7
E 0,1F (1) (1 0,6) F (2) 3,1
E 0,05F (1) 0, 4F (2) 0, 4
Эта система имеет единственное решение
E = 2,26, F (1) = 6,75, F (2) = 3,79.
20
Результаты вычислений на этапе улучшения стратегии приведены в таблице 9.
T
Таблица 9. Результаты вычислений на этапе улучшения стратегии t = (x ,x ... x ) к примеру
2
2
2
T
Новая стратегия t = (X2 Х2 X2) , требующая применения удобрений независимо от состояния
почвы, идентична предыдущей, т.е. она является оптимальной. Этот результат совпадает с
результатом, полученным методом полного перебора (см. пример 3.1), как в смысле оптимальной
стратегии, так и в смысле суммарного ожидаемого дохода за один этап, соответствующего этой
стратегии.
Отметим, что характерной особенностью метода итераций по стратегиям является его быстрая
сходимость к оптимальной стратегии.
3.3.2 Метод итераций по стратегиям с дисконтированием
Метод итераций по стратегиям может быть обобщен на случай дисконтирования.
Действительно, если
— коэффициент дисконтирования, то рекуррентное уравнение (2) при
конечном числе этапов в условиях дисконтирования принимает вид
F =
где
+ PF -1,
(5)
— число рассматриваемых этапов. Непосредственно из (5) следует, что для любого n
F
+n
n+1 n+1
=
P
n
F
-1
+
N
k k
P.
k 0
Таким образом, существует предел
F = lim F
n
-1
+n
= (Im – P) ,
где F = (F(1), ..., F(m)) и F(j) — приведенный к текущему моменту времени дисконтированный
доход при условии, что система находится в состоянии Sj и функционирует в неограниченном
временном интервале. Значит, при больших значениях
21
значение F перестает зависеть от номера .
В этом и заключается принципиальное отличие рассматриваемого случая от случая без
дисконтирования, для которого имеет место равенство
F = EJ + F.
Такого результата и следовало ожидать, так как в случае с дисконтированием влияние
будущих доходов асимптотически уменьшается до нуля, а приведенный доход F
с ростом
стремится к F.
Исходя из вышеизложенных рассуждений можно выделить следующие этапы реализации
метода итераций по стратегиям с дисконтированием.
Этап оценивания параметров. Для произвольно выбранной стратегии = (Xn Xn ... Xn )T ,
1
где Xni-1
2
m
G, j =1, 2,…, m, с матрицей переходных вероятностей P(t) = (рjk(t)) и матрицей доходов
R( ) = (rjk( )) находим решение системы линейных алгебраических уравнений
m
F ( j)
p jk ( ) F (k )
j
( ),
j 1, 2,..., m;
k 1
m
j
( )
p jk ( )rjk ( )
k 1
относительно F (k), k = 1, 2,…, m.
Этап улучшения стратегии. Для каждого состояния Sj изучаемой системы S, j = 1, 2,…, m
находим допустимое решение Xj*
G, на котором достигается
m
max { j(Xi) +
Xi G
k 1
pjk(Xi)F (k)}.
T
Эти решения образуют новую стратегию t = (X1* X2* ... Хm*) . Если t = , то вычисления
завершены и — оптимальная стратегия. В противном случае обозначаем стратегию t через и
возвращаемся к первому этапу.
Пример 3.3. Решим задачу с садовником при бесконечном горизонте планирования (см.
примеры 3.1, 3.2) с учетом дисконтирования, полагая, что коэффициент дисконтирования
= 0,6.
T
В качестве начальной выбираем стратегию
= (X1 X1 ... Х1) , исключающую использование
удобрений. Матрицы P( ) и R( ) (они приведены в примере 3.2) определяют систему линейных
алгебраических уравнений
(1 0,6 0,2) F (1) 0,6 0,5F (2) 0,6 0,3F (3) 5,3;
0,6 0F (1) (1 0,6 0,5) F (2) 0,6 0,5F (3) 3;
0,6 0F (1) 0,6 0F (2) (1 0,6 1) F (3) 1,
решение которой не вызывает затруднений: F (1)
6,6, F (2)
3,2, F (3)
– 2,5.
Результаты вычислений на этапе улучшения стратегии отражены в таблице 10, в которой
использованы уже найденные значения
(Xi) (см. таблицу 5, столбцы k=1 и k=2) и переходные
j
вероятности pjk(Xi), являющиеся элементами матриц Рi = Р(Хi) (см. пример 3.1).
22
T
Таблица 10. Результаты вычислений на этапе улучшения стратегии t=(x x ... x ) к примеру 3.3
1
1
1
T
Новая стратегия t = (X2 X2 ... Х2) , требующая применения удобрений при любом состоянии
почвы, отличается от предыдущей. Поэтому полагаем
= t и возвращаемся на этап оценивания
параметров, записав систему линейных алгебраических уравнений на основе матриц Р2 и R2
(см. пример 3.1):
(1 0,6 3) F (1) 0,6 0,6F (2) 0,6 0,1F (3) 4,7;
0,6 0,1F (1) (1 0,6 0,6) F (2) 0,6 0,3F (3) 3,1;
0,6 0,5F (1) 0,6 0,4F (2) (1 0,6 0,55) F (3) 0,4.
Таким образом, в рассматриваемом случае F (1)
8,9, F (2)
6,6, F (3)
3,4.
Результаты вычислений на этапе улучшения стратегии отражены в таблице 11.
T
Таблица 11. Результаты вычислений на этапе улучшения стратегии t=(x2 x2 ... x2) к примеру 3.3
T
Новая стратегия t = (X1 X2 ... Х2) , требующая применения удобрений лишь при
удовлетворительном и плохом состояниях почвы, отличается от предыдущей. Поэтому полагаем
ф = t и возвращаемся на этап оценивания параметров, записав систему линейных алгебраических
уравнений на основе матриц Р8 и R (см. пример 3.1).
23
Таким образом, в рассматриваемом случае F (1)
9,0, F (2)
6,6, F (3)
3,4.
Результаты вычислений на этапе улучшения стратегии отражены в таблице 12.
T
Таблица 12. Результаты вычислений на этапе улучшения стратегии t = (x x ... x ) к примеру 3.3
1
2
2
T
Так как t = (X1 Х2 X2) = , то оптимальная стратегия найдена и исходная задача решена
полностью.
Сопоставляя результаты теоретических рассуждений и вычислительных экспериментов (см.
примеры 3.2, 3.3), приходим к выводу о том, что дисконтирование может влиять на оптимальную
стратегию.
3.4 Метод линейного программирования
Вернемся к марковской задаче принятия решений при бесконечном числе этапов без
дисконтирования. Предположим, что G =
= (pjk(Xi)), R(Xi) = (rjk(Xi))
Xi
M
i 1
— множество допустимых решений; Р(Xi) =
Мm(R) — матрицы переходных вероятностей и доходов, соответствующие
допустимому решению Xi
представленных множеством
G, m — число возможных состояний изучаемой системы S,
Sj
m
j 1
. Тогда величина ожидаемого дохода при принятии
допустимого решения Xi для состояния Sj определяется равенством
m
(X ) =
j nj
k 1
pjk(Xnj) rjk(Xnj).
24
n
Пусть теперь T = G — множество стационарных стратегий, причем стационарной стратегии
= (Xn1 Xn2 … Xnm)
T
T
соответствует матрица переходных вероятностей
P( ) = (pjk( ))
Mm(R),
для которой матрицу-строку стационарных вероятностей П( ) = (П1( ) П2( ) ... Пm( )) можно
определить как решение однородного матричного уравнения
П( )(P( ) – Im) =
1m
,
удовлетворяющее очевидным условиям
m
Пj( )
0, j = 1, 2,…, m;
k 1
Пj( ) =1, t
T.
Таким образом, если
( ) = ( 1(Xn1)
2
(Xn2) ….
T
m
(Xnm)) ,
то ожидаемый доход за один этап безотносительно к состоянию, в котором система S окажется на
следующем этапе, при реализации стратегии
T равен
E( ) = П( ) ( ),
и в соответствии с методом полного перебора оптимальная стратегия
условия
*
T определяется из
E ( *) = max E ( ) .
T
Для преобразования рассмотренной задачи
воспользуемся следующими соображениями.
к
задаче
i
линейного
программирования
Пусть q j — условная вероятность того, что будет принято допустимое решение Xi
G, если
изучаемая система S находится в состоянии Sj. Обратимся к задаче минимизации скалярной
функции
m
M
Пj
e=
j 1
m
где Пj =
Пkpkj, j = 1, 2,…, m;
j 1
25
q ij
i 1
i
j
,
при ограничениях
m
M
Пj = 1;
q ij = 1; j = 1, 2,…, m;
j 1
Пj
i 1
0, j = 1, 2,…, m, i = 1, 2,…, M,
0, q ij
где М — число элементов множества допустимых решений; Пj и pkj, j = 1, 2,…, m — функции
выбранной стратегии и, как следствие, конкретных допустимых решений из множества
G=
Xi
M
i 1
;
i
j
= nj(Xi). Отметим, что эта задача эквивалентна исходной лишь при условии, что
M
q ij = 1 для фиксированного i* при каждом j = 1, 2,…, m, так как в этом случае значение
q ij
i
j
i 1
совпадает со значением
i*
j
, где Xi*
G — оптимальное решение для состояния Sj изучаемой
системы S.
Для любых j = 1, 2,…, m, i = 1, 2,…, M полагаем wji = Пj q ij , где wji — вероятность пребывания
системы S в состоянии Sj при принятии решения Xi
M
M
i 1
G. При этом для любого j = 1, 2,…, m
wji =
M
i 1
Пj q ij = Пj
i 1
Таким образом,
ji
qij
M
ji
i 1
и ограничение
m
j 1
Пj = 1
эквивалентно ограничению
m
M
= 1.
ji
j 1 i 1
Скалярная функция e может быть представлена в виде
m
M
i
j
e=
j 1 i 1
26
ji
,
q ij
= Пj .
а исходная задача может быть сформулирована в виде задачи линейного программирования с
переменными wji
Для завершения наших рассуждений осталось показать, что оптимальное решение
гарантирует выполнение равенства q ij = 1 для фиксированного i при любом j = 1, 2,…, m. Система
ограничений задачи линейного программирования содержит m + 1 ограничений типа равенства,
одно из которых является избыточным (см. выражение 4). Следовательно, в задаче должно быть m
базисных переменных и можно показать, что вероятность
ji
должна быть строго положительной
по меньшей мере при одном i для каждого j, т.е.
qij
ji
{0, 1},
M
ji
i 1
что и требовалось доказать.
Пример 3.4. Сформулируем задачу с садовником в виде задачи линейного программирования,
для чего воспользуемся переходными вероятностями pjk(Xi), входящими в матрицы Pi = P(Xi)
(см. пример 3.1), а также вычисленными значениями ожидаемых доходов (см. таблицу 5):
Для этой задачи оптимальным является решение:
32
= 22/59. Таким образом,
11
= 0;
12
= 6/59;
21
= 0;
22
q12 = q 22 = q32 = 1 и оптимальной является стратегия
= 31/59;
*
31
= 0;
= (X2 X1 X2)T,
что совпадает с результатом, полученным методом полного перебора (см. пример 3.1).
В разделе 3.3 мы показали, что марковская задача принятия решений с дисконтированием
фактически связана с рекуррентными уравнениями
m
F *(j) = max
{ j(Xi) +
Xi G
k 1
pjk(Xi)F *(k)}, j = 1, 2,…, m,
27
которые могут быть заменены эквивалентной системой неравенств
m
F (j)
pjk(Xi)F (k) + j(Xi), j = 1, 2,…, m, i = 1, 2,…, M
(6)
k 1
при условии, что функция стратегии F (j) достигает своего наименьшего значения F *(j) на
множестве стационарных стратегий T при любом j = 1, 2,…, m. При этом, если воспользоваться
целевой функцией
m
bj F (j),
k 1
где произвольные постоянные bj, j = 1, 2,…, m положительны, то становится понятным, что ее
минимизация с учетом ограничений (6) типа неравенства обеспечивает также и минимальное
значение функции F (j) при j = 1, 2,…, m. Но при этом задача
j 1, 2,..., m, i 1, 2,..., M
в общем случае не является стандартной задачей линейного программирования, так как функции
F (j) не ограничены в знаке. Но двойственная к ней задача относительно переменных wji
m
M
j
( Xi )
max
ji
j 1 i 1
M
m
M
p jk ( X i )
ji
i 1
ji
ki
bj ,
j 1 i 1
0,
j 1, 2,..., m, i 1, 2,..., M
является стандартной задачей линейного программирования. При этом ее целевая функция имеет
тот же вид, что и в аналогичной задаче линейного программирования без дисконтирования. А это
обстоятельство позволяет сохранить содержательную интерпретацию переменных
.
ji
Пример 3.5. Рассмотрим задачу с садовником, в которой коэффициент дисконтирования
= 0,6.
Если считать, что bj = 1, j = 1, 2, 3, то соответствующую задачу линейного программирования
можно представить в следующем виде:
28
Для этой задачи оптимальным является решение
11
= 269/3995,
21
= 0,
22
= 2833/3995,
31
= 0,
32
= 893/3995.
12
= 0,
Итак, оптимальной является стратегия
*
T
= (X2 X2 X2) , что и было установлено в примере 3.3.
Линейное программирование занимает особое место в исследовании операций. Теоретические
разработки, опыт практической реализации и анализ результатов применения методов линейного
программирования привели к значительным успехам в решении широкого круга практически
важных задач, относящихся к таким сферам человеческой деятельности, как промышленное
производство, военное дело, сельское хозяйство, экономика, транспорт, здравоохранение. Кроме
того, линейное программирование послужило основой для разработки других математических
методов исследования операций, например целочисленного и стохастического программирования.
3.4.1 Постановка общей задачи линейного программирования и ее анализ
В соответствии с классификацией задач исследования операций (см. раздел 1.1), задача
линейного программирования – это задача исследования операций, в которой множество
n
допустимых решений G R — выпуклый многогранник, а критерий оптимальности — скалярная
линейная целевая функция, определенная на G. Теория этих задач составляет предмет исследований
линейного программирования, а их примером может служить задача о составлении пищевого пайка.
Далее, говоря о задаче линейного программирования, мы фактически будем иметь в виду не
саму задачу исследования операций, а ее математическую модель, обладающую указанными
специфическими свойствами. Отметим, что для решения одной и той же задачи исследования
операций могут быть использованы разные математические модели.
По виду информационного состояния „лица, принимающего решения”, задачи линейного
программирования являются статическими задачами исследования операций, а соответствующие
процедуры принятия решений — одношаговыми. По структуре информационного состояния
„лица, принимающего решения”, задачи линейного программирования являются детерминированными параметрическими задачами исследования операций.
Задача линейного программирования имеет следующий вид:
(7)
где aik, ck, bi — известные числовые параметры, а множества I1, I2, I3 попарно не пересекаются и
I1 I2 I3 = {1, …, m}. Управляемые переменные (переменные модели) – это неизвестные xk, k = =
T
1, …, n, представляющие собой координаты вектора Х = (х1 х2 ... хn) .
29
Рассмотрим пример задачи исследования операций, приводящей к задаче линейного
программирования.
Пример 3.6. Небольшая фабрика производит два вида лака для покрытия деревянных
поверхностей при внутренних и наружных работах. Для производства лаков используются два
исходных продукта — А и В. Максимально возможные суточные запасы этих продуктов
определяются емкостями, имеющимися на фабрике, и составляют 6 и 8 т, соответственно. При
производстве 1 т лака для внутренних работ расходуется 1 т продукта А и 2 т продукта В, а при
производстве 1 т лака для внешних работ расходуется 2 т продукта А и 1 т продукта В.
Изучение рынка сбыта показало, что суточный спрос на лак для наружных работ не
превышает 2 т. Доход от реализации (в условных денежных единицах) 1 т лака для внутренних
работ равен 3, а доход от реализации 1 т лака для внешних работ — 2. Необходимо выяснить,
какое количество лака каждого вида должна производить фабрика, чтобы доход от реализации
продукции был максимальным.
Суть рассматриваемой задачи исследования операций можно сформулировать следующим
образом. Для фабрики требуется определить объемы производства каждого из лаков,
максимизирующие доход от реализации продукции, с учетом ограничений на спрос и расход
исходных продуктов А и В.
Так как нужно определить объемы производства каждого вида лака, то управляемыми
переменными являются: x1 — суточный объем производства лака для внутренних работ
(в тоннах); x2 — суточный объем производства лака для внешних работ (в тоннах). Таким образом,
в (7) n = 2.
Суточный расход каждого из исходных продуктов А и В для производства лаков не может
превосходить максимально возможного суточного запаса этого продукта, т.е. x1 + 2x2
продукта А) и 2x1 + x2
6 (для
8 (для продукта В).
Ограничение на величину суточного спроса на лак для наружных работ имеет вид x2
2. А так
как объемы производства продукции не могут быть отрицательными, то необходимо ввести
ограничения на знак управляемых переменных: x1
I1 = {1, 2, 3}, I2 = I3 =
0, x2
0. Таким образом, в задаче (7) m = 3,
.
В предположении, что объемы сбыта каждого вида лака не зависят друг от друга, общий
доход f равен сумме дохода от продажи лака для внутренних работ и дохода от продажи лака для
наружных работ. Таким образом, f(x1, x2) = 3x1 + 2x2 (в условных денежных единицах) и
математическая модель рассматриваемой задачи исследования операций может быть представлена
в следующем виде:
3x1 + 2x2
max;
x1 + 2x2
6,
2x1 + x2
8,
x2
2,
x1
0, x2
30
0.
(8)
Задачи
линейного
программирования
во
многих
случаях
оказываются
задачами
распределительного типа. Задача распределительного типа – это задача, в которой система
характеризуется наличием n видов производственной деятельности, для осуществления которых
имеются различные ресурсы с номерами i = 1, …, m и в которой необходимо определить объемы
xk, k = l,…, n производственной деятельности каждого вида, обеспечивающие максимальный
суммарный доход от производственной деятельности системы в целом без нарушения
ограничений, налагаемых на использование ресурсов. Возможный объем потребления i-го ресурса
ограничен неотрицательной величиной bi, а его расход для производства единицы продукта k-гo
вида производственной деятельности равен aik, где k = 1, …,n. Удельная прибыль – это единица
продукта k-гo вида производственной деятельности.
В общем случае задача распределительного типа имеет вид
(9)
Чтобы задача исследования операций могла быть представлена как задача линейного
программирования, необходимо выполнение трех условий: 1) пропорциональности; 2) аддитивности; 3) неотрицательности. Заметим, что эти условия имели место при построении задач (7), (8).
В терминах задач распределительного типа пропорциональность означает, что затраты
ресурсов на любой вид производственной деятельности, а также вклад этого вида производственной деятельности в суммарный доход прямо пропорциональны его уровню (объему)
производства. Аддитивность указывает на то, что общий объем ресурсов, потребляемый всеми
видами производственной деятельности, равен сумме затрат ресурсов на отдельные виды
производственной деятельности, а общий доход от производственной деятельности равен сумме
доходов от каждого вида производственной деятельности.
Неотрицательность означает, что ни одному из видов производственной деятельности не
может быть приписан отрицательный объем производства. Для большинства систем, встречающихся на практике, это допущение является следствием реальных условий их
функционирования. Возможны ситуации, когда некоторое управляемое переменное xk может принимать и отрицательные значения. В этом случае говорят о неограниченном в знаке переменном
модели, и используют представление этого переменного в виде разности двух неотрицательных
управляемых переменных
xk = xk - xk , xk
0, xk
0
На практике допущения о пропорциональности и аддитивности при построении
математических моделей задач исследования операций не так часто соответствуют объективной
реальности, а их принятие фактически означает аппроксимацию нелинейной модели линейной.
Продолжим рассмотрение частной задачи исследования операций, начатое в примере 3.6, и
воспользуемся геометрическим методом ее решения. Основой этого метода является
31
геометрическое (графическое) представление множества допустимых решений и целевой
функции, которое, например, удобно в задаче с двумя управляемыми переменными.
Пример 3.7. Математическая модель (8) позволяет решить графически исходную задачу об
определении оптимальных объемов производства лаков каждого вида с учетом ограничений на
спрос и расход исходных продуктов.
Первый этап графического решения заключается в геометрическом представлении множества
G допустимых решений. Искомое множество допустимых решений согласно (8) изображено на
рисунке 2. Стрелками указано, с какой стороны той или иной прямой выполняется
соответствующее ограничение из (8).
Рисунок 2. Графическое представление математической модели (8)
Второй этап графического решения заключается в определении направления возрастания
целевой функции f(x1, x2) = 3x1 + 2x2.
При произвольном фиксированном значении f0
R уравнение f(x1, x2) = f0, которое может
быть представлено в виде x2 = —l,5x1 + 0,5f0, определяет на плоскости x1 x2 прямую, являющуюся
линией уровня целевой функции. Для определения направления возрастания целевой функции
(на рисунке 2 оно обозначено знаком
) достаточно графически изобразить линии уровня f(x1, x2)
= f01 и f(x1, x2) = f02 при f01 < f02 (на рисунке 2 f01 = 0 и f02 = 6). Чтобы найти оптимальное решение,
следует перемещать линию уровня в направлении возрастания целевой функции до тех пор, пока
2
она целиком не переместится в область недопустимых решений R \ G.
На рисунке 2 видно, что максимальное значение целевой функции достигается в вершине С
многоугольника, являющегося границей ГG множества G допустимых решений. А так как
С — точка пересечения двух прямых, задаваемых уравнениями х1 + 2x2 = 6 и 2х1 + x2 = 8, то ее
координаты х1* и х2* удовлетворяют системе этих линейных алгебраических уравнений.
Следовательно, х1* = 10/3 и х2* = 4/3. Полученный результат означает, что суточный объем
(в тоннах) производства лака для внутренних работ должен быть равен 10/3, а лака для наружных
T
работ — 4/3, т.е. оптимальное решение X* = (10/3 4/3) . В этом случае доход от общего производства лака будет максимальным и равным (в условных денежных единицах) f* = 3 · 10/3 + 2 · 4/3 = 38/3.
32
В рассматриваемом случае удельная прибыль от производства лака каждого вида c1 = 3 и
c2 = 2 определяется доходами от реализации, которые по неконтролируемым причинам могут
колебаться в различных пределах. А так как суточный доход от производства лаков
f(x1, x2) = c1х1 + c2x2,
то „лицу, принимающему решения”, необходимо знать диапазоны допустимых изменений
удельных прибылей, не приводящих к новым оптимальным решениям. Из рисунке 2 следует, что
для любых положительных значений с1 и c2, удовлетворяющих условию 0,5
c1/c2
2,
оптимальным является решение X* = (10/3 4/3)T. Во всех остальных случаях оптимальное решение
будет отличаться от найденного. В частности, если f(x1, x2) = 3х1 + x2, то оптимальным является
решение (4 0)T. При c1/c2 = 0,5 и c1/c2 = 2 любая точка соответствующей стороны многоугольника
ГG, отличная от точки С, определяет оптимальное решение, отличное от найденного оптимального
решения Х*.
Лицу, принимающему решения, полезно знать и о том, как повлияют на оптимальное решение
изменение спроса на выпускаемую продукцию и увеличение или уменьшение запасов исходных
продуктов. Исследования, позволяющие получить эту информацию в совокупности с изучением
зависимости оптимального решения от параметров целевой функции, представляют собой анализ
на чувствительность математической модели (8) рассматриваемой задачи исследования операций.
Для удобства дальнейших рассуждений обратимся к задаче линейного программирования (9)
распределительного типа, предполагая, что непустое множество G допустимых решений
ограничено.
Активное ограничение (задачи линейного программирования распределительного типа) –
n
это ограничение
aik xk
bi , где X* = (Х1* ... Хn*) — оптимальное решение этой задачи.
k 1
Пассивное
(неактивное)
ограничение
(задачи
линейного
программирования
n
распределительного типа) – это ограничение задачи распределительного типа
aik xk
bi , i
k 1
n
aik xk*
{1, 2, …, m}, если
bi , где X* = (Х1* ... Хn*) — оптимальное решение этой задачи.
k 1
Дефицитный ресурс – это ресурс, соответствующее ограничение которого является
активным. Это связано с тем, что при реализации оптимального решения он используется
полностью. Недефицитный ресурс – это ресурс, соответствующее ограничение которого является
пассивным (недефицитные ресурсы имеются в некотором избытке).
Оптимальная вершина – это вершина многоугольника, изображающего множество
допустимых решений, которая соответствует оптимальному решению. Графическое решение
задачи
линейного
программирования,
рассмотренной
в
примере
3.6,
показывает,
что
оптимальному решению всегда можно поставить в соответствие хотя бы одну оптимальную
вершину. Через оптимальную вершину С (см. рис. 2) проходят две прямые х1 + 2x2 = 6 и 2х1 + x2 = 8.
Поэтому активными являются ограничения на суточные запасы исходных продуктов А и В.
33
При анализе модели на чувствительность определяются:
а) предельно допустимое увеличение запаса дефицитного ресурса, позволяющее получить
новое оптимальное решение, которое в смысле значения целевой функции является более
предпочтительным, чем старое;
б) предельно допустимое снижение запаса недефицитного ресурса, не изменяющее
найденного ранее оптимального решения. Ясно, что анализ влияния на оптимальное решение
процесса увеличения запаса недефицитного ресурса не имеет смысла. Заметим, что анализ
влияния процесса сокращения запасов дефицитного ресурса на оптимальное решение часто
проводится на практике, если возможна недопоставка дефицитного ресурса. Но сокращение запаса
дефицитного ресурса не может улучшить (в смысле значения целевой функции) оптимальное
решение. Поясним сказанное примером.
Пример 3.8. Вернемся к задаче линейного программирования, рассмотренной в примерах 3.6 и
3.7. В изначальной постановке, отраженной в математической модели (8), объем потребления
первого дефицитного ресурса (исходный продукт А) ограничен величиной b1 = 6. На рисунке 3
видно, что при увеличении запаса b1 этого дефицитного ресурса прямая, определяемая уравнением
х1 + 2x2 = b1, начинает перемещаться параллельно самой себе.
Рисунок 3. Графическое представление математической модели (8) при увеличении запаса b
До момента ее прохождения через точку F при b1 = 7 этому процессу соответствуют
перемещение оптимальной вершины С вдоль прямой, заданной уравнением 2х1 + x2 = 8, в
направлении точки F и увеличение прибыли (значения целевой функции) при оптимальном
решении. При b1 > 7 анализируемый ресурс уже не является дефицитным и дальнейшее
увеличение его запаса теряет смысл. Заметим, что при b1 = 7 оптимальное решение X* = (3 2)
T
соответствует значению целевой функции f* = 13 и наряду с уже имеющимся активным
ограничением 2х1 + x2
8 появляется еще одно активное ограничение: х2
2.
Аналогичный анализ может быть проведен и по отношению ко второму дефицитному ресурсу
(исходный продукт В), объем потребления которого ограничен величиной b2 = 8. На рисунке 3
видно, что увеличение запаса b2 исходного продукта В имеет смысл до величины
T
b2 = 12, при котором оптимальное решение X* = (6 0) соответствует значению целевой функции f* = 18.
34
При наличии ограничений на затраты, связанные с созданием дополнительных запасов
исходных продуктов A и В, „лицу, принимающему решения”, важно знать, какому ресурсу
следует отдать предпочтение. Для этих целей используют дополнительную характеристику i-го
дефицитного ресурса — ценность дополнительной единицы i-го ресурса. Ценность
дополнительной единицы i-го ресурса – это отношение максимального приращения целевой
функции к максимально допустимому приращению объема i-го ресурса.
В рассматриваемом случае ценность дополнительной единицы первого ресурса (продукта А)
yA
13 38 / 3
7 6
1
,
3
а второго ресурса (продукта В)
18 38 / 3 4
.
12 8
3
Полученные результаты свидетельствуют о том, что при наличии средств дополнительные
вложения в первую очередь следует направить на увеличение объема продукта В, а лишь затем на
увеличение объема продукта А.
Завершая решение задачи об определении оптимальных объемов производства различных
видов лака, рассмотрим вопрос о влиянии на оптимальное решение правой части неактивного
yB
ограничения х2
2. Это ограничение отражает предельный уровень спроса на лак для наружных
работ. Проанализировав рисунок 2, можно утверждать, что при неизменности остальных
ограничений, входящих в математическую модель (8), уменьшение спроса на лак для наружных
T
работ до величины 4/3 не может влиять на оптимальное решение X* = (10/3 4/3) (см. пример 3.6).
3.4.2 Формы записи задач линейного программирования
Стандартная форма представления задачи линейного программирования – это система
уравнений вида
(10)
где система линейных алгебраических уравнений
(11)
определяющая множество Q допустимых решений, является базисной, т.е. число уравнений этой
системы равно рангу ее матрицы. Таким образом, в (10) имеем L
N. А так как при L = N система
(11) имеет единственное решение и множество Q не может содержать больше одного элемента,
то в общем случае можно считать, что
L < N.
35
(12)
Сравнивая задачи (7) и (11), видим, что любая задача линейного программирования может
быть представлена в стандартной форме, если все ограничения типа неравенства, за исключением
ограничений на знаки переменных модели, записать в виде равенств. Ограничение типа
неравенства можно записать как ограничение типа равенства путем введения нового
неотрицательного переменного. Если ограничение типа неравенства имеет вид
то с помощью дополнительного переменного у
0 его можно записать в виде
.
Аналогично ограничение вида
можно записать следующим образом:
.
Для обоснования высказанного утверждения обратимся к математической модели (8) и
проведем ее анализ, начав с системы ограничений, определяющих множество допустимых
решений G.
Пусть для определенности в (8) I1 = {1, 2, ..., m1}, I3 ={m1 + 1, m1 + 2, ..., m2}, I2 ={m2 +1l,
m2 + 2, ..., m}. Полагаем yk = xk, k = 1, …,n. Если i
Если же i
I1, то вводим новое управляемое переменное
I3, то
Таким образом, N = n + m2 в (10). Если i
I1 то i = bi и
36
если i
I2, то i = bi и
если i
I3, то i = – bi и
Если среди ограничений в (8) нет линейно зависимых, то L = m. Если в (8) целевая функция
минимизируется, то
если в (8) целевая функция максимизируется, то
С
Пример 3.9. Чтобы задачу линейного программирования (9), рассмотренную в примерах 3.6-3.8,
представить в стандартной форме, полагаем у1 = x1, у2 = x2, у3 = 6 - х1 - х2, y4 = 8 - 2x1 - x2,
у5 = 2 - x2. В этом случае получаем
;
(13)
Таким образом, N = 5 и L = 3, в чем нетрудно убедиться. Заметим, что исходная задача (8)
может быть решена геометрическим методом, а для ее записи в стандартной форме верно
равенство N — L = 2.
Понятно, что задача (10) — это частный случай задачи линейного программирования вида (7),
в котором нет ограничений типа неравенства. Но иногда удобно сделать наоборот: ограничения
типа равенства преобразовать в неравенства. Рассмотрим приемы такого преобразования на
примере задачи (10) линейного программирования в стандартной форме.
В задаче (10) система линейных алгебраических уравнений (11) является базисной, в этой
системе N — L неизвестных являются свободными, а L — базисными. Обозначим свободные
неизвестные (свободные переменные) через x1, ..., xn, где n = N — L, а базисные — через xn+1, …, xN.
Запишем систему (11) в следующем виде:
37
Вводя матричные обозначения
приходим к следующему представлению системы линейных алгебраических уравнений:
– D2X2.
D1X1 =
Так как матрица D1 является квадратной порядка L и невырождена (она соответствует
-1
базисному минору матрицы системы), то имеет обратную матрицу D1 . Поэтому
что можно записать следующим образом:
(14)
-1
где gik — элементы матрицы — D1 D2, qi — элементы матрицы-столбца D1
-1
.
Возвращаясь к задаче (10), заметим, что ограничения типа равенства в системе (10) можно
заменить эквивалентными ограничениями типа неравенства. Так как xi
0, i = 1, …, L, то из (14)
следует, что
.
Итак, для перехода от задачи (10) к задаче (7) нужно разделить переменные на базисные и
свободные, выразить базисные переменные через свободные, а затем исключить базисные
переменные как из целевой функции, так и из ограничений, заменив последние неравенствами,
означающими, что исключаемые переменные неотрицательны. В целевой функции при этом
может появиться постоянное слагаемое, которое можно отбросить как не оказывающее влияния на
положение точки экстремума.
Напомним, что выбор базисных и свободных переменных в общем случае не является
однозначным. Поэтому не является однозначным и переход от (10) к (7).
38
Пример 3.10. Три уравнения в системе ограничений задачи (13) являются базисными, так как
ранг матрицы, составленной из коэффициентов при неизвестных, равен трем. В качестве базисных
переменных можно выбрать y1, y2 и у4 (этим переменным соответствует базисный минор матрицы).
Разрешая исходную систему относительно базисных переменных, получаем
Учитывая неотрицательность переменных y1, y2 и у4, запишем ограничения в виде неравенств
Из целевой функции 3y1 + 2у2 исключим базисные переменные
3y1 + 2у2 = 3(2 – y3 + 2y5) + 2(2 – y5) = 6 – 3y3 + 4y5.
Целевую функцию 6 – 3y3 + 4y5 можно заменить целевой функцией 3y3 + 4y5, так как
максимум первой функции достигается при тех же значениях переменных, что и максимум
второй. В результате приходим к следующей задаче линейного программирования:
Отметим, что эта задача отличается от исходной задачи линейного программирования (8).
Если задача линейного программирования представлена в стандартной форме (10) и при этом
N – L = 2,
(15)
то для ее решения можно использовать геометрический метод. Действительно, в этом случае
система линейных алгебраических уравнений (11) имеет два свободных неизвестных, например х1
и х2, а все остальные неизвестные — базисные и выражаются через свободные неизвестные
Исключая из задачи базисные переменные, мы приходим к задаче
программирования с двумя переменными и системой ограничений в виде неравенств
39
линейного
Частным случаем этой задачи является задача (8). Все дальнейшие рассуждения, относящиеся
к возможностям геометрического метода и технике его применения, ничем не отличаются от
рассуждений, проведенных при рассмотрении примера 3.8. Поэтому в данном случае ограничимся
иллюстративным примером.
Пример 3.11. Пусть необходимо найти решение задачи линейного программирования в
стандартной форме
В данном случае N =7 и L = 5. Непосредственной проверкой можно убедиться в том, что
система линейных алгебраических уравнений, задающих ограничения, является базисной и может
быть представлена в виде
Исключив из целевой функции базисные переменные у2, ..., y7, получим
Обозначив x1 = y1 и x2 = у2, приходим к следующей задаче, эквивалентной исходной:
На рисунке 4 видно, что оптимальная вершина границы ГG множества G допустимых решений —
это точка С пересечения прямых, задаваемых уравнениями x2 = 5 и x1 — 0,5x2 = 6. Таким образом,
T
оптимальное решение X* = (8,5 5) , которое в исходных переменных y1, .... у9 имеет вид Y* = (8,5 5
T
0,5 16,5 17,5 0 0) .
Рисунок 4. Графическое представление множества G допустимых решений
математической модели (8)
40
Завершая
рассмотрение
геометрического
метода
решения
задач
линейного
программирования, сделаем следующие замечания.
Замечание 1. Задача линейного программирования может не иметь решения даже тогда, когда
множество G допустимых решений не пусто. Эту ситуацию иллюстрирует рисунок 5.
Рисунок 5. Непустое множество G допустимых решений
Замечание 2. При N - L = 2 оптимальное решение Y* задачи (10) линейного программирования в
стандартной форме всегда имеет не менее двух нулевых координат (см. пример 3.11). Это связано с
тем, что оптимальная вершина границы ГG множества G допустимых решений является точкой
пересечения как минимум двух прямых, уравнения которых определяются ограничениями исходной
задачи (в примере 3.11 таковыми являются y6 = 0 и у7 = 0, т.е. x2 = 5 и x1 – 0,5x2 = 6).
3.4.3 Задачи, приводящие к задачам линейного программирования
В процессе изучения основных понятий исследования операций и основ линейного
программирования (глава 1) мы познакомились с двумя задачами линейного программирования:
1) в примере 1.2 рассмотрена задача о составлении пищевого пайка, которая при более общей
постановке известна как задача о пищевом рационе; 2) в 2.1 рассмотрена задача
распределительного типа, которую называют также задачей о распределении ограниченных
ресурсов. Для расширения представлений о возможных сферах практического применения
линейного программирования изложение его основ завершим анализом нескольких практически
важных задач, обратив особое внимание на специфические особенности построения их
математических моделей.
Транспортная задача. Рассмотрим задачу, возникающую перед транспортным отделом
фирмы, имеющей n предприятий Пi, i = 1 ,…, n, производящих однородную продукцию, и m
складов Cj, j = 1, …, m для ее хранения. Производственные мощности предприятий (Si —
мощность предприятия Пi, т.е. месячный объем производимой им продукции) и возможности
приема продукции складами (Dj — объем продукции, который может принять склад Cj в течение
месяца) известны на каждый месяц. Кроме того, известны транспортные расходы cij по доставке
единицы объема продукции с любого предприятия П i, i = 1, …, n на любой склад Cj, j = 1, …, m.
Требуется распределить продукцию, производимую предприятиями П i, по складам Cj так, чтобы
минимизировать общие транспортные расходы.
41
Пусть xij — объем продукции, поставляемой на склад Cj с предприятия Пi. В этом случае xij
0 при i =1 , .., n и j = 1,…, m. А так как Cijxij — затраты на транспортировку объема продукции xij с
предприятия Пi на склад Cj (в предположении, что транспортные расходы пропорциональны
объему перевозимого груза), то общие транспортные расходы фирмы равны значению целевой
функции
которое необходимо минимизировать путем выбора неотрицательных значений { xij },
удовлетворяющих следующим ограничениям:
так как произведенная продукция должна быть вывезена с каждого предприятия;
так как объем продукции, который может принять каждый склад Cj, ограничен его емкостью Dj.
Естественно, что рассматриваемая задача имеет решение, если суммарный объем
произведенной продукции не превышает суммарной емкости складов:
.
Следует отметить, что приведенная выше постановка транспортной задачи является далеко не
единственной, в чем можно убедиться, ознакомившись со специальной литературой.
Задача о календарном планировании комплекса работ. Эта задача может быть
сформулирована следующим образом. Пусть некоторая фирма должна реализовать проект
строительства, состоящий из конечного набора различных операций (работ). Специалистыстроители оценили продолжительность выполнения каждой операции и для каждой операции,
содержащейся в проекте, установили все другие операции, которые должны быть выполнены к
началу ее реализации. Руководство фирмы заинтересовано в минимально возможных сроках
реализации проекта.
Для удобства дальнейших рассуждений предположим, что весь проект состоит из пяти
операций A, В, С, D, Е и все данные о нем представлены в таблице 13, где введена информация о
фиктивной операции F, начинающейся в момент завершения реализации проекта.
42
Таблица 13. Данные операций A,B,C,D,E проекта строительства к задаче о календарном
планировании комплекса работ
Из таблицы 13 видно, что операцию С нельзя начать до завершения выполнения операции А, а
к операции Е можно приступать лишь после реализации операций В и D. Весь комплекс работ
будет выполнен, как только будет завершено выполнение операций С и Е.
В рассматриваемой задаче управляемыми переменными являются моменты начала
выполнения различных операций, за исключением операций А и В. Это связано с тем, что
операции А и В не имеют предшествующих, поэтому можно считать их началом - нулевой момент
времени. Заметим также, что условия задачи не ограничивают количества одновременно
начинаемых работ, что позволяет предполагать совпадение моментов начала выполнения
операций С и D, так как им непосредственно предшествует одна и та же операция А. Таким
образом, математическая модель рассматриваемой задачи в качестве управляемых переменных
содержит лишь следующие: х1 — момент начала операций С и D; х2 — момент начала операции Е;
x3 — момент начала операции F.
А так как x3 — момент завершения всего комплекса работ, то необходимо минимизировать x3
при условии выполнения следующих ограничений (см. таблицу 13):
x1
tA, x2
tB, x2
tD + x1, x3
tC + x1, x3
tE + x2.
Следует отметить, что благодаря специфике ограничений tA > 0, tB > 0, tC > 0, tD > 0, tE > 0 нет
необходимости в явном виде задавать условия неотрицательности xk
0, k = 1, 2, 3. Формально это
приводит к тому, что в математической модели рассматриваемой задачи управляемые переменные
не ограничены в знаке, что и будет использовано далее для ее решения.
Задача о минимизации дисбаланса на автоматической линии. Фармацевтическая фабрика
освоила производство нового бальзама, запустив автоматическую линию, на которой специальным
образом обрабатывается смесь равных частей экстрактов календулы, мяты и зверобоя. Эти
экстракты поставляют две фирмы, использующие различные технологии и оборудование.
Производительность этих фирм по выпуску каждого из экстрактов и максимальный суммарный
ресурс времени, которым располагает в течение недели каждая из них для производства этих
экстрактов, приведены в таблице 14.
43
Таблица 14. Характеристики фирм, поставляющих различные экстракты, к задаче о минимизации
дисбаланса на автоматической линии
Фабрика заинтересована в максимально возможном увеличении выпуска своей продукции,
что фактически эквивалентно минимизации дисбаланса автоматической линии вследствие нехватки одного или двух видов экстрактов. Необходимо определить еженедельные затраты времени
(в часах) на производство каждого из трех видов экстрактов на каждой фирме, обеспечивающие
максимально возможный объем производства бальзама и удовлетворяющие ограничениям по
использованию временных ресурсов этих фирм.
Пусть xij — недельный фонд времени (в часах), выделенный на фирме, i = 1, 2 для
производства экстракта, j = 1, 2, 3, где значение j = 1 соответствует экстракту календулы, j = 2 —
экстракту мяты и j = 3 — экстракту зверобоя. Тогда согласно данным, представленным в таблице 14,
объемы производства для каждого из экстрактов будут равны:
экстракт календулы (j = 1): 8x11 + 6x21;
экстракт мяты (j = 2): 5x12 + 12x22;
экстракт зверобоя (j = 3): 10x13 + 4x23.
Смесь, поступающая на автоматическую линию, должна состоять из равных частей трех
экстрактов. Поэтому объем производства бальзама лимитируется тем экстрактом, объем
производства которого минимален, и определяется следующим образом:
min{8x11 + 6x21; 5x12 + 12x22; 10x13 + 4x23}.
С учетом ограничений на максимальный суммарный ресурс времени для каждой из фирм,
производящих экстракты,
x11 + x12 + x13
100, x21 + x22 + x23
80
и естественных ограничений, связанных с условием неотрицательности управляемых переменных
xij
0, i =1, 2, j = 1, 2, 3,
приходим к математической модели
44
которая формально не имеет отношения к задачам линейного программирования из-за характера
целевой функции.
Для преобразования рассматриваемой задачи к задаче линейного программирования
достаточно целевую функцию заменить другой, введя дополнительное переменное х и дополнительные ограничения:
В результате получим следующую задачу линейного программирования:
Итак,
задача
о
минимизации
дисбаланса
на
автоматической
линии
может
быть
сформулирована как задача линейного программирования.
Задачи, рассмотренные в этом параграфе, дают представление о возможных сферах
применения методов линейного программирования. Каждая задача в определенном смысле
является задачей распределительного типа и, кроме того, статической задачей исследования
операций. Построение математических моделей этих задач имеет специфические особенности,
связанные с выбором управляемых переменных, а также с формированием целевой функции и
системы ограничений.
4 ЗАДАЧА МНОГОКРИТЕРИАЛЬНОЙ ОПТИМИЗАЦИИ И МЕТОДЫ ЕЕ РЕШЕНИЯ
4.1 Постановка задачи многокритериальной оптимизации и ее особенности
Почти всякая сложная техническая задача принятия решения многоцелевая, так как при
выборе наилучшего варианта приходится учитывать много различных требований, предъявляемых
к машине, и среди этих требований встречаются противоречащие друг другу. Однако почти все
математические методы оптимизации предназначены для нахождения экстремума одной функции,
т.е. для одной цели. Поэтому чаще всего пытаются свести многоцелевую задачу к одноцелевой.
Эта процедура в большинстве случаев приводит к серьезному искажению существа проблемы и,
следовательно, к неоправданной замене одной задачи другой.
45
Если при решении одноцелевых задач методологических проблем не возникает, а возможны
только вычислительные трудности, то иначе обстоит дело с многоцелевыми решениями. Здесь
основные нюансы связаны со следующей проблемой: что следует считать наилучшей
альтернативой в задаче с несколькими целевыми функциями, которые противоречивы и достигают
максимума в различных точках множества альтернатив? На этот счет на сегодняшний день не
существует единого мнения, поэтому оценка качества системы в случае векторного показателя
качества является одной из главных проблем в теории эффективности и исследования операций.
Задача многокритериальной оптимизации – это задача исследования операций, в которой
критерием оптимальности является требование о максимизации или минимизации нескольких
скалярных функций.
При анализе основных понятий исследования операций (см. главу 1) мы уже сталкивались с
примерами задач многокритериальной оптимизации. В общем случае постановки задач
многокритериальной оптимизации являются более корректными, чем, скажем, постановки задач
математического программирования. Это связано с тем, что любая операция представляет собой
совокупность целенаправленных действий и проведение практически любой операции, как
правило, предполагает достижение не одной, а нескольких целей.
Пример 4.1. При проектировании нового технического устройства обычно преследуют
несколько целей, среди которых могут быть снижение массы конструкции и повышение ее
надежности, снижение стоимости изготовления, повышение технологичности и т.д. В процессе
проектирования указанные цели достигаются за счет соответствующего выбора структуры и
параметров конструкции, которые кодируются вектором X. Таким образом, эта задача
оптимального проектирования является типичной задачей многокритериальной оптимизации.
В общем случае математическая формулировка задачи многокритериальной оптимизации с
множеством допустимых решений G
n
R и векторной целевой функцией
f(X) = (f1(X) …fm(X))
T
может быть записана в следующем виде:
extr , k = 1, 2,…, m.
fk(X)
X G
Любой скалярный критерий вида
max
fj(X)
X G
можно заменить эквивалентным скалярным критерием
– fj(X)
min .
X G
Поэтому понятно, что задачу многокритериальной оптимизации можно сформулировать
следующим образом:
fk(X)
min , k = 1, 2,…, m
X G
46
(16)
или в векторной форме
f(X)
min .
(17)
X G
Некорректная задача исследования операций – это задача исследования операций, которая
не имеет решения. На начальном этапе развития исследования операций некорректными считали
задачи многокритериальной оптимизации, а в качестве обоснования приводились следующие
соображения.
Пусть для каждого k = 1, 2,…, m элемент Xk множества G является решением задачи
математического программирования
fk(X)
min .
X G
В этом случае согласно представлению (16), если
Xk є X0, k = 1, 2,…, m,
то X0 — решение задачи многокритериальной оптимизации (17). Но, как правило, Xk
Xj при k
j.
Поэтому в общем случае следует ожидать, что задача многокритериальной оптимизации не имеет
решения.
Пример 4.2. Рассмотрим простейшую задачу многокритериальной оптимизации с множеством
допустимых решений
T
2
G = {(x1 x2) : (x1 – 2) + (x2 – 2)
2
1}
и критериями оптимальности
fk(X) = xk
min , k = 1, 2.
X G
Из рисунка 6 видно, что
X1 =
А так как Х1
1
2
, X2 =
2
1
.
X2, то исходная задача не имеет решения.
Рисунок 6. Иллюстрация к задаче многокритериальной оптимизации
с множеством допустимых решений (пример 4.2)
47
4.2 Понятие решения в задаче многокритериальной оптимизации
Итак, одновременное достижение минимума по всем скалярным критериям fk(X) на одном
решении Х в общем случае невозможно. Выход состоит в поиске некоторого компромисса в
достижении локальных целей. Лицо, принимающее решения, должно сформулировать некоторый
принцип компромисса и придерживаться его при выборе оптимального решения. Принцип
компромисса – это принцип, определяющий свойства оптимального решения и согласно
которому из набора альтернативных оптимальных решений выбирается наилучшее. Кроме того,
это оптимальное решение должно принадлежать множеству допустимых решений задачи. Число
возможных принципов компромисса очень велико. Поэтому при решении многокритериальных
задач возникает ряд проблем, носящих не вычислительный, а концептуальный характер.
На первый взгляд простейшим выходом из сложившейся ситуации является сведение
некорректной задачи многокритериальной оптимизации (17) к соответствующей задаче математического программирования путем выделения из множества скалярных целевых функций
fk ( X )
m
k 1
одной основной и использования остальных для формирования дополнительных
ограничений, налагаемых на множество G допустимых решений (т.е. путем выделения из
множества скалярных критериев одного основного критерия оптимальности и перевода остальных
критериев в разряд ограничений).
Трудоемкость и проблематичность корректной реализации обсуждаемого подхода в общем
случае связана как с трудностями выбора одной основной целевой функции fi(X) из множества
скалярных целевых функций fk(X), так и с обоснованным назначением верхних границ (f10, ..., fi-1,0,
fi+1,0,…, fm0) для скалярных критериев, переводимых в ограничения
fj(X)
fj0, j {1, ..., i -1, i +1, ...., m}.
Перейдем к рассмотрению иных подходов к решению задач многокритериальной
оптимизации. Допустимое решение Х1
G задачи многокритериальной оптимизации называется
строго более предпочтительным, чем допустимое решение X2
Последнее неравенство означает, что fk(X1)
G, и писать Х1 > Х2, если f(X1) < f(X2).
fk(X2), k = 1, 2,…, m, причем среди этих m неравенств
есть хотя бы одно строгое. Допустимые решения X1, X2
G задачи многокритериальной
оптимизации будем называть эквивалентными решениями и писать X1 ~ X2, если f(X1) = f(X2).
Замечания
1. В общем случае из X1 ~ X2 не следует Х1 = X2.
2. Если допустимое решение Х1 является строго более предпочтительным, чем допустимое
решение Х2, а допустимое решение Х2 является строго более предпочтительным, чем допустимое
решение Х3, то допустимое решение Х1 является строго более предпочтительным, чем допустимое
решение Х3, т.е.
((X1 > Х2)
(Х2 > X3))
48
(X1 > Х3).
3. Если X1 и X2 — эквивалентные решения, X2 и X3 — также эквивалентные решения, то X1 и
Х3 будут эквивалентными решениями, т.е.
((X1 ~ Х2)
(Х2 ~ X3))
(X1 ~ Х3).
Пусть теперь
m
= f(G) = {Y
R : Y = f(X), X
G} –
(18)
множество возможных значений векторной целевой функции f в задаче многокритериальной
оптимизации (17), порождаемое множеством G допустимых решений. Для удобства графических
иллюстраций полагаем, что m = 2, и произвольным образом выбираем допустимое решение
Х0
T
G, которому соответствует значение f(Х0) = (f1(X0) f2(X0)) целевой функции f(X) = (f1(Х) f2(Х))
(рисунок 7).
Рисунок 7. Графическая иллюстрация к задаче многокритериальной оптимизации (17)
1
1
-1
Пусть
— заштрихованная на рисунке 7 часть множества и G = f (
ющее подмножество множества G решений. На рисунке 7 видно, что
1
f(X )
1
G.
1
Таким образом, любое допустимое решение из множества G
1
) — соответству-
1
f(X0), X
предпочтительным, чем допустимое решение X0
1
G является строго более
G, т.е.
1
1
X > X0, X
G
G.
Продолжая эти рассуждения, приходим к выводу, что из множества W, определяемого
согласно (18), можно выделить подмножество W*, которое обладает очень ценными свойствами:
1) для допустимых решений из множества
-1
G* = f (
*
)
G
(19)
в множестве G допустимых решений задачи многокритериальной оптимизации (17) уже нет строго
более предпочтительных допустимых решений;
49
2) допустимые решения из множества G* либо эквивалентны, либо несопоставимы в смысле
строгой предпочтительности.
Альтернативы, которые хотя бы по одному критерию не хуже, чем другие, называются
недоминирующими. Множество Парето
На рисунке 8 множество
*
*
- это множество недоминирующих альтернатив.
выделено жирной линией и представляет собой дугу АСВ,
которая является частью границы Г множества
.
Рисунок 8. Графическое представление множества Парето
*
При перемещении точки С от точки А до точки В значения скалярного критерия f1
увеличиваются, а значения скалярного критерия f2 уменьшаются. Таким образом, уменьшение
значений одного из скалярных критериев может быть достигнуто лишь ценой увеличения
значений другого. Аналогичная картина наблюдается и в общем случае, так как любые
допустимые решения X1, X2
G* либо эквивалентны и для них f(X1) = f(X2), либо несопоставимы,
т.е. для пар координат fk(X1), fk(X2), k = 1, 2,…, m, векторов f(X1), f(X2) имеют место хотя бы два из
следующих трех соотношений: fi(X1) > fi(X2), fj(X1) = fj(X2), fn(X1) < fn(X2).
Обобщенное решение задачи многокритериальной оптимизации – это подмножество
-1
G* = f (
*
) множества G допустимых решений.
Это обобщенное решение в общем случае может состоять более чем из одного элемента, и
тогда лицо, принимающее решения, сталкивается с проблемой выбора одного допустимого
решения из некоторого множества эквивалентных и несопоставимых решений.
Естественно, что решение задачи многокритериальной оптимизации следует искать среди
элементов обобщенного решения. Чтобы выбрать один из элементов обобщенного решения, нужно использовать дополнительную информацию. Остановимся на том, каким образом можно
задействовать дополнительную информацию.
4.3 Методы задания предпочтений на множестве целевых функций
Ранжирование критериев. Дополнительная информация, помогающая в выборе решения,
может состоять в том, что скалярные целевые функции fk(X), k = 1, 2,…, m в задаче векторной
оптимизации (16) упорядочены в соответствии с их значимостью. В этом случае номер целевой
функции отражает ранг (приоритет) соответствующего скалярного критерия.
50
Пусть П* — множество Парето для задачи векторной оптимизации (16) и номер скалярной
целевой функции fk(X), где k = 1, 2,…, m, соответствует ее рангу. Процедуру выбора единственного
решения из подмножества G* множества G допустимых решений, определяемого согласно (19),
начнем с использования критерия первого ранга. Полагаем
q1 =
-1
max
f1(X), G1* = f1 (q1)
X G
G1*,
т.е. G1* содержит все допустимые решения из G*, которые минимизируют в G* целевую функцию
первого ранга. Далее переходим к целевой функции второго ранга и полагаем
q2 =
max
X G1 *
-1
f2(X), G2* = f2 (q2)
G1*,
т.е. множество G2* содержит все допустимые решения из G1*, которые минимизируют в G1*
целевую функцию второго ранга, и т.д. Переходим к целевой функции (m – 1)-гo ранга и полагаем
qm-1 =
max
*
X Gm
2
-1
fm-1(X), Gm-1 * = fm-1 (qm-1)
Gm-2*,
т.е. множество Gm-1* содержит все допустимые решения из Gm-2 *, которые минимизируют в Gm-2 *
критерий (m – 1)-го ранга. Так как Gm-1 *
Gm-2 *
G1 *
…
G*, то для завершения процедуры
решения задачи (16) многокритериальной оптимизации в условиях ранжирования критериев
осталось решить задачу математического программирования
min .
fm(X)
X Gm*
1
На рисунке 9 эта процедура иллюстрируется для случая m = 2.
Рисунок 9. Графическое решение задачи математического программирования
min* для случая m=2
fm(x)
X Gm
1
51
Множество Парето выделено жирной линией и состоит из отрезка АВ и дуги АС. Множеству
*
G1 соответствует часть множества Парето, состоящая из отрезка АВ, и на втором шаге мы
приходим в точку A, которая соответствует оптимальному (в смысле рассматриваемой процедуры)
решению.
Из проведенных рассуждений и рисунка 9 следует, что для реализуемости предложенной
процедуры решения задачи многокритериальной оптимизации подмножеству Gm-1 * множества G
допустимых решений должно соответствовать подмножество множества Парето, состоящее более
чем из одного элемента. Так как в общем случае это условие может не выполняться (см. рисунок 8),
то на практике для решения задачи многокритериальной оптимизации чаще используют метод,
известный как метод компромиссов.
Предположим, что для скалярной целевой функции fk(X) назначена допустимая уступка
k
> 0.
Допустимая уступка – это величина допустимого отклонения значения критерия k-го ранга от его
минимального значения
k
min fk(X)
=
X G*
на множестве G* (см. (18)). Очевидно, что для каждого k = 1, 2,…, m – 1 уступка dk определяет
некоторое подмножество
G( k)={X
G*: fk(X) <
k
+
k
}
в множестве G*. Если
m 1
g=
k 1
G( k)
,
то для нахождения оптимального (в смысле рассматриваемой процедуры) решения нам осталось
лишь решить задачу математического программирования
min .
fm(X)
X g
Это показано на рисунке 10 при m = 2.
Рисунок 10. Графическое решение задачи математического программирования
f (x)
min при m=2
m
X g
52
Решение двухкритериальной задачи соответствует точке С множества Парето, выделенного
жирной линией.
При m > 2 множество g может оказаться пустым. В этом случае уступки выбраны неудачно и
необходима их коррекция.
Завершая описание этого подхода к решению задачи многокритериальной оптимизации,
отметим, что его практическая реализация связана по крайней мере с двумя принципиальными
трудностями:
1) необходимостью ранжирования скалярных критериев;
2) назначением уступок и их коррекцией.
Обе операции формально не определяются и выполняются экспертным путем. Обращение к
экспертам неизбежно при решении задач многокритериальной оптимизации, так как необходима
дополнительная информация, позволяющая ввести отношение предпочтения на подмножестве G
множества G допустимых решений, которое соответствует множеству Парето
.
К сожалению, процедуры ранжирования скалярных критериев и определения уступок по ним не
всегда просты для экспертов. Поэтому применение рассмотренного подхода, как правило,
ограничивают лишь теми ситуациями, в которых эксперты могут квалифицированно преодолеть
обе отмеченные трудности.
Принцип справедливой абсолютной уступки. Согласно этому принципу справедливым
является такой компромисс, при котором суммарный абсолютный уровень повышения одного или
нескольких скалярных критериев не превосходит суммарного абсолютного уровня снижения
других критериев.
Рассмотрим две точки А и В множества Парето. В силу принципа справедливой абсолютной
уступки при переходе от А к В изменение вектора f(X) характеризуется величиной
m
=
f kA , f kB
m
(f
k=
k 1
где
m
B
k
A
k
f )
k 1
m
f
k 1
B
k
f kA ,
k 1
— значения скалярных критериев в точках А и В. Если
< 0, то решение,
соответствующее точке В, считается лучшим по сравнению с решением, соответствующим A.
Поэтому наилучшим в смысле рассматриваемого принципа будет такое решение, для которого
0 при переходе в любую другую точку.
Приведенные рассуждения показывают, что принцип справедливой абсолютной уступки
сводится к минимизации суммы скалярных критериев на множестве G*
m
fk(X)
k 1
min .
X G*
Недостаток этого принципа в том, что он допускает дифференциацию по отдельным
критериям: низкое значение суммы f1 + f2 + … + fm может достигаться, когда одни критерии имеют
сравнительно низкий уровень, в то время как другие — сравнительно высокий уровень.
Потенциальная возможность такой дифференциации характерна для задач, в которых критерии
53
выражены в различных единицах измерения. В таких задачах критерии необходимо
нормализовать, т.е. привести к единому, желательно безразмерному, масштабу измерения.
Синтез глобального критерия. Глобальный скалярный критерий – это критерий
оптимальности для задачи многокритериальной оптимизации с целевой функцией F(X) = Ф[f1(X),
…, fm(X)] = Ф[f(X)], зависящей от исходных скалярных целевых функций. Глобальный скалярный
критерий строится таким образом, чтобы решение задачи математического программирования
min
F(X)
X G
являлось решением исходной задачи (17) в смысле рассматриваемого принципа компромисса.
Ограничимся лишь кратким обсуждением синтеза глобального скалярного критерия для задач
многокритериальной оптимизации. Поскольку система неравенств
fk(X0)
fk(X), k = 1, 2,…, m, X
G
эквивалентна системе неравенств
skfk(X0) + ck
где sk > 0, k = 1, 2,…, m и ck
skfk(X) + ck, k = 1, 2,…, m, X
G,
R, k = 1, 2,…, m могут быть выбраны произвольно, то допустимое
решение X0 является решением задачи многокритериальной оптимизации (16) тогда и только
тогда, когда X0 является решением задачи векторной оптимизации
skfk(X) + ck
min , k = 1, 2, ..., m.
X G
Исходя из этого рассмотрим те требования, которым должна удовлетворять функция Ф[f(Х)].
Во-первых, функция Ф[f1, … , fm] должна быть инвариантна относительно преобразования
сдвига, т.е. для любого набора действительных чисел ck
m
k 1
и для любого допустимого решения Х
G должно выполняться равенство
Ф[f1(X),..,fm(Х)] = Ф[f1(Х) + с1, ..., fm(X) + cm].
(20)
Во-вторых, функция Ф[f1(X),..,fm(Х)] должна быть инвариантна по отношению к изменению
масштаба любого скалярного критерия fk, k = 1, 2,…, m, т.е. для любого набора действительных
положительных чисел
sk
m
k 1
и для любого допустимого решения Х
G должно выполняться
равенство
Ф[f1(X),..,fm(Х)] = Ф[s1f1(Х), ..., smfm(X)].
54
(21)
Сформулированные требования означают, что, каков бы ни был набор действительных чисел
ck, k = 1, 2,…, m, набор действительных положительных чисел sk, k = 1, 2,…, m и допустимое
решение Х
G, верно равенство
Ф[f1(X),..,fm(Х)] = Ф[s1f1(Х) + с1, ..., smfm(X) + cm].
(22)
Выполнение требований (20), (21) или эквивалентного им требования (22), налагаемых на
функцию Ф[f(Х)], при синтезе глобального скалярного критерия может обеспечиваться
различными способами. В частности, функция
m
sk f k ( X ) ,
F(X) =
(23)
k 1
где
f k ( X ) min f k ( X )
X G*
fk ( X )
max f k ( X ) min f k ( X )
,
X G*
X G*
отвечает требованиям (20), (21). Кроме того, эта функция учитывает и требование нормализации
критериев, так как вместо абсолютных значений скалярных критериев рассматриваются
безразмерные величины их относительных отклонений от минимальных значений. Критерий (23)
называют нормированным скалярным критерием.
В специальной литературе рассматривают другой вид нормированного скалярного критерия, в
котором учтена важность отдельных составляющих:
m
F(X) =
k
fk ( X ) ,
(24)
k 1
где
, k = 1, 2,…, m — некоторые параметры, для которых
k
m
k 1
k
1, 0
k
1, k = 1, 2,…, m.
(25)
Эти параметры называют весовыми коэффициентами. Весовые коэффициенты можно
определять различными способами, но любой подход в конечном счете сводится к использованию
экспертных оценок. Отметим, что для эксперта задача определения весовых коэффициентов
ничуть не проще задачи ранжирования скалярных критериев, так как в данном случае приоритет
каждого скалярного критерия он должен выразить количественно.
55
4.4 Метод идеальной точки
Метод идеальной точки использует множество Парето, составленное в данном случае из
допустимых точек задачи, которые не могут быть “сдвинуты” в пределах допустимого множества
с улучшением сразу по обоим критериям. Иными словами, улучшая значения одного из критериев,
мы неизбежно ухудшаем значения другого.
Метод идеальной точки состоит в отыскании на границе Парето точки, ближайшей к точке
утопии, задаваемой ЛПР. Обычно ЛПР формулирует цель в виде желаемых значений показателей,
и часто в качестве координат целевой точки выбирается сочетание наилучших значений всех
критериев (обычно эта точка не реализуется при заданных ограничениях, поэтому ее и называют
точкой утопии).
Пример 4.3. Пусть на множестве
плоскости (x, у), определяемом системой неравенств,
заданы две линейные функции
0 x 4
0 y 2
x 2y 6
U = x + y +2, V = x – y + 6.
Требуется найти решение задачи U
max, V
(26)
max.
Множество w представляет собой пятиугольник (рисунок 11), вершины которого имеют
следующие координаты: А(0, 0), B(0, 2), C(2, 2), D(4, 1), E(4, 0).
Рисунок 11. Графическое представление множества
В силу линейности критериев U и V пятиугольник ABCDE переходит в пятиугольник
A B C*D*E* (рисунок 12), координаты вершин которого вычисляются по формулам (26)
* *
A*(2, 6), B*(4, 4), C*(6, 6), D*(7, 9), E*(6, 10).
Рисунок 12. Иллюстрация преобразования пятиугольника ABCDE в пятиугольник A*B*C*D*E*
56
Находим границу Парето. Это отрезок D*E*. Точка утопии М*(7,10) считается заданной (ее
координаты суть наибольшие значения U и V).
Требуется найти на множестве Парето точку, ближайшую к точке утопии М*. Из рисунка
видно, что искомая точка должна лежать на отрезке D*E*. Проведем через точки D* и Е* прямую.
Пусть U + V = — ее уравнение (рисунок 13). Чтобы отыскать конкретные значения параметров
,
и , подставим в него координаты обеих точек — и D*, и Е*. Получим
6 + 10 = ,
7 +9 = .
Вычитая из первого равенства второе, после простых преобразований придем к соотношению
–
+
= 0, откуда
= .
Рисунок 13. Иллюстрация решения задачи о нахождении точки на множестве Парето,
которая ближе всего расположена к точке утопии M*
Положим
=
= 1. Тогда = 16 и U + V = 16 — искомое уравнение прямой.
Теперь стоит напомнить, как ищется расстояние между точками, заданными своими
координатами.
Пусть M1(U1,V1) и M2(U2,V2) — точки на плоскости (U,V) (рисунок 14). Для того чтобы найти
расстояние между ними, достаточно вычислить длину гипотенузы построенного прямоугольного
треугольника.
Рисунок 14. Нахождение расстояния между двумя заданными точками
57
Воспользовавшись теоремой Пифагора, получим, что гипотенуза равна
U1 U 2
2
V1 V2
2
.
По условию задачи нам нужно определить на прямой U + V = 16 точку М0(U0, V0), расстояние
которой до точки М*(7, 10) минимально, т.е. решить экстремальную задачу
2
2
z = (U – 7) + (V – 10) > min.
Так как V = 16 — U, то последнее соотношение можно переписать в виде
2
2
z = (9 – V) + (V – 10) > min.
Возводя в квадрат и приводя подобные слагаемые, получаем, что
2
z = 2V – 38V + 181.
Это уравнение описывает параболу (рисунок 15) с вершиной
V0 = 19/2, z0 = 1/2
(координата V0 находится из условия равенства нулю производной
z = 4V - 38). Тогда U0 = 16 – 19/2 =
= 13/2.
2
Рисунок 15. График функции f(V)=z(V)=2V -38V+181
Идеальная точка M0(13/2, 19/2) находится на расстоянии 1/ 2 от точки утопии М*(7,10)
(рисунок 16).
58
Рисунок 16. Нахождение идеальной точки M (13/2, 19/2)
0
Соответствующие значения х и у легко находятся из системы линейных уравнений
x + y +2 = 13/2,
x – y + 6 = 19/2.
Имеем x = 4, y = 1/2.
Замечание. Мы рассмотрели задачу, в которой
Ф(х, у)
max, (х, у)
max.
На практике часто встречаются случаи, когда требования выглядят по-иному:
Ф(х, у)
max, (х, у)
min
Ф(х, у)
min, (х, у)
min.
или
Можно, конечно, решать такие задачи и непосредственно. Но значительно удобнее поступить
по-другому, если учесть, что функция
= –
обладает следующим свойством: она достигает
наибольшего значения в точности в тех точках, где функция
принимает наименьшее значение и
наоборот. Иными словами, условия
min и
max
равносильны. Поэтому, поменяв в случае необходимости знак у критерия на противоположный,
мы можем свести любую двухкритериальную задачу к уже рассмотренной:
Ф( , у)
max, (х, у)
Рассмотрим соответствующий пример.
59
max.
Пример 4.4. Пусть на множестве (рисунок 17)
0 x 1
0
y 1
заданы две линейные функции
U = 2x и V = х – у – 1.
Рисунок 17. Множество w к примеру 4.4
Требуется найти решение задачи
U
max, V
min
(27)
при условии, что точка утопии М* имеет координаты (2, –2).
Введем новую функцию
W = –V = –х + у + 1.
Тогда требование (27) можно записать
U
max, W
(28)
max.
Соответственно изменится и точка утопии — N*(2, 2).
Функции U = 2x и W = –х + у + 1 линейны и преобразуют единичный квадрат w в
параллелограмм w (рисунок 18), при этом вершины квадрата (0, 0), (1, 0), (1, 1), (0, 1) переходят в
вершины параллелограмма (0, 1), (2, 0), (2, 1), (0, 2).
Рисунок 18. Преобразование единичного квадрата w в параллелограмм w
60
Множество Парето образуют точки отрезка с концами А(0,2) и В(2,1) (рисунок 19).
Рисунок 19. Графическое представление множетва Парето к примеру 4.4
Проведем через эти точки прямую и найдем коэффициенты ее уравнения
U+ V= .
Подставляя в него координаты точек А и В, получаем, что
2 = ,2 +
Положим
= 2. Тогда = 4 и
=
= 1. Тем самым уравнение искомой прямой имеет вид
U + 2W = 4.
Пусть C*(U,W) — точка этой прямой, ближайшая к точке N*(2, 2). Это означает, что должно
выполняться условие
2
2
z = (U – 2) + (W – 2)
min.
Так как U = 4 – 2W, то оно принимает следующий вид:
2
z = 5W – 12W + 8
min.
Чтобы найти минимальное значение функции (рисунок 20)
2
z = 5W – 12W + 8,
приравняем к нулю ее производную. Имеем
z = 10W – 12 = 0.
Отсюда
W = 6/5, U = 4 – 12/5 = 8/5.
61
Рисунок 20. График функции f(W)=z(W)=5W -12W+8
2
Соответствующие значения х и у находятся из уравнений
2x = 8/5, –x + y + 1 = 6/5,
откуда x = 4/5, y = 1.
Расстояние от найденной точки C*(8/5, 6/5) до точки утопии N*(2,2) равно 2/ 5 .
Ответ: идеальная точка M0(8/5, -6/5) находится от заданной точки утопии М*(2, -2) на
расстоянии 2/ 5 .
62
ГЛОССАРИЙ
№
Новое понятие
п/п
1 Активное ограничение
(задачи линейного
программирования
распределительного
типа)
2
Глобальный
скалярный критерий
Определение
n
n
aik xk
ограничение
k 1
k 1
где X* = (Х1* ... Хn*) — оптимальное решение этой задачи
критерий оптимальности для задачи многокритериальной
оптимизации
с
целевой
функцией
Ф f x , зависящей от исходных
F(X)= Ф f1 x ,... fm x
Годовой коэффициент
дисконтирования
4
Дефицитный ресурс
5
Допустимая уступка
6
Задача
распределительного
типа
Задача
многокритериальной
оптимизации
8
Задача линейного
программирования
9
Марковская задача
принятия решений
10
Марковский процесс
11
Матрица доходов
12
13
14
aik xk* bi ,
{1, 2, …, m}, если
скалярных целевых функций
коэффициент, определяемый по формуле
3
7
bi , i
Матрица переходных
вероятностей
Метод итераций
по стратегиям
Метод полного
перебора
=
1
1 k
,
где k — годовая норма процента и 0 < < 1
ресурс, соответствующее ограничение которого является
активным
величина допустимого отклонения значения критерия k-го ранга от
его минимального значения
задача, в которой система характеризуется наличием n видов
производственной деятельности, для осуществления которых
имеются различные ресурсы с номерами i = 1, …, m и в которой
необходимо определить объемы xk, k = l,…, n производственной
деятельности каждого вида, обеспечивающие максимальный
суммарный доход от производственной деятельности системы в
целом без нарушения ограничений, налагаемых на использование
ресурсов
задача
исследования операций,
в
которой
критерием
оптимальности является требование о максимизации или
минимизации нескольких скалярных функций
задача исследования операций, в которой множество допустимых
решений G
Rn — выпуклый многогранник, а критерий
оптимальности — скалярная линейная целевая функция,
определенная на G
задача математического программирования к многошаговым
задачам принятия решений в условиях риска, в которой процесс
изменения состояния любой изучаемой системы является
марковским процессом с конечным множеством возможных
состояний и дискретным временем
процесс, протекающий в некоторой системе, при котором для
каждого момента времени поведение системы в будущем зависит
только от состояния системы в данный момент и не зависит от
того, каким образом система пришла в это состояние
матрица, элементами которой являются доходы (положительные
значения) или затраты (отрицательные значения), возникающие
вследствие перехода системы из одного возможного состояния в
другое
матрица, каждый элемент pij которой является вероятностью
перехода из состояния Si в состояние Sj
метод
решения
задач
дискретного
динамического
программирования
метод решения задач принятия решений с бесконечным числом
этапов, связанный с перебором всех возможных стационарных
63
№
п/п
Новое понятие
Определение
15
16
Множество Парето
17
Некорректная задача
исследования
операций
Обобщенное решение
задачи
многокритериальной
оптимизации
18
*
Недефицитный ресурс
19
Однородная
марковская цепь
20
21
Однородный
марковский процесс
Оптимальная
вершина
22
Оптимальный
ожидаемый доход fi(j)
23
Пассивное
(неактивное)
ограничение (задачи
линейного
программирования
распределительного
типа)
24
Принцип
компромисса
25
Простая марковская
цепь
26
Случайная цепь
27
стратегий принятия решений
множество недоминирующих альтернатив
ресурс, соответствующее ограничение
пассивным
которого
является
задача исследования операций, которая не имеет решения
подмножество G* = f--1( *) множества G допустимых решений
простая марковская цепь, в которой вероятности перехода из
состояния Si в состояние Sj за интервал времени (tk-1, tk) зависят от
длины интервала t = (tk-1 – tk) и не зависят от начала отсчета tk, т.е.
pij(tk-1, tk) = pij(τ)
марковский процесс, для которого однородна соответствующая
марковская цепь
вершина многоугольника, изображающего множество допустимых
решений, которая соответствует оптимальному решению
наилучший доход в смысле используемого принципа оптимальности за этапы с номерами i, i + l, ..., N при условии, что после
(i –1)-го этапа изучаемая система S находится в состоянии Sj, где
j {1, 2, ..., m}
n
aik xk
ограничение задачи распределительного типа
bi ,
k 1
n
i
aik xk*
{1, 2, …, m}, если
bi , где X* = (Х1* ... Хn*) —
k 1
оптимальное решение этой задачи
принцип, определяющий свойства оптимального решения и
согласно которому из набора альтернативных оптимальных
решений выбирается наилучшее
случайная цепь, для которой в каждый момент времени закон
распределения Х(tk) вполне определяется значением Х(tk-1) и не
зависит от предыдущих значений
случайный процесс X(t) с дискретным временем и дискретным
множеством значений
система уравнений вида
Стандартная форма
представления задачи
линейного
программирования
28
29
30
Удельная прибыль
Управляемые
переменные
(переменные модели)
Ценность
дополнительной
единицы i-го ресурса
единица продукта k-гo вида производственной деятельности
неизвестные xk, k = 1, …, n, представляющие собой координаты
вектора Х = (х1, х2, ..., хn)T
отношение максимального приращения целевой функции к
максимально допустимому приращению объема i-го ресурса
64
65
Download