首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python : Halton和Hammersley拟随机序列

Python : Halton和Hammersley拟随机序列
EN

Stack Overflow用户
提问于 2017-11-03 19:28:03
回答 1查看 1.7K关注 0票数 3

我正在尝试构造Hammersley和Halton拟随机序列。例如,我有三个变量x1、x2和x3。它们都有整数值。x1的范围是2-4,x2是2-4,x3是1-7。有没有可以创建这些序列的python包?我看到有一些像sobol或SALib这样的procject,但他们没有实现Halton和Hammersley。

诚挚的问候

EN

回答 1

Stack Overflow用户

发布于 2018-07-16 16:58:29

大多数库方法为任意维度提供了低差异方法,不会包含允许您为每个单独的维度/组件定义任意间隔的参数。但是,在几乎所有这些情况下,您都可以通过添加一行代码来调整现有方法以满足您的需求。理解这一点将极大地增加你可以选择使用的库的数量!

对于几乎所有的低差异(准随机)序列,每一项都在半开区间[0,1]内均匀分布。类似地,对于d维序列,每个项的每个分量都落在[0,1]中。

这包括Halton序列(如果van der Corput是一个推广),Hammersley,Weyl/Kronecker,Sobol和Niederreiter序列。

可以通过线性变换x=a+ (b-a) z将值从[0,1)转换为[a,b)。因此,如果规范低差异序列的第n项是(z_1,z_2,z,z_3),那么您需要的序列是(2+2*z1,2+2*z2,1+6*z3)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47094705

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档