diff options
Diffstat (limited to 'elki/src/main/java/de/lmu/ifi/dbs/elki/utilities/referencepoints')
7 files changed, 14 insertions, 6 deletions
diff --git a/elki/src/main/java/de/lmu/ifi/dbs/elki/utilities/referencepoints/AxisBasedReferencePoints.java b/elki/src/main/java/de/lmu/ifi/dbs/elki/utilities/referencepoints/AxisBasedReferencePoints.java index 026cf048..337197a3 100644 --- a/elki/src/main/java/de/lmu/ifi/dbs/elki/utilities/referencepoints/AxisBasedReferencePoints.java +++ b/elki/src/main/java/de/lmu/ifi/dbs/elki/utilities/referencepoints/AxisBasedReferencePoints.java @@ -43,6 +43,7 @@ import de.lmu.ifi.dbs.elki.utilities.optionhandling.parameters.DoubleParameter; * surrounding cube. * * @author Erich Schubert + * @since 0.3 */ public class AxisBasedReferencePoints implements ReferencePointsHeuristic { /** diff --git a/elki/src/main/java/de/lmu/ifi/dbs/elki/utilities/referencepoints/FullDatabaseReferencePoints.java b/elki/src/main/java/de/lmu/ifi/dbs/elki/utilities/referencepoints/FullDatabaseReferencePoints.java index aed7845f..9e4b9c8f 100644 --- a/elki/src/main/java/de/lmu/ifi/dbs/elki/utilities/referencepoints/FullDatabaseReferencePoints.java +++ b/elki/src/main/java/de/lmu/ifi/dbs/elki/utilities/referencepoints/FullDatabaseReferencePoints.java @@ -33,6 +33,7 @@ import de.lmu.ifi.dbs.elki.database.relation.RelationUtil; * Strategy to use the complete database as reference points. * * @author Erich Schubert + * @since 0.3 */ public class FullDatabaseReferencePoints implements ReferencePointsHeuristic { /** diff --git a/elki/src/main/java/de/lmu/ifi/dbs/elki/utilities/referencepoints/GridBasedReferencePoints.java b/elki/src/main/java/de/lmu/ifi/dbs/elki/utilities/referencepoints/GridBasedReferencePoints.java index 1d614bff..45e3c66b 100644 --- a/elki/src/main/java/de/lmu/ifi/dbs/elki/utilities/referencepoints/GridBasedReferencePoints.java +++ b/elki/src/main/java/de/lmu/ifi/dbs/elki/utilities/referencepoints/GridBasedReferencePoints.java @@ -44,6 +44,7 @@ import de.lmu.ifi.dbs.elki.utilities.optionhandling.parameters.IntParameter; * Grid-based strategy to pick reference points. * * @author Erich Schubert + * @since 0.3 */ public class GridBasedReferencePoints implements ReferencePointsHeuristic { /** diff --git a/elki/src/main/java/de/lmu/ifi/dbs/elki/utilities/referencepoints/RandomGeneratedReferencePoints.java b/elki/src/main/java/de/lmu/ifi/dbs/elki/utilities/referencepoints/RandomGeneratedReferencePoints.java index 9de4e5e8..9b287443 100644 --- a/elki/src/main/java/de/lmu/ifi/dbs/elki/utilities/referencepoints/RandomGeneratedReferencePoints.java +++ b/elki/src/main/java/de/lmu/ifi/dbs/elki/utilities/referencepoints/RandomGeneratedReferencePoints.java @@ -25,6 +25,7 @@ package de.lmu.ifi.dbs.elki.utilities.referencepoints; import java.util.ArrayList; import java.util.Collection; +import java.util.Random; import de.lmu.ifi.dbs.elki.data.NumberVector; import de.lmu.ifi.dbs.elki.database.relation.Relation; @@ -41,8 +42,9 @@ import de.lmu.ifi.dbs.elki.utilities.optionhandling.parameters.RandomParameter; /** * Reference points generated randomly within the used data space. - * + * * @author Erich Schubert + * @since 0.3 */ public class RandomGeneratedReferencePoints implements ReferencePointsHeuristic { /** @@ -62,7 +64,7 @@ public class RandomGeneratedReferencePoints implements ReferencePointsHeuristic /** * Constructor. - * + * * @param samplesize Size of desired sample set * @param scale Scaling factor * @param rnd Random generator @@ -86,14 +88,14 @@ public class RandomGeneratedReferencePoints implements ReferencePointsHeuristic mean[d] -= delta[d] * .5; } + Random rand = rnd.getSingleThreadedRandom(); ArrayList<Vector> result = new ArrayList<>(samplesize); double[] vec = new double[dim]; for(int i = 0; i < samplesize; i++) { for(int d = 0; d < dim; d++) { - vec[d] = mean[d] + (Math.random() - 0.5) * scale * delta[d]; + vec[d] = mean[d] + (rand.nextDouble() - 0.5) * scale * delta[d]; } Vector newp = new Vector(vec); - // logger.debug("New reference point: " + FormatUtil.format(vec)); result.add(newp); } @@ -102,9 +104,9 @@ public class RandomGeneratedReferencePoints implements ReferencePointsHeuristic /** * Parameterization class. - * + * * @author Erich Schubert - * + * * @apiviz.exclude */ public static class Parameterizer extends AbstractParameterizer { diff --git a/elki/src/main/java/de/lmu/ifi/dbs/elki/utilities/referencepoints/RandomSampleReferencePoints.java b/elki/src/main/java/de/lmu/ifi/dbs/elki/utilities/referencepoints/RandomSampleReferencePoints.java index a8b17234..14d91a55 100644 --- a/elki/src/main/java/de/lmu/ifi/dbs/elki/utilities/referencepoints/RandomSampleReferencePoints.java +++ b/elki/src/main/java/de/lmu/ifi/dbs/elki/utilities/referencepoints/RandomSampleReferencePoints.java @@ -45,6 +45,7 @@ import de.lmu.ifi.dbs.elki.utilities.optionhandling.parameters.RandomParameter; * Random-Sampling strategy for picking reference points. * * @author Erich Schubert + * @since 0.3 */ public class RandomSampleReferencePoints implements ReferencePointsHeuristic { /** diff --git a/elki/src/main/java/de/lmu/ifi/dbs/elki/utilities/referencepoints/ReferencePointsHeuristic.java b/elki/src/main/java/de/lmu/ifi/dbs/elki/utilities/referencepoints/ReferencePointsHeuristic.java index 2b417d84..00cef7dc 100644 --- a/elki/src/main/java/de/lmu/ifi/dbs/elki/utilities/referencepoints/ReferencePointsHeuristic.java +++ b/elki/src/main/java/de/lmu/ifi/dbs/elki/utilities/referencepoints/ReferencePointsHeuristic.java @@ -32,6 +32,7 @@ import de.lmu.ifi.dbs.elki.database.relation.Relation; * Simple Interface for an heuristic to pick reference points. * * @author Erich Schubert + * @since 0.3 */ public interface ReferencePointsHeuristic { /** diff --git a/elki/src/main/java/de/lmu/ifi/dbs/elki/utilities/referencepoints/StarBasedReferencePoints.java b/elki/src/main/java/de/lmu/ifi/dbs/elki/utilities/referencepoints/StarBasedReferencePoints.java index f1e1c1fb..2b35108b 100644 --- a/elki/src/main/java/de/lmu/ifi/dbs/elki/utilities/referencepoints/StarBasedReferencePoints.java +++ b/elki/src/main/java/de/lmu/ifi/dbs/elki/utilities/referencepoints/StarBasedReferencePoints.java @@ -42,6 +42,7 @@ import de.lmu.ifi.dbs.elki.utilities.optionhandling.parameters.Flag; * Star-based strategy to pick reference points. * * @author Erich Schubert + * @since 0.3 */ public class StarBasedReferencePoints implements ReferencePointsHeuristic { /** |