Научная статья на тему 'Об одном алгоритме поиска максимума в классе функций, определяемом кусочно-линейной мажорантой'

Об одном алгоритме поиска максимума в классе функций, определяемом кусочно-линейной мажорантой Текст научной статьи по специальности «Математика»

CC BY
134
19
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
АЛГОРИТМ ПОИСКА МАКСИМУМА / КУСОЧНО-ЛИНЕЙНАЯ МАЖОРАНТА / MAXIMUM SEARCH ALGORITHM / PIECEWISE LINEAR MAJORANT

Аннотация научной статьи по математике, автор научной работы — Коротченко А. Г., Сморякова В. М.

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

ON A MAXIMUM SEARCH ALGORITHM IN CLASSES OF FUNCTIONS DEFINED BY A PIECEWISE LINEAR MAJORANT

A search algorithm is built for a maximum of functions in classes defined by a piecewise linear majorant. The estimations are determined which relate the algorithm to an optimal one-step algorithm. The computing experiment results are presented on the use of the algorithm.

Текст научной работы на тему «Об одном алгоритме поиска максимума в классе функций, определяемом кусочно-линейной мажорантой»

Математическое моделирование. Оптимальное управление Вестник Нижегородского университета им. Н.И. Лобачевского,2014, № 4 (1), с. 409-415

УДК 519.615.7

ОБ ОДНОМ АЛГОРИТМЕ ПОИСКА МАКСИМУМА В КЛАССЕ ФУНКЦИЙ, ОПРЕДЕЛЯЕМОМ КУСОЧНО-ЛИНЕЙНОЙ МАЖОРАНТОЙ

© 2014 г. А.Г. Коротченко, В.М. Сморякова

Нижегородский госуниверситет им. Н.И. Лобачевского

[email protected]

По2тупило к редокцию 02.04.2014

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

Ключекые 2локо: алгоритм поиска максимума, кусочно-линейная мажоранта.

Введение

Эффективность ряда методов поиска экстремума функций многих переменных зависит от быстрого решения вспомогательных одномерных задач. Поэтому представляется естественным использовать для их решения оптимальные алгоритмы. В то же время указанные алгоритмы, как правило, являются достаточно сложными, и их использование на практике затруднено в связи с решением возникающих вспомогательных задач, см., например, [1—3]. В связи с этим возникает задача построения алгоритмов, достаточно простых в реализации и сохраняющих ряд свойств оптимальных алгоритмов.

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

Построение алгоритма

Введём в рассмотрение следующие классы многоэкстремальных функций.

Будем говорить, что непрерывная функция / (х), определённая на отрезке [а,, Ъ, ], принадлежит классу функций F1(a¡,Ъ1,К[,К2), если выполняются следующие соотношения: / (Х2) - К < / (х,) - К

/ (Х2) - К2 > _/, (Х1) - к2

Ъ - х2

Ъ - х.

(1)

где х2 > х1, х1,х2 е (а,, Ъ), К',К'2 еЯ , К\ > К'2, ,= 1,...,ц. Непрерывную функцию /(х), определённую на отрезке [а,, Ъ1 ], будем относить к классу функций Г2 (а,, Ъ1, К[, К'2), если выполняются соотношения (1) при К\ > К\, 1 = ц +1,...,т. Случай, когда для класса, определяемого соотношениями (1), константы К'2 и К[, 1 < 1 < т, совпадают, рассмотрен в [1].

