О вычислении аппроксимационного градиента для некоторых классов разрывных функций

УДК 519.6

О ВЫЧИСЛЕНИИ АППРОКСИМАЦИОННОГО ГРАДИЕНТА ДЛЯ НЕКОТОРЫХ КЛАССОВ РАЗРЫВНЫХ ФУНКЦИЙ

Т.Б. Бигильдеева, О.П. Гайдукова, С.А. Никитина

In the article the economic scheme of calculation of approximate gradient being the integrated operator for piecewise linear and piecewise smooth functions of a special kind are submitted. These schemes allow rather precisely to calculate approximate gradient for acceptable time for the given classes of functions, that allows to use methods of approximate gradient for discontinuous optimization problems of large dimension.

Введение

Задачи оптимизации разрывных функций относятся к наиболее трудным и мало изученным, хотя они нередко возникают на практике. К таким задачам, в частности, относятся задача распределения потока воды в ГРЭС [7], задача распределения платежей [8], задача трассировки трубопроводных систем [9]. В настоящее время существует ряд методов и алгоритмов, которые ориентированы на отдельные классы задач разрывной оптимизации. Среди них можно выделить методы минимизации квазивыпуклых функций [10,11], методы минимизации разрывных кусочно-линейных функций [12]. Однако для решения задач разрывной оптимизации зачастую используют эвристические алгоритмы или алгоритмы, предназначенные для решения задач специального вида (например, [8]).

Один из подходов к решению задачи оптимизации разрывных функций основан на понятии аппроксимационного градиента [1,2]. Аппроксимационный градиент представляет собой интегральный оператор и является аналогом градиента в случае гладких функций. Он, как и градиент функции, используется при построении направления спуска в численных методах. Методы аппроксимационного градиента, как показали численные эксперименты, позволяют найти решение с приемлемой точностью для достаточно сложных задач оптимизации негладких и разрывных функций [3,4].

© 2001 Т.Б. Бигильдеева, О.П. Гайдукова, С.А. Никитина

E-mail: tbig@cgu.chel.su

Челябинский государственный университет

Работа выполнена при поддержке РФФИ

Одна из проблем, возникающая при использовании методов аппроксимационного градиента, состоит в вычислении аппроксимационного градиента, которое сводится к вычислению многомерных интегралов по шару. Аналитически это сделать в большинстве случаев невозможно. На практике аппроксимационный градиент приходится вычислять приближенно. Следует отметить, что использование известных кубатурных формул интегрирования по шару [5], с одной стороны, приводит к существенному росту трудоемкости вычислений с ростом размерности пространства переменных, с другой стороны, не гарантирует достаточной точности вычислений интеграла для негладких и разрывных функций. Это приводит к необходимости разработки новых, более экономичных схем вычисления аппроксимационного градиента для некоторых классов разрывных функций,

1. Основные понятие и определения

Пусть / : Rn -д R - измеримая по Лебегу функция, ограниченная на всяком ограниченном множестве. Обозначим Br = {х е Rn : || х ||^ г} - шар радиуса г с центром в начале координат, Вг(х°) - шар с центром в точке х°. Приведем ряд определений, введенных в работе [1].

Пусть Р - множество интегрируемых по Лебегу функций /у : Rn —>• R таких,

что

4) f sfpr(s)ds = di(r) > 0 Vi = 1, n.

вт

Определение 1. Вектор a(x] г;рг; /) = (афт; г;рд /),..., а„(т; г;рг; /)) называется аппроксимационным градиентом функции / в точке х для выбранных г и рт, где

вт

Заметим, что аппроксимационный градиент является градиентом линейной функции, которая наилучшим образом приближает функцию / в окрестности

