Глава 6 - Sciyouth.ru

advertisement
6 ЧИСЛЕННЫЕ МЕТОДЫ ОПТИМИЗАЦИИ МНОГОЦЕЛЕВЫХ
СИСТЕМ
6.1 ОПТИМИЗАЦИЯ ОДНОМЕРНЫХ МНОГОЦЕЛЕВЫХ
СИСТЕМ
Рассмотрим вначале случай, когда внешнее множество X одномерно
представляет собой отрезок [a,b] , множество допустимых решений у есть
замкнутая область n-мерного Евклидова пространства, а функция локальной
эффективности _ƒ(x,y) неотрицательна, непрерывна и выпукла по X при
любом y Y. Тогда области Дирихле элементов m -элементной стратегии А
связаны
E j   j 1 ,  j , j=1,...,m,  0  a,  m  b .
Рассмотрим функцию
F ( j 1, j )  min max f ( x, y )
для
yY  j 1  x  j
ГМС ,
j
F ( j 1, j )  min
yY
f ( x, y )dx


для
ИМС ,
j 1
представляющую собой оптимальное значение критерия оптимальности
многоцелевой системы на отдельной области Дирихле. Ясно, что ее
минимальное значение достигается при  j 1   j , причем для ИМС оно всегда
равно нулю. Надлежащим преобразованием исходной задачи, не меняющим
ее содержания, того же можно добиться и для ГМС. Тогда линия уровня F=0
 j 1   j , и линии уровня с малыми значениями
есть биссектриса
критерия оптимальности должны быть близки к ней. В частности, если они
могут быть аппроксимированы семейством прямых
 j  (1  F ) j 1  F ,
коэффициенты которого линейно зависят от значений критерия, то такая
многоцелевая система называется асимптотической. Можно показать, что
для нее оптимальное распределение областей Дирихле задается
соотношениями
j m
b  
 
( j 1  )  ,
a  
 
j  1,..., m  1,
 0  a,  m  b,
а оптимальное значение критерия равно для ГМС
Fmin 
1

(m
b  
 1) ,
a  
для ИМС –
81
Fmin 
m

(m
b  
 1) .
a  
В общем же случае F(  j 1 ,  j ) унимодальна, с минимумом при
 j 1   j ,неотрицательна, непрерывна. Тогда
F ( X , A, E ( x))  max F ( j 1, j )
j 1,..., m
ь
F ( X , A, E ( x))   F ( j 1, j )
для
ГМС ,
(6.1)
для
ИМС.
j 1
Найдем границы областей Дирихле, минимизирующие показатель
эффективности F(X,A,E(x)). Легко показать, что для ГМС они удовлетворяют
условию:
F(  j 1 ,  j )  c , j=1,...,m,  0  a,  m  b .
(6.2)
Если задаться значением C, то из этого условия, решая каждый раз
уравнение относительно ξj, можно последовательно найти ξ 1 (С),ξ 2 (С),... и,
наконец,  m (c). Приравнивая его правой границе множества X, мы получаем
уравнение относительно С:
 m (c)=b.
