Тензорный метод двойственных сетей для расчета сложных систем по частям

УДК 338.26.015: 658.5

ТЕНЗОРНЫЙ МЕТОД ДВОЙСТВЕННЫХ СЕТЕЙ ДЛЯ РАСЧЕТА СЛОЖНЫХ СИСТЕМ ПО ЧАСТЯМ

А.Е. Петров

Тензорный метод двойственных сетей позволяет создать сетевые модели процессов и структуры системы. Сетевые модели обеспечивают расчет процессов при изменении структуры, включая расчет по частям. Например, расчет изменений при авариях, связанных с разрушением элементов технической системы, или расчет вариантов конструкции при проектировании систем. В сетевой модели потоки представлены компонентами в пространстве структуры с базисами открытых и замкнутых путей. При изменении структуры величины потоков получаются как преобразование координат, вызванное изменением путей. Это обеспечивает постоянство суммы метрических тензоров при изменении структуры двойственных сетей. В физике данный инвариант есть закон сохранения потока энергии. При изменении связей элементов, включая разделение системы на части, или соединение из частей целого, изменение метрики и потоков в данной сети отображают соответствующие изменения в двойственной сети, которая содержит только изменяемые пути. Это позволяет проводить расчет по частям без итераций, что снижает объемы вычислений. Можно применять параллельные вычисления, включая суперкомпьютеры, и распределенные вычислительные системы. Представлен пример расчета сети по частям. Ключевые слова: тензорный метод, двойственные сети, процессы, структура, сетевые модели, расчет по частям, параллельные вычисления.

Роль структуры сложных систем

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

Зачем нужны расчеты поведения систем при изменении структуры? Появление новых материалов, технологий, продук-

ISSN 0236-1493. Горный информационно-аналитический бюллетень. 2017. № 3. С. 168-192. © 2017. А.Е. Петров.

тов и отмирание старых требует перераспределения ресурсов, транспортных потоков, изменения сети перевозок. Рост числа специализаций не имеет аналогов в истории, что меняет структуру хозяйства. Обеспечение безопасности сложных технических систем требует анализа поведения при выходе из строя различных подсистем и режимов. Проектирование требует анализа разных вариантов конструкции технической, информационной системы. Существует ряд задач специального назначения. Разделение сложной системы, расчет и анализ по частям позволяет снизить время и объемы вычислений. Актуальна проблема больших данных в разных областях, применение высокопроизводительных вычислительных систем, которые состоят из множества параллельно работающих процессоров. Необходима организация обработки частей на параллельно работающих вычислителях. Это требует создания сетевых моделей разных систем.

Сетевые методы развиваются в разных областях человеческой деятельности. Сетевые связи могут носить неожиданный характер. Например, в 2007—2009 гг. падение стоимости ипотечных ценных бумаг в США, эмитированных под ипотечные кредиты неплатежеспособным заемщикам, обесценило вложенные в них средства евроинвесторов. Снизилось производство в ЕС, возросла безработица. При этом снизилось потребление металлов, упал спрос на продукцию черной металлургии, снижен импорт металлов из России. Северсталь, ММК, НЛМК отправили в неоплачиваемые отпуска тысячи работников, которые в предшествующие годы взяли в банках потребительские кредиты. Теперь они не смогли платить по этим кредитам, банки не вернули деньги, которые они сами заняли на финансовом рынке. Например, взяли кредиты за рубежом, где процентные ставки ниже, чем в РФ. Не вернув потребительские кредиты, банки РФ в ситуации невозможности выполнения обязательств обратились за поддержкой к государству. В результате ЗВР РФ уменьшились на 200 млрд долл. Таковы современные сетевые связи, и это лишь эскиз реальной картины.

Структура связей элементов имеет собственные законы изменения, которые необходимо применять. Важную роль играет инвариант двойственности сетей; это фундаментальный закон структуры. Основные понятия сетей, двойственные сети, инвариант двойственности, примеры построения сетевых моделей для различных предметных областей, рассмотрены в работах [1—5].

Проблема расчета сетей по частям

Исследование сложных систем по частям под названием «диа-коптика» в 50-60-тых годах разработал Г. Крон [6] на основе тензорного анализа сетей [10]. Развивали Х. Хэпп [7], Дж. Линн, К. Кондо, А. Петров [2, 9], В. Сохор [8], другие исследователи. Тензорная идея состоит в том, что обобщенная сложная система данного типа есть тензор, а разные конструкции, структуры из ее элементов суть проекции в системы координат, заданные замкнутыми или разомкнутыми путями. Получив расчет для простой по структуре системы, можно получить решения для других структур как преобразование координат. Пространство-структура существует только вдоль линий-ветвей сети; в этом его отличие от обычного пространства геометрии. Замкнутые пути (контуры) образуют один базис, а разомкнутые пути — другой базис. Вместе их ортогональные подпространства составляют полное пространство сети.

Изменения структуры состоят в разделении сети на части или соединении из частей; разделении или соединении ветвей внутри сети. При внешних воздействиях базис определяют разомкнутые пути, а при внутренних — замкнутые пути [2—4]. Расчет сетей при любых изменениях структуры сетей автор получил в общем виде на основе инварианта двойственности. Крон дал метод расчета по частям для сетей двух типов: пуассоновского типа (в сети мало заземлений) и диффузионного типа (в сети много заземлений). При таком конструктивном подходе много эвристик.

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

Рассмотрим расчет сетей при изменении структуры. Обозначим число ветвей в сети через п, узлов — J, подсетей — х, независимых замкнутых путей — т, а разомкнутых путей — j. Эти параметры определяют известные соотношения:

j = J - х,

п = т + j.

Изменение структуры состоит в изменении числа узлов в сети — одни соединяются, другие разъединяются. При слиянии двух узлов возникает контур, исчезает разомкнутый путь. При разделении узла контур исчезает, возникает разомкнутый путь. Это меняет базисы контуров и разомкнутых путей, меняется размерность их подпространств. В двойственной сети при этом происходят обратные изменения, поэтому сумма базисов замкнутых и разомкнутых путей в двух двойственных сетях постоянна, и равна числу ветвей. При изменении структуры для потоков в сети возникают новые пути, а другие закрываются. Это меняет поведение сети и сетевой модели системы.

При изменении структуры базисные пути в новой сети выражают через базисные пути в старой сети. Коэффициенты такого выражения образуют матрицу преобразования путей С, которая определяет изменение структуры. Эта матрица обычно выражает переход от сети свободных ветвей к сети соединенных ветвей, когда все ветви участвуют в изменении структуры. Примеры рассмотрены в [3, 4, 5].

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

Двойственная сеть, инвариант двойственности, рассмотрены в [3, 4]. Структура двойственной сети задана матрицей преобразования путей, которая ортогональна к матрице преобразования путей заданной сети. При единичной метрике, т.е. если собственные сопротивления ветвей равны единицам, а взаимные равны нулю, Z и У — единичные матрицы, Z = У = I, то инвариант двойственности приобретает простой вид

I = тС1 (тС тф-1 тС + Ц (А Ц)-1 А

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

отношением между матрицами преобразования путей. Этот закон не зависит от физических свойств ветвей, и протекающих в них потоков энергии.

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

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

Расчет сети при изменении структуры

При изменении соединений меняется число узлов, меняется число базисных замкнутых и разомкнутых путей. Задача состоит в получении матрицы решения для новой сети по матрице решения старой сети и матрице изменения структуры. Пусть в старой сети из п ветвей, J1 узлов и одна подсеть, т.е. х1 = 1. Тогда, как показано в (1), (2), базисных разомкнутых путей = J1 — х1, а контуров т1 = п — j1. Если в новой сети также одна подсеть, а число узлов изменилось, например, часть узлов ЛJ соединили с другими, и узлов в сети стало меньше, т.е. J2 = J1 — ЛJ, то уменьшится и число разомкнутых путей:

j2 = J2 — х1 = J1 — ЛJ — х1 = j1 — ЛJ,

и число замкнутых путей, контуров возрастет:

т2 = п — j2 = п — j1 + Л1 = т1 + ЛJ.

Уменьшение числа узлов увеличивает количество независимых контуров и уменьшает количество независимых разомкнутых, и наоборот.

Для пересчета решения старой сети в решение новой сети установим связь между их матрицами решения, У1с и Рс, и матрицей изменений ЛС. Рассмотрим получение матриц решения,

которые обозначим как У2 + с, для базиса замкнутых путей при соединениях узлов, и матриц решения 22-с для базиса разомкнутых путей, при разъединениях узлов. Далее получим с использованием инварианта двойственности матрицы решения для обратных задач: при введении разъединения узлов получим матрицу решения Р-с, и при введении соединений узлов — матрицу решения 2?- + с.

Обозначим вектор базисных путей в старой сети как р1 а = = (тР1, 'Р1). Пусть часть узлов в ней была замкнута, и независимых контуров стало больше на Лт = Л/. Допустим, что новые пути в сети, состоят из тех же ветвей, что и прежние пути. Тогда в матрицах преобразования старой сети Са1а и новой сети — Са2а, все элементы останутся прежними, но строк контуров будет на Лт больше, а строк разомкнутых путей на Лт меньше. Новые строки контуров составят матрицу изменений структуры; обозначим ее как АС. Тогда выражение Са2а новой сети через С ,,а старой сети и матрицу изменений АС, имеет вид:

С =

а 1

т1 тС1 т1 тС а ,1 тС1

'С1 ; С = Лт ,2 ЛС а Л = т2 ЛС

'С ,2а ,2 'С С2

подматрицы тС2 и 'С2.

где двойная черта отделяет в матрице С ,2

Если часть узлов разомкнуть, то узлов станет больше /2 = /, + + Л/. Разомкнутых путей базиса станет больше на Л/ = Л/ (число подсетей прежнее), а контуров меньше на Лт = Л/. Тогда подматрица ЛС в новой сети переходит от

ПС2 к 'С2:

С ,,а = ,1

т1 ^^ а С а'1 т2 < т1 тС а а '1

'С ,.а а 1 ; С ,2а= Л/ ,2 ЛС а Л

/1 'С ,2а ,2

= Лт

тС

ЛС

С

С и 'С2.

где двойная линия показывает новую границу между

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

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

п

п

п

п

т

2

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

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

=

т°2 т. т т т Ат 1 с 8 Г Р 2 Р1 рс Л РГ

С АС,

тС8, АС8,

тС- АСГ, СГ1,

т01 Л

Подматрица замкнутых путей, С2, применяемая при расчете контурной сети, имеет вид:

Ат

т

т

тС2( =

АС8,

тС1г, АСГ,

Для пересчета решения старой сети в решение новой сети установим связь между их матрицами решения, У1с и Рс, и матрицей изменений АС. Рассмотрим получение матриц решения, которые обозначим как У1 + с, для базиса замкнутых путей при соединениях узлов, и матриц решения 21-с для базиса разомкнутых путей, при разъединениях узлов. Затем получим с использованием инварианта двойственности матрицы решения для обратных задач: при введении разъединения узлов получим матрицу решения У2-с, и при введении соединений узлов — матрицу решения И1 + с.

Расчет контурной сети при наложении связей. Матрицы решения старой и новой сети для контуров имеют одинаковый вид, соответственно:

У1с = тСи

где через У1 + с обозначена матрица решения сети при уменьшении числа узлов. Подставим выражение для матрицы тС2 через матрицу тС1 и матрицу АС. Произведя преобразования, получим матрицу решения новой сети, т.е. У2 + с, выраженную через матрицу старой сети У1 и матрицу изменения путей АС:

п

п

с

п

п

п

п

Г2 + = Г + АГ = Г +

С С с с

+

где второе слагаемое, обозначенное как АГс, есть матрица изменения решения сети.

Матрицы решения связывают воздействия и отклики в сетях. Например, если заданы источники напряжения (ЭДС) еа, то токи т/'с2а в ветвях новой сети равны:

т/' 0а = У2 + е =

с2 с а 4 с с' а

Компоненты второго слагаемого в (8) вызваны изменением связей, заданных АС. Они изменяют компоненты вектора отклика в старой сети в компоненты новой сети.

Расчеты сетей при разрывании связей. Матрицу решения для замкнутых путей при разрывании связей позволяет получить инвариант двойственности:

Г2- = Г1 - Г1 АА

с сс^сК с с с

Всего получено восемь формул расчета изменения структуры в двойственных сетях - 4 для заданной сети и 4 - для двойственной сети: по две формулы при наложении связей и две -при разрывании связей. Из каждых двух - одна для замкнутых путей, другая - для разомкнутых путей. Это основа расчета систем с переменной структурой.

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

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

Здесь представлены варианты при уменьшении и увеличении числа узлов для расчета данной сети, двойственной сети, для замкнутых путей и разомкнутых путей. Матрицы изменения решений обладают симметричной двойственностью и имеют вид: АГс = ГАZc Г = (I- Г-еZ) АС, [АС Z(I- Г-еZ) АС,]-1 АС (I- ZY1c), АZ = Z АГ Z = Z1 АС (АС Z1 АС )-1 АС Z1.

с с с^сК с

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

Данная сеть Двойственная сеть

Уменьшение числа узлов

Для замкнутых путей

матрица решения при увеличении числа контуров У2+ = У1 + АУ с с с У1- = У1 - АZ —с —с с матрица решения при уменьшении числа контуров

Для разомкнутых путей

матрица решения при уменьшении числа р-путей Z1+ = Z1 - АZ = с с с = Z1 - Ъ АУ Ъ сс Ъ1- = —с =+АУ= —с с = Z1 + Z АZ Z —с — с- матрица решения при увеличении числа р-путей

Увеличение числа узлов

Для замкнутых путей

матрица решения при уменьшении числа контуров У1- = У1 - А^ = с с —с = У1 - У А У У с —с У2+ = У1 + АУ —с —с —с матрица решения при увеличении числа контуров

Для разомкнутых путей

матрица решения при увеличении числа р-путей = + АУ = с с —с = Z1 + УАZc У с - Z 2+ = —с = - АZ = —с —с = Zc1 - Z АУс Z матрица решения при уменьшении числа р-путей

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

Пример расчета сети по частям

В качестве примера рассмотрим расчет по частям сети из 10 ветвей, которая разделена на три подсети, представленные на рис. 1.

Задача состоит в том, чтобы получить решение большой связанной сети по решениям подсетей, на которые она разделена. В матрице преобразования при соединении подсетей в сеть

Рис. 1. Соединение подсетей в сеть с помощью г-сети соединений; подсети: сеть 1

часть разомкнутых путей замыкается. При этом появляются новые элементы, соответствующие ветвям, через которые замыкается контур. При расчете по частям сеть разделена на три подсети - два треугольника и сеть соединений, квадрат. Эти подсети показаны наверху. Внизу - связанная сеть, где квадрат соединяет треугольники. Пути 8" и 9", которые в квадрате были разомкнуты, стали контурами в связанной сети. Выбор замкнутых путей показан на схеме.

Матрица преобразования путей связанной сети С2 имеет вид

123456789 10

С2 =

1" 2" 3" 4" 5" 6" 7" 8" 9" 10"

1 -1 1

1

1

1 1 1

1

1

1 -1 1 1

-1 1 -1

-1 1 1

1

т

У У

т

У У

т

Ат = А у

Ат = А у У

Здесь строки 1', 4', 7' составляют матрицу тС подсетей. Вместе со строками 8' и 9', представляющими АС с измененными путями А/ = Ат, т.е. с разомкнутыми путями, которые превратились в контуры, они составляют матрицу тС2 связанной сети. В матрице измененных путей АС21 (в строках 8 и 9) добавляются элементы, представляющие новые ветви из подсетей, которые замыкают в связанной сети новые контуры. Эти элементы выделены жирным шрифтом [2, с. 297]. При расчете по частям изменения в связанной сети вносятся с помощью матрицы решения двойственной сети к сети изменений.

Допустим, что данная сеть возбуждается источниками напряжения, т.е. базисом для потоков энергии являются замкнутые пути. Задача состоит в том, чтобы получить отклики на ветвях связанной сети путем расчета подсетей, на которые она разделена. Для этого применим формулы расчета сети при изменении структуры, представленные выше. В данном случае речь о соединении старой сети из подсетей в связную новую сеть, замкнутых базисных путях и сети с заданной структурой. Т.е., по матрице решения старой сети Y1c и матрице изменений А Г надо получить матрицу решения новой сети У2 + с по формуле (7).

Это можно представить через матрицы изменений подсетей, которых в данной случае две 5 = 2, и матрицу изменения х + 1 сети соединений подсетей в блочном виде.

У2 =

с

= У1 + АУ =

1

1

5 + 1

1 У1, с1 1 АУ11 с АУ12 с АУ1г с

5 У с2 + 5 АУ21 с АУ22 с АУ2г с

5+1 = Г У сг 5+1 = Г АУг1 с АУ12 с А Угг с

5'

Г

х

Расчет блоков матрицы изменений АYc проводится параллельно ,всуммесматрицейрешениястаройсетиY1 с, онадаетмат-рицу решения новой сети Y2c.

Матрицы преобразования и сопротивлений для трех отдельных подсетей имеют вид

12 3 12 3

1' 1 -1 1 т 1 2

С, = 2' 1 / Zl =2 1

3' 1 / 3 1

5 6

5 6

С2 =

7"

С =8"

Г

9" 10"

1 1 1 т

1 У

1 У

7 8 9 10

1 -1 1 1

1

1

1

Z2 = 5

6

т 7

У Z = Г 8

У 9

У 10

3

1

2

7 8 9 10

2

4

1

2

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

По этим исходным данным получим матрицы решения для подсетей и сети соединений. Для сети 1 матрицей преобразования тС1 являются первые три столбца строки 1" в матрице (10), а матрица решения имеет вид:

Гс1 = тС1, (тС1 ^ тС1,)-1 тС1 =

1"

с1

1 2 3

1"

123

1 1 1 2 3 1 2 1 1 1 2 3 1 1 -1 1

2 -1 (1" 1 -1 1 2 1 2 -1 )-1 1" 1 -1 1 = 2 -1 1 -1

3 1 3 1 3 1 3 1 -1 1

1/4

Для подсети 2, для которой матрица преобразования тС2 -столбцы 4, 5, 6 строки 4" в матрице (10), матрица решения имеет вид:

гс2 = тС2, (тС2 х2 тС\)-1 тС2 =

4 5 6 4" 45

4"

6

4 1 4 5 6 4 3 4 1 4 5 6 4 1 1 1

5 1 (4" 1 1 1 5 1 5 1 )-1 4" 1 1 1 = 5 1 1 1

6 1 6 2 6 1 6 1 1 1

1/6

Для сети соединений матрица преобразования тСГ содержит столбцы 7, 8, 9, 10 строки 7" в матрице (10), матрица решения имеет вид:

4

4

4

У = сг = тС\ (тСг 2. тС\)-1

7' 7 8 9 10

7 1 7 8 9 10 7 2 7

8 —1 ( 7' 1 — 1 1 1 8 4 8

9 1 9 1 9

10 1 10 2 10

7 8 9 10

7 1 — 1 1 1

= 8 —1 1 —1 — 1 1/9

9 1 — 1 1 1

10 1 — 1 1 1

)-1 7'

7 8 9 10

1 — 1 1 1

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

Расчет матрицы изменения решения. Эта матрица преобразует решение старой сети из отдельных частей в решение новой сети, соединенной в единое целое. На этом этапе с помощью матриц решения подсетей формируем матрицу решения сети пересечений. Эта сеть состоит из ветвей изменяемых путей, т.е. замыкаемых при соединении подсетей (размыкаемых при разъединении подсетей). Такие пути проходят через разные подсети и сеть соединения (если она выделена в отдельную подсеть), т.е. «пересекают» их. По этим путям происходит взаимодействие частей сети, которое соединяет их в единое целое.

Этот этап состоит в получении матрицы (5 + 2)-сети в квадратных скобках матрицы решения. Для этого в каждой подсети вычисляются выражения вида (I — У1с8 2), т.е. полученные матрицы решения подсетей вычитаются из единичной матрицы. В результате получается двойственная матрица решения (для разомкнутых путей). Затем эти матрицы умножаются на матрицы изменения путей АС. Для каждой сети это выполняет-

ся отдельно, в данном примере - в соответствии с разбиением строк 8 и 9 матрицы (10) по подсетям. Для подсети 1 результаты расчета этого блока имеют следующий вид:

Ц - Х АС\ = ^ АС1, =

1 2 3 8" 9" 8" 9"

1 0,5 0,25 -0,25 1 1 0 0,25

2 0,5 0,75 0,25 * 2 2 0 -0,25

3 -0,5 0,25 0,75 3 -1 3 0 -0,75

Для подсети 2 получим:

Ц - Г1с2 Х) АС2 = Х с2 АС2 =

4 5 6 8" 9" 8" 9"

4 0,500 -0,167 -0,333 4 -1 4 -0,5 0

5 -0,500 0,833 -0,333 * 5 5 0,5 0

6 -0,500 -0,167 0,667 6 6 0,5 0

Для сети соединений, связывающей подсети:

(i- г z) ас, = г1 ас, =

^ сг Г' 1 сг 1

7 8 9 10 8" 9" 8" 9"

7 0,778 0,444 -0,111 -0,222 7 7 0,667 -0,333

8 0,222 0,556 0,111 0,222 * 8 1 = 8 0,333 0,333

9 -0,222 0,444 0,889 -0,222 9 1 9 0,667 0,667

10 -0,222 0,444 -0,111 0,778 10 -1 1 10 -0,333 0,667

Эти вычисления также выполняются для каждой подсети параллельно.

Теперь вычислим матрицу импедансов двойственной сети, АХ+ = АХ которая включает в себя замыкаемые при соединении пути. Она имеет вид: АХ = АС8 ((I - Г1^) АС5,), и включает в себя расчеты составляющих матрицы сети изменений для каждой подсети отдельно, (можно выполнять параллельно). Матрица АХ+ равна сумме этих матриц по всем подсетям. Поскольку в каждой подсети переменные приводятся к одной и той же системе координат - изменяемых путей, то их можно суммировать и получить общее воздействие на (5 + 2) сеть пересечений со стороны всех подсетей, включая (5 + 1) сеть соединений. Для первой подсети используем полученный выше

результат. Тогда компонента метрической матрицы пересечений для первой подсети примет вид:

А^' = АС1 ^ (I - Гс1 АС1, =

1 2 3

1 2 3

8'

9'

8' 9'

= 8' 9'

1 2 1 0 0,25 8' 0 0

-1 2 1 2 0 -0,25 = 9' 0 0,75

3 1 3 0 -0,75

Для второй подсети используем (10) и результат, полученный ранее:

А2; = АС2 (I - Y^c2 22) АС2, = 4 5 6 8' 9'

456

8' 9'

8' -1 4 3 4 -0,5 0 8' 1,5 0

9' 5 1 5 0,5 0 = 9' 0 0

6 2 6 0,5 0

Для г-сети соединений, используя (10) и результат, полученный ранее:

А2' = АС 2 (I - У 2) АС, =

г г 4 г г' ,

7 8 9 10 8' 9'

7 8 9 10 7 2 7 0,667 -0,333 8' 9'

8' 1 -1 8 4 8 0,333 0,333 = 8' 2,0 0,0

9' 1 1 9 1 9 0,667 0,667 9' 0,0 2,0

10 2 10 -0,333 0,667

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

А2 = А2,' + А2' + А2' =

12г

8' 9'

8' 9'

8' 9'

8' 9'

8' 0 0 + 8' 1,5 0 + 8' 2,0 0,0 = 8' 3,50 0,00

9' 0 0,75 9' 0 0 9' 0,0 2,0 9' 0,00 2,75

Для расчета двойственной сети пересечений обратим А2, обозначив ее АГ.

8'

9'

АУ = (А^)-1

0,286 0

0 0,364

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

С ростом размеров системы, ее связность, как правило, снижается, и отдаленные элементы оказывают меньшее влияние друга на друга. Например, в экономической матрице В. Леонтьева порядка нескольких тысяч строк, оказываются не более 3—4% ненулевых элементов. Малое заполнение ненулевыми элементами матриц сложных систем породило направление, известное как «разреженные матрицы», где производят действия только с элементами, которые отличны от нуля.

Теперь можно получить все блоки матрицы изменений А Г. Изменения метрики, которые произошли при разделении сети на подсети (и были запасены в двойственной сети к сети пересечений), возвращаются на свои места, приводя все параметры к соединенному виду. Расчеты можно выполнять параллельно. Сначала рассчитаем диагональные блоки.

Для подсети 1 получим:

АГ1 = (I - Гс1 АС1, АГ АС1 (I - Гс1 =

8'

9'

0 0,25 8' 9' 1 2 3

0 -0,25 * 8' 0,286 0 * 8 0 0 0

0 -0,75 9' 0 0,364 9 0,25 -0,25 -0,75

1 2 3

1 0,023 -0,023 -0,068

=2 -0,023 0,023 0,068

3 -0,068 0,068 0,205

Для подсети 2 получим:

АУ 22 = с 8' 9'

4 -0,5 0 8' 9' 4 5 6

5 0,5 0 * 8' 0,286 0 * 8 -0,5 0,5 0,5

6 0,5 0 9' 0 0,364 9 0 0 0

4 5 6

4 0,071 -0,071 -0,071

5 -0,071 0,071 0,071

6 -0,071 0,071 0,071

Для сети соединений получим:

АУ = (I- У1 2) АС, АУ АС" (I- У1 2) =

С 4 С г , 4 сг г7

8' 9'

7 0,667 -0,333 8' 9' 7 8 9 10

8 0,333 0,333 * 8' 0,286 0 * 8 0,67 0,33 0,67 -0,33

9 0,667 0,667 9' 0 0,364 9 -0,33 0,33 0,67 0,67

10 -0,333 0,667

7 8 9 10

7 0,167 0,023 0,046 -0,144

8 0,023 0,072 0,144 0,049

9 0,046 0,144 0,289 0,098

10 -0,144 0,049 0,098 0,193

Далее рассчитаем блоки вне диагонали. В силу симметрии метрической матрицы сети, достаточно получить три таких блока матрицы изменения решения АУс, например, АУс12, А Ус1г и А Ус2г, а три других блока - А Ус21, АУсг1 и А Усг2, будут к ним транспонированы.

Эти блоки матрицы изменения решения дают параметры взаимодействия подсетей в полной сети. Получим АУс12, он обеспечивает взаимодействие подсети 1 и подсети 2.

АУс12=

4 5 6

0 0,25 8 9 4 5 6 1 0 0 0

0 -0,25 * 8 0,286 0,000 * 8 -0,5 0,5 0,5 = 2 0 0 0

0 -0,75 9 0,000 0,364 9 0 0 0 3 0 0 0

Таким образом, ветви подсетей в соединенной сети не взаимодействуют. Блок ЛУс1г обеспечивает взаимодействие подсети 1 и сети соединений г. Получим ЛГ1г:

ЛY1г = (I- У1 , X) ЛС1 ЛУ ЛСг (I- У1 Z) =

С у с1 1' 1 у СГ Г

8 9

1 0 0,25 8 9 7 8 9 10

2 0 -0,25 * 8' 0,29 0,00 * 8 0,67 0,33 0,67 -0,33

3 0 -0,75 9' 0,00 0,36 9 -0,33 0,33 0,67 0,67

7 8 9 10

1 -0,030 0,030 0,061 0,061

=2 0,030 -0,030 -0,061 -0,061

3 0,091 -0,091 -0,182 -0,182

Наконец, получим:

Л72г = (I- У12ЛС\ ЛУ ЛСГ (I- У1 Z) =

С у с2 V X у СГ Г7

8' 9'

4 -0,5 0 8 9 7 8 9 10

5 0,5 0 8 0,286 0,000 8' 0,67 0,33 0,67 -0,33

6 0,5 0 * 9 0,000 0,364 * 9' -0,33 0,33 0,67 0,67

7 8 9 10

4 -0,095 -0,048 -0,095 0,048

5 0,095 0,048 0,095 -0,048

6 0,095 0,048 0,095 -0,048

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

Таким образом, расчет связанной сети получим по частям. Вместе с тем можно показать полную матрицу изменений ЛГ,

8

9

если подставить вместо каждого блока его полученные выше числовые значения. Суммируя матрицу изменений Л Yc с матрицей решения подсистем У1с, получим матрицу решения Рс соединенной сети. Для расчетов эту матрицу выписывать нет необходимости, поскольку вычисления производятся параллельно, т.е. по отдельным блокам.

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

1

2 3

4

5

6

7

8

9

10

; = (е„ е2, ег) =

1 2 0 2 2 1 2 2 1 1

Отклики-токи на ветвях исходной сети из отдельных подсетей получим умножением их матриц решения, полученных выше, на соответствующие части вектора источников напряжения. Матрицы решения подсетей запишем здесь в десятичных дробях. В подсети 1 токи равны 1/'с1 = У1с1 е1:

1 2 3

1 0,25 -0,25 0,25

I1 = 2 с -0,25 0,25 -0,25

3 0,25 -0,25 0,25

В подсети 2 токи в ветвях равны 1/'2 = У

1 1 1 -0,25

2 2 2 0,25

3 0 3 -0,25

У12 е2 с2

4 5 6

4 0,167 0,167 0,167 4 2

/ 2 = 5 с 0,167 0,167 0,167 * 5 2

6 0,167 0,167 0,167 6 1

Для подсети соединений токи в ветвях равны 1/г =

4 0,833

5 0,833

6 0,833

У1 г ег:

!/'г =

с

7 8 9 10

7 0,111 -0,111 0,111 0,111 7 2 7 0,222

8 -0,111 0,111 -0,111 -0,111 * 8 2 = 8 -0,222

9 0,111 -0,111 0,111 0,111 9 1 9 0,222

10 0,111 -0,111 0,111 0,111 10 1 10 0,222

е

*

с

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

как т/са|3 = ЛУсав в0р. Например _ 1 2 3

11-

т/ 11 с

= ЛУ11 в,

Н 11 = 2

с

3

0,023 -0,023 -0,068 1 1 1 -0,023

-0,023 0,023 0,068 2 2 2 0,023

-0,068 0,068 0,205 3 0 3 0,068

Токи связи первой сети и сети соединений т/с1г = ЛУс!

т/ 1г = 2 с

3

7 8 9 10

-0,030 0,030 0,061 0,061 7 2 1 0,121

0,030 -0,030 -0,061 -0,061 * 8 2 = 2 -0,121

0,091 -0,091 -0,182 -0,182 9 1 3 -0,364

т/ 12 = т/21 = 0, поскольку, как было показано:

Компоненты

Л712 = Л721 = 0.

СС

Оставшиеся компоненты токов изменения в ветвях получаются следующие:

4

5

6

4 0,071 -0,071 -0,071 4 2 4 -0,071

т/22 = 5 с -0,071 0,071 0,071 * 5 2 = 5 0,071

6 -0,071 0,071 0,071 6 1 6 0,071

7 8 9 10

4 -0,095 -0,048 -0,095 0,048 7 2 4 -0,333

т/ 2г = 5 с 0,095 0,048 0,095 -0,048 * 8 2 = 5 0,333

6 0,095 0,048 0,095 -0,048 9 1 6 0,333

10 1

7 -0,030 0,030 0,091 1 1 7 0,030

т/ г1 = 8 с 0,030 -0,030 -0,091 * 2 2 8 -0,030

9 0,061 -0,061 -0,182 3 0 9 -0,061

10 0,061 -0,061 -0,182 10 -0,061

в

г

1

1

2

3

7 -0,095 0,095 0,095 4 2 7 0,095

ш/12 = 8 с -0,048 0,048 0,048 * 5 2 8 0,048

9 -0,095 0,095 0,095 6 1 9 0,095

10 0,048 -0,048 -0,048 10 -0,048

7 8 9 10

7 0,167 0,023 0,046 -0,144 7 2 7 0,283

8 0,023 0,072 0,144 0,049 * 8 2 = 8 0,384

9 0,046 0,144 0,289 0,098 9 1 9 0,768

10 -0,144 0,049 0,098 0,193 10 1 10 0,101

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

ш; 11_|_ ш; 12 ш; 1г —

2i1 = ч1 + ш

с с с

+ ш12

с

+ ш/1г = с

1 -0,25 1 -0,023 1 0 1 0,121 1 -0,152

2 0,25 + 2 0,023 + 2 0 + 2 -0,121 = 2 0,152

3 -0,25 3 0,068 3 0 3 -0,364 3 -0,545

Значения для ветвей подсети 2:

2/2 = 2/ 1 + ш/21 + ш/22 + ш/2г = с с с с с

4 0,833 4 0 4 -0,071 4 -0,333 4 0,429

5 0,833 + 5 0 + 5 0,071 + 5 0,333 = 5 1,238

6 0,833 6 0 6 0,071 6 0,333 6 1,238

Полные отклики в отдельных ветвях сети соединений получим аналогично:

2/ Г - 1/ Г сс + ш/ Г1 с + ш/ г2 + ш/ ГГ -сс

7 0,222 7 0,030 7 0,095 7 0,283 7 0,631

8 -0,222 + 8 -0,030 + 8 0,048 + 8 0,384 - 8 0,179

9 0,222 9 -0,061 9 0,095 9 0,768 9 1,025

10 0,222 10 -0,061 10 -0,048 10 0,101 10 0,215

Полученные результаты расчета токов в ветвях связанной сети показаны на рис. 2.

III» ГГ -

с

Рис. 2. Результаты расчета токов на ветвях соединенной сети при заданных воздействиях

Проверим результаты расчета. Закон Кирхгофа для токов: сумма токов, входящих в узел и выходящих из узла, равна нулю. В узлах С и D выполнение очевидно.

Узел А: -тг1 + т13 + т17 - т19 =

с с с с

= -0,152 + 0,545 + 0,631 - 1,025= - 0,001.

= -0,429 + 1,238 - 0,631 - 0,179 = - 0,001.

Узел Е: + т/2 - т/3 + т/8 + т/10 =

сссс

= 0,152 - 0,545 + 0,179 + 0,215= 0,001.

Узел Р. + т/4 - т/6 + т/9 - т/10 =

сссс

= 0,429 - 1,238 + 1,025 - 0,215= 0,001.

С точностью до округлений закон Кирхгофа выполнен, расчет выполнен правильно.

Для проверки правильности результатов проведем расчет напряжений на каждой ветви соединенной сети по закону Ома еса = ^ /са. Матрица сопротивлений ветвей диагональная, поэтому напряжение равно сопротивлению, умноженному на ток в ветки.

Для ветвей сети 1: ес1 = ¿сК

_1 2 3

1

2 0 0

0 1 0

0 0 1

-0,152

0,152

-0,545

-0,303

0,152

-0,545

Узел В: + т 4 + т15 - т 7 - т18 =

*

Ъю

е\0 = 0,430

Рис. 3. Результаты расчета напряжений на ветвях соединенной сети при заданных источниках

Для ветвей сети 2 _4 5 6

4

3 0 0 4 0,429 4 1,286

0 1 0 * 5 1,238 — 5 1,238

0 0 2 6 1,238 6 2,476

Для ветвей сети соединений есг — /сГ

10

7 2 0 0 0 7 0,631 7 1,261

8 0 4 0 0 * 8 0,179 — 8 0,716

9 0 0 1 0 9 1,025 9 1,025

10 0 0 0 2 10 0,215 10 0,430

Результаты расчета напряжений на ветвях, а также значения соответствующих источников напряжения (ЭДС) показаны на рис. 3.

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

Контур 1': ес1 + ес2 + ес3 — - 0,303 - 0,152 - 0,545 — - 1 —

— е1 + е2 + е3 — + 1 - 2 + 0.

Контур 4': ес4 + ес5 + ес6 — + 1,286 + 1,238 + 2,476 — 5 —

— + е4 + е5 + е6 — 2 + 1 + 2.

4 5 6

7

8

9

Контур 7': ес7 — ес8 + ес9 + ес10 = = 1,261 - 0,716 + 1,025 + 0,430 = 2 = = е7 - ес8 + е9 + е10 = 2 - 2 + 1 + 1 = 2.

Контур 8': —ес4 + ес8 - ес10 = -1,286 + 0,716 - 0,430 = -1 =

= -е4 + е1- е10 = -2 + 2 - 1

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

СПИСОК ЛИТЕРАТУРЫ

1. Петров А. Е. Тензорная методология в теории систем. - М.: Радио и связь, 1985. - 152 с.

2. Петров А. Е. Тензорный метод двойственных сетей. - М.: ООО ЦИТиП, 2007. - 496 с. Дополненное интернет издание на портале Университета «Дубна». Режим доступа: http://www.uni-dubna.ru///images/ data/gallery/70_971_tenzomy_method25_02.pdf , свободный, 2009.

3. Петров А. Е. Тензорные аналогии сетевых моделей систем горной промышленности. Часть 1 // Горный информационно-аналитический бюллетень. - 2014. - № 8. - С. 285-291.

4. Петров А. Е. Тензорные аналогии сетевых моделей систем горной промышленности. Часть 2 // Горный информационно-аналитический бюллетень. - 2014. - № 9. - С. 139-148.

5. Петров А. Е. Сетевые модели для проектирования систем безопасности объектов нефтепереработки // Горный информационно-аналитический бюллетень. - 2016. - № 3. - С. 61-76.

6. Крон Г. Исследование сложных систем по частям (диакоптика). -М.: Наука, 1972. - 544 с.

7. Хэпп Х. Х. Диакоптика и электрические цепи. - М.: Мир, 1974.

8. Сохор Ю. Н. Вычислительные модели и алгоритмы тензорного анализа сетей. Учебно-методическое пособие. - Псков, Изд-во ППИ, 2008. - 162 с.

9. Петров А. Е. Тензорный анализ сетей и параллельные вычисления. - М.: МИФИ, 1991. - 24 с. [¡233

КОРОТКО ОБ АВТОРЕ

Петров Андрей Евгеньевич - доктор технических наук, профессор, e-mail: Helen_pet@mail.ru, ИТАСУ НИТУ «МИСиС».

Gornyy informatsionno-analiticheskiy byulleten'. 2017. No. 3, pp. 168-192.

UDC 338.26.015: 658.5

A.E. Petrov

TENSOR METHOD DUAL NETWORKS TO CALCULATE COMPLEX SYSTEMS BY PARTS

A tensor method dual network enables you to create network models of processes and structures of the system. Network models provide calculation processes in restructuring, including calculation of parts. For example, changes in the destruction of the elements of the technical system, or calculation of design options when designing systems. In the network model flows are represented in space structure with bases open or closed paths. When you change the structure of flows is obtained as coordinate transformation caused by the change of paths. This ensures by constancy sum of the metric tensors in restructuring dual networks. In physics, the invariant is the law of conservation of energy flow.

If you change the structure, including the system partition into parts or the connection from the parts the whole system, change metrics and flows in this network reflect the corresponding changes in the dual network that contains only changed ways. This allows calculation of parts without iterations, which reduces the volume of calculations. This allows the use of parallel computing, including supercomputers and distributed computing systems. There is an example of network calculating by parts dividing.

Key words: tensor method, dual networks, processes, structure, network models, calculations by parts, parallel computing.

AUTHOR

Petrov A.E., Doctor of Technical Sciences, Professor, e-mail: Helen_pet@mail.ru,

Institute of Information Technologies and Automated Control Systems, National University of Science and Technology «MISiS», 119049, Moscow, Russia.

REFERENCES

1. Petrov A. E. Tenzornaya metodologiya v teorii sistem (Tensor methodology in system theory), Moscow, Radio i svyaz', 1985, 152 p.

2. Petrov A. E. Tenzornyy metod dvoystvennykh setey (Tensor method of dual networks), Moscow, OOO TslTiP, 2007, 496 p, available at: http://www.uni-dubna.ru///images/data/ gallery/70_971_tenzorny_method25_02.pdf , 2009.

3. Petrov A. E. Gornyy informatsionno-analiticheskiy byulleten'. 2014, no 8, pp. 285—291.

4. Petrov A. E. Gornyy informatsionno-analiticheskiy byulleten'. 2014, no 9, pp. 139—148.

5. Petrov A. E. Gornyy informatsionno-analiticheskiy byulleten'. 2016, no 3, pp. 61—76.

6. Kron G. Issledovanie slozhnykh sistem po chastyam (diakoptika) (Diakoptics — the piecewise solution of large-scale systems), Moscow, Nauka, 1972, 544 p.

7. Khepp Kh. Kh. Diakoptika i elektricheskie tsepi (Diakoptics and networks), Moscow, Mir, 1974.

8. Sokhor Yu. N. Vychislitel'nye modeli i algoritmy tenzornogo analiza setey. Uchebno-metodicheskoe posobie (Computational models and algorithms for tensor analysis of networks. Textbook), Pskov, Izd-vo PPI, 2008, 162 p.

9. Petrov A. E. Tenzornyy analiz setey iparallel'nye vychisleniya (Tensor analysis of networks and parallel computations), Moscow, MIFI, 1991, 24 p.