Почему на этапе «внешнего сжатия» алгоритма Нелдера-Мида точка отражения отбрасывается? - PullRequest
0 голосов
/ 08 декабря 2018

На этапе "внешнего сжатия" алгоритма Нелдера-Мида в реализации scipy, а также в оригинальной статье, на которую они ссылаются, точка рефракции xr отбрасывается, если внешняя сокращенная точка xc не лучше, ив этом случае алгоритм переходит к этапу сжатия.С другой стороны, шаг внешнего сжатия выполняется, только если xr лучше, чем наихудшая точка симплекса.Так в чем же причина не заменять наихудшую точку отраженной и продолжать без усадки?

Вот код из реализации scipy https://github.com/scipy/scipy/blob/7405dfb4cf273878ac36c66f4a523ba183bd547c/scipy/optimize/optimize.py#L620-L628

if fxr < fsim[-1]:
    xc = (1 + psi * rho) * xbar - psi * rho * sim[-1]
    fxc = func(xc)

    if fxc <= fxr:
        sim[-1] = xc
        fsim[-1] = fxc
    else:
        doshrink = 1
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...