Main menu
Численные методы

Численные методы (100)

Спектральный анализ временных рядов: оконное преобразование Фурье

Проблема нестационарности в цифровой обработке сигналов

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

Однако большинство реальных сигналов в природе и технике являются нестационарными. Мелодия состоит из нот, которые звучат последовательно. Человеческая речь — это чередование согласных и гласных звуков с разным спектром. Землетрясение имеет четкое начало, фазу максимальных разрушений и затухание. Если мы применим классическое преобразование Фурье к 10-секундной аудиозаписи песни, мы получим один усредненный спектр. Этот спектр покажет нам все ноты, которые присутствовали в песне, но он абсолютно ничего не скажет о том, когда именно была сыграна каждая нота. Мы теряем информацию о времени. Для решения этой фундаментальной проблемы было изобретено Оконное преобразование Фурье (Short-Time Fourier Transform, STFT).

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

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

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

Весовые окна и предел Габора (принцип неопределенности)

На практике просто грубо обрезать сигнал (прямоугольное окно) нельзя. Это порождает резкие скачки на краях кадра, что по законам математики приводит к размазыванию спектра (эффект спектральной утечки — spectral leakage). Поэтому инженеры используют гладкие весовые окна (окна Ханна, Хэмминга, Блэкмана), которые плавно сводят амплитуду сигнала к нулю на краях кадра, минимизируя искажения.

Однако оконное преобразование Фурье имеет жесткое физико-математическое ограничение, аналогичное квантовому принципу неопределенности Гейзенберга. Оно известно как предел Габора. Суть его в том, что мы не можем одновременно получить идеальное разрешение и по времени, и по частоте. Если мы возьмем короткое временное окно, мы будем точно знать, когда произошло событие, но спектр станет размытым (плохое частотное разрешение). Если мы возьмем длинное окно, мы получим идеальное разрешение по частоте (точно отличим близкие ноты), но размоем сигнал во времени (потеряем резкость быстрых ударов барабана). Инженеру всегда приходится искать компромисс, подбирая размер окна под конкретную задачу, что и послужило стимулом для дальнейшего развития вейвлет-анализа.

Подробнее

Методы сглаживания данных: скользящие средние и экспоненциальное сглаживание

Борьба с высокочастотным шумом в реальных измерениях

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

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

Простое и взвешенное скользящее среднее (SMA и WMA)

Самым известным и интуитивно понятным алгоритмом является простое скользящее среднее (Simple Moving Average, SMA). Принцип его работы тривиален: мы берем «окно» заданного размера (например, 5 точек), суммируем значения внутри этого окна и делим на 5. Полученное число становится новым сглаженным значением для центральной точки окна. Затем окно сдвигается на один шаг вправо, и операция повторяется. Чем шире окно, тем сильнее сглаживается график, но тем сильнее он отстает от резких изменений реального тренда (эффект запаздывания).

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

Экспоненциальное сглаживание и фильтр Савицкого-Голея

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

Однако все методы усреднения имеют фатальный недостаток при обработке физических и химических спектров: они «срезают» острые пики полезного сигнала. Для сохранения формы пиков и точного вычисления производных в 1964 году был разработан Фильтр Савицкого-Голея. Этот метод проводит локальную полиномиальную регрессию (по методу наименьших квадратов) внутри движущегося окна. Сглаженное значение вычисляется не арифметическим усреднением, а подстановкой в найденный полином (обычно 2-й или 3-й степени). Благодаря этому фильтр Савицкого-Голея великолепно сглаживает шум, сохраняя при этом амплитуду, ширину и центры физических резонансов в спектроскопии.

Подробнее

Численные методы в квантовой механике: решение уравнения Шредингера

Вычислительная квантовая физика

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

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

Метод Нумерова для одномерных задач

Когда мы ищем стационарные (не зависящие от времени) состояния системы, уравнение Шредингера сводится к задаче на собственные значения. Для одномерных задач (например, частица в сложном потенциальном поле) классическим и крайне элегантным подходом является метод Нумерова. Это специализированный метод интегрирования обыкновенных дифференциальных уравнений второго порядка вида y'' = f(x)y, к которому и относится стационарное уравнение Шредингера.

Метод Нумерова базируется на разложении Тейлора и обладает впечатляющим четвертым порядком точности O(h^4), при этом требуя вычисления потенциала только в узлах сетки (без необходимости рассчитывать промежуточные точки, как в методе Рунге-Кутты). Алгоритм используется вместе с методом пристрелки (стрельбы). Мы задаем пробное значение энергии (которое является искомым собственным значением) и интегрируем уравнение с двух сторон (от плюс и минус бесконечности) навстречу друг другу. Точное значение энергии соответствует тому случаю, когда обе ветви решения гладко сшиваются в точке встречи. Этот подход до сих пор активно применяется для расчета состояний двухатомных молекул.

