From GridLAB-D Wiki

The simple class of the optimize module implements a simple optimizer based on Newton's method.

# Properties

- goal (enumeration)
- The goal for the target variable, i.e., EXTREMUM, MINIMUM, or MAXIMUM. By default the goal is EXTREMUM, meaning that the solver will find the extreme that the second derivative leads to from the initial value. If MINIMUM or MAXIMUM is given, the solver will check that the second derivative leads to the desired goal and stop if it does not.

- objective (char1024)
- The target variable that is to be minimized (or maximized). This is specified in the form
*objectname*.*propertyname*and must refer to a double.

- variable (char1024)
- The decision variable that is to be modified to minimize (or maximize) the target variable. This is specified in the form
*objectname*.*propertyname*and must refer to a double.

- constraints (char1024)
- A constraint (optional) given as variable comparisons. The allowed comparisons are <, <=, ==, >=, >, and !=, e.g.,
.*objectname*.*propertyname*< 12.2

- delta (double)
- The value by which the decision variable is altered to estimate the first and second derivatives.

- epsilon (double)
- The value to within which the first derivative must be reduced before stopping the optimization process.

- trials (int32)
- The maximum number of trials allowed before stopping the optimization process.

# Tests

- simple.glm
- This creates a trivial quadratic function which the solver should be able to solve in a single iteration.

- cubic.glm
- This creates two simultaneous cubic problems which the solver should be able to solve concurrently in no more than 5 iterations.

- constrained_simple.glm
- This creates a trivial quadratic function with a constraint on the goal.