Будем считать, что если функция / (х) е ^(а,, Ъ, К[, К 2), 1 = 1,..., ц, то до начала поиска её максимума она вычислена в точке а 1, а если / (х) е Г2(а,,Ъ,К[,К2), 1 = ц +1,...,т , то она вычислена в точке Ъ .

Нетрудно видеть, что если функция / (х) е еГ2(а,.,Ъ,К[,К2), то функция / (а, + Ъ -х)е е ^¡(а,, Ъ, К[, К 2). Учитывая сделанное замечание, в дальнейшем будем рассматривать класс функций ^(а,, Ъ, К[, К2) и обозначать его через Г (а, Ъ, К1, К2), где а = а1, Ъ = Ъ,., К1 = К[, К2 = К2, /(х) = / (х) для каждого , = 1,..., ц, К > К2.

Отметим, что если / (х) е Г (а, Ъ, К1, К2), то /(х) > /о (х), где /о (х) = (К - К2 )(Ъ - а)-1 х х(а - х) + К1, см. также [4].

Перейдём к описанию алгоритма отыскания наибольшего значения функции / (х) е Г (а, Ъ,

К1 , К2 ) , который состоит в вычислении её зна-

х2 - а

х1 - а

чений в определённых точках интервала (a,b). Пусть функция f (x) вычислена в точке x0 = a и в N точках интервала (a, b), таких, что

a < Xj < x2 <... < xN < b, при этом y0 = f (x0) и yk = f(xk), k = 1,...,N. Определим значение h = kmax yk. В силу того, что f (x) > f0 (x) для

f (x) e F(a,b,K1,K2), выполняется неравенство

h > K1.

Обозначим через F(a, b, K1, K2, N) подкласс класса F(a, b, K1, K2) всех таких функций, которые в точках xk принимают значение yk, k = 1,...,N . Так же, как в [4], построим точную верхнюю мажоранту фN(x), x e [a,b], всех функций из класса F(a,b,Kj, K2,N). Функция ф N (x) является кусочно-линейной, и пусть ~ = arg max ф N (x). Тогда если h = фN (x), то

xe[a,b]

точка ~ = arg max f (x) и алгоритм заканчивает

xe[a,b]

свою работу. Если же h (~), то точность определения наибольшего значения функции f (x) можно определить как следующую разность: Q = ф N (x) - h.

Введём в рассмотрение отрезки [uj,vj ], такие, что фN (x) > h при x e (uj,vj) и Ф N (Uj ) = ФN (Vj ) = h , j = 1,..., q(N), где q(N) = =| Dn | и Dn - множество всех таких отрезков.

Тогда погрешность алгоритма после вычисления функции в N точках запишется следующим образом:

Q = max Q ,

j=1,...,q(N) j (h - K1)(h - K2 )(Vj - Uj )

^ (h - Kx)(b - Vj) + (h - K2)(Uj - a) K) при условии, что h > K1. Если же h = K1, то в силу задания класса F(a, b,K1, K2) имеем, что u1 = a, q(N) = 1 и

жащии самую левую из точек, доставляющих максимальное значение функции ф ы (х). Пусть

Q = Q1 =

(K - K2)(V1 - a)

b - v1

u = u , v = v, тогда

Q =

(h - K1)(h - K 2)(v - u) (h - K1)(b - v) + (h - K2 )(u - a),

Q = (K1 - K2)(V - a) , h = K1.

b - v

h > K,

(4)

Выбор следующей точки для вычисления функции f (x) будем производить из условия уменьшения погрешности, или критерия Q. Пусть x е (a, b) - планируемая точка вычисления функции f (x) на очередном шаге алгоритма, а y - её возможное значение в этой точке. Построим новую точную верхнюю мажоранту класса F(a,b,K1,K2,N +1) при условии, что функция f (x) вычислена в (N +1) -й точке. После этого можно так же, как и выше, найти значение критерия Q, оценивающего погрешность отыскания наибольшего значения функции на (N +1) -м шаге алгоритма. Тогда оптимальный одношаговый алгоритм поиска наибольшего значения функции f (x) определяется из условия

Q* = inf sup QQ .

(5)

(3)

Здесь QJ есть разность между максимальным значением функции ф м (х) на отрезке [uj, vj ] и значением Ъ, 7 = 1,...,q(N).

Обозначим через [и^, ] отрезок, принадлежащий множеству DN и содержащий точку х . Если точка ~ не единственна, то в качестве отрезка [и^, ] будем выбирать отрезок, со дер-

Величина х = х , при которой достигается минимакс (5), будет оптимальной точкой для вычисления функции в одношаговом алгоритме. Так как в результате вычислений погрешность определения наибольшего значения функции /(х) может лишь убывать, то поиск имеет смысл вести только на интервале (и, V), поскольку вне его нельзя гарантировать неравенство Q'< Q в силу задания класса F(а, Ъ,

Ки К 2).

Отметим здесь, что если функция /(х) из класса F (а, Ъ, К1, К2) при К1 = К2 не вычислена ни в одной точке, то её вычисление согласно условию (5) нужно проводить в середине отрезка [а,Ъ], поскольку реализация внешнего экстремума в (5) не зависит от принимаемого в точке х неизвестного значения функции у. В

случае же, когда К1 > К2, выбор точки х согласно (5) зависит от принимаемого в этой точке неизвестного значения функции. При этом до начала вычислений естественно, что область возможных значений у неизвестна, а поскольку для дальнейшего поиска точка вычисления функции на интервале (а, Ъ) должна быть задана, то в этом случае будем считать, что она

x

У

может быть любой из интервала (а, Ъ), в частности, для определённости будем проводить первое вычисление функции в середине отрезка [а,Ъ] . Отметим, что при любом выборе первой точки вычисления функции в интервале (а, Ъ) будет выполнено неравенство

и - V < Ъ - а. (6)

Из определения класса F (а, Ъ, К1, К2) следует, что интервалы изменения х и у при вычислении минимакса (5) задаются следующим образом:

тах(7, (х), Г4 (х)) < у < шш^ (х), 72 (х)), и < х < V,

где

h - Kj

7,( x) =

72( x) Ч

u -a

h- K 2

b - v

' h - K 2

b -v

h - K1

(x - a) + Kj, u ф a, (b - a) + K2, u = a, (b - x) + K2, v ф b,

u - a

1-(b - a) + K1, v = b.

где

u<x<v l, j

l = 1,2,3,4, j = 1,...,q(N), j ф s, Pl (x) = sup Rl (x, y), l = 1,2,

если h < y < min(71 (x), 72 (x)), u < x < v, и Pl (x) = sup R (x, y), l = 3,4,

R,( x, y) = (y - K - a) - y + K 2, b - x

(15)

Лз(х, у) = ^(х, у) + у - К1, (16)

функция Л2( х, у) задаётся общей формулой (13), а функция R4 (х, у) в этом случае отсутствует. Введём следующую замену переменных:

x-a v- a t =-, с =

b-a

, u - a d =-, z =

b-a

b-a y - K 2 h - K2 '

(17)

После проведённой замены соотношения (4) и (6) перепишутся в виде

(h - K 2)(с - d )(1 - L)

Q = ■

(1 - с)(1 - L) + d с - d < 1,

(7)

(8)

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

(18) (19)

где L =

K1 - K 2 h - K 2

, 0 < L < 1. Соотношения (7)-

Здесь 73(х) и 74(х) - линейные функции, удовлетворяющие условию К2 < 73 (х) < Ъ , К2 < 74 (х) < Ъ , вид которых определяется классом F (а, Ъ, К1, К2).

Тогда из (5) получаем:

Q* = тГ шах(^ (х), QJ),

(14) после замены (17) примут вид:

Q* = (h - K2) jnfm^(t),), (20)

l = 1,2,3,4, j = 1,...,q(N), j ф s,

Q - -

Qj=7j, P, (t) = sup Rl (t, z), l = 1,2, (21)

h - K2 z

если 1 < z < min(Z1 (t), Z2(t)), d < t < с, и P(t) = sup R, (t, z), l = 3,4,

z

если max(Z3(t), Z4(t)) < z < 1, d < t < с , где

(9)

(10)

(11) Здесь

77 , . (1 - L + Ld)z R1(t, z) ^^-— z .

R2(t, z) =

(1 - L)(1 -1) + dz z - L(1 -1)

- z,

(z - L)(1 - с) +1 R3(t, z) = R1(t, z) + z -1, R4(t, z) = R2 (t, z) + z -1.

(22)

(23)

(24)

(25)

если шах(73 (х), 74 (х)) < у < Ъ, и < х < V. Здесь функции Rl (х, у), I = 1,2,3,4, при Ъ > К1 имеют вид

х,у) = (у - К2)((Ъ - К,)(Ъ - а) + + К - К2)(и - а))((Ъ - К!)(Ъ - х) + (12)

+ (у - К2 )(и - а))-1 - (у - К2), R2(х, у) = (у - К,)((Ъ - К2 )(Ъ - а) + + (К2 - К, )(Ъ - v))((у - К, )(Ъ - V) + (13) + (Ъ - К2)(х - а))- (у - КД Rз(х, у) = Rl(х,у) + у - Ъ, R4(x, у) = R2(x, у) + у - Ъ . (14)

Если же Ъ = К1, то

Z1(t) =

(1 - L)t

d

+ L, d ф 0,

1

1 - с 1-t

Z 2 (t) =

1-с 1-L

d

d = 0, , с ф 1, + L, с = 1,

функции Х3(Х) и X) получаются из функций 73( х), 74( х) с помощью замены (17). При этом для случая Ъ = К1 функции R1 (?, z) и R3 ^, 2) задаются соотношениями (23), (25) при Ь = 0 и ё = 0, а функция R4 (?, 2) отсутствует.

