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

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

CC BY
147
29
i Надоели баннеры? Вы всегда можете отключить рекламу.
Область наук
Ключевые слова
ЧИСЛЕННОЕ МОДЕЛИРОВАНИЕ СЛУЧАЙНЫХ ВЕЛИЧИН И ВЕКТОРОВ / ТЕХНОЛОГИИ КОНСТРУИРОВАНИЯ МОДЕЛИРУЕМЫХ ПЛОТНОСТЕЙ / МОДЕЛИРУЕМЫЕ ПРИБЛИЖЕНИЯ ПЛОТНОСТЕЙ / ИТЕРАЦИОННЫЙ ДИСКРЕТНО-СТОХАСТИЧЕСКИЙ АЛГОРИТМ ПОСТРОЕНИЯ АДАПТИВНЫХ СЕТОК / NUMERICAL SIMULATION OF STOCHASTIC VALUES AND VECTORS / TECHNOLOGIES FOR CONSTRUCTING OF MODELLED DENSITIES / MODELLED DENSITY APPROXIMATIONS / ITERATIVE DISCRETE-STOCHASTIC ALGORITHM FOR CONSTRUCTING ADAPTIVE MESHES

Аннотация научной статьи по математике, автор научной работы — Бессмельцев Михаил Викторович, Войтишек Антон Вацлович

Представлен программный модуль AITricks GеотRandom, позволяющий получать выборочные значения случайных векторов, распределенных согласно заданной плотности в геометрически сложных областях. Приведены полезные для пользователей модуля методики по конструированию вероятностных плотностей, допускающих эффективную численную реализацию выборочных значений. Рассмотрены численные схемы, связанные с применением полиномиальных и кусочно-полиномиальных приближений вероятностных плотностей (сопряженные с использованием метода дискретной суперпозиции при реализации выборочных значений). В качестве примера применения предлагаемых технологий рассмотрен итерационный дискретно-стохастический алгоритм построения адаптивных сеток.

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

Похожие темы научных работ по математике , автор научной работы — Бессмельцев Михаил Викторович, Войтишек Антон Вацлович

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

Modification of geometrical program modules, tied with construction of modelled probabilistic densities

In this paper a program module AITricks GeomRandom is presented which allows getting sample values of stochastic vectors in geometrically complex domains. It is pointed out that considerations associated with construction of probabilistic densities providing effective numerical realization of sample values (corresponding methods are presented in this paper) might be useful for a user. Numerical schemes that use polynomial and piecewise polynomial approximations (together with application of the discrete superposition method for the realization of sample values) in problems of numerical statistical modeling are also examined. The iterative discrete-stochastic algorithm for constructing adaptive meshes is considered as an example of the proposed technologies.

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

Вычислительные технологии

Том 16, № 4, 2011

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

М.В. Бессмельцев, A.B. Войтишек Институт вычислительной математики и математической геофизики,

Новосибирск, Россия e-mail: vav@osmf.sscc.ru

Представлен программный модуль А1Тпск,$ ОеотИапс1от, позволяющий получать выборочные значения случайных векторов, распределенных согласно заданной плотности в геометрически сложных областях. Приведены полезные для пользователей модуля методики по конструированию вероятностных плотностей, допускающих эффективную численную реализацию выборочных значений. Рассмотрены численные схемы, связанные с применением полиномиальных и кусочно-полиномиальных приближений вероятностных плотностей (сопряженные с использованием метода дискретной суперпозиции при реализации выборочных значений). В качестве примера применения предлагаемых технологий рассмотрен итерационный дискретно-стохастический алгоритм построения адаптивных сеток.

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

Введение

В настоящее время широкое применение находят алгоритмы и пакеты программ, в которых реализуются множества точек, распределенных в сложных областях согласно заданной плотности распределения. К таким задачам относятся визуализация объектов на ЭВМ, построение адаптивных сеток и др. В данной работе предложен программный модуль А1Тпскв СеотНапйот (см. [1] и раздел 9), в котором использован ряд принципиальных положений по оптимизации соответствующих алгоритмов численного моделирования. В частности, существенным является то обстоятельство, что при применении кусочно-полиномиальных (чаще всего кусочно-постоянных) аппроксимаций функции плотности возможна реализация эффективных модификаций соответствующего метода суперпозиции (квантильного метода, метода Уолкера и др. — см., например, [2], а также раздел 6 настоящей работы).

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

*Работа выполнена при финансовой поддержке РФФИ (гранты № 10-01-00040 и 09-01-00035).

алгоритмов численного моделирования (эта возможность также предусмотрена в программном модуле А1Тпскз СеотКапёот). В разделах 1-4 работы представлены соответствующие технологии "искусственного" конструирования вероятностных распределений, допускающих эффективное моделирование методами: обратной функции распределения, моделирования двумерного случайного вектора с зависимыми компонентами, интегральной и дискретной суперпозиции, исключения (соответствующие алгоритмы описаны, например, в [2]), Это является основой создания "банка" моделируемых вероятностных распределений с целью использования его при построении эффективных алгоритмов численного статистического моделирования.

Далее (в разделах 5-7) сделан обзор подходов, реализованных, в том числе, в программном модуле А1Тпскз СеотКапйот и связанных с приближением (как правило, полиномиальным или кусочно-полиномиальным) вероятностных плотностей, сопряженных с применением соответствующего метода дискретной суперпозиции при реализации выборочных значений. Подробнее рассмотрены практически важные случаи кусочно-постоянного приближения плотности и моделирования равномерного распределения в сложных областях и на сложных поверхностях,

В качестве примера применения представленных технологий в разделе 8 рассмотрен итерационный дискретно-стохастический алгоритм построения адаптивных сеток [3], Наконец, в заключение сформулированы основные результаты работы,

1. Технология вложенных замен

Стандартный алгоритм численной реализации выборочного значения £0 непрерывной случайной величины распределенной па интервале (а, Ь) согласно непрерывной, монотонно возрастающей на (а, Ь) функции распределения ^(х) (метод обратной функции распределения — см., например, [2]), основан на соотношении

