当前位置: 首页>>代码示例>>Java>>正文


Java MersenneTwister类代码示例

本文整理汇总了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;
}
 
开发者ID:openimaj,项目名称:openimaj,代码行数:25,代码来源:VLADIndexerDataBuilder.java

示例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() {
    }
  };
}
 
开发者ID:fengchen8086,项目名称:ditb,代码行数:31,代码来源:GaussianFileListGenerator.java

示例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());
	
}
 
开发者ID:beast-dev,项目名称:beast-mcmc,代码行数:32,代码来源:Partition.java

示例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 ");
}
 
开发者ID:openimaj,项目名称:openimaj,代码行数:39,代码来源:SvmSgd.java

示例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);
    }
}
 
开发者ID:SpoonLabs,项目名称:astor,代码行数:44,代码来源:CMAESOptimizerTest.java

示例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);
    }
}
 
开发者ID:SpoonLabs,项目名称:astor,代码行数:43,代码来源:CMAESOptimizerTest.java

示例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");
  }
}
 
开发者ID:bedatadriven,项目名称:renjin-statet,代码行数:33,代码来源:RNG.java

示例8: setUp

import org.apache.commons.math.random.MersenneTwister; //导入依赖的package包/类
@Before
public void setUp() {
    field = new DfpField(40);
    generator = new MersenneTwister(6176597458463500194l);
}
 
开发者ID:SpoonLabs,项目名称:astor,代码行数:6,代码来源:FastMathTest.java


注:本文中的org.apache.commons.math.random.MersenneTwister类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。