(6.3)
Решив это уравнение, можно найти значение Copt , а следом за ним, по (6.2),
оптимальные значения границ областей Дирихле и компоненты элементов
оптимальной
стратегии
y j  Y,
j=1,...,m.
Геометрическая
иллюстрация показана на рис. 6.1, на
который нанесены линии уровня
функции F ( j 1 ,  j ) . Видно, что графически оптимизация ГМС сводится
к отысканию такой линии уровня,
когда между этой линией и
биссектрисой
первого
координатного угла можно вписать
m-ступенчатую лестницу с началом
на прямой ξ i 1 =a и концом на прямой
ξ j 1 =b.
Рис. 6.1
Для оптимальной ИМС можно
показать, что
Fj` ( j  2 ,  j 1 )   Fj`1 ( j 1,  j ), j  2,..., m .
(6.4)
82
Аналогично предыдущему, задавшись значением ξ 1 , можно, последовательно
решая (6.4), вычислить ξ 2 (ξ 1 ),ξ 3 (ξ 1 ),...и, наконец, ξm(ξ 1 )=b , т.е. прийти к
уравнению относительно ξ 1 , решив которое, можно легко найти остальные
границы оптимальных областей Дирихле и саму оптимальную стратегию.
Решению (6.4) может быть дана геометрическая интерпретация, аналогичная
рис. 6.1.
6.2. СВЕДЕНИЕ К ЗАДАЧЕ ЦЕЛОЧИСЛЕННОГО ЛИНЕЙНОГО
ПРОГРАММИРОВАНИЯ
Если размерность внешнего множества превосходит единицу, оптимизация многоцелевой системы значительно усложняется, так как
требуется не только найти оптимальную m -элементную стратегию, но и
оптимально разбить на области Дирихле нестрого упорядоченное внешнее
множество. Если на отрезке каждая область Дирихле могла быть задана
двумя числами - ее границами, то в пространстве большего числа измерений
вообще нет унифицированного способа задания областей. Поэтому будем
задавать многомерные множества X и Y конечным числом их элементов, т.е.
использовать их точечную аппроксимацию.
Пусть X  xs s  1,..., n, Y  yi i  1,..., m .Метрические свойства функции
локальной эффективности в этом случае не так уж и важны, поэтому будем
предполагать лишь ее липшицевость
f ( x1 , y1 )  f ( x2 , y2 )  Lx x1  x2  Ly y1  y2
для любых x1 , x2  X , y1 , y2  Y .
Введем m переменных u i , i=1,...,m, целочисленных и удовлетворяющих
условиям 0≤u i ≤1, таким образом, эти переменные могут принимать лишь
значения 0 и 1. Установим, что если u i =0, то точка Y i €Y не входит в
оптимальную стратегию, а если u i =1, то входит. Тогда
M
U
i 1
i
m
( условие, что стратегия содержит ровно m элементов). Введем также nm
целочисленных переменных
v si , которые могут принимать значения 0 или1.
Если vsi  0 , то будем считать, что точка xs  X не входит в область Дирихле
элемента i , а если vsi  1 , то входит. Тогда
vsi  ui ,
s  1,..., n
83
(условие наличия областей Дирихле лишь у элементов Y, входящих в
оптимальную стратегию),
1
v
ш 1
si
1
s=1,...,n
(условие покрытия всего множества X системой областей Дирихле).
Миноранта многоцелевой системы L(xs), очевидно, запишется
m
L( x s )   Vsi f ( x s , y i ) ,s=1,...,n.
i 1
Окончательно могут быть сформированы
целочисленного линейного программирования.
Для ГМС-
следующие
задачи
F  min;
m
F   vsi f ( x x yi ) , s=1,...,n;
i 1
vsi  ui , s=1,...,n, i=1,...,m
m
v
i 1
m
u
i 1
i
si
 1 , s=1,...,n;
 m , u i  1 , i=1,...,m.
Для ИМС:
N
M
F   vsi f ( x s , yi )  min;
s 1 i 1
vsi  ui , s=1,..,n, i=1,...,m;
M
v
i 1
M
u
i 1
i
si
 m,
 1 , s=1,...,n;
