Contenido principal

Esta página se ha traducido mediante traducción automática. Haga clic aquí para ver la última versión en inglés.

GlobalOptimSolution

Solución de optimización

Descripción

Un objeto GlobalOptimSolution contiene información sobre un mínimo local, incluida la ubicación, el valor de la función objetivo y el punto o puntos de inicio que conducen al mínimo.

GlobalSearch y MultiStart generan un vector de objetos GlobalOptimSolution. El vector se ordena por valor de función objetivo, desde el más bajo (mejor) al más alto (peor). GlobalSearch y MultiStart combinan soluciones que coinciden con soluciones encontradas previamente dentro de las tolerancias. Para obtener más detalles sobre GlobalSearch, consulte Update Solution Set en When fmincon Runs. Para obtener más detalles sobre MultiStart, consulte Create GlobalOptimSolution Object.

Creación

Cuando ejecuta run y solicita la salida solutions, GlobalSearch y MultiStart crean objetos GlobalOptimSolution como salida.

Propiedades

expandir todo

Condición de salida del solucionador local, devuelta como un entero. Generalmente, un Exitflag positivo corresponde a un óptimo local, y un Exitflag cero o negativo corresponde a una búsqueda fallida de un mínimo local.

Para conocer el significado exacto de cada Exitflag, consulte la descripción de exitflag en la página de referencia de la función de resolución local correspondiente:

Tipos de datos: double

Valor de la función objetivo, devuelto como un escalar real. Para los solucionadores lsqnonlin y lsqcurvefit, Fval es la suma de los cuadrados del residuo.

Tipos de datos: double

Estructura de salida devuelta por el solucionador local. Para obtener más detalles, consulte la descripción de output en la página de referencia de la función de resolución local correspondiente:

Tipos de datos: struct

Solución local, devuelta como un arreglo con las mismas dimensiones que problem.x0.

Tipos de datos: double

Puntos de inicio que conducen a la solución actual, devueltos como un arreglo de celdas. Controle la distancia entre puntos considerados como distintos configurando las propiedades FunctionTolerance y XTolerance del solucionador global.

Tipos de datos: cell

Ejemplos

contraer todo

Utilice MultiStart para crear un vector de objetos GlobalOptimSolution para un problema con múltiples mínimos locales.

rng default % For reproducibility
ms = MultiStart;
sixmin = @(x)(4*x(1)^2 - 2.1*x(1)^4 + x(1)^6/3 ...
    + x(1)*x(2) - 4*x(2)^2 + 4*x(2)^4);
problem = createOptimProblem('fmincon','x0',[-1,2],...
    'objective',sixmin,'lb',[-3,-3],'ub',[3,3]);
[xmin,fmin,flag,outpt,allmins] = run(ms,problem,30);
MultiStart completed the runs from all start points. 

All 30 local solver runs converged with a positive local solver exitflag.

allmins es un vector de objetos GlobalOptimSolution.

disp(allmins)
  1x6 GlobalOptimSolution array with properties:

    X
    Fval
    Exitflag
    Output
    X0

Grafique los valores de la función objetivo en las soluciones devueltas.

plot(arrayfun(@(x)x.Fval,allmins),'k*')
xlabel('Solution number')
ylabel('Function value')
title('Solution Function Values')

Figure contains an axes object. The axes object with title Solution Function Values, xlabel Solution number, ylabel Function value contains a line object which displays its values using only markers.

Para examinar los puntos iniciales que conducen a las distintas soluciones, véase Visualize the Basins of Attraction .

Historial de versiones

Introducido en R2010a