Временная эволюция и схема Кранка-Николсон

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

Использование явных разностных схем для уравнения Шредингера приводит к вычислительной катастрофе: они не сохраняют норму волновой функции (то есть полная вероятность обнаружить частицу перестает быть равной единице) и часто безусловно неустойчивы. Спасением является схема Кранка-Николсон. Она является полунеявной разностной схемой второго порядка точности по времени и пространству. Ее важнейшее математическое свойство — унитарность. Оператор перехода во времени в схеме Кранка-Николсон является строго унитарным, что гарантирует абсолютное сохранение нормы волновой функции на любом временном шаге. На каждом шаге алгоритм требует решения системы линейных уравнений с трехдиагональной (или блочно-трехдиагональной) матрицей, что легко реализуется алгоритмом прогонки. Схема Кранка-Николсон стала индустриальным стандартом для одномерной и двумерной квантовой динамики.

Подробнее

Метод характеристик для квазилинейных уравнений в частных производных

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

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

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

Геометрический смысл и семейство кривых

С геометрической точки зрения, решение УЧП первого порядка для функции двух переменных u(x,t) можно представить как интегральную поверхность в трехмерном пространстве (x, t, u). Метод характеристик ищет кривые, лежащие на этой поверхности. Эти кривые называются характеристиками. Вдоль характеристики изменение искомой функции происходит только за счет изменения одного параметра (часто это время t или некий фиктивный параметр s вдоль кривой).

Математически алгоритм требует составления так называемой характеристической системы ОДУ. Решая эту систему (аналитически, если это возможно, или численно, с помощью методов Рунге-Кутты), мы получаем семейство характеристических кривых на плоскости (x,t). Вдоль каждой такой кривой значение искомой функции u либо остается постоянным (для простого уравнения переноса), либо меняется по известному простому закону. Зная начальные условия задачи (профиль функции в момент времени t=0), мы можем «протащить» эти значения вдоль характеристик в любую точку будущего времени, тем самым построив полное решение исходной задачи.

Формирование ударных волн и опрокидывание

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

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

Подробнее

Численные методы решения стохастических дифференциальных уравнений (СДУ)

Когда в уравнения вмешивается случайность

Классические дифференциальные уравнения детерминированы: если вы знаете точные начальные условия и уравнения движения, вы можете со 100% точностью предсказать будущее системы на любой срок. Однако в реальном мире идеальной предсказуемости не существует. На молекулу газа действуют случайные соударения теплового движения. На крыло самолета воздействует турбулентность атмосферы. На цену акции на бирже влияют миллионы непредсказуемых макроэкономических и психологических факторов. Для математического моделирования таких процессов используются стохастические дифференциальные уравнения (СДУ).

СДУ состоит из двух компонентов: детерминированного сноса (тренда), который описывает предсказуемую эволюцию системы, и стохастической диффузии (шума), которая моделирует случайные флуктуации. Источником этого шума математически выступает Винеровский процесс (или математическое броуновское движение). Главная проблема СДУ заключается в том, что траектории Винеровского процесса нигде не дифференцируемы в обычном смысле. Поэтому для СДУ не работает классический анализ Ньютона-Лейбница; вместо него применяется специализированный стохастический анализ Ито (или Стратоновича), где появляется знаменитая поправка Ито. Аналитическое решение СДУ возможно лишь для простейших линейных моделей (например, уравнение геометрического броуновского движения в модели Блэка-Шоулза). В 99% практических задач требуются численные методы.

Метод Эйлера-Маруямы: база стохастического моделирования

Самым простым и исторически первым численным методом для СДУ является схема Эйлера-Маруямы (названная в честь Леонарда Эйлера и японского математика Гисиро Маруямы). Этот метод является естественным стохастическим обобщением классического метода Эйлера для обычных ОДУ.

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

Метод Мильштейна и сильная vs слабая сходимость

Для повышения точности интегрирования СДУ советский и немецкий математик Григорий Наумович Мильштейн предложил алгоритм, который добавляет к схеме Эйлера-Маруямы специальный поправочный член. Этот член (содержащий производную функции диффузии) выводится с использованием стохастического разложения Тейлора-Ито. Метод Мильштейна увеличивает сильный порядок сходимости до 1.0.

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

