Г Р А Ф И Т — б а з и с

Инфологическое обеспечение | Когнитивное | Графит-букварь

Стр. 1 2 3 4 5 6 7 8 9 10 11 12


Содержание

Графит-визуализация: новые топологии и визуально-структурный анализ

Для чего это нужно?

Общеструктурные (ОС-) узлы

Топологии графит-схем

Как это пишется и читается?

Визуально-структурный анализ и графит-модели

Графит-визуализация: ОС-узлы, древовидные и сетевые схемы

Для чего это нужно?

Для представления всех мыслимых структур знания маршрутной топологии м.б. недостаточно.

Рассмотрим также следующие топологии схем:

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

Предельным случаем сетевой топологии является полносвязная, когда каждая вершина связана с каждой одним ребром (достижима не более, чем за один шаг следования, если рёбра двунаправленные или если однонаправленностью рёбер пренебречь).

В начало страницы

Общеструктурные (ОС-) узлы

Семантика немаршрутных схем, очевидно, также не обязательно связана с исполнением некоей деятельности (протеканием процессов). Вместе с тем нелинейные узлы таких схем топологии «один ко многим» должны иметь какой-то формальный смысл. Это м.б. направление наполнения связей схемы в пространстве, времени, движении. Третье характерно для импер-семантики.

Если отвлечься от конкретного правила ветвления (опять-таки как в синтдиаграммах), то логически возможны следующие абстрактные правила (полагая, что единственным является вход узла):

Понятно, что третий тип возможен при числе выходов более двух.

Для удобства записи конкретных правил можно ввести метки не только для выходов, как в шампур-методе (там они определены для развилки как слова «да» и «нет»), но и для входа; здесь можно записывать формулировку правила (в т.ч. неформальную), возможно, использующую метки выходов.

Аналогично определяется смысл и при единственном выходе узла; выбор уже относится ко входам.

Полезно рассмотреть, как можно интерпретировать функциональные ОС-атомы (в предположении ориентированности связей, т.е. рассматривая случаи 1:N и M:1 отдельно).

ОС-узел И логически понимается (при единственном входе) как «безусловный расщепитель» потока на ряд подпотоков (заданных выходами), как «прародитель/наполнитель» этих потоков, и наоборот (при единственном выходе) — как «собиратель» ряда подпотоков в один, как их «обобщитель»; физически же это устройства, известные в технике как «сплиттер» и «комбайнер».

Узел ИЛИ логически есть «условный выборщик» одного из выходных потоков как продолжателя входного (вершина ветвления, в сущности — частный его случай) и аналогично — одного из входных как продолжателя выходного (если это возможно, т.е. поток активен/наполнен — но узел ИЛИ, в сущности, «отвлекается» от этого, а определение факта активности используется при необходимости); физически это «переключатель» со входным или выходным «переключающим контактом» или «многоходовый кран».

Узел И/ИЛИ логически трактуется как «выборщик для порождения/наполнения» одного и более потоков, т.е. «условный расщепитель», и наоборот — как «собиратель» потоков, выбранных по заданным для узла условиям, в продолжающий поток (опять же с отдельным рассмотрением активности/наполненности); физически это «коммутатор» вида 1:N и M:1 соответственно.

В графит-методе определены вершины данных типов как общеструктурные (ОС-) узлы.

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

В начало страницы

Топологии графит-схем

Вернёмся к построению схем. Системный подход подразделяет базис операций построения на следующие виды (будем называть их опер-классами):

Прибавления в шампур-методе (далее - ШМ) сводятся ко вводу атома и частей в некоторые (составные) атомы, а также в заготовки.

Вычитания реализованы удалением частей схем/заготовок (веток, концов) и частей составных атомов.

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

В графит-методе состав каждого опер-класса расширен прежде всего в связи с новым механизмом декомпозиции Область, а также в силу введения новых видов топологий (структур-классов) схем, обсуждаемых здесь, и новых вариантов топологии маршрутного структур-класса — единственного в шампур-методе.

К данным операциям примыкают традиционные команды «редактирования по выделению» (копирование через «карман» и удаление). Если предполагается соблюдение правил графит-метода (ШМ-тезисов), то их объектами служат вершины или макроструктурные блоки (атомарные, лианные адресные); тем самым речь идёт о строгой визуализации. Относительное положение вершин и рёбер схемы определено правилами назначения положений рёбер и точек их присоединения на вершинах и контролируется исполнителем правил (сочинителем, редактором). Геометрия фигур, составляющих вершины, параметризуется и зависит от объёма содержания фигуры при текущем форматировании.

При нестрогой («либеральной») визуализации также включаются редактирование геометрии линий (реализует пересадки и заземления лиан) и фигур из графит-алфавита с последующим возможным смещением включённых в соответствующие маршруты вершин; понятно, что при этом связь вершин с линиями существует в сознании сочинителя и никак не определена в описании шампур-схемы.

Прежде чем преобразовать какую-то схему, мы должны её образовать; встаёт вопрос: по каким принципам это делать? Сколь бы «либеральной» ни была визуализация, всё-таки нужно следовать неким базовым правилам, без которых шампур-схема не будет собой; ведь «если можно всё – то нельзя ничего».

Если отвлечься от топологических запретов, то можно выделить следующие принципы шампур-метода в части организации схем:

По этим принципам м.б. организованы и схемы немаршрутной топологии (или их макроструктурные элементы); тогда их составление и чтение также облегчится.

