How does MATLAB generate Halton sequences

14 views (last 30 days)
Eric Schols
Eric Schols on 17 Feb 2016
Edited: Arnab Sen on 26 Apr 2016
p = haltonset(d)
constructs a Halton quasi-random point set in d dimensions. Mathematically, the Halton set is basically d van der Corput sequences with different bases. So my question is, which base values does MATLAB use? I opened the code of HALTONSET and QRANDSET, but couldn't figure it out.
I ask this because I am working with Halton sets for my thesis and want to clarify how they are used in MATLAB.

Answers (1)

Arnab Sen
Arnab Sen on 22 Feb 2016
Hi Eric,
You can get the Name of the sequence on which point set P is based from 'Type' property of P. So, the code snippet would be like below:
>> P = haltonset(d)
>> base=P.Type
The base value depends on the dimension provided. If the dimension is 'd' the Bases will be the first 'd' primes. For example for dimension d=5, the Bases is [2,3,5,7,11].
  3 Comments
Arnab Sen
Arnab Sen on 23 Feb 2016
Edited: Arnab Sen on 26 Apr 2016
you are getting the correct answer. There is no property or function that output bases. I found that by inspecting the MATLAB script haltonset.m itself.
Eric Schols
Eric Schols on 3 Mar 2016
Then how is it results are reproducable? That indicates something is governing the output.

Sign in to comment.

Categories

Find more on Creating and Concatenating Matrices in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!