다음은 해결하려는 과거 시험의 질문입니다.
양의 가중치 인 무 방향 그래프 경우 최소 컷을 찾으려고합니다. max-flow min-cut 정리를 사용하는 것 외에 다른 방법을 모르겠습니다. 그러나 그래프는 방향이 지정되지 않았으므로 어떻게 지시해야합니까? 양쪽 끝에 가장자리를 지정하려고 생각했지만 소스가 될 정점과 싱크가 될 정점이 무엇입니까? 아니면 최소 컷을 찾는 다른 방법이 있습니까?w ( e ) ≥ 0
다음은 해결하려는 과거 시험의 질문입니다.
양의 가중치 인 무 방향 그래프 경우 최소 컷을 찾으려고합니다. max-flow min-cut 정리를 사용하는 것 외에 다른 방법을 모르겠습니다. 그러나 그래프는 방향이 지정되지 않았으므로 어떻게 지시해야합니까? 양쪽 끝에 가장자리를 지정하려고 생각했지만 소스가 될 정점과 싱크가 될 정점이 무엇입니까? 아니면 최소 컷을 찾는 다른 방법이 있습니까?w ( e ) ≥ 0
답변:
무 방향 그래프의 최소 컷을 찾기위한 많은 알고리즘이 있습니다. Karger의 알고리즘 은 간단하지만 효과적인 무작위 알고리즘입니다.
요컨대, 알고리즘은 무작위로 가장자리를 균일하게 선택하고 자체 루프가 제거 된 상태로 수축하여 작동합니다. 두 개의 노드가 남아 있으면 프로세스가 중지되고 두 노드는 컷을 나타냅니다. 성공 확률을 높이기 위해 무작위 알고리즘이 여러 번 실행됩니다. 달리기를하는 동안, 지금까지 발견 된 가장 작은 컷을 추적합니다.
자세한 내용은 Wikipedia 항목을 참조하십시오. 더 나은 소개를 원한다면 Michael Mitzenmacher와 Eli Upfal의 확률 및 컴퓨팅 : 무작위 알고리즘 및 확률 분석의 첫 번째 장을 확인하십시오.
모든 방향이 지정되지 않은 모서리 두 개의 지정 모서리 및 만듭니다.( u , v , w e i g h t ) ( v , u , w e i g h t )
...하지만 어떤 정점이 소스가되고 어떤 정점이 싱크가됩니까?
중요하지 않습니다.
Ford-Fulkerson 알고리즘이 적합합니다. 두 개의 가짜 정점을 만들 수 있습니다. 소스와 싱크.
Edmonds-Karp 알고리즘도 살펴보십시오 . 두 가지 변형이 있습니다.
, 임의의 경로를 선택하는 Ford-Fulkerson과 달리.
이것은 좋은 자료입니다.