ContentsIndexHome
PreviousUpNext
Options handling

AIMMS maintains a number of general solver options that can (and should) be used by any solver that is linked to AIMMS. You do not have to inform AIMMS which of these options are applicable to your solver. These option settings will be passed to your solver automatically along with the values of your own solver-specific options. 

If your solver has a number of specific options, and you want to be able to control these options from within AIMMS, you must register these solver-specific options with AIMMS. 

In AIMMS, all options are categorized using a tree-like hierarchy. If you link your solver to AIMMS, your solver will be assigned its own section in this tree in which your solver-specific options are placed. To support this hierarchy of options, you should also categorize your options in a tree-like hierarchy, and pass this hierarchy to AIMMS. 

AIMMS initiates the process of registering all solver-specific options through a call to the function GetOptionsInfo. This function should return

  • the total number of option categories present (at least one),
  • the total number of integer-valued options, and
  • the total number of double-valued options.

AIMMS will call this function initially during solver registration, and, subsequently, every time the Project Options dialog box is opened by the user. 

For each option category, AIMMS will call the function GetCategoryName to retrieve the name to be displayed in the Project Options dialog box. 

For each integer- or double-valued option, AIMMS will call one of the functions

to retrieve

  • the name of the option,
  • the lower and upper bound plus the default value,
  • the option category underneath which the option must be placed plus the index within this category,
  • information whether the option supports keywords (only for integer options),
  • information whether the option's value can be changed during solver progress.

For integer-valued options AIMMS offers a facility to translate integer values into keywords. This makes it easier for a user to set the option. For example, 'on' and 'off' can be used as meaningful keywords for the integer values 1 and 0. If you have indicated in a call to GetIntegerOption that a particular integer option supports keywords, AIMMS will call the function GetIntegerKeyword to retrieve the corresponding keyword strings. You should try to use these keyword options as much as possible, because it is much easier for a user to select from a number of descriptive keywords, than to select a rather abstract integer number.

Copyright © 1993–2016 by AIMMS B.V. All rights reserved.