알려진 알고리즘에 대한 더 나은 범위를 언제 찾았습니까?


16

입증 된 범위로 게시 된 알고리즘과 나중에 더 나은 범위가 게시 된 흥미로운 알고리즘 인스턴스가 있습니까? 더 나은 범위를 가진 더 나은 알고리즘은 아닙니다-분명히 그 일이 일어났습니다! 그러나 기존 알고리즘에 대한 더 나은 경계로 이끄는 더 나은 분석

나는 행렬 곱셈이 이것의 한 예라고 생각했지만, Coppersmith–Winograd와 그 친구들을 더 잘 이해하려고 노력한 후에 스스로 이야기를 나 (다.


이상적인 예는 행렬 곱셈입니다. 최근의 개선 사항은 실제로 더 나은 분석입니다 (Le Gall, Williams 등).
Lwins

Lwins-나는 그럴지도 모른다고 생각했지만, 논문의 일부를 훑어 보면 알고리즘과 분석 모두 약간 씩 다르다고 생각했습니다. 더 깊어 보일 필요가 있습니다.
Rob Simmons

부 프라 오토마타 ( dl.acm.org/citation.cfm?id=1398627 ) 를 결정할 때 사프라는 원래 2 차 지수를 가지도록 자신의 구조를 분석했습니다. 그런 다음 구조를 기록한 후 약간의 오해로 인해 더 나은 (최적의) 지수로 끝났습니다 . nlogn
Shaull

모션 계획 문제를 살펴볼 것을 제안합니다. 몇 가지 사례가있는 것 같습니다. 또한 IIRC의 단순 알고리즘 (들)의 정확한 복잡성은 꽤 오랫동안 연구의 문제였습니다.
Steven Stadnicki '

1
약간 다르지만 만족 입력의 존재를 증명 3SAT 인스턴스의 절 더주의 분석에 의해 명시 적 알고리즘으로 개량되었다. 7m/8
Stella Biderman

답변:


23

연합 찾기 알고리즘, Tarjan 1은 복잡했다 보였다 nα(n) , α(n) ACKERMANN 역 함수는 여러 사람에 의해 이전에 분석되었다. Wikipedia에 따르면 Galler와 Fischer 2 가 발명 했지만 알고리즘을 신속하게 실행하는 데 필요한 모든 구성 요소가 없기 때문에 잘못된 것으로 보입니다.

논문의 짧은 스캔에 기초하여, 알고리즘이 (잘못된) O ( n ) 시간을 낸 Hopcroft와 Ullman 3에 의해 발명 된 것으로 보인다 . 그런 다음 피셔 4 는 증명에서 실수를 발견하고 O ( n log log n )의 시간을 주었다 . 다음으로 Hopcroft와 Ullman 5O ( n log * n ) 시간 제한을 주었고 , 그 후 Tarjan 1 은 (최적의) O ( n α ( n ) ) 시간 제한을 찾았습니다 .O(n)O(nloglogn)O(nlogn)O(nα(n))

1 RE Tarjan, "선형 집합 유니온 알고리즘이 아닌 효율적"(1975).
2 BS Galler와 MJ Fischer, "개량 된 동등성 알고리즘"(1964).
3 JE Hopcroft와 JD Ullman, "선형 목록 병합 알고리즘"(1971).
4 MJ Fischer, "상당성 알고리즘의 효율성"(1972).
5 JE Hopcroft와 JD Ullman, "Set-merging algorithms"(1973).


2
이 데이터 구조의 역사는 약간 불분명하며 조사하는 것이 좋을 것입니다. 나는 Galler and Fischer 기사를 훑어 보았고 그것은 중요한 경로 압축 (PC)과 가중 조합 (WU) 휴리스틱이없는 DSF (Disjoint Sets Forest) 데이터 구조를 설명하는 것으로 보인다. Hopcroft와 Ullman은 Knuth를 인용하여 PC에 WF가없고 Tritter에 대한 DSF를 DSF로 정의합니다. Hopcroft와 Ullman의 논문 이전에 PC와 WU가 모두 포함 된 DSF가 출판 된 논문에 제안되었는지는 확실하지 않지만, 놀라더라도 놀라지 않을 것입니다.
Sasho Nikolov

1
O(nloglogn)Θ(n)O(nlogn)
피터 쇼어

12

k-SATO(1.364n)3-SATO(1.308n)3-SAT 당시 알려진.


이것은 정말 만족스러운 답변입니다! 나는 그것을 찾고 Union의 예가 내가 바라던 것의 가장 좋은 예라고 생각합니다.
Rob Simmons

8

FpFp

Lp(1/3,32/3)Lp(1/3,1.232)

Lp(v,c)=exp((c+o(1))(logp)v(loglogp)1v)


1
정신적으로 대단히 감사합니다!
Rob Simmons

6

kO(nk+o(1))O(n2k2)O(n1.98k+O(1))

Ω(nk)

참고 : Jason Li (및 해당 슬라이드)의 대화는 TCS + 웹 사이트 에서 찾을 수 있습니다 .


k



4

3 더 나은 재귀와 더 나은 런타임으로 이끄는보다 정교한 분석 (하위 문제 / 하위 구조 계산)을 제공합니다. 매개 변수가있는 복잡성 문헌에는 이러한 다른 예제가 있다고 생각합니다. 분석에 다른 변수를 추가하면 런타임이 향상 될 수 있지만 몇 년 동안 그 게임에서 벗어 났으며 특정 위치를 생각할 수 없습니다. 순간. FPT 및 PTAS 영역에는 논문 제목에서 "개선 된 분석"을 찾을 때 나오는 여러 논문이 있습니다.

선택을 지정하는 것이 동일한 알고리즘 (union-find의 깊이 순위 휴리스틱과 같은)으로 간주되면 Edmonds-Karp 알고리즘은 Ford-Fulkerson의 '향상된 분석'이며 알고리즘에 다른 문제가 많이 있다고 상상할 수 있습니다. 새로운 선택 규칙에서 런타임이 개선되었습니다.

그런 다음 기존 알고리즘의 상각 분석의 전체 무리가있다 (여기 또 하나,이 설명에 따라 노동 조합 찾기 맞는 생각 https://link.springer.com/article/10.1007/s00453-004-1145-7 )


새로운 선택을하는 것은 내가 찾던 것에 가깝게 느껴지지만, 상당히 구체적인 알고리즘은 "다른 알고리즘"이지만, 여전히 흥미로운 예입니다!
Rob Simmons
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.