The neldermead component has too many options.
Reported by Michael BAUDIN
Originally assigned to Michael BAUDIN
-- Bug description --
The neldermead component has too many options.
The number of options would be easy to reduce, while keeping the number of
essential features constant.
(0) The -myterminate and -outputcommand functions must be merged into one single function, which would provide both features. This would allow to fix the bug #7890.
(1) The -myterminateflag is unnecessary, since, if the user provides a terminate
function, then the -myterminate is already nonzero.
(2) The -tolssizedeltafvmethod / -toldeltafv options are not necessary. The user can always configure its own termination criteria with the -myterminate option. The component may provide a function neldermead_termfminsearch instead, to reproduce the termination criteria of fminsearch.
(3) The -tolvarianceflag, -tolabsolutevariance, -tolrelativevariance are not necessary. In order to reproduce this termination criteria, a function neldermead_termvariancef can be defined.
(4) The -costfargument option is unnecessary. The same feature may be provided with a list in the costf function, where the first item is the function, and the remaining items are the additionnal arguments.
(5) The -outputcommandarg option is unnecessary. The same feature can be provided with the previous trick.
Moreover, some of the parameters have undocumented default value:
-method
-simplex0method
-costfargument
-outputcommand
-outputcommandarg
-toldeltafv
-tolabsolutevariance
-tolrelativevariance
-restartsimplexmethod
The default values should be consistently be indicated in braces.
-- Scilab error message --
-- How to reproduce the bug --