y

y

Функции Я1(t, г) и Я2(t, z) непрерывны по z на отрезке [1,min(Z1(t), 2))], а функции Я3(t, г) и Я4(^ г) непрерывны по г на отрезке [тах(23^), 2А(1)),1] при фиксированном значении t е [й, с] и 0 < Ь < 1. Функции Я3 ^, г) и Я4(^ г) монотонно возрастают с ростом г на отрезке [тах(23^), 24(:)),1] при каждом значении t е [й, с]. Максимумы этих функций достигаются на границе отрезка [тах(23(^, 2 )),1] и

равны

P3(t) = ^,1) =

P,(t) = RA(t,1) =

1 - ¿(1 -1) (1 - L)(1 - с) +1

(1 - L) + dL (1 - L)(1 -1) + d

--1,

--1.

zt(t) =

7(1 - L + Ld)(1 - L)(1 -1) - (1 - L)(1 -1)

d

Пусть tl > с и z1(t) < 1 при t е [й, с]. Тогда функция Я1 (t, г) при фиксированном t е [й, с] строго монотонно возрастает по г и принимает своё максимальное значение при г = 1. Следовательно,

P"(t) = R1(t,1) = (1 L) + Ld— 1.

1 1 (1 - L)(1 -1) + d

(27)

Пусть теперь t1 > с и максимальное значение функции 21(Х) на отрезке [й, с] больше единицы. Введём в рассмотрение функцию ) = тах(1, (t)), тогда

