문제

일부 속도 임계 코드에서 베타 분포가있는 임의 숫자를 생성해야합니다. 현재 Numerics4J 라이브러리의 BetarAndomVariable () 클래스를 사용하고 있지만 현재 코드 CPU 사용량의 약 95%를 차지하고 있습니다!

누구 든지이 임의의 숫자를 생성하는 더 빠른 방법을 추천 할 수 있습니까?

도움이 되었습니까?

해결책

당신은 볼 수 있습니다 Numpy Random Number Generator. C이지만 코드는 비교적 읽기 쉽고 허용 적으로 라이센스가 부여되므로 Java로 쉽게 포팅 할 수 있습니다. Java가 표준 라이브러리에 하나를 갖기 때문에 기본 Mersenne Twister 발전기를 포트 할 필요는 없습니다. 나는 Numpy Random Number Generator의 대부분을 D로 포팅하고 매우 효율적이라는 것을 알았으며 아마도 Java에서 동일하게 찾을 수 있습니다.

다른 팁

여러 응용 프로그램에서 유용한 Mersenne Twister 알고리즘의 더 빠른 Java 구현은 다음과 같습니다. http://www.cs.gmu.edu/~sean/research/

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top