확률 쌍 쌍 스왑에서 무작위 순열을 생성하는 가장 효율적인 방법은 무엇입니까?


48

내가 관심있는 질문은 무작위 순열을 생성하는 것과 관련이 있습니다. 확률 적 쌍별 스왑 게이트를 기본 빌딩 블록으로 가정하면 요소를 균일하게 무작위로 치환하는 가장 효율적인 방법은 무엇 입니까? 여기서 나는 "확률적인 쌍별 스왑 게이트"를 각각의 게이트에 대해 자유롭게 선택 될 수있는 확률 를 갖는 선택된 요소 와 사이의 스왑 게이트를 구현하는 연산으로하고 그렇지 않으면 동일성을 취한다.i j pnijp

나는 이것이 일반적으로 임의 순열을 생성하는 방식이 아니라는 것을 알고 있습니다. 보통 Fisher-Yates 셔플과 같은 것을 사용할 수는 있지만 허용 된 연산이 다르기 때문에 내가 생각한 응용 프로그램에서는 작동하지 않습니다.

분명히 이것이 가능할 것입니다, 문제는 얼마나 효율적입니다. 이 목표를 달성하기 위해 필요한 최소한의 확률 적 스왑은 무엇입니까?

최신 정보:

Anthony Leverrier는 실제로 게이트를 사용하여 정확한 분포를 생성하는 방법을 제공하며 , Ito Tsuyoshi는 주석에서 동일한 스케일링으로 다른 접근법을 제공합니다. 그러나 지금까지 내가 본 가장 낮은 하한은 이며 로 확장됩니다 . 따라서 질문은 여전히 ​​열려 있습니다. 가 수행 할 수있는 최선입니까 (즉, 더 낮은 하한선이 있습니까)? 또는 더 효율적인 회로 제품군이 있습니까?log 2 ( n ! ) O ( n log n ) O ( n 2 )O(n2)log2(n!)O(nlogn)O(n2)

최신 정보:

여러 해답과 의견은 확률이 고정되어있는 확률 론적 스왑으로 구성된 회로를 제안했습니다 . 이러한 회로는 다음과 같은 이유로이 문제를 해결할 수 없습니다 (의견에서 들었습니다).12