Подробнее

Методы экстраполяции Ричардсона и процесс Ромберга для численного интегрирования

Как получить высокую точность из грубых вычислений?

В вычислительной математике существует изящный и невероятно мощный прием, позволяющий искусственно повысить точность практически любого численного алгоритма без изменения его внутренней логики. Этот метод называется экстраполяцией Ричардсона, в честь британского физика Льюиса Фрая Ричардсона, который активно применял его в начале 20 века при решении задач метеорологии и гидродинамики. Идея Ричардсона настолько красива, что ее часто называют математическим фокусом или «магией» ускорения сходимости.

Допустим, у нас есть простой алгоритм для вычисления какой-либо величины (производной, определенного интеграла или решения ОДУ), который имеет низкий порядок точности. Пусть его ошибка пропорциональна квадрату шага сетки O(h^2). Если мы посчитаем значение с шагом h, мы получим грубый ответ. Если мы посчитаем значение с вдвое меньшим шагом (h/2), мы получим более точный ответ (ошибка уменьшится в 4 раза). Идея Ричардсона заключается в том, чтобы взять эти два приближенных результата и алгебраически скомбинировать их так, чтобы главный член ошибки O(h^2) взаимно уничтожился (вычелся). В результате мы получаем новую оценку, погрешность которой пропорциональна уже O(h^4) — то есть алгоритм второго порядка мгновенно превращается в алгоритм четвертого порядка практически бесплатно!

Интегрирование Ромберга: рекурсивная экстраполяция

Наиболее известное и триумфальное применение экстраполяции Ричардсона было предложено Вернером Ромбергом в 1955 году для задачи численного интегрирования. Алгоритм получил название метод (или процесс) Ромберга. Базой для этого метода служит самая простая и грубая квадратурная формула — составной метод трапеций.

Формула Эйлера-Маклорена доказывает, что ошибка метода трапеций раскладывается в бесконечный ряд только по четным степеням шага h (h^2, h^4, h^6 и т.д.). Алгоритм Ромберга использует этот факт на полную мощность. Вычисления организуются в виде треугольной таблицы. В первый столбец записываются результаты вычисления интеграла методом трапеций с последовательным делением шага пополам (1 разбиение, 2, 4, 8, 16...). Это самая ресурсоемкая часть алгоритма. Затем начинается магия экстраполяции.

Построение треугольной таблицы и феноменальная сходимость

Второй столбец таблицы формируется путем применения экстраполяции Ричардсона к соседним элементам первого столбца. Удивительно, но элементы второго столбца математически строго совпадают с результатами, которые дал бы метод Симпсона (точность O(h^4)). Но мы на этом не останавливаемся! Мы применяем ту же формулу экстраполяции (с измененными коэффициентами) к элементам второго столбца, формируя третий столбец, ошибка которого имеет порядок O(h^6) (метод Буля). Процесс продолжается до тех пор, пока мы не дойдем до вершины треугольника.

Последнее число в этой таблице представляет собой экстраполированное значение интеграла при шаге h, стремящемся к нулю. Метод Ромберга обладает феноменальной скоростью сходимости для гладких функций. Чтобы получить 10 верных знаков после запятой, методу трапеций могут потребоваться миллионы узлов сетки. Метод Ромберга достигает той же машинной точности, вычислив функцию всего в нескольких десятках точек. Этот алгоритм стал классическим примером того, как глубокое понимание структуры погрешности (ряда Тейлора) позволяет инженерам многократно экономить вычислительные мощности суперкомпьютеров.

Подробнее

Абсолютная устойчивость и барьеры Далквиста в решении дифференциальных уравнений

Поиск идеального численного алгоритма

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

Для формального анализа устойчивости в вычислительной математике используется простое линейное тестовое уравнение Далквиста: y' = lambda * y, где lambda — комплексное число с отрицательной вещественной частью. Аналитическое решение этого уравнения — затухающая экспонента, стремящаяся к нулю. Логично требовать, чтобы и численное решение, выдаваемое компьютером при любом (даже большом) шаге интегрирования h, также убывало и не уходило в бесконечность. Алгоритмы, обладающие таким свойством для любых lambda в левой полуплоскости, называются А-устойчивыми (абсолютно устойчивыми). Это свойство является Святым Граалем для разработчиков численных методов.

Барьерные теоремы Далквиста: жестокая математическая реальность

