A função minimizar de scipy com o método “COBYLA” aceita limites?
Estou usando o algoritmo'COBYLA'
no scipy'soptimize.minimize
function (v.0.11 build para cygwin). Eu observei que o parâmetrobounds
parece não ser usado neste caso. Por exemplo, o exemplo simples:
from scipy.optimize import minimize
def f(x):
return -sum(x)
minimize(f, x0=1, method='COBYLA', bounds=(-2,2))
retorna:
status: 2.0
nfev: 1000
maxcv: 0.0
success: False
fun: -1000.0
x: array(1000.0)
message: 'Maximum number of function evaluations has been exceeded.'
em vez do esperado2
parax
.
Alguém percebeu o mesmo problema? Existe um erro conhecido ou erro de documentação? Na documentação do Scipy 0.11, esta opção não é excluída para oCOBYLA algoritmo. Na verdade, a funçãofmin_cobyla
não tem obounds
parâmetro. Obrigado por qualquer dica.