Р^) = Я1(t, )). (28)

Если t1 < с, то

(26)

В силу того, что

P3(t) = R3(t,1) < max R2(t, z) = P2(t),

z

P4 (t) = R4 (t,1) < max R1 (t, z) = P"(t),

z

функции P3(t) и P4(t) в соотношении (20) можно опустить. Тогда соотношение (20) примет вид

Q* = (h -K2)infmax(P(t),P2(t),Q]),

t J

j = 1,...,q(N), j * s, d < t < с.

Для определения вида функций P (t) и P2 (t) исследуем функции Rj(t, z) и R2(t, z) на максимум по z при каждом фиксированном значении t е [d, с], где 1 < z < min(Zj (t), Z2 (t)).

Рассмотрим функцию Rl (t, z) при 0 < d < < с < 1, 0 < L < 1 и h > Kj. Она является строго вогнутой функцией по z при z > 0 для каждого t е [d,с], и её максимальное значение в области

z > 0 достигается при z = z1 (t), где

Pit) J^, ^)), d < t < t1,

1 [R1(t, z 2(t)), t1 < t < с.

(29)

Рассмотрим случай, когда й = 0 . Тогда в силу (19) получаем, что с < 1, множество Б(})

примет вид ) = [1,22 )], а функция Я1 (^ г) = t

1 -1

z . Функция R1 (t, z) при фиксированном

