Main Content

Solvers de Optimization Toolbox

Los solvers de Optimization Toolbox™ se agrupan en cuatro categorías generales:

  • Minimizadores

    Los solvers de este grupo intentan encontrar un mínimo local de la función objetivo cerca de un punto de inicio x0. Abordan problemas de optimización no restringida, programación lineal, programación cuadrática, programación de cono y programación no lineal general.

  • Minimizadores multiobjetivo

    Los solvers de este grupo intentan minimizar el valor máximo de un conjunto de funciones (fminimax) o encontrar una ubicación en la que un grupo de funciones se encuentra por debajo de unos valores especificados (fgoalattain).

  • Solvers de ecuación

    Los solvers de este grupo intentan encontrar una solución a una ecuación no lineal con valor vectorial o escalar f(x) = 0 cerca de un punto de inicio x0. La resolución de ecuaciones puede considerarse una forma de optimización porque es equivalente a encontrar la norma mínima de f(x) cerca de x0.

  • Solvers de mínimos cuadrados (ajuste de curvas)

    Los solvers de este grupo intentan minimizar una suma de cuadrados. Este tipo de problema normalmente aparece al ajustar un modelo a datos. Los solvers abordan los problemas de encontrar soluciones no negativas, encontrar soluciones acotadas o restringidas linealmente y ajustar modelos no lineales parametrizados a datos sujetos a restricciones suaves.

Para obtener más información, consulte Problemas gestionados por funciones de Optimization Toolbox. Consulte Tabla de decisiones de optimización para obtener ayuda al escoger un solver para la minimización.

Los minimizadores formulan problemas de optimización con el formato

minxf(x),

posiblemente sujetos a restricciones. f(x) se llama función objetivo. En general, f(x) es una función escalar del tipo double y x es un vector o escalar del tipo double. No obstante, la optimización multiobjetivo, la resolución de ecuaciones y algunos minimizadores de suma de cuadrados pueden tener funciones objetivo de vector o de matriz F(x) del tipo double. Para utilizar solvers de Optimization Toolbox para maximizar en lugar de minimizar, consulte Maximizar un objetivo.

Escriba la función objetivo para un solver en forma de un archivo de función o un identificador de función anónima. Puede proporcionar un gradiente ∇f(x) para muchos solvers y puede proporcionar una matriz hessiana para varios solvers. Consulte Escribir la función objetivo. Las restricciones tienen un formato especial, tal y como se describe en Escribir restricciones.