Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги из ГПНТБ / Яковлев, В. В. Стохастические вычислительные машины

.pdf
Скачиваний:
8
Добавлен:
22.10.2023
Размер:
15.73 Mб
Скачать

Решение алгебраических уравнений. С помощью следящих стохастических интеграторов можно решать системы линейных алгебраических уравнений, подобно тому как это делается в АВМ.

о)

6)

Рис. 74. Решение системы т линейных алгебраиче­ ских уравнений при помощи устройства: а — с т + 1 суммирующими входами; б — с одним суммирующим

входом

Пусть задана система уравнешш:

пП^1 “1а12^2 + ••■"Г аУт^т“Ь Ь1= О,

a 2 1 ^ " l + а 2 2 ^ 2 ' Д • • ■ + а 2 т ^ т + ^2 = 0>

а / я 1 ^ 1 “Г а т2-^-2 ~Т~ • ' ‘ i ^ т т ^ ^/п ~

Для решения этой системы уравнений преобразуем ее:

Х г = dn X 1 г d12X2~f-. .г dlmXmJ[-e1,

Х 2= $21^1 ~1~ ^22-^-2

d2tnXтА" Со,

^■т. ^ml-^1

-f- . . . -f- dmmX nl -f- 6tn.

На рис. 74 изображена схема k-vo узла ющего последнюю систему уравнений. Всего жится т таких узлов. В схеме на рис. 74, а

устройства, реша­ в устройстве содер­ переменные посту-

160

пают на счетчик параллельно по т + 1 суммирующим входам. В результате быстродействие устройства понижается, так как возможно образование очереди при одновременном поступлении

единичных

приращений по нескольким

каналам.

В схеме

на рис. 74, б этот недостаток

устраняется путем вклю­

чения на вход интегратора суммирующей ячейки п использова­

ния т + 1 несовпадающих

коэффициентов кг, к 2, . . ., кт.

Таким образом, на вход + 1

СлСтИ поступает сумма

kidkl^ i+ •. ■+ kmdkmX m+ km+1ek.

Если к х = к 2= . . . ~ к т + 1 = к, то на входе + 1 СлСтИ имеем

к (dklX l + . . . -\-dkmXmф- ek).

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

Z = Xk.

Следовательно, искомые переменные образуются на выходе следя­ щих интеграторов в исходном масштабе.

23. Реверсивный счетчик в режиме деления переменных при несимметричном кодировании

Итеративный характер алгоритма деления вызывает допол­ нительные трудности при выполнении этой операции с помощью стохастических схем. Особенно «неудобными», требующими суще­ ственного усложнения схемы, являются микрооперации запомина­ ния и оценки величины (знака) промежуточной разности в конце каждой итерации.

Известен лишь один способ оценки стохастической перемен­ ной: интегрирование представляющей ее случайной последова­ тельности с помощью счетчика. Как бы ни был громоздок этот способ, он обладает тем преимуществом, что наряду с оценкой позволяет осуществить и запоминание, хотя форма представления информации при этом меняется. Стохастическая переменная в счетчике представлена цифровым кодом, и, следовательно, для выполнения последующей итерации необходимо обратное преоб­ разование «код — вероятность».

Микрооперации, о которых идет речь, реализуются стохасти­ ческим интегратором, работающим в следящем режиме. Неболь­ шое дополнение к нему в виде логической схемы в цепи обратной связи, как мы уже могли убедиться, превращает интегратор в стохастическое делительное устройство. Это дополнение выз­ вано необходимостью реализации третьей микрооперации алго­ ритма деления — умножения.

11 В. Е. Яковлев

161

Деление стохастических переменных с помощью следящего интегратора особенно удобно в том случае, когда оно выпол­ няется на заключительной стадии вычислений и его результат является окончательным. При этом цифровая форма представле­ ния результата облегчает его вывод из машины. Если же такой необходимости нет, можно отказаться от датчика случайных чисел и исключить из схемы компаратор. Упрощение схемы основано на том, что для выполнения алгоритма деления после каждой операции достаточно знать лишь знак промежуточной разности и не определять ее величину. Поэтому нет необходимости охваты­ вать обратной связью все разряды счетчика. Достаточно учиты­

 

вать

лишь

значение

знакового

р с

(старшего) разряда.

 

 

Г.

Рассмотрим

схему,

представ­

 

ленную на рис. 75

и состоящую

 

из реверсивного

счетчика PC и

 

конъюнктора

в

цепи

обратной

 

связи.

 

 

 

 

 

 

На

ее

выходе

реализуется

функция

Рис. 75. Схема стохастического делительного устройства при не­ симметричном кодировании ин­ формации

О,

если п <;0,

 

z = 1.

если п>:0,

(4.13)

п — содержимое счетчика. Рассмотрим изменение состояния счетчика в двух последова­

тельных тактах t — 1 и г для случаев, когда в такте t в счетчике оказывается записанным число п 1, предполагая, что на входы схемы поступают некоррелированные и стационарные случайные последовательности, представляющие стохастические переменные М (х) и М (у). Это имеет место в следующих четырех случаях:

1)