Связь «Адрес/Имя» по смыслу соответствует межстраничному соединению блок-схем (откуда и взяты определения этих вершин). Поэтому ветки в принципе м.б. расположены на диосцене произвольно. Также в ШМ считается совмещаемой совокупность связей веток одной схемы в единый подграф — т.н. «петлю силуэта» - что даёт возможность размещать ветки регулярно.

Принцип силуэтной укладки фактически есть принцип поддержания структурности, специфический для ШМ. Пары соединителей вводятся в исходную маршрут-схему («примитив» в ШМ-терминах) так, что:

Фактически «петля силуэта» задаёт кроссировку связей веток как структурных блоков схемы; не допускаются связи вне её.

По этим принципам м.б. организованы и схемы немаршрутной топологии (или их макроструктурные элементы); тогда их составление и чтение также облегчится.

Вводятся также требования к вершинам и рёбрам схемы самим по себе.

Рассмотрим теперь возможности построения таких схем по графит-методу и необходимость коррекции (расширения) метода. В основном они определяются следующим:

Целесообразно начать со схем того же структур-класса, что является объектом ШМ — устремлённых графов с семантикой потоков управления деятельности.

Для маршрутных схем прежде всего, исходя из графит-базиса элементов и структур, определяемого в графит-методе, и общего определения данного структур-класса, можно наметить следующие пути развития топологии и её исчисления. Соответствующие ШМ-схемы будем называть маршрут-силуэтами (примитивами).

Шампур-силуэт м.б. обобщён до горизонтально-декомпозируемой схемы, аналогичной ЕСКД-схеме сборочной (комплексируемой) единицы (блока, агрегата). Для этого, кроме обычных веточных (с областью действия в пределах той же схемы), определяются также внешние соединители. Они устанавливают связь с комплементарными вершинами любого другого маршрут-силуэта. При этом целевое имя ветки уточняется именем целевой схемы.

Силуэтная укладка в общем смысле является физической, вводящей делимость схемы как «слепыша» исключительно из её свойств как графа. Логический аспект м.б. также учтён, если придать веткам смысл единиц метаструктуры предмета описания (в дракон-интерпретации как императивной это единицы деятельности). Однако это м.б. искусственным для конкретной семантики схем (определяемой не только «слепышом», но и его разметкой).

Можно реализовать прямо логическую укладку схемы на плоскости, если перейти от деления её соединителями к делению разветвителями. Фактически они присутствуют в «петле силуэта», но их условия (т.н. охраны) имеют смысл исключительно проверок совпадения значений адреса целевой ветки и имени текущей. В интерпретации же силуэта для алгоисполнителя петля вообще м.б. представлена через безусловные переходы (явные).

Деление разветвителями реализуемо через т.н. цикл Дейкстры, охраны ветвей которого можно формулировать от любых величин маршрутной схемы в её импер-интерпретации. Как частный случай к ЦД м.б. приведён дракон-силуэт. Для прямой реализации следует определить маршрут-аксиому (заготовку) ЦД-вида, называемую в графит-методе дейкстралом.

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

Следует допустить альтернативное направление маршей (по горизонтали слева направо) для некоторых маршрут-языков.

Построение древовидных схем на базе шампур-метода возможно, если включить в аксиомы заготовку-дерево, показанную на рисунке, а в алфавит - «древесные узлы» (разветвители на М выходов; в случае, если дерево ориентированное и читается от листьев, это будут соединители на М входов; мы будем считать, что ордерево читается от корня, а без учёта ориентации называть вертикали на множественной стороне весами, а вертикаль на единичной стороне - подвесом). На базе «древ-узла» строится специфический атом древ-расширения шампур-метода.

Между парой соседних «древ-узлов» (т.е. весом одного и подвесом вышележащего) определяется трасса, содержащая точку ввода или нагрузку (простой или сложный сепулька-блок; будем называть его вес-блоком). При нелинейной нагрузке, естественно, имеются побочные трассы, а также потенциальная возможность пересадить лиану. Мы допускаем пересадку как в пределах вес-блока, так и на звенья ввода других вес-блоков (доступные для ввода соединителя по графит-правилам для маршрутного структур-класса). Во втором случае образуется структура, называемая «прошитым» деревом.

Допущение сложных сепулька-блоков фактически означает, что в древ-схемах имеются как расходящиеся, так и сходящиеся маршруты, т.е. это не чистые деревья. Однако любой сепулька-блок (и вообще маршрут-схема как устремлённый граф), напомним, м.б. развёрнут(а) в дерево (при наличии циклов — с принятием числа их повторений конечным).

Как и в маршрутных схемах, вес дерева может содержать контуры (а значит, обычные бинарные соединители и разветвители); можно допустить контуры между разными вес-блоками (когда между соединителем и разветвителем лежит один и более «древ-узлов», имеющих связь по рёбрам, т.е. принадлежащих одному поддереву) и вообще «произвольную прошивку» (когда соединитель и разветвитель расположены на любых трассах, напр., соседних на одном «древ-узле», в разных поддеревьях). Для этой цели применяется пересадка лианы (перенос бинарного соединителя на другую позицию схемы); заземление лианы для данной топологии схем не определено. Выбранные попарно выходы «древ-узла» м.б. рокированы (вместе со своими поддеревьями).

Тем самым можно получать схемы, представляющие файловые системы, абстрактные типы данных, классификации объёма сущностей и предметных областей.

Вместе с тем следует определить возможные типы ветвления в «древ-узлах» (если дерево ориентированное и читается от корня). Абстрактно это типы, заданные для ОС-узлов.

