동적 프로그래밍이 Greedy보다 약한 적이 있습니까?


15

회로 복잡성에서 우리는 다양한 회로 모델의 전력을 분리합니다.

증명 복잡성에서 우리는 다양한 증명 시스템의 힘을 구분합니다.

그러나 알고리즘에서 우리는 여전히 알고리즘 패러다임의 힘 사이의 분리가 거의 없습니다 .

아래의 질문은 두 가지 패러다임 인 욕심과 동적 프로그래밍에 대한 후자의 문제를 다루는 것입니다.

우리는 기본 요소 집합과 일부 해당 하위 집합을 실현 가능한 솔루션으로 선언했습니다. 우리는이 제품군이 하향 폐쇄 된 것으로 가정합니다. 실행 가능한 솔루션의 하위 집합이 실현 가능합니다. 그라운드 요소에 음이 아닌 가중치를 할당하면 문제는 실현 가능한 솔루션의 최대 총 가중치를 계산하는 것입니다.

욕심 많은 알고리즘은 빈 부분 솔루션으로 시작하며, 각 단계에서, 이것이 가능하다면, 즉 확장 솔루션이 여전히 가능한 경우에 가장 큰 무게의 아직 처리되지 않은 요소를 추가합니다. 잘 알려진 Rado-Edmonds 정리에 따르면이 알고리즘은 실현 가능한 솔루션 제품군이 마그 로이드 인 경우 모든 입력 가중치에 대해 최적의 솔루션을 찾을 것이라고합니다.

대략적으로 말해서 DP 알고리즘은 Max 및 Sum (또는 Min 및 Sum) 연산 만 사용하는 경우 간단 합니다. 좀 더 구체적으로 (여호수아가 제안한대로) 간단한 DP 알고리즘에 의해 fanin-2 Max 및 Sum 게이트가있는 (max, +) 회로를 의미합니다. 입력 값은 변수이며 i 번째는 번째 요소에 주어진 가중치에 해당합니다 . 이러한 회로는 해결할 수 있는 단지 가능한 용액의 최대 총 중량을 계산함으로써 이러한 문제. 그러나 우리가 기하 급수적으로 그러한 솔루션을 많이 가지고 있다면 (거의 항상 그렇듯이) 이것은 과장 될 수 있습니다.i

질문 1 : 간단한 DP 알고리즘에 대응하는 최대화 문제를 해결하기 위해 초 다항식 연산이 필요한 matroid가 있습니까?

COMMENT은 (2015년 12월 24일 추가) :이 문제는 이미 (아래 참조) 대한 답변 : 거기에 있는 같은 matroids이, 심지어 대부분을 압도한다.

다음 질문은 근사 문제에 대해 Greedy와 간단한 DP를 분리하도록 요청합니다 . 에서 최대-무게 매칭 문제, 가능한 솔루션 제품군은 전체 양자의 모든 matchings 구성 그래프. 가장자리에 가중치를 부여 할 때 목표는 일치하는 최대 가중치를 계산하는 것입니다 (무게가 음수가 아니기 때문에 항상 완벽하게 일치합니다). n×

단순한 탐욕스러운 알고리즘은 요인 2 내에서이 문제를 근사 할 수 있습니다. 항상 보이지 않는 최대 무게의 분리 된 모서리를 취하십시오. 얻어진 무게는 최적 무게의 절반 이상이됩니다.

질문 2 : 간단한 DP 알고리즘이 다 항적으로 많은 Max 및 Sum 연산 만 사용하여 요소 2 내의 Max-Weight Matching 문제를 근사 할 수 있습니까?

물론, 에지의 최대 가중치의 배 를 출력하는 사소한 DP 알고리즘 은 인수 내에서이 문제를 근사합니다 . 그러나 우리는 훨씬 더 작은 요소를 원합니다. 요인 조차도 달성 할 수 없지만 다시 이것을 증명 하는 방법은 무엇입니까? nnn/logn

관련 : Max-Weight Matching의 사촌은 과제 문제 입니다. 완벽한 매칭 의 최소 무게를 찾으십시오 . 이 문제는 연산 만 사용하여 선형 프로그래밍 (소위 헝가리어 알고리즘)으로도 (정확히) 해결할 수 있습니다 . 그러나 영구 함수를 계산하는 모노톤 부울 회로의 크기에 대한 Razborov의 하한은 (!) 유한 요소 내 에서이 문제를 근사하는 (min, +) 회로가 작업. 따라서 최소화 문제의 경우 간단한 DP 알고리즘이 선형 프로그래밍보다 훨씬 약할 수 있습니다. 위의 질문은 그러한 DP 알고리즘이 Greedy보다 약할 수 있음을 보여줍니다. O(n3)nΩ(logn)

