N-СВЯЗНЫЙ МАРКОВСКИЙ ГЕНЕРАТОР ПСЕВДОСЛУЧАЙНОЙ ДВОИЧНОЙ ПОСЛЕДОВАТЕЛЬНОСТИ Российский патент 2025 года по МПК G06F7/58 H04L9/00 

Описание патента на изобретение RU2841349C1

Изобретение относится к вычислительной технике и предназначено для генерации случайной двоичной последовательности с заданным законом распределения на основе n-связной Марковской цепи.

Известен генератор случайной последовательности [1], содержащий источник случайных чисел, N-разрядный селектор-мультиплексор, оперативное запоминающее устройство, блок контроля интервалов, блок контроля количества генераций, J-входовый элемент ИЛИ, блок элементов И.

Недостатком данного устройства является ограничение функциональных возможностей, связанное с отсутствием вероятностных связей между текущим состоянием генератора и n предыдущими состояниями.

Известен генератор случайной последовательности [2], содержащий селектор-мультиплексор, оперативное запоминающее устройство, источник случайных чисел, К Р-разрядных регистров, К блоков сравнения, шифратор приоритетов, N инверторов.

Недостатком данного устройства является ограничение функциональных возможностей, связанное с отсутствием вероятностных связей между текущим состоянием генератора и n-1 предыдущими состояниями.

Наиболее близким по сущности технического решения заявленному устройству является генератор случайной последовательности [3], содержащий первый селектор-мультиплексор, второй селектор-мультиплексор, первый регистр, источник случайных чисел, оперативное запоминающее устройство, К блоков хранения границ интервалов, К блоков сравнения, шифратор приоритетов, N инверторов, второй регистр.

Недостатком данного устройства также является ограничение функциональных возможностей, связанное с отсутствием вероятностных связей между текущим состоянием генератора и n-1 предыдущими состояниями.

Цель изобретения - создание устройства генерации псевдослучайной двоичной последовательности, обеспечивающее вероятностную связь между текущим значением последовательности и n-1 предыдущими значениями.

Поставленная цель достигается тем, что n-связный Марковский генератор псевдослучайной двоичной последовательности содержит генератор псевдослучайных двоичных чисел, демультиплексор, первый дешифратор, первый блок памяти, регистр памяти со сдвигом влево, второй дешифратор, второй блок памяти, блок вычисления переходных вероятностей, третий блок памяти, мультиплексор, устройство сравнения, причем выход генератора псевдослучайных двоичных чисел подключен к первому информационному входу демультиплексора, второй управляющий вход которого является первым управляющим входом устройства, а третий выход подключен к входу первого дешифратора, выход которого подключен к первому информационному входу первого блока памяти, второй вход которого является вторым управляющим входом устройства, второй выход демультиплексора подключен ко второму информационному входу регистра памяти со сдвигом влево, третий управляющий вход которого является вторым управляющим входом устройства, первый выход демультиплексора подключен к входу второго дешифратора, выход которого подключен к первому входу устройства сравнения, вход второго блока памяти является информационным входом устройства, а выход подключен ко второму входу блока вычисления переходных вероятностей, первый вход которого подключен к выходу первого блока памяти, а 2n-1 выходов подключены соответственно к 2n-1 входам третьего блока памяти, 2n-1 выходов которого подключены соответственно ко вторым 2n-1 информационным входам мультиплексора, первый управляющий вход которого подключен к выходу регистра памяти со сдвигом влево, а выход подключен ко второму входу устройства сравнения, выход которого подключен к первому информационному входу регистра памяти со сдвигом влево и является информационным выходом устройства.

Структурная схема предлагаемого устройства представлена на Фиг. 1 и включает в себя генератор псевдослучайных двоичных чисел 1, демультиплексор 2, первый дешифратор 3, первый блок памяти 4, регистр памяти со сдвигом влево 5, второй дешифратор 6, второй блок памяти 7, блок вычисления переходных вероятностей 8, третий блок памяти 9, мультиплексор 10, устройство сравнения 11, первый управляющий вход 12, второй управляющий вход 13, информационный вход 14, информационный выход 15.

