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

книги из ГПНТБ / Алферова, З. В. Математическое обеспечение экономических расчетов с использованием теории графов

.pdf
Скачиваний:
20
Добавлен:
20.10.2023
Размер:
8.54 Mб
Скачать

j

Обращение из прог -

 

 

 

раммы

ОБРЛЩ

 

 

 

 

 

 

нет

П0ЛЕ1[Ж+ТН]

=

 

2 ПРиЗП=ЯЛ

^>—>О

© - * 9

ПОЛЕ[и+ТК)

 

Сгак-.^Сгак

X.

 

ТК--=ТК + 1

3

и••= #{•• = О

 

 

 

 

Сгок

= Сгак'У

 

 

 

 

и-= Ж: = 0

 

 

 

 

 

 

 

 

ЛЕ •' — ЛЕ

1 * /

 

 

 

 

 

Сгак : = Егак

 

 

 

 

13

CzaJt : =

Czak-/•

И программе IS ОБРЛЩ

Рис. 30. Блок-схема отбора по признаку — СП1

Программа печати заголовка осуществляет печать заголовков этапов отбора языков. Укрупненная блок-схема печати заголовка приведена на рис. 31а.

Вход из программы

 

Печать

 

 

j

ОБРЛЩ

 

строни П

 

 

П[50]- = Т

 

Возвращение

 

 

 

н

ОБРЛЩ

 

 

 

 

ч

 

 

Рис. 31а. Блок-схема печати

заголовка — СПЗ

 

 

Программа

диалога оператора с

машиной

после каждого

эта­

па отбора выдает сообщения оператору. Если

среди

отбираемых

языков остался

только один, то печатается

сообщение

1, если

сре­

ди отбираемых языков не осталось

ни одного

языка, то печатает­

ся 0.

 

 

 

 

 

 

160

Исходя из результатов данного этапа отбора оператор может либо продолжить отбор, либо отказаться от результатов преды­ дущего отбора. Это достигается наличием двух рабочих полей АЛ и АР. Отбор происходит из языков, находящихся в одном по­ ле, а отобранные по заданному признаку языки помещаются в другое поле. Таким образом, на каждом этапе отбора имеются два множества языков: множество языков, из которого производился отбор, и множество отобранных языков. Задавая признак поля, содержащего то или иное множество языков, оператор может уп­ равлять процессом отбора.

В/од

из основной

Обращений, н СП-2

СП-1

j

программы

 

5

 

 

 

 

 

 

 

 

Обращение н ОБМПМ

СП-2

 

 

Выход

в основную

 

 

 

j

программу

 

Обращение н cn-i

Рис, 316. Блок-схема программы обращения — ОБРА Щ

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

Укрупненная блок-схема программы обращения приведена на рис. 31 б. Эта программа ОБРАЩ обеспечивает вызов соответст­ вующих программ системы при работе основной программы.

Укрупненная блок-схема программы диалога приведена на рис. 32. В этой блок-схеме символом С обозначена ячейка, содер­ жащая результат отбора, а символом X — ячейка, в которую по­ мещается ответ оператора.

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

И. Заказ 4230.

161

 

Вход из прогроммь/

/ Печать с от дет

,

. ОЬРЯЩ '

оператора В ячейке х.

Печать с^твет

 

изменение

^ оператора В ячейке х^

8

призп

 

Ф

 

 

 

 

В оздрат В основную

 

9

программу

Рис. 32. Блок-схема диалога с машиной — ОБМПМ

Для возможного использования данного алгоритма в других машинах и, в частности, в машинах, имеющих транслятор с языка АЛГЭК-С, ниже приведен алгоритм априорного выбора в этом языке:

КЗ:

К4:

M l :

М2:

К5:

нач

текст

А, Б вид 'С(128)';

текст С вид 'С(18)';

цел мае СФ [4];

сост

мае АЛ

[30]. (текст

Т1 вид 'С(12)', цел мае M l [6]);

сост

мае АР

[60]. (текст

Т вид 'С (12)',

цел мае М [6]);

цел К П , КОБЛМ, ОБЛМ, ОБЩ, П Р И З П , СЧ, СЧ1, КОНСТ,

