Аппроксимация комплекснозначных функций с использованием приближенных формул для вычисления модуля комплексного числа

ИНФОРМАТИКА, ВЫЧИСЛИТЕЛЬНАЯ ТЕХНИКА И УПРАВЛЕНИЕ

УДК 519.6

И. Н. Аглиуллин, А. П. Кирпичников, Ю. И. Чони

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

Ключевые слова: аппроксимация, минимаксный критерий, кусочно-линейная функция.

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

Keywords: approximation, minimax criterion, a piecewise linear function.

The paper is devoted to the problem of complex-valued function approximation with using the minimax criterion. Several formulas for estimating the amplitude of a complex value on the base of piecewise linear relations have been analyzed. As a result, calculations of the approximation coefficients can be greatly facilitated. A specific algorithm is proposed for solving the problem under consideration.

В задачах аппроксимации функций по результатам наблюдений наиболее

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

Рассмотрим следующую задачу. Не нарушая общности рассуждений, будем считать, что в некоторых точках (¿ = 1,т) интервала [0,Т] наблюдается комплекснозначная функция

F0

действительного аргумента 1. По результатам наблюдений необходимо построить

аппроксимирующую зависимость по заданной системе функций

Гк

Неизвестные коэффициенты аппроксимации ск =ск +Усй будем определять из выражения

Функция (3) не дифференцируема, поэтому для вычисления коэффициентов аппроксимации нельзя использовать градиентные методы поиска экстремума. Кроме того, чрезвычайно актуальной является проблема сокращения времени решения задачи с точки зрения принятия решений в реальном масштабе времени, например в технических (радиоэлектронных) системах обнаружения объекта. Поэтому, оправдан интерес к поиску приближенных алгоритмов решения поставленной задачи аппроксимации комплекснозначной функции. В частности, в формуле (3) модуль комплексного числа достаточно сложно зависит от неизвестных коэффициентов аппроксимации. Рассмотрим некоторые приближенные методы вычисления модуля комплексного числа.

Пусть г = х+ ]'у, комплексное число, тогда |г| = -Ух2 +у2 . Рассмотрим другую приближенную формулу вычисления модуля комплексного числа, например:

X,

У, —х,

__ __

- <Ш <-•.

4 ^ 4

п Ш

-<ф <—;

4 ^ 4

Згс ^ ^ 5ят — <ф <—;

4 Т 4

Здесь ср - аргумент комплексного числа. Очевидно, что приведенная формула вычисления модуля комплексного числа является кусочно-линейной зависимостью. Если положить |z| = 1 и учесть, что х = cos <р,у = sin <р, а модуль комплексного числа обозначить через р, то из формулы (4) имеем

/(с) = minc max¿ |F0(t¿) - £fc=iCfc/fc(£:¿)|

cos (D,--<Ф <-',

Г 4 f 4

п 3 п

sinffl, - <rn < —;

Т' 4 т- 4

Зя: „ „

— cosrn, — <rn < —;

Т' 4 т- 4

— sin ^,-< —

Для формул (5) получаем следующую геометрическую иллюстрацию оценки модуля комплексного числа

Рис. 1 - Графическая интерпретация формул

Теперь при любом значении аргумента <р модуль комплексного числа находится по формуле

|z| = max{x, у, —х, —у]

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

|z| = max[ax,ay,—ax,—ay] ,а> 1

В этом случае получаем следующую уточненную геометрическую иллюстрацию оценки модуля комплексного числа с использованием дуг четырех окружностей (рис. 1).

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

Определим« из условия, чтобы максимальная погрешность была как можно меньше. В этом случае для зависимости р = a cos <р при ^ = 0 и (p=nl 4 должно выполняться соотношение « —1 = 1—« cosn:|4 , тогда

«= 4/(2 + V2) = 1,172

Второй способ заключается в вычислении « из условия равенства разности площадей вне и

внутри круга единичного радиуса и соответствующих дуг, т. е.

Г((а cos<p)2 -1)d(p = f/4(1 - (a cos <p)2)d<p

или

Jnir/4((acos^))2 -1)d<p = 0.

Рис. 2 - Аппроксимация модуля комплексного числа четырьмя дугами

После некоторых преобразований получаем

«2= 0,5^/(0,25^ + 0,5),

или «= 1,1.

Для вычисления « третьим способом можно использовать условие, что окружности р = 1 и р = a cos <р пересекаются при значении угла ^ = я/д. Тогда

«= 1/cos(0,125n:) = 1,09.

Очевидно, что при практических расчетах можно воспользоваться одним из любых трех значений «.

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

И =

ах,

Л II

- <т < -;

Q ' Q

Р(х + у),

Зп „ „ 5ж

ау, Т<ср<Т; £(-х + у),

7п . ,9л

—ах, — < —; -£(х + у),8

-ау, —<<р<—; -К-Х + у),

Этим формулам соответствует рис. 3, в котором используется дуги восьми окружностей.

У

Рис. 3 - Аппроксимация модуля комплексного числа восьмью дугами

Тогда модуль комплексного числа можно вычислить по формуле

Каждое из выражений в формуле (9) есть дуга окружности (х = cos у>\у = sin ц>) и при замене окружности восемью дугами необходимо а и р подобрать так, чтобы уменьшить погрешности вычислений модуля комплексного числа по приближенной формуле (10). Для определения а и р можно воспользоваться теми же тремя способами, которые использовались ранее.

Определим а и р из условия, чтобы отклонения окружностей р = acos<p и р = 1 при значениях <р = 0 и <р= п/8 совпадали, т.е.

«-1 = 1-occos(7r/8),

тогда «= 1,04.

При графическом изображении формул (9) можно убедиться в том, что при значениях <р = 0 и <р = п/4 должно выполняться соотношение

ах = р(х + у) , a cos 0 = P(cos(n/4) + sin(7r/4)), Тогда

Р = «/V2 = 0,735

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

/^((«cos«?))2 -1)dcp = J^8(1 - (a cos p)2)d$i Или