п (t — 1) = п-\-1; х = 0;

y = U

2)

п (t — 1)

= п;

х= 0;

у = 0;

3)

п (t — 1)

= п\

х —1;

у = 1;

4)

п (t —1) = п — 1; ж= 1;

у = 0.

Переходя к вероятностям, получаем

Р { п , t) = q (x )p

(y )P (n + l, t — l) + [p(x)p(y) +

 

+ q(x)q(y)]P(n,

t — l ) + p ( x ) q ( y ) P (n — 1, t — 1).

(4.14)

Вустановившемся режиме

Р(п, t) = P(n, t — l) = P(n).

Тогда

Р (n) — q (z) P (У) P (n + 1 ) + [p (x) p{y)-{-q {x) q(y)]P {n) -f

+ p { x )q {y ) P { n — 1).

1 6 2

Предполагая емкость счетчика неограниченной, просуммируем правую и левую части последнего равенства по всем состояниям от п до оо;

СО

со

со

2 P{n) -= q (я) р (у) S Р {п + 1)+ [Р (®) Р (У) + q (я) q (у)] 2 ^ (») +

п

п

п

 

00

 

 

+ Р(*) Я Ф) п

(« -!)■

Произведем в необходимых местах замену индексов суммиро­ вания:

00 со со

2

P(n) = q (х) р (у) 2 Р (п) + (х) р (у) +

q (я) q (у)] 2 Р (») +

л

/ if l

 

со

 

 

+ р (*) q(y) Ц р И -

 

 

л-1

 

После приведения подобных членов остается

О = - q ( x ) p ( y ) P (в) + р (я) q (у) Р (п — 1).

Таким образом, для всех п ^ 1 справедливо следующее рекур­ рентное соотношение:

Р(п)

или

Р(п) =

Р (х) д (у)

Р ( п - 1)

я (*) р (У)

 

' Р(х) д (у)

П

. д(х)р (у)

Р Ф ) .

 

Вернемся к анализу состояний счетчика в двух последователь­ ных тактах для п (t) — 0. В этом случае возможные ситуации определяются следующими условиями:

1)

п (t — 1) =

1;

x = 0;

у =

l ;

2)

n{t — 1)

=

0;

x =

0;

У =

0;

3)

n(t 1)

=

0;

x =

1;

y =

i;

Ф

n(t 1 ) ------1;

я =

1;

У =

0;

5) n (t 1) = - 1 ; я = 1; y = l

Тогда

Р (0) = q (х) р (у) Р (1) + (я) р (у) + q (я) q (у)} Р (0) +

+ [р (*) q (у) + р Ф) р (у)] р ( — !)•

Но р(у) + 9(у) = 1, а Р ( 1) = т Ш ы _ р ( 0)-

и *

163

Поэтому

 

 

 

(4.15)

Р (0) =

[1 — q (®) Р (У)] Р (0) + р ( х ) Р (—1).

Для п (t) = —1:

 

 

 

1)

n(t — 1) = 0;

а: = 0;

у = 1;

 

2 )