t е [0, с] строго монотонно возрастает по г и принимает своё максимальное значение при г = 22 (() . Следовательно,

P(t) = Rx(t, Z 2(t)) =

t

1 - с

(30)

В случае, когда Ъ = К1, параметр й может принимать только нулевое значение в силу задания класса Г (а, Ъ, К1, К2), и в этом случае

функция Р^) задаётся формулой (30).

Рассмотрим теперь функцию Я2(^ г) при 0 < й < с < 1, 0 < Ь < 1 и Ъ > К1. Данная функция является строго вогнутой функцией по г при г > 0 для каждого t е [й,с], и её максимальное значение в области г > 0 достигается при г = ), где

Непосредственно проверяется, что функция (^ является строго вогнутой на отрезке t е [0,1]. Пусть О(0 = [1, тт^ ^), 22 (0)]. Найдём максимум функции Я1 (^ г) по г, где г е ), при каждом фиксированном значении t е [й,с]. Заметим, что ^) < 2^), t е [й,с], и рассмотрим уравнение ^) = 22 ^). Данное уравнение имеет два корня: один из них равен единице, а второй корень tl строго меньше единицы.

z2(t) =

= у!t - Lt(1 - с) -1

1-с

+ L .

Нетрудно проверить, что функция ) является строго вогнутой на отрезке t е [0,1].

Найдём максимум функции Я2 (^ г) по г, где г е ), при каждом фиксированном значении t е [й, с]. При этом г2 ^) < 22 ^), t е [й,с], а уравнение ) = 2Х(1) имеет два корня: один из них равен нулю, а второй корень t2 строго больше нуля.

Пусть t2 < ё и 22(?) < 1 при t е [ё, с]. Тогда функция R2 (t, 2) при фиксированном t е [ё, с] строго монотонно возрастает по 2 и принимает своё максимальное значение при 2 = 1. Следовательно,

P2(t) = R2(t ,1) =

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

1 - L(1 -1) (1 - L)(1 - с) +1

--1.

(31)

Пусть теперь t2 < ё и максимальное значение функции ) на отрезке [ё,с] больше единицы. Введём в рассмотрение функцию 12 ^) = шах(1,22 (t)), тогда

Рг(}) = R2(t, ^)). (32)

Если t2 > ё, то

_ ,Zl(t)), ё < t < t,,

Р2(0 = <|_2 (33)

^, ^)), t2 < t < с.

При с = 1, в силу (19), получаем, что ё > 0,

D(t) = [1,2Х ^)], а функция

R2(t, z) =

(1 - t)(z - L)

t

P2(t, z) = R2(t, ^(t)) =

(1 -1 )(1 - L)

d

точка, что 20 = 21 (t0) = 22(^). Тогда по свойству 1 функция Р (X), задаваемая соотношением

(28), является выпуклой на отрезке [ё,с]. Рассмотрим теперь случай, когда Р1 (I) задаётся формулой (29). Выпуклость этой функции на отрезке [ё, tl ] устанавливается так же, как и в предыдущем случае. Учитывая соотношение

(29) и выражение для 2 2 (X), получаем, что

P(t) =

t

1 - с

t e[t„ с].

(35)

при фиксированном t е [ё,1] строго монотонно возрастает по 2 , принимая своё максимальное значение при 2 = 21 ^). Следовательно,

(34)

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

Свойство 1. Если функция R(t, z) при каждом фиксированном значении z е [1, z0 ] является выпуклой функцией по t е [d, с], то функция P(t) = max R(t, z) выпукла на отрезке [d, с], см.

ze[1,z0]

[5]. _ _

Теорема. Функции P1 (t), P2 (t) являются выпуклыми функциями на отрезке [d, с], причём P(t) строго монотонно возрастает, а P2(t) строго монотонно убывает при t е [d, с], где

0 < d < с < 1 и 0 < L < 1.

Доказательство. Будем доказывать теорему для функции P (t). Указанные в формулировке теоремы свойства функции P2 (t) устанавливаются аналогично.