J0ír/8((acos^))2 -1)dcp = 0,

«= 1,026 и р = «/V2=0,7.

Если воспользоваться третьим способом определения « и р, при котором предполагается, что окружности р = a cos <р и р = 1 должны пересекаться при значении угла <р= п/16, то

параметры к и р принимают следующие значения «= 1,02 и р = 0,7.

Сравнивая формулы (7) и (10) для приближенного вычисления модуля комплексного числа можно сделать вывод, что если при вычислении по формуле (7) максимальная погрешность вычисления модуля составляла 17% (ос= 1,17), то при вычислении к по формуле (10) максимальная погрешность составляет только 4% («= 1,04).

Вернемся к вопросу аппроксимации комплекснозначной функции (1) с использованием формулы (3). В правой части соотношения выделим действительную и мнимую части.

/(с) =mincmaxj - ££=1(cfc/fc(t£) -

c/<"f/<"ti)+j

Далее для решения задачи аппроксимации в каждой точке i = 1, т необходимо найти величины модулей получающихся комплексных чисел и из них определить максимальное значение. Выражение под знаком модуля обозначим Ui, получим

/(с) =mincmaxj|üj|.

Использование формулы (10) для приближенного вычисления модуля комплексного числа в каждой точке ti (i = 1, rn) приводит к необходимости вычисления, например при «= 1,04 и р = 0,74 следующих величин

±а х = ±1,04

±Р

±ку= ±1,04

±P

Из восьми соотношений линейно независимыми являются только два из них, например «х и Ру, остальные - линейная комбинация этих двух соотношений. Обозначим S = max; |Uj | и получаем следующую задачу

S — min

при ограничениях

±1,04(F1(ti) - -ckfk(ti))) < 5

±0,74(F1(ti) - I1nk=1(ckfk(ti) -cfäW +f2(ti) - Zfc=i(c^/fc"(ti) ~c'kfk (ti))) < S

±1,04(F2(ti) - ££=i(cfc /fc"(ti) + ckfk &))) < S

П

±0,74(-F1(ti) + YJ(c'kfk(ti) ~c'kfk(ti)) +F2(ti) - rk=1(ckfkti) + c'kfk (ti))) < S

Если ввести обозначения х1 = с(,х2 = с2,..,хп =

с;,хи+1 = с£.....х2и = с^,х2п+1=5, то получаем

следующую задачу линейного программирования: найти значения переменных х1,х2,...,х2п+ъ доставляющих минимум линейной форме

Р = Х2п+1

при ограничениях

—0,96х2и+1 - + *п+г/к &))) - 0,96Х2п+1

—0,96Х2п+1 —0,96Х2п+1 < +

Искомые переменные могут принимать и отрицательные значения. При сведении задачи к М -задаче линейного программирования число переменных резко возрастает, т.е. начинает влиять «проклятие размерности».

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

с1,---,сп,сп) будем обозначать (c1,c2,..., С2и) .

После задания нулевого приближения

С[0] =

можно вычислить значение модуля комплексного числа в каждой точке ^¡,¿ = 1,171 , как максимальное значение из восьми рассмотренных выражений. При этом наибольшее отклонение достигается, например, в некоторой точке V. От значения нулевого приближения необходимо перейти к первому приближению С[1]) = (с1[1],с2[1], .,с2и[1]). Направление изменения от нулевого приближения к первому надо выбрать так, чтобы уменьшить максимальное отклонение и„, которое, в общем случае, можно обозначить

— Ь„ + £)с = 1 О-ку ску

Градиент этой функции (•¡1 = (ак1, ак2,..., а2п) указывает на возможность выбора первого приближения С[1] по формуле

С[1] = С[0] >0

Определим величину шага Соотношение (13), которое характеризует наибольшее отклонение, назовем активным равенством. При изменении искомых коэффициентов аппроксимации от значения С[0] к значению к значению С[1] в направлении антиградиента все значения и^ придут в «движение». Некоторые будут возрастать, некоторые убывать, причем с разными

«скоростями». Для вычисления скоростей изменения ^¿,(1 = 1, т) в каждой точке найдем значение производной по направлению ^¿/^б^. Далее величина шага выбирается так, чтобы активное равенство иг уменьшилось, но в тоже время какое-то другое неравенство не стало активным. Поэтому должно быть таким, чтобы получилось два активных равенства, но с меньшими, чем иу значениями. Это будет выполнено, если шаг выбрать следующим

образом

н1 = шах -и1)/{аи1/ас1 -аиу/а 4))