где а0 — "стандартное случайное число" (т.е. выборочное значение случайной величины а, равномерно распределенной на интервале (0,1)), На ЭВМ выборочные значения а случайной вели чины а реализуются с помощью соответствующих генераторов (подпрограмм) типа RAND или RANDOM.

При использовании алгоритма (1) возникает "программистская" проблема выражения обратной функции F-1(x) в элементарных функциях, С учетом того что эта проблема рассматривается для практически важных случаев абсолютно непрерывных распределений, описываемых кусочно-непрерывными плотностями распределения f (u) случайных величин £ (см., например, [2]), встает вопрос о разрешимости уравнения

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

£о = F-1(a о)

(1)

(2)

относительно простого для программирования выражения для решения уравнения (2) вида (1)

Со = ф(ао) (3)

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

Технология 1 [2]. Пусть Дп(у) — плотность случайной величины п, имеющей элементарное распределение в интервале (с, в), т. е. из соотношения типа, (2)

По

! Д(у) ву = ао

с

для, соответствующего выборочного значения п0 случайной величины, п можно получить формулу типа, (3): по = Фп(а0), где фп(т) — простая композиция элементарных функций. Рассмотрим взаимно-однозначное преобразование, задаваемое монотонно возрастающей дифференцируемой функцией у(х), переводящей интервал (а,Ь) в интервал (с, в); в частноети у (а) = с, у(Ь) = в. Полагаем также, что функцию у(х) и обратную к ней функцию у-1 (у) можно представить в виде простой композиции элементарных функций. Пусть случайная, величина, С имеет плотность распределения,

f (и) = Д(у(и)) у'(и), и е (а, Ь). (4)

При сделанных предположениях можно утверждать, что f (и) является, плотностью элементарного распределения, т. е. уравнение (2) разрешимо относительно Со в элементарных функциях и справедлива, формула Со = у-1(фп(а0)).

Действительно, записывая уравнение (2) для плотности (4), имеем

У Д(у(и)) у'(и) ви = ао, или У Д(у) ву = ао,

а <р(а)

или у(Со) = Фп (ао), ИЛИ Со = У-1(Фп (ао)). (5)

Название технология вложенных замен для технологии 1 связано с тем, что полученную плотность (4) можно взять в качестве исходной плотности fп (у) и осуществить еще одно взаимно-однозначное преобразование типа у (и). С помощью таких вложенных замен можно получать неограниченное количество новых плотностей элементарных распределений.

Пример 1. В методах численного статистического моделирования широкое применение находит формула

1п ао , ,

•По =--д-, (6)

соответствующая экспоненциальному распределению с плотностью

Д(у) = Ае-Хь, у> 0, А > 0. (7)

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

Рассмотрим также случайную величину имеющую плотность распределения

f (и) = ехри х ехр(— ехри), —то < и < +то. (8)

Это плотность экстремального (точнее, минимального) распределения (см., например, [4]), описывающая одно из трех возможных асимптотических распределений линейных комбинаций вида ап шт{п(1),... ,п(п)} + Ьп при ап = 0, п ^ то; здесь ап,Ьп — числовые последовательности, а {п(г)} — независимые одинаково распределенные случайные величины. Применение распределения (8) связано с множественными сравнениями в сложных процедурах принятия решений (таких, в частности, как ранжирование средних).

Функция (8) может быть получена из плотности (7) согласно технологии 1 с преобразованием <^(я) = ехр я, переводящим интервал (а,Ь) = (—то, +то) в интервал (с, д) = (0, +то). Согласно соотношению (5) моделирующая формула для распределения (8) имеет вид £0 = 1п(— 1па0).

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

2. Технология взвешенного параметра

Во многих приложениях численного статистического моделирования (чаще всего при реализации траекторий цепи Маркова, а также при использовании метода двойной рандомизации, см., например, [2]) требуется конструировать "моделируемые" плотности распределения f (и, V) двумерных случайных векторов (£,п) с зависимыми компонентами, Справедливы два представления (см., например, [2])

= ДЫ = J ¡(и,ь)(1ь, Ь(ь\и) = ^^у (9)

= /^ЩиИ, ^(у) = J f(u,v)du, = (10)

Представлению (9) соответствует следующий алгоритм численного моделирования вектора (£, п): сначала реализуется выборочное значение £0 согласно плотности Д(и), затем моделируется выборочное значение п0 согласно плотности f(^о^)//^(£0). Аналогично для представления (10) — сначала реализуется выборочное значение п0 согласно плотности (V), далее моделируется выборочное значение £0 согласно плотности f (и^^/^(п0)- Сформулированные алгоритмы могут быть далеко не равнозначными с точки зрения их эффективной реализации на ЭВМ,

Пример 2. Пусть требуется построить эффективный алгоритм моделирования двумерного случайного вектора (£, п) с плотностью распределения

/(и, г;) = ^ ье~иь, и> 0, 0 < V < 2.

Рассмотрим представление (10)

/»= I ¿и =1-, 0 < г; < 2; ¡¿и\у) = = уе~™, и > 0.

о п

Плотность /пявляется плотностью равномерного распределения на интервале (0, 2)-, соответствующая моделирующая формула щ = 2а1. Функция /(и1п0) является плотностью экспоненциального распределения с параметром Л = щ (см. соотношение (7)), и, следовательно, С = — (1п а2)/п0 (см. формулу (6)). Теперь рассмотрим представление (9). Интегрируя по частям, имеем

^ 2 1 Л 1 — (2и + !)е-2и

/?(«) = / 2 ^ =- 2и2 -> и >

0

Полученная функция, очевидно, не является элементарной плотностью распределения, и поэтому для этого примера представление (9) является заведомо худшим (с точки зрения реализации на ЭВМ) по сравнению с представлением (10).

Примеры плотностей, для которых по крайней мере одно из разложений (9) или (10) соответствует эффективному алгоритму численной реализации выборочных значений (£0,П0); дает следующая технология "взвешенного параметра".

