![](/user_photo/_userpic.png)
книги из ГПНТБ / Яковлев, В. В. Стохастические вычислительные машины
.pdfзависимостей прежде всего можно разделить на способы «точ ного» или непрерывного воспроизведения и приближенного, когда требуемая характеристика реализуется с методической ошибкой. Практически все СФП являются устройствами прибли женного действия, обладающими кроме методических ошибок квантования по уровню ошибками метода приближения функции, и поэтому могут быть названы стохастическими аппроксиматорами.
Как правило, исходные функциональные зависимости предва рительно преобразуются в форму, удобную для их реализации на СФП. Эти преобразования в большинстве случаев сводятся к ап проксимации заданных функций более простыми функциями: степенными рядами, многочленными приближениями, ступенча тыми кривыми, кусочно-линейными линиями, итерационными функциями и т. д.
Полиномиальное представление функций. Представление функ ции ср (X) в виде ряда
ф(Х) = ф(а) + (Х — а) *J£ L + .. . + (Х — а)п ф(”},(а)■+ . . .
называется разложением этой функции в ряд Тейлора. В частности, при а = 0 разложение в ряд Тейлора называется разложением в ряд Маклорена
ф(Х) = ф(0) + Х ^ - + . . . + Х " |
ф № ) ( 0 ) |
|
п ! |
При аналитическом задании функции ф (X) коэффициенты ряда могут быть легко вычислены, а сама функция заменяется суммой конечного числа членов ряда (обычно три-четыре члена) с наперед заданной точностью.
Большое количество элементарных функций может быть разло жено в сходящиеся ряды Тейлора или Маклорена. Удобный для практических приложений признак разложимости описывается так [12]: если функция ф (X) имеет производные сколь угодно высоких порядков и существует такая постоянная D, что при лю бых X и п
i Ф(п> (X) |C D ,
то функция разлагается в ряд Тейлора.
В тех случаях, когда функция задана графиком или таблицей, чаще всего используют методы приближения нелинейных функций интерполяционными многочленами [24]. Существуют методы по строения интерполяционных многочленов, точно воспроизводящих значения функции в узлах интерполяции. Однако, при большом числе п точек функции (в этом случае будет получаться много член степени п — 1) сильно усложняются дальнейшие вычисли тельные операции.
Поэтому обычно отыскивается многочлен степени более низкой, чем п — 1 , достаточно хорошо аппроксимирующий функцию
90
Ф (X). Причем в ряде случаев можно допускать, чтобы отдельные
отклонения |ф (X,-) — I (Х {) |, где |
I (Xt) — искомый |
многочлен, |
были велики и требуется лишь, |
чтобы отклонения |
были малы |
в среднем. |
|
|
Наиболее удобная форма этого требования состоит в том, чтобы
сумма квадратов отклонений многочлена I |
(X) от функции ф (X) |
|
в узлах интерполяции не превосходила |
заданной величины 8 |
|
П |
|
|
8 = 2 |
[ф (х г) — I {Х -д ? = m in . |
|
1=1 |
|
|
Отсюда ясно, как следует ставить задачу об отыскании много члена / (X), дающего наилучшее приближение в среднем. Для этого требуется найти такой многочлен данной степени т, чтобы величина е была наименьшей.
Для выполнения этого условия достаточно, чтобы частные про изводные е по каждому из неизвестных коэффициентов много члена
/ (X) = с0-f- сгХ + с2Х 2+ с3Х 3+ . . . -Т стХт
были равны нулю. Получаемая система из т уравнений позволяет определить каждый из искомых коэффициентов. Интерполяционные многочлены реализуются в СтВМ с помощью преобразователей ФПВВ.
Кусочно-линейная аппроксимация. Метод кусочно-линейной аппроксимации заключается в воспроизведении функции ф (X) отрезками прямых линий. Обычно выбирают 8—12 участков ап проксимации. При этом погрешность преобразования зависит как от числа участков аппроксимации и наклона линий в каждом интервале разбиения, так и от способа реализации угловых коэффи циентов в СФП.
Итерационные процессы. Мы уже отмечали трудности реализа
ции операции деления в СтВМ. В этом и иных подходящих слу |
||
чаях для вычислений значения функции ф (X) |
применяют следу |
|
ющий прием. |
Запишем функцию Y = ф (X) в |
неявном виде |
|
Ф(Х, Y) = 0. |
|
Предположим, |
что ф (X, Y) непрерывна и имеет непрерывную |
частную производную ф' (X, Y) Ф 0. |
|
|
||
Пусть |
Yn — приближенное значение Y. Тогда для вычисления |
|||
значения |
Y существует |
итеративный процесс |
[26] |
|
|
У |
Ф (X. Yn) |
п = 0, 1 , 2, |
(3.17) |
|
п |
ф ' (X, Yn) ’ |
|
|
Начальное значение У0 произвольно и выбирается по возможности близким к искомому значению Y. Процесс итерации продол жается до тех пор, пока в пределах заданной точности е два
91
последовательных значения У„ |
и Yn_ x не совпадут между собой: |
||
I |
- 1 |
Yn \ г. |
процессов является однообразие |
|
Достоинством итеративных |
операций и вследствие этого сравнительно легкая программиру
емость. |
|
|
ф (X, Y) |
для заданной |
функции |
Заметим, что представление |
|||||
ф (X) можно реализовать бесчисленным множеством способов. |
|||||
Этим следует воспользоваться, чтобы |
получить быстро сходя |
||||
щийся итерационный процесс. |
|
|
|
||
Пример. Пусть Y — |
(X > |
0). Положим ф (X , У) = X — -р = 0. |
|||
Тогда ф'(Х, |
У ) = У~2. |
|
|
|
|
Применяя |
формулу |
(3.17), |
будем иметь |
|
|
|
Y n+1 = Y n( 2 - X Y n), п = 0, |
1, 2, . . . |
(3.18) |
||
т. е. итерационный процесс без деления. |
|
|
|||
Выясним условия сходимости процесса (3.18) |
|
||||
х - |
= т - 2У »-1 + |
Х ( т “ |
• |
||
отсюда |
|
|
|
|
|
|
|
|
|
X ( \ - X Y 0f . |
|
Для сходимости этого процесса необходимо и достаточно, чтобы было выполнено неравенство |1 — Х У 0|<С 1-
Таким образом,
если 0 < X Y 0 < 2.
Метод дифференциальных уравнений. При этом методе образо вание нелинейных функций производится путем приведения их к обыкновенным дифференциальным уравнениям с начальными условиями.
В математических машинах этот метод используется для реше ния дифференциальных уравнений на цифровых дифференциаль
ных анализаторах |
[34]. |
|
|
Например, У = sin X и Y = |
cos X |
являются решениями урав |
|
нений (У ')2 + У 2 = |
1 и У f |
У = |
0; У = tg X — уравнения |
У' = 1 + У 2 и т. д. |
|
|
Пример. Построить дифференциальное уравнение для опре деления функции У = sh X = 2-1 (ех — е~х ):
(shX)' = chX, (chX )' = s hX,
откуда получим уравнение в виде У" — У = 0.
92
Основной особенностью стохастических аппроксиматоров яв ляется дискретный характер изменения аргумента Х 0 и наличие в его структуре и детерминированной, и вероятностной части. В зависимости от той роли, которую играет детерминированная часть СФП в формировании характеристики преобразования, все аппроксиматоры могут быть разделены на СПФ с неизменяемой
ифункциональной детерминированной частью.
Впервом случае подлежащий преобразованию код А не подвер гается никаким логическим и математическим преобразованиям, а обеспечение заданной характеристики СФП достигается за счет соответствующей структуры его вероятностной части.
Рис. 41. Блок-схема специализированного ФГШВ с изменяемой детерминированной частью:
РгМЧ — регистр исходного числа; РгП Ч — регистр преобразованного числа; ДТП — дешифратор; III — шифратор; Г С П — генератор случайных последовательностей
Функциональные преобразователи с изменяемой детерминиро ванной частью обычно основываются на использовании классиче ских методов приближения функций таких, как кусочно-постоян ная, кусочно-линейная, кусочно-нелинейная аппроксимация и т. п. В детерминированной части помимо хранения кода А осуще ствляется его логический анализ, и по его результатам устанавли вается участок аппроксимации, которому принадлежит текущее значение А , и вырабатываются сигналы управления, видоизменя ющие структуру вероятностной части СФП или ее параметры. При этом, естественно, структура детерминированной части СФП оказывается зависимой от принятого метода аппроксимации вида реализуемой функции.
Наиболее очевидным примером СФП с функциональной детер минированной частью является преобразователь, реализующий кусочно-постоянную аппроксимацию зависимости ф (А) (рис. 41).
Детерминированная часть устройства состоит из регистров исходного и преобразованного числа и блока дешифратор —
93
шифратор, который, собственно, и обеспечивает реализацию зависимости
где cp (A ■) — требуемое функциональное преобразование от исход ного числа Aj\ А} = {а[, а'2, . . ., ai} — преобразованное число. В качестве вероятностной части используется обычный линейный
п к в .
Такая структура СФП не является универсальной, ее пере стройка на воспроизведение иной нелинейной зависимости воз можна лишь путем смены блока Д Ш —Ш. Кроме того СФП, осно-
Рис. 42. Блок-схема ФПКВ с постоянным запо минающим устройством: blr 62,.., Ьг—код функции
ванные на дешифрировании каждого состояния регистра РгИЧ, чрезмерно сложны технически.
В схеме СФП (рис. 42) функциональное преобразование выпол няется с помощью постоянного запоминающего устройства (П ЗУ ), которое заменяет блок Д Ш —Ш в структуре на рис. 41. В отличие от предыдущего, этот ФПКВ отличается большей универсаль ностью: за счет увеличения разрядной сетки регистра РгИЧ появляется возможность кодирования вида функциональной зави симости. Таким образом, реализация заданной функциональной зависимости сводится к выбору требуемого i-ro массива ЗУ и зане
сению в регистр РгИЧ кода |
|
A) = ^ (A j), i = 1 , 2, |
2r. |
Объем памяти, требуемый для хранения всех 2Л функций, равен 21+' ячеек. Увеличение точности представления и количества функ
94
ций ф,- (А ) достигается увеличением г и I, т. е. в конечном итоге — увеличением объема памяти.
Задачу получения необходимой функциональной зависимости в ФПКВ можно также решить за счет соответствующей структуры вероятностной части преобразователя. Допустим, имеется ряд чисел, представляющих собой последовательные значения неко
торой |
случайной величины |
X = |
{х 1} х 2, . . ., xt}, равномерно |
|||||
распределенной |
в |
интер |
|
|
|
|||
вале |
0—1. |
Интегральный |
|
|
|
|||
закон |
распределения слу |
|
|
|
||||
чайной величины X |
|
|
|
|
||||
Е ( Х) = Р ( Х у < Х ) , |
|
|
|
|||||
где Р (Ху <( X) — вероят |
|
|
|
|||||
ность |
события |
Х у < X , |
|
|
|
|||
имеет вид F (X) = X. |
|
|
|
|||||
Преобразовав |
каждый |
|
|
|
||||
член этого |
ряда по |
неко |
Рис. |
43. |
ФПКВ с неизменяемой детермини |
|||
торой формуле Ху = |
ф (Ху), |
|||||||
рованной |
частью: П Р — преобразователь |
|||||||
можно перейти |
к новому |
|
|
распределения |
ряду чисел, который мож но было бы считать рядом последовательных значений случайной
величины X ', имеющей заранее определенный интегральный закон распределения
т ' ) = Р ( х ;< х ) .
Если F (X') представляет собой требуемую функциональную зависимость, то СФП, использующий последовательность значений случайной величины X ', очевидно, реализует ту же функциональ ную зависимость. Структура СФП с функциональным распреде лением вероятностей может быть отнесена к ФПКВ с неизменя емой детерминированной частью (рис. 43).
Основную сложность в этом методе представляет реализация преобразователя распределения. Для получения случайных чисел с произвольным законом распределения используются различные
методы: |
метод замены переменных [21], метод |
суперпозиций |
[94] и |
т. д. |
|
Мы рассмотрим первый из указанных методов, |
иначе называ |
емый методом обратных функций. Для чисел Ху, равномерно рас пределенных в интервале 0—1 , при заданном искомом законе распределения F (Ху) путем обратного преобразования можно получить случайное число Ху = F '1 (Ху), распределенное по тре буемому закону F (Ху).
Заданная функция распределения F (X) заменяется ступенча
той кривой (рис. |
44), постоянной |
на участках аппроксимации |
Ха — Х [, Хз — Ха, |
. . ., Х'и — Xft_i- |
Аппроксимация производится |
9 5
с равномерным шагом разбиения по аргументу X ', равным 2“г (/-разрядность аргумента).
В каждой точке разбиения вычисляется значение функции
распределения F (Xj): |
|
F (X') = Рх для 0 |
X ' X'lt |
F (X*) = px + p 2 для |
X[ =s= X ' X 2, |
F (X') = Pi -{- P-2+ • • • |
для Xk-i =£1 X' Xfe. |
Рис. 44. Кусочно-постоянная аппро- |
Рис. |
45. Блок-схема |
|
преобразова- |
||
ксимация функции F (X ') |
теля |
распределения, |
построенного |
|||
|
по |
методу |
обратных |
функций: |
||
|
ГС Ч — генератор |
случайных чисел |
||||
|
X , |
равномерно |
распределенных |
|||
|
|
в |
интервале |
0 — 1 |
Ряд распределения случайной величины X ', задаваемый в пре
образователе |
распределения П Р , можно |
представить в |
виде: |
|||
X / |
|
Х ( |
х . |
Хз |
X k—x |
X i |
Pi |
|
Pi |
Рч |
Рз |
Pk-1 |
Pk |
Схема |
блока |
П Р приведена |
на рис. |
45. В регистры Рг1, |
||
Рг2, . . . , |
Р гк |
вводятся исходные данные, отображающие значения |
аппроксимирующей ступенчатой кривой интегральной функции
распределения на рис. 44: <^Рг 1 > |
= р г, <^Рг 2 > = Рх + р2, ••• |
. . . , < ( Рг к > = Рх -{- р 2 + . . . + |
Pk- В регистрах Рг Х^, |
Рг Х'2, .. Рг Xfe хранятся соответствующие значения аргументов
X i, Ха, |
. . ., Хь. На выходах схем сравнения ССХ, СС2, . . |
CCk |
|
появляется сигнал при выполнении условия |
Рг j > ^ |
X • |
|
< Рг j |
— 1 > . |
|
|
96
Под действием импульса от /-й схемы сравнения CCj считывается число X/, которое является числом случайным и подчиненным заданному закону распределения F (X/).
Такой преобразователь распределения сложен по своей кон струкции и требует больших затрат оборудования. Для получения иного распределения необходимо соответствующим образом изме нить содержимое регистров Рг1, Рг2, . . Ргк, т. е. преобразо ватель не обладает свойством универсальности. Точность преобра зования растет с увеличением разрядности аргумента, но вместе с этим возрастает и сложность технической реализации. Преобра зование равномерного распределения происходит в каждом такте, но использование регистровой памяти для хранения значений X/
иF (X/) снижает быстродействие ФПКВ.
Закончив краткий обзор возможных методов и средств реализа ции функционального преобразования с помощью СФП, перейдем к изучению наиболее прогрессивных способов построения этих преобразователей, отличающихся меньшими затратами оборудова ния и более естественными формами функционирования, учитыва ющими вероятностную структуру представления аргументов
ифункций.
14.Нелинейные свойства входных преобразователей
Воснове одной из идей построения ФПКВ лежит использова ние управляющих случайных последовательностей, математиче ские ожидания которых могут отклоняться от значения 0,5. В ли нейных ПКВ, как было показано ранее (см. стр. 67), это приводит
кпоявлению методических ошибок преобразования.
Используя соотношение (1.22), для выходной вероятности ФПКВ запишем
p(z) = 'kl p (X J), |
(3.19) |
|
|
i=i |
|
где р (Ху) — вероятность |
появления конкретного |
случайного |
числа в регистре Рг2 (рис. |
6). |
|
Из уравнения видно, что, меняя закон распределения чисел Х ;-, можно получить на выходе схемы сравнения последовательность, имитирующую некоторую функциональную зависимость.
В общем случае формирование случайных чисел Х ;- можно осуществить по схеме рис. 46. Каждый разряд xt случайного числа X связан с отдельным ЛПКВ и вероятность появления еди ницы на i-м входе схемы сравнения равна р (xf) —pi. Как обычно, условимся считать все последовательности с выходов ЛПКВ ста ционарными и независимыми. Тогда
/"VT \ |
ССt 1 —C tf |
0^2 1 “ CCj |
G C / 1 |
СХ» |
l. |
p {X j) = p 1'q1 |
p 2°q2 |
‘ . . . p i lPi |
|
Например, если X ;- = 0,110...01, то p (X ;-) = p ip 2qz- • • q i - iP f
7 В. В. Яковлев |
97 |
Для реализации требуемой нелинейной зависимости (3.19) требуется отыскание правил поиска единственного решения по
переменным р { (i = |
1, 2, |
3, . . ., |
I). Очевидно, что если p t = |
р 2 |
= |
= ■■■ = Pi = 0 ,5 , |
то |
р ( Х ;.) = |
2 ',=const, р (z) = Aj2~l, |
т. |
е. |
в схеме реализуется линейное преобразование. Отыскание же
значения вероятностей p t по заданным значениям р |
(Х у ) при р , =£= |
|||
0 ,5 представляет |
известные трудности. |
|
||
Действительно, для процесса формирования случайных чисел |
||||
Х у справедливо: |
|
|
|
|
|
Я1 Я2 Я3 ' ‘ 'Я1-1 Я1 — Pi, |
|
||
|
Я1 Я2 Я3 ' ••Я1-1Р1 = Р2 , |
|
||
|
Р г Р з Р з - ■ ■Р 1- 1Я1 = Р 21_Ъ |
(3.20) |
||
|
|
|||
|
Р1 Р2 Р3 ’ ' |
'Р1-1 Р1 = |
P„i |
|
где Я1 = 1 ~ Pi, i = |
1, 2 , 3 ,. |
. ., I, P j |
= p (X y ), j = |
1, 2 , 3 , . . . , 2l. |
Рис. [46. Функциональный преобразователь код-вероятность, основанный на независи мом формировании каждого разряда случай ного числа X : П г, Д 2, ..., Я ; — линейные
преобразователи ПКВ
Система (3.20) содержит 21уравнений при I переменных и по этому является переопределенной. В связи с этим точное и един ственное решение системы (3.20) возможно лишь в некоторых част ных случаях.
1. Р г = Р 2 = Р 3 = . . . = Р 2 /= 2~1. Этот случай тривиален.
Подставляя значения P j в выражение (3.20), снова приходим к ли нейному преобразованию.
2. Преобразуем систему уравнений (3.20) к виду:
Ях—Р г ^ Р 2+ Рз + •••+ Р 21~х,
(3 .2 1 )
Pi = P 2l-4 l + |
+ - - - + P J - |
9 8
Точное решение |
этой |
системы |
возможно лишь |
при условии |
|
■Pi + Р г + |
Рз + |
•••+ |
Р 2i = |
1. |
|
Запишем |
еще |
одну |
систему, основанную на |
(3.20): |
Я1Я2 = P i + Р<2. + •••+ Р 21~з = P l’
ЯгРг = Р2‘~*+1 + Р 21~^2 + •••+ Р ч}^ = Р 2>
Р1Я2 = Р ^ Ч 1 + Р 21~Ч2 + ' ••+ ^ '" W |
-2 = Р '3’ |
|||||
PlPz = p 2l-42l~2+l + Р 2/- 1+2,- 2+2 + |
' ' •+ |
Р 2<= Р 1 |
||||
Из первого |
уравнения этой системы определим |
|||||
|
Я™= — |
|
К ___________ П |
|
||
|
P i + . . . +/>,/_! |
P i+ i»;- |
||||
|
У |
91 |
||||
Из третьего |
уравнения |
найдем |
|
|
||
|
Л(2) |
Р ' |
|
|
|
Р ' |
|
г 8 _ |
|
|
|
|
|
|
Ч2 |
------- |
V |
^ r . .+ р 2/ |
|
|
|
|
Л |
|
|
||
где p i и ?! |
определены из |
(3.21). |
|
|
Таким образом, подсистема (3.22) имеет точное и единственное
решение по q2 = |
Р [ + Р з при |
|
|
Pi |
Pi, |
или, что то же |
P'l+Pi Р'з+Pi |
|
самое, |
|
- 0 - = # и р ; + р ; + р ; + р ;= 1 .
' а
Далее запишем еще одну подсистему, получаемую из системы
(3.20):
1 ) 9 i ? 8 ? 8 9 4 = P i + P 2 + . . - + P 2^ = P i i . |
j |
|||||
?1?2?ЗТ4 = |
P 2l~l+1 + |
•••+ Р 2^-3 = Р 21, |
|
|||
Я1Я2Р3Я4. = Р 2<-3+1 + |
•••+ Р 2*-3+2*-4 |
= Р"з1. |
|
|||
Я&РзР* = |
Р 2*-3+2*-4+1 + |
•. . + Р 2/-2 |
= Р'41, |
|
||
2 ) g ift? S ? 4 = |
P 2i-3+1 + |
•••+ Р 2'-3 +2'- * |
= P l2 , |
|
||
Я1Р2Я3Р4.= |
Р21-2+г1~Чх + |
•••+ Р 21~Ч21~3 = /J22, |
(3.23) |
|||
ЯхРзРзЯл, = Р 2'-3+2;-3+1 + |
•••+ P 2Z-2+2/-3+2Z_4= Р 32» |
|||||
|
Я1Р2РЗР4 = P 2Z-2+2Z-3+2Z-4+l + ••’ + P 2Z~1 = ^42.
7* |
99 |