6.5. Модифицированный алгоритм поиска контуров и путей по матрице смежности
Недостатки алгоритма поиска путей и контуров на основании представления топологии модели в форме матриц смежности, отмеченные выше, могут быть компенсированы, если использовать логические операции вместо математических и побитовое представление матрицы смежности. Быстрый рост необходимой памяти и временных затрат на работу алгоритма с ростом размерности систем в предлагаемом алгоритме компенсируются иерархическим представлением топологии модели а так же иерархическим характером построения алгоритмов топологического анализа.
Реализация алгоритма в этом случае использует не умножение, а логическую операцию И (в матрице присутствуют только значения 0 и 1), выполняемую одной машинной командой.
Как отмечалось ранее, составной характер представляемых моделей требует учета наличия связей между входами и выходами внутри подсистем. С этой целью водится матрица существования связи:
(3.1)
Пример, иллюстрирующий данную особенность показан на рис. 3.2. При формировании матрицы смежности информация о внутренних контурах подсистемы не учитывается, учитывается только информация матрицы J (3.1) существования связи между входами и выходами подсистемы. Возведение в соответствующие степени матрицы смежности S позволяет выделить для данной системы 3 контура.
Логическая сумма, - операции ИЛИ - позволяет определить все возможные связи между вершинами.
(3.2)
где n - размерность системы и, кроме того, определяет длину максимально возможного пути. Данную сумму называют матрицей достижимости.
Транспонированная матрица достижимости
, (3.3)
называемой матрицей контрдостижимостей.
Ниже приведены значения матриц достижимости и контрдостижимости для системы представленной на рис. 3.2.
.
Если в матрице достижимости оставить только входные и выходные вершины подсистемы данного уровня иерархии, то получится матрица связей J (3.1), которая должна быть передана в вышестоящую по уровню систему для составления аналогичных функций структурного анализа и учета этой информации на стадии моделирования.
Блок схема, реализующая предлагаемый алгоритм, показана на рис. 3.4. Блок 1 выполняет преобразование из внутренней формы представления нелинейного системного гибридного графа в матрицу смежности размером N * N. Блоки 3 и 4 задают начальные значения матриц контуров С и достижимости R. Блоки 4,5,15 организуют основной цикл. Блок 6 вычисляет i-ю степень матрицы смежности, перемножение выполняется логической операцией “И”. Блок 7 выполняет накопление информации о всех возможных путях в матрице достижимости, суммирование производится логической операцией “ИЛИ”. Блоки 8,9,14 организуют цикл проверки вершин на принадлежность к контурам. В этом цикле перебираются элементы главной диагонали матрицы . Если вершина j относится к контуру, длиной i (блок 10), то в блоке 11 переборными методами этот контур выделяется. Выделенный контур, в блоке 12, сравнивается с уже существующими, хранящимися в списке контуровС. Если контур новый, то он добавляется к списку (блок 13). После завершения основного цикла, вычисляется матрица контрдостижимости Q (блок 16) и матрица связей в системе (подсистеме) J (блок 17), после чего алгоритм завершает свою работу. Выходными параметрами, возвращаемыми в вызвавшую программу, являются матрицы R,Q, J, C.
S= 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 1 0 0 1 0 0 0 1 1 0 0 0 0 1 0 0 0 0 0 0
S 2 = 0 0 1 0 0 0 0 0 0 1 1 0 1 1 0 0 0 1 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0
S 3 = 0 0 0 1 1 0 1 1 0 0 0 1 0 1 1 0 0 0 0 0 0 1 1 0 0 0 1 0 0 0 0 0 0 0 0 0
S 4 = 1 1 0 0 0 1 0 1 1 0 0 0 0 0 1 1 1 0 1 1 0 0 0 1 0 0 0 1 1 0 0 0 0 0 0 0 S 5 = 0 1 1 0 0 0 0 0 1 1 1 0 1 1 0 1 1 1 0 1 1 0 0 0 1 1 0 0 0 1 0 0 0 0 0 0 S 6 = 0 0 1 1 1 0 1 1 0 1 1 1 1 1 1 0 0 1 0 0 1 1 1 0 0 1 1 0 0 0 0 0 0 0 0 0 |
|
Рис. 3.4. Блок-схема и пример работы программы выделения контуров
- Введение. Основные понятия и определения Основные задачи теории систем.
- Краткая историческая справка.
- Основные понятия теории систем
- Основные понятия и определения Основное содержание первой лекции
- Понятие информации
- Открытые и закрытые системы
- Модель и цель системы
- Управление
- Информационные динамические системы
- Классификация и основные свойства единиц информации
- Системы управления
- Реляционная модель данных
- Виды информационных систем
- Классификация информационных систем
- Технические, биологические и др. Системы
- Детерминированные и стохастические системы
- Открытые и закрытые системы
- Хорошо и плохо организованные системы
- Классификация систем по сложности
- Лекция №4. Закономерности систем Целостность
- Интегративность
- Коммуникативность
- Эквифинальность
- Закон необходимого разнообразия
- Закономерность осуществимости и потенциальной эффективности систем
- Закономерность целеобразования
- Системный подход и системный анализ
- Лекция №5. Уровни представления информационных систем
- Методы и модели описания систем
- Качественные методы описания систем
- Количественные методы описания систем
- Лекция №6. Кибернетический подход к описанию систем
- 6.1. Задачи анализа топологии
- 6.2. Представление информации о топологии моделей
- 6.3. Переборные методы
- 6.4. Поиск контуров и путей по матрице смежности
- 6.5. Модифицированный алгоритм поиска контуров и путей по матрице смежности
- 6.6. Поиск контуров и путей по матрице изоморфности
- 6.6. Сравнение алгоритмов топологического анализа
- 6.7. Декомпозиция модели на топологическом ранге неопределенности
- 6.8. Сортировка модели на топологическом ранге неопределенности
- 6.9. Нахождение сильных компонент графа
- Лекция №8. Теоретико-множественное описание систем
- Предположения о характере функционирования систем
- Система, как отношение на абстрактных множествах
- Временные, алгебраические и функциональные системы
- Временные системы в терминах «вход — выход»
- 1.2. Формы представления модели
- 1.2.1. Нормальная форма Коши
- 1.2.2. Системы нелинейных дифференциальных уравнений различных порядков
- 1.2.3. Графы
- 1.2.4. Гиперграфы
- Лекция №10. Динамическое описание систем
- Детерминированная система без последствий
- Детерминированные системы без последствия с входными сигналами двух классов
- Учет специфики воздействий
- Детерминированные системы с последствием
- Стохастические системы
- Агрегатное описание систем