П Р И З Ш ,

СЧЛ,

 

К21, К31,

К41, Д;

 

 

 

 

переключатель Р : Н 1 , Н2,

НЗ, И4, Н5, Н6,

Н7, Н8;

О Б Л П : =978656;

 

О Б Щ : =917504; ТС 1 : = 14600474540;

ТСЗ: = 14614721476; ТСЧ: =417504; ТС5: =974848;

 

 

КВРА: = 13938389956;

К В Р Б : =267386880;

 

 

 

библ ('ввод

Г,

'000',

АЛ,

46);

библ

('ввод

3', '0',

СФ);

для

И : = 1:128 цикл нач А

[элем

И ] : =

'—'; Б

[элем

И ] : =

кон;

С Ч Л : = 0 ;

 

 

 

 

 

 

 

 

 

 

для

И

• 1 : 30

цикл

нач если АЛ [И] . Т1 =

 

 

то

на МГ;

 

 

 

 

 

 

 

 

 

 

 

 

С Ч Л : = С Ч Л + 1 ;

кон;

 

 

 

 

 

 

 

 

К О Б Л П : = СФ [1] Л О Б Л П ; К1: = 1; С Ч : = 0 ;

 

 

 

для

И : = Г:СЧЛ

 

цикл нач

 

 

 

 

 

 

если

АЛ [И] . M l

[1]

Л О Б Щ = О Б Щ

T o j i a

М2;

 

если

А Л [ И ] . M l

[1]

Л К О Б Л П ^ К О Б Л П

то

на МЗ;

АР

[ К 1 ] : = А Л [4]; СЧ: = С Ч + 1 ; кон;

 

 

 

 

П Р И З П : = 1; П Р И З П 1 : = 1; С: = ОБЛ П Р И М —_Я_универ-е;

О Б Р А Щ

(666,0);

 

 

 

 

 

 

 

 

 

 

ШАГАН: = 1';

КОН.ФП: =4096;

 

 

 

 

 

С:='внедренные

 

 

 

языки';

О Б Р А Щ (77,0); Д : = 1; на Н;

162

H I :

ШАГФП: = 1;

Ш А Г А Н : = 2 ;

С : = ' т н п

 

и н ф о р м а ц и и . ^

';

 

О Б Р А Щ (0,7798784);

Д : = 2 ;

на

Н;

 

 

 

 

 

 

Н2:

С: ='категория —

информ-и;

 

 

 

 

 

 

 

 

 

 

О Б Р А Щ (0,32061259776);

Д : = 3 ;

на Н;

 

 

 

 

НЗ:

С: =

'основные

 

 

операции';

 

 

 

 

 

 

 

 

О Б Р А Щ

(0,114688);

Д : = 4 ;

на

Н;

 

 

 

 

 

 

Н4:

С:='вепом—ые

 

 

операции';

 

 

 

 

 

 

 

 

 

ОБРАЩ

(0,1792); Д : = 5 ;

на

 

Н;

 

 

 

 

 

 

 

Н5:

если П Р И З П = 1

то на М4; П Р И З П 1: =31 ;_на М5;

 

 

М4:

П Р И З П 1 : = 1;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

М5:

С Ч 1 : - 0 ; для И: = 1 : С4 цикл, нач.

 

 

 

 

 

 

 

К О Н С Т : = А Р

[ П Р И З П ] . М

[3]ЛТС1;

 

 

 

 

 

 

если

КОНСТ

Л Т С З = 0

то

на

Мб;

 

 

 

 

 

 

если

КОНСТ

Л Т С Ч = 0

то

 

на_ Мб;

 

 

 

 

 

 

если

КОНСТ

Д Т С 5 = 0

то" на

Мб;

 

 

 

 

 

 

АР [ П Р И З П 1 ] : = А Р [ П Р И З П ] ; П Р И З П 1 : = П Р И З П 1 + 1;

 

 

С Ч 1 : = С Ч 1 + 1;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Мб:

кон;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

С : = ' у к а з а н ы

 

Т,

НОТ,

КАТ';

ОБРАЩ

(666,0);

 

 

Д : = 6 ; на

Н;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Н6:

если

