>백엔드 개발 >C++ >최적화된 가장 긴 경로는 NP-완전 경로입니다.

최적화된 가장 긴 경로는 NP-완전 경로입니다.

王林
王林앞으로
2023-09-06 09:01:071076검색

최적화된 가장 긴 경로는 NP-완전 경로입니다.

"최장 경로 업그레이드" 문제는 NP-완전이 요구되는 계산적으로 어려운 작업입니다. 이번 호에서는 가중치가 부여된 간선이 있는 그래프에서 간선 하중을 확대하면서 미리 결정된 시작 허브에서 닫는 허브까지 가장 긴 경로를 찾는 것이 목표입니다. 가능한 연구 방법의 상당한 발전으로 인해 알려진 다항식 시간 계산으로는 모든 경우에 이 문제를 효율적으로 해결할 수 없습니다. 모든 것을 고려하면 과학자들은 가장 가까운 이상적인 배열을 추적하기 위해 추론적 계산과 경험적 방법에 의존합니다. 이 문제로 인한 문제는 운송, 계획 운영, 예약 예약 등 다양한 영역에 영향을 미쳤습니다.

사용방법

  • 간소화된 해밀턴 경로 문제

  • 알려진 NP-완전 문제 사용

해밀턴 경로 문제의 단순화

NP-완전인 "최장 경로 업그레이드" 문제를 해결하는 한 가지 방법은 유명한 NP-완전 문제(해밀턴 도로 문제라고 함)에 비해 감소를 나타내는 것입니다. 해밀턴 도로 문제는 주어진 그래프에 각 꼭지점을 정확히 한 번만 방문하는 경로가 포함되어 있는지 확인합니다.

알고리즘

  • 그래프 G인 해밀턴 도로 문제를 예로 들어 보겠습니다.

  • G와 구별할 수 없고 꼭짓점과 모서리가 유사한 또 다른 그래프 G'를 만듭니다.

  • G'의 모든 모서리에 가중치 1을 할당합니다.

  • "증가된 최장 경로" 문제의 시작 및 끝 피벗을 G'의 불안정한 두 피벗으로 설정합니다.

  • G에 해밀턴 경로가 있는 경우 G'의 "업그레이드된 최장 경로"는 하나 더 짧은 정점 수와 동일한 가장자리 수와 동일한 가장자리 하중을 갖는 유사한 해밀턴 경로가 됩니다.

  • G에 해밀턴 도로가 없으면 이때 G'의 "유선형 최장 경로"는 시작 허브에서 닫는 허브까지의 직접 경로가 되며, 여기서 모서리 하중의 양은 다음과 같습니다. 완전하지 않은 가장자리는 짧은 정점의 수입니다.

  • 이러한 쇠퇴는 "향상된 최장 경로"를 해결하는 것이 해밀턴 도로 문제를 해결하는 것만큼 어렵고 이를 NP-완전 문제로 만드는 것을 보여줍니다.

으아아아

출력

으아아아

알려진 NP-완전 문제 사용

또 다른 접근법은 최장 경로 문제나 이동 영업사원 문제(직접 TSP)와 같은 알려진 NP-완전 문제로부터 이를 줄여서 "축소된 최장 경로"가 NP-완전임을 증명하는 것입니다.

알고리즘

  • 가장 긴 경로 문제가 발생하면 그래프 G와 이상적인 경로 길이를 해결하는 정수 k가 발생합니다.

  • G와 다르지 않고 꼭짓점과 모서리가 유사한 또 다른 그래프 G'를 만듭니다.

  • G'의 모든 모서리에 가중치 1을 할당합니다.

  • "증가된 최장 경로" 문제의 시작 및 끝 피벗을 G'의 불안정한 두 피벗으로 설정합니다.

  • G의 길이가 k인 가장 긴 경로가 있는 경우 G'의 "향상된 가장 긴 경로"는 k와 동일한 간선 로딩을 갖는 유사한 가장 긴 경로가 됩니다.

  • G에 길이 k의 가장 긴 경로가 없으면 현재 모서리 하중이 k와 동일한 G'에 경로가 없습니다.

  • 가장 긴 경로 문제는 NP 완성으로 알려져 있으므로 이 감소는 "단순화된 최장 경로"의 NP 정점을 설정합니다.

  • 두 가지 방법 모두 "상위 수준 최장 경로"가 NP-완전이므로 모든 경우에 이를 처리할 수 있는 효율적인 계산이 알려져 있지 않으며 이는 계산 복잡성을 보여줍니다.

으아아아

출력

으아아아

결론

첫 번째 접근 방식으로 이동하면 유명한 해밀턴 방법 문제를 줄이는 것이 포함됩니다. 해밀턴 도로 문제의 사례를 "고급 최장 도로"의 사례로 변환함으로써 우리는 마지막 문제를 해결하는 것이 이전 문제를 해결하는 것만큼 어렵다는 것을 보여주고 NP 구현에 대해 자세히 설명합니다.

방법 2는 알려진 또 다른 NP-완전 문제, 최장 경로 문제 또는 이동 판매원 문제(TSP)의 문제를 줄이는 방법을 직접적으로 설명합니다. "향상된 최장 경로"가 이러한 NP-완전 문제로 변환될 수 있는 방식을 시연함으로써 우리는 이것이 유사한 계산 복잡성을 가지며 이러한 방식으로 NP-완전임을 보여줍니다.

위 내용은 최적화된 가장 긴 경로는 NP-완전 경로입니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제