На этом шаге мы рассмотрим графы с атрибутами.
Во многих случаях элементам (вершинам и ребрам) графа ставятся в соответствие различные данные - атрибуты (метки). Если в качестве атрибутов используются целые или вещественные числа, то такие графы называют взвешенными. Фактически, взвешенный граф - это функция, определенная на графе. В качестве атрибутов могут выступать и нечисловые данные, поэтому я буду называть графы с атрибутами помеченными, или атрибутированными (А-графами). Например, структурные формулы химических соединений представляются молекулярными графами - А-графами, вершины которых соответствуют атомам химической структуры, а ребра - валентным связям между атомами. Для вершин молекулярного графа определен, по крайней мере, атрибут "номер атома в периодической таблице элементов", для ребер - "тип валентной связи (одинарная, двойная, тройная и др.)"; могут использоваться дополнительные атрибуты, например, заряд атома.
Для графов с атрибутами можно ввести усиленное определение изоморфизма: будем считать два А-графа изоморфными, если они изоморфны в обычном смысле, и, кроме того, изоморфное отображение сохраняет атрибуты (т.е. атрибуты соответствующих вершин и ребер в обоих графах совпадают).
Независимое множество вершин (НМВ) - множество вершин графа, никакие две вершины которого не инцидентны.
Максимальное независимое множество вершин (МНМВ) - НМВ, которое не содержится ни в каком другом НМВ.
Наибольшее независимое множество вершин - НМВ максимальной мощности.
Мощность наибольшего НМВ (очевидно, это одно из МНМВ) называется вершинным числом независимости графа (а также неплотностью, числом внутренней устойчивости или числом вершинной упаковки графа); обозначение - a(G).
Независимое множество ребер (НМР), или паросочетание - множество ребер графа, никакие два ребра которого не инцидентны.
Мощность наибольшего паросочетания называется числом паросочетания графа; обозначение - n(G).
Доминирующее множество вершин (ДМВ) - такое множество вершин графа, что каждая вершина графа либо принадлежит ДМВ, либо инцидентна некоторой вершине, принадлежащей ДМВ.
Вершинное покрытие (ВП) - такое множество вершин графа, что каждое ребро графа инцидентно хотя бы одной вершине, принадлежащей ДМВ.
Мощность наименьшего вершинного покрытия называется числом вершинного покрытия графа; обозначение - t(G).
Доминирующее множество ребер (ДМР), или реберное покрытие - такое множество ребер связного графа, что каждая вершина графа инцидентна хотя бы одному ребру, входящему в ДМР.
Мощность наименьшего ДМР называется числом реберного покрытия графа; обозначение - r(G).
Рис.1. Пример графа
На рисунке обозначены реберное покрытии графа (пунктиром), МНМВ (белые вершины) и вершинное покрытие (черные вершины).
Величины a(G), n(G), t(G) и r(G) являются инвариантами графа. Между этими инвариантами существует связь, устанавливаемая следующими леммами.
Дальнейшие результаты справедливы только для двудольных графов.
Пусть X - произвольное подмножество вершин графа G=(V,E). Обозначим через G(X) множество вершин G, инцидентных вершинам X.
Название теоремы связано со следующей "несерьезной" задачей: определить, возможно ли "переженить" группу юношей и девушек так, чтобы все остались довольны. Если допустить, что все "симпатии" взаимны (предположение, прямо скажем, нереалистичное), то задача сводится к нахождению совершенного паросочетания в двудольном графе, вершины одной из долей которого соответствуют юношам, другой - девушкам, и две вершины связаны ребром тогда и только тогда, когда юноша и девушка нравятся друг другу.
На следующем шаге мы рассмотрим задачу нахождения кратчайших путей.