# Optimization Object Configuration

### Description

This functions configures the current optimization object with the given
`value`

for the given `key`

.

### Usage

1 2 | ```
optimbase.set(this = NULL, key = NULL, value = NULL)
optimbase.histset(this = NULL, iter = NULL, key = NULL, value = NULL)
``` |

### Arguments

`this` |
The current optimization object. |

`key` |
The key to configure. See details for the list of possible keys. |

`value` |
The value to assign to the key. |

`iter` |
The iteration at which the data must be stored. |

### Details

`optimbase.set`

set the content of the `key`

element of the
optimization object `this`

to `value`

.

The only available keys in `optimbase.set`

are the following:

- 'verbose'
Set to 1 to enable verbose logging.

- 'x0'
The initial guesses, as a n x 1 column vector, where n is the number of variables.

- 'fx0'
The value of the cost function at the initial point estimate.

- 'xopt'
The optimum point estimate.

- 'fopt'
The value of the cost function at the optimum point estimate.

- 'tolfunabsolute'
The absolute tolerance for the function value.

- 'tolfunrelative'
The relative tolerance for the function value.

- 'tolfunmethod'
The method used for the tolerance on function value in the termination criteria. The following values are available: TRUE, FALSE. If this criteria is triggered, the status of the optimization is set to 'tolf'.

- 'tolxabsolute'
The absolute tolerance on x.

- 'tolxrelative'
The relative tolerance on x.

- 'tolxmethod'
The method used for the tolerance on x in the termination criteria. The following values are available: TRUE, FALSE. If this criteria is triggered during optimization, the status of the optimization is set to 'tolx'.

- 'maxfunevals'
The maximum number of function evaluations. If this criteria is triggered during optimization, the status of the optimization is set to 'maxfuneval' (see

`vignette('optimbase',package='optimbase')`

for more details).- 'funevals'
The number of function evaluations.

- 'maxiter'
The maximum number of iterations. If this criteria is triggered during optimization, the status of the optimization is set to 'maxiter' (see

`vignette('optimbase',package='optimbase')`

for more details).- 'iterations'
The number of iterations.

- 'function'
The objective function, which computes the value of the cost function and the non linear constraints, if any. See

`vignette('optimbase',package='optimbase')`

for the details of the communication between the optimization system and the cost function.- 'status'
A string containing the status of the optimization.

- 'historyxopt'
A list, with nbiter element, containing the history of x during the iterations. This list is available after optimization if the history storing was enabled with the

`storehistory`

element.- 'historyfopt'
An vector, with nbiter values, containing the history of the function value during the iterations. This vector is available after optimization if the history storing was enabled with the

`storehistory`

element.- 'verbosetermination'
Set to 1 to enable verbose termination logging.

- 'outputcommand'
A command which is called back for output. Details of the communication between the optimization system and the output command function are provided in

`vignette('optimbase',package='optimbase')`

.- 'outputcommandarg'
An additionnal argument, passed to the output command.

- 'numberofvariables'
The number of variables to optimize.

- 'storehistory'
Set to TRUE to enable the history storing.

- 'costfargument'
An additionnal argument, passed to the cost function.

- 'boundsmin'
The minimum bounds for the parameters.

- 'boundsmax'
The maximum bounds for the parameters.

- 'nbineqconst'
The number of inequality constraints.

- 'logfile'
The name of the log file.

- 'logfilehandle'
Set to 1 if logging has been started

- 'logstartup'
Set to 1 if logging has been started

- 'withderivatives'
Set to TRUE if the algorithm uses derivatives.

The only available keys in `optimbase.histset`

are 'historyxopt' and
'historyfopt'. Contrary to `optimbase.set`

, this function only alters
the value of `historyxopt`

and `historyfopt`

at the specific
iteration `iter`

.

### Value

An updated optimization object.

### Author(s)

Author of Scilab optimbase module: Michael Baudin (INRIA - Digiteo)

Author of R adaptation: Sebastien Bihorel (sb.pmlab@gmail.com)

### See Also

`optimbase`