octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Contribution to the optimization toolbox


From: Michael D Godfrey
Subject: Re: Contribution to the optimization toolbox
Date: Fri, 04 Sep 2009 10:00:48 -0700
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.1) Gecko/20090814 Fedora/3.0-2.6.b3.fc11 Thunderbird/3.0b3

On 09/04/2009 06:27 AM, Leonardo Martins wrote:
First of all, thank you guys for promptly responding. Secondly, I have
two brief observations following your replies.

  
>> With regard to optimization using Octave, there is a certain overlap
>> between Octave core and the optim toolbox. Likewise, algorithms appear
>> in both, but there is little standardized testing to make sure that
>> methods work well, or to figure out which of a set of algorithms works
>> best for a given type or problem.
      
> Choice of algorithms is always an art. So far fminunc got very little
> testing, but I hope to put some into it as soon as I get the chance.
    
1) Regarding tests, has anyone ever considered interfacing
Octave/Optim Toolbox with CUTEr (http://hsl.rl.ac.uk/cuter-www/) for
more standardized testing? It can be a lot of work, but in the long
run I guess Octave can benefit from knowing exactly where it stands if
compared to other optimization software.

  
I looked at this briefly.  It could be of some use, but it appears
not to have been updated since 2002.  Quite a lot has happened
since then.

  
>>> The optim toolbox is a collection of tools by different authors,
>>> without any planning or coordination. It's open to anyone who has
>>> contributions to make. If someone has enough interest and energy to
>>> try to make it a little more homogeneous, coordinated and complete,
>>> that would be great.
        
2) It seemed to me that, in a first moment, rather than adding new
algorithms to the codebase, it would be more beneficial to build a
more "homogeneous and coordinated" toolbox, and only then make it
"complete." Am I right? That rises another question: what criteria are
used to determine whether a tool goes to the core/(from) toolbox? Is
there any workflow based on reliability, compatibility, or any other
criteria? Does it make more sense to work on the toolbox or the core?

  
This seems to me a very good idea.  I noticed from the Table of
Contents of the Current Manual that there is no separate Section
for Convex Optimization.  This has become increasingly important.
In any case, a key part of your providing more "organization" should
be improvements to the documentation.  (It is not a bad idea to
write the documentation before the code.)  If you want an excellent
introduction to convex optimization (in case you have not already
read it), try:
http://www.stanford.edu/~boyd/cvxbook/

It also happens that Stephen Boyd is supportive of Octave, and,
incidentally, he convinced Cambridge Press to permit his book
(and lecture notes, etc.) to be freely downloadable from the site
above.
I hope I'm not annoying you with so many questions. I just want to
make sure how I can be more useful to the project.
  
No problem!
Thanks,

  -- L.M.
  


reply via email to

[Prev in Thread] Current Thread [Next in Thread]