Если функция P(t) задаётся формулой (27) или (30), то выпуклость этой функции непосредственно следует из её вида.

Рассмотрим случай, когда P1(t) задаётся формулой (28). В этом случае t1 > с и

1 < z1 (t) < min(Z1 (t), Z2 (t)) < z0 при каждом фиксированном значении t е [d, с], где z0 - такая

Функция P1(t), задаваемая соотношением (35), является линейной. Пусть G(t) = P1(t), t е [d, t1]. В силу того, что P1(t) = max R1(t, z) при 1 <

z

< z < min(Z1 (t), Z2(t)), имеем, что G(t) < P1(t) при t е [d, t1]. С учётом сказанного выпуклость функции P1(t) на отрезке [d, с] проверяется непосредственно.

Таким образом, выпуклость функции P(t) на отрезке [d, с] доказана.

Учитывая (23), нетрудно видеть, что функция R1(t, z) при каждом фиксированном значении z > 1 строго монотонно возрастает по t е [d, с]. Тогда, в силу задания функции P1 (t), эта функция является строго монотонно возрастающей на отрезке [d, с].

Из доказанной теоремы вытекает справедливость следствий.

Следствие 1. Оптимальный одношаговый алгоритм поиска наибольшего значения функции из класса F (a, b, K1, K2) существует.

Следствие 2. Для любых представлений функций P1 (t) и P2 (t), задаваемых соотношениями (27)-(30) и (31)-(34), имеют место следующие оценки:

P(t) < ^(t) =

P2{t) < G2(t) =

(1 - L)(t - d)

(1 - L)(1 - с) + d' (1 - L)(c - d)

(36)

(1 - L)(1 - c) + d t e [d,c], 0 < L < 1. Учитывая следствия 1 и 2, получаем, что Q* <Q' = minmax^t),G2(t),Q;],

d<t<c ; n

; = 1,...,q(N), * , (37)

где минимум по t достигается при d + c

t =-

2

(38)

Таблица

Набор функций Число т функций Общее число итераций алгоритма

в наборе а1 а 2 а 4

1 2 80 60 45

2 4 220 198 119

3 8 357 311 155

4 10 515 391 269

Обозначим через а1 алгоритм отыскания наибольшего значения функции из класса Г (а, Ь, К1, К2), в котором очередная точка вычисления функции задаётся с учётом (17) и (38) в середине отрезка [и, V].

Подставляя (38) в (37), получаем:

0* < 0" = (И - К2)тах

0" :

(с - ё)(1 -1) 2((1 - ¿)(1 - с) + ё)

] = 1,...,д(Ю, ] * 5. (39)

Сравнивая выражения (39) и (2), (18), заметим, что они различаются только коэффициентом 12 при наибольшем из выражений в (2). Учитывая этот факт, так же, как и в [1], можно показать, что алгоритм а1 сходится не медленнее последовательности с общим членом вида

у, = 2и +1)-1, ] = 1,2,....

Вычислительный эксперимент