Как было отмечено выше, понятие аппроксимационного градиента, как и градиента гладкой функции, позволяет не только сформулировать необходимые условия минимума функции, но и построить численные методы решения задач оптимизации разрывных функций. Далее будут рассмотрены кусочно-линейные функции многих переменных. Приведем необходимые определения, следуя [12]. Определение 2. Функция / : Rn —>• R называется кусочно-линейной, если она дифференцируема всюду в Rn, кроме множества точек, принадлежащих

1) pr(s) ^ 0, Vs е Rn; pr(s) = 0, Vs ^ Вг;

2) / pr(s)ds = 1;

Вг

3) J SiSjpr(s)ds = 0; Vi, j = l,n;

Br

Br(x) по норме \\ g \\вг= I / 92(s)pr(s)ds [2].

\bt

конечному числу гиперплоскостей, разделяющих пространство />’" на области, в каждой из которых функция / линейна.

Определение 3. Ребром кусочно-линейной функции / называется множество {х G Rn : < о, х > —Ь = 0}, где о 6 Rn, b е R, в каждой точке которого функция недифференцируема,

В работе [12] показано, что в некоторых случаях произвольная кусочнолинейная функция может быть представлена в виде суммы линейной и кусочнолинейных функций с одним ребром, В этой ситуации задача вычисления аппроксимационного градиента для кусочно-линейных функций сводится к вычислению его для кусочно-линейных функций с одним ребром (в силу его аддитивности [2]) ,

2. Вычисление аппроксимационного градиента для кусочно-линейных функций с одним ребром

Рассмотрим кусочно-линейные функции с одним ребром. Такая функция имеет вид

_ J <a,x>+/3, <q,x^h>< 0 21 \ <a,x>+f3, <q,x^h>^0 ’