개의 게이트 를 사용하는 회로를 상상해보십시오 . 그런 다음 등가 계산 경로가 있으므로 정수 k에 대해 확률 순열이 발생해야합니다 . 그러나 균일 한 분포를 위해서는 이 필요하며 으로 다시 쓸 수 있습니다 . 분명히 의 정수 값 대해서는 부터 만족할 수 없습니다( 이지만 입니다.2 m k 2 m k 2 m = 1m2mk2mk2m=1n!kn!=2mkn33|n!n332m

업데이트 (바운티를 제공하는 mjqxxxx의) :

제공되는 현상금은 (1) 게이트가 필요 하다는 증거 또는 (2) 미만의 게이트 를 사용 하는 대한 작동 회로 입니다.N N ( N - 1 ) / 2ω(nlogn)nn(n1)/2


8
@Anthony : 아마도 분명하지는 않지만 다음과 같이 할 수 있습니다. 회로 가 첫 번째 요소 의 순열을 균일하게 분포 시킨다고 상상해보십시오 . 이어서 위치 사이 (확률 0.5) 확률 스왑 다음 및 위치 위치에 대한 균일 한 난수 선택 생산할 예정 . 첫 번째 요소에 다시 적용하여이 작업을 수행하면 균일하게 무작위 분포를 얻게됩니다. n - 1 C n - 1 n n C n - 1Cn1Cn1nnCn1
Joe Fitzsimons

4
알겠습니다, 설명 감사합니다! 확률 적 스왑은 위치 과 위치 사이에 proba 가져야 합니다. , N - 1 N(n1)/nn1n
Anthony Leverrier

5
엔트로피가 필요한 경우 알고리즘에는 랜덤 비트 여기서 는 이진 엔트로피 함수입니다. 그 합계를 정확하게 계산할 수는 없지만 수학에 따르면 ... 최적은 적어도 입니다. (n1)h(1/2)+(n2)h(1/3)++(nk)h(1/(k+1))++h(1/n)O ( n log 2 ( n ) 2 ) O ( n log 2 ( n ) )h(.)O(nlog2(n)2)O(nlog2(n))
Anthony Leverrier

8
이것은 원하는 것과 다르지만, 일부 다항식 p에 대해 적어도 1 / p (n!)의 확률로 모든 순열을 생성하는 크기 O (n log n)의 회로 계열이 있습니다. 크기 O의 정렬 네트워크 를 고려하십시오. (n log n) 각 비교기를 확률 -1/2 스왑 게이트로 교체하십시오. 정렬 네트워크의 정확성으로 인해 모든 순열은 0이 아닌 확률로 발생해야하며, 반드시 1 / 2 ^ {O (n log n)} = 1 / poly (n!) 이상이어야합니다.
이토 쓰요시

3
원래 문제로 돌아 가기 Anthony가 설명한 O (n ^ 2) 솔루션은 선택 정렬을 나타내는 정렬 네트워크의 각 비교기를 적절한 확률로 확률 적 스왑 게이트로 대체하는 것으로 볼 수 있습니다. (더보기)
Ito

답변:


17

위의 주석에서 설명한 작동 알고리즘은 다음과 같습니다.

  • 확률로 랜덤 요소를 가져 와서 처음 시작할 위치에서 : 교환 위치 1 및 2 proba와 다음,도 2 및도 3을 proba와 ... 다음 및 proba와 .N 1 / 2 2 / 3 N - 1 N ( N - 1 ) / N1/nn1/22/3n1n(n1)/n
  • 동일한 절차를 적용하여 위치 에 임의의 요소를 가져옵니다 . 위치 로 프로브 위치 1과 2를 교체 한 다음 , proba 로 위치 와 을 위치시킵니다. .1 / 2 N - 2 N - 1 ( N - 2 ) / ( N - 1 )n11/2n2n1(n2)/(n1)
  • 기타

이 알고리즘에 필요한 게이트 수는 입니다.(n1)+(n2)++2+1=n(n1)/2=O(n2)


3
이 알고리즘은 버블 정렬과 연결되어 있습니다. 특히 크기 n의 모든 순열의 상태 공간을 고려하십시오. 두 번째보다 큰 첫 번째 요소가 1/2 일 확률은 1/2입니다. 처음 두 요소가 정렬되어 있다고 가정하면, proba 2nd element> 3rd element 2/3 등은 무엇입니까? 단계. 어떤 의미에서 그러한 회로를 구성하는 명백한 비효율적 인 방법을 제안합니다.
mkatkov

16

이것은 대답이나 새로운 정보가 아닙니다. 여기에서는이 문제와 정렬 네트워크 사이의 관계에 대한 주석에서 발생한 토론을 요약하려고합니다 . 이 게시물에서 모든 시간은 UTC이며 "설명"은 달리 명시되지 않는 한 질문에 대한 의견을 의미합니다.

확률 적 스왑 게이트 (두 개의 값을 무작위로 스왑)로 구성된 회로는 자연스럽게 정렬 네트워크를 생각 나게합니다. 실제로 현재 문제와 정렬 네트워크의 회로는 다음과 같은 방식으로 서로 관련됩니다.

  • 안토니 Leverrier 의해 용액 으로 N은 ( N -1) / 2 확률 스왑 게이트는 적절한 확률과 확률 스왑 게이트로 대체 비교기와 거품 정렬을위한 정렬 네트워크로 이해 될 수있다. 자세한 내용은 3 월 10 일 4:53의 mkatkov 의견을 참조하십시오. 선택 정렬을위한 정렬 네트워크도 같은 방식으로 사용될 수 있습니다. (3 월 7 일 23:04의 의견에서 Anthony의 회로를 선택 정렬로 설명했지만 정확하지 않습니다.)
  • 우리가 0이 아닌 확률로 모든 순열을 원하고 분포가 균일 한 것을 신경 쓰지 않는다면 모든 비교 네트워크가 확률 -1/2 스왑 게이트로 대체 될 때 모든 정렬 네트워크가 작동합니다. 우리가 O ( n log n ) 비교기 와 함께 정렬 네트워크를 사용하는 경우 결과 회로 는 3 월의 내 의견에서 볼 수 있듯이 적어도 1/2 O ( n log n ) = 1 / poly ( n !) 확률로 모든 순열을 생성합니다 7 22:59.
  • 이 문제에서는 확률 적 스왑 게이트가 독립적으로 작동해야합니다. 이 제한을 제거하면 3 월 7 일 23:08의 의견과 3 월 8 일 14:07에 자세히 설명 된 user1749의 주석에서 언급 한 것처럼 모든 정렬 네트워크를 균일 분포를 생성하는 회로로 변환 할 수 있습니다.

이러한 사실은이 문제가 네트워크 정렬과 밀접한 관련이 있음을 암시합니다. 그러나 Peter Taylor는 그 관계가 그리 가깝지 않다는 증거를 발견했습니다. 즉, 비교기를 적절한 확률을 갖는 확률 적 스왑 게이트로 대체함으로써 모든 분류 네트워크가 원하는 회로로 변환 될 수있는 것은 아니다. n = 4에 대한 5 개의 비교기 정렬 네트워크 가 이에 대한 반례입니다. 3 월 10 일 11시 8 분과 3 월 10 일 14시 1 분에 그의 의견을 참조하십시오.


3
@ mkatkov : 3 ~ 4 개의 삭제 된 답변을 보았으며 어느 것이 누구인지 기억하지 못합니다. 죄송합니다. n (n-1) / 2 게이트 미만의 솔루션을 찾은 경우 전체 구성을 알고 싶습니다 (그리고 mjqxxxx의 현상금을 훔치지 않아야합니다 :)).
이토 쓰요시

