이 최적의 여행 문제는 나무의 마감 시간이 NP-hard입니까?


13

내 친구 중 하나가 트리에서 다음과 같은 일정 문제를 묻습니다. 나는 그것이 매우 깨끗하고 재미 있다는 것을 알았습니다. 그것에 대한 참조가 있습니까?

문제 : 나무 있으며 각 모서리의 대칭 이동 비용은 1 입니다. 각 정점 에 대해 마감일 전에 완료해야하는 작업이 있습니다T(V,E)vidi . 작업은 또한 로 표시됩니다 . 각 작업의 값은 1입니다 . 처리 시간은 각 작업마다 0입니다 . 즉 마감 시간이 끝나기 전에 작업을 방문하는 것이 완료됩니다. 일반성을 잃지 않고,하자 V 0 루트 나타낸다하고 가정에있는 아무 작업이없는 V 0 . 시간 0 에 v 0 에 차량이 있습니다. 게다가, 우리는 d id 라고 가정합니다.viv0v0v0 각 정점은didepi, 깊이 약자 V I . 이것은 자명 한 것으로 마감 시한이 수심 미만인 정점은 이상치로 간주해야합니다. 문제는 가능한 많은 작업을 완료하는 일정을 찾도록 요구합니다.depivi

진행:

  1. 트리가 경로로 제한되면 동적 프로그래밍을 통해 있습니다.P
  2. 트리가 그래프로 일반화되면 입니다.NP
  3. 3 인자 할당으로 여겨지는 매우 단순한 탐욕스러운 알고리즘이 있습니다. 나는 그것을 완전히 증명하지 못했습니다. NP-hard 결과에 더 관심이 있습니다. :-)

조언 해 주셔서 감사합니다.


완전한 그래프에서 작업이 쉬울까요? 간단한 욕심 많은 알고리즘을 사용하십시오 ...
Joe

@ 조 : 네. 모든 엣지는 1 단위의 이동이 필요하기 때문에 "교차로"중에서 선호하지 않습니다. 그렇다면이 문제에 여전히 관심이 있습니까? 아마 우리는 이메일을 통해 대화 할 수 있습니다. :-)
Peng Zhang

마감일이 모두 같거나 모든 작업을 완료 할 수 있는지 만 묻는다면 어떻게됩니까?
domotorp

@domotorp : 마감일이 한 번인 모든 작업을 완료하도록 요청하면 일정 마감일이 . 깊이 우선 검색하십시오. 경우에 대한 최적의 문제 d < | V | 나는 그것이 쉬운 지 모르겠다. 마감일이 카디널리티가 일정한 유한 세트에서 값을 가져 오는 경우를 고려하는 것과 같이이 문제에 대한 많은 변형이 있습니다. 귀하의 의견에 감사드립니다. d|V|d<|V|
Peng Zhang

NP-hard가 문제를 오해하지 않는 한 예약 동물원을 참조하십시오 .
Gopi

답변:


1

이것이 귀하의 답변인지 확실하지 않지만 (아래 참조) 의견에 비해 너무 깁니다.

나는 당신의 문제가 다음과 같았지만 (P|tree;pi=1|ΣTi) , 여기서 :

  • 는 동일한 동종 프로세서를 나타냅니다.P
  • "트리"는 트리 형태의 우선 순위 제약을 나타냅니다.
  • 은 작업의 가중치가 1과 같음을 나타냅니다.pi=1
  • 는 지각의 합계 (즉, 마감일 이후에 완료되는 작업 수)를 최소화하는 것을 나타냅니다.ΣTi

이 경우, 문제는 NP-hard 입니다 . 우선 순위 제약 조건이있는 단일 시스템에서 총 지각 최소화 의 일반화로 볼 수 있습니다 . 실제로이 백서에서는 여러 선형 체인의 경우 단일 프로세서에서 NP-hard라고 설명합니다. 쉬운 변형은 하나의 루트 형태의 나무와 루트에서 시작하는 선형 체인을 취하는 것입니다.

그러나 단일 선형 체인 의 경우 동적 프로그래밍을 사용 한다고 말했기 때문에 놀랐습니다 . 단일 선형 체인을 예약 할 때 우선 순위 제약 조건으로 인해 많은 선택의 여지가없는 것 같습니다. 단 하나의 선택 만 있기 때문에 DP가 필요한 이유를 알지 못합니다. 어쩌면 나는 당신의 문제를 오해했을 것입니다.


