Cut Pool Parameters

CP_verbosity - integer (0).
[p]Cut Pool Parameters!CP_verbosity Verbosity of the cut pool module.

cp_logging - boolean (0).
[p]Cut Pool Parameters!cp_logging Determines whether the logging option is enabled. In this case, the entire contents of the cut pool are written out periodically to disk (at the same interval as the tree manager log files are written). If this option is set, then the line following must start with the keyword cp_log_file_name and include the appropriate file name as the value.

cp_warm_start - boolean (0).
[p]Cut Pool Parameters!cp_warm_start Used to allow the cut pool to make a warm start by reading in a previously written log file. If this option is set, then the line following must start with the keyword cp_warm_start_file_name and include the appropriate file name as the value.

block_size - integer (5000).
[p]Cut Pool Parameters!block_size Indicates the size of the blocks to allocate when more space is needed in the cut list.

max_size - integer (2000000).
[p]Cut Pool Parameters!max_size Indicates the maximum size of the cut pool in bytes. This is the total memory taken up by the cut list, including all data structures and the array of pointers itself.

max_number_of_cuts - integer (10000).
[p]Cut Pool Parameters!max_number_of_cuts Indicates the maximum number of cuts allowed to be stored. When this max is reached, cuts are forcibly purged, starting with duplicates and then those indicated by the parameter delete_which (see below), until the list is below the allowable size.

min_to_delete - integer (1000).
[p]Cut Pool Parameters!min_to_delete Indicates the number of cuts required to be deleted when the pool reaches it's maximum size.

touches_until_deletion - integer (10).
[p]Cut Pool Parameters!touches_until_deletion When using the number of touches a cut has as a measure of its quality, this parameter indicates the number of touches a cut can have before being deleted from the pool. The number of touches is the number of times in a row that a cut has been checked without being found to be violated. It is a measure of a cut's relevance or effectiveness.

delete_which - integer (DELETE_BY_TOUCHES{2}).
[p]Cut Pool Parameters!delete_which Indicates which cuts to delete when purging the pool. DELETE_BY_TOUCHES indicates that cuts whose number of touches is above the threshold (see touches_until_deletion above) should be purged if the pool gets too large. DELETE_BY_QUALITY{1} indicates that a user-defined measure of quality should be used (see the function user_check_cuts()).

check_which - integer (CHECK_ALL_CUTS{0}).
[p]Cut Pool Parameters!check_which Indicates which cuts should be checked for violation. The choices are to check all cuts (CHECK_ALL_CUTS{0}); only those that have number of touches below the threshold (CHECK_TOUCHES{2}); only those that were generated at a level higher in the tree than the current one (CHECK_LEVEL{1}); or both (CHECK_LEVEL_AND_TOUCHES{3}). Note that with CHECK_ALL_CUTS set, SYMPHONY will still only check the first cuts_to_check cuts in the list ordered by quality (see the function user_check_cut).

cuts_to_check - integer (1000).
[p]Cut Pool Parameters!cuts_to_check Indicates how many cuts in the pool to actually check. The list is ordered by quality and the first cuts_to_check cuts are checked for violation.

Ted Ralphs
2007-12-21