П Р И З П ^ П Р И З П !

то на

Н8; ШАГФП: = 1;

Ш А Г А Н : = 3 ;

 

С:='совпадает

 

 

нотация';

О Б Р А Щ

(0,114688); Д : = 7 ;

на Н;

Н7:

КОНСТ: = С Ф

[1] Л 917504;

 

 

 

 

 

 

 

 

 

 

С: = 'категория — пользв-я'; О Б Р А Щ

(0, КОНСТ);

 

 

М7:

если

КОНСТ=262144

то на М8; КОНСТ: = К В Р Б ;

на_М9;

 

М8:

КОНСТ: = К В Р А ;

 

 

 

 

 

 

 

 

 

 

 

 

М9:

С Ч 1 : = А Р

[ П Р И З П ] . М [3] Л

КОНСТ; К21: = П Р И З П + 1 ;

 

 

К 3 1 : = С Ч — 1 + П Р И З П ;

 

 

 

 

 

 

 

 

 

 

 

 

для

И: = К21:К31

цикл нач К 4 1 : = А Р

[И] . М [3] Л

КОНСТ;

'

 

если

К П Ж 4 1

 

то на

М10;

 

К И : = К 4 1 ;

 

 

 

 

М10:

кон;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Кб:

если

П Р И З П = 1

то

на

М П ; П Р И З П 1 : = 3 1 ;

на

М12;

 

М П :

ПРИЗП1:1: = 1;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

М12:

С Ч 1 : = 0 ;

для

И: = П Р И З П : К 3 1

цикл

 

 

 

 

 

 

нач

если

АР

[И] . М

[3] Л К О Н С Т ^ К П

то на_М13;

 

 

А Р " [ П Р И З П 1 ] : = А Р

[И] ; П Р И З Ш : = П Р И З П 1 + 1; С Ч 1 : = С Ч 1 + 1;

М13:

кон;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

С ='языки

С

 

мин

 

время

 

'; О Б Р А Щ

(666,0);

 

 

Д : = 8 ; на

Н;

 

 

 

 

 

 

 

 

 

 

 

т М14;

 

Н8:

С:='этимологический

 

 

'; О Б Р А Щ

(0,1792);

 

Н :

библ

('стоп', X ) ;

библ

('набор', X I ) ;

 

 

 

 

 

 

если

Х1 = 1 то

на М15; если

Х ^ 1

то

на М14;

 

 

 

"ПРЙЗП: = П Р И З П 1;

С Ч : = С Ч 1 ;

 

 

 

 

 

 

 

М15:

«а Р

[ Д ] ;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

М14:

кон;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

проц О Б Р А Щ

(У1, У2);

знач

У1, У2;

цел

У1, У2;

 

 

нач

цел

СЧ2,

СЧЗ;

.переключатель

Р1:П,

П1;

 

 

К2:

Б [элем 30:47] : = С ;

библ

('АЦПУ', '—', '—', '—\ Б, ' — ' ) ;

 

 

если

У1=666

то _на

Л 1 ;

если

У 1 = 7 7

то_ на Л2;

 

К 1 :

К О Н Ф П : = С Ф

 

[ШАГФП]ЛУ2;

 

 

 

 

 

 

 

Л2:

СЧ1: = 0; если

П Р И З П = 1

то на ЛЗ; П Р И З П 1:== 31 ;_н_а Л4;

 

Л З :

П Р И З Ш : = 1; В : = 0 ;

 

 

 

 

 

 

 

 

 

 

 

 

}63

Л 4 -

для

И : = 0 : С Ч

цикл

нач

 

 

 

 

 

 

"ёТли

АР

[ И + П Р И З П ] . М [ШАГАН] Д К О Н Ф П ^ К О Н Ф П

то_н_а

Л5;

Л 5 :

1 : = С Ч 1

+

1; АР [ П Р И З П 1 + В ] : = А Р [ П Р И З П + И ] ; В : = В + 1 ;

 

кон;

 

 

 

 

 

СЧ¥=1 3£„Н Л 9 ;

 

 

Л 1 :

если

С Ч 1 = 0

то _на Л6; если

 

 

 

Х:1;_на Л7;

 

 

 

 

 

 

 

 