Блок вычисления переходных вероятностей 8 предназначен для вычисления переходных вероятностей по формулам (9-15), приведенных ниже, и может быть реализован с использованием программируемых логических интегральных схем.

Устройство сравнения 11 предназначено для сравнения двух десятичных дробей, в результате которого на выход поступает 0, если пороговое значение, подаваемое на первый вход устройства, больше значения подаваемого на его второй вход, в противном случае - 1.

Первый дешифратор 3 и второй дешифратор 6 интерпретируют двоичную последовательность как двоичное число, меньшее 1, и преобразуют в десятичную дробь.

В статическом виде элементы предлагаемого устройства взаимосвязаны следующим образом (см. Фиг. 1): первый управляющий вход 12, являющийся управляющим входом устройства, подключен ко второму управляющему входу демультиплексора 2, первый информационный вход которого подключен к выходу генератора псевдослучайных двоичных чисел 1, а третий выход подключен к входу первого дешифратора 3, выход которого подключен к первому информационному входу первого блока памяти 4, второй вход которого является вторым управляющим входом устройства 13, второй выход демультиплексора 2 подключен ко второму информационному входу регистра памяти со сдвигом влево 5, третий управляющий вход которого является вторым управляющим входом устройства 13, первый выход демультиплексора 2 подключен к входу второго дешифратора 6, выход которого подключен к первому входу устройства сравнения 11, вход второго блока памяти является информационным входом устройства 14, а выход подключен ко второму входу блока вычисления переходных вероятностей 8, первый вход которого подключен к выходу первого блока памяти 4, а 2n-1 выходов подключены соответственно к 2n-1 входам третьего блока памяти 9, 2n-1 выходов которого подключены соответственно ко вторым 2n-1 информационным входам мультиплексора 10, первый управляющий вход которого подключен к выходу регистра памяти со сдвигом влево 5, а выход подключен ко второму входу устройства сравнения 11, выход которого подключен к первому информационному входу регистра памяти со сдвигом влево 5 и является информационным выходом 15 устройства.

Рассмотрим порядок вычисления вероятностных характеристик перехода в 0 или 1 из двоичных последовательностей длины n-1.

Двоичная последовательность длины n-1 представляет собой кортеж длины n - 1:

где хi ∈{0,1}, i=1,2,…,n-1.

Множество кортежей (1) обозначим как Аn-1 ⋅ Аn-1 конечно и ограничено количеством всевозможных сочетаний значений элементов кортежа Xi ∈ {0,1}. Следовательно мощность Аn-1 принимает следующее значение:

Аn-1 является упорядоченным множеством, где каждый кортеж может быть интерпретирован как двоичное n-1 - разрядное число:

Для проведения дальнейших преобразований для Аn-1 вводится индексное множество:

где

Индексация элементов множества Аn-1 элементами множества J является биективным отображением и выполняется путем сопоставления интерпретированному двоичным числом кортежу Xj элемента из множества J:

где j ∈ {0,1,…,2n-1-1}.

Пример для множества кортежей длины 3:

|000|2 → 0, |001|2 → 1, |010|2 → 2, |011|2 → 3,

|100|2 → 4, |101|2 → 5, |110|2 → 6, |111|2 → 7.

Переход в состояние 0 или 1 из п - 1 предыдущих значений представляет собой кортеж длины n, полученный путем конкатенации кортежа (хх2,…,хn-1) из множества Аn-1 с элементом хn ∈ {0,1}.

С учетом (2) множество полученных кортежей Ап имеет мощность:

и с учетом (4, 5) Аn индексируется множеством f'с мощностью card(J')=2n.

Множество Аn включает два непересекающихся подмножества, где первое подмножество А0n-1 образуется путем конкатенации элементов из Аn-1 и хn=0:

второе подмножество А1n-1 образуется путем конкатенации элементов из Аn-1 и xn=1:

При этом мощности множеств А0n-1 и А1n-1 равны и принимают значение:

Отображение каждого кортежа из Аn-1 в кортежи (6) или (7) множества Аn определяют абсолютные вероятности, которая рассчитывается по следующим правилам:

1. Абсолютные вероятности перехода из кортежей длины n-1 в n имеют следующие зависимости:

где i=1,2,… n-1, j=0,1,2,…,2i-1.

Пример j=0,1, 2, 3:

для j=0:

для j=1:

для j=2:

для j=3:

2. Из зависимости (8) для каждого кортежа длины / существует распределение абсолютных вероятностей получаемых кортежей длины /+1:

где k=0,1,…,2i-1 -1.

3. Из системы (9) для Рмi+1,2k определяется минимальное и максимальное значение:

Если Pi,k - Pi,2k <0 или Pi,2k - Pi,k+2i-1 < 0, то min(Pi+1,2k) = 0

4. Диапазон допустимых значений определяется по следующей формуле:

5. Значения Рi+1,2k определяется из выражения:

где gi+,k - случайная величина на интервале [0,1]. Для n=1 g - не существует.

6. Абсолютные вероятности Рi+1,2k+1, Pi+1,2k+2i вычисляются из (9) с учетом значения Рi+1,2k, полученного из (13):

7. Вычисление переходных вероятностей кортежа длины n-1:

где k=0,1,…,2n-1-1 и интерпретируется как кортеж (6, 7).

Пример для n=3:

Для n=1:

вероятности задаются: Р(0)=0,6, Р(1)=0,4:

Для n=2, k=0, i=1, i+1=2:

из (9) получим:

Р(0)=Р(00)+Р(01),

Р(0)=Р(00)+Р(10);

Р(1)=Р(01)+Р(11),

Р(1)=Р(10)+Р(11).

Из (10) вычислим максимум для Р(00):

mах(P)00))=min(P0),Р(1))=min(0,4;0,6)=0,4.

Из (11) вычислим минимум для Р(00):

min(P(00))=mах(Р(0) - Р(1), Р(0) - Р(1))=mах(0,6 - 0,4;0,6 - 0,4)=0,2.

Из (12) вычислим диапазон допустимых значений:

I(Р(00))=max(P(00)) - min(P(00))=0,4 - 0,2=0,2

Из (13) вычислим значение Р(00), где случайная величина g2,0=0,5:

Р(00)=I(P(00))g2,0+min(Р(00))=0,2 ⋅ 0,5+0,2=0,3.

Из (14) вычислим Р(01), Р(10), Р(11):

Р(01)=Р(0) - Р(00)=0,6 - 0,3=0,3,

P(10)=Р(0) - Р(00)=0,6 - 0,3=0,3,

Р(11)=Р(1) - Р(01)=0,4 - 0,3=0,1.

Для n=3, k=0,1; i=2, i+1=3:

для k=0:

из (9) получим:

Р(00)=Р(000)+Р(001),

Р(00)=Р(000)+Р(100);

Р(01)=Р(001)+Р(101),

Р(10)=Р(100)+Р(101).

Из (10) вычислим максимум для Р(000):

max(P(000))=min(P(00), P(00))=min(0,3;0,3)=0,3.

Из (11) вычислим минимум для Р(000):

min(P(000))=mах(Р(00) - Р(01), Р(00) - Р(10))=mах(0,3 - 0,3;0,3 - 0,3)=0.

Из (12) вычислим диапазон допустимых значений:

I(Р(000))=max(P(000)) - min(P(000))=0,3 - 0=0,3

Из (13) вычислим значение Р(000), где случайная величина g3,0=0,4:

Р(000)=I(P(000))g3,0+min(P(000))=0,3 ⋅ 0,4+0=0,12.

Из (14) вычислим Р(001), Р(100), Р(101):

Р(001)=Р(00) - Р(000)=0,3 - 0,12=0,18,

Р(100)=Р(00) - Р(000)=0,3 - 0,12=0,18,

Р(101)=Р(01) - Р(001)=0,3 - 0,18=0,12.

для k=1:

из (9) получим:

Р(01)=Р(010)+Р(101),

Р(00)=Р(010)+Р(110);

Р(11)=Р(011)+Р(111),

Р(11)=Р(110)+Р(111).

