결정론적인“보이는”무작위 알고리즘?


31

내부 무작위성에 관계없이 항상 동일한 (올바른) 답변을 출력 하지만 무작위성을 악용하여 예상 실행 시간이 가장 빠른 알려진 실행 시간보다 낫도록 검색 문제에 대한 무작위 알고리즘의 흥미로운 예가 있습니까? 문제에 대한 결정 론적 알고리즘?

특히, n과 2n 사이의 소수를 찾는 알고리즘이 있는지 궁금합니다. 알려진 다항식 시간 결정 알고리즘은 없습니다. 간격에서 임의의 정수를 샘플링하는 것만으로 작동하는 사소한 무작위 알고리즘이 있습니다 . 소수 정리 덕분에 작동합니다 . 그러나 예상 실행 시간이 둘 사이의 중간 인 위와 같은 종류의 알고리즘이 있습니까?

편집 : 내 질문을 약간 세분화하기 위해 가능한 많은 올바른 출력 이있는 문제에 대한 알고리즘을 원했지만 무작위 알고리즘은 무작위성과 무관하게 하나를 결정합니다. 나는 질문이 완전히 구체화되지 않았다는 것을 알고 있습니다 ...


3
검색 키워드를 제공하기 위해 항상 정답을 생성하고 짧은 실행 시간에 임의성을 사용하는 무작위 알고리즘을 Las Vegas 알고리즘 (Monte Carlo 알고리즘과 달리) 또는 제로 오류 알고리즘이라고하며 관련 복잡성 클래스는 ZPP입니다. .
이토 쓰요시

@Tsuyoshi : 귀하의 의견에 감사드립니다. 그러나 검색 문제에 대한 라스 베이거스 유형 알고리즘을 알지 못합니다. 이것은 나의 질문이다.
arnab

고유 한 내쉬 평형을 찾기위한 무작위 알고리즘이 있다면 질문에 대답 할 것입니다.
워렌 슈디

아마도 생일 공격 ( en.wikipedia.org/wiki/Birthday_attack ) 과 관련 하여 요구 사항에 맞는 몇 가지 문제가 있습니까?
워렌 슈디

답변:


23

Shafi Goldwasser는 저와 그녀의 공동 저자가 수 이론 문제에 대해 정확하게 그러한 알고리즘을 조사하고 있다고 말했습니다. 다음이 알려져 있습니다.

  1. Lenstra는 주어진 프라임에서 2 차 비 잔류 모드를 찾는 알고리즘이 있음을 보여 주었다.

  2. Gat와 Goldwasser는 의 생성자를 찾는 알고리즘이 있음을 보여주었습니다 . 여기서 는 소수 대해 형식의 주어진 소수입니다 . p2q+1qZpp2q+1q

(나는 인용 가능한 참조를 모른다.) 또한 과 사이의 소수를 찾는 것에 대한 질문에 대한 지속적인 연구가있다 .2 Nn2n

편집 : Gat and Goldwasser의 논문이 게시되었습니다 : http://eccc.hpi-web.de/report/2011/136/ . 이 논문은 과 사이의 소수를 찾는 문제를 해결하지는 못한다 .2 Nn2n


1
가상 +1. 이것은 정말 흥미 롭습니다. 논문을 찾아보십시오.
András Salamon

2
메모에도 불구하고 나는 이것이 좋은 대답이기 때문에 단순히이 대답을 찬성했습니다. 다른 사람을 위해 좋은 답변을 올리는 데 문제가 있다고 생각하지 않습니다. 나는 이것 대해 메타 에 관한 토론을 시작했다 .
이토 쓰요시

1
메타 스레드에 대한 토론에 따라 메모를 제거하고 "커뮤니티 위키"로 만들었습니다.
arnab

arnab 언급 메타 스레드는 여기에서 찾을 수 있습니다 : meta.cstheory.stackexchange.com/q/607/873를 .
MS Dousti가

18

무작위 데이터 구조는 중요합니까?

있다 스킵 목록 정렬 연관 맵 데이터 구조입니다.