/г (£ — 1 ) = — 1 ;

ж = 0 ;

г/ = 0 ;

 

3)

n(t — 1) = — 1;

ж = 0;

у = 1 -

 

Отсюда

 

 

 

 

Р (—1) = q (х) р {у) Р (0) + [q (х) q (у) + q (х) р(у)]Р (—1),

 

или

 

 

 

 

Р (—1) = 9 (ж) Р (г/) Р (0) + q (х) Р (—1).

(4.16)

Обобщая рассмотренные случаи, заметим, что в среднем содер­

жимое счетчика в

каждом такте изменяется на величину Ап —

— Р (х) У (У) q (х) р (у), если в предыдущем такте было

п ^ 0,

ина величину Ап = р (х), если п (t — 1) = —1. Усредним Ап по всем значениям п

М (Ап)*=р(х)Р (—\) + \p(x)q(y)—q(x)p(y)\ [1 —Р (—1)].

В установившемся режиме

М (An) —М [п (t)\ —M [п (г — 1)] = 0.

Поэтому

Р (—1) = 1

Р(х)

р { у )

 

Подставляя последнюю формулу в (4.15) или (4.16), находим

р /(У) = р('Х1'

Г1 — р 1 М '

' ' Р (У)

L

д(X) Р (у) J *

Поскольку наборов входных переменных, приводящих] к п < —1, не существует, то в соответствии с (4.13)

М (г) = р (г) = Р (В & 0) = 1 - Р ( - 1 ) ~ ^ « - £ | г Г .

Таким образом, рассматриваемая схема в установившемся режиме выполняет операцию деления стохастических перемен­ ных, однако для обеспечения такого режима необходимо, чтобы математическое ожидание п было конечным.

По определению

СО

М (п) = ] £ п Р (п) = 2 пР (п)— Р ( — 1) =

(«)п=0

со

Р (*)

р (х) д (у)

 

 

P i x ) д ( у )

= 2 -

Р(У)

д(х)р(у) J

L q(x)p(y) .

л=0

 

 

 

1.64

 

 

Г 1 _ Л Ё 2 _ 1р (ж)—

4

I

 

 

L

р (у ) J

р (у)

 

* ^

 

 

I р (х )

h

р (х ) я (у ) 1 X?

Гр (*) д (у)

1п

 

' р (у )

L

д { х ) р ( у ) J j L i

l q { x ) p ( y ) \

 

 

 

 

 

 

п=о

 

 

 

Рассмотрим

отдельно сумму

вида

 

 

 

 

 

 

 

 

со

 

 

 

 

 

 

 

5 = 2 пап.

 

 

 

 

 

 

 

п

 

 

 

 

Эту сумму можно записать так:

 

 

 

 

 

со

 

со

 

со

со

 

 

2 пап = 2 пап2 а” + 2

 

 

я=0

 

я=1

 

/г=1

/г=1

 

Объединим первые две суммы правой части равенства и выне­

сем за знак суммы постоянную а\

 

 

 

 

СО

 

СО

 

 

 

с о

 

 

2

пап = а 2

{п — 1) an_1+

2 я"

 

 

л=о

 

п=1

 

 

 

я=1

 

Подставив

к == п — 1,

получаем

 

 

 

 

 

 

ОО

 

СО

 

0 0

 

 

 

 

2

гсап=

а 2

как -f 2

а”-

 

 

 

я=о

 

/г=0

 

я=1

 

 

Отсюда

 

 

 

 

 

 

 

 

 

 

СО

 

СО

 

 

с о

 

 

 

л=0

 

ft=0

 

 

п= 1

 

Слагаемые оставшейся суммы образуют геометрическую прогрес­ сию со знаменателем и первым членом, равным а, а сама сумма

конечна, если