Технология 2. Рассмотрим элементарную плотность распределения, /(и; Л), и Е (а, Ь), зависящую от па,ра,м,етра, Л, допустимые значения которого принадлежат интервалу (С, Б). Элементарность распределения, означает существование простой (элементарной) формулы £0 = (а\; Л) для, получения выборочного значения случайной величины, Рассмотрим также еще одну элементарную плотность /п (у) случайной величины, п, принимающей значения в интервале (с, в) С (С, Б); при этом, имеется соответствующая элементарная моделирующая формула п0 = Фп(а2)- Теперь поставим, задачу построения эффективного алгоритма реализации выборочных значений (С0,щ) двумерного случайного вектора (£,ц), принимающего значения в прямоугольнике С = {(и, у) : а < и < Ь; с < у < в} и имеющего плотность распределения,

/(и, у) = /п(у) х /(и; у), (и, у) Е С. (11)

Это результат формального умножения плотностей /п(у) и / (и; у) (здесь происхо-

уЛ ности (11) имеем, /(и1у) = /%(и; у). Для, этого представления получаем эффективный алгоритм

П0 = Фп ^^ & = ф (а2; П0). (12)

Для, представления (9) плотности (11) эффективных формул типа, (12) построить, как правило, не удается.

В частности, пример 2 описывает ситуацию, в которой применена технология 2. В качестве исходной плотности с параметром использована функция (7) (здесь (С, Б) = (0, и на подмножестве (с, в) = (0, 2) С (С; Б) выбрана плотность равномерного

распределения.

3. Технология формирования смеси

Частным случаем применения метода двойной рандомизации (или метода интегральной суперпозиции), в котором при моделировании случайной величины £ вводятся вепомо-

п

f (и) = / /п^ШиИ ¿V, (13)

причем соответствующее разложение (10) дает эффективный алгоритм реализации пары (£0, п0) (см., например, [2]), является случай, когда вспомогательная величина п берется дискретной и целочисленной с распределением Р(п = г) = рг, г = 1, 2,... Здесь плотность (13) имеет вид

f (и) = X] Л(и) = Л (и|п = г) (14)

г

а моделирующий алгоритм (метод дискретной суперпозиции — см., например, [2]) состоит в выборе номера п0 = т согласно стандартному методу реализации дискретной случайной величины или какой-либо его модификации (см. [2] и раздел 6 данной статьи) с последующим моделированием значения £0 согласно плотности ^(и). Достаточно большой спектр примеров эффективного применения метода дискретной суперпозиции можно получить для небольшого количества М номеров г, г = 1,..., М (в частности, для М = 2). Сформулируем соответствующую технологию "формирования смеси". Технология 3. Возьмем две плотности, элементарных распределений Д(и) м ^(и),

(а, Ь)

ними коэффициентами

f (и) = Р1 Л(и)+ Р2 f2(u), и € (а, Ь), Р1 > 0, Р2 > 0, Р1 + Р2 = 1 (15)

не является, плотностью элементарного распределения. Такие плотности, Д(и) и f2(u) можно получить, в частности,, с помощью разнородных замен в технологии, 1. Длд выборочных значений £0г), реализуемых согласно плотностям ^(и), выписываются моделирующие формулы £0г) = Ф(а0), г = 1, 2. Длд плотности (15) можно построить экономичный алгоритм дискретной, суперпозиции: если а1 < р1; то значение п0 вспо-

п

н,и,е £0 случайной вели,чины, £ реализуется по формуле £0 = ф1(а2^ иначе £0 = ф2(а2).

Пример 3 [2]. Пусть требуется построить алгоритм моделирования случайной величины £, имеющей плотность распределения

¡■(и) = ^(1+и2), -1<и<1. (16)

Соотношение (16) представляет так называемый закон, Релея молекулярного рассеяния, фотонов в атмосфере, используемый в теории переноса излучения. Функция (16) не

являстся плотпос™ Элемептарп„г„ распределен, так как уравнение („) А, = а°

-1

сводится к соотношению ^ + 3£0 — 8а0 — 4 = 0, не позволяющему получить элементарную формулу моделирования случайной величины Плотность (16) предетавима в виде смеси (15):

^ N 3 1 1 3 2 ^=4Х2 4Х2И' -1<и<1,

т.е. pl = 3/4, fl(u) = 1/2, p2 = 1/4; f2(u) = 3u2/2. Функция fl(u) является плотностью равномерного распределения на интервале (—1,а функция f2(u) — элементарной (степенной). Алгоритм дискретной суперпозиции здесь выглядит следующим образом: если ai < 3/4, то = 2a2 — 1, иначе = \/2а2 — 1,

Обобщение технологии 3 может быть связано с увеличением числа слагаемых M в сумме (15) (вплоть до рассмотрения функциональных рядов), а также с переходом к моделированию многомерных случайных величин (случайных векторов)

4. Технология "порчи" моделируемой плотности

К дальнейшему расширению спектра вероятностных распределений, допускающих эффективное численное моделирование выборочных значений, ведет применение специальных вариантов мажорантного метода исключения, суть которого состоит в следующем [2], Пусть требуется численно получать выборочные значения ^ случайного вектора (случайной величины) распределенного в облаети U £ Rd согласно плотности f (u), которая пропорциональна заданной неотрицательной функции g(u), т.е.

/(u) = ^, G = jg(u)du. (17)

и

Предполагается, что ни один из известных стандартных и специальных методов не дает эффективного алгоритма реализации значений j Рассматривается мажоранта g(1)(u) функции g(u) такая, что g(u) < g(1)(u) при u £ U. Первое требование к мажоранте g(1)(u) таково, что для плотности

= G^ = Jg^(u)du, (18)

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

и

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

Алгоритм мажорантного метода исключения состоит в том, что реализуется выборочное значение согласно плотности (18), а также значение no = a2g(1)(^01)). Несложно показать (см., например, [2]), что пара (£0^,^) равномерно распределена в "подграфике" G(1) = {u £ U, 0 <v< g(1)(u)} функции g(1)(u), Если

no <д(й1]), (19)

