УДК 621.3
О.Н.Пьявченко
МНОГОШАГОВАЯ ЭКСТРАПОЛЯЦИЯ ЗНАЧЕНИЙ ПЕРЕМЕННЫХ НА ОСНОВЕ ПОЛИНОМА ЛАГРАНЖА
Прогнозирование значений переменных на к (к > 1) шагов И необходимо, как минимум:
1) для определения используемых в вычислениях значений переменных, не известных в данный момент времени;
2) для компенсации погрешности, порождаемой сдвигом по времени формирования результатов обработки показаний датчиков;
3) для предварительной оценки состояний процессов мониторинга, диагностики и управления.
Для многошагового прогнозирования переменных приемлемы формулы, простые в реализации, высокоточные, малочувствительные к погрешностям операндов. При этом следует учитывать, что применение формул в микроконтроллерах [1] приводит к вычислению с погрешностью каждого экстраполированного значения переменной А(1;). Погрешность экстраполяции является суммой методической ц , трансформированной V и инструментальной в погреш-
*
ностей. Методическая погрешность ц закладывается при выборе численного метода вычисления экстраполированного значения переменной. Трансформированная погрешность V образуется в результате использования в расчетах операндов, представленных с погрешностями. Инструментальная погрешность в порождается при представлении и обработке в микроконтроллерах данных с существенно ограниченной разрядной сеткой. Для практического применения выбираются формулы, у которых погрешности экстраполяции не превышают задаваемую предельно допустимую погрешность г .
В работе предлагаются и рассматриваются два типа формул многошаговой кИ (к > 1) экстраполяции, построенные на основе полинома Лагранжа степени г (г = 1,2,3) с равностоящими узлами [2].
Формулы многошаговой экстраполяции значений переменных первого типа строятся на основе полинома Лагранжа
г П(1+т)
Ь<г>(к) =2(-1)г-1 .,( Г=°)|(1---гг^ + С - г)к), (1)
.=° г|(г - .)|(1 + г - .
соседние узлы которого отстоят на шаг кИ (к>1).
Преобразование полинома (1) приводит к обобщенной формуле экстраполяции на кИ шагов
•{> ■ ^
^1г(х+к) = 2С. • %+(г-г)к), .=°
С. = (г +1)!(-1)
г - г
1
.|(г +1 - г),
являющейся модернизацией формулы экстраполяции на шаг И [3].
Методическая погрешность вычисления экстраполированного значения
переменной + к) определяется производной ^г+1] (£,), выбором степени г и шага экстраполяции кИ:
Цвд+к) = (кЬ)г+1 ■ Г[г+1](^). (3)
Частные формулы многошаговой экстраполяции и их методические погрешности приведены в табл. 1.
Таблица 1
г Формулы экстраполяции значений переменных Методические погрешности
1 ^ 11(1+к) = 2£ - %-к) Ц*1(1+к) = (к^!)2 ^2]©
2 ^ 12(1+к) = 3(£1 - %-к)) + %-2к) ц*2(,+к) = (кЬ)3 ^3]©
3 ^ 13(1+к) = 4Г1 - 6£(1_к) + 4 Г(1-2к) - %-3к) ц*3(1+к) = (кИ)4 ^4](§)
Особенности формул многошаговой экстраполяции первого типа:
1) интенсивный рост методической погрешности (3) при увеличении коли-
г+1
чества шагов экстраполяции к из-за наличия степенного коэффициента к ;
2) необходимость создания и поддержки массива (гк+1) значений переменных %+(]-Г)к) (. = 0,1,2,...,г, к > 1), из которого для вычисления экстраполированного значения переменной ^+1) выбираются г, отстоящих на кИ значений
переменной: %-кг> %-(г-1)к> %-(г-2)к>-• ^ £;
3) небольшие постоянные коэффициенты |С.|<10, благодаря чему нет необходимости в значительных затратах памяти для их хранения и времени на вычисления произведений.
В то же время, чем точнее формула экстраполяции, тем больше усиливаются погрешности участвующих в вычислениях переменных £(цг_|)к), (Т=0,1,...,г),
*
трансформируемые в экстраполированное значение +к).
С увеличением степени формулы экстраполяции в вычислениях участвуют переменные, принадлежащие к возросшему интервалу. Это приводит к усилению различия между погрешностями операндов и соответственно росту трансформированной погрешности. Трансформированная погрешность может стать преобладающей и настолько большой, что использование формул степени г становится нецелесообразным.
Выходом из сложившейся ситуации является снижение частоты погрешности переменной ((1;). В случае, когда это невозможно, могут оказаться полезными формулы экстраполяции второго типа, построенные на базе значений переменных, расположенных на меньшем интервале.
В основу построения формул экстраполяции второго типа на к шагов И кладется полином Лагранжа
г П(к + У)
Ь(г)(к) =^(-1)Г-^ .|( У=°)|Л------- f(i - г + .), (4)
.=0 Яг - .)|(к + г -.
соседние узлы которого отстоят на шаг И.
Обобщенная формула многошаговой линейной экстраполяции (г=1) имеет
вид
к) = (к + 1)( - kf(i-1). (5)
Методическая погрешность многошаговой линейной экстраполяции составляет
Ц*2Щ+к) = к(к2+1) Ь2Г[2](§). (6)
Частные формулы линейной экстраполяции и их методические погрешности приведены в табл. 2.
Таблица 2
г к Формулы к-шаговой линейной экстраполяции Методические погрешности
1 5 ( 11(1+5) = 6( - %1) ц*1(1+5) = 15Ь2 ([21Ю
2 10 ( 11(1+10) = 11( - 10((1-1) ц2ю+10) = 55Ь2([21©
3 50 ( 11(1+50) = 51( - 50((1-1) И*21<1+50) = 1275И2 ([21©
При квадратичной экстраполяции на к шагов И используется формула
(2*20+к) = (к + 1}2к + 2) ( - к(к + 2)%-1) + к(к2+1) f(i - 2), (7)
методическая погрешность которой
Ь3 2
Ц*220+к) = -т- П (к + У )([31(5). (8)
6 у=0
Частные формулы квадратичной экстраполяции на к=5,10,50 шагов и их методические погрешности представлены в табл. 3.
Таблица 3
г к Формулы к-шаговой квадратичной экстраполяции Методические погрешности
1 5 122(1+5) = 2111 - 351(1-1)+151(1-2) И*22<1+5) - 3 5И31[31©
2 10 122(1+10) = 661 - 1201(1-1)+551(1-2) ^2(,+10) - 220113 1[31©
3 50 122(1+50) = 13 2 611 - 26001(1-1) + 12751(1-2) ^*22(1+50) - 22 1 00113 ^(У
Кубическая экстраполяция на к шагов осуществляется по формуле ^ (к + 1)(к + 2)(к + 3)^ к(к + 2)(к + 3)^
^23(1+к) - 6 1 2 *(!-1) +
6 2 (9)
к(к + 1)(к + 3) _ - к(к + 1)(к + 2) _ v '
+ 2 (1-2) 6 (1-3)
с методической погрешностью
^2зд+к) - к(к + 1)(к2+2>(к + 3) И41[4](£,). (10)
При этом для экстраполяции на к=5,10,50 шагов используются формулы, сведенные в табл. 4
Таблица 4
г к Формулы к-шаговой кубической экстраполяции Методические погрешности
1 5 1 3(1+5) = 561 - Ш^+Ш^) - 351(1-3) и3(1+5) - 70Ь4 1[41(§)
2 10 13(1+10) = 2861! - 7801(1-1)+7151(1-2) - **0f<i-з) ^+10) - 715Ь41[41©
3 50 13(1+50) = 234261, - 689001(1.1) + 675751(1-2) -- 221001(1-3) д30+50) - 292825И4 1[41(^)
Выделим особенности формул многошаговой экстраполяции второго типа:
1) ослабление роста методических погрешностей (6), (8), (10) формул линейной (5), квадратичной (7) и кубической (10) экстраполяции при увеличении количества шагов экстраполяции к, благодаря их делению на коэффициенты, соответственно, 2, 6 и 24;
2) необходимость формирования небольшого массива размером (г+1) значений переменных 1(1-г+]) 0=0,1, 2,...г), непосредственно участвующих в вычислениях ^(1 + к) ;
3) наличие в формулах многошаговой экстраполяции второго типа у всех значений переменных 1(1-г+|) (|=0,1,...г) больших постоянных коэффициентов, в результате чего не только возрастает вычислительная сложность формул, но и появляются значительные трансформированная и инструментальная погрешности.
По сравнению с формулами многошаговой экстраполяции первого типа формулы второго типа имеют следующие преимущества и недостатки.
Методические погрешности формул многошаговой экстраполяции второго типа меньше методических погрешностей формул первого типа.
Из сведенных в табл. 5 результатов расчетов коэффициентов
Ark = М^1 (11)
М 2r(i+k)
для r = 1, 2, 3 и k = 5, 10, 50, следует, что формулы второго типа значительно точнее формул первого типа. Причем их преимущество растет с увеличением степени r и количества шагов k.
Таблица 5
k Aik A2k A3k
5 1.67 3.57 8.9
10 1.82 4.55 14
50 1.96 5.66 21.3
Для реализации многошаговой экстраполяции по формулам второго типа необходимо хранить почти в к раз меньше значений переменных (|=0,1,2,...г). При этом, благодаря небольшому интервалу (один шаг И) между используемыми в вычислениях значениями переменных %!+]) (|=0,1,2,...г), их трансформируемые погрешности могут меньше отличаться друг от друга, чем в формулах многошаговой экстраполяции первого типа. В результате можно ожидать уменьшения трансформированной погрешности. Однако из-за больших значений коэффициентов формулы второго типа более чувствительны к погрешностям операндов. Из-за этого трансформированная погрешность может не уменьшиться, а возрасти. Подобное может иметь место и с инструментальной погрешностью. Кроме того, эти формулы при экстраполяции на большое количество шагов к сложнее соответствующих формул первого типа. Поэтому для получения более корректных выводов и рекомендаций по практическому применению следует более тщательно исследовать формулы обоих типов, используя методы компьютерного моделирования.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. Шлетт М. Тенденции индустрии встроенных микропроцессоров. Открытые системы, №6, 1998. С.6-11.
2. Калиткин Н.Н. Численные методы. М.: Наука, 1978. 512 с.
3. Пьявченко О.Н. Конечно-разностные методы решения обыкновенных дифференциальных уравнений в микрокомпьютерах: Уч. пособие. Таганрог: Изд-во ТРТУ, 2000. 96 с.