폭탄은 어디에 있습니까? 행과 열의 총계가 주어지면 확률을 어떻게 추정합니까?


14

이 질문은 Pokemon Soulsilver의 미니 게임에서 영감을 얻었습니다.

이 5x6 영역에 15 개의 폭탄이 숨겨져 있다고 상상해보십시오 (편집 : 최대 1 개의 폭탄 / 셀).

합계

이제 행 / 열 합계를 고려하여 특정 필드에서 폭탄을 찾을 확률을 어떻게 추정 할 수 있습니까?

열 5 (총 폭탄 = 5)를 보면 다음과 같이 생각할 수 있습니다.이 열에서 행 2에서 폭탄을 찾을 가능성은 행 1에서 폭탄을 찾을 확률의 두 배입니다.

직접 비례에 대한이 (잘못된) 가정은 기본적으로 표준 독립 테스트 작업 (예 : Chi-Square)을 잘못된 컨텍스트로 그리는 것으로 설명 할 수 있습니다.

카이-제곱

보시다시피 직접 비례는 100 % 이상의 확률 추정치로 이어지며 그 이전에도 잘못 될 것입니다.

그래서 가능한 모든 순열에 대한 계산 시뮬레이션을 수행하여 15 개의 폭탄을 배치 할 수있는 276 개의 고유 한 가능성을 이끌어 냈습니다. (주어진 행과 열 합계)

다음은 276 개 솔루션에 대한 평균입니다. 계산 솔루션

이것이 올바른 해결책이지만 지수 계산 작업으로 인해 추정 방법을 찾고 싶습니다.

내 질문은 지금 : 이것을 추정하기 위해 확립 된 통계 방법이 있습니까? 이것이 알려진 문제인지, 어떻게 호출되는지, 추천 할 수있는 논문 / 웹 사이트가 있는지 궁금합니다.


1
빠르고 쉬운 접근 : 더 많은 수의 행과 열을 위해 Monte Carlo 시뮬레이션을 수행 할 수 있습니다. 여기에서 가능한 구성의 랜덤 서브 샘플을 확인한 다음 총 가능성 수를 확인하십시오. 대략적인 솔루션을 제공합니다.
Tim

1
귀하의 계산 솔루션을 이해하지 못합니다. 셀의 숫자는 무엇입니까? 그들은 확실히 100 %를 더하지 않으며 PMF가 아닙니다. 그들은 또한 CDF와 같은 모양을 해달라고 오른쪽 / 아래 셀은 100 % 아니다
Aksakal

2
@Aksakal 주어진 셀에 폭탄이 포함되어있는 한계 확률입니다. 숫자는 보드의 총 폭탄 수인 15에 추가됩니다.
Dougal

2
두 마진이 독립적이라고 가정하면 마진에 조건부 테이블 분포 (Patefield 알고리즘을 통해)에서 샘플링하기가 비교적 간단합니다. 이것은 R에서 표준 분포에서 구현된다 r2dtable(도에 의해 사용하고 chisq.testfisher.test일부 상황에서).
Glen_b-복지 주 모니카

2
@Glen_b 그러나 Patefield 알고리즘에서 셀당 이벤트 수는 1 개로 제한되지 않습니다.
Jarle Tufto

답변:


4

솔루션 공간 (유효한 폭탄 구성)은 주어진 차수 순서로 이분 그래프로 볼 수 있습니다. (그리드는 이중 인접성 매트릭스입니다.) Markov Chain Monte Carlo (MCMC) 방법을 사용하여 해당 공간에 균일 한 분포를 생성 할 수 있습니다. 퍼즐 풀링에서 일련의 "스위치"를 사용하여 다른 솔루션에서 모든 솔루션을 얻을 수 있습니다. 다음과 같이 보입니다.

(xx)(xx)

이것이 빠른 혼합 특성을 가지고 있음이 입증되었습니다. 따라서 유효한 구성으로 시작하고 잠시 MCMC를 실행하도록 설정하면 솔루션에 대한 균일 한 분포가 근사치가되므로 원하는 확률을 평균적으로 지적 할 수 있습니다.

나는이 접근법과 그들의 계산 측면에 대해 모호하게 익숙하지만 적어도 이런 식으로 비 솔루션을 열거하지 않아도됩니다.

주제에 대한 문헌 시작 :
https://faculty.math.illinois.edu/~mlavrov/seminar/2018-erdos.pdf
https://arxiv.org/pdf/1701.07101.pdf
https : // www. tandfonline.com/doi/abs/10.1198/016214504000001303


놀라운 생각입니다! 나는 그것을 얻는다 생각한다! 나는 정의 된 양의 반복 (논문에서 찾을 것으로 예상되는)에 대해 알려진 솔루션을 혼합하고 그 후에 대부분의 솔루션이 발견되기를 바라면서 고유 솔루션에 대한 평균을 얻습니다. 정말 고마워!
KaPy3141

2
MCMC 는가
KaPy3141

@ KaPy3141 위의 행과 열 합계의 경우 arxiv 프리 프린트에서 사각형 루프 알고리즘 구현은 반복 횟수 만큼 알고리즘을 실행하더라도 276 개의 고유 한 상태 만 방문 합니다. 106
Jarle Tufto

@Aksakal이 제안한 열거가 더 효율적일 수 있음을 제안합니다.
Jarle Tufto

@JarleTufto이지만 OP는 276 개의 고유 한 (유효한) 상태 만 있다고 말합니다. 당신은 그들 모두를 발견했습니다!
벤 레이니 거

5

독특한 해결책은 없습니다

추가 가정을하지 않으면 진정한 이산 확률 분포를 복구 할 수 있다고 생각하지 않습니다. 귀하의 상황은 기본적으로 한계에서 공동 배포를 복구하는 문제입니다. 때로는 금융 리스크 관리와 같은 산업에서 copulas 를 사용하여 해결 하지만 일반적으로 지속적인 배포를 위해 해결됩니다.

존재, 독립적, AS 205

존재 문제 에서 한 셀에 하나 이상의 폭탄이 허용 되지 않습니다 . 다시 말하지만, 독립의 특별한 경우에는 비교적 효율적인 계산 솔루션이 있습니다.

FORTRAN을 알고 있으면 AS 205 알고리즘 : Ian Saunders, 알고리즘 AS 205 : 반복 된 행 총계가있는 R x C 테이블 열거, 적용된 통계, 볼륨 33, 번호 3, 1984, 340-352 페이지를 구현 하는 이 코드 를 사용할 수 있습니다 . @Glen_B가 언급 한 Panefield의 알고리즘과 관련이 있습니다.

이 알고리즘은 모든 프레즌스 테이블을 열거합니다. 즉, 한 폭탄 만 필드에있는 가능한 모든 테이블을 통과합니다. 또한 다중도, 즉 동일한 모양의 여러 테이블을 계산하고 일부 확률 (관심 사항이 아닌)을 계산합니다. 이 알고리즘을 사용하면 이전보다 빠르게 전체 열거를 실행할 수 있습니다.

독립성이 아닌 존재

AS 205 알고리즘은 행과 열이 독립적이지 않은 경우에 적용 할 수 있습니다. 이 경우 열거 논리에 의해 생성 된 각 테이블에 서로 다른 가중치를 적용해야합니다. 무게는 폭탄 배치 과정에 따라 다릅니다.

카운트, 독립

카운트 문제는 허용 하나 개 이상의 물론, 셀에 배치 폭탄을. 독립적 인 행과 열 개수 문제 의 특별한 경우 는 쉽습니다. 여기서 와 는 행과 열의 가장자리입니다. 예를 들어, 행 및 열 이므로 폭탄이 6 행에 있고 3 열이 있습니다. 실제로 첫 번째 테이블에서이 분포를 생성했습니다.Pij=Pi×PjPiPjP6=3/15=0.2P3=3/15=0.2P63=0.04

독립적, 독립형 Copulas 수

행과 열이 독립적이지 않은 카운트 문제를 해결하기 위해 별개의 copulas를 적용 할 수 있습니다. 그들은 문제가 있습니다 : 그들은 독특하지 않습니다. 그러나 쓸모없는 것은 아닙니다. 그래서 별개의 copulas를 적용하려고합니다. Genest, C. 및 J. Nešlehová (2007) 에서 이들에 대한 좋은 개요를 찾을 수 있습니다 . 카운트 데이터에 대한 copulas의 뇌관. 애스틴 불. 37 (2), 475–515.

Copulas는 일반적으로 명시 적으로 의존성을 유도하거나 데이터를 사용할 수있을 때 데이터에서 추정 할 수 있으므로 특히 유용합니다. 폭탄을 배치 할 때 행과 열의 의존성을 의미합니다. 예를 들어, 폭탄이 첫 번째 행인 경우 첫 번째 열일 수도 있습니다.

Kimeldorf와 Sampson copula를 데이터에 적용하여 하나 이상의 폭탄을 셀에 넣을 수 있다고 가정합니다 . 종속 변수의 접합부 :으로 정의된다 당신이 생각할 수 상관 계수의 아날로그로서 .θ

C(u,v)=(uθ+uθ1)1/θ
θ

독립적 인

의존성이 약한 의 경우부터 시작하겠습니다 . 여기서 우리는 다음과 같은 확률 (PMF)을 가지며 한계 PDF는 오른쪽과 아래쪽의 패널에도 표시됩니다.θ=0.000001

여기에 이미지 설명을 입력하십시오

열 5에서 두 번째 행 확률이 첫 번째 행보다 두 배 높은 확률을 갖는 것을 볼 수 있습니다. 이것은 당신이 당신의 질문에 암시하는 것처럼 보이는 것이 아닙니다. 물론 패널의 마진이 주파수와 일치하기 때문에 모든 확률은 최대 100 %가됩니다. 예를 들어, 아래쪽 패널의 열 5는 1/3을 표시하며 예상대로 총 15 개 중 5 개의 폭탄에 해당합니다.

긍정적 상관

과의 강력한 의존성 (양의 상관 관계)을 위해 다음과 같은 결과를 .θ=10

여기에 이미지 설명을 입력하십시오

음의 상관

더 강력하지만 음의 상관 관계 (종속성) 대해서도 동일합니다 .θ=0.2

여기에 이미지 설명을 입력하십시오

물론 모든 확률이 100 %까지 증가 함을 알 수 있습니다. 또한 종속성이 PMF의 모양에 미치는 영향을 확인할 수 있습니다. 긍정적 인 의존성 (상관)의 경우 대각선에 가장 높은 PMF가 집중되고 부정적인 의존성의 경우 대각선이 아닙니다.


답변과 copulas에 대한 흥미로운 링크에 대해 대단히 감사합니다! 불행히도, 나는 copulas를 사용한 적이 없으므로 셀 당 하나의 폭탄 만 시행하는 솔루션을 찾기가 어려울 것입니다.하지만 더 나은 이해가되면 확실히 시도 할 것입니다!
KaPy3141

@ KaPy3141, 문제를 해결하는 데 사용할 수있는 코드에 대한 참조를 추가했습니다. 그것은 F90에, 그러나 비교적 간단는 NumPy와 파이썬으로 변환
Aksakal

어떻게되는 접합부는 몇 가지 매개 변수의 문제에 대한 해결책? 를 어떻게 결정 하고 어떻게 그것이 답인지 어떻게 알 수 있습니까? (예를 들어, 대답에서 이상한 효과는 같은 한계 확률을 가진 행이 다른 셀 확률을 제공한다는 것입니다). 문제는 나에게 조합 문제처럼 보인다. θθ
Sextus Empiricus

매개 변수를 프로세스에 맞아야합니다. 생성 프로세스가 일관된 경우 문제는 순수한 조합입니다.
Aksakal

4

귀하의 질문 으로이 사실을 명확하게 밝히지는 않지만 폭탄은 처음에 셀을 교체하지 않고 간단한 임의 샘플링을 통해 배포된다고 가정합니다 (셀에 둘 이상의 폭탄이 포함될 수 없음). 제기 한 문제는 본질적으로 정확히 이론적으로 계산할 수 있지만 큰 매개 변수 값을 계산하기에는 계산할 수없는 확률 분포에 대한 추정 방법의 개발을 요구하는 것입니다.


정확한 솔루션이 존재하지만 계산 집약적

질문에서 지적했듯이 가능한 모든 할당에 대해 계산 검색을 수행하여 행 및 열 총계와 일치하는 할당을 식별 할 수 있습니다. 다음과 같이 공식적으로 진행할 수 있습니다. 우리가 그리드를 다루고 있고 교체하지 않고 간단한 무작위 샘플링을 통해 폭탄을 할당 한다고 가정하십시오 (따라서 각 셀은 하나 이상의 폭탄을 포함 할 수 없습니다).n×mb

하자 표시기 변수의 벡터 폭탄은 각각의 셀 내에 존재하는지 여부를 나타내는 수를하고하자 은 행과 열 합계의 해당 벡터를 나타냅니다. 함수를 정의하십시오. 이는 할당 벡터에서 행 및 열 합계로 맵핑됩니다.x=(x1,...,xnm)s=(r1,...,rn,c1,...,cm)S:xs

목표는 행 및 열 합계에 대한 지식에 따라 각 할당 벡터의 확률을 결정하는 것입니다. 단순 랜덤 샘플링에서 이 있으므로 조건부 관심 확률은 다음과 같습니다.P(x)1

P(x|s)=P(x,s)P(s)=P(x)I(S(x)=s)xP(x)I(S(x)=s)=I(S(x)=s)xI(S(x)=s)=1|Xs|I(S(x)=s)=U(x|Xs),

여기서 는 벡터 와 호환되는 모든 할당 벡터의 집합입니다 . 이것은 (단순한 폭탄 샘플링으로) . 즉, 폭탄에 대한 할당 벡터의 조건부 분포는 관찰 된 행 및 열 총계와 호환되는 모든 할당 벡터 세트에 대해 균일하다. 주어진 셀에서 폭탄의 한계 확률은이 공동 분포에 대해 한계를 설정함으로써 얻을 수 있습니다.Xs{x{0,1}nm|S(x)=s}sx|sU(Xs)

P(xij=1|s)=x:xij=1U(x|Xs)=|XijXs||Xs|.

여기서 는 번째 행과 번째 열의 셀에 폭탄이있는 모든 할당 벡터의 집합입니다 . 지금, 당신의 특정 문제에 당신이 세트 계산 그 발견 이므로 할당 벡터의 조건부 확률은 계산 한 할당 집합에 대해 균일합니다 (올바르게 수행했다고 가정). 이것은 문제에 대한 정확한 해결책입니다. 그러나 집합을 계산하는 것은 계산 집약적 이므로 , 일 때이 솔루션의 계산이 불가능할 수 있습니다Xij{x{0,1}nm|xij=1}ijXs|Xs|=276Xsnm또는 가 커진다.b


좋은 추정 방법 검색

집합을 계산할 수없는 경우 특정 셀에있는 폭탄의 한계 확률을 추정 할 수 있습니다. 나는이 문제에 대한 추정 방법을 제공하는 기존의 연구에 대해 알지 못하므로 그럴듯한 추정기를 개발 한 다음 컴퓨터 시뮬레이션을 사용하여 이에 충분히 낮은 매개 변수 값에 대한 정확한 솔루션에 대해 성능을 테스트해야합니다. 가능하다.Xs

순진한 경험적 추정기 : 초록색 테이블에서 제안하고 사용한 추정기는 다음과 같습니다.

P^(xij=1|s)=ribcjbb=ricjb.

이 추정 방법은 행과 열을 독립적으로 취급하고 행과 열 합계의 상대 주파수에 의해 특정 행 / 열에서 폭탄의 확률을 추정합니다. 이 추정기 가 원하는대로 모든 셀에 대해 를 합산하는 것은 간단합니다 . 불행히도, 경우에 따라 예상 확률보다 1을 초과 할 수 있다는 큰 단점이 있습니다. 그것은 견적 자에게 나쁜 재산입니다.b


심층적 인 답변에 감사드립니다! 실제로 내 녹색 차트에는 이미 최대 133 %의 값이 있습니다. 이 문제에 대한 인기있는 방법이 없으며 스스로 실험 해 볼 수 있음을 아는 것이 좋습니다! 가장 정확한 견적은 "녹색"접근 방식과 비슷하지만 P (행) / sum (P (행)) * P (c) / sum (P (cols))에 비례하여 폭탄을 할당하는 대신 허수 P (r) / (1-P (r)) / sum (행) 다음에 제품을 다시 가져옵니다. P (real) = P (imag) / (1 + P (imag). 이로 인해 P <1이됩니다. 이제는 (약간 위반 된) 행 / 열 합계를 계산적으로 적용해야한다고 생각합니다.
KaPy3141

@ KaPy3141 당신은 특정 폭탄이 셀에있는 값을 사용하고 (1보다 큰 문제가없는) 각 셀이 가지고있는 조건으로 그 분포에서 15 폭탄을 끌어내는 것으로 문제를 설명 할 수 있습니다 값 0 또는 1 (교체없이 그리기). 이 1을 초과하지 않는 확률을 제공합니다
섹스 투스 엠피 리 쿠스
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.