Л 6 :

Х : = 0 ; н а П ;

 

 

 

 

 

 

 

 

Л 9 :

Х : = 7 ;

 

 

 

 

 

 

 

 

 

Л7 -

С Ч 2 - = С Ч 1 -

Д - = 2 '

 

 

 

 

 

 

П 1 :

С Ч 2 - = С Ч 2 — 3 ; если СЧ2>0_то_на Л8;

С Ч З : = С Ч 2 + 3 ; Д : = 1; на

Л9;

Л 8 :

С Ч : = 3 ; К З : = Т + П Р И З П 1 ; К 1 : = 2 0 ; К 2 : = 3 1 ; С Ч З : = ^ С Ч З - 1 ;

 

 

_для

И : = 0 : С Ч З

цикл

нач

В : = И х 2 0 ;

А [элем К 1 + В : К 2 + В ] : = АР

 

[КЗ]. Т1;

 

 

 

 

 

 

 

 

 

 

К З : = К З + 1 ;

кон;

 

 

 

 

 

 

 

К 1 : = 4 0 ; К 2 : = 5 1 ; С Ч З : = 2 ;

 

 

 

 

 

Л Ю :

А [ э л е м _ К 1 : К 2 ] : = '

 

 

 

; М : = К 1 + 2 0 ,

 

 

К 2 : = К 2 + 2 0 ;

 

 

 

 

 

 

 

 

 

С Ч З : = С Ч З — 1 ;

если

СЧЗ¥=0

то

на

ЛЮ;

 

 

 

библ

('АЦПУ',

А, ' — ' ) ; на

Р1

[ Д ] ;

 

 

 

П :

J<OH;

 

 

 

 

 

 

 

 

 

 

Так как в АЛГЭК-С невозможно обращение из какой-либо про­

цедуры в другую, то создана искусственная процедура

в поле са­

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

Оператор просматривает распечатанные имена языков данного

этапа отбора; если языков больше одного, оператор

просматрива­

ет имена языков, отобранных на данном этапе. Если

выбыли наи­

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

щем этапе осуществляется из поля языков предшествующего

эта­

па. В этом случае оператор должен занести в сумматор

единицу,

означающую неудовлетворительность отбора. Если в сумматор

за­

носится нуль, то отбор продолжается из языков нового поля.

 

Если выполнение программы необходимо закончить, то в сум­

матор записывается 0, в счетчик адресов добавляется 1,

нажима­

ется кнопка «пуск», процедура анализирует содержимое

суммато­

ра и выполняется описанный выше порядок действий.

 

 

Программе обращения ОБРАЩ в АЛГЭК-программе соответ­

ствует специальная процедура, которая выполняет

все

ее

функции.

 

 

Процедура ОБРАЩ содержит два параметра: У\— параметр,

определяющий порядок действия в процедуре, У2 — константа

вы­

деления параметра из ячейки анкеты. Процедура выполняет сле­ дующие действия:

1) выделение оператором с меткой К1 содержимого ячейки СФ,

164

номер которой содержится в ячейке ШАГФП, и записывает его в рабочую ячейку КОНФП;

2) определение поля

с

отобранными языками.

Указатель

по­

л я — ячейка

ПРИЗП . Из

поля языков выбираются

те, которые

со­

ответствуют

данному этапу

отбора.

 

 

Количество отобранных языков подсчитывается в ячейке СЧ1. Номер ячейки анкеты, в которой указан признак отбора на дан­ ном этапе, содержится в ячейке ШАГАН. Отобранные по данному, признаку языки переписываются в другое поле.

В АЛГЭК-программе этой операции соответствует участок с Л2 по Л5;

3)печать наименования этапа выбора, которое определяется текстовой величиной С. В алгоритме этому соответствует участок, имеющий метку К2;

4)определение количества отобранных языков для организа­ ции диалога оператора с машиной с целью управления ходом от­ бора. Если количество языков равно нулю, то Х: = 0, если число

языков равно единице, то X:

= 1 , и если языков больше

одного, то

Х: = 7. Этой части

процедуры

соответствует

участок с Л1

по Л7;

5) печать имен