то реализованная точка попадает в "подграфик" G = {u £ U, 0 < v < g(u)} функции g(u). Так как в этом случае пара (£0^, П0) равномерно распределена в области G,

то в качестве искомого выборочного значения £0 вектор а £ принимаем £0 = ^с^- Если неравенство (19) не выполнено, снова разыгрываем пару (£(1),П0); проверяем неравенство (19) и т.д. Несложно показать (см., например, [2]), что реализованная таким образом точка £0 распределена согласно плотности (17),

Среднее время реализации выборочного значения £0 пропорционально математическому ожиданию количества реализуемых пар (£01), По); которое равно в = (51/(5 (см., например, [2]), Близость величины в к единице характеризует эффективность метода исключения.

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

Технология 4. Конструируем сначала плотность /(1)(и) (и € и С Д^) вектора £(1), для которого существует эффективный алгоритм (формула) численной реализации £01) = (этот алгоритм используется затем в первом пункте алгоритма метода исключения). Для, построения, функции /(1)(и) можно использовать весь арсенал конструирования моделируемых плотностей, (в частности,, технологии, 1-Ъ). Далее преобразуем плотность /(1)(и) таким образом,, чтобы она трансформировалась в функцию д(и), пропорциональную "немоделируемой" плотности, /(и) (по сути мы "портим" моделируемую плотность /(1)(и)у). Одним из простейших преобразований является умножение плотности / (1)(и) на, мало меняющуюся ф ункцию У (и):

д(и) = / (1)(и) У (и), и € и; где 0 < А < У (и) < В (20)

и (В — А) — близкая, к нулю положительная величина. В качестве мажоранты тогда, можно взять д(1)(и) = В/(1)(и). Плотность, пропорциональная этой, функции, очевидно, равна, /(1)(и). Интегрируя неотрицательные функции д(1)(и) м д(и) по области и с учетом соотношения А/(1)(и) = Ад(1)(и)/В < д(и), получаем А(5(1)/В < (5, и тогда, в < В/А, т. е. при А « В величина в невелика (близка к единице) и соответствующий алгоритм метода исключения может считаться эффективным, (экономичным).

Для удобства выкладок в равенстве (20) вместо плотности /(1)(и) можно рассматривать пропорциональную ей функцию д(1)(и) (опуская, к примеру, нормирующую константу) ,

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

, . / агсвтп\ , #(«)=( 2Н----1 и, 0<и<1.

/(п)

что д(п) = У(п) х д(1)(п), где д(1)(п) = п3 и У(п) = 2 + (агсвт п)/(5п), причем в силу монотонности функции агсвтп на интервале (0,1) выполнено неравенство 2 < У(п) < 2.1. Тогда д(п) < д(1)(п) = 2.1 п3, Плотность, пропорциональная мажоранте д(1)(п), равна /^(и) = 4и3, 0 < и < 1; соответствующая моделирующая формула ¿¡д1"1 = а,о [2]. Алгоритм метода исключения содержит следующие пункты,

1. Реализуются выборочное значение ^ по формуле ^ = а также величина

По = д(1)(£01)) = 2.1 а2 (С01))3- Точка (С01),П0) равномерно распределена в "подграфике" мажоранты д(1)(п).

2. Проверяется неравенство п0 < д^о^) или

10.5 7ГО!2 < 107Г + агсвт (21)

Если это неравенство выполнено, то точка (Со^, По) принадлежит "подграфику" функции д(п) и является, равномерно распределенной в данном множестве. Тогда, в качестве выборочного значения, С0 случайной вели чины С берется Со = Со^ • Если же неравенство (21) не выполнено, то повторяется, п. 1, и т. д.

Трудоемкость в (среднее число попыток розыгрыша пар (Со1),П0) Д° выполнения неравенства (21)) оценивается сверху величиной в < 2.1/2 = 1.05,

5. Использование приближения плотности и метода суперпозиции

Описанные в предыдущих разделах технологии связаны с применением "теоретически точных" численных методов моделирования выборочных значений случайных величин и векторов. Практическая реализация этих методов на ЭВМ может быть сопряжена с погрешностями (как правило, незначительными), связанными с применением датчиков псевдослучайных чисел и с машинными ошибками [2].

Как указывалось выше, в прикладных задачах часто приходится иметь дело с ситуацией, когда моделируемое распределение случайного вектора £ в области О с Яа задается "извне" (здесь прежде всего следует упомянуть различные вариации метода выборки по важности — см., например, [2]), При этом можно, в том числе, выбрать распределение, близкое к требуемому, из "банка" плотностей, созданного согласно технологиям 1-4,

Однако в ряде приложений (в том числе в представленном в разделе 8 диекретно-ето-хаетичееком алгоритме построения адаптивных сеток) более универсальным видится следующий подход. Вместо вектора £ будем моделировать вектор £, плотность распределения которого f(x) пропорциональна некоторому (как правило, полиномиальному или кусочно-полиномиальному) приближению функции f (х) вида

м

