java.util.Random
9293949596979899100101102
} @Test public void testGetters() { final DistanceMeasure measure = new CanberraDistance(); final RandomGenerator random = new JDKRandomGenerator(); final FuzzyKMeansClusterer<DoublePoint> clusterer = new FuzzyKMeansClusterer<DoublePoint>(3, 2.0, 100, measure, 1e-6, random); Assert.assertEquals(3, clusterer.getK()); Assert.assertEquals(2.0, clusterer.getFuzziness(), 1e-6);
373839404142434445464748
= new SimplexOptimizer(new SimpleValueChecker(-1, 1.0e-3)); NelderMeadSimplex simplex = new NelderMeadSimplex(new double[][] { { -1.2, 1.0 }, { 0.9, 1.2 } , { 3.5, -2.3 } }); underlying.setSimplex(simplex); JDKRandomGenerator g = new JDKRandomGenerator(); g.setSeed(16069223052l); RandomVectorGenerator generator = new UncorrelatedRandomVectorGenerator(2, new GaussianRandomGenerator(g)); MultivariateMultiStartOptimizer optimizer = new MultivariateMultiStartOptimizer(underlying, 10, generator); PointValuePair optimum =
676869707172737475767778
public ConvergenceChecker<PointValuePair> getConvergenceChecker() { return cg.getConvergenceChecker(); } }; JDKRandomGenerator g = new JDKRandomGenerator(); g.setSeed(753289573253l); RandomVectorGenerator generator = new UncorrelatedRandomVectorGenerator(new double[] { 50.0, 50.0 }, new double[] { 10.0, 10.0 }, new GaussianRandomGenerator(g)); MultivariateDifferentiableMultiStartOptimizer optimizer = new MultivariateDifferentiableMultiStartOptimizer(underlying, 10, generator);
127128129130131132133134135136137138
public ConvergenceChecker<PointVectorValuePair> getConvergenceChecker() { return gn.getConvergenceChecker(); } }; JDKRandomGenerator g = new JDKRandomGenerator(); g.setSeed(16069223052l); RandomVectorGenerator generator = new UncorrelatedRandomVectorGenerator(1, new GaussianRandomGenerator(g)); MultivariateDifferentiableVectorMultiStartOptimizer optimizer = new MultivariateDifferentiableVectorMultiStartOptimizer(underlyingOptimizer, 10, generator);
189190191192193194195196197198199200
public ConvergenceChecker<PointVectorValuePair> getConvergenceChecker() { return gn.getConvergenceChecker(); } }; JDKRandomGenerator g = new JDKRandomGenerator(); g.setSeed(12373523445l); RandomVectorGenerator generator = new UncorrelatedRandomVectorGenerator(1, new GaussianRandomGenerator(g)); MultivariateDifferentiableVectorMultiStartOptimizer optimizer = new MultivariateDifferentiableVectorMultiStartOptimizer(underlyingOptimizer, 10, generator);
585586587588589590591592593594595596
static final int[] sampleSizes= {TINY , SMALL , NOMINAL , MEDIUM , STANDARD, BIG }; @Test public void testStoredVsDirect() { final RandomGenerator rand= new JDKRandomGenerator(); rand.setSeed(Long.MAX_VALUE); for (final int sampleSize:sampleSizes) { final double[] data = new NormalDistribution(rand,4000, 50) .sample(sampleSize); for (final double p:new double[] {50d,95d}) { for (final Percentile.EstimationType e : Percentile.EstimationType.values()) {
102103104105106107108109110111112113
@Test(expected=NullPointerException.class) public void testGetOptimaBeforeOptimize() { JacobianMultivariateVectorOptimizer underlyingOptimizer = new GaussNewtonOptimizer(true, new SimpleVectorValueChecker(1e-6, 1e-6)); JDKRandomGenerator g = new JDKRandomGenerator(); g.setSeed(16069223052l); RandomVectorGenerator generator = new UncorrelatedRandomVectorGenerator(1, new GaussianRandomGenerator(g)); MultiStartMultivariateVectorOptimizer optimizer = new MultiStartMultivariateVectorOptimizer(underlyingOptimizer, 10, generator);
118119120121122123124125126127128129
public void testTrivial() { LinearProblem problem = new LinearProblem(new double[][] { { 2 } }, new double[] { 3 }); JacobianMultivariateVectorOptimizer underlyingOptimizer = new GaussNewtonOptimizer(true, new SimpleVectorValueChecker(1e-6, 1e-6)); JDKRandomGenerator g = new JDKRandomGenerator(); g.setSeed(16069223052l); RandomVectorGenerator generator = new UncorrelatedRandomVectorGenerator(1, new GaussianRandomGenerator(g)); MultiStartMultivariateVectorOptimizer optimizer = new MultiStartMultivariateVectorOptimizer(underlyingOptimizer, 10, generator);
168169170171172173174175176177178179
TestUtils.assertEquals(correctRanks, ranks, 0d); } @Test public void testNaNsFixedTiesRandom() { RandomGenerator randomGenerator = new JDKRandomGenerator(); randomGenerator.setSeed(1000); NaturalRanking ranking = new NaturalRanking(NaNStrategy.FIXED, randomGenerator); double[] ranks = ranking.rank(exampleData); double[] correctRanks = { 5, 3, 6, 7, 3, 8, Double.NaN, 1, 2 }; TestUtils.assertEquals(correctRanks, ranks, 0d);
163164165166167168169170171172173174
} } return super.optimize(filtered); } }; JDKRandomGenerator g = new JDKRandomGenerator(); g.setSeed(16069223052l); RandomVectorGenerator generator = new UncorrelatedRandomVectorGenerator(1, new GaussianRandomGenerator(g)); MultiStartMultivariateVectorOptimizer optimizer = new MultiStartMultivariateVectorOptimizer(underlyingOptimizer, 10, generator);