языков нового поля, если содержимое

счетчика

не равно Н У Л Ю . Этой части соответствует

участок алгоритма с Л7

по П.

 

 

 

 

 

В зависимости от значения параметра У\ устанавливается сле­

дующий порядок выполнения процедуры:

 

 

 

при Уi = 0 выполняется вся

процедура;

 

 

 

при Уi = 77 пропускается

первый этап.

Содержимое

ячейки

КОНФП задается в основной программе;

 

 

 

при У] = 666 пропускаются первый и второй этапы.

 

 

В основной программе цикл с меткой КЗ заполняет

пробелами

строки печати заголовка (А) и строку имен языков (Б).

 

 

Цикл с меткой

К4 подсчитывает количество языков,

введенных

в поле А.

 

 

 

 

 

Участок с метки M l по метку М2 обеспечивает отбор

 

в рабочее

поле тех языков, которые удовлетворяют параметру «область при­ менения», заданному в стандартной форме, и параметру «универ­ сальность». Константа ОБЛП является выделителем из СФ «об­ ласти применения», константа ОБЩ — признака «общности».

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

ре ОБРАЩ.

 

 

 

 

 

 

 

 

Участок

алгоритма

от

метки

К5 по

метку

H I

соответствует

от­

бору внедренных языков.

 

 

 

 

 

 

Участок

алгоритма

от

метки

H I по

метку

Н2

обеспечивает

от­

бор языков по признаку «тип информации».

Участок алгоритма с метки Н2 по НЗ соответствует отбору языков по признаку «категория информации».

Участок алгоритма с метки НЗ по Н4 обеспечивает отбор язы­ ков по признаку «основные операции».

165

Участок от метки Н4 по Н5 обеспечивает отбор языков по при­

знаку «вспомогательные операции».

 

 

 

Участок алгоритма от метки Н5 по Н6

осуществляет

отбор

языков, у которых указаны время на изучение, нотация и

катего­

рия пользователя.

 

 

 

 

Константа ТС1 является

выделителем

признаков

«нотация»,

«категория пользователя» и

«время на

изучение»,

константа

ТСЗ — признака «категория

пользователя»,

константа

ТС4 — при­

знака

«время изучения»,

константа

ТС5—признака

«нотация».

Если отбор языков по времени, нотации

и категории пользова­

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

этапы

отбора

по при­

знакам

«категория

пользователя»,

«нотация»

и

«минимальное

время на изучение».

 

 

 

 

 

 

 

 

Участок

алгоритма

от

метки Н6

по Н7

соответствует

отбору

по признаку «нотация».

 

 

 

 

 

 

 

Участок от метки Н7 по М7 соответствует отбору языков по

признаку «категория

пользователя».

 

 

 

 

 

Участок

алгоритма

от

метки М7

по Н8

соответствует

отбору

языков «с минимальным временем на изучение».

Внутри этого участка в свою очередь можно выделить три под-

участка:

 

 

 

 

 

 

 

 

а)

с М7

по М9 —выбор констант выделения времени на изуче­

ние соответствующей

категории пользователя; в качестве

таких

констант используются константы КВРА и КВРБ;

 

 

б)

с

М9

по

Кб — выбор

минимального

времени

на изучение;

в)

с

Кб

по

Н8 — выбор

в новое поле

языков с

минимальным

временем изучения.

 

 

 

 

 

Участок

алгоритма

от метки Н8 по Н соответствует отбору язы­

ков по этимологическому признаку.

 

 

 

При экспериментальном решении задачи априорного выбора

языка

программирования для экономических исследований

с ис­

пользованием теории графов картотека языков содержала следую­ щие двадцать языков: АЛГЭК, АЛГЭМ, АЛГОЛ-60, АЛГОЛ-68,

КОБОЛ, ФОРТРАН, СИМУЛА,

КОМИТ,

СНОБОЛ,

РЛ - 1,

ЛИСП-2, МИДАК, МИТРА, АПРОКС, MAP,

СИРИУС,

CPL,

CPS, AUTOSTAT, АЛГРА. Язык

АЛГРА — некоторый условный

язык оперирования с графами.

 

 

 

