001/* 002 * Licensed to the Apache Software Foundation (ASF) under one or more 003 * contributor license agreements. See the NOTICE file distributed with 004 * this work for additional information regarding copyright ownership. 005 * The ASF licenses this file to You under the Apache License, Version 2.0 006 * (the "License"); you may not use this file except in compliance with 007 * the License. You may obtain a copy of the License at 008 * 009 * http://www.apache.org/licenses/LICENSE-2.0 010 * 011 * Unless required by applicable law or agreed to in writing, software 012 * distributed under the License is distributed on an "AS IS" BASIS, 013 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 014 * See the License for the specific language governing permissions and 015 * limitations under the License. 016 */ 017 018package org.apache.commons.math3.optimization; 019 020import org.apache.commons.math3.analysis.differentiation.MultivariateDifferentiableVectorFunction; 021import org.apache.commons.math3.random.RandomVectorGenerator; 022 023/** 024 * Special implementation of the {@link MultivariateDifferentiableVectorOptimizer} 025 * interface adding multi-start features to an existing optimizer. 026 * 027 * This class wraps a classical optimizer to use it several times in 028 * turn with different starting points in order to avoid being trapped 029 * into a local extremum when looking for a global one. 030 * 031 * @deprecated As of 3.1 (to be removed in 4.0). 032 * @since 3.1 033 */ 034@Deprecated 035public class MultivariateDifferentiableVectorMultiStartOptimizer 036 extends BaseMultivariateVectorMultiStartOptimizer<MultivariateDifferentiableVectorFunction> 037 implements MultivariateDifferentiableVectorOptimizer { 038 /** 039 * Create a multi-start optimizer from a single-start optimizer. 040 * 041 * @param optimizer Single-start optimizer to wrap. 042 * @param starts Number of starts to perform (including the 043 * first one), multi-start is disabled if value is less than or 044 * equal to 1. 045 * @param generator Random vector generator to use for restarts. 046 */ 047 public MultivariateDifferentiableVectorMultiStartOptimizer( 048 final MultivariateDifferentiableVectorOptimizer optimizer, 049 final int starts, 050 final RandomVectorGenerator generator) { 051 super(optimizer, starts, generator); 052 } 053}