Ваша проблема является более общим случаем K-непересекающегося пути В ориентированных плоских графах , с нефиксированным K.
K
Проблема непересекающихся путей для ориентированных плоских графов такова:
дано : ориентированный планарный граф G = (V; E) и k пар (r 1 ; s 1 ); ....; (r k ; s k ) вершин группы G;
find : k попарно непересекающихся направленных путей P 1 ; ...; P k в G, где P i работает от r i до s i (i = 1; ....; k ).
В k-непересекающемся пути вы можете нарисовать дугу от всех s i до B, а также дугу от A до всех r i , тем самым вы создадите граф G 'из G .
Теперь, если вы можете решить свою проблему в G 'в P , вы можете решить k-непересекающийся путь в G, поэтому P = NP.
Но если вы прочитаете связанную статью, это даст некоторое представление об общем графе (решение k-непересекающегося пути с фиксированным k), и вы сможете использовать его для получения хорошего приближения.
Также существует более сложный алгоритм, который решает эту проблему в P (для фиксированных k) в общих графах. но в целом это не просто (это Сеймур).
Таким образом, ваш лучший выбор в настоящее время - использовать алгоритмы перебора.
Редактировать: Поскольку MAXWEIGHT не зависит от вашего входного размера (размера вашего графика), это не влияет на эту проблему. Кроме того, это NP-Hard для неориентированного невзвешенного графика, тем не менее вы можете просто сделать вывод, что NP-Hard.