Class MooCore
java.lang.Object
es.urjc.etsii.grafo.moocore.MooCore
Static facade for multi-objective mathematical operations.
-
Method Summary
Modifier and TypeMethodDescriptionstatic booleananyDominated(double[][] points) static booleananyDominated(double[][] points, boolean[] maximise, boolean keepWeakly) static double[][]applyMatricesWithinSets(double[][] points, int[] sets, Function<double[][], double[][]> operation) static double[]applyRowsWithinSets(double[][] points, int[] sets, Function<double[][], double[]> operation) static double[]applyWithinSets(double[][] points, int[] sets, ToDoubleFunction<double[][]> operation) static doubleapproximateHypervolume(double[][] points, double[] reference) static doubleapproximateHypervolume(double[][] points, double[] reference, boolean[] maximise, long samples, long seed, HypervolumeApproximation method) static doubleapproximateHypervolume(double[][] points, double[] reference, HypervolumeApproximation method) static doubleaverageHausdorffDistance(double[][] points, double[][] reference) static doubleaverageHausdorffDistance(double[][] points, double[][] reference, boolean[] maximise, int p) static doubleaverageHausdorffDistance(double[][] points, double[][] reference, int p) static double[][]eaf(double[][] points, int[] sets) static double[][]eaf(double[][] points, int[] sets, double[] percentiles) static double[][]eafDifference(Dataset left, Dataset right) static double[][]eafDifference(Dataset left, Dataset right, EafDifferenceFormat format) static double[][]eafDifference(Dataset left, Dataset right, Integer intervals, boolean[] maximise, EafDifferenceFormat format) static doubleepsilonAdditive(double[][] points, double[][] reference) static doubleepsilonAdditive(double[][] points, double[][] reference, boolean[] maximise) static doubleepsilonMultiplicative(double[][] points, double[][] reference) static doubleepsilonMultiplicative(double[][] points, double[][] reference, boolean[] maximise) static doubleexactR2(double[][] points, double[] reference) static doubleexactR2(double[][] points, double[] reference, boolean[] maximise) static double[][]filterDominated(double[][] points) static double[][]filterDominated(double[][] points, boolean[] maximise, boolean keepWeakly) static DatasetfilterDominatedWithinSets(Dataset dataset) static DatasetfilterDominatedWithinSets(Dataset dataset, boolean[] maximise, boolean keepWeakly) static long[][]generateIntegerNondominatedSet(int size, int objectives, NondominatedSetShape shape, long seed) static double[][]generateNondominatedSet(int size, int objectives, NondominatedSetShape shape, long seed) static double[][]generateNondominatedSet(int size, int objectives, NondominatedSetShape shape, RandomGenerator random) static DatasetgetDataset(String name) static PathgetDatasetPath(String name) static PathgetDatasetPath(String name, boolean force, int retries, Duration delay) static doublehypervolume(double[][] points, double reference) static doublehypervolume(double[][] points, double[] reference) static doublehypervolume(double[][] points, double[] reference, boolean[] maximise) static double[]hypervolumeContributions(double[][] points, double[] reference) static double[]hypervolumeContributions(double[][] points, double[] reference, boolean[] maximise) static double[]hypervolumeContributions(double[][] points, double[] reference, boolean[] maximise, boolean ignoreDominated) static doublehypeWeightedHypervolume(double[][] points, double[] reference, double[] ideal) static doublehypeWeightedHypervolume(double[][] points, double[] reference, double[] ideal, boolean[] maximise, int samples, long seed, HypeDistribution distribution, double[] mu) static doubleigd(double[][] points, double[][] reference) static doubleigd(double[][] points, double[][] reference, boolean[] maximise) static doubleigdPlus(double[][] points, double[][] reference) static doubleigdPlus(double[][] points, double[][] reference, boolean[] maximise) static boolean[]isNondominated(double[][] points) static boolean[]isNondominated(double[][] points, boolean[] maximise, boolean keepWeakly) static boolean[]isNondominatedWithinSets(double[][] points, int[] sets) static boolean[]isNondominatedWithinSets(double[][] points, int[] sets, boolean[] maximise, boolean keepWeakly) static LargestEafDifferencelargestEafDifference(List<Dataset> datasets, double[] reference) static LargestEafDifferencelargestEafDifference(List<Dataset> datasets, double[] reference, boolean[] maximise, int intervals, double[] configuredIdeal) static LargestEafDifferencelargestEafDifference(List<Dataset> datasets, double[] reference, int intervals) static double[][]normalise(double[][] points) static double[][]normalise(double[][] points, double[] targetRange, double[] lower, double[] upper, boolean[] maximise) static int[]paretoRank(double[][] points) static int[]paretoRank(double[][] points, boolean[] maximise) static DatasetreadDataset(InputStream input) static DatasetreadDataset(Path path) static doubletotalWeightedHypervolume(double[][] points, double[][] rectangles, double[] reference) static doubletotalWeightedHypervolume(double[][] points, double[][] rectangles, double[] reference, boolean[] maximise, double[] ideal, double scaleFactor) static doubletotalWeightedHypervolume(double[][] points, double[][] rectangles, double[] reference, double[] ideal, double scaleFactor) static VorobevResultvorobev(double[][] points, int[] sets, double[] reference) static doublevorobevDeviation(double[][] points, int[] sets, double[] reference) static doublevorobevDeviation(double[][] points, int[] sets, double[] reference, double[][] configuredExpectation) static doubleweightedHypervolume(double[][] points, double[][] rectangles, double[] reference) static doubleweightedHypervolume(double[][] points, double[][] rectangles, double[] reference, boolean[] maximise)
-
Method Details
-
igd
public static double igd(double[][] points, double[][] reference) -
igd
public static double igd(double[][] points, double[][] reference, boolean[] maximise) -
igdPlus
public static double igdPlus(double[][] points, double[][] reference) -
igdPlus
public static double igdPlus(double[][] points, double[][] reference, boolean[] maximise) -
averageHausdorffDistance
public static double averageHausdorffDistance(double[][] points, double[][] reference, int p) -
averageHausdorffDistance
public static double averageHausdorffDistance(double[][] points, double[][] reference) -
averageHausdorffDistance
public static double averageHausdorffDistance(double[][] points, double[][] reference, boolean[] maximise, int p) -
epsilonAdditive
public static double epsilonAdditive(double[][] points, double[][] reference) -
epsilonAdditive
public static double epsilonAdditive(double[][] points, double[][] reference, boolean[] maximise) -
epsilonMultiplicative
public static double epsilonMultiplicative(double[][] points, double[][] reference) -
epsilonMultiplicative
public static double epsilonMultiplicative(double[][] points, double[][] reference, boolean[] maximise) -
exactR2
public static double exactR2(double[][] points, double[] reference) -
exactR2
public static double exactR2(double[][] points, double[] reference, boolean[] maximise) -
hypervolume
public static double hypervolume(double[][] points, double[] reference) -
hypervolume
public static double hypervolume(double[][] points, double reference) -
hypervolume
public static double hypervolume(double[][] points, double[] reference, boolean[] maximise) -
hypervolumeContributions
public static double[] hypervolumeContributions(double[][] points, double[] reference) -
hypervolumeContributions
public static double[] hypervolumeContributions(double[][] points, double[] reference, boolean[] maximise) -
hypervolumeContributions
public static double[] hypervolumeContributions(double[][] points, double[] reference, boolean[] maximise, boolean ignoreDominated) -
approximateHypervolume
public static double approximateHypervolume(double[][] points, double[] reference, HypervolumeApproximation method) -
approximateHypervolume
public static double approximateHypervolume(double[][] points, double[] reference) -
approximateHypervolume
public static double approximateHypervolume(double[][] points, double[] reference, boolean[] maximise, long samples, long seed, HypervolumeApproximation method) -
isNondominated
public static boolean[] isNondominated(double[][] points) -
isNondominated
public static boolean[] isNondominated(double[][] points, boolean[] maximise, boolean keepWeakly) -
anyDominated
public static boolean anyDominated(double[][] points) -
anyDominated
public static boolean anyDominated(double[][] points, boolean[] maximise, boolean keepWeakly) -
filterDominated
public static double[][] filterDominated(double[][] points) -
filterDominated
public static double[][] filterDominated(double[][] points, boolean[] maximise, boolean keepWeakly) -
isNondominatedWithinSets
public static boolean[] isNondominatedWithinSets(double[][] points, int[] sets, boolean[] maximise, boolean keepWeakly) -
isNondominatedWithinSets
public static boolean[] isNondominatedWithinSets(double[][] points, int[] sets) -
filterDominatedWithinSets
-
filterDominatedWithinSets
-
paretoRank
public static int[] paretoRank(double[][] points) -
paretoRank
public static int[] paretoRank(double[][] points, boolean[] maximise) -
normalise
public static double[][] normalise(double[][] points) -
normalise
public static double[][] normalise(double[][] points, double[] targetRange, double[] lower, double[] upper, boolean[] maximise) -
generateNondominatedSet
public static double[][] generateNondominatedSet(int size, int objectives, NondominatedSetShape shape, long seed) -
generateNondominatedSet
public static double[][] generateNondominatedSet(int size, int objectives, NondominatedSetShape shape, RandomGenerator random) -
generateIntegerNondominatedSet
public static long[][] generateIntegerNondominatedSet(int size, int objectives, NondominatedSetShape shape, long seed) -
eaf
public static double[][] eaf(double[][] points, int[] sets) -
eaf
public static double[][] eaf(double[][] points, int[] sets, double[] percentiles) -
eafDifference
public static double[][] eafDifference(Dataset left, Dataset right, Integer intervals, boolean[] maximise, EafDifferenceFormat format) -
eafDifference
-
eafDifference
-
vorobev
-
vorobevDeviation
public static double vorobevDeviation(double[][] points, int[] sets, double[] reference) -
vorobevDeviation
public static double vorobevDeviation(double[][] points, int[] sets, double[] reference, double[][] configuredExpectation) -
weightedHypervolume
public static double weightedHypervolume(double[][] points, double[][] rectangles, double[] reference) -
weightedHypervolume
public static double weightedHypervolume(double[][] points, double[][] rectangles, double[] reference, boolean[] maximise) -
totalWeightedHypervolume
public static double totalWeightedHypervolume(double[][] points, double[][] rectangles, double[] reference, double[] ideal, double scaleFactor) -
totalWeightedHypervolume
public static double totalWeightedHypervolume(double[][] points, double[][] rectangles, double[] reference, boolean[] maximise, double[] ideal, double scaleFactor) -
totalWeightedHypervolume
public static double totalWeightedHypervolume(double[][] points, double[][] rectangles, double[] reference) -
hypeWeightedHypervolume
public static double hypeWeightedHypervolume(double[][] points, double[] reference, double[] ideal, boolean[] maximise, int samples, long seed, HypeDistribution distribution, double[] mu) -
hypeWeightedHypervolume
public static double hypeWeightedHypervolume(double[][] points, double[] reference, double[] ideal) -
largestEafDifference
public static LargestEafDifference largestEafDifference(List<Dataset> datasets, double[] reference, int intervals) -
largestEafDifference
-
largestEafDifference
public static LargestEafDifference largestEafDifference(List<Dataset> datasets, double[] reference, boolean[] maximise, int intervals, double[] configuredIdeal) -
applyWithinSets
public static double[] applyWithinSets(double[][] points, int[] sets, ToDoubleFunction<double[][]> operation) -
applyRowsWithinSets
public static double[] applyRowsWithinSets(double[][] points, int[] sets, Function<double[][], double[]> operation) -
applyMatricesWithinSets
public static double[][] applyMatricesWithinSets(double[][] points, int[] sets, Function<double[][], double[][]> operation) -
readDataset
- Throws:
IOException
-
readDataset
- Throws:
IOException
-
getDataset
- Throws:
IOException
-
getDatasetPath
- Throws:
IOException
-
getDatasetPath
public static Path getDatasetPath(String name, boolean force, int retries, Duration delay) throws IOException - Throws:
IOException
-