где a, a, q, h e /3, [3 e R.

Ребром функции / является гиперплоскость < q, х — h >= 0, если а Ф а или (3 ф (3. Если a = а и (3 = (3, то f(x) - линейная функция на всем пространстве. Выведем формулы вычисления аппроксимационного градиента для кусочнолинейных функций с одним ребром. Функцию pr(s) определим следующим образом: Pr(s) = -yj^у при s £ Вг и pr(s) = 0 при з (f В,., где 1 „ (г} = -

объем шара радиуса г в пространстве Rn, Г(т) - гамма-функция.

Заметим, что

di(r) = J sfpr(s)ds

Вт

С,

.; Г, M i' f - sf) * ds

K-l(l)r„+2 f f2(l _ = Y3zMrn+2 I Ml/2(1 _ u)^du

v;

K

Vn-l

Vnir)

r" '4>> (

3 n + 1

2 2

где B(£] rj) = J X(1 — u)n ldu - бета-функция, о

Учитывая, что 11(1,: //) = получим

ddr) = r2Vn-1^В

г[ ) vn{\) ^ \2’ 2

-------, i = 1, n.

n + 2’ ’

Следовательно,

щ(х-, г; pr; f) = D J Sif(x + s)ds = DI(f),

Вт

где D = (*(г)Г.(г))-‘ = ('i+SCn/2). 1(f) = f s,/(X + s)ds.

In' Вт

Далее будем предполагать, что || q ||= 1, Обозначим с =< q,h >. Рассмотрим область значений < q,x > > г. В этом случае шар Вг

(область интегрирования) не захватывает ребро функции, в Br f(x) линейна и оф/; X] r;pr) = a [2].

В случае < q,x > —с < —г аналогично щ(/; х\ г;рг) = ot.

Наиболее трудным является случай < q. х > г. Рассмотрим его.

Для вычисления аппроксимационного градиента необходимо перейти к новой системе координат. Построим матрицу перехода G. Ее строками являются направляющие векторы новой прямоугольной системы координат, причем первая строка совпадает с вектором q (нормалью к гиперплоскости, являющейся ребром функции /), Все остальные строки выбираются произвольно, но так, чтобы G была ортогональной матрицей, то есть G 1 = Gr. GGT = GTG = Е.

n n n n

Итак, если G = (gy), to gxj = qy £ gfk = V 9y = 1. V 9ik9jk = £ gki9kj = 0,

____ k=1 k=1 k=1 k=1

hi = 1 ,n.

n

В новой системе координат х' = Gx, то есть х\ = ^ причем

з=1

П

хз = Е дух\. Заметим, что в новой системе координат ребро функции будет

i=1

задаваться равенством х\ = с,

П

Обозначим В0(у) = {s Е Rn : щ = у, Е S1 ^ г2 — У2} _ шаР в пространстве

г=2

Rn-1 радиуса г2 — у2. Функцию / представим в виде f(x) = f\(x) + /2(ж), где

,/ г f <d,x>, <q,x><c т/ \ f ь <q,x><c v ; [ < сцт >, <q,x>^c w ( б <q,x>^c

Тогда о(т;г;рг;/) = о(т; г;рг; Д) + о(т; г;рг; /2).

Вычислим aiz(x] г]pr] f2). Имеем

аДт; г; рг; /2) = £> J skf2(x + s)ds

вт

i=1

P

syls^-.-ds^dsl + /3

s,ids'2...ds,nds,l

-r B°

r

PDqk I siK-i(/r2 - (Д)2Ж + PDqk [ s[\x(y/G - (Д)2Ж

п—1

п—1

/5 / 4 (yr2 - (si)2) Д / 4 ( v f2 ^ (s'i)2) p-p

n + 1

^^(^(^-(c-xi)2)^.

Таким образом,

ak(x-,r-,pr-,f2) = у^Г„(г2 - 52)"*1.

n + 1

rjIP г _ пт/ /it _ Г(1 + n/2)(n + 2) _ _

где 1 „ — — r„+20j:r^n+i) ’ 6 ~ c <(hx>-

Рассмотрим k-ую компоненту аппроксимационного градиента для функции fi(x). Имеем

ак{х] г; рд fi) = D j skfi(x + s)ds =

Вт

D

+D

П / П

X9tks't XIal \ X^'W + «{) ds'2...ds'n

i=1

yj=l \l= 1

n In

X№feS* ХЙМ J29ll(x'i + ds'2...ds'n

B°

i=1

yj = l \l= 1

ds. T

ds\

D / Ai(s[)ds[ + D / A2(s'l)ds{,

где

n n n

aj9ik9ij / {rfl + s'l)s'ids,2...ds,ri

i=1 j=1 /=1

B°

v42(si) - аналогичное выражение, в котором вместо су- стоит су. Учитывая, что

slls'ids2...dsln

B°

{s'lfds'2...ds'n

0, = J s'ivn-iWr2 - (AY). I I (A)2ds2...ds'n, { s°(ei) i Ф l i = l = 1 i = l Ф 1

г2 - Ш2 - М)2) Д

1

д - (.<)2)^;-2(1) / «1/2(1 - «)“**** = о* - (s;)2)^i;-2(i)b (|

о

r' e'rlJ rle' = I ,________^ ^

г г 2' " \ * = 1 '

и, используя соотношения для элементов матрицы перехода G, получим

ЛК) = qks'iVn-i(y/г2 - (4)2)(< > +4 < й,ц >)+

+ (<** ~qk<ot,q >)К-2(1 )(г2 - K)2)^-8 ^

Аналогичное выражение для +++') получим, заменив а на а.

а ”

Обозначим Х(Х) = / t2( 1 - t2)^dt, У(А) = /(1 - t2)^dt, где А =

-1 -1

А е [—1; 1]. Тогда

с—х\

D I Al(s’l)ds[ = rnqk

<a,q>rn+2X{ А) <а''Х>(^ &

п + 1

(г2 - 52)^

+

+ (<** - ft < >)^т^"+2^(А);

п + 1

£> / = D A2(s'l)ds'l — D / A2(s'1)ds'

r"+2gfc (r2 — 52) "г < й x > + n + 1

+qk (l - r„r"+2Af(A)) < a,q > + ^1 - ^ ^rn+2y (A)^ (ak - qk < a,q >). В итоге получаем для случая с— < <]. .г > А

ак(х-,г-,Рг-,.И

< а, х > п + 1

qkTnrn+2X{X)<a,q>

Г,

—fn+2y(A)(o:fe - qk < a,q >) + dk,

n+1

где к = l,n, a = a — a, /3 = /3 — /3.

Преобразуем последнее выражение, обозначив yn = г" 2Г,

< а, х >

°fc(+ f',pr', /) = " 7Tn' PgfcT»(1 - А2) 'г21 •

г

йк1пХ(Х) <a,q>

In

П + 1

y(A)(afe - qk < a,q >) + dk.

Таким образом, аппроксимационный градиент для кусочно-линейной функции с одним ребром имеет следующий вид: а(х] г; рг] /) = а, если < q, х >> г;

о(т; г;рг; /) = а, если < q, х >< г;

а(х; г;рг; /) = < Ж_Г>1^7п(1 - Л2)^ц^7„Х(Л) < ц +

г

7»

п + 1 = й

У (А) (а— < a, q > q), если | < ц, а: >|^ г;

где к = 1,п, а = а - а, (3 = (3 - (3, \ = c~<rq’a!>,

А А

+2/1 +2\^ j+ л/'/ \ '\ _ / /1 +2

_ г

7я — г-л/n+lA ;

/ (1 - У(А) = J (1 -

1 -1

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

Рассмотрим функции JA(A) и У (А), Заметим, что JA(A) = JA(0) + JA(A), где

а о

J t2(l-1?)R*ldt,X(0) = j t2{l -t2)^dt.

О -1

Вычислим JA(0). Имеем

Л'

??,—1 2.

2 <n = .in.

3 П + 1А Г(ПГ)Г(|) 1

2Г(^ + |) 2Tn

Функцию JA(A) можно представить в виде JA(A) = \Ву± (|;Пг) , где

X

Bx(p,q) = j tp^l( 1 — t)4^L dt - неполная бета-функция. Имеет место следующее о

соотношение [6]: Bx(p,q) = p^lxpF(p, 1 — q;p+ 1',х), где F(a,b', c; z) - гипергеометрическая функция, причем F(a. h: г: : ) = ; ("),» = Г<г(а)^

Таким образом,

х

к=О

Аналогично, представив У (А) в виде У (А) = У(0) + У (А), где

У

(1 - г) 2 dt; У(0) = (1 - Г) 2 dt

-?г+1

о

1

= llLltll, vfn _ n + 1 A2fc+1 T

{) 2ln ' K ’ 2 ^{2k + l)k\ Г(^) '

В итоге, для случая с— < <]. .г > А г имеем

<a,x>+p 2 n±i

a{x; г;рг; /) =--———7„(1 - А ) ^ q-

r

~ 'У'П ~

^ynX(X) < a, q > q----^-уУ(А)(а — q < a, q >) + а0,

где а0 = (а + а)/2. Используя представление для Л’ (А) и V (А) в виде ряда по Л и учитывая, что | А |< 1, а(х; г;рг; /) можно вычислить с любой заданной точностью, не прибегая к численному интегрированию.

Следует отметить, что А показывает на каком расстоянии от ребра функции по отношению к г находится точка х. Так, если А = ±1, то шар Вг касается ребра, А при А = 0 точка х лежит на самом ребре,

В случае А = 0 легко показать, что

а

д

----1—ПА---q +

г

OL Т OL 2

Следовательно, если < а,х > +/3 ф 0 (то есть функция / в точке х терпит разрыв), то при г —>• +0 аппроксимационный градиент становится ортогональным к ребру функции и его длина неограниченно растет. Если функция / непрерывна, то а(х] Г]рг; /) =

3. Вычисление аппроксимационного градиента для кусочно-линейных функций на основе декомпозиции

Полученные формулы для вычисления аппроксимационного градиента мож-

m

но использовать для кусочно-линейных функций f(x) = ^2 fi(x), где fi(x) -

i=1

кусочно-линейные функции с одним ребром, К таким функциям, в частности, относятся суммы модулей линейных функций,

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

Определение 1. Будем говорить,что ребро {х е Rn :< о, х >= Ъ} активно в точке х е Rn если < а,х > —Ь = 0,

Обозначим множество J(x) - множество номеров активных в точке х ребер функции.

Определение 2. Пусть /: Rn —$ R непрерывная кусочно-линейная функция с ребрами {< а\ х > —6*}, г = 1,п. Пусть х G Rn, a G Rn и z+ G i? такие,что в окрестности точки х справедливо равенство

Тогда будем называть декомпозицией функции / в точке х. Если данное

представление имеет место, то будем говорить, что функция / разложима в окрестности точки х.

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

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

4. Вычисление аппроксимационного градиента для кусоч-

где /. g G С2, q G Rn, || q ||= 1,с G й. Функцию F будем называть кусочногладкой функцией с одним ребром.

Пусть точка х - это точка, в которой производится вычисление аппроксимационного градиента функции F, х° - проекция точки х на ребро функции < q. х > —с = 0. Легко показать, что х° = х + Sq, где 6 = с— < q, х >.

Пусть х G Вг(х°) и г достаточно мало, тогда

f(x) = f(x)+ < Qx, х — х > + z+ min{0; < аг, x — x >},

i&J

но-гладкой функции с одним ребром

Рассмотрим функцию F : Rn -У R следующего вида

< q, х > < 0

< q, х > ^ 0,

f(x) = f(x°)+ < f’(x°), (х - х°) > +1/2 < /"(ДХт - х°), (х - х°) >,

д(х) = д(х°)+ < д'{х°), (х - х°) > +1/2 < д"{&){х - х°), (х - х°) >,

где f'(x),g'(x) - градиенты функций /, д соответственно, a f"{x),g"{x) - матрицы вторых производных этих функции, СьСг G Вг(х°).

Обозначим

?/ л ( f(x0)+<f’(x0),(x-x°)>, < q,x > -с < 0;

^ ~~ { д(х°)+ < д’(х°), (х - х°) >, < q,x > -с^ 0.

Заметим, что в случае, когда | S |> г, вычисление аппроксимационного градиента производится в точке х, находящейся вне области Вг, содержащей ребро функции. При S > г функция F(x) совпадает с функцией f(x), а при 5 < - с

функцией д(х), где f(x),g(x) - гладкие функции. Так как lim о(т°; г;рг; /) =

г—S-+0

f(x°), то замена a(x;r,pr; F) на градиент соответствующей функции не приведет к существенным погрешностям. Рассмотрим случай | S |+ г.

Функция /•’(./•) - кусочно-линейная с одним ребром, следовательно, для нее справедливы формулы вычисления аппроксимационного градиента, описанные в параграфе 2, При вычислении аппроксимационного градиента заменим кусочногладкую функцию F(x) на кусочно-линейную функцию F(x).

Оценим | ак(х; r,py F) — ak(xw, r,py F) |, Пусть существуют константы М\, М2 такие, что ||/"(£)|| + Мг и ||д"(£)|| + М2 для любого £ Е Вг(х°). Сделаем замену переменных х' = Gx, где G - матрица ортогонального преобразования, описанного в параграфе 2, Тогда

ак(х; г,рг\F) - ак(х; r,py F) | +

D

< —

D

+ ~

’S^J9iks'i < f'{GTr,i)GT{х' + s' — х'°), GT(x' + s' — x10) > els'

-г Щ+д

i=1

+

£ SaA < g"{GTb)GT{x' + J- x'°), GT{x' + J- x'°) > els'

S Щ+д

i=1

Учитывая, что при ортогональном преобразовании длина вектора сохраня-

|< f"(GTti)GT(x' + s' - Ф°), GT(x’ + s’^ х’°) >К + Mi\\GT(x' + s' - x'°)\f = Мх\\х + s - 2!°||2 + 2/-2Л/1.

Аналогично,

|< /(GTe2)GV + s' - Ф°), GT(xJ + s’^ х/°) >К 2r2M2.

В итоге имеем

ak

ak

^ DMi'r2 / / | X 9ikSi I ds> + DMif2 / / I X I ^ ^

-r BO^)

i=l

<5 B°

i=l

i=l

DMir3 £ Iftfel / / ^ “b DM2T ^ ^ Ifitol

-Г ВДУД

i=l

ds\

<5 B°

так как |s'| ^ r. Заметим, что

ds[.

J J -Т B°

г;

г

/ / ds[.

S £0

г, г — 6 /А to

ds[ ...ds'n«С / rn_1yn_i(l) сЦ ^ 2rnK-i(l),

сЦ ...ds'n^ J rn_1Vn_i(l) ds; ^ 2rnK-i(l),

s

Таким образом, при |d| ^ г получаем

ak

2/1.1/,,;i X + 2/1Л/.,,-;i X l№fck”Vr„_1

i=l

i=l

, r(f+ l)(n + 2)^, , , ,

= 2r Mj + M2 l2r.„+ ;X Ы ^ 2rnTn Mx + M2 .

Отсюда, в частности, следует, что

ak(x; г,pr; F) — о^(я:; г, pr; F) |—У 0, г —У О, VF = 1, п.

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

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

Литература

1. Батухтин В.Д., Майборода Л.А. Оптимизация разрывных функций. М.: Наука. Гл.ред.физ.-мат.лит., 1984.

2. Батухтин В.Д., Майборода Л.А. Разрывные экстремальные задачи. C.-П.: Гиппократ, 1995.

3. Батухтин В.Д., Бигильдеев С.И., Бигильдеева Т.Б. Численные методы решения разрывных экстремальных задач, // Изв.РАН. Теория и системы управления. 1997. N 3. С.113-120.

4. Batukhtin V.D., Bigil’deev S.I., Bigil’deeva Т.Б. Approximate Gradient Methods and the Necessary Conditions for the Extremum, of Discontinuous Functions // Nonsmooth and Discontinuous Problems of Control and Optimization (NDPCO’98). Proceeding volume from the IF AC Workshop. Chelyabinsk. June 1998. P.25-34.

5. Мысовских И.П. Интерполяционные кубаm,урны,е формулы. М.: Наука, 1981.

6. Бейтмен Г., Эрдейи А. Высшие трансцендентные функции. Гипергеометрическая функция. Функция Лежандра. М.: Наука, 1973.

7. Klein Е.М. and Sim S.H. Discharge allocation for hidro-electric generation stations // European Journal of Operational Research. 1994. V.73. P.132-138.

8. Hiraki S. A simplex procedure for a fixed charge problem // Journal of Operations Research Society of Japan. 1980. V.23. P.243-266.

9. Меренкова H.H. Ма,т,ем,а,т,и,ч,ески,е модели для оптимизации трассировки и структуры, трубопроводных систем, / Вопросы прикладной математики. Иркутск: СЭИ СО АН СССР, 1977. С.145-158.

10. Заботин Я.И., Кораблев А.И., Хабибуллин Р.Ф. О минимизации квазивыпуклых функционалов // Изв. вузов. Математика. 1972. N 10. С.27-33.

11. Андрамонов М.Ю., Заботин Я.И. О сведении, задачи, квазивыпуклого программирования к задаче безусловной минимизации методом конечного проектирования II Изв. вузов. Математика. 1992. N 1. С.3-7.

12. Conn A.R., Mongeau М. Discontinuous piecewise linear optimization // Mathematical Programming. 1998. V.80. P.315-380.