АДАПТИВНОЕ ЦИФРОВОЕ ПРОГНОЗИРУЮЩЕЕ УСТРОЙСТВО
ADAPTIVE DIGITAL PREDICTIVE DEVICE

Изобретение относится к автоматике и вычислительной технике и может быть использовано для сглаживания и прогнозирования стационарных и нестационарных случайных процессов, повышения точности управления в цифровых системах наведения различных (в т.ч. баллистических) объектов.
Известно адаптивное цифровое сглаживающее и прогнозирующее устройство (патент РФ №2626338, МПК G06F 15/00, 26.07.2017, бюл. №21), содержащее блок сглаживания и блок прогноза, в состав которого входят: три вычитателя, узел управления динамикой прогноза, два субблока квадратичного и линейного прогнозов, схему коррекции кода прогноза на динамике, субблоки расчета первой производной и подсчета приращений скорости процесса и блок адаптации. Устройство функционально ограничено.
Наиболее близким по технической сущности к заявляемому устройству является, выбранное в качестве прототипа, адаптивное цифровое сглаживающее и прогнозирующее устройство (патент РФ №2622852, МПК G06F 17/17, 20.06.2017, бюл. №17), содержащее блок сглаживания и блок прогноза, в состав которого входят: два вычитателя, узел управления динамикой прогноза, два субблока квадратичного и линейного прогнозов, схему коррекции кода прогноза на динамике, субблоки расчета первой производной и подсчета приращений скорости процесса. Устройство имеет относительно большой объем оборудования и малое быстродействие.
На практике, по характеру изменения во времени дискретные случайные процессы (СП) можно разделить на два вида (режима): установившийся (стационарный) и переходный (в дальнейшем «динамика»). Первый характеризуется установившейся линейной скоростью медианы (детерминированной основы) СП, второй имеет нелинейный (квадратичный) характер изменения во времени и занимает относительно небольшое время перехода медианы СП на новый установившийся режим. Спектр изменения скорости медианы СП на динамике может занимать достаточно большой диапазон: от медленно меняющегося до высоких скоростей (почти скачка).
n
n-1
n-2
n-3
n
n-1
n-2
n
n-3
n-2
В аналогах и прототипе реализованы формулы операторов прогноза, полученные аналитически с помощью аппроксимирующих многочленов по 4-м точкам (y, y, y, y) или по 3-м точкам (y, y, y) буфера памяти предыстории входного сглаженного СП методом наименьших квадратов (МНК). Если обозначить временной интервал между текущей (y) и конечной точкой (y или y) буфера памяти предыстории как базовый период (h) хранения информации для расчета кода прогноза, то время (глубина) прогноза Н для алгоритма расчета по МНК по 4-м точкам составит только треть базового периода H=1/3h, а по 3-м точкам - половину Н=1/2h.
n+h
n
n-h
Поскольку медиана СП на выходе блока сглаживания имеет линейную зависимость по времени на стационарном режиме, то вместо относительно сложного оператора расчета кода прогноза по МНК в предложенном устройстве целесообразно использовать простой алгоритм линейного прогноза, позволяющий довести время (глубину) прогноза до полного базового периода Н=h и упростить расчет кода прогноза y, используя всего две точки (ординаты) буфера: y (текущую) и y (конечную), без какого-либо ущерба для точности прогноза. Для увеличения времени прогноза, естественно, следует увеличить буфер памяти предыстории.
Техническая задача для предлагаемого устройства заключается в расширении функциональных возможностей путем увеличения времени прогноза в пять раз H=5h при том же объеме буфера памяти предыстории, т.е. не наращивая его в пять раз.
k
п
Поэтому, в цифровом прогнозирующем устройстве, в состав которого входят: блок сглаживания, содержащий m=32 последовательно соединенных каналов, регистр и мультиплексор, причем выходы каждого m=1, 2, 4, 8, 16 и 32-го каналов заведены на информационные входы мультиплексора, адресный вход которого подключен к выходу регистра, вход последнего подсоединен к первому управляющему входу устройства для задания степени (эффективности) сглаживания k=0, 1, 2, 3, 4 или 5 (m=2), а вход первого канала является информационным входом (х) устройства, и блок прогноза, содержащий буфер предыстории из блока регистровой памяти, мультиплексора, инвертора и сумматора; триггер режима; узел управления динамикой прогноза, содержащий регистр ввода уставки времени прогноза, вход которого является вторым управляющим входом устройства, задающим время прогноза h, инвертор, счетчик и мультиплексор, причем выходные шины регистра ввода времени прогноза подключены, непосредственно, - к первому входу мультиплексора, монтажно сдвинутые вправо на три разряда - к второму входу мультиплексора и, через инвертор, - к входу счетчика, шина прямого переноса которого заведена на «0» вход (шину сброса) триггера режима, выход мультиплексора соединен с адресным входом мультиплексора буфера предыстории, а адресный вход мультиплексора узла подключен к прямому («1») выходу триггера режима; субблок переключения режима работы устройства со стационарного на динамику, содержащий два последовательно соединенных регистра хранения текущей и предыдущей дискрет скорости процесса, компаратор, два элемента И, реверсивный счетчик и элемент ИЛИ, причем выход субблока заведен на «1» вход триггера режима и на шину записи счетчика узла управления динамикой прогноза, а информационный вход первого регистра субблока подключен к выходу сумматора буфера предыстории; узел тактирования, содержащий три элемента задержки; схема коррекции кода прогноза на динамике содержащая два сумматора; субблок расчета кода прогноза на стационарном режиме, содержащий два сумматор и мультиплексор, для решения поставленной задачи первый вход первого сумматора субблока расчета кода прогноза на стационарном режиме подключен к выходу мультиплексора буфера предыстории, второй вход первого сумматора, монтажно сдвинутый влево на один разряд, соединен с выходом сумматора буфера предыстории, выход первого сумматора субблока заведен на первый вход второго сумматора, второй вход которого, монтажно сдвинутый вправо на два разряда подключен к выходу сумматора буфера предыстории, а выход второго сумматора заведен на второй информационный вход мультиплексора субблока, первый вход первого сумматора схемы коррекции кода прогноза на динамике подключен к выходу мультиплексора блока сглаживания, второй вход первого сумматора схемы, монтажно сдвинутый влево на три разряда, соединен с выходом сумматора буфера предыстории, выход первого сумматора схемы заведен на первый вход второго сумматора, второй вход которого, монтажно сдвинутый вправо на пять разрядов, подключен ко второму входу второго сумматора, а выход его заведен на первый информационный вход мультиплексора субблока расчета кода прогноза на стационарном режиме, адресный вход мультиплексора субблока подключен к прямому («1») выходу триггера режима, а выход субблока является выходом устройства.
Сущность изобретения поясняется чертежами, на которых изображены: фиг. 1 - блок-схема предлагаемого устройства; фиг. 2 - схема узла тактирования блока прогноза; фиг. 3 - графическая интерпретация вывода формул расчета кода прогноза на стационарном режиме и коррекции на динамике; приложение (на 3-х листах) - результаты моделирования работы устройства на ЭВМ при обработке нестационарного случайного процесса.
n
n
T
Устройство содержит (см. фиг. 1) блок сглаживания 1, состоящий из многоканального цифрового сглаживающего устройства 2 на m=32 последовательно соединенных каналов (см. авт. св. СССР №686034, кл. G06F 15/32, 1979 и №748417, 1980), регистра 3 задания степени сглаживания (к) и мультиплексора 4, на выходе которого сглаженный код (y) медианы СП; блок прогноза, содержащий буфер предыстории 5 из блока 6 регистровой памяти с последовательно соединенными регистрами 7, мультиплексора 8, блока инверторов 9 и сумматора 10; субблок 11 переключения режима работы устройства со стационарного на динамику, содержащий два последовательно подключенных регистров 12 и 13, компаратор 14, два элемента И 15 и 16, реверсивный счетчик 17 и элемент ИЛИ 18; триггер режима 19 (ТГ); узел 20 управления динамикой прогноза, содержащий регистр 21 ввода времени прогноза (h), вход 22 которого является первым управляющим входом устройства, через который вводится виртуальное время прогноза h=АТ, где Т - цикл работы устройства, если принять Т=1 за условную единицу времени, тогда h=A - количество (макс. адрес) регистров 7 в блоке памяти 6, инвертор 23, счетчик 24 времени (h) работы блока прогноза на динамике и мультиплексор 25; второй управляющий вход 26 ввода степени сглаживания (к) СП, информационный (x) 27 и тактирующий (f) 28 входы устройства; узел 29 тактирования блока прогноза (см. фиг. 2) содержит три элемента задержки 30; субблок 31 расчета кода прогноза на стационарном режиме содержит два сумматора 32 и 33, мультиплексор 34; схему 35 коррекции кода прогноза на динамике из двух сумматоров 36 и 37; выход устройства 38.
n
n-h
n+5h
n-h
Графическая интерпретация линейного алгоритма работы оператора расчета кода прогноза на стационарном режиме представлена на фиг. 3, где Δ0=(Y-Y) и Δ5=(Y-Y) - корректирующие разности прогноза на стационарном режиме, тогда по известным соотношениям в подобных треугольниках имеем:
n
y'=Δ0/h - скорость (1-я производная) медианы СП.
s
n+5h
Уравнение (1) реализовано в предложенном устройстве в субблоке 31 расчета кода прогноза на стационарном режиме уже для реального увеличенного в пять раз времени прогноза Н=5h, а выходной код прогноза Y устанавливается на втором информационном входе мультиплексора субблока.
n
n-h
k
С началом динамики (переходом медианы СП на нелинейный участок) новая (свежая) информация поступает только на текущий (начальный Y) участок буфера предыстории, в конце буфера (Y) сохраняются данные предыдущего стационарного режима: естественно, получаемые текущие дискреты прогноза неточны и существенно отличаются от реалий. Для использования линейного алгоритма расчета прогноза и на динамике устройство переключается на работу не с полным (h), а усеченным в 8 раз буфером предыстории (медиана СП на динамике в этом случае аналитически как бы подвергается кусочно-линейной аппроксимации, т.е. нелинейная кривая МП заменяется восемью почти прямолинейными отрезками). Теперь в расчете кода прогноза (по линейному алгоритму) участвуют только текущие («свежие») дискреты начального линейного участка буфера предыстории. Получаемый код дает уже точный и достоверный прогноз изменения (роста или снижения) входного процесса на динамике, но только для уменьшенного в 8 раз времени (глубины) прогноза h=h/8 (условно, его можно назвать технологическим).
к
k
k
n
n-h
n+5h
n-h
k
Графическая интерпретация линейного алгоритма работы оператора коррекции кода прогноза на динамике, опирающегося на постулат о кусочно-линейной аппроксимации медианы входного процесса представлена на фиг. 3, где ΔK=(Y-Y) и ΔR5=(Y-Y) - корректирующие разности прогноза на динамике, h=h/8, тогда, в соответствии с известными соотношениями сторон в подобных треугольниках, имеем:
Уравнение (2) реализовано в предложенном устройстве в схеме 35 коррекции кода прогноза на динамике, а выходной код прогноза, скорректированный уже для полной упятиренной глубины прогноза H=5h, устанавливается на первом информационном входе мультиплексора 34 субблока расчета кода прогноза на стационарном режиме 31.
п
n
n
n
n
n
К
Для определения момента перехода стационарного режима на динамику используется алгоритм фиксации серии из К=8 приращений скорости медианы СП на стационарном режиме одного знака подряд. Приращение - это результат сравнения на каждом такте текущего и предыдущего значений 1-й производной в (у) точке буфера предыстории: Δy'=y'[w]-y'[w-1] Разнознаковые приращения скорости медианы СП относительно средней (установившейся) скорости на стационарном режиме равновероятны и подчиняются геометрическому закону распределения Р(Δy'=К)=(1/2), для К=8: Р(Δy'=8)=1/256≈0.004, т.е. настолько мала, что можно считать появление такой серии началом переходного режима (динамики). Введенный в устройство субблок 11 переключения режима фиксирует такую серию и переключает устройство со стационарного режима на динамику.
k
Цикл работы устройства состоит из двух тактов. В первом - завершает работу блок сглаживания 1, каждый канал которого реализует оператор экспоненциального сглаживания . Эффективность сглаживания выбирается заданием со входа 26 степени k=0, 1, 2, 3, 4 или 5, которая в свою очередь определяет число задействованных каналов сглаживания m=2 (1, 2, 4, 8, 16 или 32).
n
n
n
n
n
n+5h
k
d
Во втором такте узел тактирования 29 первым минитактом ("а") инициирует работу буфера предыстории 5, субблока 31 расчета и схемы 35 коррекции по формулам (1) и (2). Во втором минитакте «в» в регистр 13 из регистра 12 переписывается предыдущая y'[(w-1)] (В), а в последний - текущая y'[(w)] (А) дискреты скорости процесса. В третьем минитакте «с» при положительном приращении (+Δy') в компараторе 14 тактирующий импульс поступит на суммирующий (при отрицательном - на вычитающий) вход трехразрядного реверсивного счетчика 17. Через 8 циклов (К=8) приращений одного знака подряд в счетчике выработается импульс прямого (при +Δy') или обратного (при -Δy') переноса, который через элемент ИЛИ 18 установит триггер режима 19 в «1» (ТГ=1). Устройство переключится на динамику. Этот же импульс перепишет в счетчик 24 из регистра 23 узла 20 управления динамикой инверсный код количества тактов (h), т.е. время работы устройства на динамическом режиме. Прямой выход («1») триггера 19 разрешит выдачу кода прогноза Y на динамике с мультиплексора 34 схемы расчета 31 на выход устройства 38 и переключит мультиплексор 25 узла 20 управления динамикой на работу блока прогноза только с 1/8 частью буфера предыстории процесса, соответственно, с h=h/8 (технологическим) временем прогноза.
n+5h
Переход устройства с динамики на стационарный режим осуществляется сбросом в «0» триггера режима (ТГ=0) импульсом прямого переноса счетчика 24 узла управления 20 после поступления на его счетный вход с тактирующего входа 28 серии h импульсов, т.е. только после заполнения буфера предыстории процесса новой информацией на новом режиме. Мультиплексор 25 переключится на выдачу в буфер предыстории заданного виртуального интервала (времени) прогноза h, а мультиплексор 33 - на выход 36 устройства кода прогноза Y.
В приложении приведены результаты моделирования работы устройства.
Реализация в устройстве линейного алгоритма прогноза медианы СП на обоих режимах позволяет без ущерба для точности упростить устройство, увеличить глубину прогноза и повысить быстродействие.
Ниже в таблице приведена линейка алгоритмов реализации расчета кода прогнозов при увеличении времени прогноза в нечетное число раз: Н=к h, где к=1, 3, 5, 7, 9…
ПРИЛОЖЕНИЕ.