Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Умк системный анализ.doc
Скачиваний:
315
Добавлен:
16.02.2016
Размер:
3.98 Mб
Скачать

Матрица инциденций для системы с циклами

х1

х2

х3

х4

х5

х6

х7

х8

х1

1

1

1

1

х2

1

1

х3

1

1

1

х4

1

1

1

1

х5

1

х6

1

1

1

х7

1

1

1

х8

1

1

Так как отношение R является отношением предпочтения, то на главной диагонали стоят единицы. Легко видеть, что вектор-строка А0, равная сумме строк исходной матрицы, не содержит нулей, следовательно, алгоритм предыдущего примера не применим. Рассматриваемая система содержит циклы, и, чтобы свести задачу к более простой, их нужно исключить. Применим алгоритм ранжирования.

Шаг 1. Проведем анализ исходной матрицы с целью выявления циклов в системе. Анализ проводится построчно сверху вниз, начиная с первой строки. В первой строке исходным является элемент х1. Нам нужно выявить все пути, ведущие из х1, в том числе и через другие элементы, обратно в х1. Анализ показывает, что элементы х1, х4, х7 образуют класс эквивалентности C1, содержащий составной цикл и простой цикл, а также три автоцикла. Исходным во второй строке является элемент х2. Получаем аналогично, что элементы х2, х6 образуют класс эквивалентности С2, содержащий простой цикл и два автоцикла. В третьей строке с исходным элементом х3 элементы х3, х8 образуют класс С3, состоящий из простого цикла и двух автоциклов. Четвертая строка не анализируется, так как элемент х4 уже входит в класс С1. В пятой строке исходный элемент х5 изолированный и образует класс С4, состоящий из автоцикла. Шестая строка не анализируется, так как элемент х6 входит в класс С2. По той же причине не анализируются элементы х7 и х8, входящие в классы С1 и С3 соответственно. Таким образом, исходная система содержит четыре класса эквивалентности, объединяющих элементы, связанные циклами.

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

Шаг 3. Образуем вектор-строку А0, равную сумме строк преобразованной матрицы: А0 = (0 0 0 0 1 1 0 3). Выпишем нулевые элементы (х1, х2, х3, х4, х7). Отдельные элементы нивелированы (устранены), и мы должны оперировать классами эквивалентности. Элементы х1, х4 и х7 образуют класс C1, который и показывается на первом порядковом уровне {{C1}} – N0 (1-й порядковый уровень). Элементы х2, х3 самостоятельно класс не образуют, так как им не хватает «партнеров» – элементов х6 и х8 соответственно. Поэтому элементы х2 и х3 на этом уровне не показываются.

Таблица 8