Характеристические параметры проблемы и языков были по­ лучены путем экспертных оценок. При оценке языку АЛГРА ус­ ловно были приписаны наиболее оптимальные параметры.

Результаты экспериментального решения при заданных усло­ виях приведены в диаграмме на рис. 33. Цифры на диаграмме, соответствующие этапам выбора, имеют следующий смысл:

1 —выбор по параметру «область применимости»;

2 — выбор по параметру «внедренность языков»;

3 — выбор по параметру «тип информации»;

4 — выбор по параметру «категория информации»;

5 — выбор по параметру «основные операции»;

166

6 — выбор по параметру «вспомогательные операции»;

7 — выбор по параметру «нотация»;

8 — выбор по параметру «категория пользователя»;

9 — выбор по параметру «минимальное время» на изучение.

Рис. 33. Диаграмма априорного выбора

Очевидно, что в результате экспериментального расчета был выбран язык АЛГРА. Поскольку целью эксперимента была про­ верка методики отбора, то результаты подтвердили ее правиль­ ность.

Глава VII П Р О Г Р А М М Н О Е О Б Е С П Е Ч Е Н И Е

Э К О Н О М И Ч Е С К И Х РАСЧЕТОВ С И С П О Л Ь З О В А Н И Е М ТЕОРИИ ГРАФОВ

§ 7. 1. ОСНОВНЫЕ ПОЛОЖЕНИЯ

В теории программирования и в экономических рас­

четах теория графов до сих пор остается

в основном теоретичес­

ким аппаратом. В данной работе делается

попытка практического

использования теории графов в некоторых

экономических

иссле­

дованиях. Рассмотрим один из вариантов

программного

обеспе­

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

Программное обеспечение строится в виде пакета простой структуры. Тело пакета состоит из комплекса частично взаимо­ связанных программ, представленных на языке АЛГЭК-С. Язык АЛГЭК-С выбран с целью реализации данного пакета программ на машине «Минск-22» или любой другой машине, имеющей тран­

слятор с данного языка. Пакет

обеспечивает

решение следующих

задач:

 

 

 

 

 

 

Ввод грата Взаимо­

Ввод

градзов

алгоритмов

связи документов

 

 

 

 

Анализ информационного

 

Перевод

графов

графа (получение

табл!)

 

о

матрицы

Анализ

потопов

 

Оценна

стоимости

информации

 

 

алгоритма

Ввод графов

документов

Синтез

алгоритмов

I

 

 

 

 

 

 

Подсчет

объемов

Перевод из матрицы

информации

 

В граф

Рис.

34.

Схема взаимосвязи задач

в

пакете

168

1)анализ потоков информации;

2)расчет объемов информации;

3)

определение вычислительной сложности алгоритмов задач;

4)

синтез алгоритмов.

Исходными данными для решения этих задач являются:

1)графы взаимосвязи документов по задачам;

2)структурные графы документов;

3)графы алгоритмов задач.

Схема взаимосвязи

задач в пакете приведена на рис. 34.

В памяти машины

графы представляются соответствующими

матрицами смежности. Перевод графа в матрицу смежности так­ же может быть выполнен автоматизированным путем. В том слу­

чае, когда

в алгоритме обработки

используется не

вся

матрица

смежности,

а лишь ее ненулевые элементы, матрица

представляет­

ся вектором

этих элементов. В этом

случае для каждого

элемента

вектора указываются соответствующие номера строки и столбца матрицы.

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

§7. 2. АНАЛИЗ ПОТОКОВ ИНФОРМАЦИИ

Всоответствии с математической моделью, изложенной в § 2.4, процесс анализа потоков информации можно разделить на две

части:

получение

характеристик по информационным связям

за­

дач и

получение

основных характеристик потока информации.

В

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

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

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

зации алгоритма анализа

потоков информации

матрица смежно­

сти представляется вектором ненулевых элементов.

Блок-схема первой части алгоритма анализа потоков инфор­

мации — получения данных табл. 1 приведена

на рис. 35.

В блок-схеме приняты

следующие

сокращенные обозначения:

С Р И Д — Счетчик для

определения

числа Разновидностей Ис­

ходных Данных;

 

 

 

169

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