답변:
최대 흐름 문제 의 잔차 그래프에 대한 직관 이이 강의 에서 매우 잘 설명되어 있습니다. 설명은 다음과 같습니다.
다음 네트워크 대한 최대 흐름 문제를 해결하려고한다고 가정합니다 (각 레이블 는 가장자리 e를 통해 밀린 흐름 와이 가장자리 의 용량 c e 를 모두 나타냄 ).
욕심 많은 접근 방식은 다음과 같습니다.
즉, 사용 가능한 용량이있는 경로를 찾고 해당 경로를 따라 흐름을 보내고 반복하십시오.
에서는 , 경험적 발견 위의 하나 개의 가능한 실행을 증대시키는 세 경로 P 1 , P 2 및 P (3) 이 순서대로. 이 경로는 각각 2, 2 및 1 개의 흐름 단위를 푸시하여 총 5 개의 흐름을 만듭니다.
이 순서대로 경로를 선택하면 최적의 솔루션이됩니다. 그러나 먼저 선택하면 (즉, P 1 및 P 2 전에 ) 어떻게됩니까?
우리는 블로킹 흐름 이라는 것을 얻습니다 . 더 이상 증강 경로가 없습니다. 이 경우 총 유량은 3이며 최적이 아닙니다. 이 문제는 가능하면 해결할 수 있습니다 실행 취소 작업을 (흐름을 허용함으로써, 즉는 이전의 반복 작업을 취소, 역으로 확인할 수) : 단순히 정점에서 흐름 뒤쪽의 2 개 단위를 밀어 정점에 V 같은 :
허용 된 실행 취소 작업을 인코딩하는 것이 잔차 그래프 의 주요 목표입니다 .
네트워크 G 의 잔차 그래프 은 G 와 동일한 정점 세트 를 가지며 각 모서리 e = ( u , v ) ∈ G를 포함합니다 .
c e - f e > 0 인 경우 용량 c e - f e를 갖는 포워드 에지 .
f e > 0 인 경우 용량 f e를 갖는 후방 가장자리 .
예를 들어, 휴리스틱이 P 3을 먼저 선택할 때 (즉, 블로킹 흐름을 얻을 때) 욕심 휴리스틱의 첫 번째 반복 후에 얻은 잔차 그래프 을 고려하십시오 .
w 에서 v 로 2 단위의 흐름을 푸시 하는 실행 취소 조작 은 R 에서 s 에서 t 까지 의 전진 (증강) 경로로 인코딩됩니다 .
일반적으로 :
잔차 그래프 R 에서 증강 경로 가 선택된 경우 :
- G 에서의 전방 에지에 대응하는 모든 에지는 이용 가능한 용량을 갖는 에지를 사용함으로써 흐름을 증가시킨다.
- G 에서 후진하는 에지에 대응하는 모든 에지 는 과거에 전방 방향으로 밀린 흐름을 취소한다.
이것이 Ford-Fulkerson 방법 의 기본 아이디어 입니다.
Ford–Fulkerson 방법은 위에서 설명한 욕심 많은 접근 방식과 정확히 같은 방식으로 진행되지만 잔차 그래프에 원래 경로가 아닌 확장 경로가 더 이상 없을 때만 중지됩니다. 잔차 그래프가 다음과 같은 최적 조건을 설정 하므로이 방법은 정확합니다 (즉, 항상 최대 유량을 계산 함) .