3. Ромм Я.Е. Параллельная сортировка слиянием по матрицам сравнений. II // Кибернетика и системный анализ. - 1995. - № 4. - С. 13 - 37.
4. Ромм Я.Е. Локализация и устойчивое вычисление нулей многочлена на основе сортировки. I // Кибернетика и системный анализ. - 2007. - № 1. - С. 165 - 182.
5. . .
сортировки. II // Кибернетика и системный анализ. - 2007. - № 1. - С. 161 - 174.
6. Ромм ПЛ., Ромм Я.Е. Целочисленная идентификация плоских контурных изображений на основе экстремальных признаков // Известия вузов. Технические науки», раздел «Управление, вычислительная техника и информатика». -2008. - №4. - С. 18 - 24.
7. . ., . .
// . -
Кавказский регион. Технические науки. Прил. к № 1. - 2006. - С. 37 - 47.
8. . ., . .
изображений с учетом поворота, масштаба и искажений на основе экстремальных признаков / ТГПИ. - Таганрог, 2008. - 58 с. ДЕП в ВИНИТИ 28.01.2008, № 54 - 2008.
9. . .
триангуляции Делоне // Программирование. - 1999. - № 3. - С. 16 - 31.
10. . . . -СПб.: БХВ-Петербург, 2003. - 560 с.
11. . .
для поиска нулей и особенностей функций с приложением к идентификации .
. . . - : - , 2006. - 16 .
Ромм Леонард Яковлевич
Таганрогский государственный педагогический институт E-mail: romm@list.ru
347936, г. Таганрог, ул. Инициативная, д. 48. Тел.: 88634 60-18-99
Romm Leonard Yakovlevich
Taganrog State Pedagogical Institute E-mail: romm@list.ru
48, Initsiativnaia, Taganrog, 347936. Phone: 88634 60-18-99 УДК 519.6: 681.3
Л.Н. Аксайская
ПАРАЛЛЕЛЬНЫЕ АЛГОРИТМЫ КУСОЧНО-ПОЛИНОМИАЛЬНОЙ АППРОКСИМАЦИИ ФУНКЦИЙ, ПРОИЗВОДНЫХ И ИНТЕГРАЛОВ
Рассмотрены схемы таблично-тгоритмического вычисления функций на основе кусочно-полиномиальной аппроксимации с помощью интерполяционного полинома Ньютона. Описана модифицикация схем для вычисления производных и определенных интегралов с сохранением свойств инвариантности относи-
тельно вида функции, устойчивости, параллелизма и минимальности временной сложности в условиях произвольно заданной границы погрешности.
Схемы; модифицикация; погрешность
L.N. Aksayskaya
PIECEWISE POLYNOMIAL APPROXIMATION OF FUNCTIONS, DERIVATIVES AND INTEGRALS PARALLEL ALGORITHMS
Jabular-algorithmic computation of functions based on piecewise-polynomial approximation using the Newton interpolation polynomial schemes are considered. Schemes modification for the derivatives and definite integrals calculation with the properties invariant conservation relatively to the type of function, stability, parallelism and minimum time complexity under conditions of arbitrarily defined error boundary is deseribed.
Schemes; modification; deseribed.
Постановка задачи исследования. При реализации основных алгоритмов цифровой обработки сигналов (ЦОС) необходимо вычислять элементарные функции. Объем и точность их вычисления в значительной мере влияют на быстродействие и точность ЦОС. К методам их вычисления предъявляются требования одновременно высокого быстродействия, вычислительной устойчивости, высокой точности аппроксимации и универсальности схем вычислений. В работе конструируется и анализируется таблично-адгоритмическая схема вычисления функций на основе кусочно-полиномиальной аппроксимации функций с помощью интерполяционного полинома Ньютона, на этой основе аппроксимируются производные и интегралы.
Схема минимизации временной сложности таблично-адгоритмического вычисления функций на основе интерполяционного полинома Ньютона Рассматривается функция одной действительной переменной вида
кающихся подынтервалов равной длины, объединение которых совпадает с
При априори заданной границе £ абсолютной погрешности аппроксимации функции (1) и для каждого отдельно взятого подынтервала из (2) строится интерполяционный полином Ньютона степени п, где п выбирается минимальным для достижения заданной точности приближения одновременно на всех .
дистрибутивности с приведением подобных так, что в результате преобразования на /-м подынтервале принимает канонический вид полинома от одной пере:
В (3) индекс коэффициента / совпадает с номером подынтервала, индекс / соответствует аппроксимируемой функции. Построение (3) выполняется для
всех Р подынтервалов, чтобы на каждом из них не превышалась заданная граница погрешности
[a, b]:
[a,b]= uk.,xt+1), X+1 - X = (b - a )/P, i = P -1. (2)
i=0
|/(х)-Рпх^[х.,х.+1), ^ = 0,1,...,Р-1. (4)
В (3), (4) значение п выбирается минимальным при условии, что оно
. п , (1)
для каждого подынтервала из (2) набор коэффициентов в (3) можно записать в память машины и сделать хранимым. В дальнейшем, когда потребуется вычислить функцию данного вида, вначале дешифрируется значение номера 1 по дын-тервала, которое служит математическим адресом выборки коэффициентов (3), взаимно однозначно соответствующим данному номеру подынтервала. Если
х є [ хі, хі+1), то і = іП
где т! - целая часть числа, а - из (1),
Н = х!+1 - х.. Порядок времени этой дешифрации оценивается как единичный
t = О (1). Если для рассматриваемой функции вычислить и хранить коэффициенты для всех подынтервалов, то в дальнейшем время вычисления функции зави-
(3).
вычисляется с временной СЛОЖНОСТЬЮ t(1)= п (+ tc) , где tc, - время би-
нарного сложения и умножения соответственно. За счет уменьшения длины подынтервала степень п в (3) можно сделать «сколь угодно» малой (но целой) при
Р (2). . - -
тов, время вычисления функции оказывается минимальным. С целью осуществления описываемого построения вычисление коэффициентов начинается для значения п = 1 при минимальном значении Р. В случае невозможности достижения заданной точности (4) значение Р удваивается; это продолжается до нарушения допустимых границ значений Р; при их нарушении снова делается переход к минимальному значению Р, но уже при п = 2 и т.д.
В рамках интерполяции по Ньютону схема минимизации степени полинома детализируется следующим образом. Если границы ьго подынтервала из
0 - а10
(2) обозначить как а10, Ь10, шаг интерполяции - wi = —-------—, то равностоя-
п
щие узлы интерполяции на текущем шаге можно записать в виде Х1] = а10 + , ] = 0,1, ..., п-1. Полином Ньютона степени п на ьм подын-
(1)
( \ п Ду10 т-1
^ш(х) = /(х0) + Х-г-тП(х- х.к), где Д'у.0 - конечная разность у-го по-
т=1 у!^] к=0
рядка в точке х10, или, в обозначении t =---------------------,
w.
I
/ \ п ДУ т-1
^ (t ) = / (х, 0) + П (t - к). (5)
т=1 у! к=0
(5) , (3), -
п Д у. 0
фициентов а0/ = /(х.0), аИ/. = £ Ь'Ау , где Ьу =——, йу -
т=1 ]!
коэффициенты полиномов вида Рпу() = ё0 + Jt + ё2Jt2 +... + dnJtn с нату, . не зависят от вида аппроксимируемой функции, после вычисления их можно сделать хранимыми для всех использований интерполяции.
(2)
с п=1, Р=1. Проверка на заданную соотношением (4) точность аппроксимации (где Рп1 (х) = ¥п((t)) выполняется на каждом подынтервале в проверочных точках, взятых для независимой переменной t. Если во всех проверочных точках
(4) ,
всех подынтервалах при данном значении Р осуществима полиномом Рщ (х) = ^п1-(0 при выбранном п. Нарушение (4) в какой-либо точке при сохранении того же значения Р требует увеличить степень полинома на 1, после чего весь процесс построения ¥п и проверки его на точность аппроксимации заново повторяется на всех подынтервалах. В проверочных точках преобразованный полином Ньютона вычисляется по схеме Горнера
^п СО = (—( ап1/^: + а (п-1)/ ) t +а (п-2)./ ) t + ... + а0 / . (6)
Значение (6) сравнивается непосредственно со значением исходно заданной функции /(х). Результатом работы алгоритма окажется минимальное п для каждого Р = 1,2, 4, ....
Результаты программной реализации схемы даны в таблице. Во входном столбце таблицы £ обозначает априори задаваемую границу погрешности. Во входной строке к задает показатель степени Р = 2к для количества подынтер-
(2). , £ , , к, указывается минимальное значение степени п интерполяционного полинома , -мом данной степени с точностью до £ на каждом из Р подынтервалов. Пустующая клетка означает, что в используемой версии языка программирования граница погрешности £ оказалась недостижимой для данного числа подынтервалов ни при одном значении п.
1
Степени интерполяционного полинома Ньютона,
хє [1/2,1]
аппроксимирующего функцию у = ^ агєґ^ує
по таблично-мгоритмической схеме
/(1/х
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
10-4 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
10-5 4 3 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1
10-6 6 5 3 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1
10-7 8 6 4 3 3 2 2 1 1 1 1 1 1 1 1 1 1 1
10-8 10 7 5 4 3 2 2 2 2 1 1 1 1 1 1 1 1 1
10-9 11 8 6 5 4 3 3 2 2 2 2 1 1 1 1 1 1 1
10-10 9 7 6 4 4 3 3 2 2 2 2 1 1 1 1 1 1
10-11 11 8 6 5 4 3 3 3 2 2 2 2 2 1 1 1 1
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
10-12 12 9 7 5 5 4 4 3 3 2 2 2 2 2 2 1 1
10-13 9 8 6 5 4 4 4 3 3 2 2 2 2 2 2 1
10-14 11 8 7 6 5 4 4 3 3 3 3 2 2 2 2 2
10-15 12 9 7 6 5 5 4 4 3 3 3 2 2 2 2 2
10-16 12 10 8 7 6 5 4 4 3 3 3 3 3 2 2 2
10-1/ 10 9 7 6 6 5 4 4 3 3 3 3 2 2 2
10-18 8 7 6 5 5 4 4 3 3 3 3 3 2
Д'Ул, = У- - ІУіц-1) + Ую-2)-------------------~-У,-о--3) +•••+ (-1)- У0, при
Из таблицы видно, что аппроксимация функции у = ^аг^^в^^1*
интерполяционным полиномом Ньютона, например, второй степени обеспечивает точность порядка 10-18.
Формула (5) для каждого 3 = 1, 2, ..., п включает разложение полинома
(\ у-1
по целым корням Р р)= П(^- к), корни и, соответственно, коэффициенты
33 к=0
которого не зависят от вида интерполируемой функции и номера подынтервала. Коэффициенты данного полинома (с помощью матричного видоизменения формул Виета [2]) можно вычислить наперед для произвольно фиксированного 3, считать хранимыми в памяти компьютера и заданными без вычисления. Отсюда для параллельного перевода всего интерполяционного полинома Ньютона *п, Р ) в каноническую форму алгебраического полинома с заданными числовыми коэффициентами из (6) достаточно вычислить конечные разности Д3у.0 по
максимально параллельной форме и затем привести подобные на основе дистри-.
разностей через значения функции, описывающая следующим образом:
3(3 -1) у _ 3(3 -1)(3 - 2)
2! (3-2) 3!
этом все биномиальные коэффициенты С{ имеют априори известные значения. Достаточно параллельно умножить эти значения на узловые значения функции у (3 - 0, затем выполнить алгебраическое сложение по схеме сдваивания. Временная сложность этой операции составит ? (г) = 1у + |^2 3 | tc, где 1у, 1с -, , , процессоров г = 3 . Факториалы в знаменателях слагаемых выражения полинома ¥ш.() можно считать априори присоединеиными к биномиальным коэффициентам. Остается вычисленные значения коэффициентов параллельно умножить на хранимые коэффициенты полиномов р. () и привести подобные при .
составит Т {Я ) = 1у +|1оё 2п 11сш одном подынтервале, Я здесь и ниже -количество процессоров, в данном случае Я = п (п -1) / 2. При параллельном вычислении одновременно по всем Р подынтервалам
Т {Рп2 /2) = 1у + [1о§2 п\ . (7)
При расчете минимального п процесс сравнения можно выполнять параллельно по всем проверочным точкам и одновременно для всего множества рассматриваемых степеней п, что увеличит число процессоров пропорционально числу проверочных точек, умноженному на число подынтервалов и на количество проверяемых показателей п. Это сохранит максимальный параллелизм алгоритма минимизации временной сложности таблично-адгоритмической схемы вычисления функций. Формально максимально параллельная схема выполнения рассматриваемого алгоритма минимизации сохраняться для всего набора одновременно задаваемых границ £ погрешности аппроксимации функций.
,
обладает максимальным параллелизмом, временная сложность которого оцени-(7) . -
гается для полинома Лагранжа, где разложение по корням зависит от выбора , -ции полинома Ньютона. Данная оценка не достигается для полинома Тейлора, поскольку его коэффициенты должны быть аналитически определяемыми производными в различных точках, причем на практике при равной точности аппроксимации полином Ньютона обладает преимуществом универсальности (по-
(3)
).
Оптимизированная схема таблично-алгоритмического вычисления производных и определенных интегралов на основе интерполяции по Нью. , , определенных интегралов с сохранением свойств инвариантности относительно
, , -ности в условиях произвольно заданной границы погрешности [1].
При интерполяции по Ньютону /(х) ~ ¥ш. (г), где ¥п1.(г) из (6). Отсюда
х - х.„
/ (х) ~¥ш.(г)х . При г =---------— получится /'(х) ~ (¥ш.(г))\г\. Очевидно,
w.
I
(^п,(г))'г = аи/ + 2аъ/ + 3ам/г2 +... + п аш/г(п-1), где г'х = —. Значение ¥'п(г)
У w
I
вычисляется по схеме Горнера, на основании которой
/'(х) * ( Р Р/г + (п - 1) а (п-1)./ ) г + • • + 2 а (п-2)./ ) г + а1 ,/ )-^.
wi
Оценки погрешности аппроксимации производной функции по сравнению с аналитическим выражением характерны для приводимой ниже табл. 2 в случае различных функций на произвольных промежутках (смысл п и к тот же, что в . 1):
Таблица 2
Погрешность вычисления производной функции /(х) = 8т(х),
3
[а, Ь ] =
1,
2
на основе полинома Ньютона степени п
п к Погрешность вычисления Функции Погрешность вычисления Производной
11 0 5,421*10-20 9,048*10-17
4 15 5,421*10-20 -2,927*10-18
Существенно, что функция и производная могут вычисляться одновременно. Для наперед известной функции, например при построении библиотеки
,
быть хранимыми для каждого подынтервала. В этом случае производная будет вычисляться за время нескольких сложений и умножений, поэтому временная сложность вычисления стандартной функции и одновременно производной от нее оценивается как Т = 0(1).
Вычисление интеграла от функции (1) на промежутке [а, Ь] по аддитив-
Ь Р-1х/+1
ности влечет \/ (х )Лх = Х \/(х)йх , где [х1,хм) из (2). Для /'-го подынтерва-
ла справедливо f (х) ~ Рпі(х),где Рпі (х)
из
(4). Отсюда
л/+1 л/+1 Ь Р-1х/+1
\/(х)dx ~ \Рп1 (х)dx. В свою очередь, \/ (х )йх ~ X \Рп1 (х)йх . Для ин-
х1 х1 а /=1 х/
Ь0 - а/0
терполяции по Ньютону используется замена переменной wi = —----------------------—. При ее
п
выполнении значениям х = х1 и х = хм соответствуют t = 0 и t = п . С учетом Рп/ (х)=^п/(t) , где ¥п/ () из (6), получится Рп! (х) dx = ¥п/ (t) dt. В резуль-
х/+1 п
тате \Рп1 (х) dx = wJ ¥п/ (t) dt. Интеграл в правой части вычисляется не по-
х/ 0
п ~ п
средственно: wij¥п>(t)л = wi ¥(п +1),(t) ,
где
~ , ч а„., а,., . а / , а
¥(п+п ,■ () = с + -^ +^і2 +-Ш- і3 +...Дія
минимальнои
1 2 3 п +1
п
подынтервалов строится приближение определенного интеграла функции. После
п ~
элементарных преобразований wi /¥ п ,■(t) Л = wi ¥ (п +1), (п). Значения
0
¥(п +1)» вычисляются по схеме Горнера:
^(п+1),- (п) =
/ / / \ \ \
а -г а, пі і . (п—1)/ і ——п + —1—— а(п—2) і п + —1—— а0і/ п + 1 п
п +1 п п — 1 1
V у J
а
х
В результате \ f (x )dx « £ w ,■ * (n +i) i («) . Данное соотношение строится
a i=1
для минимизирующего значение показателя n алгоритма табличноалгоритмической аппроксимации. Выбор такого n, как показывает эксперимент, оказывается достаточным для достижения наперед заданной точности вычисления определенного интеграла. Проверка достигнутой границы погрешности осуществлялась сравнением с точными значениями интегралов на основе первообразных. В среднем по различным значениям n таблично-адгоритмическая схема на основе полинома Ньютона превышает точность формулы трапеций и .
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. АксайскаяЛ.Н. Разработка и исследование параллельных схем цифровой обработки сигналов на основе минимизации временной сложности вычисления функций / Автореферат диссертации на соискание ученой степени кандидата технических наук. - Таганрог: Изд-во ТТИ ЮФУ, 2008. - 20 с.
2. РоммЯ.Е. Параллельные итерационные схемы линейной алгебры с приложением к анализу устойчивости решений систем линейных дифференциальных уравнений // Кибернетика и системный анализ. - Киев, 2004. - № 4. - С. 119-142.
Акеайекая Любовь Николаевна
Таганрогский государственный педагогический институт E-mail: lubov1201@yandex.ru
347936, г. Таганрог, ул. Инициативная, д. 48. Тел.: 88634 60-18-99
Aksayskaya Lyubov Nikolaevna
Taganrog State Pedagogical Institute E-mail: lubov1201@yandex.ru
48, Initsiativnaia, Taganrog, 347936. Phone: 88634 60-18-99
УДК 622.333
С.А. Морозов, ВX. Манжула, С.В. Федосеев, А.Ю. Аликов МЕТОДЫ СИНТЕЗА СИСТЕМ УПРАВЛЕНИЯ НА ОСНОВЕ ФОРМАЛИЗАЦИИ СЛОЖНОСТИ СТРУКТУР
В статье рассмотрено совершенствование методов синтеза систем управления с импульсным воздействием при формализации сложности и исключения избыточности структур.В результате выполненной формализации анализируемая задача сводится к задаче поиска простых структур с частично линейными ограничениями.
Синтез; формализация; структура; системы управления; управляющие .