То, что вы описываете, известно как проблема соответствия для двудольных графов . Я подозреваю, что есть что-то (пока неустановленное) в проблеме, которая затрудняет ее решение. До сих пор вы действительно не накладывали никаких ограничений на то, какие края можно использовать. Предположим, что есть определенные ребра (не все), эти «возможные» ребра образуют график, а те, которые вы решили использовать, образуют максимальное соответствие. Нахождение максимального соответствия в графе является алгоритмом полиномиального времени, и его особенно легко кодировать для двудольного случая.
Название звучит так, как будто обстоятельства могут навязать какое-то обстоятельство, так что «непересекающиеся» ребра могут оказаться невозможными («пересечения наименьших ребер»). Возможно, вам нужно покрытие ребер (или 1-покрытие), то есть каждая вершина принадлежит хотя бы одному ребру. Тогда, если два «вершинных» массива имеют разную длину, не будет «идеального соответствия», то есть соответствия, которое также является прикрытием. Классический результат Теорема Холла о браке характеризует наличие идеальных совпадений в двудольном графе. Если граф регулярный (все вершины имеют одинаковую степень), то Теорема Кенига говорит нам, что существует идеальное соответствие (и даже больше).
Добавлено:
Возможно, стоит заявить, что на картинке говорится об ограничениях на выбор краев. Два набора вершин имеют координаты {(i, 0) | i = 1, .., N} и {(j, 1) | J = 1, .., N}. Существует N доступных ребер, отрезков, которые соединяют (i, 0) и (j, 1) всякий раз, когда y0 [i] = y1 [j]. Хотя в строке темы написано «пересечение наименьших ребер», решением является максимальное подмножество этих ребер, которое не допускает пересечений, - самый большой плоский линейный граф , содержащийся в данном графе перестановок .
Это связано с проблемой минимизации пересечения 2 уровней, рассмотренной здесь:
Альтернативный метод минимизации пересечения на иерархических графах - П. Муцель
«Мы предлагаем ... удалить минимальное количество ребер, чтобы получаемый граф был планарным с k-уровнем ... В этой статье мы рассматриваем случай k = 2 ... [W] e решает проблему извлечения двухуровневый планарный подграф максимального веса в данном двухуровневом графе. Эта задача NP-трудная. "
Настоящая задача накладывает одинаковое количество точек в двух наборах вершин, базовый граф является регулярным степени 1, и при нумерации или позиционировании точек выбор не допускается. Таким образом, невозможно сделать вывод, что это так сложно, как описанное в приведенной выше статье. Однако оно направляет нас к так называемым методам «ветвления и связывания» для точного решения таких проблем.
Давайте рассмотрим «ребра» исходной задачи как «узлы» нового графа, где два узла смежны, если исходные ребра пересекаются. [Это пример графа пересечений.] Теперь проблема в том, чтобы найти максимальное независимое множество нового графа. Проблемы такого рода, как правило, являются NP-сложными, но, опять же, мы подозреваем, что масштабы существующих проблем могут быть не такими общими.
Одной из причин подозревать наличие алгоритма полиномиального времени является наличие алгоритмов аппроксимации полиномиального времени для максимально независимых подмножеств графов пересечений для конечных наборов плоских выпуклых множеств:
Независимый набор графов пересечений выпуклых объектов в 2D - П. Агарвал и М Мустафа
"В этой статье мы представляем алгоритмы аппроксимации для задачи с независимым множеством на графах пересечений отрезков и выпуклых объектов на плоскости."
Существует еще одно замечание об особенности настоящей проблемы, которая, кажется, делает ее разрешимой за полиномиальное время. круговая диаграмма - это график пересечений отрезков, которые можно нарисовать как хорды круга. С помощью аргумента перестановки можно нарисовать прямые ребра графа перестановок без потери или введения пересечений.
Теперь задача о максимальном независимом множестве для круговых графов может быть решена за полиномиальное время. Ссылка на статью в Википедии, приведенную выше, дает следующую ссылку:
Нэш, Николас; Грегг, Дэвид (2010), «Выходной чувствительный алгоритм для вычисления максимально независимого набора кругового графа», Письма обработки информации 116 (16): 630–634
Я также нашел эту ссылку в Google Книгах:
Валиенте, Габриэль (2003), «Новый простой алгоритм для задачи о множестве независимых множеств на круговых графах», Алгоритмы и вычисления: 14-й симпозиум, ISAAC 2003, Киото