삽입, 검색 및 삭제와 같은 일반적인 작업의 실행 시간은 (예상 된 경우) 균형 검색 트리의 작업 시간과 동일합니다 (예 : . 그러나 데이터 구조는 때때로 제대로 수행 될 때 검색 트리 구현보다 훨씬 더 나은 상수 요소를 가지고 있다고 주장합니다 (이는 효율적이고 무작위적인 소스에 의존합니다). 더 나은 상수 요인은 아마도 재조정 (또는 유사한 작업)이 발생하지 않기 때문에 발생합니다.영형(로그)


감사! 이것은 분명히 중요하며 내 원래 질문에 대한 사소한 대답입니다. 잠재적 인 솔루션이 많은 프라임 찾기 문제와 더 유사하지만 문제가 필요했습니다.
arnab

그 생각의 기차에 점프 목록을 추가하십시오.
Raphael

13

Kelner와 Spielman의 무작위 다항식 심플 렉스 알고리즘은 어떻습니까? 선형 프로그램의 최적 정점을 찾습니다. 다항식 시간으로 실행되는 것으로 판명 된 결정 론적 단순 알고리즘은 알려져 있지 않으며, 많은 경우 알고리즘이 지수 시간을 갖도록하는 병리학 적 인스턴스를 구성 할 수 있습니다.

물론 다항식 내부 포인트 알고리즘이 있으므로 원하는 것이 아닙니다.


최적의 점수가 여러 개인 경우 Kelner-Spielman은 항상 같은 점수를 반환합니까?
Sasho Nikolov

3
일반 선형 프로그램에는 최적의 점이 하나만 있으므로 섭동을 사용하면 항상 동일한 최적 점을 반환하는 Kelner-Spielman의 변형을 만들 수 있습니다.
피터 쇼어

12

모두와 함께 완전한 이진 트리를 생각해 작업은이 나무의 무한한 가족 (각 하나를 구성 할 수있는 결정적 검색 알고리즘에 대해 (1)가 들어있는 잎을 찾을 수 있습니다 1. 포함하는 하나 개의 잎을 제외하고, 잎이 0을 포함 N은 )하는 알고리즘은 모든 리프를 확인한다. 따라서이 최악의 경우 결정 론적 알고리즘은 런타임 2 n을 예상했습니다 .22

이제 첫 번째 잎을 무작위로 무작위로 무작위로 선택한 다음 모든 연속적인 잎을 결정적으로 검사합니다 (처음부터 시작). 이것은 평균적으로 모든 잎의 절반을 조사한 후 1을 찾습니다. 따라서 무작위 알고리즘은 런타임 예상했습니다 .21

자격이 되나요?


좋은!! 실행 시간의 향상이 더 중요한 더 사소한 예를 찾고 있었지만 이것은 분명히 자격이 있습니다.
arnab

트리 구조가 필요하지 않습니다. 이것은 배열에서 작동합니다.
sdcvvc 2016 년

7

다항식 인수 분해 알고리즘이 원하는 예일 수 있습니다. 칸토어-Zassenhaus 알고리즘 사용은 유한 필드상에서 소정의 변량의 기약 다항식의 다항식 계수를 (고유 개까지 스케일링)을 계산하기 위해, 난수 입 크기 시간 다항식에 로그 P . 문제가 고유 한 답을 갖기를 원한다면, 모닉 다항식의 모멘텀 돌이킬 수없는 주요 요인을 요청할 수 있습니다. 내가 아는 한, p 가 작지 않다면 결정 론적 다항식 시간을 인수 분해하는 방법은 알려져 있지 않습니다 .에프로그

그건 그렇고, 우리는 다항식과 의 정도에서 시간 다항식에서 다항식의 결정 성을 결정적으로 테스트하는 방법을 알고 있기 때문에 위의 제로 오류 알고리즘을 만들 수 있습니다 . ( 강의 노트를 참조하십시오 .)로그



3

첫 번째 질문과 관련하여 Quicksort를 먼저 생각했지만 분명히 알 수 있습니다.

확률 론적 아이디어를 사용 하는 문자열 매칭 알고리즘 ( Nebel, 2006 )이있다. 그러나 이것이 기존의 가장 빠른 접근 방법인지는 알고 있으며 훈련을 위해 샘플이 필요합니다.


중간 값 찾기도 빠르지 만 크게 그렇지는 않습니다.
Aram Harrow

3

다음 STACS '97 논문은 귀하의 경우에 흥미로울 수 있습니다 . 테스트 인스턴스 생성의 복잡성 .

초록 : 최근 Watanabe는 주어진 NP 검색 문제를 평균적으로 효율적으로 해결하기 위해 알고리즘의 정확성과 평균 사례 동작을 테스트하기위한 새로운 프레임 워크를 제안했습니다. 기본 배포판과 비슷한 방식으로 인증 된 인스턴스를 임의로 생성하는 것이 좋습니다. 이 접근법에 대해 논의하고 NP oracle에 대한 비 적응 쿼리로 모든 NP 검색 문제에 대해 테스트 인스턴스를 생성 할 수 있음을 보여줍니다. 또한 Las Vegas와 Monte Carlo 유형의 테스트 인스턴스 생성기를 소개하고이 생성기를 사용하여 알고리즘이 평균적으로 정확하고 효율적인지 확인할 수 있습니다. 실제로 모든 RP 검색 문제에 대한 몬테카를로 발전기와 모든 ZPP 검색 문제에 대한 라스 베이거스 발전기를 만드는 것은 어렵지 않습니다. 반면에

특히, 12 조 이하의 384 페이지를보십시오.

ZPPRPZPPNPNPcoN


2

[AKS] 이전에 Primality에는 coRP 및 RP 알고리즘이있었습니다 (coRP의 경우 Miller-Rabin, RP의 경우 Adleman-Huang). 자연스럽게 제로 오류 확장은 오류를 로 푸시 할 때까지 두 가지를 동시에 실행하는 것입니다.1기음폴리 로그()


3
이 ... 테스트를 참조하고 찾을 수 없습니다
다나 Moshkovitz

검색 문제에 더 관심이있었습니다. 의사 결정 문제에는 Las Vegas 알고리즘이 있습니다.
arnab
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.