Сказанное иллюстрируют схемы далее:

Определение древовидных графит-схем

Если дерево понимается как классификация, то входная метка «древ-узла» имеет смысл основания классификации, показываемой этим узлом, выходные — результатов классификации (промежуточных рубрик или окончательных понятий).

Ещё один частный вопрос связан с изображением терминальных частей дерева. Иногда принадлежность листьев конкретной рубрике удобно показать соовместно с терминированием листовых маршрутов. Для этого «переворачивают» терминальное поддерево: под листьями помещают многовходовый терминал, полученный инверсией заключительного «древ-узла» и исключением его единственного выхода (до инверсии — входа), листья становятся шампур-вершинами и образовавшиеся при этом выходы присоединяются к мультитерминалу, а входы — к вышележащему «древ-узлу» (который получает соответствующее число выходов).

Специфика построения таких схем в основном сводится к следующему.

Атом Древ-узел вставляется в заготовку (схему) с выбором по умолчанию одного из весов (напр., левого) в качестве продолжающего маршрут вставки; в этом весе отсутствует терминальная вершина Конец.

В реальной схеме вертикаль между двумя «древ-узлами», разумеется, одновременно является весом вышележащего из узлов и подвесом нижележащего.

Аналогично добавлению варианта переключателя можно ввести добавление веса «древ-узла», чтобы получать N-ичные деревья.

Операции вывода графит-деревьев представлены на рисунке:

Специфика вывода графит-деревьев (операции прибавления)

Для построения многосвязных схем следует ввести в алфавит нешампур-вершины с М входами и N выходами (будем называть их сеть-блоками). В связи с произвольным характером маршрутизации м.б. определена пересадка лианы также «за начало».

Можно определить многосвязные схемы типа «деревьев, сращенных листьями»; тогда нужны одновременно и разветвители на М выходов, и соединители на N входов.

Вообще говоря, схему произвольной топологии можно уложить в силуэт, если выделить на ней линейные вершины (или ненагруженные рёбра) между нелинейными вершинами и рассматривать каждую вершину как тело ветки (в первом случае — так сказать, «мультиветки», т.е. многоадресной и/или многоимённой). После этого можно уложить переходы между полученными телами в петлю силуэта; при этом нужно допустить множественность одновременных переходов по петле (тем самым играющей роль шины).

В отличие от шампур-метода, подсхема, связывающая тела (в общем случае мы называем её кроссом; петля силуэта — тоже разновидность кросса), представляет не последовательно, а одновременно используемые связи, т.е. множество отношений вида «вход тела-выход тела».

Объекты укладки можно укрупнить до цепочек следования линейных вершин. В качестве тела может выступать и сложный сепулька-блок (а также «многоадресный» или «многоимённый»). Важно, чтобы в блоке не было пересечений маршрутов.

Заметим, что этот принцип широко и давно используется, хоть и неявно (и без общеизвестных теоретических обоснований). Так, сложные схемы материальных систем рисуются с применением шин; при этом роль вершин Имя и Адрес играют номера связей при их входе и выходе из шин. Правда, конфигурация шин обычно сложная; приведение её к петле (или к какой-то регулярной многопетлевой структуре) во многих случаях могло бы улучшить читабельность схем.

Требование регулярности естественно приводит нас к петле-«этажерке» - с размещением веток в два и более уровней; при этом каждый уровень охватывается своей частью петли - «этажом», а части образуют единую «гребёнчатую» петлю. Для наглядности шампуры веток на соседних этажах не должны совпадать (напр., ветки размещаются по этажам в «шахматном» порядке).

Соответственно расширяется смысл сеть-силуэта; петля представляет не только единичные, но и множественные (но однородные) отношения (напр., по ней может совершаться множественный переход). Удобно представлять это перетолщением линии петли. Также естественной будет горизонтальная ориентация связей схемы. Атом Сеть-блок изначально м.б. шампур-типа, если определить операции добавления связи по входу и по выходу; тем самым естественно используется шампур-точка ввода. Соответственно определяется сеть-заготовка.

Многосвязный сеть-блок может считаться состоящим из ряда элементов или просто соединяющим входы и выходы согласно некоей схеме коммутации. При этом связность элементов м.б. не определена и вообще м.б. представлены только существенные элементы. В этом смысле сеть-блок подобен вершине Область (см. в п/п 4.1.12.2), и его внутренние связи м.б. также раскрыты на отдельной схеме декомпозиции.

Важная роль элементов — представлять величины алгопроцессов, когда графит-сеть выражает актив-схему в составе комплексной графит-модели. В этом случае имена элементов блока есть имена ПДЭ, содержащих величины, и между актив-сетью (сетями) и схемами импер- и деклар-частей модели устанавливается логическая связь по этим именам (независимо от того, связаны ли элементы в схему блока).

Сказанное представлено на рисунке ниже:

Определение графит-схем многосвязной топологии

К добавлениям связей и элементов в основном и сводится специфика построения многосвязных схем. Она иллюстрируется на рисунке:

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

Для рассмотренных топологий схем не описывались операции вычитания; они аналогичны таковым для маршрут-схем, отличаясь только объектами (разумеется, удаление конца дерева требует указания, в какой точке ввода зациклить терминированный им шампур, а конца сетевой связи – указания входа для соединения).

Здесь не рассмотрены и такие операции вывода, как замена древ-листа, добавление сеть-соединителя – их смысл очевиден.

В начало страницы