2
@ mkatkov : 나는 여전히 회의적입니다. 이 게시물의 마지막 단락에서 썼 듯이 Peter Taylor는 n = 4의 5 개 비교기 정렬 네트워크를 비교기를 확률 적 스왑 게이트로 교체하여 현재 문제에 대한 솔루션으로 변환 할 수 없음을 발견했습니다. 이는 논리가 모든 정렬 네트워크에 대해 작동 할 수는 없지만 홀수-짝수 병합 정렬에 대해 작동 할 가능성을 배제하지는 않습니다.
Ito Tsuyoshi

1
@ mkatkov :이 유형의 솔루션이 작동하지 않는 이유는 (또는 적어도 작동 예제가 표시되지 않은 이유는) 페어별로 정렬 네트워크의 스왑 게이트가 상관 관계가 높은 방식으로 발생하기 때문입니다. 이 문제에서 모든 게이트는 독립적으로 작동하므로 가능한 회로 공간이 매우 다릅니다.
mjqxxxx

1
@mkatbov에서 Anthony 네트워크의 각 단계는 m 개의 입력 중 하나를 선택합니다 (m의 범위는 n에서 2까지). m-1 게이트 미만의 m 입력 중 하나를 선택할 수 없으므로 특히 log m 게이트로는 수행 할 수 없습니다. 때리는 것은 일종의 분할 및 정복 접근법을 요구할 것입니다. O(n2)
피터 테일러

3
@Tsuyoshi, Yuval과 나는 대해 가능한 모든 5 게이트 솔루션을 분석 하고 모두 제거하여 모든 정렬 네트워크가 균일 한 순열 네트워크로 변환 될 수있는 결과를 강화하지는 않습니다. 최적의 균일 순열 네트워크는 최적의 정렬 네트워크보다 더 많은 게이트가 필요합니다. n=4
피터 테일러

15

이것은 완전한 대답은 아니지만 유용 할 수있는 결과를 포함하고 , 가능한 5 게이트 솔루션을 2500 개 열거하기 쉬운 경우로 제한하는 의 경우에 대한 제약을 얻기 위해 적용합니다 .n=4

먼저 일반적인 결과 : 객체 를 치환하는 솔루션 에는 확률이있는 스왑이 있어야 합니다.n - 1 1nn112

증명 : 차수 의 순열의 순열 표현을 고려하십시오 . 이들은 행렬들 만족시키는 입니다. 확률 갖는 와 사이의 스왑을 고려하십시오 . 이것은 를 나타냅니다 (순환을 나타내는주기 표기법 사용). 표현 이론 또는 마르코프 항에서이 행렬에 의한 곱셈 을 확률 순열 을 적용하고 확률 변경하지 않는 것으로 생각할 수 있습니다 .n × n A π ( A π ) i , j = [ i = π ( j ) ] i j p ( 1 - p ) I + p A ( i j ) ( i j ) p 1 - pnn×nAπ(Aπ)i,j=[i=π(j)]ijp(1p)I+pA(ij)(ij)p1p

따라서 순열 네트워크는 이러한 행렬 곱셈의 체인입니다. 우리는 행렬로 시작하고 최종 결과는 매트릭스 될 것 곳 , 그래서 우리는 순위의 매트릭스에서가는 순위의 매트릭스에 곱셈에 의해 즉, 순위가 만큼 감소합니다 .U i , j = 1U n1n-1Ui,j=1nn1n1

행렬 의 순위를 고려할 때 , 우리는 그것들이 본질적으로 작은 과 별 개인 정체성 행렬임을 알 수 있습니다 이므로 아니면 전체 순위를 가지며 ,이 경우 순위는 입니다.( 1 p p p 1 p ) p = 1(1p)I+pA(ij)(1ppp1p) n-1p=12n1

실베스터의 행렬 부등식을 적용하면 각 스왑은 인 경우에만 순위가 감소 하고이 조건이 충족되면 1 이하로 감소합니다. 따라서 적어도 스왑이 필요합니다 확률 . n-11p=12n112

Anthony Leverrier의 네트워크가이를 달성하기 때문에이 한계를 강화할 수 없습니다.


사례 . 우리는 이미 6 개의 게이트가있는 솔루션을 가지고 있으므로 5 개의 게이트가있는 솔루션이 가능한지 여부는 의문입니다. 이제 게이트 중 3 개 이상이 50/50 스왑이어야한다는 것을 알고 있으므로 두 개의 "자유"확률 인 와 있습니다. 32 개의 가능한 이벤트 (각 2 개의 결과가있는 5 개의 독립적 인 이벤트)와 개의 이벤트가 있습니다 버킷에는 각각 하나 이상의 이벤트가 포함되어야합니다. 이벤트는 확률 으로 8 개, 확률 으로 8 개, 확률 및 확률이 입니다.p q 4 ! = 24 p qn=4pq4!=24¯ p qpq8 p ¯ qp¯q8¯ p ¯ qpq¯8p¯q¯8

빈 버킷이없는 24 개의 버킷에 32 개의 이벤트가 있으면 적어도 16 개의 버킷에 정확히 하나의 이벤트가 포함되므로 위에서 주어진 4 가지 확률 중 2 개 이상은 . 대칭을 고려하면 또는 있습니다. pq= ¯ p q=1124 pq= ¯ p ¯ q =1pq=p¯q=13pq=p¯q¯=13

첫 번째 경우는 , ( 보정 또는 , 대칭 해제)을 제공합니다. 두 번째 경우는 이므로 이므로 실제 솔루션은 없습니다. q=2p=p¯=12 q=1q=23 pq=1pq+pqpq=p(1p)=1q=13pq=1pq+pqpq=p(1p)=13

따라서 5- 게이트 솔루션이있는 경우 확률 게이트 4 개와 확률 또는 게이트 있습니다. 첫 번째 스왑은 이고 두 번째 스왑은 또는 . 다른 3 개는 5 개의 가능성을 가지고 있습니다. 왜냐하면 같은 스왑을 두 번 연속해서 수행 할 점이 없기 때문입니다. 따라서 우리는 스왑 시퀀스를 고려하고 10 가지의 확률을 배정하여 2500 개의 사례를 기계적으로 열거하고 테스트 할 수 있습니다. 112 213 0102232×53230102232×53

업데이트 : Yuval Filmus와 나는 사건을 열거하고 테스트했으며 해결책을 찾지 못했기 때문에 대한 최적의 솔루션 은 6 게이트를 포함하며 6 게이트 솔루션의 예는 다른 답변에서 찾을 수 있습니다.n=4


2
내 사례 열거가 더 짧은 예제를 생성하지 못했습니다.
Yuval Filmus

... 수정 후에도.
Yuval Filmus

1
훌륭합니다. 아주 좋은 관찰입니다.
Joe Fitzsimons 2012 년

1
@mjqxxxx, 나는 9 게이트 솔루션을 검색 할 때 약 104 백만 건을 고려해야한다고 생각하지만 (이것은 영리하게 조금 줄어들 수 있지만) 각 경우에 대해 120 방정식을 계산할 것입니다 교차 항이있는 5 개의 변수와 솔루션 확인. 아마도 표준 데스크톱 컴퓨터에서 가능할 수도 있지만 가능한 확률 값을 쉽게 제한 할 수 없기 때문에 약간의 노력이 필요합니다. n=5
피터 테일러

4
나는 대답이 하한에 비해 점근 적으로 개선 되거나 상한 에 대한 개선을 제공하지는 않지만, 현상금을 수여합니다. 는 단일 사소한 경우에 최적입니다. N ( NΩ(nlogn), N ( N - 1 ) / 2n(n1)/2n(n1)/2
mjqxxxx

14

다음은 새롭고 관련된 정보 인 것 같습니다.

논문 [CKKL99]는 깊이 O (log n)의 스위칭 네트워크를 사용하여 총 n (n log n) 비교기를 사용하여 n 요소의 균일 한 순열에 1 / n을 얻는 방법을 보여줍니다.

이 구성은 명시 적이 지 않지만 수심을 polylog (n)으로 늘리면 명시적일 수 있습니다. 자세한 내용이 포함 된 용지 [CKKL01]의 포인터를 참조하십시오.

이전 의견은 이미 O (n log n) 스위치가 충분하다는 결과를 지적했지만, 네트워크를 전환 할 때 비교되는 요소가 고정되어 있다는 차이점이 있습니다.


[CKKL99] Artur Czumaj, Przemyslawa Kanarek, Miroslaw Kutylowski 및 Krzysztof Lorys. 분산 된 확률 적 프로세스를 통한 지연된 경로 커플 링 및 임의 순열 생성. 불연속 알고리즘 심포지엄 (SODA), 271 페이지 {280, 1999.

[CKKL01] Artur Czumaj, Przemyslawa Kanarek, Miroslaw Kutylowski 및 Krzysztof Lorys. 랜덤 순열을 생성하기위한 스위칭 네트워크, 2001.


고마워, 그것은 확실히 알고 유용합니다. 그러나 여전히 정확한 분포를 생성하기위한 게이트 번호에 대해 알고 싶습니다.
Joe Fitzsimons

12

다음은 대한 흥미로운 솔루션입니다 . 동일한 아이디어가 에도 적용됩니다 .n = 6n=4n=6

확률 스위치 부터 시작하십시오 . 을 , 을 줄이면 상황에 있습니다. 확률 스위치 를 적용하십시오 . 결과는 다음 움직임은 확률이 입니다 . 따라서 이전 단계의 결과가 (사례 A) 또는 형식 인 경우에만 관심이 있습니다.(0,1),(2,3)1/20,1X2,3YXXYY(0,3),(1,2)p

XXYY w.p. (1p)2,YYXX w.p. p2,XYXY w.p. p(1p),YXYX w.p. p(1p)
(0,2),(1,3)1/2XXYY/YYXXXYXY/YXYX (케이스 B). A의 경우 이러한 스위치는 보다 균일 한 확률로 . B의 경우에는 효과가 없습니다. 그러므로 는 충족해야합니다 주어진 결과는 균일합니다.XXYY/XYYX/YXXY/YYXXp
p(1p)=1/6p=3±36.

에서도 비슷한 아이디어가 적용됩니다. 먼저 각 반을 무작위로 정렬 한 다음 "병합"합니다. 그러나 인 경우에도 반쪽을 올바르게 병합하는 방법을 볼 수 없습니다.n=6n=8

이 솔루션의 흥미로운 점은 이상한 확률 입니다.p

참고로, 아마도 우리를 도울 수있는 확률 는 로 주어집니다 . 여기서 은 모든 조옮김에서 의 모든 표현의 모든 고유 값을 넘습니다 .p1/(1λ)λ0Sn


1
정수 대해 확률을 로 제한하면 할 수있는 최선의 방법 이라는 합리적인 증거가 있다고 생각하기 때문에 의 이상한 값 은 실제로 고무적 입니다. p1/kkO(n2)
Joe Fitzsimons

5
비슷한 의미에서 여전히 이상한 2n 요소에 대한 약간 다른 방법은 첫 번째 n 요소를 셔플하고 마지막 n 요소를 셔플하고 i = 1에 대해 확률 p_i로 (i, i + n)을 스왑하는 것입니다. , 처음 n 개의 요소를 섞고 마지막 n 개의 요소를 섞습니다. 확률 p_i는 n 개의 스왑 게이트 화재 중 정확히 k가 과 같고 확률 p_i가 다음과 같이 주어 지도록 선택해야합니다. 1 + x_i) / 2 여기서 x_1,…, x_n은 Legendre 다항식 P_n 의 근입니다 . (더보기)(nk)2/(2nn)
이토 쓰요시

6
(계속) 내가 설명한 변형에 대한 실망스러운 점은 n이 2의 거듭 제곱 일 때, 즉 버블 정렬과 정확히 같은 수의 게이트 일 때 n (n-1) / 2 확률 적 스왑이 필요하다는 것입니다. Anthony Leverrier의 솔루션.
이토 쓰요시

@ 쓰요시, 당신의 구성은 분명히 정확하지만, 그것이 필요한 것 이상을하고 있는지 궁금합니다. 나는 순간에 분석을 통해 작업 시간이 없어,하지만 당신은 다음 할 경우, 당신은 가치가 있는지 여부를 고려 찾을 수 있습니다 등을 그 ; ; ; ; 그런 다음 Legendre 루트의 적절한 순열을 적용하고 다른 분기를 채울 수 있습니다. 0 1 , p = 1p0,p101,p=1223,p=1202,p=p013,p=p1
Peter Taylor

7

확률 적으로 쌍별 스왑으로 구성된 회로를 사용하여 각 블록의 길이가 인 문자열 를 무작위로 문제를 고려하십시오 . 즉, s 및 s가있는 모든 문자열 은 지정된 입력이 주어지면 회로의 출력이 동일해야합니다. 하자 이 문제에 대한 최적의 회로, 그리고하자 원래의 문제 (랜덤 셔플 링을위한 최적의 회로 일 요소). 랜덤 순열을 적용하면 및 를 무작위로 인터리빙하기에 충분 하므로XX..XY..YYn(2n)!/(n!)2n Xn YB2nC2n2nXY|B2n||C2n| . 반면에 , 첫 요소를 섞고 마지막 요소를 마지막으로 회로 적용하여 요소를 섞을 수 있습니다 . 이는 입니다. 이 두 가지 경계를 결합하면 다음과 같은 결과를 얻을 수 있습니다.2nnnB2n|C2n|2|Cn|+|B2n|

  • | C 2 N | o ( n 2 )|B2n| 및 는 모두 이거나 둘 다 아닙니다.|C2n|o(n2)

우리는이 점에서 적어도 두 가지 문제가 똑같이 어렵다는 것을 알았습니다. 셔플 문제가 더 쉬울 것으로 예상 할 수 있기 때문에이 결과는 다소 놀랍습니다 . 특히, 엔트로피 인수는 가 이지만 가 .| B 2 N | Ω ( n ) | C 2 N | Ω는 ( N 로그 없음을 )XY|B2n|Ω(n)|C2n|Ω(nlogn)


7

Diaconis and Shahshahani 1981, "임의의 전치로 난수 순열 생성하기"는 1/2 n log n의 임의 전치 (주 : 여기에 "O"가 없음)로 인해 순열이 균일하게 가깝습니다 (총 변동 거리). 응용 프로그램에서 허용 된 것이이 결과를 사용할 수 있는지 확실하지 않지만 컷오프 현상의 예이므로 매우 빠르며 타이트합니다. 비슷한 결과에 대한 조사는 Saloff-Coste의 유한 그룹의 랜덤 워크를 참조하십시오.


1
그리고 아마도 거의 임의의 순열 두 개를 구성하여 훨씬 더 임의의 순열을 만들 수 있습니다.
mjqxxxx

7
... 그러나 저자가 특정 요소 쌍의 확률 적 전치가 아니라 무작위로 선택된 요소 쌍의 전치를 고려하기 때문에 이것은 실제로 동일한 문제는 아닙니다 (정확한 해결책보다는 근사치조차도 허용 함).
mjqxxxx

5

이것은 실제로 주석이지만 주석으로 게시하기에는 너무 깁니다. 대칭 그룹표현 이론이 더 나은 하한을 증명하는 데 유용 할 수 있다고 생각합니다. 나는 표현 이론에 대해 거의 아무것도 알지 못하고 막을 내릴지도 모르지만 그것이 왜 현재 문제와 관련이 있는지 설명해 드리겠습니다.

확률 적 스왑 게이트로 구성된 회로의 동작은 n 개의 요소 에 대한 순열 그룹 인 S n에 대한 확률 분포 p 로 완전히 지정할 수 있습니다 . 순열 g ∈S ni 번째 출력이 모든 i … {1,…, n }에 대해 g ( i ) 번째 입력 인 이벤트로 생각할 수 있습니다 . 이제 확률 분포 p 를 공식 합계 ∑ g ∈S n p ( g ) g로 나타 냅니다. 예를 들어, 와이어 i확률 p를 갖는 j 는 (1- p ) e + p τ ij 로 표현되며 , 여기서 e ∈S n 은 항등 요소이고 τ ij ∈S nij 사이의 전이 입니다.

이 공식적인 합에 대한 흥미로운 사실은 두 개의 독립적 인 회로의 연결 동작이 공식적인 합의 곱으로 공식적으로 설명 될 수 있다는 것입니다. 즉, 회로 C 1C 2 의 동작이 각각 공식 합 a 1 = ∑ g ∈S n p 1 ( g ) ga 2 = ∑ g ∈S n p 2 ( g ) g으로 표시 되면, 회로 C 1 의 동작, 이어서 C 2는 ∑ g 1 , g 2 ∈S n p 1 ( g 1 ) p 2 ( g 2 ) g 1 g 2 = a 1 a 2로 표시 됩니다.

따라서, 소망 회로 m 확률 스왑 정확하게 합 작성하는 방법에 대응한다 (1 / N을 !) Σ g ∈S N 개의 g 의 생성물로서 m의 형태 (1이며, 각각의 합계 (P) ) E + p τ ij . 우리는 최소 m 개의 요소 를 알고 싶습니다 .

공식적인 합 ∑ g ∈S n f ( g ) g , 여기서 f 는 자연적으로 정의 된 덧셈과 곱셈을 갖춘 Sn 에서 ℂ 까지의 함수 이며, 대수학 ℂ [S n ] 이라는 고리를 형성합니다 . 그룹 대수학은 그룹의 표현 이론과 밀접한 관련이 있으며, 우리 모두가 알고 두려워하는 깊은 이론입니다. 이것은 표현 이론의 어떤 것이 현재의 문제에 적용될 수 있다고 생각합니다.

또는 아마도 이것이 방금 가져온 것입니다.


2
이것이 줄어드는 것입니다. 대칭 그룹에는 여러 가지 작업으로 전치에 대해 명시 적으로 계산할 수있는 표현이 많이 있습니다 (일반적으로 전치에 대해서만 명시 적으로 계산됩니다 ). 각 표현의 초기 값은 적절한 항등 행렬입니다. 확률 적 스왑을 적용하면 각 표현에 . 여기서 는 수행 된 스왑 에서의 표현 값입니다 . (계속)(k,k+1)(1p)I+pAijAij(ij)
Yuval Filmus

2
출력이 균일 해지려면 식별 표현 이외의 모든 표현이 0이어야합니다. 따라서 확률 는 적어도 일부 행렬 이 단수 가되도록 선택해야합니다 . 각 표현에 대한 행렬 는 다른 고유 벡터를 가지므로 특정 표현을 0으로 강제하는 조건이 확실하지 않습니다. (계속)p(1p)I+pAijAij
Yuval Filmus

3
그러나 모든 조옮김이 표현의 평균 순위를 최대 만큼 줄인다는 것을 증명할 수 있다면, 하한을 얻게 됩니다. 이러한 표현은 각 표현과 각 조옮김에 해당하는 고유 벡터를 알고 있으면 입증 할 수 있습니다. 이 정보는 원칙적으로 해결 될 수 있지만,이 방법으로 사소한 것이 생성 될 것이라는 보장은 없습니다. 1/n2n2
Yuval Filmus

1
(계속) 및이 선형 변환은 n_n 순열 행렬에 의한 S_n의 표현에서 발생하는 행렬이다. n-1은 게이트 수의 하한으로 사소하지만 (엔트로피 인수는 이미 더 낮은 하한을 제공합니다), 내 희망은 다른 표현으로 인수를 일반화하여 더 나은 하한을 얻을 수 있기를 바랍니다. 총 게이트 수
이토 쓰요시

4
@Yuval, @Peter : 모든 표현에 대해 p = 1 / 2가 아니라면 (1−p) I + pA_ {ij}는 특이 적이 지 않은 것으로 나타났습니다 (A_ {ij} ^ 2 = I는 A_ {ij }는 ± 1입니다. 따라서 순위를 계산하는 것은 Peter가 이미 최적으로 수행 한 확률 -1/2 게이트의 수를 하한에 대해서만 유용합니다. 다시 말해,이 이론에서 내가 제시 한 방식으로 표현 이론이 유용하다면, 행렬의 수를 세는 것 이외의 것이 필요합니다! 그것이 현실적인지 확실하지 않습니다.
Ito Tsuyoshi

1

Anthony의 알고리즘은 처음 두 번의 확률 적 스왑 후 다음 프로 시저 반복을 시작하여 병렬로 실행될 수 있으므로 런타임이 발생합니다.O(n2)O(n)


4
이 질문에 대한 관련 복잡성 측정은 런타임이 아니라 게이트 수라고 생각합니다.
Anthony Leverrier

3
@Anthony는 내가 관심이있는 것이 단순히 필요한 최소 게이트 수라고 정확합니다.
Joe Fitzsimons 1

0

올바르게 이해하면 회로에서 모든 순열을 생성하려면 최소 확률 적 게이트가 필요하지만 최소 회로를 구성하는 방법을 잘 모르겠습니다.log2(n!)

최신 정보:

Mergesort 알고리즘을 사용하고 모든 비교를 임의의 선택으로 적절한 확률로 바꾸면 원하는 회로를 얻을 수 있다고 생각합니다.


2
나는 이것을 당신이 위에서 준 probabilitsic swap gate 모델로 어떻게 번역 할 것인지 확실하지 않습니다. 확률 적 스왑이 어떻게 비교를 대체하고 여전히 무작위 분포를 달성하는지 알 수 없습니다. 따라서 왜 이것이 최적 일지 잘 모르겠습니다.
Joe Fitzsimons

1
그리고 그렇습니다. 은 최소이지만 이것은 입니다. log2(n!)O(nlog(n))
Joe Fitzsimons

1
가정 하고 에 유도를 진행하십시오 . 길이가 두 개의 임의 순열이 있습니다. 이들을 무작위로 병합하는 경우 (즉, 무작위로 선택된 하위 순열에서 다음 요소를 가져옴) 병합 된 결과는 확실히 임의적이어야합니다. "좌"하위 순열의 요소를 갖는 위치 의 확률은 대칭에 의해 1/2이다. 왼쪽 하위 순열의 요소를 갖는 조건에서 균일하게 임의의 요소를 가져야합니다. 이런 식으로 결과 순열이 실제로 임의임을 알 수 있습니다. n=2kk2k1i
Andrew D. King

1
그것은 또한 mergesort를 제안했을 때의 나의 생각의 선이었습니다. 순열을 수행했는지 여부를 알려주고 조건을 제어 할 제어 입력이 없습니다.
Antonio Valerio Miceli-Barone

3
@Andrew : 질문에 설명 된 게이트를 사용하여 "임의로 병합"하는 방법을 모르겠습니다.
Joe Fitzsimons

0

다음 답변은 잘못되었지만 (@joe fitzsimon의 의견 참조) 시작점으로 유용 할 수 있습니다

스케치 제안이 있습니다. 나는 그것이 (!) 작동하는지 직접 확인 했지만 결과가 이상으로 균일하다는 증거는 없습니다 .O(nlogn)n=4n=4

비트 에서 균일 한 랜덤 순열을 생성 하는 회로 이 있다고 가정하십시오 . 레 비트 스왑 확률 스왑 게이트 및 확률 1/2과 확률 아무것도하지 않는다 . 비트에 작용 하는 다음 회로 .CnnSi,j12ij1/2C2n2n

  1. 1kn , 게이트 ;Sk,k+n1/2
  2. 처음 비트 에 을 적용하십시오 .Cnn
  3. 마지막 비트 에 을 적용하십시오 .Cnn
  4. 1kn , 게이트 .Sk,k+n1/2

비트 과 이 순열의 동일한 절반에 도달 할 수 있도록 단계가 필요합니다. 대칭에 의해 4 단계가 필요합니다. 이 솔루션이면 게이트를 역순으로 적용하여 얻은 솔루션도 솔루션입니다.1n+1C2nC2n1

이 회로 제품군의 크기는 다음과 같은 재귀 관계를 . , 분명히 입니다. 그런 다음 을 쉽게 볼 수 있습니다 .

|C2n|=2|Cn|+2n
|C1|=0|Cn|=nlogn

그렇다면 분명한 질문이 남아 있습니다. 이러한 회로는 균일 한 순열을 수행합니까? 아니요, 아래 첫 번째 의견 참조


6
나는 이것들이 균일 한 순열을 수행한다고 믿지 않습니다. 사실, 확률을 1/2로 고정하면 그러한 게이트로 정확하게 할 수 없다고 생각합니다. 그 이유는 간단합니다. 개의 게이트 를 사용하는 회로를 상상해보십시오 . 그런 다음 등가 계산 경로가 있으므로 정수 대해 확률 순열이 발생해야합니다 . 그러나 균일 한 분포를 위해서는 합니다. 의 정수 값 대해서는 분명히 만족할 수 없습니다 . 2 m k 2 m k k 2 m = 1m2mk2mkkn3k2m=1n!kn3
Joe Fitzsimons

과연. 나는 의 균일 성을 점검하는 것도 잊었다 .n=4
Frédéric Grosshans
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.