Цифровое прогнозирующее устройство
Иллюстрации
Показать всеИзобретение относится к средствам обработки информации для сглаживания и прогнозирования стационарных и нестационарных случайных процессов. Технический результат заключается в расширении функциональных возможностей путем увеличения реального времени прогноза в четыре раза при том же объеме буфера памяти предыстории, без какого-либо ущерба для точности прогноза. Цифровое прогнозирующее устройство, в состав которого входят блок сглаживания, регистр и мультиплексор, блок прогноза, субблок расчета квадратичного прогноза, субблок расчета линейного прогноза из одного сумматора, сумматор усреднения дискрет выходов субблоков квадратичного и линейного прогнозов; узел управления динамикой прогноза, субблок расчета первой производной из одного сумматора, узел тактирования блока прогноза, схема коррекции кода прогноза на динамике, субблок подсчета приращений скорости процесса, при этом в блок прогноза введен дополнительный субблок коррекции кода прогноза на стационарном режиме из одного сумматора. 1 приложение, 6 ил.
Реферат
Изобретение относится к автоматике и вычислительной технике и может быть использовано для сглаживания и прогнозирования стационарных и нестационарных случайных процессов, повышения качества и точности управления в цифровых системах наведения различных (в т.ч. баллистических) объектов: ракет, бомб и ПТУРСов.
Известно, адаптивное цифровое прогнозирующее и дифференцирующее устройство (патент РФ №2517322, МПК G06F 17/17, 21.05.2013, бюл. №15), содержащее блок сглаживания и блок прогноза, в состав последнего входят: два вычитателя, узел управления динамикой прогноза, два субблока квадратичного и линейного прогнозов, субблок расчета первой призводной в (n-1)-й расчетной точке предыстории входного процесса и блок адаптации. Устройство имеет относительно большой объем оборудования и функционально ограничено.
Наиболее близким по технической сущности к заявляемому устройству является, выбранное в качестве прототипа, цифровое прогнозирующее и дифференцирующее устройство (патент РФ №2515215, МПК G06F 17/17, 6.02.2013, бюл. №13), содержащее блок сглаживания и блок прогноза, в состав которого входят: два вычитателя, узел управления динамикой прогноза, два субблока квадратичного и линейного прогнозов и субблок расчета первой производной в (n-1)-й расчетной точке предыстории входного сглаженного процесса. Устройство также функционально ограничено.
На практике, по характеру изменения во времени дискретные случайные процессы (СП) можно разделить на два вида (режима): установившийся (стационарный) и переходный (в дальнейшем «динамика»). Первый характеризуется установившейся скоростью медианы (детерминированной основы) СП, второй имеет нелинейный характер и занимает относительно небольшое время перехода медианы СП на новую установившуюся скорость. Спектр изменения режима по скорости медианы СП может занимать достаточно большой диапазон: от медленно меняющегося до высоких скоростей (почти скачка).
В прототипе, как и в аналогах, реализовано наилучшее приближение аналитических операторов квадратичного и линейного прогнозов на базе аппроксимирующих многочленов по 3-м точкам (ординатам) двухуровнего буфера хранения предыстории входного случайного дискретного процесса по способу наименьших квадратов, причем временной интервал (глубина) прогноза h составляет половину от времени (Bt) хранения ординат в буферах памяти предыстории Bt=2h. Например, прогноз на Н=h=10 сек., требует сохранения информации о процессе в буфере памяти предыстории на период Bt=2Н=2h=20 сек., причем с началом динамики (переходом на другую скорость медианы СП) новая (свежая) информация (уп) поступает только на 1-й уровень буфера предыстории, на втором (yп-1, уп-2) сохраняются данные старого режима: естественно, получаемые текущие дискреты прогноза за этот период существенно отличаются от реалий и не могут быть использованы. Прогноз можно считать достоверным только после заполнения обоих буферов предыстории информацией на новом установившемся режиме.
Техническая задача для предлагаемого устройства заключается в расширении функциональных возможностей путем увеличения реального времени (глубины) прогноза в четыре раза при том же объеме буфера памяти предыстории, без какого-либо ущерба для точности прогноза, т.е. (см. пример выше) теперь при задании Н=4h=40 сек. время хранения информации (объем памяти буферов предыстории) остается без изменений Bt=2h=20 сек., а не Bt=2H=80 сек. в соответствии с аналитическими формулами расчета прогноза.
Поэтому в цифровом прогнозирующем устройстве, в состав которого входят: блок сглаживания, содержащий m=32 последовательно соединенных каналов, регистр и мультиплексор, причем выходы каждого m=1, 2, 4, 8, 16 и 32-го каналов заведены на информационные входы мультиплексора, адресный вход которого подключен к выходу регистра, вход последнего подсоединен к второму управляющему входу устройства для задания степени (эффективности) сглаживания k=0, 1, 2, 3, 4 или 5 (m=2k), а вход первого канала является информационным входом (хп) устройства, и блок прогноза, содержащий первый и второй вычитатели, каждый из которых включает в себя буфер регистровой памяти, мультиплексор, блок инверторов и сумматор, причем вход первого вычитателя подключен к выходу мультиплексора блока сглаживания; субблок расчета квадратичного прогноза, содержащий два сумматора и инвертор, причем выход второго сумматора является выходом субблока; субблок расчета линейного прогноза из одного сумматора, выходные шины которого являются выходом субблока; сумматор усреднения дискрет выходов субблоков квадратичного и линейного прогнозов; узел управления динамикой прогноза, содержащий регистр ввода уставки времени прогноза, вход которого является первым управляющим входом устройства, задающим интервал прогноза, инвертор, счетчик и мультиплексор, причем выходные шины регистра ввода уставки времени прогноза подключены, непосредственно, - к первому входу мультиплексора, монтажно сдвинутые вправо на три разряда - к второму входу мультиплексора и, монтажно сдвинутые влево на один разряд, через инвертор, - к входу счетчика, выход мультиплексора соединен с адресными входами мультиплексоров обоих вычитателей; субблок расчета первой производной из одного сумматора, выход которого является выходом субблока с кодом первой производной (y'n-1) во второй (n-1)-й расчетной точке буфера предыстории входного процесса; узел тактирования блока прогноза, содержащий элемент задержки, триггер, генератор импульсов, элемент И и регистр сдвига; схема коррекции кода прогноза на динамике, содержащая два сумматора и мультиплексор; субблок подсчета приращений скорости процесса, содержащий схему формирования абсолютного значения первой производной (y'n-1), два последовательно соединенных регистров хранения текущей y'n-1[(wT)] и предыдущей y'n-1[(w-1)T)] дискреты скорости процесса, два параллельных канала (на рост и снижение) подсчета приращения скорости процесса, в состав каждого из которых входят компаратор, два элемента И и четырехразрядный счетчик приращений, элемент ИЛИ и триггер режима, причем выход первого элемента И в каждом канале подключен к счетному входу счетчика и на шину сброса в «0» счетчика другого канала, выход элемента ИЛИ заведен на вход установки в «1» триггера режима и на шину записи счетчика узла управления динамикой прогноза, а выход прямого переноса этого счетчика соединен с шиной сброса в «0» триггера, прямой («1») выход которого подключен к адресным входам мультиплексоров узла управления динамикой и схемы коррекции кода прогноза на динамике, выход субблока расчета первой производной через схему формирования ее абсолютного значения заведен на вход первого регистра субблока подсчета приращений, а выходы обоих регистров подключены, соответственно, к входам компараторов обоих каналов, для решения поставленной задачи в блок прогноза введен дополнительный субблок коррекции кода прогноза на стационарном режиме из одного сумматора, на первый вход которого заведен выход сумматора усреднения, второй вход сумматора соединен с выходом инвертора второго вычитателя, а выход сумматора субблока подключен к первому информационному входу мультиплексора схемы коррекции кода прогноза на динамике, в которой: первый вход первого сумматора соединен с выходом мультиплексора блока сглаживания, второй вход - с выходом инвертора второго вычитателя, выходные шины первого сумматора монтажно сдвинутые влево на четыре разряда заведены на первый вход второго сумматора, второй вход которого соединен с выходом мультиплексора блока сглаживания, а выход второго сумматора подключен к второму информационному входу мультиплексора, адресный вход которого заведен на «1» выход триггера режима субблока подсчета приращений скорости процесса, а выход мультиплексора является выходом устройства.
Сущность изобретения поясняется чертежами, на которых изображены: на фиг. 1 - блок-схема предлагаемого устройства; на фиг. 2 - блок-схема одного канала блока сглаживания; на фиг. 3 - блок-схема узла тактирования блока прогноза; на фиг. 4 - схема формирования абсолютного значения скорости СП; на фиг. 5 - графическая интерпретация вывода формул коррекции кода прогноза на стационарном режиме и на динамике; на фиг. 6 - метрологическая характеристика блока сглаживания на m=64 канала; приложение (на 5-ти листах) - результаты моделирования работы устройства на ЭВМ при обработке нестационарного случайного процесса.
Известны формулы операторов прогноза, полученные аналитически с помощью аппроксимирующих многочленов по трем точкам (ординатам) буфера предыстории входного случайного дискретного процесса по способу наименьших квадратов (Милн В.Э. Численный анализ. М., «ИЛ», 1951, стр. 212), по аппроксимирующему многочлену второй степени (квадратичному):
первой степени (линейному):
или
Кроме того, известны формулы численного дифференцирования для равноотстоящих точек, выраженные через значения функции в этих точках (Демидович Б.П. и Марон И.А. Основы вычислительной математики. М., «ФМ», 1960, гл. XV, § 4, стр. 573), в частности, для трех точек имеем:
где уп - первая (текущая) расчетная точка (ордината);
yп-1, yп-2 - соответственно, вторая и третья расчетные точки (ординаты) двухуровневого буфера хранения предыстории входной сглаженной дискретной последовательности. В численном анализе - это система равноотстоящих точек с шагом h, в реальном масштабе времени Н=h - это время (глубина) прогноза, причем период хранения текущей информации в буферах памяти предыстории составляет два интервала прогноза Bt=2h.
По аналогии с методами исчисления конечных разностей для численного дифференцирования и экстраполяции обозначим:
Δy1=(2уп-уп-1) - как биразность первого уровня предыстории входной дискретной последовательности, т.е. разность между удвоенной текущей и предыдущей ординатой процесса;
Δу2=(2yп-1-yп-2) - биразность второго уровня предыстории. После преобразования уравнений (1) и (2) с целью упрощения и с учетом биразностей получим следующие эмпирические выражения для операторов квадратичного и линейного прогнозов:
Предлагаемое устройство реализует операторы прогноза и дифференцирования по формулам (3), (4) и (5), причем основными элементами схемы являются сумматор и блок инверторов, а умножение коэффициентов на слагаемые выполняются соответствующими монтажными сдвигами шин последних при вводе в сумматор. Такие операции на блок-схеме (см. фиг. 1) обозначены кружочком.
Устройство содержит (см. фиг. 1) блок сглаживания 1, состоящий из многоканального цифрового сглаживающего устройства 2 на m=32 последовательно соединенных канала (см. авт. св. СССР №686034, кл. G06F 15/32, 1979 и №748417, 1980), регистра 3 задания степени сглаживания (к) и мультиплексора 4; блок прогноза, содержащий два последовательно соединенных вычитателя 5 и 6, каждый из которых включает в себя буфер регистровой памяти 7 из (А) последовательно соединенных регистров 8, мультиплексор 9, блок инверторов 10 (в предположении, что мультиплексор не имеет инверсных выходов) и сумматор 11; субблок 12 расчета квадратичного прогноза, содержащий блок инверторов 13, первый 14 и второй 15 сумматоры, выход последнего является выходом субблока; субблок 16 расчета линейного прогноза из инвертора 17 и сумматора 18, шины выхода которого являются выходом субблока; сумматор 19 усреднения кодов выходов обоих субблоков прогноза 12 и 16; субблок 20 расчета первой производной (y'n-1) из сумматора 21, на выходе которого устанавливается код оценки первой производной входного процесса в (n-1)-й расчетной точке буфера предыстории; субблок 22 подсчета приращений скорости процесса, содержащий схему 23 формирования абсолютного значения скорости (у'n-1), включающей в себя (см. фиг. 4) мультиплексор 24 и инвертор 25, последовательно соединенные регистры 26 и 27 (формирующие буфер предыстории приращений скорости процесса), два компаратора 28 и 29, два элемента И 30 и 31, два 4-х разрядных счетчика 32 и 33 приращений скорости процесса (роста и снижения), два элемента И 34 и 35, элемент ИЛИ 36 и триггер режима 37 (ТГ); узел 38 управления динамикой прогноза, содержащий регистр 39 хранения времени прогноза, вход 40 которого является первым управляющим входом устройства, через который вводится виртуальное время прогноза h=AT, где Т - цикл работы устройства, А - количество (макс, адрес) регистров 8 в буфере 7 предыстории процесса (реальное время прогноза для заявляемого устройства рассчитывается по формуле: Н=4h), инвертор 41, счетчик 42 продолжительности (2h) работы блока прогноза на динамике и мультиплексор 43; второй управляющий вход 44 ввода степени сглаживания (к) СП, информационный (xn) 45 и тактирующий (fT) 46 входы устройства; канал 47 (см. фиг. 2) сглаживающего устройства 2 состоит из сумматора 48 и регистра 49; узел 50 тактирования блока прогноза (см. фиг. 3) содержит элемент задержки 51, триггер 52, генератор импульсов 53 (fг), элемент И 54 и регистр сдвига 55; схема 56 коррекции кода прогноза на динамике содержит два сумматора 57, 58 и мультиплексор 59, дополнительный субблок 60 коррекции кода прогноза на стационарном режиме из сумматора 61, выход мультиплексора 59 схемы 56 является выходом 62 устройства.
Если в прототипе и аналогах для определения момента перехода стационарного режима на динамику используется алгоритм фиксации серии из 8-ми отклонений от медианы процесса одного знака подряд, то в предложенном устройстве (ввиду отсутствия блока сглаживания, работающего с отклонениями) для этой же цели введен субблок 22 подсчета приращений скорости процесса, в котором тоже фиксируется серия но из 8-ми подряд приращений роста (или снижения) скорости процесса.
Приращение - это результат сравнения на каждом такте текущего и предыдущего значения первой производной процесса в (n-1)-й расчетной точке буфера предыстории. С переходом на динамику (ТГ=1) устройство начинает работать не с полным (h), а усеченным в 8 раз буфером предыстории, т.е. в расчете кода прогноза участвуют только текущие («свежие») дискреты входного процесса, соответственно, получаемый код прогноза дает точную картину изменения (роста или снижения) входного процесса на динамике, но только для уменьшенного в 8 раз времени (глубины) прогноза hk=h/8 (условно, его можно назвать технологическим).
Для приведения кода прогноза на стационарном режиме в соответствие учетверенному времени прогноза (H=2h) в устройство введен дополнительный субблок 61 коррекции кода прогноза. Графическая интерпретация алгоритма работы этого субблока, опирающаяся на постулат о линейной аппроксимации медианы входного процесса представлена на фиг. 5, где Δl=(Yn+1-Yn-2) и Δ4=(Yn+4-Yn-2) - корректирующие разности прогноза на стационарном режиме, тогда по известным соотношениям в подобных треугольниках имеем:
Уравнение (6) реализовано в предложенном устройстве в дополнительном субблоке 61 коррекции кода прогноза на стационарном режиме для учетверенного времени (глубины) прогноза H=4h.
Приведение кода прогноза на динамике в соответствие учетверенному времени прогноза (H=4h) осуществляется в схеме 56 коррекции кода прогноза на динамике. Графическая интерпретация алгоритма работы этой схемы, опирающегося на постулат о линейной аппроксимации медианы входного процесса представлена на фиг. 5.
Пусть ΔKn=(Yn-Ykn-2) - корректирующая разность прогноза на динамике, hk=h/8, h=8hk, ΔR4=Ydn+4-Ykn-2, тогда в соответствии с известными соотношениями сторон в подобных треугольниках имеем:
Уравнение (7) реализовано в предложенном устройстве в схеме 56 коррекции кода прогноза на динамике для учетверенного времени (глубины) прогноза H=4h.
Цикл работы устройства состоит из двух тактов. В первом - завершает работу блок сглаживания 1, каждый канал которого реализует оператор экспоненциального сглаживания Yn+1=½(Xn+Yn-1). Эффективность сглаживания (см. фиг. 6) выбирается заданием со входа 44 степени k=0, 1, 2, 3, 4 или 5, которая в свою очередь определяет число задействованных каналов сглаживания m=2k (1, 2, 4, 8, 16 или 32).
Во втором такте узел тактирования 50 первой серией минитактов ("а", "b") инициирует работу двух вычитателей 5 и 6, субблоков 20, 12 и 16 расчета по формулам (3), (4) и (5) первой производной, квадратичной и линейной составляющих блока прогноза. Сумма кодов последних 2Yn+1=2Yn+1[SR]=Yn+1[КВ3]+Yn+1[ЛН3] из сумматора 20 и поступает в дополнительный субблок 61 коррекции кода прогноза на стационарном режиме.
Вторая серия минитактов ("с", "d", "е") формирует работу субблока 22 подсчета приращений скорости процесса. Субблок предназначен для переключения стационарного (ТГ=0) режима на динамику (ТГ=1).
Тактовым сигналом ("с") в регистр 27 из регистра 26 переписывается предыдущая y'n-1[(w-1)T], а в последний - текущая y'n-1[wT] дискрета абсолютного значения скорости процесса. Субблок можно разделить на два параллельных канала подсчета количества приращений скорости процесса: падающей и возрастающей. Рассмотрим работу последнего: при положительном соотношении А>В (y'n-1[wT]>y'n-1[(w-1)T]) в компараторе 28 тактовый сигнал ("d") поступает на счетный вход счетчика приращений 32 и одновременно сбрасывает в «0» счетчик 33 другого канала. Поступление на счетчик 32 подряд Nd=8 и более импульсов означает, что процесс из стационарного перешел на динамику (переходный). Высокий уровень («1») выхода 4-го разряда счетчика 32 разрешает сигналу ("е") установить триггер режима 37 в «1» (ТГ=1) и переписать из регистра 39 в счетчик 42 узла 38 управления динамикой в инверсном коде количество тактов (2h), т.е. время работы устройства на динамическом режиме. Прямой выход («1») триггера 37 разрешает выдачу кода прогноза Ydn+4 на динамике (соответствующему учетверенному времени прогноза Н=4h) с сумматора 58 схемы коррекции 56 кода прогноза на динамике через мультиплексор 59 на выход устройства 62 и переключает мультиплексор 43 узла 38 управления динамикой на работу блока прогноза только с 1/8 частью буфера предыстории процесса, соответственно, с hk=h/8 (технологическим) интервалом (временем) прогноза.
Переход устройства с динамики на стационарный режим осуществляется сбросом в «0» триггера режима (ТГ=0) импульсом прямого переноса счетчика 42 узла управления 38, т.е. только после заполнения (2h) буфера предыстории процесса новой информацией на новом режиме. Соответственно, мультиплексор 43 переключается на выдачу в буфер предыстории заданного (виртуального) интервала (времени) прогноза h, а мультиплексор 60 - на выход 63 устройства кода прогноза Yn+4=Ysn+4 (соответствующему учетверенному времени прогноза Н=4h).
В приложении приведены результаты моделирования работы устройства.
Колонка №5:
ΔPk=(Yn[w+4h]-Yn+4) - погрешность прогноза с коррекцией на
динамике (ТГ=1).
Колонка №8:
ΔР=(Yn[w+4h]-Yn+4[SR]) - погрешность прогноза без коррекции
на динамике.
Колонки №6 и №9:
% - точность прогноза в %.
Доработка (модернизация и упрощение) аналитических операторов прогноза и производных под применение арифметических операций (умножение и деление) кратных степени 2 и замена последних, в свою очередь, на монтажные сдвиги шин слагаемых многочленов при вводе (или выводе) в сумматор позволяет упростить устройство (отказаться от микропроцессора), повысить на порядок быстродействие и снизить аппаратурные затраты на изготовление электронных компонентов систем управления и наведения ракет, бомб и ПТУРСов, особенно, в массовом производстве.
ПРИЛОЖЕНИЕ
Результаты моделирования работы устройства при обработке нестационарного (почти скачкообразного) случайного процесса (СП).
Параметры СП: Объем реализации N=1500; Среднее квадратическое отклонение
исходного СП: σ[Xn]=9.
Цифровое прогнозирующее устройство, в состав которого входят: блок сглаживания, содержащий m=32 последовательно соединенных каналов, регистр и мультиплексор, причем выходы каждого m=1, 2, 4, 8, 16 и 32-го каналов заведены на информационные входы мультиплексора, адресный вход которого подключен к выходу регистра, вход последнего подсоединен к второму управляющему входу устройства для задания степени (эффективности) сглаживания k=0, 1, 2, 3, 4 или 5 (m=2k), а вход первого канала является информационным входом (хп) устройства, и блок прогноза, содержащий первый и второй вычитатели, каждый из которых включает в себя буфер регистровой памяти, мультиплексор, блок инверторов и сумматор, причем вход первого вычитателя подключен к выходу мультиплексора блока сглаживания; субблок расчета квадратичного прогноза, содержащий два сумматора и инвертор, причем выход второго сумматора является выходом субблока; субблок расчета линейного прогноза из одного сумматора, выходные шины которого являются выходом субблока; сумматор усреднения дискрет выходов субблоков квадратичного и линейного прогнозов; узел управления динамикой прогноза, содержащий регистр ввода уставки времени прогноза, вход которого является первым управляющим входом устройства, задающим интервал прогноза, инвертор, счетчик и мультиплексор, причем выходные шины регистра ввода уставки времени прогноза подключены, непосредственно, к первому входу мультиплексора, монтажно сдвинутые вправо на три разряда - к второму входу мультиплексора и монтажно сдвинутые влево на один разряд, через инвертор - к входу счетчика, выход мультиплексора соединен с адресными входами мультиплексоров обоих вычитателей; субблок расчета первой производной из одного сумматора, выход которого является выходом субблока с кодом первой производной (y'n-1) во второй (n-1)-й расчетной точке буфера предыстории входного процесса; узел тактирования блока прогноза, содержащий элемент задержки, триггер, генератор импульсов, элемент И и регистр сдвига; схема коррекции кода прогноза на динамике, содержащая два сумматора и мультиплексор; субблок подсчета приращений скорости процесса, содержащий схему формирования абсолютного значения первой производной (y'n-1), два последовательно соединенных регистров хранения текущей y'n-1[(wT)] и предыдущей y'n-1[(w-1)T)] дискреты скорости процесса, два параллельных канала (на рост и снижение) подсчета приращения скорости процесса, в состав каждого из которых входят компаратор, два элемента И и четырехразрядный счетчик приращений, элемент ИЛИ и триггер режима, причем выход первого элемента И в каждом канале подключен к счетному входу счетчика и на шину сброса в «0» счетчика другого канала, выход элемента ИЛИ заведен на вход установки в «1» триггера режима и на шину записи счетчика узла управления динамикой прогноза, а выход прямого переноса этого счетчика соединен с шиной сброса в «0» триггера, прямой («1») выход которого подключен к адресным входам мультиплексоров узла управления динамикой и схемы коррекции кода прогноза на динамике, выход субблока расчета первой производной через схему формирования ее абсолютного значения заведен на вход первого регистра субблока подсчета приращений, а выходы обоих регистров подключены, соответственно, к входам компараторов обоих каналов, отличающееся тем, что в блок прогноза введен дополнительный субблок коррекции кода прогноза на стационарном режиме из одного сумматора, на первый вход которого заведен выход сумматора усреднения, второй вход сумматора соединен с выходом инвертора второго вычитателя, а выход сумматора субблока подключен к первому информационному входу мультиплексора схемы коррекции кода прогноза на динамике, в которой: первый вход первого сумматора соединен с выходом мультиплексора блока сглаживания, второй вход - с выходом инвертора второго вычитателя, выходные шины первого сумматора, монтажно сдвинутые влево на четыре разряда, заведены на первый вход второго сумматора, второй вход которого соединен с выходом мультиплексора блока сглаживания, а выход второго сумматора подключен к второму информационному входу мультиплексора, адресный вход которого заведен на «1» выход триггера режима субблока подсчета приращений скорости процесса, а выход мультиплексора является выходом устройства.