Как это пишется и читается?

Покажем синтаксис на примере обобщённой структуры графит-сети.

Графит-сеть (в «этажерочной» компоновке)

Можно выделить следующие идеи данной схемы:

Можно сказать в терминах материальных схем (напр., электрических), что шинные линии сеть-кросса (данные перетолщенными) — это своего рода «жгуты» связей. А любые связи «не один к одному» - реализуемые устройствами вроде «клеммных колодок» и «распаячных коробок» - должны представляться топологически адекватными подсхемами внутри блок-этажей. Кстати, так принято и в ЕСКД — ибо это упрощает составление и чтение схем.

Основой таких подсхем м.б. ОС-узлы и сложные ОС-подсхемы, задающие к.-л. логику организации связей между входами одних блоков и выходами других блоков (скажем, порядок их использования). Для реализации их построения д.б. определены точки ввода на связях.

Как видно, при этом мы требуем, чтобы хотя бы один множественный вход (выход) у подсхем вида «не один к одному» изначально был присоединён к кроссу. Это вытекает из самого порядка вывода сеть-схемы графит-методом.

Соединитель фактически служит для декомпозиции «разбиением» (скажем, когда предметный смысл сеть-петли – пул связей, напр. кабельный жгут – и эти связи разъёмно/неразъёмно стыкуются с сеть-блоками).

На первом (верхнем) блок-этаже мы представили базовые подсети, своего рода «кирпичики» графит-сетей. На втором блок-этаже показано, какие более сложные подсети можно из этих «кирпичиков» построить (в пределах блок-этажа), если достаточно слабо ограничить процесс вывода графит-сети (соответствующей типизацией звеньев ввода). В данном случае задана типизация, которую условно можно назвать «7/8» - для связей сеть-блоков и древ-узлов тип ввода 8 (несетевой, т.е. нельзя создавать цепочки сеть-блоков в пределах этажа ни напрямую, ни через вершины других типов), для связей маршрут-вершин — тип 7 (маршрутный, т.е. можно строить отдельные маршрут-подсхемы).

Ясно, что при различных ограничениях можно строить разные подсети; но возможен и строгий путь — ограничиться только «кирпичиками», а более сложные структуры образовывать только разводкой связей через сеть-кросс. Однако читать такую схему м.б. сложнее; проще развёртывать относительно сложные подсхемы в пределах блок-этажа. Очевидно, что меру строгости надо выбирать с учётом того, какими структурами представляется предметная область, какова их ожидаемая сложность и какие преобладают топологии элементов и подсхем.

Теперь представим то же содержание по-иному организованным на диосцене:

Графит-сеть (в «гребёночной» компоновке)

Здесь можно выделить следующие основные идеи:

Отметим, что нумерация элементов сети не обязательно даётся в таком порядке; так, в ЕСКД принято нумеровать элементы (каждого типа раздельно) линейно-строчно от левого верхнего угла к правому нижнему. Это вполне естественно — так читается текст (опять-таки европейский).

Напомним, что при наличии кросс-этажей поперечины становятся отдельными. Если допустить только раздельные соединители для входов и выходов — то раздельными останутся и поперечины при кросс-этажах. Поэтому не в каждую поперечину можно войти со стороны раздачи, что и показано отсутствием стрелок при некоторых замыканиях.

А при смешанных соединителях надо учитывать, что любая поперечина, несущая их, также «автоматически» станет смешанной. И д.б. присоединена к обеим параллелям. Это допускается в ЕСКД, т.к. в реальных системах связи группируются в соединители исходя из «физики», и м.б. удобно объединить разнонаправленные (и двунаправленные) связи.

Здесь мы задали более строгие ограничения — для связей сеть-блоков тип 3 (линейный), т.е. нельзя в пределах этажа включать в них ничего, кроме лин-вершин. В то же время показаны различные виды оформления соединителей, в т.ч. по типу ЕСКД (с единственным отличием — допускается группировка связей в соединителе с идентификацией группы в специальной позиции).

Важно понимать, что графит-формат соединителей исходит из их интерпретации как «безусловных переходов», т.е. логической, а ЕСКД-формат — как стыков, т.е. из физической. Поэтому противопоставлять их не следует. И наоборот, можно интегрировать. Допустим, так, как это сделано на схеме — введением переходных стрелок при внешних торцах (они показывают направление связи).

Кроме того, сеть-кросс в принципе можно снимать - т.е. «распускать жгут» на отдельные связи и восстанавливать - снова «связывать жгут». Соответствующие операции определены в графит-методе. А простейшие схемы (скажем, содержащие единственный сеть-блок, к выводам которого присоединяются сепулька-блоки и/или древ-подсхемы) м.б. и изначально бескроссовыми. Правда, здесь нужно учитывать, что основная функция сеть-кросса — устранение пересечений. Поэтому бескроссовость допустима только при базис-выводе, т.е. отсутствии операций с лианой и других преобразований конфигурации схем (которые и служат потенциальными источниками пересечений).

И некоторые общие идеи относительно записи содержания схем, реализованные на этих рисунках (в т.ч. обобщённой):

Выноски удобнее компоновать, но «лишняя» графика (линии выносок, контуров меток) при значительном числе связей может затруднять чтение схемы. Возможно, поэтому в стандартах ЕСКД на схемы приняты надписи. Однако выноска может указывать оба конца связи от одной надписи, что м.б. нагляднее и сокращает объём диоданных. При небольшом числе связей на схеме это преимущество проявляется в полной мере.