|а |<[ 1.

В нашем

случае

,p W ; (у)

ч (х) р (у ) *

Следовательно, для конечности суммы необходимо выполнить условие

р ( « ) я (у )

ч (х) р (у ) ^

или

М (х) с М (у).

Стохастическая переменная М (z) = М (х)](М (у) не может принимать значений, превышающих единицу, и, следовательно, выполнение полученного условия обеспечивается соответствую­ щим масштабированием входных переменных. Тогда, используя

165

формулу суммы бесконечно убывающей геометрической прогрес­ сии, получаем

р(х)

М(п) = Р(У)

[ q { x ) p ( y ) - \ - p ( x ) q (У)] — q ( х ) р {у)

Р ( У ) — Р ( х )

Как видно из этой формулы, значение М (п) стремится к беско­ нечности при р (х) -*■ р (у) и при р (z) — р (x)Jp (у) = const тем больше, чем меньше р (у).

t

Рис. 76. Граф переходов схемы, изображенной на рис. 75

Практически важно знать вероятность переполнения счет­

чика при конечном числе I его

разрядов:

 

 

оо

P ( n > 2 ‘) = '2l P(n) = - ^ L

у

р ( * ) д (у) 1 V 1 Г Р(х)д (у) п

 

q (х ) р (у) \ jU Vq(x)p(v)

 

 

п

 

П=*<2,1

Р ( п S? 21)

р ( х )

Г р ( х ) д ( у ) 1 2г

р ( у )

L д (х) р (у) .

 

Как можно видеть, эта вероятность быстро убывает с увеличе­ нием I даже при значениях р (z), близких к единице, и может быть уменьшена до пренебрежимо малой величины увеличением разрядности счетчика и масштабированием переменных.

Вторым важным фактором, определяющим точность стохасти­ ческих вычислений, является автокорреляционная функция вы­ ходной последовательности. Вывод аналитического выражения этой функции связан со значительными трудностями. Однако, если под рукой имеется даже не очень современная ЦВМ, неслож­ но получить численное решение задачи, используя жесткую вероятностную модель, представленную в виде графа на рис. 76.

166

Вершины этого графа соответствуют числам, накопленным в счет­ чике, а дугам придан вес, равный условным вероятностям пере­ хода из одного состояния в другое. С помощью этой модели можно для любого конечного числа тактов т рассчитать вероятности возможных состояний счетчика как вероятности использования соответствующих вершин графа, если задаться начальным состоя­ нием, т. е. распределением вероятностей использования вершин графа в такте t — т. Для расчета формулы (4.14), (4.15) и (4.16) приводятся к следующему виду:

Р ( — 1, t k) = q(x) р (у) Р (0, t —k — l) + q ( x ) P { —l, t — k — 1),

Р ( 0, t — k) = q ( x ) p (y ) P ( l, t — k — l) + [p(x)p(y) +

+ q {x )q (y ))P { 0, t — k — l ) + p ( x ) P ( — l, t — k — 1),

P (n, t — k) — q ( x ) p ( x ) P ( n Jr 1,

t — k — 1) +

+ [p(z) pty) + q(x) q(y)\P (n,

t — k — \) +

+ P (x)q(y)P (« — 1, t — k — 1),

1, k = 0, 1, 2, . . ., (t — 1).

Установим связь автокорреляционной функции с вероятно­

стями использования вершин графа, приняв во внимание, что

в соответствии с (2.6) значения этой функции для прямой и инверс­

ной последовательности

совпадают

 

 

 

 

 

Кг (т) = К-2(т) = Р (zzT) -

М 2(z) =

Р (zT) Р (z |ZT) -

М 2(z).

Здесь

Р (z]zT) — условная

вероятность

z =

0 в

такте

t, если

z = 0,

в

такте t — т, т. е.

 

 

 

 

 

 

 

Р (z \zT) — Р (z = 0, t\z — 0, t x) = P { n =

1,

t\n =

1,

t —x).

Кроме

того,

 

 

 

 

 

 

 

 

 

 

P (zT) = P(z) = i — p (z),

 

 

 

Тогда

 

M2 (z) =

[1 —p (z)]3.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

K t (x) = U - p ( z ) ] P ( n = - l ,

t\n =

- i ,

t - x ) - [ l - p ( z ) \ 2 =

 

 

= [1 —p(z)] [p (z) — p (n Ss 0,

t\n = —1, t — x)],

 

поскольку

0) = 1 — P (n = —1).

 

 

 

 

 

