Метод Aberth, или метод Аберта – Эрлиха, названный в честь Оливера Аберта и Луи У. Эрлиха, представляет собой алгоритм поиска корней, разработанный в 1967 году для одновременного приближения всех корней одномерный многочлен.
Этот метод сходится кубически, что является улучшением по сравнению с методом Дюрана – Кернера, другим алгоритмом для аппроксимации всех корней сразу, который сходится квадратично. (Однако оба алгоритма сходятся линейно в нескольких нулях.)
Этот метод используется в MPSolve, который является эталонным программным обеспечением для приближения всех корней многочлена к произвольная точность.
Пусть быть одномерным многочленом степени с действительными или комплексными коэффициентами. Тогда существуют комплексные числа , корни , которые дают факторизацию :
Хотя эти числа неизвестны, верхняя и нижняя границы для их абсолютных значений вычисляются из коэффициентов полинома. Теперь можно выбрать различных чисел в комплексной плоскости - случайным или равномерно распределенным - так, чтобы их абсолютные значения находились в тех же пределах. (Кроме того, если нули симметричны, начальные точки не должны быть точно симметричными по одной и той же оси, так как это может предотвратить сходимость.) Набор таких чисел называется начальным приближением набора корней . Это приближение можно итеративно улучшить, используя следующую процедуру.
Пусть будет текущим приближения нулей . Затем числа смещения вычисляются как
где - полиномиальная производная от , вычисленная в точке .
Следующий набор приближений корней из тогда . Качество текущего приближения можно измерить по значениям полинома или по размеру смещений.
Концептуально этот метод использует аналогию электростатического, моделируя приближенные нули как подвижные отрицательные точечные заряды, которые сходятся к истинным нулям, представленным фиксированными положительными точечными зарядами.. Прямое применение метода Ньютона к каждому приближенному нулю часто приводит к неправильному схождению нескольких начальных точек к одному корню. Метод Аберта позволяет избежать этого, также моделируя отталкивающий эффект, который подвижные заряды оказывают друг на друга. Таким образом, когда подвижный заряд сходится к нулю, их заряды нейтрализуются, так что другие подвижные заряды больше не притягиваются к этому месту, побуждая их сходиться к другим «незанятым» нулям. (Стилтьес также моделировал положения нулей многочленов как решения электростатических задач.)
Внутри формулы метода Аберта можно найти элементы метода Ньютона и метод Дюрана – Кернера. Детали для эффективной реализации, особенно. о выборе хороших начальных приближений можно найти в Bini (1996).
Обновление корней может выполняться как одновременная итерация, подобная Якоби, где сначала выполняются все новые приближения. вычисляется на основе старых приближений или как последовательная итерация типа Гаусса – Зейделя, в которой используется каждое новое приближение с момента его вычисления.
Очень похожий метод - метод Ньютона-Мэли. Он вычисляет нули один за другим, но вместо явного дефлятирования на лету делит на уже полученные линейные множители. Метод Аберта подобен методу Ньютона-Мейли для вычисления последнего корня, при этом делая вид, что вы уже нашли другие корни.
Формула итерации - это одномерная итерация Ньютона для функция
Если значения уже близки к корням , тогда рациональная функция почти линейна с доминирующим корнем, близким к и полюсами в , которые направляют итерацию Ньютона от корней p (x), которые близки к ним. То есть соответствующие области притяжения становятся довольно маленькими, в то время как корень, близкий к , имеет широкую область притяжения.
Шаг Ньютона в одномерный случай - это величина, обратная логарифмической производной
Таким образом, новое приближение вычисляется как
, которая является формулой обновления метода Аберта – Эрлиха.
Из-за очевидной аналогии с электростатикой это поле можно назвать полем единицы плюс заряд... Чтобы избежать этого, мы присваиваем единицу минус заряда в каждой точке выборки. Идея здесь в том, что, когда точка выборки z близка к простому нулю, поле от отрицательного заряда в z должно противодействовать полю от положительного заряда в нуле, предотвращая схождение второй точки выборки к этому нулю.