
книги из ГПНТБ / Кадыров, Х. К. Синтез математических моделей биологических и медицинских систем
.pdfзаряжены в четырех магнитофонах и размещены в трех магнитных барабанах. Для обработки этой информации сначала подключается один магнитофон и при помощи программ вводится информация с ленты в ОЗУ и затем обрабатывается. Далее подключается второй магнитофон и т. д. Таким же образом информация переводится с ба рабана в ОЗУ. Следовательно, переход от одного магнитофона ко второму выполняется специальной командой, заранее предусмот ренной в рабочей программе. Было бы целесообразно разместить всю информацию на одну магнитную ленту и тем самым устранить этот недостаток. Кроме того, перевод информации из одной системы счисления в другую сопровождается незначительными ошибками. Однако когда объем вычислений увеличивается, эти ошибки могут стать и значительными. С этой точки зрения было бы целесообразно осуществить машинную обработку информации без предвари тельного перевода чисел из одной системы счисления в другую.
Принципы максимального использования емкости запоминаю щих устройств ЭЦВМ. Выше мы отмечали некоторые трудности, свя занные с введением и обработкой информации на ЭЦВМ. С целью преодоления этих трудностей рассмотрим возможность максималь ного использования емкости памяти ЭЦВМ с помощью использова ния метода упаковки [12].
Первичные данные, например результаты исследования, являют ся количественными показателями и могут быть представлены ра циональными числами. Поместим эти числа в ячейки ЭЦВМ не так, как это обычно делается по инструкции (в каждой ячейке по одному числу), а по несколько чисел в одну ячейку в зависимости от их цифровых значений по формуле
где а — число разрядов в ячейке ЭЦВМ данной марки; k — разряд
ность числа в десятичной системе счисления; I — количество чисел,
а
помещающихся в одну ячейку данной ЭЦВМ; выражение 4k
min
означает, что при получении дробного числа берется меньшее целое число.
Так, для ЭЦВМ «М-20» а — 45, |
а |
= 3,7 и 1 = 3. |
|
Ik |
|||
|
min |
Разрядность числа k умножается на четыре для того, чтобы деся тичное число разместить в двоичном коде в ячейках памяти ЭЦВМ.
Отсюда вытекает, что в каждую ячейку ЭЦВМ типа «М-20» мож но разместить три трехзначных числа.
Ясно также, что мы отбрасываем дробную часть I, т. е. определен ное количество разрядов ячеек остается неиспользованным. Пред положим, что в ячейке девять разрядов остались неиспользованны ми. Отсюда возникает вопрос, с какого же разряда ячейки начина ется наше вводимое число? Это мы подробно объясним дальше инструкцией программы. Здесь для данного примера число в ячейки начинаем записывать с 36-го разряда (табл. 9).
41
Видно, что три числа, имеющие по три разряда в |
десятичной |
|||||
системе счисления |
|
|
|
|
|
|
А = а, ■ ІО*1+ |
а2 • |
ІО*1-1 + |
а3 . ІО*1" 2, |
|
||
В = Ь,- ІО*2 |
+ |
b2 • |
ІО*2-1 + |
b3 ■10*Е" 2. |
|
|
С = Сі ■ Ю*2 |
+ |
с2 • |
ІО*2" 1+ |
Cg • |
ІО*2" 2. |
|
размещены в трех адресах ячейки, т. е. в 36 |
разрядах. |
Кроме этих |
чисел в память ЭЦВМ вводятся числа от 0 до 10 в двоичной системе счисления, при помощи которых машина распаковывает числа и фор мирует начальные исходные числа с помощью специально разрабо танной программы. Следовательно, вводимое в ЭЦВМ число не пере-
Т а б л н ц а 9. |
Структура ячеек трехадресной ЭЦВМ |
|||
Код |
At |
А, |
А, |
|
45,44 |
43,37 |
36, 3 5 , . . . . 25 |
24, 23 ...........13 |
12, 1 ! , . . . , 1 |
— |
0 |
ß3 |
^2 ^3 |
С1 сч сз |
водится из десятичной системы счисления в двоичную, оно только кодируется при помощи чисел от 0 до 10, которые расположены в
определенных ячейках ЭЦВМ. |
«Минск-22» |
является двухадресной, |
||||
П р и м е р . ЭЦВМ |
типа |
|||||
и число разрядов а = |
37. Определим, сколько двухзначных целых |
|||||
чисел можно разместить в каждой ячейке (k = 2): |
||||||
I - |
37 |
|
f 37 |
= |
[4,6] = 4. |
|
4 • 2 jmin |
L8 min |
|||||
|
|
|
Таким образом, в каждой ячейке ЭЦВМ можно разместить четы ре двухразрядных числа. Эти числа вводятся с шестого разряда ячейки, так как порядок номеров разрядов ЭЦВМ типа «Минск-22» начинается с левой стороны.
Рассмотрим алгоритм восстановления начальных исходных чи
сел. Как известно, |
любое число можно изобразить в рациональной |
||
системе счисления |
|
|
|
А = а1 - 10* + |
а2 • 10*"1+ |
■■• + ak • 10° + |
ak+i ■Ю"1+ |
|
+ • • • |
+ o-k+t • 10 . |
(2.1) |
В процессе вычисления машина с помощью заранее составленной программы выделяет первый старший разряд ах числа А. Это число логически сравнивается с числами нулевого порядка, записанны ми ранее в определенных ячейках ЭЦВМ. Если число совпадает с одним из чисел от 0 до 9, то выбирается некоторая цифра, после чего избранное нормальное число умножается соответственно на 10*. Так формируется первый разряд числа А. Аналогично формируются
42
и остальные разряды числа А, непрерывно накапливаясь в опреде ленной рабочей ячейке.
Как известно, современные ЭЦВМ работают в основном на дво ичной системе счисления. Отсюда возникает необходимость перево да исходных данных из десятичной системы счисления в двоичную. Это производится при помощи стандартных программ, причем поте ри в точности здесь происходят незначительные. Особенно сильно это проявляется при переводах дробных чисел. Поэтому при переводе сравнительно большого количества чисел могут возникать ошибки, влияющие на окончательный результат вычисления. Преимущество перевода информации предлагаемым методом состоит в том, что мож но избавиться от указанных ошибок. Это связано с тем, что при вво де числовой информации в МЗУ не выполняется перевод числа из десятичной системы счисления в двоичную, а значит экономится машинное время. Кроме того, преимущество метода в экономии основной емкости памяти. Такая экономия зависит от количества разрядов вводимого числа; если в одну ячейку разместим два числа, то мы экономим память в два раза, если разместим три числа, то в три раза и т. д. Наконец, еще одно преимущество метода состоит в экономии технических средств, так как в течение рабочей смены перфораторщик набивает до 9000 машинных слов вместо 1000.
Однако наряду с перечисленными выше достоинствами метода упаковки больших массивов в ячейках современных ЭЦВМ сущест вует и недостаток, состоящий в том, что формирование исходных числовых данных с помощью приведенного алгоритма (2.1) требует расхода определенного количества машинного времени. Так как в процессе формирования исходных числовых данных с помощью упаковки используются операции умножения и сложения, причем циклические, то суммарный расход машинного времени может до стичь достаточно большого значения.
Приведем алгоритм уплотнения большого количества информа ции, содержащейся в вариационном ряде, который позволит во мно го раз сэкономить память и машинное время, предназначенное для формирования исходных числовых данных.
Пусть задан исходный статистический ряд, полученный в резуль тате измерений какой-либо величины X:
Х = X {хъ х2, . . . , хп).
Можно предложить следующую предварительную обработку ин формации, позволяющую существенно уменьшить объем числовых величин, подлежащих запоминанию, без потери всей информации, со держащейся в исходном статистическом ряду. Предварительная об работка информации состоит в проведении таких операций.
1. Определение максимального и минимального значений членов ряда, т. е.
шах {ху, х2, . . . . хп} = xk, min {лу, х2, . . . , хл) = хт.
43
2. Определение разности между хк и хт, т. е.
/V = max [xlt х2, ... , хп) — min [xlt х2, ... , хп],
N = хк - хт-
Число N характеризует диапазон изменений всех чисел данного статистического ряда. Обычно при проведении большого количества измерений диапазон изменений конкретных чисел во много раз меньше числа наблюдений. Поэтому числа, охватывающие этот диапазон (от хт до хк), содержат в слотом виде информацию о всех числах статистического ряда, и достаточно запомнить значение чи сел этого диапазона, чтобы охарактеризовать любое конкретное число ряда.
3. Шифровка диапазона статистического ряда. Образуем новый ряд из значений чисел, характеризующих диапазон N, расположив члены этого нового ряда в порядке возрастания
V" = У {Уі, У2, • |
• • |
. |
Ух), |
где |
, |
хп}= хт, |
|
Уі = гпіп [хѵ х2, ... |
|||
i/N = max {*!, х2, ... |
, |
X,,} = хк, |
N < n .
Присвоим членам этого ряда некоторый код или шифр в любой системе счисления. Так, в десятичной системе счисления полученный ряд будет иметь вид
Уі = 1; У2 = 2- ... ; yN = N.
4. Перекодировка исходного статистического ряда. В соответ ствии с присвоенным каждому члену ряда шифром (кодом, номером), характеризующим диапазон изменений членов исходного статисти ческого ряда, перепишем исходный ряд в этих же кодовых обозна чениях. Таким образом, каждый член исходного статистического ря да будет отображен своим шифром. Понятно, что числовое значение шифра каждого члена ряда может быть меньше его начального число вого значения. Поэтому перекодированный ряд будет содержать меньше разрядов. На этом предварительная обработка информации заканчивается.
Предварительную обработку информации можно выполнить по специальной программе ЭЦВМ. Причем каждый раз, когда на вход ЭЦВМ поступает новый член статистического ряда, она кодирует его и отправляет в очередную ячейку памяти. Таким образом инфор мация, содержащаяся в исходном статистическом ряду, в сжатом виде записывается в память ЭЦВМ.
Очевидно, что здесь используются два источника сжатия:
а) из п членов ряда в памяти записываются лишь N членов, определяющих диапазон;
б) вместо членов исходного ряда записываются только их кодо вые обозначения.
44
Для пояснения описанного выше метода приведем два примера. Пусть результаты п-кратного измерения величины X при экспери ментальном изучении оказались следующие: 120, 116, ПО, 112, 160,
ПО.......115 (п = 5000).
Далее, для сжатого ввода в память ЭЦВМ определим
шах [хг, х2, ... |
, хп\ = 160, min {xlt х2, ... , х„] = 110, |
N = шах {хѵ х2, |
. . . , хп) — min {xlt х2..........хп] = 5010 = 628, |
где индекс указывает на основание системы счисления. Следовательно, разница N равна двухзначному числу и членам
нового ряда мы присваиваем шифр по восьмеричной системе счисле ния, начиная с 01:
ПО10 = О18, П1іо = 028, . . . , 12010 = 138, . . . , 16010 = 638.
Подобное переименование членов исходного статистического ряда позволяет зафиксировать каждый член его в шести разрядных ячей ках ЭЦВМ.
Для еще одного примера прокодируем вариационный ряд, со стоящий из 7000 членов: 800, 810, 805, 1035, 900, ..., 1300, 910.
Для сжатого ввода в ячейку ЭЦВМ определим: 1) max {у} - 1300, min {у} = 800;
2) N = max [у] — min {у} = 5001О= 7648.
Разница, т. е. диапазон изменения членов ряда, определяется
трехзначным числом. |
или |
Исходя из этого, для кодирования введем три восьмеричных |
|
девять двоичных разрядов, т. е. |
|
80010 = 0018, 80110 = 0028.......... 83510 = 0438, . . . , 13001о = |
7658. |
Следовательно, для запоминания каждого члена исходного ва риационного ряда необходимо девять разрядов ячеек ЭЦВМ. После присвоения шифра каждому числу, в каждую ячейку МОЗУ вво дится не число в десятичной системе счисления, а его изображение в восьмеричной системе счисления.
Для того чтобы восстановить число, в часть МОЗУ вводится по следовательность чисел от минимума до максимума, охватывающая все возможные значения чисел изучаемого вариационного ряда. Эти числа из десятичной системы счисления переводятся в двоичную.
Имея шифр данного конкретного числа вариационного ряда и значение любого числа в двоичной системе в диапазоне от минималь ного до максимального, ЭЦВМ всегда может реконструировать кон кретное исходное число ряда для выполнения над ним операции. При вводе информации по этому методу в процессе перевода чисел (часть исходного статистического ряда, от минимума до максимума) частично возникают ошибки, которые зависят от диапазона исход ного статистического ряда. Если диапазон не велик, то возникаю щие при переводе ошибки почти не влияют на окончательный ре зультат. Если же диапазон велик, то появляются значительные
45
ошибки, однако при сравнении их с общей вводной информацией, эти ошибки остаются все же незначительными.
Описанные выше методы сжатия информации при вводе в МОЗУ позволяют более эффективно использовать емкость памяти ЭЦВМ. Вследствие этого на одну магнитную ленту можно записать не 75 000 чисел, а в несколько раз больше. Кроме того, метод способствует автоматизации программирования и минимизирует ручную работу при перфорации исходных данных на перфокартах. Если введенная информация помещена только в МОЗУ и на барабаны, то не только сокращается объем памяти, но и существенно уменьшается время обработки, так как время обращения МОЗУ к барабану в 2,5 раза меньше, чем обращение МОЗУ к магнитной ленте.
Кроме этого, как известно, трудоемким является процесс подго товки больших статистических данных для машинной обработки, который состоит из следующих этапов:
а) кодировки (перевода исходных данных на специальный бланк); б) перфорации (процесса набивки статистических данных на спе
циальном перфораторе на перфокарты); в) проверки правильности набивки информации.
Все перечисленные этапы в основном пока выполняются вруч ную. Следовательно, чем больше статистических данных, тем боль ше ручного труда и больше потеря точности.
Предлагаемые нами методы позволяют во многом сократить по добные операции.
Комбинированный метод сжатия информации. При обработке больших массивов можно использовать любой из изложенных ме тодов. Если необходимо еще более рационально использовать ем кость памяти, то рекомендуется совместить первый метод с методом кодирования информационных массивов. Пусть задан исходный статистический ряд, полученный в результате измерений какойлибо величины X:
|
|
|
X • X {х^} Xfy |
Х п }- |
|
|
1. |
Определяется |
максимальное и минимальное значение членов |
||||
|
|
|
max lx,, |
X. |
>хп}, |
|
|
|
|
1> |
Л2> |
|
|
|
|
|
min \хл, х> |
» *»}• |
|
|
|
|
|
1> Л 2» |
|
||
• 2. |
Из чисел, характеризующих диапазон от минимума до мак |
|||||
симума исходного |
статистического |
ряда, составляется новый ряд |
||||
состоящий из N + |
|
у = у \Уі , у» |
Vn), |
|
||
1 |
членов. |
|
|
|
||
3. |
По формуле |
|
|
|
|
|
|
|
|
W— 4*. m i n |
(2.2) |
где kg — количество разрядов члена нового ряда, определяется количество чисел, размещающихся в одной ячейке.
46
4. По формуле |
|
3ft„ |
(2.3) |
|
|
где /гКОд — количество разрядов кода, |
определяется количество |
кодовых чисел, размещающихся в одной ячейке ЭЦВМ. |
|
Далее, зная разрядность kg и /гкод, в |
ячейку памяти вводят их |
кодовые числа. |
|
Этот метод в смысле экономного использования емкости памяти существенно отличается от указанных выше двух методов.
Допустим, что по методу комбинированного сжатия информации используется некоторое количество ячеек. Тогда
1) определим количество ячеек памяти, необходимое для записи диапазона ряда, с использованием метода упаковки:
N + 1
|
|
|
11 |
> |
или |
|
|
|
|
|
|
N + |
|
|
|
|
|
(2.4) |
|
|
|
J . |
а |
|
|
|
|
||
|
|
ее- |
min |
|
Заметим, что при /х >• 2 N* с |
N; |
|
|
|
2) |
определим количество ячеек памяти, необходимое для записи |
|||
закодированных членов исходного вариационного ряда: |
||||
|
|
No — — ■ |
||
|
|
ІѴ2 |
1 |
у |
ИЛИ |
|
|
п |
|
|
|
|
(2.5) |
|
|
|
|
а |
|
|
|
|
Ak |
|
|
|
|
™код . min |
|
Аналогично при /3 > 2 JVa |
/г; |
|
|
|
3) |
вычислим общий расход количества ячеек для записи в памят |
диапазона и членов вариационного ряда с помощью комбинирован ного способа
N3 |
= |
+ N2, |
|
|
или |
|
. |
|
|
ЛГ+1 |
|
(2.6) |
||
а |
|
т |
а |
|
|
' |
|
||
Mg |
шіп |
|
4*код Jmin |
|
Таким образом, комбинированный метод объединяет в себе свой ства метода упаковки и метода кодирования членов вариационного ряда. Метод упаковки применяется для записи натуральных чисел, представляющих все члены вариационного ряда. Исследуем вопрос применимости комбинированного метода. Будем считать, что выиг рыш в числе ячеек памяти здесь получается тогда, когда суммарное число ячеек, занимаемое диапазоном и членами ряда, меньше числа членов вариационного ряда.
47
Это очевидно, так как при обычной обработке информации число ячеек, занимаемое членами ряда, равно числу членов ряда. Поэтому основное условие применения комбинированного метода принимает вид
|
Ni + |
jV2 ^ п, |
|
N + 1 |
п |
>і- |
|
а |
|
а |
|
4kg |
min |
. 4Акод |
|
|
|
Примем, что в ячейках может разместиться целое число чисел ряда и целое число кодовых чисел. Тогда уравнение границ приме нимости метода можно записать следующим образом:
|
N + |
1 |
п |
(2.7) |
1 |
а |
|
а 1 |
|
min |
|
|||
1 |
4йв |
^код Imin |
|
Используем уравнение (2.7) для различных случаев.
Пусть разрядность кода равна разрядности числа членов ряда,
т. е. £код = kg. Введем |
обозначения |
|
|
|
/ = |
4k код |
— |
k = Л. |
( 2.8) |
|
4kg ’ |
п |
|
Подставим обозначения (2.8) в уравнение (2.7). Приняв вместо N + 1 величину N и проделав несложные преобразования, получим
k = l — 1. |
(2.9) |
Если в ячейку можно поместить два числа (или два кода), то ком бинированный метод применим, даже если диапазон приближается по числу членов к длине вариационного ряда (N = п).
Рассмотрим далее более общий случай, когда /гкод ф kg. Вве дем обозначения
p^g,
а. |
(2. 10) |
Т Й 7'
Подставив (2.10) и (2.9) в (2.7), с учетом того, что длину диапазо на принимаем равной N (а не N + 1), после несложного преобразо вания получим
k + i\ = L |
(2.11) |
Уравнение (2.11) определяет поверхность в трехмерном про странстве k, I, г|. Мы рассмотрели только одно сечение этой поверх ности Т) = 1.
Перейдем к рассмотрению соотношений различных методов меж ду собой. Для метода упаковки используется следующее количество ячеек:
N = |
п |
(2. 12) |
а |
||
|
4К |
min |
48
где kr — количество разрядов членов исходного статистического ряда.
Для комбинированного метода используется N 3 ячеек. Можно считать справедливым следующее неравенство:
|
а |
nr |
л/8 < |
л\ |
|
|
|
а |
п |
|
|
|
а |
|
|
|
|
|
|||||
или |
N-Ь 1 |
I |
|
п |
\ |
- |
|
|
(2.13) |
||
|
ikÉmin |
|
4^код |
min |
|
|
ikrmin |
|
|||
В левой части |
неравенства (2.13) |
член------ —----- |
для случаев, |
||||||||
когда N <£п |
|
|
|
|
|
|
|
ike |
min |
|
|
можно отбросить, так как он принимает малые зна |
|||||||||||
чения по сравнению со вторым членом. |
Тогда |
|
|
|
|||||||
|
|
а |
|
|
|
а |
|
|
|
(2.14) |
|
|
|
4ЙКОД |
min |
ikrmin |
|
|
|
||||
Обычно бывает, |
что 1гкод < |
/ег, так |
как |
количество |
разрядов кода |
||||||
зависит от N. Тогда можно сказать, что и неравенство |
|||||||||||
|
|
а |
|
> |
|
а |
|
|
|
|
|
|
|
ik |
4kr |
min |
|
|
|
||||
|
|
min |
|
|
|
||||||
|
|
код |
|
|
|
|
|
|
|
|
справедливо. Если знаменатель левой части неравенства (2.14)
меньше знаменателя его |
правой |
части, |
то это неравенство спра |
||
ведливо. |
|
|
|
|
|
Если метод упаковки используется для размещения только ко |
|||||
довых чисел, то число ячеек |
n |
N + 1. |
(2.15) |
||
No = |
1 |
а |
+ |
|
|
|
1 «ка-. |
min |
|
|
Сравним этот случай с комбинированным размещением информа
ции. |
Здесь тоже |
можно |
сказать, |
что выполняется |
неравенство |
|||
|
|
|
n 2> |
n 3. |
|
|
(2.16) |
|
Подставляя в (2.16) выражения (2.15) и (2.6), |
получим |
|
||||||
|
П |
* + |
! |
|
a |
1 _ + |
n |
(2.17) |
|
1 > |
_ 4 ± |
||||||
|
АК |
|
|
|
|
|
1 а |
|
|
|
1 4^код |
min |
1 4*К0Д min |
||||
Ясно, |
что |
ЛГ+ 1 > |
N+ |
|
|
|||
|
|
|
|
|
|
|
||
|
|
|
|
|
а |
|
|
|
Выше |
мы отмечали, что |
|
^КОД |
min |
|
|
||
|
|
|
|
|
|
|||
|
|
/ = |
|
|
> |
2 , |
|
|
|
|
|
|
|
min |
|
|
|
4 4-828 |
49 |
следовательно, неравенство (2.17) справедливо. Таким образом, сочетание метода кодирования с методом упаковки дает то преиму щество, что в ячейку можно записать хотя бы два кодовых числа.
Для объяснения сути комбинированного метода приведем конк ретный пример. Проанализируем вариационный ряд предыдущего примера с точки зрения применения комбинированного метода.
Перепишем вариационный ряд: 120, 116, ПО, 112, 160, ПО, ...
.., 115 (я = 5000). Дано
max [хъ х2, . . . , хп) = 160,
min {xlt х2, . . . , ха) = 110,
N = max [хи х2, ... , хп) — min {хи х2, ... , хп) = 501о = 628.
Присвоим код каждому члену ряда диапазона по восьмеричной системе счисления, начиная от 018 до 638. Итак, kg = £код = 2.
На ЭЦВМ типа «Минск-22» для данного ряда определим количе ство ячеек по формуле (2.6):
Nз |
5 0 + 1 |
5000 |
842. |
|
37 |
I |
37 I |
||
|
3 • 2 |
[ 3 |
- 2 j |
|
Следовательно, вместо 5000 используется всего лишь 842 ячейки. Если при вводе использовать только кодирование, то, как следует из формулы (2.15), будет использовано
5000
N. = 885
37
4 ■3
m i n
ячеек.
Для метода упаковки это количество вычисляется по формуле
(2. 12):
|
n ; = |
5000 |
5000 |
1734. |
|
||
|
37 |
3 |
|
||||
|
|
|
|
|
|||
|
|
4 |
• 3 |
|
|
|
|
Таким образом, простой метод |
упаковки |
позволяет |
умень |
||||
шить |
число ячеек меньше, |
чем в три раза, а |
метод кодирования |
||||
с упаковкой кодированных |
чисел |
и комбинированный |
метод — |
||||
почти |
в шесть раз. |
|
|
|
|
|
|
3.Алгоритмы поиска законов распределения
ипараметров вариационной статистики
Алгоритм поиска законов распределения для случайных величин. При исследовании различных физических, технических, биологи ческих и медицинских задач сталкиваются со случайными явления ми — случайными вариациями. Эти вариации всегда связаны с наличием каких-либо вероятностных факторов, влияющих на исход наблюдения.
50