30-09-2023
Регистр сдвига с обобщённой обратной связью (англ. Generalized feedback shift register (GFSR)) - вариант генератора псевдослучайных чисел (ГПСЧ) Таусворта, предложенный Льюисом и Пейном в 1973 году.
Идея алгоритма GFSR состоит в том, что основная последовательность регистра сдвига , основанная на примитивном трёхчлене , где и - произвольные натуральные числа, причём , выстроена в столбцов, , с правильно подобранной задержкой между столбцами.
Каждый столбец последовательности подчиняется рекурсии
,
где - XOR, или аналог сложения по модулю 2, а , каждое слово также должно подчиняться рекурсии
.
Содержание |
Выберем примитивный трехчлен . Базовая последовательность . Для этого конкретного многочлена второй столбец формируется путем задержки первого столбца на 25 (, в зависимости от ориентации "круга" бит) битовых позиций, третий столбец получается путем задержки второго столбца на другие - 6 битовых позиций, и так далее, пока все пять столбцов не будут заполнены.
Каждое , появляется только один раз в течение всего периода из числа.
Сопровождающая матрица для полинома :
Составим матрицу, столбцами которой являются слова , обозначим её и перемножим на матрицу :
Мы получили матрицу, столбцами которой являются слова . В матричном виде . После применения этой матрицы .
Теоретическое среднее значение и дисперсия алгоритма гарантируются его периодичностью.
В общем случае:
, где
Для L-битной машины:
.
На нормализованном (0, 1) интервале: .
Дисперсия:
,
и на нормализованном интервале (0, 1): .
Корреляция получается усреднением по всему периоду:
.
Регистр сдвига с обобщённой обратной связью.