/(х) = СЬмf (х) = СУш({)хг(х), С = 1/с, с = Ьмf (у) йу. (22)

г=1

С

Аппроксимация Ьм f (х) из формулы (22) строится па сетке X(м) = {х1,..., хм}, Базисные полиномиальные функции 2(м) = {х1(х),... ,хм(х)} и коэффициенты Ш(м) = {и^),...,им (£)} определенным образом связаны с узлами сетки X(м \ В частности, коэффициенты Ш(м) являются, как правило, комбинациями значений { = ^(х1),..., f (хм)); чаще всего

иг({) = f (хг), г = 1,... ,М. (23)

С позиций теории приближения функций (см., например, [5]) функция Ьм f (х) должна обладать хорошими аппроксимационными свойствами, т.е. величина рв^,Ьмf) должна быть мала; здесь рв(д1,д2) = ||д1 —д2 Нв _ расстояние в соответствующем нормированном функциональном пространстве В (О). Достаточно хорошо развита Ь1-теория приближения плотностей [6], в которой рассматриваются также вопросы приближения

вида (/, Л) линейных функционалов (/, Л) = J / (х)Л(х) ¿х = ЕЛ(£), Однако в целом

о

ряде приложений численного статистического моделирования требуется рассматривать более сильные (по сравнению с р^) метрики пространств СР(С) и ЖР(С) (см., например, [2, 7]).

В нашем случае приближение Ьм / (х) должно обладать свойством моделируемоети [2, 7], что означает наличие эффективного алгоритма численного моделирования вектора £ согласно плотности (22). Поскольку функция / (х) представляет собой линейную комбинацию заданных базисных функций, то это наводит на мысль о применении метода дискретной суперпозиции (см., например, [2], а также раздел 3). Перепишем плотность (22) в виде

м ( )

/~(х) = ^ВДх); /г(х) = ^, Уг =

i=1 г

Выберем функциональный базис 2(м) таким образом, чтобы неотрицательные коэффициенты Ш(м) обеспечивши малость величины рв (/, Ьм/) и для случайных векторов £(г), распределенных согласно плотпостям fi(x) из (24), имелись эффективные алгоритмы численного статистического моделирования. В частности, должны быть выполнены соотношения

Хг(х) > 0 для х е Я4, (25)

) > 0, г =1,...,М. (26)

Тогда по аналогии с алгоритмом из раздела 3 можно выбрать номер т согласно вероятностям {Рг} го (24) и реализовать выборочное значение согласно плотности /т(х).

В работе [7] проведен подробный анализ известных функциональных базисов с точки зрения одновременного наличия у них свойств аппроксимации и моделируемоети. Оказалось, что далеко не все "классические" аппрокеимационные базисы являются моделируемыми. Так, функции базиса Лагранжа (см., например, [5])

м

Хг(х) = Д (х - х^-)/(хг - х^-), х е Я,

з=1,з=г

являются знакопеременными (т.е. требование (25) не выполнено). Аналогичные недостатки имеют тригонометрические базисы [8]. Отметим также, что в ряде прикладных задач кроме аппрокеимационных свойств и свойств моделируемоети требуется свойство устойчивости приближения (22) (см., например, [2, 5]).

В работе [7] показано, что наилучшими (с точки зрения сочетания свойств аппроксимации, моделируемоети и устойчивости) являются простейшие конечно-элементные приближения Стренга —Фикса [9, 10]: кусочно-постоянная и .мулы н. пшенная аппроксимации. Здесь порядок аппроксимации по шагу Л сетки X(м) относительно невелик (для функций из С2 (С) он второй), однако он обеспечивает коэффициенты вида (4), для которых условие (6) заведомо выполнено. Попытка увеличить порядок аппроксимации до четвертого предпринята в работе [11], в которой в качестве базисных функций из 2(м) рассмотрены кубические сплайны. Здесь обнаружились существенные трудности при нахождении коэффициентов Ш(м\ обеспечивающих оптимальный порядок аппроксимации и выполнение условия (26).

/хг(у) ¿у, Рг = С^)Уг. (24)

Так же, как в работе [7], можно отметить, что простейший вариант аппроксимации Стренга —Фикса — кусочно-постоянная аппроксимация — дает наиболее универсальный и относительно просто реализуемый вариант описанного выше алгоритма метода дискретной суперпозиции.

При реализации предлагаемой методологии приближение области С происходит следующим образом, В пространстве КЛ рассматривается прямоугольная система координат и в ней — равномерная сетка ^ с шагом К, состоящая из узлов = О^Н,... здесь ^ — целые числа. Выбираются элементарные кубы ("воксели" [3])

= (О^Н (О1 + 1)Н) х ... х К, № + 1)Н) , г = 1,... ,М, (27)

имеющие непустое пересечение с областью С. В каждом кубе (27) выбирается узел х. сетки X(м\ Если куб полностью принадлежит области С, то х _ центр этого куба:

X = (О? + 1/2)Н,..., ^ + 1/2)Н). (28)

Сложнее ситуация при неполной принадлежности множества области С. Здесь возможны варианты. Если шаг К сетки Z мал, то можно либо продолжить каким-либо образом функцию / (х) на все множество либо, наоборот, исключить соответствующий куб из множества (27); в обоих случаях область С заменяется на приближение С = и^А, а сетка X(м" формируется из узлов вида (28), Для таких подходов про-

С

свойство гладкости этой границы). Если подобное нарушение недопустимо, то следует определить способ выбора узла х внутри куба Далее полагаем

Ьм/(х) = /(х.) при X е 3., (29)

что определяет кусочно-постоянную аппроксимацию (интерполяцию) функции /(х). При этом функции х.(х) из представления (22) тождественно равны единице при х е и нулю иначе, В свою очередь, все плотности /.(х) из формулы (24) тождественно равны 1/Нл при х е и нулю иначе. Это означает, что на втором шаге метода дискретной суперпозиции выборочное значение £0 вектор а £ реализуется в соответствующем кубе согласно равномерной плотности распределения

£о = т + а1Н,... + ааЬ) . (30)

Если выбранный на первом шаге метода суперпозиции куб Цт является граничным, то при моделировании вектора £ можно использовать следующий простой факт (см., например, [2]),

Утверждение 1. Если ¿-мерная точка а равномерно распределена в области А1 С * ^«ш Л =1 Л, » оиа Рааи0М,Рио „.^еиа . пртаа0М-

ной подобласти, А С А1 объем,а А при условии, попадания в эту подобласть; при этом,

Р(а е А) = А/Ах.

Для граничного Цт реализуется выборочное значение вектора £0 по формуле (30), и в случае выполнения условия £0 е С оно принимается, иначе алгоритм метода суперпозиции реализуется заново. При программной реализации алгоритма метода суперпозиции можно не различать граничные и "внутренние" кубы 3т, а проводить проверку условия £0 е С для каждого выборочного значения, реализованного по формуле (30) на втором шаге алгоритма.

