Нечеткие сплайны

УДК 517.97

Н. П. Деменков, И. А. Мочалов

НЕЧЕТКИЕ СПЛАЙНЫ

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

E-mail: demenkov@iu1.bmstu.ru

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

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

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

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

Один из способов фильтрации данных с неконтролируемыми возмущениями — их нечеткая интерполяция, являющаяся естественным обобщением четкого аналога.

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

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

В настоящей работе синтезированы алгоритмы нечеткой сплайно-вой интерполяции, основанные на теории НЛС, и приведены результаты моделирования нечетких сплайнов первого порядка и нечетких кубических сплайнов, которые указывают на существование сильной и слабой нечеткой сплайновой интерполяции.

Базовые определения. Нечеткое число хн £ R1 определяется как отображение r: R1 ^ [0,1] £ R1, где r(x) — функция принадлежности. Из-за отсутствия взаимной однозначности выделяются левая r(x) и правая r(x) ветви относительно r(x) = 1, каждая из которых определяет уже взаимно-однозначное отображение. В теории нечетких множеств используется эквивалентная уровневая форма представления нечеткого числа, задаваемая как обратное отображение r-1: [0,1] £ R1 ^ R1. Для отображения x(r), r £ [0,1], выделяются нижняя x(r) и верхняя x(r) ветви.

Таким образом, для нечеткого числа хн £ R1 используется цепочка эквивалентных представлений:

хн £ R1 ^ r(x), r £ [0,1] ^ (r(x);

r(x)/x £ R1, r, r £ [0,1]) ^ (x(r), X(r)/0 < r < 1).

Относительно функции r(x) должны выполняться следующие свойства:

• функция r(x) полунепрерывна сверху;

• функция r(x) монотонно возрастает;

• функция r(x) монотонно убывает.

Кроме того, для x(r) должно выполняться условие x(r) < x(r). Если x(r) имеет треугольную форму, то перечисленные свойства выполняются для остроугольного треугольника, тогда как не каждый тупоугольный треугольник может изображать нечеткое число. Обычно применяется обозначение

хн ^ (x(r), x(r)/0 < r < 1).

Арифметические операции сложения (+), вычитания (—), умножения (х) и деления для нечетких чисел хн и ун определяются соотношением

max min 11 t \ zw

Хн * Ун = Zh ^ Хн * Ун = Ян((г(ж), Г(У)).

Операции сравнения больше-равно (>), меньше-равно (<) следуют из определения. Имеем нечеткие числа хн и ун такие, что

хн ^ (x(r), x(r)/0 < r < 1), ун ^ (y(r), y(r)/0 < r < 1).

Тогда жн ^ ун, если

1 1

Т(хн) ^ У г[ж(г) + ж(г)]^г ^ Т(ун) ^ У г[у(г) + у(г)]^г. (1) 0 0 Совокупность нечетких чисел образует банахово пространство [1].

Нечеткая функция -н(ж) определяется как отображение

-н: Д1 ^ ^ = {г(ж)},

где ^ — совокупность функций принадлежностей г (ж). Это отображение параметризуется относительно г € [0,1] и может быть представлено в виде [1]

-н(ж) = (ф(ж,г), —(ж,г)/0 < г < 1).

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

1

Т (-н(ж)) = У г[-(ж,г) + —(ж,г)]^г.

0

Имеют место следующие утверждения:

1) нечеткая функция -н(ж) монотонно возрастает (убывает), если для любых ж1 и ж2 выполняется

Ж1 < Х2 ^ Т(^н(ж1)) < Т(-н(жО) (Х2 < Х1 ^ Т(-н(ж2)) < Т(-н(ж1)));

2) нечеткая функция -н(ж) непрерывна для ж € [с, С Д1, если Т(-н(ж)) непрерывна;

3) нечеткая функция -н(ж) дифференцируема, если Т(-н(ж)) дифференцируема. Производная от нечеткой функции

