next up previous contents
Next: 5. Application Up: 4. Optimizer Previous: 4.6 Optimizer Module Interactions


4.7 Optimizer Protocol

Data between the executable and the framework is transmitted over input and output streams. Over these connections the requests, results and additional data concerning the optimization progress are sent.

The data exchange is done defining the optimizer protocol, an ASCII format using a number of keywords. Requests from the optimizer have a LISP like syntax and are summarized in Table 4.5.


Table 4.5: Requests in the optimizer protocol.
Name Description
evaluate Request a new evaluation
Example: (evaluation ((par1 0.01) (par2 1e-12) ... ) ((id 7)))
gradient Request an evaluation of a finite difference used for the calculation of the gradient.
Example: like evaluation
reduction Print the relative reduction of the least-squares of the residuum in the current optimization step.
Example: (reduction 0.17)
statistics Print statistics described in Section F.3.
Example: (statistics (model (df 3) .........
jacobian Print the Jacobian matrix. This output is for debugging purpose only.
Example: (jacobian (0.23 0.023 ...) ...)
result Return the result of the optimization. The first integer value is the status and indicates if the optimization was finished successfully or failed.
Example: (result 2 ((par1 0.01) ... ))

The results of the evaluations are returned to the optimizer in the following syntax.

value ... request_id

The result consists of one or more values of the evaluation function and the integer request identification. In case of the nonlinear constrained optimizer, the values of the model function consist of the target function, the equality constraints, and the inequality constraints in the same order as in the description file.

For the least-squares optimizer the evaluation function consists of the values of the residual vector. The size of this vector must be declared in the experiment file.


next up previous contents
Next: 5. Application Up: 4. Optimizer Previous: 4.6 Optimizer Module Interactions

R. Plasun