Вхождение термов оформлено в одних случаях РБНФ-графит-знаками, в других — блок-эллипсисами с РБНФ-индексацией, определяющей вхождение.

Уточним, что при использовании индексов на схемах мы «схитрили» - вместо имени индексной переменной использовали текст '[#]', имеющий смысл «подставь вместо меня композицию имён индексных переменных изо всех охватывающих скобок-итераторов в порядке охвата снаружи вовнутрь».

Тем самым индексы стали менее громоздкими. Ведь вложенность итераторов даёт многоуровневые индексы — подобно номерам заголовков в документах. Ну и текущее значение тогда также многоуровневое. Что на наших схемах, как нетрудно видеть, имеет место.

Также во втором варианте обобщения графит-сети мы по-разному провели эллипсировку для соединителей. В изображённых по краям кросса явно выписан первый элемент (как необязательно однократно входящий в соединитель); через итератор выписано вхождение уже последующих элементов. Такая структура наглядна, но громоздка. Поэтому для остальных соединителей мы использовали только итератор, начинающийся уже от нуля (который, как обычно, означает отсутствие итерируемого). Такая структура проще, а правила сложного строения (в нашем случае — иерархии «контакт-группа-соединитель») нетрудно вывести из здравого смысла. Очевидно, что если нет элементов, образующих группу, то нет и группы; если нет групп — то нет и соединителя.

Итак, мы видим, что полноценная формализация интегрирует графику и текст.

Связь графики с текстом выражается и в том, что наши соображения по компоновке графоэлементов, по сути, неявно «завязаны» на конкретную организацию текста. Как может заметить читатель, документ написан на русском языке ;) — где текст пишется в строку слева направо, а строки идут сверху вниз. Сочинителю на языке с иным порядком — китайском, арабском, иврите — очевидно, может оказаться удобней как-то изменить и компоновку схем. В частности, принять «этажерочную» как основную, считать элементы и подсхемы справа налево.

Если после изучения этих вариантов у Вас возникла идея двумерной организации графит-сетей — расположения контуров сеть-кросса «сеткой» - поздравляем — Вы начали вырабатывать навык того, что называют визуально-структурным анализом (ВСА). :) О нём поговорим чуть подробнее.

В начало страницы

Визуально-структурный анализ и графит-модели

В результате ВСА вырабатывается умение выделять в схемах структурные единицы по тому или иному принципу и рационально организовывать эти единицы — как логически, так и физически.

Именно этому служат и эллипсировка (по сути — декомпозиция неиерархическими подстановками), и иерархическая декомпозиция (через вставки и аналогичные операторы).

Кстати, такой анализ требуется не только для составления схем, но и для их чтения — для обучения чему, скажем, в советское время издавалась специальная литература1.

При визуальном анализе и синтезе исходят из некоего базиса структур, в котором можно представить связи элементов рассматриваемого объекта. Мы задали такой базис в виде ряда топологий «маршрутные-древовидные-сетевые». В принципе выбор м.б. и иным (подобно тому, как среди функций алгебры логики можно выбрать различные совокупности в качестве базисов); важно, чтобы было возможно выразить всё через выбранные структуры.

Главное, однако — что за смысл стоит за схемами и их частями. Это определяется конкретным графит-языком. Понятно, что разные языки могут использовать одну и ту же топологию схем. Общие правила организации графит-сетей таковы:

Если бы речь шла об объединении связей в кроссе, их можно было бы называть, как и в маршрут-кроссах, линиями «земли» и «питания»; но в сетях связи независимы.

Вообще говоря, шина-поперечина, связывающая подпараллели между собой, также м.б. подразделена на подпоперечины по парам «сбор-раздача» (чтобы выделить обходы контуров полностью), но тогда нужно распределить и её связи вместе с метками, что м.б. неудобно. Поэтому одна такая шина (в роли «базы») д.б. в сеть-кроссе.

Напомним, что поперечина, присоединяющая смешанные соединители, в силу одного этого уже становится смешанной и присоединяется к обеим параллелям.

Заметим также, что в ЕСКД-сетях кросс обычно не замыкают в контуры; тем самым связи в шине кросса идут не в одном направлении (обхода контура или ряда контуров), а в обоих — так сказать, «по кратчайшей». Мы считаем замыкание (фидбаками) более наглядным.

Можно считать, что именно поэтому в ЕСКД для схем закреплено горизонтальное положение связей на схемах и принцип «входы слева, выходы справа».

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

В материальных схемах второе м.б. полезно для указания связей с графит-сетями, представляющими части, физически объединяемые данной схемой (скажем, если это схема кроссплаты, с которой стыкуются платы функциональных узлов — или основания, на которое устанавливаются узлы).

Понятно, что при этом неактуально определение направления связи по тому, к какой линии — входов или выходов — она присоединяется. Тем более это неактуально для линии входов/выходов (т.е. для любой скроссированной сети). Можно визуализировать это направленностью формы самого соединителя (что мы и используем).

В ЕСКД часто применяют специальные фигуры типа «вилки» и «розетки», помещаемые при связи (группе связей) одного направления в специальном поле изображения соединителя; в этом случае контуры соединителей ненаправленной формы. На принципиальных же схемах направления связей в соединителях не указывают даже при сочетании входов и выходов, несмотря на то, что при допущении смешанных соединителей принцип «входы слева, выходы справа» уже не работает.