Для двух активных равенства иу± = и„2 вновь необходимо выбрать направление и шаг к2 изменения вектора С[1] . Таким образом, после первого шага имеем в общем виде два активных равенства АР±,АР2 , каждое из которых имеет свое направление наибольшего изменения функции. В качестве наиболее приемлемого направления изменения С[1] , выберем вектор С2, являющийся линейной комбинацией векторов АУх,АУ2 , т.е.

где К1,у2 определяются из равенств

или

(д2А„1) = 1,(ё2А„2) = 1

К1ОЧ АУ1) + у2( АУ2 А„±) = 1 К1ОЧ 42) + 72( АР2 АУ2) = 1

После решения системы уравнений (16) и определения У1,У2 находится направление С2, для каждого из значений ^¿,(1 = 1, ттг) находится производная по направлению С2, т.е. и

вычисляется шаг

к2 = шах;

Тогда С[2] = С[1] —й2С2, и появляется три активных равенства иу± = иУ2 = и„з, далее описанная выше процедура повторяется и имеет место следующий алгоритм решения задачи:

1. Задается нулевое приближение С[0].

2. В каждой точке вычисляются значения и¿,(1 = 1, т) максимальные из восьми возможных.

3. Вычисляется величина иг = шах; и¿.

4. Определяется вектор =дгай иу.

5. Вычисляются производные по направлению вектора бъ йи^/й бъ ¿ = 1,т.

6. Находится величина шага по формуле (15).

7. Определяется первое приближение С[1]по формуле (14). При значении С[1] получаются два активных равенства иг1,и„2 .

8. В каждой точке (I = 1,т) вычисляются значения максимальные из восьми возможных.

9. Определяется направление изменения коэффициентов аппроксимации б =

Й=1 уА , где А1 =дгай и1,1 = ЦТ.

10. Неизвестные коэффициенты уг определяются из решения системы уравнений

(6А1) = 1,1= Ц

11. Вычисляются производные по направлению йи^/йб ,1 = 1,т.

12. Определяется величина шага

к = шах;

13. Вычисляется очередное приближение

С[р + 1] = С[р] -ьб

14. Далее либо возврат к шагу 8, либо завершение вычислений.

Завершение вычислений происходит, когда все значения Ut достаточно малы или тогда, когда активными станут 2n неравенств и система уравнений на 10 м шаге будет несовместна.

Литература

1. Линник Ю.В. Метод наименьших квадратов и основы математико-статистической обработки наблюдений, М., Физматгиз, 1958. - С. 340.

2. Исмагилов И.И., Кирпичников А.П., Костромин А.В., Хасанова С. Ф. Применение быстрого дискретного преобразования к фазовому сплайн-анализу макроэкономической динамики // Вестник Казанского технологического университета. - 2015. - Т. 18. № 7. -С. 228-231.

3. Емалетдинова Л.Ю., Катасёв А.С., Кирпичников А.П. Нейронечеткая модель аппроксимации сложных объектов с дискретным выходом// Вестник Казанского технологического университета. - 2014. - Т. 17. № 1. -С. 295-300.

© И. Н. Аглиуллин, канд. техн. наук, доцент, agliullinilsur@yandex.ru; А. П. Кирпичников д-р физ.-мат. наук, зав. кафедрой интеллектуальных систем и управления информационными ресурсами КНИТУ, kirpichnikov@kstu.ru; Ю.И. Чони, канд. техн. наук, профессор кафедры радиотелекоммуникационных систем КНИТУ-КАИ, tchoni@rambler.ru.

©1 N. Agliullin, PhD of Technical Sciences, docent, agliullinilsur@yandex.ru; AP. Kirpichnikov Doctor of Physical and Mathematical Sciences, Professor, Head of the Department of Intelligent Systems & Information Systems Control at Kazan Scientific Research Technical University, kirpichnikov@kstu.ru; Y. I Choni, Candidate of Technical Sciences, Professor of the Department of Telecommunication systems at Kazan National Research Technical University-KAI, tchoni@rambler.ru.