В 1956 и 1963 годах шведский математик Жермен Далквист опубликовал серию теорем, которые потрясли мир вычислительной математики. Они установили непреодолимые теоретические пределы для целого класса популярных алгоритмов — линейных многошаговых методов (ЛММ), к которым относятся методы Адамса и формулы дифференцирования назад (BDF).

Первый барьер Далквиста доказал, что порядок точности любого устойчивого явного линейного многошагового метода (k-шагового) не может превышать k при нечетном k, и k+2 при четном. Это означает, что мы не можем бесконечно повышать точность алгоритма, не теряя его устойчивости.

Второй барьер Далквиста оказался еще более суровым. Он математически строго доказал три вещи: 1) Ни один явный линейный многошаговый метод не может быть А-устойчивым. (Поэтому явные методы бесполезны для жестких систем). 2) Порядок точности любого А-устойчивого неявного линейного многошагового метода не может быть больше 2. 3) Среди всех А-устойчивых методов второго порядка наименьшую ошибку усечения дает классический неявный метод трапеций.

L-устойчивость и пути обхода барьеров

Вторая теорема Далквиста казалась приговором: если мы хотим абсолютную устойчивость для многошаговых методов, мы застряли на низкой точности (второй порядок). Однако инженеры нуждались в высокоточных алгоритмах для жестких задач. Как обойти теорему?

Решение было найдено в двух направлениях. Первое — это смягчение требований. Было введено понятие «жесткой устойчивости» (stiff stability). Формулы дифференцирования назад (BDF) до 6-го порядка не являются А-устойчивыми (вблизи мнимой оси у них есть небольшие зоны неустойчивости), но они жестко устойчивы и прекрасно работают на практике. Второе направление — выход за рамки линейных многошаговых методов. Неявные методы Рунге-Кутты (такие как методы Радо или Гаусса-Лежандра) не подчиняются теоремам Далквиста. Они могут быть А-устойчивыми и при этом иметь любой, сколь угодно высокий порядок точности (например, метод Гаусса с s стадиями имеет порядок 2s). Кроме того, для борьбы с бесконечно быстрыми процессами (когда действительная часть lambda стремится к минус бесконечности) было введено еще более строгое свойство — L-устойчивость. L-устойчивые алгоритмы (например, неявный метод Эйлера) мгновенно обнуляют высокочастотные компоненты, что делает их идеальными для моделирования ударных волн и резких переключателей в транзисторах.

Подробнее

Численное решение интегральных уравнений Фредгольма и регуляризация Тихонова

Обратные задачи и некорректность по Адамару

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

В начале 20 века французский математик Жак Адамар сформулировал три условия корректно поставленной физической задачи: решение должно существовать, оно должно быть единственным, и оно должно непрерывно зависеть от исходных данных (устойчивость). Уравнения Фредгольма первого рода грубо нарушают третье условие. Интегрирование — это процесс сглаживания. Обратная операция (поиск подынтегральной функции) аналогична дифференцированию. Как следствие, даже микроскопический шум или погрешность в измерениях правой части уравнения приводит к гигантским, неконтролируемым осцилляциям в вычисленном решении. При попытке решить такую задачу обычным методом дискретизации мы получим матрицу, число обусловленности которой стремится к бесконечности.

Регуляризация: искусство разумного компромисса

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

В методе Тихонова вместо того, чтобы искать функцию, которая строго обнуляет невязку интегрального уравнения, мы минимизируем специальный функционал (функционал Тихонова). Этот функционал состоит из двух частей. Первая часть — это квадрат нормы невязки (требование, чтобы решение соответствовало экспериментальным данным). Вторая часть — это стабилизатор (штрафной член), который обычно представляет собой квадрат нормы производной искомой функции. Стабилизатор наказывает алгоритм за излишнюю «изрезанность» и осцилляции решения, принудительно заставляя ответ быть гладким.

Выбор параметра регуляризации и L-кривая

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

Для поиска оптимального баланса разработаны мощные численные критерии. Наиболее известным является принцип невязки Морозова: параметр подбирается так, чтобы невязка решения была в точности равна уровню погрешности измерительного прибора. Другим популярным графическим методом является анализ L-кривой (зависимости нормы решения от нормы невязки в логарифмическом масштабе). Точка максимальной кривизны (угол буквы «L») обычно указывает на оптимальный параметр. Метод регуляризации Тихонова (и его статистический аналог — гребневая регрессия) стал фундаментом для всей современной вычислительной томографии, радиолокации и обработки изображений с телескопов.

Подробнее

Метод Галеркина: проекционный подход к решению краевых задач

Переход от дифференциальных уравнений к вариационным задачами

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

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

