×

使用rngstream在C++和R中并行生成随机数。 (英语) Zbl 1306.65078号

摘要:RngStreams软件包为在并行处理环境中创建独立随机数流以进行模拟的问题提供了一个可行的解决方案。本文介绍了通过OpenMP或MPI并行化的C++程序有效使用RngStreams的技术。还描述了通过并行和rstream包从R中的RngStreams访问主干生成器的方法。文中的思想通过一个简单的运行示例和一个蒙特卡罗积分应用程序进行了说明。

MSC公司:

65立方厘米 数值分析中的随机数生成
62-08 统计问题的计算方法
PDF格式BibTeX公司 XML格式引用

参考文献:

[1] Anderson N,Titterington D(1970)同时生成的伪随机均匀偏差序列之间的互相关。统计计算16:11-15
[2] Bock R,Lieberman M(1970)拟合二分评分项目的反应模型。心理测量学35:179-197·doi:10.1007/BF02291262
[3] Cenacchi G,De Matteis A(1970)比较蒙特卡罗计算的伪随机数。数字数学16:11-15·Zbl 0187.12802号 ·doi:10.1007/BF02162402
[4] Chapman B,Jost G,van der Pas R(2001)使用OpenMP:可移植共享内存并行编程。麻省理工学院出版社,剑桥
[5] De Matteis A,Pagnutti S(1988)随机数生成器的并行化和长程相关。数理53:595-608·Zbl 0633.65006号 ·doi:10.1007/BF01397554
[6] De Matteis A,Pagnutti S(1990)线性和非线性随机数生成器中的长程相关。并行计算14:207-210·Zbl 0712.65005号 ·doi:10.1016/0167-8191(90)90108-L
[7] Etacher K(1999)关于CRAY系统随机数生成器。模拟72:163-169·Zbl 1036.68633号 ·doi:10.1177/003754979907200308
[8] Eugster MJA、Knaus J、Porzelius C、Schmidberger M、Vicedo E(2011)《使用R.Comput Stat进行并行计算的实践教程》26:219-239·Zbl 1304.65030号 ·doi:10.1007/s00180-010-0206-4
[9] Gentle J(2003)随机数生成和蒙特卡罗方法。纽约州施普林格·Zbl 1028.65004号
[10] Haramoto H,Matsumoto M,Nishimura T,Panneton F,L’Ecuyer P(2008)\[{\cal F}_2\]F2线性随机数生成器的有效超前。信息J计算20:385-390·Zbl 1243.65006号 ·doi:10.1287/ijoc.1070.0251
[11] Hechenleitner B,Entacher C(2003),在OMNeT++模拟中使用并行流时的陷阱。收录:域间性能和仿真研讨会论文集。奥地利萨尔茨堡,第11-20页
[12] Hill DRC(2010)随机高性能计算随机流的实际分布。In:高性能计算与仿真(HPCS)国际会议,第1-8页·Zbl 1365.65008号
[13] L'Ecuyer P(1990)模拟随机数。通信ACM 33:85-98·doi:10.1145/84537.84555
[14] L’Ecuyer P(1996)组合了多个递归随机数生成器。运营研究44(5):816-822·Zbl 0904.65004号 ·doi:10.1287/opre.44.5.816
[15] L'Ecuyer P(1999)组合多个递归随机数生成器的良好参数和实现。运营研究47(1):159-164·Zbl 1042.65505号 ·doi:10.1287/opre.47.1159
[16] L'Ecuyer P,Simard R(2007)Testu01:随机数生成器经验测试的C库。ACM Trans数学软件33(4):22·Zbl 1365.65008号 ·数字对象标识代码:10.1145/1268776.1268777
[17] L'Ecuyer P,Tezuka S(1991)两类随机数生成器的结构性质。数学计算57(196):735-746·Zbl 0748.65007号 ·doi:10.1090/S0025-5718-1991-1094954-3
[18] L'Ecuyer P,Simard R,Chen J,Kelton W(2001)具有许多长流和子流的面向对象随机数软件包。蒙特利尔大学技术报告。网址:http://www.iro.umontreal.ca/lecuyer/myftp/streams00/c++/streams4.pdf·Zbl 0712.65005号
[19] Lemieux C(2009)蒙特卡罗和准蒙特卡罗采样。纽约州施普林格·Zbl 1269.65001号
[20] Leydold J(2012)rstream:随机数流。http://CRAN.R-project.org/package=rstream。R包版本1.3.2
[21] Mascagni M,Srinivasan A(2000)Algorithm 806:Sprng:生成伪随机数的可扩展库。ACM跨数学软件26(3):436-461·数字对象标识代码:10.1145/358407.358427
[22] Matsumoto M,Nishimura T(1998)Mersenne龙卷风:623维均匀伪随机数发生器。ACM Trans型号。计算。模拟。8:3-30 ·Zbl 0917.65005号 ·doi:10.1145/272991.272995
[23] Matsumoto M,Wada I,Kuramoto A,Ashihara H(2007)伪随机数生成器初始化中的常见缺陷。ACM Trans模型仿真计算17(4):15·Zbl 1390.65013号 ·数字对象标识代码:10.1145/1276927.1276928
[24] Quinn M(2003)使用MPI和OpenMP在C中进行并行编程。纽约州麦格劳希尔
[25] 核心团队R(2013)R:统计计算的语言和环境。R统计计算基金会,奥地利维也纳。http://www.R-project.org网站/ ·Zbl 0917.65005号
[26] Rizopoulos D(2006)ltm:潜在变量建模和项目反应理论分析的R包。J Stat Softw杂志17(5):1-25。http://www.jstatsoft.org/v17/i05/
[27] Schmidberger M、Morgan M、Eddelbuettel D、Yu H、Tierney L、Mansmann U(2009)《使用R.J Stat Softw 31:1进行并行计算的最新技术》
[28] Tierney L,Rossini AJ,Li N,Sevcikova H(2013)Snow:简单工作站网络。http://CRAN.R-project.org/package=snow。R包版本0.3-12
[29] Urbanek S(2011)多核:在具有多核或CPU的机器上并行处理R代码。http://CRAN.R-project.org/package=多核。R包版本0.1-7
此参考列表基于出版商或数字数学图书馆提供的信息。其项与zbMATH标识符进行启发式匹配,可能包含数据转换错误。在某些情况下,zbMATH Open的数据对这些数据进行了补充/增强。这试图尽可能准确地反映原始论文中列出的参考文献,而不要求完整或完全匹配。