ui  1,
i  1,..., m .
Эти задачи могут быть решены, например, алгоритмом Гомори, правда,
количество переменных в описанных задачах равно m(n+1), что для реальных
задач слишком велико.
6.3
ОПТИМИЗАЦИЯ ГАРАНТИРУЮЩЕЙ МНОГОЦЕЛЕВОЙ
СИСТЕМЫ МЕТОДОМ ЦЛП
Алгоритм, изложенный в предыдущем пункте, при всей своей общности,
недостаточно эффективен при большой размерности задачи (порядка сотен
элементов внешнего множества и множества стратегий), поскольку
преобразуется в задачу целочисленного программирования с числом
переменных и ограничений порядка произведения количества элементов этих
множеств. В данном пункте описывается алгоритм оптимизации
гарантирующей
многоцелевой
системы,
приводящий
к
задаче
84
целочисленного линейного программирования с числом переменных порядка
суммы количества элементов этих множеств.
Пусть X  {xi }i 1,..., n , Y  { y j } j 1,..., m . Обозначим
aij  f ( xi , y j ),
i  1,..., n,
j  1,..., m
(6.5)
Введем булевы переменные u j  (0,1) - признаки того, включен ли
элемент y j  Y в стратегию A. Тогда число p элементов стратегии A
определяется как
m
p  u j .
(6.6)
j 1
Несколько расширим исходную постановку задачи оптимизации ГМС с
учетом следующего обстоятельства. Критерий оптимальности ГМС весьма
чувствителен к каждому элементу Y. Поэтому ошибка в определении
эффективности хотя бы одного элемента может существенно исказить
решение задачи. На практике же такие «выколотые точки» вполне возможны,
именно поэтому, например, в математической статистике имеются
специальные методы определения и исключения так называемых «грубых
ошибок». Необходимо и при оптимизации ГМС предоставить возможность
оптимального (по основному критерию) исключения из множества Y
определенного числа элементов q. Для этого введем булевы переменные
vi  (0,1) - признаки того, что элемент xi  X исключен из рассмотрения.
Тогда
n
v
i 1
i
q
.
(6.7)
Введем
1 при

bij  
0 при

aij  f ,
aij  f
.
(6.8)
Здесь f - гарантированная точность представления множества Y
оптимальной m-элементной стратегией A в том смысле, что
min f ( xi , y )  f
y A
Рассмотрим
xi  X .
i -ю строку матрицы bij
i 1,..., n
j 1,..., m
(6.9)
.Если
85
m
b
ij
j 1
1,
(6.10)
это означает, что для данного i существует хотя бы один номер j  [1,..., m]
такой, что f ( xi , y j )  f .Соответственно, если
m
b u
ij
j 1
j
 1,
(6.11)
это означает, что существует такой элемент y j стратегии A, что f ( xi , y j 0  f .
Условие же
m
b u
ij
j 1
j
 vi  1
(6.12)
тогда означает, что либо элемент xi исключен из рассмотрения (тогда vi  1 и
(8) выполняется для любой стратегии A), либо в стратегии A существует
элемент y j , «расстояние» f ( xi , y j ) от которого до элемента xi не превосходит
f.
Выполнение (8) для любых i=1,…,n означает, что для стратегии A
F ( X , A, f ( x, y ))  min F ( X , A, f ( x, y ))  f .
A Y
(6.13)
Теперь можно поставить две взаимные оптимизационные задачи:
минимизировать f при фиксированном числе p элементов стратегии A и
выполнении (6.12) для любых I=1,…,n, а также (6.6) и (6.7), либо
минимизировать p при фиксированном f и выполнении тех же условий.
Предпочтительнее решать вторую задачу, поскольку она является
стандартной задачей целочисленного линейного программирования (ЦЛП)
всего лишь с n+m булевыми переменными uj, j=1,…,m, vi, I=1,…,n,
критерием
m
p   u j  min
(6.14)
j 1
и n+1 ограничениями
m
b u
j 1
ij
 vi  1,
i  1,..., n,
(6.15)
n
v
i 1
j
i
 q.
Перебирая значения единственного параметра f и решая для каждого из них
задачу ЦЛП, можно получить зависимость p опт ( f , q ) при фиксированном q.
При этом, очевидно,
max min f ( x, y)  f  min max f ( x, y) .
xX
yY
xX
yY
(6.16)
Это позволяет решить первую из взаимных задач – заданному значению p
сопоставить оптимальное значение F .
86
Пример 1. Для студентов учебной группы рассчитан рейтинг,
приведенный в табл. 6.1, по результатам их деятельности. Требуется
разделить их на несколько подгрупп примерно равного уровня для того,
чтобы частично индивидуализировать дальнейший учебный процесс.
Таблица 6.1
Номер
студента
Рейтинг
Номер
студента
Рейтинг
1
2
3
4
5
6
7
8
9
10 11 12 13 14 15
24 31 23 35 12 25 27 19 27 29 29 26 29 30 23
16 17 18 19 20 21 22 23 24 25 26 27 28 29
27 25 35 26 38 24 22 25 29 29 22 39 26 20
Расчеты по приведенному выше алгоритму показывают, что при
отклонении рейтинга в подгруппе не более чем на единицу ( f =1)
потребуется 7 подгрупп; не более чем на 2 единицы – 6; на 3 единицы – 4 и
на 4 единицы – тоже 4 подгруппы. Между тем, если допустить возможность
перевода из группы одного студента (q=1), необходимое число подгрупп
уменьшается на единицу (переводится студент с наименьшим рейтингом 12),
а если допускается возможность перевода трех человек (q=3), то потребное
число подгрупп становится еще меньше. Оно приведено во второй строке
табл.6.2, где указаны также переводимые студенты для различной величины
допустимого отклонения рейтинга в подгруппах.
Таблица 6.2
q
f
p опт
Номер и
рейтинг
переводимого
студента
4, 35
5, 12
18, 35
20, 38
27, 39
Q=3
1
5
2
4
3
3
4
2
Отметка о переводе из группы
1
1
1
1
1
1
1
1
1
1
1
1
87
6.4
ОПТИМИЗАЦИИ ГАРАНТИРУЮЩЕЙ МНОГОЦЕЛЕВОЙ
СИСТЕМЫ МЕТОДОМ СЕТЕЙ
Укажем вначале теорему общего характера.
Теорема (достаточное условие оптимальности ГМС). Пусть <X,Y,f(x,y)>
и <X1,Y,f(x,y)>, где X 1  X - гарантирующие многоцелевые системы, и
~
~
F ( A, X 1 )  F ( A, X ) .
~
Тогда стратегия A , оптимальная для ГМС <X1,Y,f(x,y)>, оптимальна и для
<X,Y,f(x,y)>.
Иначе говоря, стратегия, оптимальная для ГМС с более узким внешним
множеством, оптимальна и для аналогичной ГМС с более широким внешним
множеством в том случае, если при этой стратегии значения критерия
оптимальности этих ГМС совпадают.
Доказательство. Пусть теорема неверна, т.е. существует допустимая
~
стратегия A*  Y такая, что F ( A* , X )  F ( A, X ) . Ввиду того, что множество X1
уже, чем X,
~
~
F ( A* , X 1 )  F ( A* , X )  F ( A, X )  F ( A, X 1 ) ,
~
что противоречит оптимальности стратегии A для ГМС <X1,Y,f(x,y)>.
Эта теорема позволяет использовать для оптимизации или проверки
оптимальности ГМС более узкие внешние множества. В сочетании с
алгоритмом, изложенным в предыдущем пункте, это позволяет во многих
случаях уменьшить размерность решаемых задач ЦЛП. Соответствующий
алгоритм сетей включает в себя следующие этапы.
1.
Случайным образом выбирается некоторое подмножество
внешнего множества стратегий X.
2.
Для выбранного подмножества алгоритмом ЦЛП находится
оптимальная стратегия, которой соответствует некоторое
~
значение F критерия оптимальности.
3.
Для найденной стратегии вычисляется значение критерия
оптимальности исходной ГМС для всего внешнего
~
множества X. Если оно равно F , это означает, что найденная
стратегия является решением исходной задачи.
4.
В противном случае к выбранному подмножеству
добавляются элементы внешнего множества, на которых, при
найденной стратегии, функция локальной эффективности
~
получила значение, большее F , т.е.
~
f ( x, y E ( x ) )  F , y E ( x )  A ,
и процесс повторяется начиная со второго этапа.
88
Download