octave-maintainers
[Top][All Lists]
Advanced

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

Re: NLSCON


From: Jskud
Subject: Re: NLSCON
Date: Thu, 18 Aug 2005 06:55:14 -0700

> 3) are there other plans to support constrained, non-linear
> optimisation techniques ?

Yes, there are two I know about.

(1) SQP: John has a sequential quadratic programming solution already
    integrated into Octave (cf. optimization/sqp.m).  sqp doc states

    ## Solve the nonlinear program
    ##      min phi (x)
    ##       x
    ## subject to
    ##      g(x)  = 0
    ##      h(x) >= 0
    ## using a successive quadratic programming method.

(2) SOLNP: I have secured permission from Yinyu Ye to release his
    self-contained "SOLNP" dense constrained nonlinear solver, under
    GPL.  The problem formulation for it is as follows.

    ##         min f(x)
    ##          x
    ## subject to
    ##             g(x) = 0
    ##     lo_h <= h(x) <= hi_h
    ##     lo_x <=   x  <= hi_x
    ##
    ## In general, $f$, $g$ and $h$ are any nonlinear smooth functions
    ## that may be specified and computed in Octave.

    SOLNP is just two functions, written entirely in Octave.  It is
    simpler to use, works well, and ran twice as fast as a
    reimplementation of the method-of-multipliers I wrote.

    I've heavily commented and restructured the code, added diagnostics,
    added references, corrected confusing typo's, and made minor changes
    to avoid globals (but as far as I can tell, the code was bug free,
    so what's out there is safe to use), and created a
    developer-friently test suite for it.

    And, due largely to my daughter, the port of the (substantial) SOLNP
    documentation to txi is almost done (info done, going back and
    adding the TeX specific stuff); also still need to create some
    automatic validation to run as part of a build.

    I expect to release SOLNP into the Octave source stream by 30Sep05.

Hope this helps.

/Jskud



reply via email to

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