Пусть / (х) е ^(а,., Ь, К., К>), , = 1,..., ц, / (х) е Г2(а,,Ь1,К[,К2), , = ц +1,...,т , и отрезки задания функций /.(х), , = 1,...,т , не пересекаются. Определим функцию /(х) следующим образом:

Л(х), ах < х< Ь;, / (х) = <...

/ (х), а < х < Ь .

X т V т т

Вычислительный эксперимент заключался в нахождении наибольшего значения функции /(х) как с помощью алгоритма а1, так и с помощью его модификаций, которые состояли в том, что на каждом шаге алгоритма функцию можно было вычислять в нескольких точках. При этом для выбора указанных точек использовались первые г из упорядоченных по убыванию оценок вида (2), (3), построенных с учётом всех функций I(х), , = 1,...,т , где г = тт("л, ~(N)). Здесь ^ - максимальное число точек, в которых можно проводить вычисления функции /(х) на очередной итерации алгоритма ал, а имеет тот же смысл, что и

д(Щ, см. (2), но применительно ко всем функциям I(х), , = 1,...,т .

При проведении вычислительного эксперимента использовались следующие наборы тестовых функций. Первый набор функций содержал две функции: кусочно-линейную и кусочно-квадратичную. Число локальных экстремумов каждой функции на своём отрезке задания равнялось десяти. При этом кусочно-линейная функция принадлежала классу Г1(а1, Ь1, К1, К^), а кусочно-квадратичная -классу Г2(а2,Ь2, К12,К2). Остальные наборы функций определялись условиями: во втором наборе т = 4, ц = 3 , в третьем - т = 8, ц = 4, в четвёртом - т = 10, ц = 5. При этом каждый набор состоял из кусочно-линейных, кусочно-квадратичных и тригонометрических функций. Число локальных экстремумов каждой функции на своём отрезке задания равнялось десяти.

В таблице приведены результаты вычислительного эксперимента для алгоритмов а1 , а2 , а 4, при этом каждый алгоритм завершал свою работу, если 0 < 0.001, где 0 - значение критерия, оценивающего погрешность в определении наибольшего значения функции.

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

Список литературы

1. Коротченко А.Г. Об одном алгоритме поиска наибольшего значения одномерных функций // Журн. вычисл. матем. и матем. физ. 1978. Т. 18. № 3. С. 563-573.

2. Коротченко А.Г. Приближенно-оптимальный алгоритм поиска экстремума для одного класса функций //Журн. вычисл. матем. и матем. физ. 1996. Т. 36. № 5. С. 30-39.

3. Коротченко А.Г., Бобков А.Н. Об одном алгоритме поиска экстремума в классах функций, определяемых кусочно-степенными мажорантами // Вестник Нижегородского университета им. Н.И. Лобачевского. 2004. Вып. 1(27). С. 194-202.

4. Коротченко А.Г., Сморякова В.М. Об оценке погрешности алгоритмов поиска экстремума в классах функций, определяемых кусочно-линей-

верситета им. Н.И. Лобачевского. 2013. № 3(1). С. 188-194.

5. Сухарев А.Г., Тимохов А.В., Федоров В.В. Курс

ON A MAXIMUM SEARCH ALGORITHM IN CLASSES OF FUNCTIONS DEFINED BY A PIECEWISE LINEAR MAJORANT

A.G. Korotchenko, V.M. Smoryakova

A search algorithm is built for a maximum of functions in classes defined by a piecewise linear majorant. The estimations are determined which relate the algorithm to an optimal one-step algorithm. The computing experiment results are presented on the use of the algorithm.

Keywords: maximum search algorithm, piecewise linear majorant.

ной мажорантой //Вестник Нижегородского уни-References

1. Korotchenko A.G. Ob odnom algoritme poiska nai-bol'shego znacheniya odnomernyh funkcij // Zhurn. vychisl. matem. i matem. fiz. 1978. T. 18. № 3. S. 563-573.

2. Korotchenko A.G. Priblizhenno-optimal'nyj algoritm poiska ehkstremuma dlya odnogo klassa funkcij //Zhurn. vychisl. matem. i matem. fiz. 1996. T. 36. № 5. S. 30-39.

3. Korotchenko A.G., Bobkov A.N. Ob odnom algoritme poiska ehkstremuma v klassah funkcij, opredelyaemyh

методов оптимизации. М.: ФИЗМАТЛИТ, 2005. 368 с. kusochno-stepennymi mazhorantami // Vestnik Nizhego-rodskogo universiteta im. N.I. Lobachevskogo. 2004. Vyp. 1(27). S. 194-202.

4. Korotchenko A.G., Smoryakova V.M. Ob ocenke pogreshnosti algoritmov poiska ehkstremuma v klassah funkcij, opredelyaemyh kusochno-linejnoj mazhorantoj //Vestnik Nizhegorodskogo universiteta im. N.I. Loba-chevskogo. 2013. № 3(1). S. 188-194.

5. Suharev A.G., Timohov A.V., Fedorov V.V. Kurs metodov optimizacii. M.: FIZMATLIT, 2005. 368 s.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.