4.4. ПРЕОБРАЗОВАНИЕ ДАННЫХ
На логическом уровне алгоритм преобразования данных выглядит как программа, составленная на формализованном человеко-машинном языке — алгоритмическом языке программирования. ЭВМ понимает только машинные команды, поэтому программы с алгоритмических языков с помощью программ-трансляторов переводятся в последовательность кодов машинных команд.
Программа преобразования данных состоит из описания типов данных и их структур, которые будут применяться при обработке, и операторов, указывающих ЭВМ, какие типовые действия и в какой последовательности необходимо проделать над данными и их структурами.Таким образом, управление процедурой преобразования данных осуществляется в первую очередь программой решения вычислительной задачи, и если решается автономная задача, то никакого дополнительного управления процедурой преобразования не требуется. Другое дело, если информационная технология организована для периодического решения комплекса взаимосвязанных функциональных задач управления, тогда необходимо оптимизировать процедуру преобразования данных либо по критерию минимизации времени обработки, либо по критерию минимизации объемов затрачиваемых вычислительных ресурсов.
Первый критерий особо важен в режиме реального времени, а второй — в мультипрограммном режиме.Программа решения вычислительной задачи преобразует значения объявленных типов данных, и, следовательно, в процессе выполнения программы происходит постоянная циркуляция потоков значений данных из памяти ЭВМ и обратно. При выполнении программы к одним и тем же значениям данных могут обращаться различные процедуры и операции, сами операции обработки могут между собой комбинироваться различным образом и многократно повторяться и дублироваться. Следовательно, задачей управления процедурой преобразования данных является, с одной стороны, минимизация информационных потоков между памятью ЭВМ и операциями (процессором), с другой — исключение дублирования операций в комплексах функциональных программ.
Первая часть задачи может быть формализована, если структурировать программу на типы применяемых в ней операций, совокупности используемых в них данных (назовем эти совокупности информационными элементами) и связи между ними. Тогда модель этой части задачи преобразования данных может быть представлена в виде двудольного графа, состоящего из множе-
4-1909
Информационные элементы |
Операции |
Рис. 4.4. Граф преобразования данных |
Этот граф можно сделать раскрашенным, т. е пометить различным цветом дуги, относящиеся к разным информационным элементам. Тогда задача минимизации информационных потоков в графовой интерпретации будет состоять в разбиении раскрашенного графа на подграфы (модули), при котором минимизируется суммарное число дуг различного цвета, связывающих выделенные подграфы
Для удобства математического описания задачи управления процедурой преобразования данных и метода ее решения сведем граф, представленный на рис.
4.4. к табличной форме, расположив по строкам выполняемые операции, а по столбцам — элементы множества идентификаторов исходных, промежуточных и выходных данных, связанных с выполнением этих операций.На пересечении строки и столбца ставится 1, если операция и информационный связаны. Другими словами, получим
матрицу Ь:
О, Р2 - О,
А] /и /12 /1„ £ = А2 >2\ 122 — 12п |
где 1у — 1 — если информационный элемент В} используется при выполнении операции А:!,/ - 0 -- противном случае;
При таком представлении задача состоит в разбиении множества операций преобразования данных матрицы Ь на непересека-
ства узлов-операций, соединенных дугами с множеством узлов информационных элементов (рис. 4.4). |
98
ющиеся подмножества (модули), суммарное число информационных связей между которыми минимально. При решении задачи должны быть учтены ограничения: на число выделяемых подмножеств (модулей); на число информационных элементов, входящих в один модуль; на число информационных связей между выделяемыми модулями; на совместимость операций в модулях.
Данная задача может быть сведена к задаче линейного программирования и решена с использованием стандартных прикладных программ.
Алгоритм решения большой и сложной задачи, особенно комплекса задач, включает многократное использование типовых операций в различных комбинациях. Причем эти комбинации тоже могут многократно исполняться в соответствующих частях большой программной системы. Поэтому второй частью задачи управления процедурой преобразования данных являются выделение в алгоритмах решения задач (или задачи) общих операционных комбинаций, выделение их в общие модули и упорядочение таким образом общей схемы алгоритма обработки данных. Эта задача на логическом уровне может быть представлена как задача укрупнения графов алгоритмов [32].
Приведенный граф можно разметить, написав возле дуг число обращений от операции к операции (например, от А\ |
Граф алгоритма представляет собой древовидный граф, узлами которого являются операции над данными, а дугами — связи (отношения) между операциями в алгоритме. В корне графа расположена головная (начальная) операция Ао, ОТ которой после ее выполнения происходит переход к операции А\ или Л2 , затем к Аз, А4,..., Лт(рис. 4.5).
Рис. 4.5. Граф алгоритма |
к Ат,) в процессе выполнения алгоритма. Для детерминированных алгоритмов число обращений г,у > 1, для вероятностного алгоритма число г,)
Еще по теме 4.4. ПРЕОБРАЗОВАНИЕ ДАННЫХ:
- 4.4 Результативность и эффективность файлов данных (картотек, массивов данных)
- II Главные возражения против антропологических данных. — Метод исследования. — Научные предположения. — Разногласие данных. — Признаки преступности, даже у честных людей. — Историческая и антропологическая изменчивость понятия преступления. Его определение. — Преступный тип. — Происхождение и природа преступности.
- 1. У ИСТОКОВ ПРЕОБРАЗОВАНИЙ
- 3.5.4. Преобразование акционерного общества
- 25. Преобразование хозяйственных товариществ и обществ (корпораций)
- 8.4. ТЕСТ «МЕНЕДЖЕР И ПРЕОБРАЗОВАНИЯ»
- 9.12. ТЕСТ «МЕНЕДЖЕР И ПРЕОБРАЗОВАНИЯ»
- § 2. Социально-экономические преобразования
- Первые преобразования.
- 4.2. Логарифмические преобразования
- Реформы и преобразования.
- Преобразования в армии.
- 16.2.1. Слияние, присоединение, преобразование
- 3.4. ПРЕОБРАЗОВАНИЕ ИНФОРМАЦИИ В ДАННЫЕ