Parameter Tuning#

int GRBtunemodel(GRBmodel *model)#

Perform an automated search for parameter settings that improve performance on a model. Upon completion, this routine stores the best parameter sets it found. The number of stored parameter sets can be determined by querying the value of the TuneResultCount attribute. The actual settings can be retrieved using GRBgettuneresult.

Please refer to the parameter tuning section for details on the tuning tool.

Return value:

A non-zero return value indicates that a problem occurred while tuning the model. Refer to the Error Codes table for a list of possible return values. Details on the error can be obtained by calling GRBgeterrormsg.

Arguments:
  • model – The model to be tuned.

Example:
error = GRBtunemodel(model);
if (error) goto QUIT;

error = GRBgetintattr(model, "TuneResultCount", &nresults);
if (error) goto QUIT;
int GRBgettuneresult(GRBmodel *model, int n)#

Use this routine to retrieve the results of a previous GRBtunemodel call. Calling this routine with argument n causes tuned parameter set n to be copied into the model. Parameter sets are stored in order of decreasing quality, with parameter set 0 being the best. The number of available sets is stored in attribute TuneResultCount.

Once you have retrieved a tuning result, you can call GRBoptimize to use these parameter settings to optimize the model, or GRBwrite to write the changed parameters to a .prm file.

Please refer to the parameter tuning section for details on the tuning tool.

Return value:

A non-zero return value indicates that a problem occurred while retrieving a tuning result. Refer to the Error Codes table for a list of possible return values. Details on the error can be obtained by calling GRBgeterrormsg.

Arguments:
  • model – A model that has previously been used as the argument of GRBtunemodel.

  • n – The index of the tuning result to retrieve. The best result is available as index 0. The number of stored results is available in attribute TuneResultCount.

Example:
error = GRBtunemodel(model);
if (error) goto QUIT;

error = GRBgetintattr(model, "TuneResultCount", &nresults);
if (error) goto QUIT;

if (nresults > 0) {
  error = GRBgettuneresult(model, 0);
  if (error) goto QUIT;
}