![JAR search and dependency download from the Maven repository](/logo.png)
net.sourceforge.cilib.tuning.parameters.RandomParameterGenerator Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of cilib-library Show documentation
Show all versions of cilib-library Show documentation
A library of composable components enabling simpler Computational Intelligence
/** __ __
* _____ _/ /_/ /_ Computational Intelligence Library (CIlib)
* / ___/ / / / __ \ (c) CIRG @ UP
* / /__/ / / / /_/ / http://cilib.net
* \___/_/_/_/_.___/
*/
package net.sourceforge.cilib.tuning.parameters;
import fj.F;
import static fj.data.List.range;
import net.sourceforge.cilib.math.random.ProbabilityDistributionFunction;
import net.sourceforge.cilib.math.random.UniformDistribution;
import net.sourceforge.cilib.type.types.container.Vector;
import net.sourceforge.cilib.util.functions.Utils;
/**
* Generates a list of values randomly within the given bounds.
*/
public class RandomParameterGenerator extends ParameterGenerator {
private int count;
private ProbabilityDistributionFunction distribution;
public RandomParameterGenerator() {
this.distribution = new UniformDistribution();
this.count = 10;
}
@Override
public Vector _1() {
return Vector.copyOf(
range(0, count).map(new F(){
@Override
public Double f(Integer a) {
return distribution.getRandomNumber();
}
}.andThen(Utils.precision(precision))));
}
public void setCount(int count) {
this.count = count;
}
public int getCount() {
return count;
}
public void setDistribution(ProbabilityDistributionFunction distribution) {
this.distribution = distribution;
}
public ProbabilityDistributionFunction getDistribution() {
return distribution;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy