logo search
1 Общее понятие о графах

3.5 Алгоритм, использующий метод Магу – Вейссмана

1. Для графа G (Х,U) построим семейство МВУП F={Fj}, где j= 1,... ,1; 1 - число МВУП.

2. Составим матрицу

Cij=

3. Для. каждой вершины графа G =(Х,U) по матрице С находим суммы тех FjF, в которые она входит, и записываем произведение этих сумм.

4. Раскрываем скобки по правилам булевой алгебры и выбираем слагаемое, состоящее из наименьшего числа сомножителей.

Рассмотрим работу описанного алгоритма на примере графа. Согласно алгоритму Магу - Вейссмана для поиска семейства МВУП составим произведение

ПG = (X12)*(Х1З)*(Х2З)*(Х25)*(Х27)*(ХЗ5)*(ХЗ6)* *(ХЗ+X7)*(Х45)*(Х46)*(Х47)=(Х12ХЗ)*(Х2ЗХ5Х7)*(ХЗ5Х6Х7)* *(Х45Х6Х7)=(Х1Х21ХЗХ5Х72ХЗ2ХЗХ5Х7)*(ХЗХ4ЗХ5Х6Х7+ +Х4Х5Х6X75ХбХ7)=Х1Х2Х3Х41Х2Х5ХбХ71Х3Х4Х5X71Х3Х5Х6Х72ХЗХ42ХЗХ5Х6Х7. Рi= Х1Х2ХЗХ4 поглощается подмножеством Р52ХЗХ4.

Используя условие, что в ПG в качестве сомножителей будут вершины Х\Рj получаем следующее семейство

МВУП F={F1,F2,F3,F4,F5}: F1=X\{X1,X2,X5,X6,X7}={X3,X4}; F2={X2,X6}; F3={X2,X4}; F4={X1,X5,X6,X7}; F5={X1,X4}.

Составляем матрицу C (рисунок 3)

Рисунок 3 – матрица С

Для каждой вершины Хi  Х по матрице С составим суммы тех FjF, в которые оно входит и запишем произведение этих сумм

ПС=(F4+F5)(F2+F3)F1*(F1+F3+F5)F4*(F2+F4)F4=(F2+F3F4)F1F4=F1F2F4+F1F3F4.

Каждое из двух полученных слагаемых содержит в неявном виде все вершины графа G =(Х,U), Таким образом, для раскраски требуется минимум 3 цвета. Раскроем слагаемые и удалим дублирующие вершины.

В результате получаем два варианта решения:

F1F2F4={ХЗ421567} или

F1F2F4={ ХЗ42X6157};

F1F3F4={X3;X241567}

или F1F3F4={XЗ,X4;X2;X1,X5,Xб,X7}.

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