P (n

 

 

 

Таким образом, начальные условия для расчета автокорреля­ ционной функции с помощью модели имеют вид:

Р ( п = 1, t т) = 1, Р(п + 1, *— т) = 0.

167

На рис. 77 показаны в полулогарифмическом масштабе кри­ вые К г (т) для некоторых конкретных значений р (у) и р (z). Числа у кривых указывают значение р (у). По рисунку можно судить, что автокорреляционная функция довольно быстро убы­ вает с увеличением т, а закон ее изменения при этом прибли­ жается к экспоненциальному. Корреляция максимальна при зна­ чениях р (z)i близких к 0,75, и возрастает с уменьшением р (у).

Рис. 77. Автокорреляционная функция выход­ ной последовательности в схеме, изображен­

 

ной на

рис. 75:

 

1 V (V ) =

0.75;

2 —

р ( у

) = 0,5;

3 р

( у ) = 0,25;

---------- — р

( z ) =

0,75;

■-------—

р (г) =

0,5;

 

 

— *—Р (г) = 0,25

 

Одно из возможных назначений схемы заключается в укруп­ нении масштаба переменной при несимметричном кодировании, например, в два раза (р (у) = 0,5). Тогда при р {£) = 0,75 авто­ корреляционная функция на интервале т = 60 составляет 0,0017 и в дальнейшем убывает на порядок при увеличении интервала примерно на каждые 70 тактов.

Наличие автокорреляции в выходной последовательности сви­ детельствует об инерционных свойствах схемы, т. е. о том, что значение выходной переменной с необходимой точностью устана­ вливается лишь спустя некоторое время, зависящее от первона­ чальной установки счетчика. Переходный режим можно воспро­ извести с помощью той же модели, что и расчет автокорреляцион­ ной функции, если принять t = т.

168

Пусть до начала отсчета времени решения р (z) = 0, что соот­ ветствует Р (п = —1, г ^ 0) = 1. Тогда значение выходной стохастической переменной как функции времени определяется вероятностью р (z, t) = Р (п ^ 0, t |п = 1, t = 0). При этом начальные условия для моделирования остаются такими же, как и в предыдущей задаче, так что моделирование можно вести в

один прием. Ap(zj Расчетная формула для

абсолютной ошибки представ­ ления выходной переменной имеет вид

Ap(z) = p ( z ) ~ p ( z , t) =

= p{z) — P(n>? 0,

t\n = —i, t = 0).

Здесь, как и далее,

р (z) =

 

 

 

= M(z) установившееся зна­

 

 

 

чение выходной

переменной.

 

 

 

Результаты расчета в виде

 

 

 

переходных

кривых

при

 

 

 

Р (у) =

0,5

показаны в полу­

 

 

 

логарифмическом

масштабе

 

 

 

на рис. 78. Как видно, пере­

 

 

 

ходный

процесс

замедляется

 

 

 

при увеличении р (z)

и в худ­

 

 

 

шем случае р (z)

= 1 ошибка

Рис. 78. Переходные процессы в схеме,

составляет 0,0727 при

t =

60,

уменьшаясь в дальнейшем на

изображенной на рис. 75:

 

Р (z) = 1 ;

V (Z) =

0,75;

порядок

примерно

каждые

---------------- V (z) = 0 ,5 ; ------------------

Р (z) =

0,25

250тактов.

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

24. Реверсивный счетчик в режиме деления переменных при однолинейном симметричном кодировании

Если в схеме, рассмотренной в предыдущем параграфе, заме­ нить конъюнктор в цепи обратной связи логическим элементом, реализующим функцию эквивалентности (рис. 79), то граф пере­ ходов схемы примет вид, показанный на рис. 80. По условным ве­ роятностям переходов граф можно разделить на две части. Для правой (п (t к) 0) среднее изменение числа, накопленного в счетчике, в каждом такте составляет

An = n(t — к + 1) — n(t — k ) = p ( x ) q {у) — q(x) р(у).

169

Соседние файлы в папке книги из ГПНТБ