本文整理汇总了Java中org.apache.commons.math.random.MersenneTwister类的典型用法代码示例。如果您正苦于以下问题:Java MersenneTwister类的具体用法?Java MersenneTwister怎么用?Java MersenneTwister使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
MersenneTwister类属于org.apache.commons.math.random包,在下文中一共展示了MersenneTwister类的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: createRandomWhitening
import org.apache.commons.math.random.MersenneTwister; //导入依赖的package包/类
private Matrix createRandomWhitening(final int ndims) {
final Matrix m = new Matrix(ndims, ndims);
final double[][] a = m.getArray();
final double[] norms = new double[ndims];
final MersenneTwister mt = new MersenneTwister();
for (int r = 0; r < ndims; r++) {
for (int c = 0; c < ndims; c++) {
a[r][c] = mt.nextGaussian();
norms[r] += (a[r][c] * a[r][c]);
}
}
for (int r = 0; r < ndims; r++) {
final double norm = Math.sqrt(norms[r]);
for (int c = 0; c < ndims; c++) {
a[r][c] /= norm;
}
}
return m;
}
示例2: iterator
import org.apache.commons.math.random.MersenneTwister; //导入依赖的package包/类
@Override
public Iterator<List<StoreFile>> iterator() {
return new Iterator<List<StoreFile>>() {
private GaussianRandomGenerator gen =
new GaussianRandomGenerator(new MersenneTwister(random.nextInt()));
private int count = 0;
@Override
public boolean hasNext() {
return count < MAX_FILE_GEN_ITERS;
}
@Override
public List<StoreFile> next() {
count += 1;
ArrayList<StoreFile> files = new ArrayList<StoreFile>(NUM_FILES_GEN);
for (int i = 0; i < NUM_FILES_GEN; i++) {
files.add(createMockStoreFile(
(int) Math.ceil(Math.max(0, gen.nextNormalizedDouble() * 32 + 32)))
);
}
return files;
}
@Override
public void remove() {
}
};
}
示例3: Partition
import org.apache.commons.math.random.MersenneTwister; //导入依赖的package包/类
public Partition(TreeModel treeModel, //
BranchModel branchModel, //
GammaSiteRateModel siteModel, //
BranchRateModel branchRateModel, //
FrequencyModel freqModel, //
int from, //
int to, //
int every //
) {
this.treeModel = treeModel;
this.siteRateModel = siteModel;
this.freqModel = freqModel;
this.branchModel = branchModel;
this.branchRateModel = branchRateModel;
this.from = from;
this.to = to;
this.every = every;
dataType = freqModel.getDataType();
partitionSiteCount = getPartitionSiteCount();
setBufferHelpers();
setSubstitutionModelDelegate();
loadBeagleInstance();
alignmentMap = new LinkedHashMap<Taxon, int[]>();
random = new MersenneTwister(MathUtils.nextLong());
}
示例4: main
import org.apache.commons.math.random.MersenneTwister; //导入依赖的package包/类
public static void main(String[] args) {
final MersenneTwister mt = new MersenneTwister();
final SparseFloatArray[] tr = new SparseFloatArray[10000];
final double[] clz = new double[tr.length];
for (int i = 0; i < tr.length; i++) {
tr[i] = new SparseHashedFloatArray(2);
if (i < tr.length / 2) {
tr[i].set(0, (float) (mt.nextGaussian() - 2));
tr[i].set(1, (float) (mt.nextGaussian() - 2));
clz[i] = -1;
} else {
tr[i].set(0, (float) (mt.nextGaussian() + 2));
tr[i].set(1, (float) (mt.nextGaussian() + 2));
clz[i] = 1;
}
System.out.println(tr[i].values()[0] + " " + clz[i]);
}
final SvmSgd svm = new SvmSgd(2, 1e-5);
svm.BIAS = true;
svm.REGULARIZED_BIAS = false;
svm.determineEta0(0, tr.length - 1, tr, clz);
for (int i = 0; i < 10; i++) {
System.out.println();
svm.train(0, tr.length - 1, tr, clz);
svm.test(0, tr.length - 1, tr, clz, "training ");
System.out.println(svm.w);
System.out.println(svm.wBias);
System.out.println(svm.wDivisor);
}
// svm.w.values[0] = 1f;
// svm.w.values[1] = 1f;
// svm.wDivisor = 1;
// svm.wBias = 0;
// svm.test(0, 999, tr, clz, "training ");
}
示例5: doTest
import org.apache.commons.math.random.MersenneTwister; //导入依赖的package包/类
/**
* @param func Function to optimize.
* @param startPoint Starting point.
* @param inSigma Individual input sigma.
* @param boundaries Upper / lower point limit.
* @param goal Minimization or maximization.
* @param lambda Population size used for offspring.
* @param isActive Covariance update mechanism.
* @param diagonalOnly Simplified covariance update.
* @param stopValue Termination criteria for optimization.
* @param fTol Tolerance relative error on the objective function.
* @param pointTol Tolerance for checking that the optimum is correct.
* @param maxEvaluations Maximum number of evaluations.
* @param expected Expected point / value.
*/
private void doTest(MultivariateRealFunction func,
double[] startPoint,
double[] inSigma,
double[][] boundaries,
GoalType goal,
int lambda,
boolean isActive,
int diagonalOnly,
double stopValue,
double fTol,
double pointTol,
int maxEvaluations,
RealPointValuePair expected)
throws MathException {
int dim = startPoint.length;
// test diagonalOnly = 0 - slow but normally fewer feval#
MultivariateRealOptimizer optim =
new CMAESOptimizer(
lambda, inSigma, boundaries, 30000,
stopValue, isActive, diagonalOnly, 0, new MersenneTwister(),false);
RealPointValuePair result = optim.optimize(maxEvaluations, func, goal, startPoint);
Assert.assertEquals(expected.getValue(),
result.getValue(), fTol);
for (int i = 0; i < dim; i++) {
Assert.assertEquals(expected.getPoint()[i],
result.getPoint()[i], pointTol);
}
}
示例6: doTest
import org.apache.commons.math.random.MersenneTwister; //导入依赖的package包/类
/**
* @param func Function to optimize.
* @param startPoint Starting point.
* @param inSigma Individual input sigma.
* @param boundaries Upper / lower point limit.
* @param goal Minimization or maximization.
* @param lambda Population size used for offspring.
* @param isActive Covariance update mechanism.
* @param diagonalOnly Simplified covariance update.
* @param stopValue Termination criteria for optimization.
* @param fTol Tolerance relative error on the objective function.
* @param pointTol Tolerance for checking that the optimum is correct.
* @param maxEvaluations Maximum number of evaluations.
* @param expected Expected point / value.
*/
private void doTest(MultivariateRealFunction func,
double[] startPoint,
double[] inSigma,
double[][] boundaries,
GoalType goal,
int lambda,
boolean isActive,
int diagonalOnly,
double stopValue,
double fTol,
double pointTol,
int maxEvaluations,
RealPointValuePair expected) {
int dim = startPoint.length;
// test diagonalOnly = 0 - slow but normally fewer feval#
MultivariateRealOptimizer optim =
new CMAESOptimizer(
lambda, inSigma, boundaries, 30000,
stopValue, isActive, diagonalOnly, 0, new MersenneTwister(),false);
RealPointValuePair result = optim.optimize(maxEvaluations, func, goal, startPoint);
Assert.assertEquals(expected.getValue(),
result.getValue(), fTol);
for (int i = 0; i < dim; i++) {
Assert.assertEquals(expected.getPoint()[i],
result.getPoint()[i], pointTol);
}
}
示例7: set_seed
import org.apache.commons.math.random.MersenneTwister; //导入依赖的package包/类
@Primitive("set.seed")
public static void set_seed(@Current Context context, int seed, SEXP kind, SEXP normalkind) {
RNG rng = context.getSession().rng;
rng.randomseed = seed;
RNGkind(context, kind, normalkind);
switch (rng.RNG_kind) {
case WICHMANN_HILL:
throw new EvalException(rng.RNG_kind + " not implemented yet");
case MARSAGLIA_MULTICARRY:
throw new EvalException(rng.RNG_kind + " not implemented yet");
case SUPER_DUPER:
throw new EvalException(rng.RNG_kind + " not implemented yet");
case MERSENNE_TWISTER:
if (rng.mersenneTwisterAlg == null) {
rng.mersenneTwisterAlg = new MersenneTwister(seed);
} else {
rng.mersenneTwisterAlg.setSeed(seed);
}
return;
case KNUTH_TAOCP:
case KNUTH_TAOCP2:
throw new EvalException(rng.RNG_kind + " not implemented yet");
case USER_UNIF:
throw new EvalException(rng.RNG_kind + " not implemented yet");
default:
throw new EvalException(rng.RNG_kind + " not implemented yet");
}
}
示例8: setUp
import org.apache.commons.math.random.MersenneTwister; //导入依赖的package包/类
@Before
public void setUp() {
field = new DfpField(40);
generator = new MersenneTwister(6176597458463500194l);
}