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
018 package org.apache.commons.math.estimation;
019
020 /**
021 * This interface represents an estimation problem.
022 *
023 * <p>This interface should be implemented by all real estimation
024 * problems before they can be handled by the estimators through the
025 * {@link Estimator#estimate Estimator.estimate} method.</p>
026 *
027 * <p>An estimation problem, as seen by a solver is a set of
028 * parameters and a set of measurements. The parameters are adjusted
029 * during the estimation through the {@link #getUnboundParameters
030 * getUnboundParameters} and {@link EstimatedParameter#setEstimate
031 * EstimatedParameter.setEstimate} methods. The measurements both have
032 * a measured value which is generally fixed at construction and a
033 * theoretical value which depends on the model and hence varies as
034 * the parameters are adjusted. The purpose of the solver is to reduce
035 * the residual between these values, it can retrieve the measurements
036 * through the {@link #getMeasurements getMeasurements} method.</p>
037 *
038 * @see Estimator
039 * @see WeightedMeasurement
040 *
041 * @version $Revision: 811786 $ $Date: 2009-09-06 11:36:08 +0200 (dim. 06 sept. 2009) $
042 * @since 1.2
043 * @deprecated as of 2.0, everything in package org.apache.commons.math.estimation has
044 * been deprecated and replaced by package org.apache.commons.math.optimization.general
045 *
046 */
047 @Deprecated
048 public interface EstimationProblem {
049
050 /**
051 * Get the measurements of an estimation problem.
052 * @return measurements
053 */
054 WeightedMeasurement[] getMeasurements();
055
056 /**
057 * Get the unbound parameters of the problem.
058 * @return unbound parameters
059 */
060 EstimatedParameter[] getUnboundParameters();
061
062 /**
063 * Get all the parameters of the problem.
064 * @return parameters
065 */
066 EstimatedParameter[] getAllParameters();
067
068 }