List of usage examples for com.google.common.primitives Doubles min
public static double min(double... array)
From source file:br.usp.lti.cdds.metaheuristics.RoulleteSelection.java
public static Solution select(ArrayList<Solution> solutionSet) { double[] prob = new double[solutionSet.size()]; for (int i = 0; i < prob.length; i++) { prob[i] = solutionSet.get(i).getFitness(); }/* w ww. j av a 2s . c o m*/ double min = Doubles.min(prob); double max = Doubles.max(prob); double sum = 0; for (int i = 0; i < prob.length; i++) { prob[i] = (max - prob[i]) / (max - min); sum += prob[i]; } for (int i = 0; i < prob.length; i++) { prob[i] = prob[i] / sum; } //prepare roullete int[] roullete = new int[100]; int roulletepos = 0; for (int i = 0; i < prob.length; i++) { double roulletepart = Math.round(prob[i] * 100.0); for (int k = 0; k < roulletepart && roulletepos < roullete.length; k++) { roullete[roulletepos++] = i; } } int truepos; //do{ Random rdn = new Random(); int selected = rdn.nextInt(roullete.length); truepos = roullete[selected]; //}while(truepos==previousSelected); return solutionSet.get(truepos); }
From source file:org.eclipse.recommenders.jayes.transformation.SmoothedFactorDecomposition.java
@Override protected double[] toLatentSpace(double[] v, List<double[]> best) { double min = Doubles.min(v); double[] latent = new double[v.length + 1]; latent[0] = min;//from w w w . j av a2s. com double[] h = new double[v.length]; Arrays.fill(h, min); MathUtils.secureSubtract(v, h, h); System.arraycopy(h, 0, latent, 1, h.length); return latent; }
From source file:inflor.core.transforms.LogrithmicTransform.java
public void optimize(double[] data) { min = Doubles.min(data); max = Doubles.max(data); }
From source file:org.esa.s3tbx.olci.radiometry.rayleigh.SpikeInterpolation.java
public static double getUpperValue(double[] doubles, double val) { final List<Double> xMin = new ArrayList<>(); int length = doubles.length; IntStream.range(0, length).forEach(i -> { double v = doubles[i]; if (v >= val) { xMin.add(v);// ww w . j av a 2s . c om } }); double[] allMax = Doubles.toArray(xMin); if (allMax.length == 0) { throw new IllegalArgumentException("Can fine the closest max value of " + val); } return Doubles.min(allMax); }
From source file:inflor.core.plots.CategoryResponseChart.java
public JFreeChart createChart(FCSFrame dataFrame) { CategoryXYZDataSet categoryData = new CategoryXYZDataSet(); double zMin = Double.MAX_VALUE; double zMax = 1; if (dataFrame.getKeywords().containsKey(FCSUtilities.KEY_MERGE_MAP)) { String[] mergeMap = dataFrame.getKeywordValue(FCSUtilities.KEY_MERGE_MAP) .split(NodeUtilities.DELIMITER_REGEX); FCSDimension dim = dataFrame.getDimension(axisName); double[] transformedData = transform.transform(dim.getData()); int perFileSize = dim.getData().length / mergeMap.length; for (int i = 0; i < mergeMap.length; i++) { double[] unMergedData = new double[perFileSize]; for (int j = 0; j < unMergedData.length; j++) { unMergedData[j] = transformedData[i * unMergedData.length + j]; }//from ww w .j av a 2 s . co m double tMin = transform.getMinTranformedValue(); double tMax = transform.getMaxTransformedValue(); Histogram1D hist = new Histogram1D(unMergedData, tMin, tMax, ChartingDefaults.BIN_COUNT); double[] x = hist.getNonZeroX(); double[] y = new double[x.length]; for (int j = 0; j < y.length; j++) { y[j] = i; } double[] z = hist.getNonZeroY(); double currentZMin = Doubles.min(z); double currentZMax = Doubles.max(z); if (currentZMin < zMin) { zMin = currentZMin; } else if (currentZMax > zMax) { zMax = currentZMax; } categoryData.addCategoricalSeries(mergeMap[i], x, z); } } else { FCSDimension dim = dataFrame.getDimension(axisName); double[] transformedData = transform.transform(dim.getData()); Histogram1D hist = new Histogram1D(transformedData, transform.getMinTranformedValue(), transform.getMaxTransformedValue(), ChartingDefaults.BIN_COUNT); double[] x = hist.getNonZeroX(); double[] y = new double[x.length]; for (int j = 0; j < y.length; j++) { y[j] = 0; } double[] z = hist.getNonZeroY(); double currentZMin = Doubles.min(z); double currentZMax = Doubles.max(z); if (currentZMin < zMin) { zMin = currentZMin; } else if (currentZMax > zMax) { zMax = currentZMax; } categoryData.addCategoricalSeries(dataFrame.getDisplayName(), x, z); } ValueAxis domainAxis = PlotUtils.createAxis(axisName, transform); NumberAxis rangeAxis = new CategoricalNumberAxis("", categoryData.getLabelMap()); // Renderer configuration XYBlockRenderer renderer = new XYBlockRenderer(); double xWidth = (transform.getMaxTransformedValue() - transform.getMinTranformedValue()) / ChartingDefaults.BIN_COUNT; renderer.setBlockWidth(xWidth); renderer.setBlockHeight(0.5); renderer.setBlockAnchor(RectangleAnchor.LEFT); PaintScale paintScale = PlotUtils.createPaintScale(zMax, ChartingDefaults.DEFAULT_COLOR_SCHEME); renderer.setPaintScale(paintScale); // Add to panel. XYPlot responsePlot = new XYPlot(categoryData, domainAxis, rangeAxis, renderer); JFreeChart chart = new JFreeChart(responsePlot); chart.removeLegend(); return chart; }
From source file:com.davidbracewell.math.linear.DenseVector.java
@Override public double min() { return Doubles.min(map); }
From source file:edu.cmu.lti.oaqa.baseqa.answer.collective_score.scorers.EditDistanceCollectiveAnswerScorer.java
@Override public Map<String, Double> score(JCas jcas, Answer answer) { Map<Answer, Double> neighbor2distance = distances.row(answer); ImmutableMap.Builder<String, Double> builder = ImmutableMap.builder(); for (int topLimit : topLimits) { double[] distances = answers.subList(0, Math.min(answers.size(), topLimit)).stream() .mapToDouble(neighbor -> neighbor2distance.getOrDefault(neighbor, 0.0)).toArray(); builder.put("edit-distance-min-" + topLimit, Doubles.min(distances)); builder.put("edit-distance-max-" + topLimit, Doubles.max(distances)); builder.put("edit-distance-avg-" + topLimit, DoubleStream.of(distances).average().orElse(0.0)); }/*ww w.j a v a2s . com*/ return builder.build(); }
From source file:com.davidbracewell.math.linear.SparseVector.java
@Override public double min() { return Doubles.min(map.values().elements()); }
From source file:com.mgmtp.perfload.perfalyzer.binning.PerfMonBinningStrategy.java
private void writeAggregatedLine(final WritableByteChannel destChannel) throws IOException { double[] allValues = binManager.flatValuesStream().toArray(); StrBuilder sb = new StrBuilder(); String min = intNumberFormat.format(Doubles.min(allValues)); String max = intNumberFormat.format(Doubles.max(allValues)); switch (typeConfig) { case CPU:// ww w . ja va 2 s .c o m case IO: case JAVA: String mean = intNumberFormat.format(StatUtils.mean(allValues)); appendEscapedAndQuoted(sb, DELIMITER, min, mean, max); break; case MEM: case SWAP: Percentile percentile = new Percentile(); percentile.setData(allValues); String q10 = intNumberFormat.format(percentile.evaluate(10d)); String q50 = intNumberFormat.format(percentile.evaluate(50d)); String q90 = intNumberFormat.format(percentile.evaluate(90d)); appendEscapedAndQuoted(sb, DELIMITER, min, q10, q50, q90, max); break; default: throw new IllegalStateException("Invalid perfMon data type"); } writeLineToChannel(destChannel, sb.toString(), Charsets.UTF_8); }
From source file:edu.cmu.lti.oaqa.baseqa.answer.collective_score.scorers.DistanceCollectiveAnswerScorer.java
@Override public Map<String, Double> score(JCas jcas, Answer answer) { Map<Answer, Double> neighbor2distance = distances.row(answer); Map<Answer, Double> neighbor2ndistance = ndistances.row(answer); ImmutableMap.Builder<String, Double> builder = ImmutableMap.builder(); for (int topLimit : topLimits) { double[] distances = answers.subList(0, Math.min(answers.size(), topLimit)).stream() .mapToDouble(neighbor -> neighbor2distance.getOrDefault(neighbor, 0.0)).toArray(); builder.put("distance-min-" + topLimit, Doubles.min(distances)); builder.put("distance-max-" + topLimit, Doubles.max(distances)); builder.put("distance-avg-" + topLimit, DoubleStream.of(distances).average().orElse(0.0)); double[] ndistances = answers.subList(0, Math.min(answers.size(), topLimit)).stream() .mapToDouble(neighbor -> neighbor2ndistance.getOrDefault(neighbor, 0.0)).toArray(); builder.put("ndistance-min-" + topLimit, Doubles.min(ndistances)); builder.put("ndistance-max-" + topLimit, Doubles.max(ndistances)); builder.put("ndistance-avg-" + topLimit, DoubleStream.of(ndistances).average().orElse(0.0)); }//from w w w .ja va2 s . co m return builder.build(); }