/** * Set the RBF components to random values. * * @param min Minimum random value. * @param max Max random value. * @param t The type of RBF to use. */ public void randomizeRBFCentersAndWidths(final double min, final double max, final RBFEnum t) { final int dimensions = getInputCount(); final double[] centers = new double[dimensions]; for (int i = 0; i < dimensions; i++) { centers[i] = RangeRandomizer.randomize(min, max); } for (int i = 0; i < this.flat.getRBF().length; i++) { setRBFFunction(i, t, centers, RangeRandomizer.randomize(min, max)); } }
/** * Array containing center position. Row n contains centers for neuron n. Row n contains x * elements for x number of dimensions. * * @param centers The centers. * @param widths Array containing widths. Row n contains widths for neuron n. Row n contains x * elements for x number of dimensions. * @param t The RBF Function to use for this layer. */ public void setRBFCentersAndWidths( final double[][] centers, final double[] widths, final RBFEnum t) { for (int i = 0; i < this.flat.getRBF().length; i++) { setRBFFunction(i, t, centers[i], widths[i]); } }