차수 -6 다항식의 근본 측면에서 간단한 닫힌 수식이 있습니다.
실제로 일반적인 공정 다이를 고려하는 것이 조금 더 쉽습니다. 디≥ 2 숫자로 표시된 얼굴 1 , 2 , … , d.
허락하다 이자형케이 같거나 초과하는 데 필요한 예상 롤 수 k . 에 대한 k ≤ 0 , 이자형케이= 0 그렇지 않으면 기대치가 롤의 수가 바로 앞의 값에 도달 할 것으로 예상하는 것보다 하나 이상입니다. k - d, k - d+ 1 , … , k − 1 , 어떻게
이자형케이= 1 +1디(이자형k - d+이자형k - d+ 1+ ⋯ +이자형k - 1) .(1)
이 선형 재귀 관계 는 다음과 같은 형식의 솔루션을 갖습니다.
이자형케이=2 K디+ 1+∑나는 = 1디ㅏ나는λ케이나는(2)
어디 λ나는 입니다 디 다항식의 복잡한 뿌리
티디−1디(티디− 1+티디− 2+ ⋯ + T+ 1 ) .(삼)
상수 ㅏ나는 솔루션을 적용하여 찾을 수 있습니다 ( 2 ) 가치에 k = - ( 일− 1 ) , − ( d− 2 ) , … , − 1 , 0 어디 이자형케이= 0모든 경우에. 이것은 일련의디 의 선형 방정식 디상수 및 고유 한 솔루션이 있습니다. 재발을 확인하여 솔루션이 작동하는지 확인할 수 있습니다.( 1 ) 모든 뿌리가 만족한다는 사실을 사용하여 ( 3 ) :
1 +1디∑j = 1디이자형k - j= 1 +1디∑j = 1디(2 ( k - j )디+ 1+∑나는 = 1디ㅏ나는λk - j나는)=2 K디+ 1+∑나는 = 1디ㅏ나는λk - d나는[1디( 1 +λ나는+ ⋯ +λ디− 1나는) ]=2 K디+ 1+∑나는 = 1디ㅏ나는λk - d나는λ디나는=2 K디+ 1+∑나는 = 1디ㅏ나는λ케이나는=이자형케이.
이 폐쇄 형 솔루션은 답변을 대략적으로 평가하고 정확하게 평가할 수있는 좋은 방법을 제공합니다. (작고 적당한 값의 경우k , 재발을 직접 적용하는 것은 효과적인 계산 기술입니다.) 예를 들어 디= 6 우리는 쉽게 계산할 수 있습니다
이자형1000000= 285714.761905 …
근사치의 경우 가장 큰 고유 루트가 있습니다. λ+= 1 결국 (충분히 큰 케이) 용어 λ케이+ 지배 할 것이다 디 용어 ( 2 ) .뿌리의 두 번째로 작은 규범에 따라 오류가 기하 급수적으로 감소 합니다 . 와 함께 예제를 계속k = 6 , 계수 λ+ 이다 ㅏ+= 0.4761905 그리고 가장 작은 표준은 0.7302500. (우연히, 다른 ㅏ나는 에 매우 가까운 경향이 1 따라서 우리는 이전 값을 다음과 같이 근사 할 수 있습니다.
이자형1000000≈2 ×1066 + 1+ 0.4761905 = 285714.761905 …
순서대로 오류가 0.7302500106≈10− 314368.
이 솔루션의 실용성을 보여주기 R
위해 평가할 함수를 반환하는 코드 는 다음과 같습니다.이자형케이 어떠한 것도 케이 (배정 밀도 부동 소수점 계산 범위 내) 및 지나치게 크지 않음 디 (한 번 끊어 질 것이다 디≫ 100) :
die <- function(d, mult=1, cnst=1, start=rep(0,d)) {
# Create the companion matrix (its eigenvalues are the lambdas).
X <- matrix(c(0,1,rep(0,d-1)),d,d+1)
X[, d] <- mult/d
lambda <- eigen(X[, 1:d], symmetric=FALSE, only.values=TRUE)$values
# Find the coefficients that agree with the starting values.
u <- 2*cnst/(d+1)
a <- solve(t(outer(lambda, 1:d, `^`)), start - u*((1-d):0))
# This function assumes the starting values are all real numbers.
f <- Vectorize(function(i) Re(sum(a * lambda ^ (i+d))) + u*i)
list(f=f, lambda=lambda, a=a, multiplier=mult, offset=cnst)
}
사용 예로서 여기에 대한 기대치를 계산합니다. k = 1 , 2 , … , 16 :
round(die(6)$f(1:10), 3)
1.000 1.167 1.361 1.588 1.853 2.161 2.522 2.775 3.043 3.324 3.613 3.906 4.197 4.476 4.760 5.046
그것이 반환하는 객체는 뿌리를 포함합니다 λ나는 그리고 그들의 승수 ㅏ나는추가 분석을 위해. 승수 배열의 첫 번째 성분은 유용한 계수입니다ㅏ+.
(다른 매개 변수가 무엇인지 궁금한 경우 die
실행 die(2, 2, 0, c(1,0))$f(1:10)
하고 출력을 인식하는지 확인하십시오 ;-). 이 일반화는 기능 개발 및 테스트에 도움이되었습니다.)