当前位置: 首页 > news >正文

Sobol sequence generator

Sobol sequence generator

http://web.maths.unsw.edu.au/~fkuo/sobol/

 

https://blog.csdn.net/qq_33274326/article/details/69952035

那么如何计算出能生成如此高质量分布的矩阵呢?Quasi Monte Carlo的学者们已经花了数10年的时间搜索这种矩阵,现在我们可以在这个网页(Sobol sequence generator )找到可以生成21201维度的Sobol序列的矩阵。

 

 

Sobol sequence generator

This page contains the primitive polynomials and various sets of initial direction numbers for generating Sobol sequences.

This is a joint project between Stephen Joe and Frances Kuo. More details can be found in the following papers:

  1. S. Joe and F. Y. Kuo, Remark on Algorithm 659: Implementing Sobol's quasirandom sequence generator, ACM Trans. Math. Softw. 29, 49-57 (2003). Link to paper.
  2. S. Joe and F. Y. Kuo, Constructing Sobol sequences with better two-dimensional projections, SIAM J. Sci. Comput. 30, 2635-2654 (2008). Link to paper.

Here is a 3-page notes on generating Sobol sequences.

 

 

NEW sets of direction numbers from [2]

The following files contain primitive polynomials and direction numbers obtained using the search algorithm in [2]. The columns in the files are d, s, a, m, where d is the dimension, s is the degree of the primitive polynomial, a is the number representing the coefficients, and m is the list of initial direction numbers. We arrange the primitive polynomials in increasing order of their degrees, and for those with the same degree we systematically arrange them in increasing order of the numbers a. Property A is satisfied up to dimension 1111.

  • The file new-joe-kuo-6.21201 contains the direction numbers obtained using the search criterion D(6) up to dimension 21201.
    This is our recommended choice.
  • The file new-joe-kuo-7.21201 contains the direction numbers obtained using the search criterion D(7) up to dimension 21201.
  • The file new-joe-kuo-5.21201 contains the direction numbers obtained using the search criterion D(5) up to dimension 21201.

They were last updated on 16 September 2010. The dimension 21201 was our target dimension. At this stage we have no plan to update these further.

 

NOTE: The files posted here prior to June 2010 have been removed because we identified some undesirable properties which can affect the quality of the resulting Sobol sequence. The three replacement files do not have these undesirable properties.

WARNING: Our search criteria in [2] incorporated some "weights" so that the projections with earlier variables are treated as more important than those with later variables. This choice of weights makes sense when the variables are arranged in the order of decreasing importance. This choice of weights may not be suitable for the type of problems where the interactions between successive variables are the more important ones; in that case, a different choice of weights should be used in the search criteria, thus leading to a different set of direction numbers.

 

Other sets of direction numbers

The following files contain primitive polynomials and direction numbers obtained using an earlier version of the search algorithm from [2]. The error criteria are similar but slightly different to those in [2]. The columns in the files are d, s, a, m as above. For the first 40 dimensions, we use the primitive polynomials from the Bratley and Fox (1988) paper. From dimension 41 onward, we arrange the primitive polynomials in increasing order of their degrees, and for those with the same degree we systematically arrange them in increasing order of the numbers a. As a result, the polynomials from the first 46 dimensions are in a different order to the new data from [2] above. Property A is satisfied in all dimensions.

  • The file joe-kuo-other-4.5600 contains some direction numbers up to dimension 5600.
  • The file joe-kuo-other-3.7300 contains some direction numbers up to dimension 7300.
  • The file joe-kuo-other-2.3900 contains some direction numbers up to dimension 3900.
  • The file joe-kuo-other-0.7600 contains some direction numbers up to dimension 7600.
  • The file joe-kuo-old.1111 contains the direction numbers from [1] up to dimension 1111.

These files will not be updated further.

 

 

Comparison of [2] and [1]

The following table compares the direction numbers obtained using the search criterion D(6) with the direction numbers from [1]. This table is an updated version of [2,Table 3.8] correponding to the new replacement files.

 

 

Dimension at which each t-value first occurs
  t-value
 0123456789101112131415161718
 
m=10D(6) 23459163276167402>21201        
[1] 234581521231836>1111        
 
m=12D(6) 2346101634401092335591069>21201      
[1] 23471010102235519661>1111      
 
m=14D(6) 234681222488516438372012351861>21201    
[1] 234591025174055676713161>1111    
 
m=16D(6) 2346814153580159255500837155323752721>21201  
[1] 23469815133258697410295447167>1111  
 
m=18D(6) 234781115357010821341472011771819261630923677>21201
[1] 234771012212825103126115114196232665380>1111

 

