книги из ГПНТБ / Зайцев Н.Г. Информационное и математическое обеспечение АСУП
.pdfсравнения записей пересылки информации из Mt и М2
в новые массивы М3 и М4 или же между Mi и М2.
Наряду с этим подпрограмма имеет выход к специ альному блоку обработки, выполняемому после сравнения текущих записей из Mi и М2. При этом пересылаются следующие параметры обращения: адрес текущей записи из М2; адрес текущей записи из Мр, результат сравнения.
Параметры обращения: описание массивов Мь М2, М3, М4 (в зависимости от модификации некоторые могут отсутствовать); таблица пересылаемых элементов из Mi и М2; модификация.
ПЕЧАТЬ ДАННЫХ
Подпрограмма вывода одной записи служит для^ вы
вода на |
алфавитно-цифровое печатающее устройство |
(АЦПУ) |
одной записи в соответствии с имеющимся |
описанием |
данной записи. Если запись не помещается |
в одну печатную строку, она размещается в нескольких (при этом, естественно, форма документа нарушается, однако такой вывод дает сигнальную информацию для изменения описания выходной записи). Словесные значе ния могут располагаться в нескольких строках, даже когда запись занимает одну строку. Для этого в описа ниях словесных элементов необходимо указать разрешае мую ширину графы в знаках, которая может быть мень ше, равна и больше длины элемента.
Так как в описаниях записей встречаются одновре менные описания заголовка и записей — документострок, различаемых по наличию признака в нулевом уровне номера величины, подпрограмма имеет две модификации:
МОД-1 — вывод величин заголовка; МОД-2 — вывод величин записи — документостроки.
Подпрограмма не производит предварительного пере вода бумаги. Поэтому такой перевод должен выполнять ся, если в нем есть необходимость, перед обращением
к подпрограмме.
Порядок следования элементов в строке соответст вует последовательности размещения описаний элемен
тов в описании записи.
Параметры обращения: адрес начала выводимой записи; адрес описания записи; характеристика печатной
строки.
Подпрограмма выдачи информации в форме доку ментов предназначена для печати на АЦПУ в форме
120
документов заданной структуры заданного массива дан ных. Массив может быть размещен как на ленте, так и в МОЗУ, что задается соответствующими параметрами обращения. Печать требуемой формы осуществляется по описанию документа, содержащего всю информацию о структуре и форме выходного документа. Описание документа хранится как информационный массив посто янного хранения и вызывается самой подпрограммой по номеру массива. Подпрограмма имеет внутренний выход после печати каждой очередной строки к специальному блоку обработки, который пишется программистом. Такого выхода может и не быть, если он не требуется.
Параметры обращения: описание выводимого масси ва; описание формата документа; адрес программного блока обработки.
Программы информационного обеспечения рассмот рены в § 5 главы II.
5. СИСТЕМНАЯ ДИСПЕТЧЕРСКАЯ ПРОГРАММА
Системная диспетчерская программа предназначается для организации потоков данных и обработки их в после довательности и ритме, определяемым производственно-" хозяйственной деятельностью предприятия. Под процес сом обработки данных следует понимать всю совокуп ность операций, выполняемых с данными, включая как их обработку, так и сбор, передачу, хранение, распре деление и обмен с внешним окружением.
Система является одним из звеньев аппарата управле ния предприятием, и ее работа должна быть регламентиро вана и увязана с работой, выполняемой управленческим персоналом. Работа системы должна происходить, образно говоря, в соответствии с ее «должностной инструкцией», выполнение которой обеспечивает управля ющая программа. Таким образом, она должна содержать правила определения распорядка работы по обработке данных и программные средства для осуществления этого распорядка. Управление непосредственно машиной осуществляется через машинную диспетчерскую систему.
Таким образом, основной целью диспетчерской про граммы является обеспечение решения требуемой задачи к заданному моменту времени. В случае, когда это невыполнимо, например за ограниченный промежуток
121
времени надо решить несколько задач, а вычислительная мощность ЦВМ не позволяет это сделать, суммарное время запаздывания решения задач с учетом их приори тетности должно быть минимальным. Дополнительным критерием эффективности функционирования программы является минимум затрат машинного времени на свою собственную работу.
Решение задач в АСУП выполняется в следующих режимах:
1)регулярный, заранее заданный поток задач, опре деляемый графиком работы предприятия;
2)случайный поток заявок на выполнение задач (в том числе и запросы), возникающий вследствие появле ния непредвиденных ситуаций в производстве, а также непланируемых обращений в систему управленческого
персонала; 3) обработка поступающих данных, отображающих
состояние производства, и включение их в соответствую щие информационные массивы; поток данных может иметь регулярный и случайный характер;
4) обработка задач, ко времени решения которых не предъявляется особых требований и которые решаются во время, свободное от решения задач в первых трех режимах.
Заданный момент окончания решений задачи опреде ляется или указанием времени, к которому результаты решения должны быть представлены пользователю, или указанием времени, допустимого на выполнение задачи после поступления заявки. Первый случай применяется для регулярного потока задач, для которых составляется расписание, а второй — для случайного потока задач.
Последовательность решения задач при поступлении ряда заявок необходимо определять с учетом приори тета. Приоритет определяют, исходя из значимости как самой задачи, так и пользователя для работы предприя тия, и присваивают вне рамок работы системной диспет черской программы. Будем называть это внешним прио ритетом. В пределах же заданного внешнего приоритета порядок решения задач должен определяться управ ляющей программой согласно правилам определения внутреннего приоритета. Условия (принципы) определе ния внутреннего приоритета должны быть заданы для программы и реализованы в соответствующем блоке.
122
Программу необходимо строить по блочному принци пу с четким разграничением функций, выполняемых отдельными блоками. При таком построении возможна поэтапная разработка блоков и запуск программы в экс плуатацию с тем или иным количеством за счет времен ного снижения числа выполняемых функций.
Поступ |
Новые параметры |
|
ление |
и показатели |
|
заданий |
абонентов, |
|
Блок измене |
новая дисциплина |
|
обслуживания |
||
ния дисциплины |
||
обслуживания |
|
Рис. 11. Укрупненная блок-схема системной диспетчерской программы.
Основными блоками программы являются следующие: блок диспетчирования, определяющий очередность выполнения того или иного задания по обработке данных с учетом его значимости и наличия необходимых техни
ческих ресурсов; блок исполнения, управляющий машинным диспетче
ром; блок изменения дисциплины обслуживания, исполь
зуемый для изменения заданных параметров и показа телей абонентов и получения новой дисциплины обслужи вания, определяемой руководством системы.
Укрупненная блок-схема программы с указанием взаи модействия между отдельными ее элементами показана на рис. 11.
Каждая программа, включаемая в сферу управления системного диспетчера, должна содержать следующие
123
обязательные сведения, характеризующие эту програм му: внешний приоритет; среднее время, затрачиваемое на работу; объем потребной оперативной памяти.
В связи с ограниченностью объема оперативной па мяти ЦВМ необходимо уделять особое внимание разме щению диспетчера и программ решения задач в опера тивной памяти. Кроме того, часть оперативной памяти должна быть отведена для машинного диспетчера. Это решается (аналогично машинному диспетчеру) выделе нием части программы, постоянно хранимой в МОЗУ,— резидента, который вызывает блок, необходимый для работы.
6. РАСЧЕТ КОЛИЧЕСТВЕННОГО СОСТАВА ОБЪЕКТОВ
Определение количественного состава объектов, состоя щих из ряда других, которые, в свою очередь, могут быть составными, является одной из узловых задач в АСУП, встречающейся буквально в каждой из функциональных подсистем. В качестве примеров можно назвать опреде ление состава изделия в задачах технической подготовки производства, расчет материалов и покупных в задачах материально-технического снабжения, определение ма териальных и трудовых затрат в задачах планирова ния и т. д. J
В общем виде задача количественного состава объек тов формулируется следующим образом. Все объекты производства, состав которых определяется, можно по следовательно перенумеровать от 1 до п.
Обратим внимание на то, что под объектами в дан ном случае понимаются все участвующие в производстве компоненты: изделия, детали, материалы, трудовые ресурсы и т. п. и даже план может условно рассматри ваться как объект. Рассмотрим г-й объект Q,- из этого множества. Пусть в него входят объекты Qj, Q*,..., Qm в количестве Kij, Kik,—, Kim- В свою очередь, объекты Qj, Qkf-yQm состоят из объектов, которые входят в них в определенных количествах. Будем называть эти количе ства коэффициентами непосредственной входимости (КНВ). Термин «непосредственная» употребляется для подчеркивания того факта, что учитываются только те объекты, которые входят в данный прямо, а входимость объекта через другой объект в этих коэффициентах не
124
учитывается. Так, например, объект Q* состоит из К ц объектов Qj и Км объектов Qh, но Qh, в свою очередь, может содержать Kkj, объектов Qj, которые не учиты ваются Кц. Отметим, что в разных производственных ситуациях эти коэффициенты называются входимостью, нормой, потребностью и т. п.
КНВ можно задать в форме матрицы, в которой по обеим координатам указаны номера объектов, а элемент, стоящий на пересечении г-й строки и /-го столбца, есть коэффициент непосредственной входимости /-го объекта в i-й. Если Qi не содержит Qj, то К ц — 0. Каждый объект считается входящим в себя один раз, поэтому все
К ц = 1.
Практически число объектов составляет величину по рядка 104—106, а каждый объект состоит непосред ственно из 4—10 составляющих, поэтому в матрице КНВ подавляющее большинство элементов будет равно нулю. В связи с этим при машинной реализации КНВ задает ся указанием номера исходного объекта (i), номером входящего объекта (/) и самого значения входи мости (К). Будем называть массив записей со зна чениями КНВ массивом непосредственных входимостей
(МНВ).
Состав можно рассчитывать для любого из объектов, независимо от того, входит ли сам этот объект в какойлибо другой или не входит. Будем называть заданный объект исходным. Тогда расчет заключается в определе нии количеств всех объектов, входящих в исходный как непосредственно, так и через входящие составные объек ты. В общем случае количество исходных объектов может быть любым. Тогда подсчитывают количества объектов, входящих в совокупность исходных. Однако совокуп ность исходных объектов удобно заменить одним фик тивным объектом, куда каждый исходный объект входит в заданном количестве. Поэтому в результате расчета получается входимость всех объектов в заданный или фиктивный исходный объект. Будем называть эти входи мости коэффициентами полной входимости. Совокуп ность этих коэффициентов и определяет количественный состав объекта.
Объекты, составные части которых в расчете не учи тываются, будем называть конечными. Конечными явля ются также и элементарные (простые) объекты, которые
125
не имеют составляющих. Обратим внимание на два обстоятельства:
признак конечности должен задаваться явно, так как иногда желательно ограничить состав входящих объек тов какими-либо условиями;
отсутствие в МНВ коэффициентов входимости в дан ный объект не является признаком его конечности, так как они просто могут быть еще не введены в МНВ.
Рис. 12. Схема расчета количественного состава объектов.
Если объект не имеет признака конечности, а коэф фициенты входимости в него отсутствуют, это служит сигналом о необходимости пополнения МНВ. Хуже об стоит дело в случае, если не указаны только некоторые КНВ. Обнаружить это практически невозможно, поэтому при формировании МНВ необходимо предпринять необ ходимые меры для указания всех КНВ. В частности, для контроля при вводе можно указывать КНВ и общее их количество.
Алгоритм расчета иллюстрируется блок-схемой, пред ставленной на рис. 12. Блок выборки производит выборку неконечных элементов из очередного уровня входимости. Обратим внимание, что в общем случае конечные элемен ты могут быть и в массиве задания, поэтому расчет начинается с выборки. Оставшиеся неконечные элементы сортируются (блок сортировки) по признаку упорядо ченности МНВ и выбираются входимости в элементы рассматриваемого уровня (блок подбора). При этом производится умножение КНВ на количество элементов данного уровня, входящих в задание. Получается коли чество элементов, входящих в задание в следующем уровне. Неконечные элементы, для которых нет входя щих МНВ, вылечатываются (блок печати). Затем произ
126
водится выборка неконечных из отобранного уровня, и цикл повторяется. Расчет заканчивается, когда в очеред
ном уровне не окажется неконечных элементов. После этого все уровни сорти
руются по идентификато рам элементов. При этом одинаковые элементы объединяются в один с суммированием их коли честв. Получается массив номенклатуры задания (МНЗ), содержащий все объекты, входящие в за дание с указанием соот ветствующих количеств.
Для определения ве личин изменений в соста ве объекта после какихлибо изменений в нем тре буется знать состав объекта до и после изме нений. Прежний состав объекта можно или за помнить, или просчитать заново. Все зависит от то го, что экономичнее: хра нить ли МНЗ или рассчи тывать его снова. Новый же состав объекта рас считывается. После этого определяют величины из менений, и производится запоминание нового со става.
На рис. 13 показана схема процедур, выпол няемых при перерасчете, построенная исходя из ус ловия, что прежний МНЗ хранится. Однако схема имеет общий характер, так как всегда можно пред положить, что изменился
127
самый первый исходный объект, и перерасчет выполнять для него.
Выполняется расчет состава объекта до и после из менения. Зная количество, в котором входит изменяемый объект в исходный объект, определяют все величины из менений поэлементно. Отклонения выпечатываются. Но вый состав объекта запоминается.
7.ГРУППОВАЯ НОМЕНКЛАТУРА
ИРЕШАЕМЫЕ НА ЕЕ ОСНОВЕ ЗАДАЧИ
Групповая номенклатура определяет порядок группи ровки объектов по какому-либо ряду признаков (конст руктивно-технологических, производственных, эксплуа тационных и т. п.) в многоуровневую иерархическую структуру. Схема такой структуры показана на рис. 14. Каждый t-й уровень содержит ряд групп (i + 1)-го уров ня и сам входит как одна из групп в (i — 1)-й уровень. 1-й уровень содержит все множество объектов и являет ся верхним элементом иерархии, k-й уровень содержит элементарные объекты и, таким образом, является конечным (низшим) элементом иерархии.
В групповой номенклатуре в отдельных группах от дельные уровни могут быть пропущены. Так, например, i-я группа может делиться сразу на группы (г + 3)-го уровня. В этом случае для общности будем считать, что г-я группа состоит из одной (г + 1)-й группы, (t + 1)-я группа — из одной (i + 2)-й группы и так до тех пор, пока очередная группа не разделится на ряд подгрупп.
Порядок следования групп (i + 2)-го уровня в i-м уровне и элементарных объектов в k-м уровне опреде ляет порядок следования элементарных объектов вооб ще при упорядочении любого подмножества объектов. Однако отметим, что для каждого множества объектов может быть задано несколько законов построения груп повой номенклатуры.
Задание групповой номенклатуры может быть выпол нено независимым указанием входимости групп (i + 1)- го уровня в упорядоченном виде в i-й уровень. При этом используется или простой перечень групп (i + 1)-го уров ня или закон вхождения элементов (г— 1)-го уровня
вг-й.
Вкачестве примера на рис. 15 приведена принятая
128
в радиотехническом производстве 10-уровневая структу ра группировки выпускаемой продукции.
1-й |
2-й |
(k— 1)-й |
й-й |
|
уровень |
уровень |
уровень |
уровень |
|
|
|
Группа |
Изделие |
|
|
11 . . . 1 |
Изделие 2 |
||
|
|
|
Изделие 3 |
|
|
Группа |
|
Изделие |
|
|
|
|
|
|
|
11 |
|
|
|
|
11 . . .2 |
|
|
|
Номенкла |
|
|
Изделие |
р |
|
|
|
|
|
тура |
|
|
|
|
|
Группа |
|
|
|
|
12 |
|
|
|
|
|
|
Изделие |
1 |
|
|
Группа |
* |
|
|
13 . . . т |
|
|
|
|
|
|
Изделие s |
|
|
Группа |
|
|
|
|
13 |
|
Изделие |
1 |
|
|
|
||
|
|
Группа |
' |
|
|
13 |
. . . т-\-\ |
|
|
Изделие г
Рис. 14. Структура групповой номенклатуры.
Основные задачи, которые решаются на основе груп повой номенклатуры и заданного подмножества элемен тарных объектов, следующие: простая группировка; груп пировка с упорядочением; определение итогов по группам;
129