6. Применение квантильного метода

Для того чтобы приближение (22), (29) обладало хорошими аппрокеимационными свойствами, следует выбирать Л достаточно малым. При этом параметр М может быть весьма большим. Это ведет к определенным проблемам, связанным с хранением значений (29) в оперативной памяти ЭВМ. Кроме того, возникают трудности реализации номера т

Напомним (см., например, [2]), что стандартным алгоритмом численного моделирования выборочного значения т целочисленной случайной величины п с распределением Р(п = г) = Рг (в нашем случае Рг = С/(хг)Л4) является следующий.

Алгоритм 1. Реализуем значение В := а0 и полагаем г := 1. Производим переприсваивание

В := В - Рг. (31)

Если новое значение В не положительно, то полагаем, т = г, в противном случае производим переприсваивания г := г + 1 и (31) и вновь производим проверку В на положительность и т. д.

м

Средняя трудоемкость в алгоритма 1 равна 5 = а + ( ^ гРг I х Ь; здесь а — затраты

на моделирование стандартного случайного числа а0, Ь — затраты на одно сравнение ВМ

Трудоемкость в можно существенно уменьшить, если применить так называемый квантильный метод моделирования дискретных случайных величин (см., например, [2]), который состоит в следующем.

Зададим целое число К и разобьем интервал (0,1) на К равных частей [(? - 1)/К, ?/К), ? = 1,..., К, Далее построим массив целых чисел {X, }К=1 такой, что

X,- = ш1п{к : Я = Р1 + Р2 + ... + Р* > (? - 1)/К},

называемый массивом нижних квантилей. Этот массив задает номер к элемента массива {Яг; г = 1, 2,..., М}, с которого следует начинать поиск "вверх" (т.е. как и в алгоритме 1, вычитать величины , д = к, к + 1,..., из а0 с помощью переприсваивания (31) до получения первого отрицательного значения) при (? - 1)/К < а < ?/К.

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

Алгоритм 2 (квантильный метод).

1. Реализуем выборочное значение а0 равномерно распределенной, в интервале (0,1) случайной величины, а.

2. Вычисляем, номер п полуинтервала, [(п - 1)/К, п/К), в который попадает а0, по формуле моделирования равномерного дискретного распределения (см., например, [1]^):

п =[Ка0] + 1, (32)

здесь [Т] — целая, часть числа Т.

3. Реализуем последовательный поиск "снизу вверх" начиная с ЯХп.

Алгоритм 2 требует использования дополнительной (по сравнению с алгоритмом 1) оперативной памяти ЭВМ для хранения массивов номеров {X,} и сумм }■ Тестовые вычисления показали, что следует выбирать число К квантилей [(? - 1)/К, ?/К) так,

чтобы выполнялось соотношение M/K « 2 (при этом трудоемкость s1 алгоритма 2 с ростом M практически не меняется).

Отметим, что можно построить эффективную реализацию алгоритма 2 и в случае, когда число M относительно мало и D0 > r =1 + 1/ mini=1,...,M Pj (здееь D0 — максимально допустимый размер массива в выбранном языке программирования). Тогда можно взять число квантилей как целую часть K = [r]; при этом в каждом квантиле [(j -1)/K,j/K) будет не более одного значения Rk и в пункте 3 алгоритма 2 потребуется не более одного вычитания.

Заметим также, что в целом ряде ситуаций целесообразно использовать вместо кван-тильного метода алгоритм Уолкера или даже бинарный поиск, однако алгоритм 2 является более универсальным и простым для реализации на ЭВМ [2].

7. Случай равномерного распределения

Представленные выше алгоритмы допускают эффективные модификации в случае, когда f (x) = 1/G при x б G и f (x) = 0 при x </ G (G — объем компактной области G), т. e, случайный вектор £ равномерно распределен в G. Здесь кусочно-постоянное приближение LM f (x), описанное в разделе 5, дает одинаковые вероятности Pj = hd/G1, i = 1,..., M (в этом случае G1 — область G, дополненная теми частями граничных кубов Qm, которые не входят в G), Поэтому при выборе номера m в алгоритме метода суперпозиции вместо алгоритма 1 (или его модификации — квантильного алгоритма 2) можно применить простую формулу (типа (32)) моделирования дискретного равномерного распределения (см., например, [2]): m = [Ma0] + 1.

Как уже отмечалось, при малом шаге h вспомогательной сетки Z могут возникнуть проблемы с сохранением информации об узлах (28) и значениях (29) в оперативной памяти ЭВМ, Для равномерного распределения можно обходить эту трудность, пользуясь, в частности, тем обстоятельством, что все значения (29) одинаковы. Кроме того, можно использовать утверждение 1, например, из элементарных кубов Qj из (27) сформировать прямоугольный параллелепипед

максимального объема П, полностью принадлежащий области С (будем называть такой параллелепипед вписанным в область С), и с вероятностью П/С разыгрывать факт принадлежности выборочного значения £0 этому параллелепипеду. Если £0 е П, то реализация его выборочного значения происходит по формулам типа (30):

иначе в области С \ П применяется алгоритм метода суперпозиции.

Можно (а чаще всего нужно) строить "вложенную" процедуру вписывания параллелепипедов максимального объема, для которой очередной параллелепипед строится в множествах типа С \ П, В пределе получаются конструкции, аналогичные описанным в разделе 5, с той разницей, что только подмножества вида (27) и (33) получаются разной формы и разного объема.

Заметим также, что параллелепипеды (33) малого объема можно использовать вместо кубов (27) в качестве элементов разбиения области (вокселей) с заменой формулы

