Безудержная задача минимизации с ненулевым знаменателем - PullRequest
0 голосов
/ 30 октября 2019

Я пытаюсь найти глобальное минимальное значение этой функции. Поскольку в знаменателе у функции х есть ноль, я сначала получил сообщение об ошибке «ZeroDivisionError: деление с плавающей точкой на ноль». Таким образом, я попытался поставить условие, чтобы в формуле не было нуля в знаменателе, но все равно получался знак ошибки (SyntaxError: невозможно назначить вызов функции) ... Не могли бы вы помочь мне с этим?

from scipy.optimize import minimize_scalar

f = lambda x: -((500 - 2.5/x +126.5 - 0.000125*x)/2*(2.5/x +126.5 - 0.000125*x - 5/x - 6) - (0.4*x*(1100 + 2.5/x +126.5 - 0.000125*x))/3200)


x.any() = 1 if x == 0 else x.any()

res = minimize_scalar(f, method='brent')
print(res.x)

SyntaxError: невозможно назначить вызов функции

Большое спасибо за вашу помощь заранее!

...