Detalles de tolerancia
Los solvers de Optimization Toolbox™ utilizan tolerancias para decidir cuándo dejar de realizar iteraciones y para medir la calidad de la solución. Consulte Tolerancias y criterios de detención.
Para las cuatro tolerancias más importantes, esta sección describe qué tolerancias son relativas (lo que significa que se escalan de alguna forma con el tamaño o los valores del problema) y cuáles son absolutas (lo que significa que no se escalan con el problema). En la siguiente tabla,
R significa Relativa.
A significa Absoluta.
. significa que no es aplicable.
A* significa Absoluta cuando las tolerancias se comprueban; no obstante, el preprocesamiento puede escalar la entradas hasta cierto punto, por lo que las tolerancias pueden considerarse relativas.
A*, R significa que las restricciones se comprueban primero como Absolutas. Si la comprobación es correcta, el solver devuelve un indicador de salida positivo. Si la comprobación falla, las restricciones se comprueban como Relativas. Si la comprobación es correcta, el solver devuelve un indicador de salida positivo con "mala factibilidad". Si la comprobación falla, el solver devuelve un indicador de salida negativo.
Tolerancias por solver y algoritmo
Solver | Algoritmo | Tolerancia de optimalidad | Tolerancia de función | Tolerancia de paso | Tolerancia de restricción |
---|---|---|---|---|---|
fmincon | 'interior-point' | R | . | R | R |
'sqp' | R | . | R | R | |
'sqp-legacy' | R | . | R | R | |
'active-set' | A | A | A | A | |
'trust-region-reflective' | A | R | A | . | |
fminunc | 'quasi-newton' | R | . | R | . |
'trust-region' | A | R | A | . | |
fminsearch | . | A | A | . | |
fminbnd | . | A | R | . | |
fseminf | A | A | A | A | |
fgoalattain | A | A | A | A | |
fminimax | A | A | A | A | |
linprog | 'dual-simplex' | A* | . | . | A*, R |
'interior-point' | R | . | . | R | |
'interior-point-legacy' | R | . | . | . | |
intlinprog | A* | . | . | A*, R | |
quadprog | 'interior-point-convex' | R | . | R | R |
'trust-region-reflective' , límites | A | R | A | . | |
'trust-region-reflective' , igualdades lineales | . | . | . | . | |
'active-set' | R | . | A | R | |
coneprog | R | R | |||
lsqlin | 'interior-point' | R | . | R | R |
'trust-region-reflective' | A | R | A | . | |
lsqnonneg | . | . | R | . | |
lsqnonlin | 'trust-region-reflective' | A | R | A | . |
'levenberg-marquardt' | R | R | R | . | |
lsqcurvefit | 'trust-region-reflective' | A | R | A | . |
'levenberg-marquardt' | R | R | R | . | |
fsolve | 'trust-region-dogleg' | A | R | R | . |
'trust-region' | A | R | A | . | |
'levenberg-marquardt' | R | R | R | . | |
fzero | . | . | R | . |