/** * Create a multi-start optimizer from a single-start optimizer * @param optimizer single-start optimizer to wrap * @param starts number of starts to perform (including the * first one), multi-start is disabled if value is less than or * equal to 1 * @param generator random vector generator to use for restarts */ public MultiStartDifferentiableMultivariateVectorialOptimizer( final DifferentiableMultivariateVectorialOptimizer optimizer, final int starts, final RandomVectorGenerator generator) { this.optimizer = optimizer; this.totalIterations = 0; this.totalEvaluations = 0; this.totalJacobianEvaluations = 0; this.starts = starts; this.generator = generator; this.optima = null; setMaxIterations(Integer.MAX_VALUE); setMaxEvaluations(Integer.MAX_VALUE); }
/** * Create a multi-start optimizer from a single-start optimizer * @param optimizer single-start optimizer to wrap * @param starts number of starts to perform (including the * first one), multi-start is disabled if value is less than or * equal to 1 * @param generator random vector generator to use for restarts */ public MultiStartDifferentiableMultivariateVectorialOptimizer( final DifferentiableMultivariateVectorialOptimizer optimizer, final int starts, final RandomVectorGenerator generator) { this.optimizer = optimizer; this.totalIterations = 0; this.totalEvaluations = 0; this.totalJacobianEvaluations = 0; this.starts = starts; this.generator = generator; this.optima = null; setMaxIterations(Integer.MAX_VALUE); setMaxEvaluations(Integer.MAX_VALUE); }