Из (10) вычислим максимум для Р(010):

mах(Р(010))=min(P(01), P(10))=min(0,3;0,3)=0,3.

Из (11) вычислим минимум для Р(000):

min(P(010))=max(P(01) - P(l 1), P(10) - P(11))=max(0,3 - 0,1;0,3 - 0,1)=0,2.

Из (12) вычислим диапазон допустимых значений:

I(Р(010))=max(P(010)) - min(P(010))=0,3 - 0,2=0,1

Из (13) вычислим значение Р(010), где случайная величина g3,1=0,6:

Р(010)=I(P(010))g3,1+min(P(010))=0,1 ⋅ 0,6+0,2=0,26.

Из (14) вычислим Р(001), Р(100), Р(101):

Р(011)=Р(01) - Р(010)=0,3 - 0,26=0,04,

Р(110)=Р(10) - Р(010)=0,3 - 0,26=0,04,

Р(111)=Р(11) - Р(011)=0,1 - 0,04=0,06.

Для наглядности значения абсолютных вероятностей, полученных для n - 1, 2, 3 систематизируем в таблице 1.

7. Вычисление переходных вероятностей (15) для кортежей длины 2 в 0:

Функционирование предлагаемого устройства осуществляется в два этапа. Этап 1 - предварительные вычисления набора данных для генерации последовательности. Этап 2 - генерация последовательности.

На этапе 1 с управляющего входа 12 устройства на второй управляющий вход демультиплексора 2 подается сигнал «0», включающий коммутацию его первого информационного входа с третьим выходом, при этом с генератора псевдослучайных двоичных чисел 1 подается 2n-1-1 последовательностей длины n бит, на первый информационный вход демультиплексора 2, далее поступают через его третий выход на вход первого дешифратора 3. В дешифраторе 3 2n-1-1 последовательностей длины n бит преобразуются в десятичные дроби, которые соответствуют значениям случайных величин (13). Со второго управляющего входа 13 устройства на второй управляющий вход первого блока памяти 4 подается сигнал «0», включающий режим «записи/выдачи данных», также подается сигнал «0» на третий управляющий вход регистра памяти со сдвигом влево 5, включающий режим «начального заполнения данных» только со второго его информационного входа. Далее с выхода первого дешифратора 3 2n-1-1 значений случайных величин поступают на первый блок памяти 4. Из блока памяти 4 2n-1-1 значений случайных величин поступают на первый информационный вход блока вычисления переходных вероятностей 8. Далее с информационного входа 14 устройства поступают на вход второго блока памяти 7 значения абсолютных вероятностей Р(0) и Р(1), которые подаются с выхода блока памяти 7 на первый информационный вход блока вычисления переходных вероятностей 8. Далее в блоке вычисления переходных вероятностей 8 вычисляются 2n-1 переходных вероятностей в 0, которые передаются с 2n-1 выходов блока вычисления переходных вероятностей 8 на 2n-1 входов третьего блока памяти 9, в котором осуществляется запись 2n-1 переходных вероятностей. Далее с управляющего входа 12 устройства на второй управляющий вход демультиплексора 2 подается сигнал «1», включающий коммутацию его первого информационного входа со вторым выходом, при этом с генератора псевдослучайных двоичных чисел 1 подается последовательность длины n-1 бит, которая далее со второго выхода демультиплексора 2 поступает на второй информационный вход регистра памяти со сдвигом влево 5, в котором осуществляется запись последовательности длины n-1. Далее с управляющего входа 13 устройства на второй управляющий вход первого блока памяти 4 подается сигнал «1», включающий режим «блокировки записи/ выдачи данных», также подается сигнал «1» на третий управляющий вход регистра памяти со сдвигом влево 5, включающий режим «побитовой записи данных со сдвигом влево» только с его первого информационного входа.