Пробные и тестовые функции: слабая формулировка

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

Затем исходное дифференциальное уравнение умножается на весовую (или тестовую) функцию и интегрируется по всей расчетной области. В классическом методе Бубнова-Галеркина в качестве тестовых функций выбираются те же самые функции, что и в базисе пробных функций. Приравнивая полученный интеграл от невязки к нулю, мы гарантируем, что ошибка нашего приближения не содержит проекций на выбранный базис. Интегрирование по частям (формула Грина) позволяет перебросить часть производных с неизвестной функции на гладкую тестовую функцию. Это приводит к так называемой «слабой формулировке» задачи: требования к гладкости искомого решения радикально снижаются. Уравнение второго порядка теперь можно решать, используя базисные функции, имеющие лишь первые производные.

Сведение к СЛАУ и сходимость

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

Если дифференциальный оператор исходной задачи является самосопряженным и положительно определенным (как, например, в задачах теории упругости или теплопроводности), то матрица Галеркина получается симметричной. Это позволяет использовать для ее решения сверхбыстрые итерационные алгоритмы, такие как метод сопряженных градиентов. Точность метода Галеркина возрастает при увеличении количества базисных функций. По теореме Сеа, метод Галеркина дает наилучшее возможное приближение к точному решению в энергетической норме среди всех возможных линейных комбинаций выбранного базиса. Сегодня этот математический аппарат является сердцем всех промышленных CAD/CAE систем, моделирующих напряжения в деталях турбин, кузовах автомобилей и бетонных плотинах.

Подробнее

Квази-Монте-Карло: последовательности с низким расхождением и Соболь

Проблемы псевдослучайных чисел в методе Монте-Карло

Классический метод Монте-Карло (МК), как мы выяснили ранее, является незаменимым инструментом для вычисления интегралов в пространствах высокой размерности (от 5 до 100 и более измерений), где традиционные сеточные методы бессильны из-за «проклятия размерности». Однако стандартный МК имеет серьезный недостаток — очень медленную сходимость, пропорциональную O(1/sqrt(N)). Чтобы увеличить точность результата всего на один знак (в 10 раз), нужно сгенерировать в 100 раз больше случайных точек.

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

Последовательности с низким расхождением

Чтобы решить эту проблему, математики разработали метод Квази-Монте-Карло (КМК). Ключевое отличие заключается в том, что КМК полностью отказывается от случайности! Вместо псевдослучайных генераторов используются жестко детерминированные алгоритмы, которые генерируют так называемые последовательности с низким расхождением (Low-discrepancy sequences). Эти последовательности заполняют многомерный гиперкуб максимально равномерно, избегая образования как кластеров, так и пустых дыр. Точки расставляются так, чтобы каждое новое значение ложилось точно в самый большой незаполненный пробел.

С точки зрения математики, расхождение (discrepancy) — это мера того, насколько плотность точек в произвольном параллелепипеде отклоняется от идеальной равномерной плотности. Для случайных чисел расхождение велико. Для сеток оно мало, но их невозможно построить в высоких размерностях. Последовательности КМК (такие как последовательности Холтона, Фора, Нидеррайтера) дают идеальный компромисс. Самой популярной и эффективной в индустрии является ЛП-тау последовательность Соболя, разработанная выдающимся советским математиком Ильей Мееровичем Соболем в 1967 году.

Применение КМК на финансовых рынках и в графике

Замена генератора случайных чисел на последовательность Соболя превращает классический Монте-Карло в Квази-Монте-Карло, при этом скорость сходимости меняется радикально: она приближается к O(1/N). Это означает, что для достижения той же точности требуется не в 100 раз больше вычислений, а всего лишь в 10 раз. Это колоссальный скачок в эффективности.

Метод КМК произвел настоящую революцию в инвестиционных банках. При ценообразовании сложных финансовых производных (например, азиатских или ипотечных опционов), где выплаты зависят от траектории цены актива за каждый из 365 дней в году, возникает интеграл 365-й размерности. Применение КМК позволило оценивать такие портфели за секунды вместо часов. Также последовательности Соболя стали индустриальным стандартом в компьютерной графике и рендеринге (алгоритмы Path Tracing). Фотореалистичное освещение в современных голливудских фильмах (Pixar, Disney) рассчитывается путем трассировки лучей, где направления лучей выбираются именно на основе последовательностей КМК, обеспечивая гладкую картинку без цифрового шума при минимальном количестве лучей на пиксель.

Подробнее
Subscribe to this RSS feed

Соц. сети