книги из ГПНТБ / Яковлев, В. В. Стохастические вычислительные машины
.pdfПри соответствующем выборе коэффициентов а,- последователь ность двоичных символов ак, генерируемая устройством, может иметь максимально возможный (для данного т) период М = 2т —
— 1. Такая последовательность характеризуется равновероят ностью и случайностью появления нулей и единиц [63] подобно
<*)
Рис. 116. Генератор двоичной последовательности максималь ной длины (а) и граф последовательности состояний регистра сдвига (б)
истинно случайной последовательности, и поэтому она получила название псевдослучайной последовательности максимальной длины.
Получение такой последовательности можно показать на при мере генератора с четырехразрядным регистром сдвига (рис. 116, а). Произвольный к-й символ двоичной последовательности, гене
рируемой этим устройством, |
удовлетворяет линейному соотно |
шению ак = ак_ 1 ф ак_ 4, где |
знак ф означает сложение по мо |
240
дулю 2. Если исходное состояние регистра (xlt х 2, х3, ж4) = (1 ,0 , 0, 0), то на выходе цепи обратной связи будет генерироваться по следовательность с периодом М = 15 ...111010110010001...
Последовательность состояний регистра сдвига приведена на рис. 116, б. Из шестнадцати возможных состояний отсутствует только одно состояние (0,0,0,0), которое является запрещенным. Если регистр сдвига установить в нулевое состояние, то генери руемая им последовательность будет состоять только из одних нулей.
Последовательность двоичных чисел, формируемых разрядами регистра сдвига на рис. 115, может обладать свойствами последо вательности случайных чисел с равномерным распределением. Изучение этого вопроса начнем с исследования свойств псевдослу чайных последовательностей максимальной длины.
38. Условия генерирования и свойства псевдослучайных последовательностей максимальной длины
Поведение схемы на рис. 115 можно описать в виде следующей матрицы:
|
«1 |
а 2 |
• ‘ * |
а т -1 |
®гп |
|
|
1 |
0 |
. . . |
0 |
0 |
|
Л « = |
0 |
1 |
|
0 |
0 |
(7.3) |
|
0 |
0 |
|
1 |
0 |
|
где значения коэффициентов a i , a 2, . . ., а т £ (0,1) определяются видом обратной связи регистра сдвига. Элементы первой строки матрицы ||Л|| определяют операцию, осуществляемую суммато рами по модулю 2 цепи обратной связи, а единичные элементы
в диагонали — операцию |
сдвига содержимого регистра. |
||
Если последовательность состояний регистра |
сдвига обозна |
||
чить как последовательность т-мерных векторов X |
= |
(xL, х.2, ..., хт) |
|
с компонентами из поля |
0,1, тогда преобразование, |
осуществляе |
|
мое схемой в некотором |
к-м такте работы, можно |
записать |
«(ft)
Х1
~(ft>
х2
I!
«(ft)
Н2
0
1
. о
‘ • |
* |
а т -1 |
• . |
• |
0 |
. . . |
|
о |
. . . |
1 |
а т
0
0
’ О
~.<ft-n xi
v<k-i)
или сокращенно X (fc) = |А ЦХ^'1’. |
Последовательным |
при |
менением матрицы \\А\\ к какому-либо |
состоянию X <fe) |
можно |
найти последующие состояния регистра сдвига |
|
|
X (fe+1) = IА I X (fc), X (ft+2>= 1A f X (fc), |
. . ., X'*+s) = I A |SX(fc>. |
16 в . В. Яковлев |
241 |
Число М , |
при котором ||^4||MX (ft) = Х (&) или ||.4||'м = |
||2?||, |
где |
|
Ill'll — единичная матрица, называется периодом схемы. |
В |
общем |
||
случае все |
множество из 2т m-мерных двоичных векторов |
X |
раз |
бивается на ряд подмножеств или циклов, каждый из которых может генерироваться схемой, если первоначальное состояние регистра будет соответствовать какому-либо вектору X из данного подмножества. При этом каждому циклу соответствует своя по следовательность двоичных символов с периодом, равным периоду цикла.
В зависимости от свойств матрицы ||М|| генератор последова тельностей на основе регистра сдвига с линейной обратной связью может иметь один нулевой — тривиальный цикл с периодом М = = 1 и некоторое число нетривиальных циклов одинаковой или разной длины. Генератору последовательности максимальной длины соответствует предельный случай, когда вся совокупность нетривиальных циклов состоит только из одного цикла макси мальной длины М = 2т — 1.
Циклические свойства генератора последовательностей пол ностью определяются характеристическим многочленом
ф(х) = х"1 + а1хт_1 + а2хт -2+ . . . + а т ,
которым является определитель матрицы |А + х^Ц, образо ванной прибавлением переменной х к диагональным элементам матрицы |^41|. Так для схемы, изображенной на рис. 116, а, ха рактеристический многочлен запишется в виде
( 1 + Х ) |
0 |
0 |
1 |
1 |
X |
0 |
0 |
0 |
1 |
X |
= 1 + х3 + х4. |
0 |
|||
0 |
0 |
1 |
X |
|
|
|
|
Периодические свойства |
последовательностей, генерируемых |
схемой, связаны с понятиями приводимости и примитивности многочлена ф (х). Если многочлен ф (х) степени т не делится ни на какой другой многочлен от х пониженной степени, то такой многочлен называется неприводимым. Примитивность ф (х) озна чает, что он не является сомножителем к многочлену xs + 1 для любого s меньшего, чем (2т — 1). Если характеристический много член ф (х) неприводим и примитивен, то схемой генерируется по
следовательность, |
имеющая |
максимальный |
период М = 2т — 1. |
|||
В |
других случаях |
период будет меньше чем (2га — 1). |
|
|||
|
Пример. |
Многочлен1 |
ф(х) = 1 + |
х 2 + х 3 + |
х4 = (1-|- |
|
+ |
х)(1 + х + |
х3) |
является |
приводимым |
и поэтому |
порождает |
1 Необходимо пояснить, что действия над многочленами производятся по правилам арифметики по модулю 2, в которой сложение равносильно вы читанию, т. е. х* + х* = 0.
последовательности ..,1111111;.. |
с периодом М — 1, |
...1100101... |
|
с периодом М = 7, ...1010001 |
... с периодом М = 7. |
|
|
Все периоды меньше 24 — 1 = |
|
15. В этом нетрудно |
убедиться, |
подставив значения коэффициентов а,- многочлена <р(х) в рекур рентное соотношение (7.2) и решая его для каждого к (к = 0, 1,
2, ...) при различных начальных |
состояниях регистра сдвига |
(х1г х 2, х 3, х4) = (а_15 а_2, а_3, а_4). |
Заметим, что период отдель |
ной последовательности равен числу различных состояний регистра в данном цикле, а сумма периодов всех последовательностей — полному числу состояний (24 — 1).
Таким же образом можно показать, что непримитивный много
член ф (х) = 1 + х + х 2 + х3 + х4 = |
1 4-х |
порождает по- |
|
все с периодом |
|
следовательности ...11110..., ...11000..., ...10100..., |
М= 5.
Итак, основной задачей синтеза генератора псевдослучайной
последовательности максимальной длины М = 2т — 1 является нахождение многочлена т-ж степени, удовлетворяющего назван ным условиям. Расстановка связей от разрядов регистра сдвига к сумматорам по модулю 2 цепи обратной связи (рис. 115) произ водится в соответствии с коэффициентами а, этого многочлена.
Известно, что для данного т существует точно Ф (М} = 2т —
— 1 )]т различных многочленов, являющихся неприводимыми и примитивными. Функция Ф (М), называемая функцией Эйлера, представляет количество положительных целых чисел меньших или равных М и взаимно простых с М . Так как число Ф (М) с ро стом т очень быстро растет, то число многочленов степени т , порождающих последовательности максимальной длины, с ростом т также быстро увеличивается. Если при т = 8 оно равно 16, то при т = 16 это число уже равно 2048. Среди множества много членов заданной степени можно отыскать многочлен, имеющий минимальное число ненулевых коэффициентов а,-. Этому случаю будет соответствовать технически простейшая реализация генера тора, так как при этом цепь обратной связи регистра сдвига будет
содержать |
наименьшее количество сумматоров по модулю 2. |
В табл. |
17 приводятся варианты генераторов последовательно |
стей максимальной длины с одним сумматором в цепи обратной связи, соединенным с т-м и i-м разрядами регистра сдвига. Если один из входов сумматора подключить не к i-му, а к (т — £)"МУ разряду регистра, то устройство будет генерировать последова тельность максимальной длины с обратным порядком следования двоичных символов.
Исчерпывающую таблицу всех неприводимых многочленов любой степени вплоть до т = 34 можно найти в [52], а в [97] приводится таблица многочленов, порождающих последовательно
сти максимальной длины, для т |
100 по одному для каждого т. |
Перейдем к рассмотрению свойств двоичной последователь |
|
ности максимальной длины, |
для чего обозначим ее через |
1 6 * |
243 |
|
|
|
|
|
|
|
Т а б л и ц а |
17 |
|
Данные для построения генераторов псевдослучайных |
|
||||||
|
|
последовательностей максимальной длины |
|
|
||||
т |
i или т — i |
М ~ 2 т - 1 |
т |
i или т — i |
М = 2т - |
1 |
||
4 |
|
1 |
15 |
18 |
|
7 |
262143 |
|
5 |
|
2 |
31 |
20 |
|
3 |
1048575 |
|
6 |
|
1 |
63 |
21 |
|
2 |
2097151 |
|
7 |
1 |
или 3 |
127 |
22 |
|
1 |
4194303 |
|
9 |
|
4 |
511 |
23 |
5 |
или 9 |
8388607 |
|
10 |
|
3 |
1023 |
25 |
3 |
или 7 |
33554431 |
|
11 |
|
2 |
2047 |
28 |
3,9 |
или 13 |
268435455 |
|
15 |
1,4 |
или 7 |
32767 |
31 |
3, 6, 7 или 13 |
2147483647 |
||
17 |
|
3 |
131071 |
33 |
|
13 |
8589934591 |
{ак} = а0, а х, а 2, . . ., а м -ц |
где М = 2т — 1 — период последо |
вательности, а символы ak = |
0 или 1. |
1.В последовательности максимальной длины {ак} все воз можные выборки по т смежных символов образуют 2т — 1 раз личных двоичных наборов. Единственным отсутствующим является запрещенный набор, состоящий из т нулей.
Данное свойство очевидно, поскольку М = 2т — 1 пред ставляет период последовательности {ак}. Это означает, что в ре гистре сдвига произойдет смена ровно 2т — 1 состояний прежде, чем эти состояния начнут повторяться в новом цикле. Следова тельно, вид последовательности {ak} и ее свойства не зависят от исходного состояния схемы генератора.
2.Число единичных символов в периоде последовательности
{ak} равно 2т~1, а число нулевых символов — (2т~1 — 1), т. е. в периоде любой последовательности максимальной длины число символов 1 всегда на единицу больше числа нулей. Это зна чит, что, увеличивая число разрядов т регистра сдвига, можно
получить последовательность {ак}, в которой вероятность |
появле |
|||
ния 1 может быть сколь угодно близкой к вероятности появления О, |
||||
так |
как |
2m-i — 1 |
1 |
|
|
Р (а к = 1 ) - Р ( а к = 0) = ^ ^ |
|
||
|
2т — 1 |
2т — 1 |
* |
|
|
|
|||
3. |
В периоде М — 2т — 1 последовательности {ак} из общего |
числа 2т~1 серий следующих друг за другом одинаковых символов серии из одного символа (0 или 1) встречаются 2т-2 раз, из двух символов (00 или И) — 2т-3 раз, из трех символов (000 или 111) — 2т~4 раз и т. д., серии из т — 1 нулей и т единиц встречаются по одному разу. у
244
Данное свойство интересно сравнить с аналогичным свойством случайной последовательности равновероятных символов, для которой вероятность встретить серию из I одинаковых символов равна 2~1. Если число появлений серий различной длины в после довательности {аД разделить на общее число серий, то станет видно, что по повторяемости серий случайные и псевдослучайные последовательности также близки друг другу.
Рассмотрим еще два интересных свойства, раскрывающих кор реляционную структуру последовательностей максимальной длины.
4. |
При сложении последовательности {аД с той же |
последо |
|||
вательностью, но сдвинутой на произвольное число s позиций, |
|||||
получается также последовательность максимальной длины |
{щ,_Д, |
||||
тождественная исходной, но имеющая другой сдвиг г. Математи |
|||||
ческая формулировка этого свойства такова. |
|
||||
Для каждого целого s (1 ^ s ^ |
М — 1) |
существует такое це- ' |
|||
лое г Д= |
s (1 sc г s j М — 1), |
что |
|
|
|
|
H } ® W - s} = K - r}, |
& = |
0, 1, 2, |
. . ., М — 1. |
(7.4) |
Данное свойство получило название свойства «сдвига и сложения» [44]. Оно представляет особый интерес по той причине, что именно им обусловлено подобие корреляционных свойств последователь ности максимальной длины и случайной последовательности двоич ных символов. Известно [63], что если случайную последователь ность равновероятных символов { ЕД почленно сравнивать с той же, но сдвинутой на любое число s позиций последовательностью {^/г-sb т0 разность между числом (п — d) позиций, на которых символы совпадают, и числом d позиций, где они отличаются, в вероятностном смысле будет равна нулю, т. е.
Iim —— — == 0 при s Ф О, |
(7.5) |
где п — длина последовательности {£Д. Если последовательность { £Д состоит из символов 1 и —1, то выражение (7.5) совпадает с выражением
(7.6)
определяющим автокорреляционную функцию (АКФ) последова тельности { £Д, значение которой будет равно 1 для^ s = 0 и нулю — для любого другого s.
Сравним выражение (7.6) с АКФ последовательности макси мальной длины. Обозначим через {аД последовательность из 1 и —1 с периодом М — 2т — 1, полученную из {аД преобразова нием а'и = 1 — 2ак. Тогда выражение
М-1
(7.7)
245
/
будет представлять АКФ последовательности {а^}. |
В (7.7) вели- |
|||
М- 1 |
|
|
|
|
чина 2 a 'h^k-s равна разности между числом совпадающих и несов- |
||||
о |
в последовательностях {ак} |
и {а*_5}. |
Но |
|
падающих символов |
||||
из выражения (7.4) |
следует, |
что число совпадающих символов |
||
в последовательностях {ak} и {ak_s} равно числу нулей в резуль |
||||
тирующей последовательности |
а число несовпадающих сим |
|||
волов — числу единиц в этой |
последовательности. |
Поэтому, |
ис |
пользуя |
свойство 2, обнаружим, что: |
|
|||
5. |
АКФ последовательности максимальной длины, определен |
||||
ная уравнением |
(7.7), |
равна |
|
|
|
|
„ |
, , f |
1 |
при s = 0 |
(mod М); |
|
* “'(* )= |
, |
в остальных случаях. |
||
|
|
- |
---- ^ |
||
|
|
м |
|
|
|
Очевидно АКФ последовательности, как и сама последователь |
|||||
ность {щ.}, периодична с периодом М = |
2т — 1. Выбирая период |
последовательности достаточно большим, можно получить зна чение К а’ (s) для любого s Ф 0 (mod М) сколь угодно близким к нулю. Следовательно, можно считать, что АКФ последователь ности максимальной длины и идеальной случайной последователь ности практически совпадают. Поэтому последнее свойство псевдо случайных последовательностей часто называют свойством «иде альной автокорреляции».
Таким образом, рассмотренные статистические свойства после довательностей максимальной длины свидетельствуют об их ана логии с действительно случайными последовательностями равно вероятных символов.
Следует отметить важное обстоятельство, отличающее псевдо случайную последовательность от случайной. Если для случайной последовательности рассмотренные числовые характеристики ре ализуются асимптотически в зависимости от объема выборки, то для псевдослучайной последовательности гипотетические харак теристики практически достигаются на интервале равном периоду последовательности. Это свойство псевдослучайных последователь ностей может быть выгодно использовано, например, для сокраще ния времени выполнения арифметических операций в СтВМ.
В заключение отметим, что более полные сведения из теории генерирования псевдослучайных последовательностей можно найти в работе [63].
39. Последовательный генератор псевдослучайных чисел
Важной особенностью равномерно распределенных случ йных двоичных чисел X = (xlt х 2, . . ., xt) является тот факт, что зна чения отдельных разрядов xt, i — 1, 2, . . ., I, этих чисел можно рассматривать как реализации независимых случайных величин
246
£;• с распределениями
^ (g* = 0) = /> (g, = 1) -----1-, i = l,' 2, . . 1.
Благодаря этому последовательность таких чисел может быть образована из случайной последовательности { \k) равновероят ных символов 0 и 1 в виде непересекающихся выборок из I симво лов. ГСЧ, реализующий такой способ формирования случайных чисел, будет содержать генератор последовательности двоичных символов и Z-разрядный регистр сдвига, в котором за I последова-
m2
L—- / 2 |
1 |
с |
т-1 т --- |
СдЬиг
Х=(хи хг , . . , х 1)
Рис. 117. Генератор псевдослучайных чисел последова тельного типа
тельных тактов работы формируется двоичное число (хг, х г, . . .
. . ., xt). Такой тип ГСЧ называют последовательным. Аналогичный принцип может быть положен в основу построе
ния генераторов псевдослучайных чисел. Последовательным ГПСЧ может непосредственно служить генератор псевдослучайной дво ичной последовательности максимальной длины (рис. 117). В та
ком |
генераторе очередное двоичное |
число X = (хг, ж2, . . ., х{) |
|
образуется на выходах I |
разрядов регистра сдвига через каждые |
||
s ^ |
I импульсов сдвига. |
Последнее |
является условием статисти |
ческой независимости смежных двоичных чисел в формируемой
последовательности. |
|
|
|
|
||
Способ |
формирования |
последовательности |
псевдослучайных |
|||
двоичных |
чисел Х 0, |
Х х, |
. . ., X*, . . . |
можно |
представить вы |
|
ражением |
|
|
|
|
|
|
|
|
X/j — (ns£_г, &sk-2’ ••ч |
^sk-l)i |
|
||
где |
ask_ i — символы |
последовательности {a*}; |
s ^ I — количе |
|||
ство |
сдвигов, необходимое для выработки очередного числа X k. |
|||||
Ясно, что последовательности чисел, |
генерируемые в соответ |
ствии с выражением (7.8), являются периодическими. Нетрудно убедиться, что период последовательности равен частному от
деления периода М = |
2т — 1 последовательности максимальной |
|
длины на наибольший |
общий делитель чисел М и s — (М, s). |
|
Если (М , s) Ф- 1, то схемой может генерироваться (М , |
s) различ |
|
ных последовательностей в зависимости от начального |
состояния |
247
регистра сдвига. Вид последовательности псевдослучайных чисел, а следовательно, ее характеристики не зависят от начального со стояния схемы только в том случае, когда ее период максимален и равен М = 2™ — 1. Очевидно, для получения такой последова тельности необходимо число сдвигов s выбрать взаимно простым к М. Для этого можно воспользоваться табл. 18, в которой при водится разложение чисел М = 2т —■1 на простые сомножители
[63].
|
|
|
|
|
|
Таблица 18 |
П р ед ставл ен и е |
величины периода |
п о сл ед о вател ьн о сти м акси м альн ой |
||||
|
|
длины |
в ви де п р ои зведен и я п р о сты х |
сом н ож и тел ей |
||
т |
|
|
|
м |
т |
м |
3 |
|
|
|
7 |
19 |
524287 |
4 |
|
|
1 5 = 3 - 5 |
20 |
3 - 5 - 5 - И - 3141 |
|
5 |
|
|
|
31 |
21 |
7 - 7 - 1 2 7 - 3 3 7 |
6 |
|
|
63 = |
3 - 3 - 7 |
22 |
3 •23 •89 •689 |
7 |
|
|
|
127 |
23 |
47-178481 |
8 |
|
|
2 5 - 5 = 3 - 5 - 1 7 |
24 |
3 •3 ■5 •7 •13 •17 •241 |
|
9 |
|
|
5 1 1 = 7 - 7 3 |
25 |
31 •601 •1801 |
|
10 |
|
1023= 3 •11 ■31 |
26 |
3 •2732•8191 |
||
И |
|
|
2 0 4 7 = 2 3 - 8 9 |
27 |
7 •73 •262657 |
|
12 |
|
4 0 9 5 = 3 - 5 - 7 - 1 3 |
28 |
3 - 5 - 2 9 -43 -ИЗ -127 |
||
13 |
|
|
|
8191 |
29 |
233 •1103 •2089 |
14 |
' |
16389 = |
3 - 4 3 - 1 2 7 |
30 |
3 •3 •7 •И •31 ■151 •331 |
|
15 |
|
32767 = |
7 - 31 •151 |
31 |
214 •746 •3647 |
|
16 |
|
6 5 5 3 5 = 3 - 5 - 1 7 - 2 5 7 |
32 |
3 - 5 - 1 7 - 2 5 7 - 6 5 5 3 7 |
||
17 |
|
|
131071 |
33 |
7 •23 •89 •599479 |
|
18 |
|
262143 = 3 - 3 - 3 - 7 - 1 9 - 7 3 |
34 |
3-43691 -131071 |
Оценим статистические характеристики последовательности псев дослучайных чисел максимальной длины М — 2т — 1, генерируе мой в последовательном ГПСЧ. Прежде всего покажем, что рас пределение двоичных чисел в последовательности является равно мерным.
Действительно, поскольку период последовательности равен М = 2т — 1, то каждому числу в последовательности соответст вует одно из 2т — 1 различных состояний регистра сдвига. Из этого следует, что в периоде последовательности М — 2т — 1 любое двоичное число (хг, х 2, . . ., хг), образованное на выходах I разрядов регистра сдвига, встретится ровно 2т~1 раз, за исключе нием числа (0,0, . . ., 0), которое встретится на один раз меньше.
Если число появлений ^-разрядных двоичных наборов на выхо дах ГПСЧ разделить на период последовательности М = 2т — 1,
248
то получим распределение вероятностей появления чисел в этой последовательности, определяемое значением Р (X) = 2" (1 +
+ ~2тL f ) для всех X , за исключением X = (0,0, . . ., 0), для
которого |
Р (X) = 2~l ( i |
-f —- J —- Л — 1 |
. Учитывая, что для |
реальных ГПСЧ т > 1, а, следовательно, |
обнару |
||
жим, что |
для каждого |
из 21 значений X |
вероятность Р (X) |
2~1. Это позволяет сделать вывод о том, что последовательность псевдослучайных чисел, формируемая последовательным генера тором, имеет практически идеальное равномерное распределение на полном периоде последовательности.
Для оценки качества псевдослучайной последовательности необходимо также исследовать ее на соответствие критерию слу чайности. В этом смысле важной характеристикой может служить распределение числа w появлений /-разрядных двоичных наборов (хг, х 2, . . ., xt) на отдельных отрезках последовательности. Если последовательность чисел удовлетворяет критерию случайности, то независимо от длины отрезка п распределение величины w будет одинаковым для любого из различных наборов, причем параметрами распределения будут М (и>) = 2"1п и D (w) = 2~l (1 —
— 2~1) п. Таким образом, анализируя на отрезках последователь ности отклонения действительного числа появлений различных наборов от ожидаемого числа, можно получить дополнительное представление о качестве псевдослучайных чисел. Рассмотрим для примера вопрос о числе появлений в последовательности на боров (хг, х 2, . . ., хг), состоящих из всех единиц.
Предположим, что последовательность /-разрядных двоичных чисел X = (хх, х 2, . . ., Х[) получена из псевдослучайной после довательности максимальной длины {ак} путем последователь ных выборок по I символов, т. е.
=2’ ■•ч
ипусть (/, М) = 1. Тогда число появлений наборов из /единичных символов в последовательности псевдослучайных чисел за период
М = 2m - 1 |
' |
|
г+М-1 |
alk^ alk. 2 . . . a lk_t — 2m~l — 2~l (Af + 1 ). |
|
2 |
(7.9) |
|
h=r |
|
|
По аналогии с (7.9) для произвольного отрезка последователь ности длиной п можно записать
21 |
г+п-1 |
|
alk~l — п ' Xl |
|
2 |
a lk-la lk-2 |
|
||
или |
k~r |
|
|
|
|
|
|
|
|
r + n -l |
|
|
(7.10) |
|
2 |
aik-i^ik-2 ■••aik-i = 2"' (n ± Xt), |
249