На этапе 2 в момент начала работы с управляющего входа 12 устройства на второй управляющий вход демультиплексора 2 подается сигнал «2», включающий коммутацию его первого информационного входа с первым выходом, при этом значение регистра памяти со сдвигом влево 5 определяет номер коммутируемого входа мультиплексора 10, т.е. определяет значение переходной вероятности в 0 для текущего значения двоичной последовательности, записанной в регистр памяти со сдвигом влево 5. Далее на первом шаге генерации последовательности с генератора псевдослучайных двоичных чисел передается последовательность длины п, которая поступает с первого выхода демультиплексора 2 на второй дешифратор 6, где преобразуется в десятичную дробь, далее значение поступает на первый информационный вход устройства сравнения 11, при этом на первый информационный вход устройства сравнения 11 поступает пороговое значение (значение переходной вероятности в 0), далее на выходе устройства сравнения формируется значение 0, если значение на первом информационном входе меньше значения на втором информационном входе, и «1» в противном случае. Далее результат сравнения поступает на информационный выход 15 устройства и поступает на первый информационный вход регистра памяти со сдвигом влево. Генерация второго и последующих бит последовательности выполняется аналогично.

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

Предложенное устройство может быть реализовано с использованием современной элементной базы программируемых логических интегральных схем фирм Altera и Xilinx.

Литература

1. RU 2250489, 2005.

2. RU 2313125, 2007.

3. RU 2542903, 2015.

Похожие патенты RU2841349C1

название год авторы номер документа
Устройство для формирования тестов 1987
  • Борщевич Виктор Иванович
  • Бодян Геннадий Константинович
  • Жданов Владимир Дмитриевич
  • Сидоренко Вячеслав Васильевич
SU1444781A1
ПРОЦЕССОР ПОВЫШЕННОЙ ДОСТОВЕРНОСТИ ФУНКЦИОНИРОВАНИЯ 2018
  • Павлов Александр Алексеевич
  • Волков Владимир Захарович
  • Корсунский Денис Александрович
  • Кудрявцев Дмитрий Сергеевич
  • Лисицин Александр Владимирович
  • Марданов Гасанали Хафизович
  • Поляков Егор Андреевич
RU2708956C2
Формирователь тестов 1989
  • Гремальский Анатолий Александрович
  • Андроник Сергей Михайлович
SU1661769A1
ПРИБОР ДЛЯ РЕЙТИНГОВОЙ ОЦЕНКИ УРОВНЯ ГОТОВНОСТИ К ИННОВАЦИОННОЙ ДЕЯТЕЛЬНОСТИ 2014
  • Давыдова Наталья Васильевна
  • Громова Александра Андреевна
  • Назаров Бахром Курбонович
  • Сарафанников Евгений Витальевич
  • Худайназаров Юрий Кахрамонович
  • Худайназарова Динара Равшановна
  • Чернолес Владимир Петрович
  • Юшков Степан Александрович
RU2548478C1
Устройство для обмена информацией в мультипроцессорной вычислительной системе 1988
  • Мельников Владимир Алексеевич
  • Харченко Вячеслав Сергеевич
  • Кныш Павел Иванович
  • Кичигин Юрий Александрович
SU1571594A1
Генератор псевдослучайных последовательностей 1990
  • Шевчук Петр Сергеевич
  • Толубко Владимир Борисович
  • Казак Юрий Александрович
SU1758851A2
Генератор случайного процесса 1984
  • Анишин Анатолий Сергеевич
SU1234833A1
Устройство для декодирования двоичных блочных кодов, согласованных с многопозиционными сигналами 1987
  • Данилин Александр Сергеевич
  • Зиновьев Виктор Александрович
  • Зяблов Виктор Васильевич
  • Коробков Дмитрий Львович
  • Лицын Семен Натанович
  • Портной Сергей Львович
SU1587644A1
Генератор псевдослучайных кодов 1983
  • Ярмолик Вячеслав Николаевич
  • Фомич Владимир Иванович
  • Кобяк Игорь Петрович
  • Шмарук Николай Владимирович
  • Подгорский Александр Иванович
SU1167710A1
Формирователь тестов 1987
  • Гремальский Анатолий Александрович
  • Андроник Сергей Михайлович
SU1552185A1

Иллюстрации к изобретению RU 2 841 349 C1