П = (a(1), b(1)) х ... х (a(d),

(33)

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

£о = (a(1) + (b(1) - a(1))a1,..., a(d) + (b(d) - a(d))ad)

(34)

(30) на соотношение (34) в соответствующем методе суперпозиции; это предусмотрено в программном модуле AITricks GeomRandom (см, раздел 9 и сайт [1]),

Кроме того можно пытаться вписывать в область G (и использовать в качестве вокселей) другие стандартные фигуры, для которых имеются формулы реализации равномерно распределенной точки, В частности, в случае использования триангуляции двумерной области (или поверхности) требуется применение эффективного алгоритма моделирования случайного вектора £ (двумерного или трехмерного), равномерно распределенного в треугольнике с вершинами r2, r3 (см., например, [12]), Имеем £ = ri + (r2 — ri)n(1) + (r3 — г2)п(2), где вектор (П(1),П(2)) равномерно распределен в "стандартном" треугольнике {(u,v) :0 < u < 1,0 <v< u}, Для реализации выборочных значений (По^По^) наиболее эффективным является следующий алгоритм:

(1) (2) (1) ^ (2) (1) 1 (1) (2) 1 " (2) / а „

По := аь по := «2/ если По < По , m0 По := 1 — ПО , По := 1 — По (здесь := — знак переприсваивания). Этот алгоритм является более экономичным, чем формулы

По1"1 := л/аГ, По2"* := рекомендованные в [12],

Известны также алгоритмы моделирования случайных точек, равномерно распределенных в других "примитивных" фигурах (круг, сфера, усеченный конус, тор и др.). Так, формулы

¿¡о1"1 = Ry/cn sin 27го!2, ¿2) = iV^cos27ra2 (35)

дают реализацию вектора £ = (£(1),£(2)); равномерно распределенного в круге радиуса R, а формулы

Со1) = sin ezcos фс, ^2) = rzsin ezsin фс, ¿3) = rzcos ez, (36)

где cos вz = 1 — 2а1, r^ = R(a2)1/3, ф^ = 2па3, дают реализацию вектора £ =

(£(1),£(2),£(3)); равномерно распределенного в шаре радиуса R (см., например, [2]), Следует, однако, отметить, что для фигур Н, отличных от параллелепипеда (33), гораздо труднее строить приближения дополнений G \ Ни реализовывать на них алгоритм метода суперпозиции,

£

G

G

G С П) и реализуется случайная точка (34), Если

£о е G, (37)

то соответствующее выборочное значение принимается, иначе снова применяется формула (34) вплоть до того момента, когда будет выполнено соотношение (37), Согласно утверждению 1, реализованное таким образом выборочное значение соответствует рав-

G

Метод исключения будет тем эффективнее, чем раньше (в среднем) будет выполнено соотношение (37), Известно (см., например, [2]), что среднее число обращений к формуле (34) до выполнения (37) равно отношению объемов s = П/G, Таким образом,

П

добиваться того, чтобы величина s была близка к единице:

s = П/G > 1.

(38)

В большом числе случаев добиться выполнения соотношения (38) не удается, и поэтому описанные "прямые" методы, связанные с "вокеелизацией" и с применением алгоритма метода суперпозиции и его модификаций, оказываются более экономичными (здесь, однако, метод исключения может пригодиться при моделировании точек вблизи границы области — см, раздел 5), Аналогичное замечание можно сделать и для методов исключения, связанных с "погружением" области G в другие стандартные области (например, в окружность или круг с применением формул (35), (36)),

8. Итерационный дискретно-стохастический метод построения адаптивных сеток

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

В качестве примера такого применения рассмотрим проблему построения адаптивных сеток на сложных многомерных компактных областях. Использование адаптивных сеток в задачах численного моделирования позволяет повысить точность приближенного решения задачи без существенного увеличения числа узлов (см., например, [3, 13-17]), "Сгущения" узлов (т. е, их распределение согласно заданной плотности f (x)) часто требуются в подобластях, где либо само решение, либо его градиент принимают большие значения. Кроме того, важные приложения адаптивных сеток (такие, как обработка изображений, визуализация данных и т, п.) связаны с учетом сложной геометрии объемных областей и их поверхностей.

Среди всех видов методов построения сеток можно выделить важный класс, в котором адаптивные сетки получаются в результате отображения "вычислительной" области Q С RQ на "физическую" область X, Как правило, k = d (для "объемных" сеток) или k = d — 1 (для "поверхностных" сеток), К указанному классу относятся метод эк-вираепределения [16], метод Томпсона [15], эллиптические методы [17] и др. Все они, а также алгебраические методы и метод конформных отображений [13, 14] требуют решения сложных систем нелинейных дифференциальных уравнений с частными производными (при этом приходится накладывать довольно жесткие условия гладкости на граничные и начальные условия, а также на способы задания области). Еще один недостаток перечисленных методов связан с трудностями автоматизации и распараллеливания соответствующих численных схем.

Преодолеть указанные недостатки позволяет подход, предложенный в работе [3] и подразумевающий использование стохастических нейросетевых моделей самоорганизации, таких как самоорганизующиеся карты Т. Кохонена (Self-Organizing Maps — SOM), растущий нейронный газ (Growing Neural Gas — GNG), растущие клеточные структуры (Growing Cell Structures — GCS) [18],

Опишем соответствующую постановку задачи, В "физической" области X (или на ее поверхности Gx) требуется построить сетку X(M) = |xb..., xM}, распределение узлов которой соответствует заданной плотности f (x), x G Rdx. Структура этой сетки (порядок и структура расположения узлов) задается "картой" Q(M) = (qi,..., qM} и системой так называемых нейронов E(M) = (e1,... ,eM} (где ei = (q^ x^)), определяющих соответствие между сетками X(M) и Q(M\

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

ровании обучающего множества S(T) = {£0(1),..., £0(T)} в виде выборки из вероятностного распределения случайного вектора имеющего плотноеть f (x); здееь T — количество итераций, £0(t) G X (или £0(t) G GX; t = 1,...,T), Кроме того, с помощью специальных коэффициентов обучения 94j (t, q^) G [0,1) на каждом шаге итерации устанавливаются латеральные связи между нейронами ei и е.,-. В результате получается последовательность сеток X(M^(t) = (xi(t),...,xM(t)}; при этом требуется выполнение соотношения

X(M) « X(M) = lim X(M)(t) « X(M)(T). (39)

t—y^o

Знаки приближенных равенств в (39) означают не только малость расстояний р(хг(сх>),хг), р(х*(го), Xi(T)) и p(xi(T), Xi), где

р(х, у) = г(1) - у(1))2 + . . . + (а**) - у х=(Ж(1),...,^)), у = (?/(1),---,Л

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

Алгоритм 3 [3, 18]. 1. Устанавливаются, начальные положения, узлов сетки X(M )(0) = {xi(0),..., xm (0)}.

2. На каждой итерации с номером t = 1,..., T выполняются следующие действия:

а) выбирается очередной, элемент £0(t) выборки S(T);

б) вычисляются расстояния p(£0(t), x^t — 1)) от точки £0(t) до всех узлов x^t — 1) и выбирается, ближайший к £0(t) узел, xm(t — 1) в соответствии, с условием

т = arg rnn р ^С^ xi(t — 1));

i=1,...,M

такой узел, xm(t — 1) называют победителем;

ej проводится корректировка положений всех узлов в соответствии, с формулой

xi(t) = xi(t — 1) + 0qm (t, qi) (^(t) — xi(t — 1)) (40)

для, всех i = 1,..., M.

На каждой итерации алгоритма 3 узлы сетки сдвигаются к случайной точке £0(t). Поэтому в местах высокой концентрации элементов выборки постепенно скапливается все больше узлов, за счет чего достигаются сгущения сетки. В работе [3] показано, что при T — оо алгоритм 3 ведет к выполнению аналога принципа эквираепределения, т. е. к получению требуемой плотности сетки, определяемой функцией f (x). Весьма нетривиальной (с точки зрения обоснованного применения алгоритма 3) является проблема выбора коэффициента обучения 04m (t, qi) из формулы (40).

9. Программный модуль AITricks GeomRandom

При реализации алгоритма 3 определенную трудность представляет собой пункт 2а, в котором требуется численно моделировать многомерную (чаще всего двумерную или трехмерную) случайную точку (случайный вектор) £0, распределенную согласно заданной плотности f (x). Здесь наиболее перспективным видится применение технологий приближения плотностей, описанных в разделах 5-7. Соответствующие рекомендации использованы при создании программного модуля AITncks GeomRandom [1].

GeorriRandom представляет собой кросс-платформенную библиотеку С -классик и шаблонов для моделирования случайных точек внутри и на границе одно-, двух- и трехмерных фигур. Библиотека поддерживает реализацию случайных точек как на фигурах, полученных с помощью булевых операций над примитивными фигурами (куб, параллелепипед, круг, сфера, усеченный конус, тор и др.), так и на сложных объектах, заданных поверхностной триангуляцией, У пользователя имеется возможность загрузить файл с CAD .моделью в одном из стандартных форматов, тем самым обеспечивая совместимость с такими распространенными (MD-пакетами, как Autodesk AutoCAD/Inventor и др. Реализована экономичная версия вокселизации (разбиения области на простые подобласти) с целью применения соответствующего метода суперпозиции, В случае большого количества подобластей разбиения предусмотрено использование квантиль-ного метода (см, раздел 6),

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

Заключение

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

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

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

fl] HTTP://aitricks.com/products/geomrandom/

[2] Михайлов Г.А., Войтишек A.B. Численное статистическое моделирование. Методы Монте-Карло. М.: Изд. центр "Академия", 2006.

[3] Нечаева О.И. Нейросетевые модели, алгоритмы и комплекс программ для построения адаптивных сеток. Дисс. ... канд. физ.-мат. наук. Новосибирск, НГУ, 2007.

[4] Дейвид Г. Порядковые статистики. М.: Наука, 1979.

[5] Бахвалов Н.С. Численные методы. М.: Наука, 1975.

[6] Деврой Л., Дерфи Л. Непараметрическое оценивание плотности (Li). М.: Мир, 1988.

[71 voytishek A.v., Kablukova E.G. Using the approximation functional bases in Monte Carlo methods // Rus. J. of Numerical Analysis and Math. Modelling. 2003. Vol. 18, No. 6. P. 521-542.

[8] Березин И.С., Жидков Н.П. Методы вычислений. М.: Физматгиз, 1962.

[9] Стренг Г., Фикс Дж. Теория метода конечных элементов. М.: Мир, 1977.

[10] Марчук Г.И., Агошков В.И. Введение в проекционно-сеточные методы. М.: Наука, 1981.

[11] Милосердое В.В. Дискретно-стохастические численные алгоритмы со сплайн-восполнениями. Дисс. ... канд. физ.-мат. наук. Новосибирск, НГУ, 2006.

[12] Махоткин О.А. Моделирование точек, равномерно распределенных в многоугольниках // Сиб. журн. вычисл. математики. 2002. Т. 5, № 4. С. 331-350.

[13] Годунов С.К., Прокопов Г.П. О расчетах конформных отображений и построении разностных сеток // Журн. вычисл. математики и матем. физики. 1967. Т. 7. С. 1031-1059.

[14] Gordon W.J., Thiel L.C. Transfinite mappins and their applications to grid generations // Numerical Grid Generation. Appl. Math, and Comput. 1982. Vol. 2/3. P. 171-192.

[15] Thompson J.F., Warsi Z.U.A., Mastin C.W. Numerical Grid Generation: Foundations and Applications. Amsterdam (Netherlands): North-Holland, 1985.

[16] Хакимзянов Г.С., Шокин Ю.И., Барахнин В.Б., Шокина Н.Ю. Численное моделирование течений жидкости с поверхностными волнами. Новосибирск: Изд-во СО РАН, 2001.

[17] Лисейкин В.Д., Лебедев А.е., Китаева И.А. Универсальный аналитический метод построения разностных сеток. Новосибирск: НГУ, 2004.

[18] KOHONEN Т. Self-Organizing Maps. Springer-Verlag, 2001.

Поступила в редакцию 13 сентября 2010 г., с доработки — 20 апреля 2011 г.

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