내 문제는 당신과 다릅니다. "루팅 된 트리, 이동 비용 단위 시간, 마감일이있는 작업이있는 각 정점, 작업에 선행 할 시간이 필요 없습니다. 루트부터 시작하여 몇 개의 작업을 완료 할 수 있습니까?" 따라서 우선 순위가 없으며 작업을 처리하는 데 시간이 필요하지 않습니다. 대단히 감사합니다.
Peng Zhang

@ PengZhang, 뿌리 된 나무라면 우선 순위가 있습니까? 가장자리 (우선 순위) 또는 작업 비용은 같은 것 같습니다. 나는 정말로 두 가지의 차이점을 보지 못합니다. 마지막으로 완료 할 수있는 작업 수입니다. 최종 기한 이후에 완료되는 작업 수를 최소화하면 완료 할 수있는 작업 수를 최대화하는 것과 같습니다. 아마도 당신이 기대하는 것을 그림으로 그릴 수 있습니까?
Gopi

두 문제 사이의 명확한 관계는 보이지 않습니다. 원래 문제점에서 다음 노드 방문 비용은 이전 단계에서 방문한 노드에 따라 다릅니다. 우선 순위가 제한된 스케줄링에서, 우선 순위 제한 조건이 충족되는 한, 처리 할 다음 작업 비용은 이전 단계에서 처리 된 작업에 의존하지 않습니다.
오카모토 요시오

1,2,,nf(t,l,r)[l,r]tlg(t,l,r)f(t,l,r)rf(t,l,r){f(,l+1,r),g(,l,r1)t,l,r
Peng Zhang

@ PengZhang, 좋아, 나는 당신이 무엇을 의미하는지 더 잘 이해하고 있다고 생각합니다. 나는 아직도 가지가 길 (따라서 뿌리 길) 인 특별한 나무를 고려함으로써 내가 준 종이를 쉽게 조정할 수 있다고 믿는다.
Gopi

1

이것이 사실이 되려면 몇 가지 가정을해야합니다. 아래 의견을 참조하십시오

tatb

|V|


2
f[a,t,t]a[t,t]a

포인트 (1)은 포인트 (2)만큼 문제가되지 않습니다. 처음 구상했을 때 아이디어가 작동하려면 하위 트리를 여러 번 종료했다가 다시 입력하지 않아야합니다. 가장 좋은 해결책이 나무 주위를 뛰지 않는다는 것은 확실하지 않습니다. 당신이 걷는 모든 경로에서 모든 노드를 얻을 것이라는 사실을 이용하십시오. 특히 어떤 어린이가 방문한 경우 부모는 이미 방문했습니다.
Joe

: 내 thougt에서 (1) 지점은 실제로 문제 입니다. 포인트 (2)의 경우 구속 조건을 "다시 입력하지 않음"이라고 "깊이 우선 검색"구속 조건이라고했습니다. DFS 제약은 문헌에서 일반적으로 채택됩니다. 그리고 그 제약 조건에서, 나무의 최대 정도가 일정 하다면 내 문제는 실제로 다항식 입니다. 내 질문이 NP-hard인지 궁금합니다. 대단히 감사합니다.
Peng Zhang

3
DFS 제한 조건과 관련하여 최적 시퀀스가이 제한 조건을 위반하는 예제를 쉽게 구성 할 수 있습니다. 7 개의 노드로 구성된 균형 잡힌 이진 트리를 고려하십시오. 왼쪽 하위 트리의 2 개 잎에 마감일 2와 12를, 오른쪽 하위 트리의 2 개 잎에 마감일 8과 6을, 내부 노드에 마감일 100을 두십시오. 2,6,8 순서로 잎을 방문하여 모든 노드를 방문 할 수 있습니다. , 12; 다른 명령은 적어도 하나의 마감일을 위반합니다.
mhum

0

이 경우에 대해 일정한 근사치를 얻거나 NP-Hard를 입증하는 문제는 여전히 열려 있으며 결과는 좋은 출판물이 될 것입니다. 일부 특수한 경우가 해결되었습니다. 나는 다른 사람들과 함께 거미, 일정한 높이의 나무와 같은 특별한 경우를 해결하는 일부 결과를 가지고 있습니다. 그러나 나무의 일반적인 문제는 해결되지 않았습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.