Реферат патента 2025 года N-СВЯЗНЫЙ МАРКОВСКИЙ ГЕНЕРАТОР ПСЕВДОСЛУЧАЙНОЙ ДВОИЧНОЙ ПОСЛЕДОВАТЕЛЬНОСТИ

Изобретение относится к устройствам генерации случайной двоичной последовательности с заданным законом распределения на основе n-связной Марковской цепи. Технический результат заключается в повышении достоверности генерируемой последовательности с вероятностной связью между текущим значением последовательности и предыдущими значениями. Технический результат достигается за счет того, что устройство содержит генератор псевдослучайных двоичных чисел, демультиплексор, первый дешифратор, первый блок памяти, регистр памяти со сдвигом влево, второй дешифратор, второй блок памяти, блок вычисления переходных вероятностей, третий блок памяти, мультиплексор, устройство сравнения, соединенные между собой с обеспечением генерации числа, вероятностно связанного с предыдущими n-1 числами последовательности. 1 ил.

Формула изобретения RU 2 841 349 C1

N-связный Марковский генератор псевдослучайной двоичной последовательности, включающий генератор псевдослучайных двоичных чисел, регистр памяти со сдвигом влево, мультиплексор, устройство сравнения, отличающийся тем, что введены демультиплексор, первый дешифратор, первый блок памяти, второй дешифратор, второй блок памяти, блок вычисления переходных вероятностей, третий блок памяти, причем выход генератора псевдослучайных двоичных чисел подключен к первому информационному входу демультиплексора, второй управляющий вход которого является первым управляющим входом устройства, а третий выход подключен к входу демультиплексора, выход которого подключен к первому информационному входу первого блока памяти, второй вход которого является вторым управляющим входом устройства, второй выход демультиплексора подключен к второму информационному входу регистра памяти со сдвигом влево, третий управляющий вход которого является вторым управляющим входом устройства, первый выход демультиплексора подключен к входу второго дешифратора, выход которого подключен к первому входу устройства сравнения, вход второго блока памяти является информационным входом устройства, а выход подключен к второму входу блока вычисления переходных вероятностей, первый вход которого подключен к выходу первого блока памяти, а 2n-1 выходов подключены соответственно к 2n-1 входам третьего блока памяти, 2n-1 выходов которого подключены соответственно к вторым 2n-1 информационным входам мультиплексора, первый управляющий вход которого подключен к выходу регистра памяти со сдвигом влево, а выход подключен к второму входу устройства сравнения, выход которого подключен к первому информационному входу регистра памяти со сдвигом влево и является выходом устройства.

Документы, цитированные в отчете о поиске Патент 2025 года RU2841349C1

ГЕНЕРАТОР СЛУЧАЙНОЙ ПОСЛЕДОВАТЕЛЬНОСТИ 2019
  • Авраменко Владимир Семенович
  • Боголепов Григорий Сергеевич
  • Маликов Альберт Валерьянович
  • Михайличенко Николай Валерьевич
  • Паращук Игорь Борисович
RU2717629C1
ГЕНЕРАТОР СЛУЧАЙНОЙ ПОСЛЕДОВАТЕЛЬНОСТИ 2022
  • Константинов Сергей Анатольевич
  • Михайличенко Антон Валерьевич
  • Михайличенко Николай Валерьевич
  • Паращук Игорь Борисович
  • Саяркин Виталий Андреевич
  • Сундуков Вячеслав Алексеевич
  • Шинкарев Семен Александрович
RU2797406C1
УСТРОЙСТВО ДЛЯ ГЕНЕРАЦИИ ПСЕВДОСЛУЧАЙНЫХ ЧИСЕЛ 2022
  • Иванов Михаил Александрович
  • Стариковский Андрей Викторович
RU2784684C1
US 20190258458 A1, 22.08.2019
EP 4252106 A1, 04.10.2023.

RU 2 841 349 C1

Авторы

Вишневский Артем Константинович

Грачев Александр Сергеевич

Конышев Михаил Юрьевич

Святкин Святослав Сергеевич

Смирнов Сергей Владиславович

Соловьева Анна Алексеевна

Даты

2025-06-06Публикация

2024-03-20Подача