Jump to content

Дельта-квадратичный процесс Эйткена

В численном анализе процесс дельта-квадрата Эйткена или экстраполяция Эйткена представляет собой метод ускорения рядов , используемый для ускорения скорости сходимости последовательности. Он назван в честь Александра Эйткена , который представил этот метод в 1926 году. [1] Его ранняя форма была известна Секи Кова (конец 17 века) и была найдена для выпрямления круга, т.е. для вычисления числа π. Это наиболее полезно для ускорения сходимости последовательности, сходящейся линейно.

Определение

[ редактировать ]

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

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

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

Характеристики

[ редактировать ]

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

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

Метод Эйткена ускорит последовательность если

не является линейным оператором, но выпадает постоянный член, а именно: если является константой. Это ясно из выражения в терминах конечно-разностного оператора

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

Эмпирически A -операция устраняет «самый важный член ошибки». В этом можно убедиться, рассмотрев последовательность вида , где : Последовательность тогда пойдет до предела, как уходит в ноль.

Геометрически график показательной функции это удовлетворяет , и имеет горизонтальную асимптоту при (если ).

Можно также показать, что если доходит до предела со скоростью строго больше 1, не имеет лучшей скорости сходимости. (На практике редко встречается, например, квадратичная сходимость, которая будет означать более 30 или 100 правильных десятичных знаков после 5 или 7 итераций (начиная с 1 правильной цифры); обычно в этом случае ускорение не требуется.)

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

Пример расчетов

[ редактировать ]

Пример 1 : Значение можно аппроксимировать, приняв начальное значение для и повторяя следующее: Начиная с

н x = повторяющееся значение Топор
0 1 1.4285714
1 1.5 1.4141414
2 1.4166667 1.4142136
3 1.4142157 --
4 1.4142136 --

Здесь стоит отметить, что метод Эйткена не сохраняет две итерации; для вычисления первых трех значений Ax потребовались первые пять значений x . Кроме того, второе значение Ax явно уступает четвертому значению x, главным образом из-за того, что процесс Эйткена предполагает линейную, а не квадратичную сходимость. [ нужна ссылка ]

Пример 2 : Значение можно вычислить как бесконечную сумму:

н срок х = частичная сумма Топор
0 1 1 0.79166667
1 −0.33333333 0.66666667 0.78333333
2 0.2 0.86666667 0.78630952
3 −0.14285714 0.72380952 0.78492063
4 0.11111111 0.83492063 0.78567821
5 −9.0909091×10 −2 0.74401154 0.78522034
6 7.6923077×10 −2 0.82093462 0.78551795
7 -6.6666667×10 −2 0.75426795 --
8 5.8823529×10 −2 0.81309148 --

В этом примере метод Эйткена применяется к сублинейно сходящемуся ряду, что значительно ускоряет сходимость. Она по-прежнему сублинейна, но гораздо быстрее исходной сходимости: первое значение Ax, для вычисления которого потребовались первые три значения x, ближе к пределу, чем восьмое значение x.

Пример псевдокода для экстраполяции Эйткена

[ редактировать ]

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

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

%These choices depend on the problem being solved
x0 = 1                      %The initial value
f(x) = (1/2)*(x + 2/x)      %The function that finds the next element in the sequence
tolerance = 10^-10          %10 digit accuracy is desired
epsilon = 10^-16            %Do not divide by a number smaller than this

maxIterations = 20          %Do not allow the iterations to continue indefinitely
haveWeFoundSolution = false %Were we able to find the solution to within the desired tolerance? not yet

for i = 1 : maxIterations 
    x1 = f(x0)
    x2 = f(x1)

    if (x1 ~= x0)
        lambda = absoluteValue((x2 - x1)/(x1 - x0))  %OPTIONAL: Computes an approximation of |f'(fixedPoint)|, which is denoted by lambda
    end

    denominator = (x2 - x1) - (x1 - x0);

    if (absoluteValue(denominator) < epsilon)        %To avoid greatly increasing error, do not divide by too small of a number
        print('WARNING: denominator is too small')
        break                                        %Leave the loop
    end

    aitkenX = x2 - ( (x2 - x1)^2 )/denominator
    
    if (absoluteValue(aitkenX - x2) < tolerance)     %If the value is within tolerance
        print("The fixed point is ", aitkenX))       %Display the result of the Aitken extrapolation
        haveWeFoundSolution = true
        break                                        %Done, so leave the loop
    end

    x0 = aitkenX                                     %Update x0 to start again                  
end

if (haveWeFoundSolution == false)   %If we were not able to find a solution to within the desired tolerance
    print("Warning: Not able to find solution to within the desired tolerance of ", tolerance)
    print("The last computed extrapolate was ", aitkenX)
end

См. также

[ редактировать ]

Примечания

[ редактировать ]
  1. ^ Эйткен, Александр (1926). «О численном решении Бернулли алгебраических уравнений». Труды Королевского общества Эдинбурга . 46 : 289–305. дои : 10.1017/S0370164600022070 .
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: e743721301fe09b38b00e32f40fe5c0a__1701186360
URL1:https://arc.ask3.ru/arc/aa/e7/0a/e743721301fe09b38b00e32f40fe5c0a.html
Заголовок, (Title) документа по адресу, URL1:
Aitken's delta-squared process - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)