Minpack added for solving non-linear equations and non-linear least-squares



>>>>> "ziga" == ziga lenarcic <iga> writes:

    ziga> Hi!
    ziga> Nice to see minimisation in maxima finally. I would like to stress  

lbfgs has been there for a while.

    ziga> the importance of proper maxima-level interface to minpack. In the  
    ziga> past Andrej V. tried to do a simple interface to quadpack routines,  
    ziga> but somehow mailing list couldn't agree on the name, so maxima still  
    ziga> has no interface to numerical integration functions.

Of course Maxima has an interface to numerical integration routines;
it just doesn't have the names that you like.

    ziga> Hopefully this will not be the case this time.

    ziga> In my opinion the underlying method names and routine names should be  
    ziga> hidden to the user. Maxima level function should be named by "what  
    ziga> they do", not "what method they use". So I'm in favour of functions  
    ziga> "find_minimum" rather than "minpack_minimize" or something along  
    ziga> those lines. The user should call an appropriately named function  
    ziga> (this goes for quadpack also), which should then decide which method  
    ziga> will be called. Ofcourse user has also the option to choose the  
    ziga> method and set options if he wants to, but an usable soultion should  
    ziga> be found with a simple function call.

I'm not smart enough to create the all-powerful, all-solving
find_minimum routine that works for everyone everywhere.  I'll leave
that for someone smarter than me.

I will provide some kind of minpack_<foo> that might do something
useful for someone, with, perhaps, some convenience features to
compute the Jacobian.  If someone wants to hook that into
find_minimum, that's fine with me.

    ziga> I would also suggest agains naming packages via their fortran names.  
    ziga> A package "load(optimization)$" should include minimization, perhaps  
    ziga> fitting, linearprogramming/simplex functions imo. I think the user  
    ziga> has a right of not getting to know the names of fortran numerical  
    ziga> libraries, when he wants a simple numerical approximation of an  
    ziga> integral/ fit a function. Maxima should provide that.

Good suggestion.  But optimization is such a vague name.  Does it load
zillions of packages that are remotely related to optimization?  Even
if the user only needs one simple optimization routine?

    ziga> Hope someone writes nice wrapping functions for minpack.

That someone could be you! :-)

Ray