( д д _ Фн(ж) = ( дХ-(г,ж); дХ^(г,ж)/0 < г < 1

4) нечеткая функция -н(ж) интегрируема по Риману, если Т(-н(ж)) интегрируема. Интеграл от нечеткой функции

а /а а

/Фн (х)Лх = I/ -(г,х)&; / ф(г,.хМх/<> < г < 1

с \ с с

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

Нечеткий функционал от нечеткой функции <^н

7Н: ^н ^ г = [0,1] € Л1

есть нечеткое число. Совокупность |^н(х)|, на которой определен нечеткий функционал 7н, составляет нечеткую область определения. Нечеткость функционала 7н обусловлена наличием нечетких граничных условий, которые характеризуют неточность в их задании. Это означает, что константы уравнения Эйлера находятся из нечеткой линейной системы.

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

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

Задача нечеткой сплайн-интерполяции формулируется следующим образом. Имеем

• нечеткую функцию f н(х), х € [а, Ь];

• четкое разбиение (сетку) промежутка [а, Ь]:

ххо а, хх 1,..., ххп Ь;

• нечеткий многочлен $Пт степени т на п-м разбиении:

т

^пт ^пт^ ) ^ ^ апгХ , Х € [хп- 1,хп];

г—0

• многочлен удовлетворяет условиям нечеткой непрерывности в точках х1, х2,..., хп-1:

s н

<у-> iy-r-1

-,H

= s

^n+1,m

ж— жп

, к = 0, т - 1, п = 0,^ - 1;

X—Хп

• на границах разбиения в точках х0, хп выполняются нечеткие нулевые условия

s н

iy-iiy-r-1

_ сн

nm

ж—жо

= 0н.

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

ж—ж

n

Задача характеризуется матрицей Ан, состоящей из неизвестных параметров:

AH =

а10

а20

an0

all а21

an1

а

a2m

N X

в которой число строк соответствует числу N промежутков разбиения, а число столбцов — числу (т +1) нечетких коэффициентов многочлена т-й степени.

Рассмотрим решение задачи нечеткой интерполяции сплайнами на примере простейших задач.

Нечеткий линейный сплайн. В случае использования нечеткого линейного сплайна в выражении (2) т = 2 и аппроксимирующий многочлен будет иметь вид 2

SH =

i=0

ani xx апо I an 1 xx, xx CC [xn_1, xxn], ^^ 1, N^/".

Общее число н еизвестных параметров рав но п(т + 1)|т=1 = 2п. Для их н ахожде н ия имеем следующие исход н ые дан ные. Для н е-четкой функции /н(ж): (жк,/к), к = 0,N. Это приводит к решению

совокупности нечетких линейных систем для нахождения а.

a

n0 n1

Xi AH = LH, i = 1, N,

где Xi =

Zi_1

Xi

, AH =

LH =

fi_1 fiH

, Xi =0.

Для нахождения 2N неизвестных параметров имеем 2N линейных уравнений с нечеткими правыми частями. Искомые решения получаются в соответствии с теорией НЛС. Сильные и слабые ее решения соответственно будут определять сильный и слабый интерполяционные многочлены 1-го порядка.

Вид сплайна (3) обычно получается из решения следующей вариационной задачи [4]:

xjv=/H

s(x) =

[s(x)]2dx

с нечеткими неподвижными границами, что соответствует поиску функции с наименьшей нормой ||8||ь2, т.е. ищется наиболее гладкая функция 8(ж):

зн(*)|ж=Хк = /н, к = 0,Ж

Подынтегральная функция Ь(ж, 8, 8) = [8(ж)]2 в (4) зависит только от первой производной 8(ж), поэтому уравнение Эйлера будет иметь

к

a

nm

xo=/H

вид [5]

d

£L(x, s, s) = 0 ^ Ls(x, s, s) —— Ls(x, s, s) = 0 ^ • - dx

s V

=0

^ Lsx(x, s, s) + Lss(x, s, s) s + Lss(x, s, s)s = 0 ^

=0 =0

^ Lsss = 0 ^ {^

откуда s(x) = c0 + cix, где c0, ci — константы интегрирования, которые находятся из нечетких граничных условий

x0 = io , xN = fN,

приводящих к нечеткой линейной системе и далее — к нечеткому многочлену типа (3).

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

Рассмотрим числовой пример. Пусть имеется нечеткая сеточная функция |xn; in}, n = 0, 3, где

{x0 = -3; f = 1(r) = (i0 = r, /0 = 2 - r/r G [0,1])} ; {xi = -1; /н = 5(r) = (/1 =4 + r, /1 = 7 - 2r/r G [0, {x2 = 3; /2н = 2(r) = (/2 = 2 + r, /2 = 3/r G [0,1])} {xs = 4; /зн = -2(r) = (/3 = -2, /3 = -1 - r/r G [0,

Необходимо найти сплайн 1-го порядка

Sni — an0 + anix, n — 0, 3.

Для первого промежутка x G[xi,x2] имеем нечеткую линейную систему

n = 1; S^:

1 -3 1 -1

Xi

ai0  1(r) "

an _ 5

Т"

решение XA = Fi1 существует и единственно.

По матрице Х1 находим расширенную матрицу X:

X =

10 0 3 10 0 1 0 3 10 0 110

C1

в 1

|B1 + C1I =0, X = 0 ^

решение Х^А^ = ^ существует и единственно. Здесь А^ =

= (а10,а11, — а10, — а11)т; = (1, 5, -1, —5)т. Это решение есть

А? = Хг1^1, . Е

х_ =

E . D1

= 0,5[(В + С1)г1 + Х-1], Е1 = 0,5[(В + С1)г1 — Х-1] Результаты вычислений:

а?1 =

/

а?0 = I 9,5 - 2,5г /г € [0,1]

ч«1о

/ \ 2,5 —0,5г; /г € [0,1]

\ а11

Отсюда следует, что а^0 является нечетким числом, так как а^0 > а^0. Однако анн1 таковым не является, так как а^ > а!1. Определим

а11(г) = Ш1п(а11, а11), а11(г) = тах(а11, а11).

Т-да аЦ = (а11(г), а11(г)/г € [0,1]) = (2; 2,5 — 0,5г/г € [0,1]) будет являться нечетким числом.

В соответствии с теорией нечетких линейных систем решение А? = (а?0, аЦ)т является слабым решением Х1А^ = Ь^. Далее получим

= а10 + а\\ж = ((6 + г) + 2ж; (9,5 — 2,5г) + (2,5 — 0,5г)ж/г € [0,1]) — нечеткий слабый многочлен 1-го порядка при ж € 3 , 1

=xo

= Ж1

ff

КГ- 7

цз

1 /VVXXV/ I Щж"

ЁГ"!"3" ----

/•н ' 1 h W---Г-1 / 1

1 ^ x3 = 4 1

Xq = —3 x Y = — 1 0 Щ | x2 = 3 Ii *

-2 ---- v3h

Нечеткий слабый сплайн 1-го порядка

Аналогичные вычисления для второго и третьего промежутков дают:

(2,75 + 1,75г) + (-1,25 + 0,75г )х, (6,75 - 2,25г) + (-0,25 - 0,25г)x/r е [0,1]

— нечеткий сплайн-многочлен 1-го порядка на втором промежутке;

= aн10 + а3*x = ((14 + 4г) - 7x; 18 - (4 + 3г)х/г е [0,1]), x е [3;4]

— нечеткий слабый многочлен 1-го порядка на третьем промежутке. В результате получим = (й'н,, , £31), который является нечетким слабым сплайном 1-го порядка (рисунок). +

Нечеткий кубический сплайн. Как и ранее, имеем нечеткую сеточную функцию

(*п,7), П = о;Ж / = /(г)/(г)/г е [0,1]},

которая аппроксимируется нечетким кубическим сплайном.

В результате двойного интегрирования зависимости £гнш |т=3 кубический сплайн представляется в виде

S-3 = Si3 (fH (ж)) =

H (xxi - x)3 H (ж - Xi-1 )3

где

'm-1

6h

+ a

6h

Ж. _ rp rp _ rp .

1 'Aj _ TT tXj iL"! ,

+ AH^- + Bf-;-- ,

h

h

x G [x--1, Xi], i = 1, N, h = Xi — x--1,

h2

AH = S-3 |xi-i = /-H ^ AH = Л-1 — mH-1 "6,

Вн = ззи = /н ^ Вн = /н — тн^.

Коэффициенты тнг1, т° удовлетворяют следующим условиям:

'-'¿3|хо = 'н^ЗД = 0 ,

'¿З^-о = "г3|хг+о.

Из нечетких граничных условий (7) получим т^ = т^ = 0н. Из условий непрерывности первой нечеткой производной в узлах (8) в матричной форме имеем

Мн = Аг1Я^н, где Мн = (т1, т2,..., 1), = (/0й, /н,..., /й),

A=

2 h

-h 0. .0 0

3 6

h 2 h

-h .0 0

6 3 6 .

h 2

0 0 0. -h

H =

h 0

1 h h 6

1

h

0 ; -

000 000

000

h 6

2 h h 6

С точностью до обозначений (9) является нечеткой линейной системой, которая может иметь как сильное, так и слабое решение, поэтому сплайн (6) также может иметь сильную или слабую форму соответственно.

Задача поиска нечеткого кубического сплайна £гн3 (6) эквивалентна вариационной задаче с нечеткими подвижными границами, которая интерпретируется как аналог потенциальной энергии упругого стержня, закрепленного в точках плоскости (жп, /П), п = 0, N, а на кубических сплайнах реализуется минимум этой энергии:

xv=/H

Xv = /H

s(x) =

[s(x)]2dx; s(x) =

[s(x)]2dx.

xo=/5

xo=/H

В этом случае подынтегральная функция £(ж, 8, 8, ¿) = ¿(ж) зависит только от второй производной ¿(ж), поэтому уравнение Эйлера будет иметь вид [5]

а ¿2

Щж, 8, 8, ¿) = 0 ^ ДДж, 8, , ¿)--— = 0 ^ —— (¿2(ж)) =0 ^

аж аж2

^ 2з(то)(ж) = 0 ^ 8(ж) = С1 ^ ¿(ж) = С1ж + с2 ^ 8(ж) =

С1 2 / \ С1 3 С2 2

= — ж + с2ж + С3 ^ 8(ж) = — ж +--ж + с3ж + с4,

2 6 2

где постоянные интегрирования с, г = 1, 4 находятся из граничных условий

81жо = /о; = ; 8|о = = н,

приводящих к нечеткой линейной системе и далее — к нечеткому многочлену типа (6).

Рассмотрим числовой пример. Имеем нечеткую сеточную функцию {жп; /П}, п = 0, 2. Найти нечеткий кубический сплайн $П3. Из граничных условий следует = = 0н. Из (9) при N=2 имеем

ml =

2

1 2 1 h h h

/ /H fH

3 3

= 2 fo — 3/i + 2/2

Из (6) при x £ [x0, x1] имеем

н (xx Xo) „н xx 1 XX

SI3 = ml^^ + /oH^ +

h2 \ x —

xo

h

а при x £ [x1,x2]

S23 = ml+ /H^ + (/H - ml

h2\ x2 —

x

h

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

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

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

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

В теории нечетких множеств используется термин "гибридные данные", когда для описания возмущений применяются элементы теории вероятностей в сочетании с нечеткостью. Например, имеется плотность вероятности, распределенная по нормальному закону, однако его математическое ожидание является нечетким числом. В дальнейших исследованиях целесообразно реализовать нечеткие сплайны со сглаживанием, нечеткую стохастическую аппроксимацию и т.д.

СПИСОК ЛИТЕРАТУРЫ

1. Roy Goestdhel Jr. and Willim Voxman. Elementary fuzzy calculus // Fuzzy sets and systems. - 1986. - Vol. 18. - P. 31-43.

2. Menahem Friedman, Ming Ma, Abraham Kandel. Fuzzy linear systems // Fuzzy sets and systems. - 1998. - Vol. 96. - P. 201-209.

3. Бахвалов Н.С. Численные методы. - М.: Наука, 2001. - С. 632.

4. ЭльсгольцЛ. Э. Вариационное исчисление. - М.: ЛКИ, 2008. - С. 205.

5. Асмолова Ю. Е., М о ч а л о в И. А. Элементы нечеткого вариационного исчисления // Вестник РУДН. - 2010. - № 4. - С. 37-43.

Статья поступила в редакцию 31.10.2011

Николай Петрович Деменков, родился в 1944 г., окончил в 1968 г. МВТУ им. Н.Э. Баумана. Канд. техн. наук, доцент кафедры "Системы автоматического управления" МГТУ им. Н.Э. Баумана. Лауреат премии Ленинского комсомола в области науки и техники. Автор 200 научных работ в области методов оптимизации, анализа и синтеза систем управления, ориентированной на применение информационных технологий и средств вычислительной техники.

N.P. Demenkov (b. 1944) graduated from the Bauman Moscow Higher Technical School in 1968. Ph. D. (Eng.), assoc. professor of "Automatic Control Systems" department of the Bauman Moscow State Technical University. Winner of Lenin Komsomol Prize in Science and Technology. Author of 200 publications in the field of methods of optimization, analysis and synthesis of control systems, oriented to application of information technologies and computing aids.

Иван Александрович Мочалов родился в 1941г., окончил в 1965 г. Московский энергетический институт, в 1971г. МГУ им. М.В. Ломоносова. Д-р техн. наук, профессор кафедры "Системы автоматического управления" МгТУ им. Н.Э. Баумана. Автор более 100 научных работ в области теории и практики оптимизации и идентификации систем автоматического управления.

I.A. Mochalov (b. 1941) graduated from the Moscow Institute for Power Engineering in 1965 and the Lomonosov Moscow State University in 1971. D. Sc. (Eng.), professor of "Automatic Control Systems" department of the Bauman Moscow State Technical University. Author of more than 100 publications in the field of theory and practice of optimization and identification of automatic control systems.