누군가 비슷한 질문을하는 사람이 있습니까?


ADDED (2015.12.24) : 질문 2는 r = 2 인자를 가진 탐욕스러운 알고리즘에 의해 근사 될 수있는 하나의 특정 최대화 문제 (Max-Weight Matching 문제)가 단순한 단순한 크기로 근사 될 수 없음을 보여줍니다. DP와 같은 인자 R . 한편, 나는 Greedy와 간단한 DP 사이의 약한 분리를 얻었습니다. 모든 r = o ( n / log n ) 에 대해 인자 r을 가진 탐욕스러운 알고리즘으로 근사 할 수있는 명확한 최대화 문제가 있지만 폴리 크기의 간단한 DP는 없습니다. 알고리즘은이 문제를 더 작게 근사 할 수 있습니다r=2rr=o(n/logn)r계수 ( 스케치는 여기 참조 ). 그럼에도 불구하고, 질문 2 자체는 (이 특정 Max-Weight 문제 일 필요는 없음) 실제로 남아 있습니다 . 두 알고리즘 모두 에서 동일한 요인 을 목표로하는 것이 흥미로울 것 입니다.<r/3


2
당신은 의미합니까 정의 "2 팬의 게이트 어떤 (최대, +) 회로"와 같은 "간단한 DP 알고리즘을?"
Joshua Grochow

@Joshua : 그렇습니다. 가장 짧은 st 경로에 대한 Bellman-Ford 는 K n의 각 모서리에 대한 입력 변수 가 있다고 가정하십시오 . 1- 성 층상의 게이트는 D ( J , 1 ) = X S , J . L 번째 층에서, 우리가 D ( J , L ) = { D ( J , L - 1 ) , 해요 I N I { D ( I , L -xi,jKnD(j,1)=xs,j . 출력 게이트는 D ( t , n - 1 ) 입니다. 거기 O ( N 3 ) 전체 게이트. 사실, 내 질문에서 faninis에 대한 제한은 그렇게 중요하지 않습니다. D(j,l)=min{D(j,l1),mini{D(i,l1)+xi,j}}D(t,n1)O(n3)
Stasys

답변:


6

내 질문 1에 대한 대답은 긍정적 이라고 생각합니다 . 간단한 DP가 심하게 실패하는 matroid 가 있습니다 ! 즉, 최적화 문제를 정확하게 해결하려 할 때 단순한 DP는 Greedy보다 훨씬 나쁠 수 있습니다 .

접지 세트를 의 모든 모서리로 구성하십시오 . 실행 가능한 솔루션 제품군으로 K n 의 모든 포리스트 제품군을 가져옵니다 . 이것은 motroid이며, 그 밑면은 나무에 걸쳐 있습니다. 따라서이 matroid polynomial에 해당하는 것은 monomials가 spanning tree에 해당 하는 multilinear polynomial f 입니다. Jerrum과 Snirf 가 지수 크기의 모노톤 산술 회로를 필요로 한다는 것을 4.5 장에서 증명했다 . 이것은 이미 모든 최대 ( max , + ) 회로 및 따라서 모든 간단한 DP 알고리즘이 최대 가중치 스패닝 트리 문제를 해결하기 위해 지수 수의 Max 및 Sum 연산을 사용해야 함을 의미합니다. KnKnff(max,+)

22n/n3/2n

2kkmatroids. 다른 한편으로, 내가 아는 한 DP 기반 근사 알고리즘은 일반적으로 일종의 입력 가중치의 "스케일링"을 사용하며 "백팩과 같은"문제 또는 일부 스케줄링 문제에만 적용됩니다. 질문 2에 대한 부정적 답변 은 DP의 "근사 약점"인 것으로 확인 됩니다.


1
다소 접선적인 설명 : DP는 다양한 고정 차원 유클리드 문제 (예 : Euclidean TSP)에 대한 Arora 스타일 알고리즘에도 사용됩니다. 그러나 이것은 여전히 ​​입력을 반올림하는 정신에 있습니다.
Sasho Nikolov

@Sasho : 그렇습니다. 이들은 실제로 DP 기반의 귀여운 알고리즘입니다. Woeginger 는 DP가 문제를 근사화하는 데 도움이 될 수있는 문제를 포착하려고 시도했습니다. 그러나 순수한 DP 근사법을 보지 못했습니다 (Max 및 Sum 또는 Min 및 Sum 만, 반올림 / 스케일링 없음, ArgMax 등 없음) 물론 이것은 내 잘못 일 수 있습니다. 근사 알고리즘은 나에게 새로운 것입니다. .
Stasys

나는 순수한 의미에서 좋은 "순수한"DP 근사치에 대한 예를 모른다.
Sasho Nikolov
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.