Файл: Алферова, З. В. Математическое обеспечение экономических расчетов с использованием теории графов.pdf
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 21.10.2024
Просмотров: 77
Скачиваний: 0
этом пути. Например, объем информации по пути от х7 |
до |
х0 бу |
|||||
дет определяться в виде произведения всех значений т, |
принадле |
||||||
жащих дугам этого |
пути (х7, |
хп), |
(хп, х10), (х[0, |
х0), |
и |
значе |
|
ния / для вершины |
х7. Этот объем |
будет равен |
v7 |
= 2-1 • 1 • 1 = 2. |
|||
Общий объем по документу |
х0 |
определяется |
как сумма |
|
|||
|
V= |
9 |
|
|
|
|
|
|
2 |
Vi |
|
|
|
|
|
|
|
i = l |
|
|
|
|
|
и равен: V= 12+ 10 + 22 + 3 + 2 + 2 + 2 + 1 +3 = 57 |
|
алфавитно-цифро |
вым символам. .
При раздельном подсчете объемов алфавитной и цифровой ин формации в документе параметры /,-, соответствующие однотипной информации, снабжаются признаками, указывающими вид инфор мации. Если же U характеризует реквизит, представляющий сме шанную информацию, то он соответственно состоит из двух частей,
которые |
записываются |
через запятую, в виде |
дроби или |
другими |
|||
способами. |
|
|
хи х2, |
хъ |
|
|
|
В рассматриваемом |
примере |
реквизиты |
состоят из |
||||
алфавитных символов, |
а все остальные x4 +-x9 |
— из |
цифровых сим |
||||
волов. |
Используя для |
алфавитных реквизитов параметр Vх, а для |
|||||
цифровых V*, подсчитывают объем информации отдельно для |
|||||||
вершин |
с параметрами |
1а и для |
вершин с параметрами |
№. |
Таким |
образом, объем в алфавитных символах и объем в цифровых сим
волах определяются |
раздельно. |
Для нашего |
случая |
Уа = 12 + 10 + 22 = 44; |
|
||
^ |
= 3 + 2 + 2 + 2 + 1+3=13. |
|
|
Пути при расчете |
объемов |
информации |
могут определяться |
либо непосредственно по структурным графам документа, либо по соответствующей матрице смежности. Процесс определения путей
по графу состоит |
в определении |
последовательностей |
смежных |
||
дуг, |
ведущих от висячих вершин к корню дерева, как в |
приведен |
|||
ном |
выше примере. |
1 |
|
|
|
Рассмотрим процесс определения |
объемов |
информации с ис |
|||
пользованием матрицы смежности. |
А графа |
G' (X, Г), |
|
||
Пусть задана матрица смежности |
представ |
ляющего структурный граф документа с измененным направлени
ем |
дуг. |
Прежде |
всего необходимо |
определить |
входы |
графа |
||
G' |
(X, |
Г), |
соответствующие |
висячим |
вершинам |
графа G (X, Г). |
||
Этим |
вершинам |
в матрице |
А будут соответствовать такие |
столб |
цы, сумма элементов строк в которых равна нулю. Выходу графа G'(X, Г) будет соответствовать строка, сумма элементов столбцов которой равна нулю. Таким образом, для определения входов и выходов графа необходимо подсчитать сумму элементов в каждой строке и в каждом столбце матрицы смежности этого графа.
Для расчета объемов информации по путям выделяются пути, ведущие от входных вершин к выходной. С этой целью из матрицы смежности выбираются вершины, соответствующие входам графа, определяются номера столбцов матрицы, содержащих эти верши-
58
ны. Номера столбцов указывают вершины начала путей. Затем просматриваются строки матрицы с номерами, равными номерам выбранных столбцов, до появления элементов, отличных от нуля. Значения этих элементов фиксируются (они соответствуют пара метрам т ( ) , после чего проверяется, не является ли концом пути столбец с номером, соответствующим ненулевому элементу строки. Если это не конец пути, то следующей рассматривается строка матрицы с номером, равным номеру выбранного столбца. Процесс продолжается до тех пор, пока не будет определен конец пути.
Перемножая значения зафиксированных при поиске пути эле ментов матрицы, отличных от нуля, и значение параметра /,г соответствующее данной начальной вершине, получаем объем ин формации по конкретному пути. Суммируя объем информации по всем путям, получаем объем информации по документу.
Определим объем |
информации |
с помощью |
матрицы смежно |
|||||||||||
сти для рассмотренной выше сводной специализированной |
ведо |
|||||||||||||
мости потребности. Матрица |
смежности |
А для |
графа, |
представ |
||||||||||
ленного |
на рис. |
10, |
имеет |
вид: |
|
|
|
|
|
|
|
|
|
|
|
х0 |
Xi |
ЛГ2 |
х3 |
Xi |
хь |
хв |
Xi |
ха |
Хс, |
Х)о |
х п |
Хц |
|
|
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
Х\ |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
х2 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
х3 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
|
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
|
хъ |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
|
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
хч |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
||
ха |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
Хд |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
хю |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
Хц |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
|
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
|
5 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
2 |
3 |
2 |
|
h |
|
12 |
10 22 |
3 |
2 |
2 • 2 1 |
3 |
|
|
|
|
59
Рассматривая столбец с суммами элементов строк, устанавли
ваем, |
что х0 является выходом |
графа, так как 2а; = 0. |
Строка с |
||||
•суммами элементов столбцов |
позволяет |
выделить входы графа |
|||||
Xi~x9. |
Для этих |
вершин |
l>ai = 0. |
|
|
|
|
Для определения объема информации по матрице рассмотрим |
|||||||
процесс выделения |
путей |
на примерах. |
Первая 2а' = 0 находится |
||||
во втором столбце |
матрицы с номером Х[. Следовательно, |
началом |
|||||
пути |
будет вершина Х\. Фиксируем |
значение параметра k, соответ |
|||||
ствующее этой вершине. В нашем |
случае /[ = 12. Для поиска про |
должения пути обращаемся к строке матрицы с номером Х\. Бэтой строке первым элементом, не равным нулю, является элемент, стоящий в столбце с номером х0. Фиксируем значение этого эле мента, равное единице. Проверяем номер столбца на соответствие
выходу графа. В нашем |
случае х0 |
— выход графа. |
Путь из Х\ в х0 |
|||||||||||||
найден, он состоит из одной дуги |
(х\Х0). |
|
Объем |
информации |
по |
|||||||||||
этому |
пути |
равен: |
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
V i = l-12=12. |
|
|
|
|
|
|
|
|
||
В |
качестве следующего |
примера выберем |
2а 3 ' = О |
в |
шестом |
|||||||||||
столбце матрицы. Эта сумма расположена |
в столбце с номером |
х5, |
||||||||||||||
•следовательно, |
началом |
пути является |
вершина |
х$. |
|
Фиксируем |
||||||||||
/5 = 2. |
Выбираем |
строку |
матрицы с номером х5 |
и ищем |
в ней эле |
|||||||||||
мент, отличный от нуля. Такой элемент расположен |
в |
столбце с |
||||||||||||||
номером |
хх2 |
и равен |
единице. Поскольку |
вершина |
xi2 |
не является |
||||||||||
выходом, |
фиксируем |
единицу и переходим |
к рассмотрению |
строки |
||||||||||||
с номером X12, где ищем элемент, отличный от нуля. Таким |
являет |
|||||||||||||||
ся элемент, равный единице, в столбце |
с номером |
хц. |
Единицу |
|||||||||||||
фиксируем и переходим к рассмотрению |
|
строки |
с |
номером |
хи, |
|||||||||||
так как хи |
не является |
выходом |
графа. |
В строке |
с |
номером |
# п |
|||||||||
элемент, отличный от нуля, находится |
в столбце |
с |
номером |
х10. |
||||||||||||
Запоминаем значение этого элемента, равное |
единице, |
и |
перехо |
|||||||||||||
дим к строке с номером |
х10, |
поскольку |
х 1 0 не является |
выходом. |
||||||||||||
В строке |
с номером |
х 1 0 |
не равным нулю является |
элемент, стоя |
||||||||||||
щий в столбце с номером х0. |
Запоминаем |
значение этого элемента |
и переходим к определению объема информации по данному пути,
так |
как вершина ха |
является выходом. |
Таким |
образом, |
путь |
из х$ |
||||
в х0 |
состоит из дуг |
(Х5Х12) ( # 1 2 * 1 1 ) (x\\Xw) |
( # 1 0 * 0 ) , |
и объем |
информа |
|||||
ции |
по этому |
пути равен: |
|
|
|
|
|
|||
|
|
|
|
|
V 5 = 2 - M - l - l = 2. |
|
|
|
|
|
Объем информации по другим путям определяется |
аналогично. |
|||||||||
Общий объем информации по документу получается |
суммирова |
|||||||||
нием |
объемов |
по |
всем |
путям. |
|
|
|
|
|
|
В рассматриваемом |
примере все значения |
параметров т , |
ока |
|||||||
зались |
равными единице. Практически |
параметр |
т может |
иметь |
||||||
любое |
значение. |
|
|
|
|
|
|
|
||
|
Структурные графы документов и соответствующие им матри |
|||||||||
цы |
смежности |
могут использоваться не только |
при определении |
60
объемов информации по документам, но и |
при определении объе |
|
мов информации по задачам, подсистемам |
и системам |
в целом. |
В этом случае граф должен отражать |
не только |
структуры |
всех документов, используемых в данной задаче, подсистеме или системе, но и содержать вершины соответствующих задач, подси стем или систем и отражать взаимосвязь документов в них.
Граф для определения объема информации по задаче пред ставляет собой структурный граф задачи, расширенный за счет до бавления к нему структурных графов документов. Пример такого графа для задачи «Наблюдение за движением материалов по транспортно-складской конторе (ТСК)» приведен на рис. 11.
Рис. 11. Граф состава задачи «Наблюдение за движением материалов ТСК»
Вершина Я 6 первого уровня представляет собой наименование задачи. Вершины второго уровня y&, У\ь, Уч — наименование доку ментов, участвующих в задаче, при этом у% и г/д — исходные доку менты, а г/15 — результатный. Вершины третьего уровня Х\-^гх& соответствуют структурным элементам документов. Для одинако вых структурных элементов приняты одинаковые обозначения во всех документах.
Порядок расчета объемов информации по задачам, подсисте мам или системам аналогичен расчету объемов информации по до кументу.
Глава 111 |
Э К В И В А Л Е Н Т Н Ы Е |
|
П Р Е О Б Р А З О В А Н И Я |
|
А Л Г О Р И Т М О В |
§ 3. 1. ЭКВИВАЛЕНТНОСТЬ АЛГОРИТМОВ И ПРОГРАММ
Теоретического описания алгоритма, дающего реше ние некоторой задачи, еще недостаточно для получения ее реше ния. После того как алгоритм записан в виде последовательности элементарных актов и условий, возникает вопрос о его реализации.
Один и тот же алгоритм допускает различные способы реали зации в зависимости от используемых средств, квалификации ис полнителя и т. д. Кроме того, для одной и той же задачи можно составить различные алгоритмы, выделяя различные систе мы элементарных актов. Так, один алгоритм может получиться более универсальным, но менее выгодным для данной задачи, а другой — более узким, но более выгодным для данной задачи.
Для выбора наиболее выгодного алгоритма нужно уметь пере водить алгоритмы из одной формы в другую — тождественно их преобразовывать; необходимость в изучении различных способов тождественного или эквивалентного преобразования алгоритмов возникает и при реализации алгоритмов на вычислительных ма шинах.
Программирование для электронных вычислительных машин представляет собой один из вариантов эквивалентного преобразо вания алгоритма. В процессе программирования алгоритм, пред ставленный на языке математических описаний или на каком-либо алгоритмическом языке, преобразуется в алгоритм на языке ма шины, т. е. в программу. Таким образом, сам процесс программи рования содержит в качестве своей составной части эквивалент ное преобразование алгоритма, заданного на одном языке, в алго ритм, заданный на другом языке.
Заметим, что при ручном программировании преобразования алгоритма обычно производятся в уме. При автоматическом про граммировании преобразования выполняются специальной про граммой, называемой транслятором. Для этого алгоритм должен
быть представлен в формализованном виде |
и должны соблюдать |
ся формальные правила для равносильных |
преобразований алго |
ритма. |
|
62