Именно поэтому мы и вводим переходные стрелки при контактах соединителей (даны в основных пунктирных линиях). Можно показывать ими и непосредственно связность (для одной схемы и/или разных схем, расположенных на одной диосцене), проводя стрелки от соединителя к соединителю; но это может загромождать диосцену.

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

Разновидностью соединителя как внутреннего, так и внешнего может считаться и вершина Конец (здесь также нужна парная вершина Начало). Она описывает завершение/начало связи (также м.б. общим для ряда связей) по правилам конкретного языка (интерпретации графит-сетей в смысле предметной области). Однако такая трактовка требует уточнения.

Заметим, что это актуально лишь при наличии в графит-сети кросс-этажей. При их отсутствии между соседними блок-этажами проходит одна смешанная поперечина входов/выходов, которая, конечно, д.б. связана и с параллелью раздачи, и с параллелью сбора связей.

Также отметим следующие вещи, касающиеся обобщённой записи многосвязных схем графит-методом:

При вхождении к.-л. терма «ноль или более раз» явно выписывать первый элемент (как необязательно однократно входящий) нет необходимости.

Также можно обозначать подстановку РБНФ-индекса (прежде всего итератора) неким условным знаком (текстом), явно указанным в качестве такого обозначения.

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

Так, мы оставили знаки для выделения элементов кросса — просто потому, чтобы не накладывать блок-эллипсисы разного назначения друг на друга — так было бы неудобно в них разбираться.

Дополнительным средством выражения здесь может служить асимметрия входа в ОС-узел; можно приблизить его к выходу наиболее предпочтительного варианта (но не совмещать их оси, ибо это уже несёт иной смысл).

Конечно, это несколько упрощённый случай; при составлении схем мы привыкли, что порядок элементов и подсхем м.б. произвольным, не зависящим от их формальных признаков. Учёт этого, однако, потребовал бы более сложной записи строения, которую уже труднее отобразить на рисунке наглядно. Да и чтобы вывести сами выражения в этом случае, придётся уже при визуально-структурном анализе поразмыслить хорошенько, дабы найти оптимальные термы, дающие нужные порядки (тем более - наиболее простым и естественным образом)... ;)

Вместе с тем такое формально-визуальное описание строения выявляет ещё один факт «графитности», по сути, фундаментальный — схема есть также текст в алфавите подсхем и/или элементов, выделенных как РБНФ-термы. Поэтому можно определить граф-язык также чисто текстовой записью, если присвоить алфавитным знакам схем текстовые обозначения. А если вспомнить, что графика в конечном счёте м.б. выражена аналитически — в т.ч. через алгоритм её построения, который, разумеется, также допускает текстовую запись — то и получим полный переход «графика-текст».

В свою очередь, РБНФ-определение можно визуализировать. Правила (в данном случае — т.н. РБНФ-продукции), записанные в виде формул, в этом случае оформляются в виде синтаксических диаграмм — маршрутных схем, задающих все возможные порядки следования алфавитных знаков (представляемых вершинами-жеполями, о которых говорилось в п/п 4.1.1.4). Традиционно синт-диагр-языки имеют только «математическую строгость» - для ветвления маршрутов в них не определяются условия выбора (тем самым фактически принимается, что выбор присходит случайно либо полным перебором вариантов ветвления на синт-диаграмме).

Составление такого определения приведёт нас ещё к одному обстоятельству. Дело в том, что если потребовать информатической строгости, то его формулы д.б. применимы при определённых условиях. Напр., кросс-этаж в определённом месте сеть-кросса нужен, если возникают хвосты также в определённых местах блок-этажа (смежных блок-этажей, если речь идёт о внутреннем кросс-этаже), и т.д. Поэтому каждая РБНФ-продукция (группа продукций) должна иметь условие исполнения.

В графит-записи самого определения это означает, что любое ветвление на синтдиаграмме должно иметь условное выражение выбора вариантов (продукций). Тем самым требуется инфор-синт-язык; понятно, что его схемы относятся к маршрутному структур-классу в нашей терминологии. Продукции и группы продукций есть операторы-действия в таком языке.

Пример. Структуру сеть-кросса, как мы её задали на схемах в предыдущем подпункте, можно описать следующими РБНФ-продукциями:

сеть-кросс::=[вх-кросс-этаж]<блок-этаж>{[пр-кросс-этаж]<блок-этаж>}.

Или, если использовать понятие «кросс-секция» для декомпозиции описания:

сеть-кросс::=[вх-кросс-этаж]<блок-этаж>{кросс-секция};

кросс-секция::=[пр-кросс-этаж]<блок-этаж>.

Структуры отдельных подсхем, как мы их выделили на схемах, можно описать РБНФ-текстом так:

односв-сеп-подсеть::={<метка-[#]><зв-ввода-<3|7>>}<<сеп-блок>|<односв-сеть-блок>>{<зв-ввода-<3|7>><метка-[#]>}.

развод-подсеть::=<РДС-ядро>{вых-РП};

РДС-ядро::=<<<метка-[#]><зв-ввода-8>>|<<туннель><-зв-ввода-8>>><РДС-тело><зв-ввода-8><метка-[#]>;

вых-РП::=<<зв-ввода-8><метка-[#]>>|<<зв-ввода-8><конец>>|<<зв-ввода-8><туннель>>.

смеш-ЕСКД-соед::=<общ-хар><шапка-конт><{вых-гр}{вх-гр}{вх/вых-гр}>;

общ-хар::=<#-с><имя-соед>[тип-соед];

шапка-конт::=['№ конт.']'Имя связи'['Адрес'];

вых-гр::=[имя-группы-вых-связей]{<метка-[#]>[№-конт]<имя-связи>[#-сх]':'[#-с]};

вх-гр::=[имя-группы-вх-связей]{<метка-[#]>[№-конт]<имя-связи>[#-сх]':'[#-с]};

вх/вых-гр::=[имя-группы-вх/вых-связей]{<метка-[#]>[№-конт]<имя-связи>[#-сх]':'[#-с]}.

Здесь мы ввели новую РБНФ-операцию «И/ИЛИ», указываемую знаком ''; её смысл тот же, что для одноимённого ОС-узла.

Конечно, мы не будем описывать здесь все схемы; думается, что читатель может продолжить описание сам.

Однако, если теперь попробовать «совместить» эти описания, чтобы задать графит-сеть в целом, мы обнаружим, что надо как-то ввести понятия, описывающие пространственную конфигурацию сети. По сути, это нужно уже при разложении нелинейных подсхем; так, для разводящей подсети мы никак не определили связность ядра и выхода (представив ядро просто цепочкой РБНФ-термов); для соединителя — связность элементов «шапки» и контактов.

Формально можно ввести оператор РБНФ-И (как мы уже ввели РБНФ-И/ИЛИ, которого нет в «классическом» РБНФ), но он сам по себе ничего не скажет о конфигурации; нужно задать какое-то отношение порядка, адекватно отображаемое в формальный текст. Потенциально это можно сделать, используя вершины «стыка» связей с кроссом (мы неявно вывели в этой роли метки).

В целом можно сказать, что сеть-схемы вместе с древовидными и маршрутными образуют «расширяющийся ряд» возможностей представления структурированных данных (отчуждаемых знаний) как исчисляемых графов. Сетевая топология в этом ряду предельно «свободная» - в ней определены все возможности, необходимые для представления структур любых систем, прежде всего искусственных — которые сообразно общим представлениям «о природе вещей» выступают в двух видах:

Заметим, что сюда относятся и «наши машины» - т.е. и всевозможные стенды как имитаторы, специализированные по задачам/предметным областям, и информашины как «универсальные имитаторы» - вычислители данных для произвольных задач/областей «по Черчу/Тьюрингу/Маркову и пр.». Именно в силу реальной наполненности связей — натурно-моделирующими предметами/средами/энергией либо сигналами данных (которые тоже м.б. не обязательно полем, но и веществом — вспомним монетно-жетонные механизмы оплаты).

Нетрудно видеть, что и сами графит-схемы (как и вообще все результаты процесса моделирования/формализации — т.е. данные, отчуждающие формализуемую часть знаний) относятся к «идеальным» искусственным системам.

Интересен и ещё один аспект визуально-структурного анализа. При прохождении через элемент наполнение связи не обязано сохраняться. В самом деле, если элемент — это технологическая установка, то из полуфабрикатов на входе может образоваться продукт с совершенно новой структурой.

В фантастическом рассказе «Город роботов» советского писателя И. Росохватского описывается следующая ситуация. Люди выясняют, почему роботы в некоем компактном поселении изменили своё поведение и в частности — отношения со внешним миром. При этом обнаруживается, что у роботов организовалась «номенклатурно-бюрократическая система», где высшие уровни иерархии заняты отнюдь не самыми пригодными к управлению типами роботов. На вопрос к попавшим в их подчинение более совершенным: «Почему так получилось?» - те ответили: «Существуют вопросы, на которые мы не можем дать однозначного ответа. Например — сколько будет два ручья плюс два ручья? Четыре ручья?.. или одна река?..». Как оказалось, «залезшие на верхи» роботы просто давали в таких случаях ответ, угодный вышестоящему роботу... ;)

Применительно к нашему предмету можно сказать, что «в каждой шутке лишь доля шутки» :) - при составлении смесей, химических превращениях, склеивании, сваривании, например, как раз можно сказать, что «несколько ручьёв становятся одной рекой». Но надо понимать, что эта «река» всё равно имеет некую структуру — а с учётом разбросов протекания процессов в установке варианты этой структуры. Из которых один или некоторые обладают желаемыми свойствами. Это м.б. варианты микростроения (химического, физико-химического) и/или макро- (как совокупности форм материалов — включая искажения форм типа пустот, раковин - и точек/линий/поверхностей их сопряжения/раздела). И это строение также можно описать визуально — правда, чаще всего не в виде схем (или в существенной части — не схематически, а геометрически).

Именно эти параметры, скажем, определяют пространственно-материальным контролем продуктов — осмотром и/или интроскопией («просвечиванием»). Не говоря уже о функциональном, аналитическом контроле — органолептическом и приборном определении к.-л. величин - но он даёт прямые данные уже не о структуре, а о свойствах (но они часто косвенно связаны со структурой объекта). Оба вида контроля используются и в испытаниях — стендовых и натурных. И предполагают когнитивную поддержку — в т.ч. и в виде схем.

Всё это сказано не для того, чтобы «загрузить» читателя. А чтобы подвести к пониманию, что визуализация преследует конкретные цели, которые, возможно, в его практике потребуют привязки рассмотренных общих средств. И нужно уметь это делать. Данный ресурс по сути справочно-консультационный, некоммерческий, поэтому именно поддерживает самообразование читателей в этом направлении. И конечно, здесь нет цели дать всевозможные конкретизации приложения визуально-структурного анализа и графит-метода к конкретным «предметкам» в специфических условиях.

Вместе с тем читатель может видеть, что графит-сеть всё-таки не настолько свободна, как «ручная» схема, составленная по правилам ЕСКД. Это следствие применения формального метода составления.

Так, графит-схемы по сравнению с ЕСКД-схемами имеют следующие ограничения и особенности синтаксиса:

Фактически этим и обеспечивается возможность замыкания контуров графит-кросса.

Это ограничение фактически исключает неявное, «спрятанное» в кросс множественное отношение связей (рёбер). А проявление требует и понимания смысла такого отношения, и правильной записи этого смысла на схеме.

Тем самым явно разделяются механизмы «горизонтальной», диспозитивной декомпозиции и «вертикальной», ранговой. Оба типа могут сочетаться при формализации реального предмета моделирования.

Двумерная «решётка» контуров даёт некоторые дополнительные возможности для структуризации содержания схемы. В то же время сходного результата можно достичь рациональной группировкой содержания в ряду/колонке контуров.

Графит-РБНФ и эллипсировка вводят несколько более сложный апарат понятий и обозначений для структуризации содержания. Однако после его усвоения пользоваться им не сложнее, чем в ЕСКД. Главное же преимущество — любые структуризации в графит-методе нужно показывать явно. Смысл же графит-аппарата в основе прост — по аналогии с декомпозицией предмета изображения (на диспозитивные и/или ранговые части, связываемые через соединители) вводить декомпозицию самого изображения (схемы или графит-модели).

Можно наметить некоторые расширения данных схем, учитывающие реальные области их применения. В частности:

Тот, кто знаком с пакетом проектирования печатных схем PCAD, может увидеть аналогию — такая же возможность имеется в программе компоновки платы PCCAPS из этого пакета.

Раскладка особенно удобна в связи с т.н. интерпретацией в пространстве графит-сети, проще говоря — для соотнесения её элементов и связей с некоей картой. Она м.б. как плоской, так и объёмной. При этом связи, очевидно, м.б. сложной формы (кривыми, полилиниями), при небходимости трассируемыми (по отдельности и/или группами) в процессе раскладки.

Кстати, можно предположить, что раскладка (а также графит-сеть со «снятым» кроссом) будет неплохой когнитивной поддержкой трассировки реальных связей, представляемых сетью. В самом деле, конфигурация рёбер схемы в момент после снятия кросса показывает реальное число связей, их пути при условии отсутствия пересечений (что м.б. важно и в реальности), а при редактировании конфигурации можно прийти к более оптимальным путям с учётом различных ограничений.

В частности, в графит-сеть м.б. уложена модель деятельности в к.-л. форме (сеть Петри, схема работ). При этом разные интерпретации м.б. определены на одной конфигурации сети. Проще говоря, можно вывести в разном алфавите одинаковые сети, отличающиеся видом/разметкой вершин и/или рёбер.

На практике это означает, что можно сопоставить такие сети для анализа и отражения различных аспектов отчуждаемого знания о предмете визуализации. Подчеркнём — это не то же самое, что предполагается в шампур-методе; там разным предметам могут соответствовать одинаковые абстрактные схемы-«слепыши», рассматриваемые в отвлечении от текстовой разметки (и тем самым — с потерей части данных).

В графит-методе подразумевается сопоставление именно полных схем, включая графо- и текстоэлементы вершин и рёбер. А абстракция состоит в отвлечении от вида элемента и связи и переходе к понятию позиции, в которой для схем каждого вида может находиться свой вид вершины (с своими графикой и текстом) и дуги-ограничения, определяющего вход и/или выход позиции. Позиции определяются «разводкой» дуг, которая задаёт логику предмета визуализации. В результате имеем разные «проекции» визуализируемого содержания на выбранный состав графит—языков.

Понятно, что сказанное относится не только к сетям и вообще к схемам не только в графит-записи.

Важным следствием такого выражения является и возможность построить на базе графит-сетей комплексную модель некоей системы или предметной области. Элементам и связям при этом могут сопоставляться модели частного знания о них — императивного, декларативного, активностного — а сеть (система сетей) рассматривается как модель обобщённого знания о предмете формализации.

Вообще говоря, система представлений позволяет избежать «технического универсализма» графит-модели как искусственной системы, который в этом случае создатель техноязыка остроумно называет «скрестить ужа с ежом». :) Разные аспекты формализации при этом разносятся по представлениям, оставаясь логически связанными (в основе — через систему индексации элементов, связей и подсхем).

Надлежащая реализация позволяет независимо формировать каждое представление и отображать его совместно с любым набором остальных для сведения читателей и для увязки сочинителями. Собственно говоря, похожим путём идут создатели т.н. геоинформационных [информатических ]систем (ГИС)...

Таковы некоторые основные положения по графит-визуализации.

В начало страницы | Оглавление | Версия для печати

Copyright © Жаринов В.Н.

1 Напр., пособия: Коваленко А.В., Гредитор М.А. Как читать чертежи. - М.: Машиностроение, 1987; Каминский Е.А. - Техника чтения схем электроустановок. - М.: Энергия, 1972; Фролов В.В. Язык радиосхем. - М.: Радио и связь, 1989.

2 Известный ИТ-специалист и преподаватель Б. Мейер в своей работе «Почувствуй класс» (в рус. пер.: М.: НОУ «ИНТУИТ»; БИНОМ, 2011) называет эти два вида искусственных систем «их машины» и «наши машины» (см. п. 1.1 работы) — имея в виду точку зрения «от ИТ».

Hosted by uCoz