NEOS Server Home

NEOS Interfaces to TRON

WWW Form & Sample Submissions
E-mail
XML-RPC

TRON



The NEOS Server offers TRON for the solution of large bound constrained nonlinear optimization problems. TRON, a trust region Newton method, uses a gradient projection method to generate a Cauchy step, a preconditioned conjugate gradient method with an incomplete Cholesky factorization to generate a direction, and a projected search to compute the step. The use of projected searches, in particular, allows TRON to examine faces of the feasible set by generating a small number of minor iterates, even for problems with a large number of variables. As a result TRON is remarkably efficient at solving large bound-constrained optimization problems.

TRON was developed by Chih-Jen Lin and Jorge J. More'.


Using the NEOS Server for TRON

To solve a bound constrained minimization problem, the user must submit to the server:



Number of Variables:



Number of Element Functions:


You need to specify the absolute path to a file containing a Fortran subroutine that defines the starting point. Remember that since the subroutine is in Fortran, the spacing is important. This subroutine needs to be in the following format:
   subroutine initpt(n,x)
       n - integer (input)
           number of variables
       x - double precision, length n (output)
           starting point

Initial Point Subroutine:


You need to specify the absolute path to a file containing a Fortran subroutine that defines the values of the element functions which make up the objective. This subroutine needs to be in the following format:
      subroutine fcn(n,x,nf,fvec)
            n - integer (input)
                number of variables
            x - double precision, length n (input)
                vector of variables
           nf - integer (input)
                number of element functions
         fvec - double precision, length nf (output)
                element functions at x

Extended Function Subroutine:


You need to specify the absolute path to a file containing a Fortran subroutine that defines the lower and upper bounds on the variables. This subroutine needs to be in the following format:
      subroutine xbound(n,xl,xu)
       n - integer (input)
           number of variables
      xl - double precision, length n (output)
           lower bound
      xu - double precision, length n (output)
           upper bound

   (If x(i) has no lower bound, then do not assign a value to xl(i), similarly
    if x(i) has no upper bound, then xu(i) should not be set.) 


Bounds on Variables Subroutine:


If provided, these values will affect various halting tolerances.
Absolute Error:



Relative Error:



Projected gradient norm:



Minimum function value:



Comments:


Put in priority queue
e-mail address:

Please do not click the 'Submit to NEOS' button more than once.


NEOS Server Home
Submit comments and questions


DOE disclaimer
DOE Web privacy policy