Simple C++ program

The file sobol.cc is a simple C++ program for generating Sobol points in graycode order. This program and the accompanying direction numbers above are covered by this BSD-style licence.

Compile the program with the command

g++ -o sobol sobol.cc

Then run the program with three arguments N D FILENAME. For example, the command

./sobol 10 3 new-joe-kuo-6.21201

gives the output

0 0 0
0.5 0.5 0.5
0.75 0.25 0.25
0.25 0.75 0.75
0.375 0.375 0.625
0.875 0.875 0.125
0.625 0.125 0.875
0.125 0.625 0.375
0.1875 0.3125 0.9375
0.6875 0.8125 0.4375

These are the first 10 Sobol points in 3 dimensions.

WARNING: This simple program generates ALL the points at once and stores everything in memory. It is NOT meant to be used directly for practical computations where the total number of points is large and/or the dimension is high. For such computations the points should be generated ONE POINT AT A TIME and cleared from memory immediately after the associated function evaluation is finished. It should be straightforward to extract the appropriate C++ code for doing this from our simple program.

 

 

Questions or comments?

We are keen to hear from you regarding your experience with these direction numbers. Please email Frances Kuo <f.kuo@unsw.edu.au> and Stephen Joe <stephenj@math.waikato.ac.nz>.

 

If you have any publication arising which makes use of the material here, it would be appreciated if you could cite our ACM Trans. Math. Softw. paper and/or our SIAM J. Sci. Comput. paper as appropriate.

相关文章:

  • PaniniProjection
  • Shadowmask
  • UE4 How To use Colored Translucent Shadows
  • EvaluateSurfelMaterial.usf
  • FilterPixelShader.usf
  • 晕影Vignette
  • 自定义AssetBundle包扩展名
  • 【已解决】C#中的#ifdef
  • Signed Distance Fields in Real-time Rendering
  • UE4学习笔记(六): 次世代的移动平台渲染技术
  • UnrealEngine4 PBR Shading Model 概述
  • Asset Bundles vs. Resources: A Memory Showdown
  • book 书籍下载
  • 因为UE4开源的缘故,所以一开始还从它入手。相关的ppt和notebook可以从下面的链接下载,同期的黑色行动2(black op2)的PBR使用也是很有参考价值的,加上本文里也有OP2的IBL近似方
  • eal Shading in Unreal Engine 4
  • 【Amaple教程】5. 插件
  • 【跃迁之路】【463天】刻意练习系列222(2018.05.14)
  • Android框架之Volley
  • ECS应用管理最佳实践
  • ES6系统学习----从Apollo Client看解构赋值
  • Golang-长连接-状态推送
  • Mysql5.6主从复制
  • Protobuf3语言指南
  • React 快速上手 - 06 容器组件、展示组件、操作组件
  • TiDB 源码阅读系列文章(十)Chunk 和执行框架简介
  • vue-router的history模式发布配置
  • windows下如何用phpstorm同步测试服务器
  • WordPress 获取当前文章下的所有附件/获取指定ID文章的附件(图片、文件、视频)...
  • 成为一名优秀的Developer的书单
  • 道格拉斯-普克 抽稀算法 附javascript实现
  • 读懂package.json -- 依赖管理
  • 海量大数据大屏分析展示一步到位:DataWorks数据服务+MaxCompute Lightning对接DataV最佳实践...
  • 记一次用 NodeJs 实现模拟登录的思路
  • 你不可错过的前端面试题(一)
  • 人脸识别最新开发经验demo
  • 使用权重正则化较少模型过拟合
  • 写代码的正确姿势
  • 移动端唤起键盘时取消position:fixed定位
  • 云大使推广中的常见热门问题
  • 云栖大讲堂Java基础入门(三)- 阿里巴巴Java开发手册介绍
  • HanLP分词命名实体提取详解
  • scrapy中间件源码分析及常用中间件大全
  • 阿里云服务器购买完整流程
  • # centos7下FFmpeg环境部署记录
  • # Java NIO(一)FileChannel
  • #include
  • #QT(一种朴素的计算器实现方法)
  • #数学建模# 线性规划问题的Matlab求解
  • #在 README.md 中生成项目目录结构
  • $emit传递多个参数_PPC和MIPS指令集下二进制代码中函数参数个数的识别方法
  • (zt)最盛行的警世狂言(爆笑)
  • (二)fiber的基本认识
  • (附源码)ssm经济信息门户网站 毕业设计 141634
  • (六)库存超卖案例实战——使用mysql分布式锁解决“超卖”问题
  • (一)Java算法:二分查找