BCP_tm_par Struct Reference

Parameters used in the Tree Manager process. More...

#include <BCP_tm_param.hpp>

Inheritance diagram for BCP_tm_par:

Inheritance graph
[legend]
List of all members.

Public Types

 AlgorithmicVariablesAreGenerated
 Indicates whether algorithmic variables will be generated or not.
 IndexedVariablesAreGenerated
 Indicates whether indexed variables will be generated or not.
 DebugLpProcesses
 Indicates whether to debug LP processes or not.
 DebugCgProcesses
 Indicates whether to debug Cut Generator processes or not.
 DebugVgProcesses
 Indicates whether to debug Variable Generator processes or not.
 DebugCpProcesses
 Indicates whether to debug Cut Pool processes or not.
 DebugVpProcesses
 Indicates whether to debug Variable Pool processes or not.
 MessagePassingIsSerial
 Indicates whether message passing is serial (all processes are on the same processor) or not.
 PriceInRootBeforePhase2
 Indicates whether to do pricing (variable generation) in the root before the second phase of the algorithm.
 ReportWhenDefaultIsExecuted
 Print out a message when the default version of an overridable method is executed.
 TrimTreeBeforeNewPhase
 Indicates whether to trim the search tree before a new phase.
 RemoveExploredBranches
 Indicates whether that part of the tree that's completely explored should be freed as soon as possible.
 VerbosityShutUp
 A flag that instructs BCP to be (almost) absolutely silent.
 end_of_chr_params
 TmVerb_SingleLineInfoFrequency
 At every this many search tree node provide a single line info on the progress of the search tree.
 TreeSearchStrategy
 Which search tree enumeration strategy should be used.
 NiceLevel
 How resource-hog the processes should be.
 LpProcessNum
 The number of LP processes that should be spawned.
 CgProcessNum
 The number of Cut Generator processes that should be spawned.
 CpProcessNum
 The number of Cut Pool processes that should be spawned.
 VgProcessNum
 The number of Variable Generator processes that should be spawned.
 VpProcessNum
 The number of Variable Pool processes that should be spawned.
 TmTimeout
 ???
 end_of_int_params
 UnconditionalDiveProbability
 The probability with which the LP process is directed to dive.
 QualityRatioToAllowDiving_HasUB
 The LP process is allowed to dive if the ratio between the quality (for now the presolved objective value) of the child to be kept and the best quality among the candidate nodes is not larger the this parameter.
 QualityRatioToAllowDiving_NoUB
 Same as above, but this value is used if an upper bound does not exist yet.
 Granularity
 ??? Values: Default:
 MaxRunTime
 Maximum allowed running time.
 TerminationGap_Absolute
 ??? Values: Default:
 TerminationGap_Relative
 ??? Values: Default:
 UpperBound
 ??? Values: Default:
 end_of_dbl_params
 SaveRootCutsTo
 The name of the file where those cuts should be saved that were in the root node in the 0-th phase at the end of processing the root node.
 ReadRootCutsFrom
 The name of the file where cuts to be added to the root description should be read ot from.
 ExecutableName
 The name of the executable that's running (and that should be spawned on the other processors.
 LogFileName
 ???
 end_of_str_params
 LpMachines
 ???
 CgMachines
 ???
 VgMachines
 ???
 CpMachines
 ???
 VpMachines
 ???
 end_of_str_array_params
enum  chr_params {
  AlgorithmicVariablesAreGenerated, IndexedVariablesAreGenerated, DebugLpProcesses, DebugCgProcesses,
  DebugVgProcesses, DebugCpProcesses, DebugVpProcesses, MessagePassingIsSerial,
  PriceInRootBeforePhase2, ReportWhenDefaultIsExecuted, TrimTreeBeforeNewPhase, RemoveExploredBranches,
  VerbosityShutUp, TmVerb_First, TmVerb_AllFeasibleSolutionValue, TmVerb_AllFeasibleSolution,
  TmVerb_BetterFeasibleSolutionValue, TmVerb_BetterFeasibleSolution, TmVerb_BestFeasibleSolution, TmVerb_NewPhaseStart,
  TmVerb_PrunedNodeInfo, TmVerb_TimeOfImprovingSolution, TmVerb_TrimmedNum, TmVerb_FinalStatistics,
  TmVerb_ReportDefault, TmVerb_Last, end_of_chr_params
}
 Character parameters. More...
enum  int_params {
  TmVerb_SingleLineInfoFrequency, TreeSearchStrategy, NiceLevel, LpProcessNum,
  CgProcessNum, CpProcessNum, VgProcessNum, VpProcessNum,
  TmTimeout, end_of_int_params
}
 Integer parameters. More...
enum  dbl_params {
  UnconditionalDiveProbability, QualityRatioToAllowDiving_HasUB, QualityRatioToAllowDiving_NoUB, Granularity,
  MaxRunTime, TerminationGap_Absolute, TerminationGap_Relative, UpperBound,
  end_of_dbl_params
}
 Double parameters. More...
enum  str_params {
  SaveRootCutsTo, ReadRootCutsFrom, ExecutableName, LogFileName,
  end_of_str_params
}
 String parameters. More...
enum  str_array_params {
  LpMachines, CgMachines, VgMachines, CpMachines,
  VpMachines, end_of_str_array_params
}
 ??? More...

Detailed Description

Parameters used in the Tree Manager process.

These parameters can be set in the original parameter file by including the following line:
BCP_{parameter name} {parameter value}

Definition at line 10 of file BCP_tm_param.hpp.


Member Enumeration Documentation

enum BCP_tm_par::chr_params

Character parameters.

Most of these variables are used as booleans (true = 1, false = 0).

Enumerator:
AlgorithmicVariablesAreGenerated  Indicates whether algorithmic variables will be generated or not.

Values: 1 (true), 0 (false). Default: 0.

IndexedVariablesAreGenerated  Indicates whether indexed variables will be generated or not.

Values: 1 (true), 0 (false). Default: 0.

DebugLpProcesses  Indicates whether to debug LP processes or not.

Values: 1 (true), 0 (false). Default: 0.

DebugCgProcesses  Indicates whether to debug Cut Generator processes or not.

Values: 1 (true), 0 (false). Default: 0.

DebugVgProcesses  Indicates whether to debug Variable Generator processes or not.

Values: 1 (true), 0 (false). Default: 0.

DebugCpProcesses  Indicates whether to debug Cut Pool processes or not.

Values: 1 (true), 0 (false). Default: 0.

DebugVpProcesses  Indicates whether to debug Variable Pool processes or not.

Values: 1 (true), 0 (false). Default: 0.

MessagePassingIsSerial  Indicates whether message passing is serial (all processes are on the same processor) or not.

Values: 1 (true), 0 (false). Default: 0.

PriceInRootBeforePhase2  Indicates whether to do pricing (variable generation) in the root before the second phase of the algorithm.

Values: 1 (true), 0 (false). Default: 0.

ReportWhenDefaultIsExecuted  Print out a message when the default version of an overridable method is executed.

Default: 1.

TrimTreeBeforeNewPhase  Indicates whether to trim the search tree before a new phase.

Values: 1 (true), 0 (false). Default: 0.

RemoveExploredBranches  Indicates whether that part of the tree that's completely explored should be freed as soon as possible.

This conserves memory, but may make it harder to track what's happening in the tree. Values: 1 (true), 0 (false). Default: 1.

VerbosityShutUp  A flag that instructs BCP to be (almost) absolutely silent.

It zeros out all the XxVerb flags even if the verbosity flag is set to 1 later in the parameter file. Exceptions (flags whose status is not changed) are: TmVerb_SingleLineInfoFrequency, TmVerb_FinalStatistics and TmVerb_BestFeasibleSolution. Default: 0.

TmVerb_First  Just a marker for the first TmVerb.
TmVerb_AllFeasibleSolutionValue  Print the value of *any* integer feasible solution found.

(BCP_tm_prob::process_message)

TmVerb_AllFeasibleSolution  Invoke the user-written "display_feasible_solution" function if any* feasible solution is found.

(BCP_tm_prob::process_message)

TmVerb_BetterFeasibleSolutionValue  Print the value of the integer solution when a solution better than the current best solution is found.

(BCP_tm_prob::process_message)

TmVerb_BetterFeasibleSolution  Invoke the user-written "display_feasible_solution" function if a better integral feasible solution is found.

(BCP_tm_prob::process_message)

TmVerb_BestFeasibleSolution  Invoke "display_feasible_solution" user routine for the best feasible solution after the entire tree is processed.

(BCP_tm_wrapup)

TmVerb_NewPhaseStart  Print the "Starting phase x" line.

(BCP_tm_tasks_before_new_phase)

TmVerb_PrunedNodeInfo  Print information about nodes that are pruned by bound in the tree manager.

These nodes would be returned by the LP if they were sent there, so prune them in the TM instead. (BCP_tm_start_one_node)

TmVerb_TimeOfImprovingSolution  Print the time (and the solution value and solution if the above paramters are set appropriately) when any/better solution is found.

(BCP_tm_prob::process_message)

TmVerb_TrimmedNum  Print the number of nodes trimmed between phases.

(BCP_tm_trim_tree_wrapper)

TmVerb_FinalStatistics  Print statistics: running time, tree size, best solution value.

(For the best solution set TmVerb_BestFeasibleSolution.

TmVerb_ReportDefault  Print out a message when the default version of an overridable method is executed.

Default: 1.

TmVerb_Last  Just a marker for the last TmVerb.
end_of_chr_params 

Reimplemented in BCP_parameter_set< BCP_tm_par >.

Definition at line 13 of file BCP_tm_param.hpp.

enum BCP_tm_par::int_params

Integer parameters.

Enumerator:
TmVerb_SingleLineInfoFrequency  At every this many search tree node provide a single line info on the progress of the search tree.

If <= 0 then never. Default: 0.

TreeSearchStrategy  Which search tree enumeration strategy should be used.

Values: 0 (BCP_BestFirstSearch), 1 (BCP_BreadthFirstSearch), 2 (BCP_DepthFirstSearch). Default: 0

NiceLevel  How resource-hog the processes should be.

Interpretation is system dependent, and the value is passed directly to the renice() function. Usually the bigger the number the less demanding the processes will be.

LpProcessNum  The number of LP processes that should be spawned.
CgProcessNum  The number of Cut Generator processes that should be spawned.
CpProcessNum  The number of Cut Pool processes that should be spawned.

Values:

VgProcessNum  The number of Variable Generator processes that should be spawned.
VpProcessNum  The number of Variable Pool processes that should be spawned.
TmTimeout  ???
end_of_int_params 

Reimplemented in BCP_parameter_set< BCP_tm_par >.

Definition at line 112 of file BCP_tm_param.hpp.

enum BCP_tm_par::dbl_params

Double parameters.

Enumerator:
UnconditionalDiveProbability  The probability with which the LP process is directed to dive.

Values: Default:

QualityRatioToAllowDiving_HasUB  The LP process is allowed to dive if the ratio between the quality (for now the presolved objective value) of the child to be kept and the best quality among the candidate nodes is not larger the this parameter.

This ratio is applied if an upper bound already exists. Values: Default:

QualityRatioToAllowDiving_NoUB  Same as above, but this value is used if an upper bound does not exist yet.

Values: Default:

Granularity  ??? Values: Default:
MaxRunTime  Maximum allowed running time.
TerminationGap_Absolute  ??? Values: Default:
TerminationGap_Relative  ??? Values: Default:
UpperBound  ??? Values: Default:
end_of_dbl_params 

Reimplemented in BCP_parameter_set< BCP_tm_par >.

Definition at line 142 of file BCP_tm_param.hpp.

enum BCP_tm_par::str_params

String parameters.

Enumerator:
SaveRootCutsTo  The name of the file where those cuts should be saved that were in the root node in the 0-th phase at the end of processing the root node.
ReadRootCutsFrom  The name of the file where cuts to be added to the root description should be read ot from.
ExecutableName  The name of the executable that's running (and that should be spawned on the other processors.
LogFileName  ???
end_of_str_params 

Reimplemented in BCP_parameter_set< BCP_tm_par >.

Definition at line 170 of file BCP_tm_param.hpp.

enum BCP_tm_par::str_array_params

???

Enumerator:
LpMachines  ???
CgMachines  ???
VgMachines  ???
CpMachines  ???
VpMachines  ???
end_of_str_array_params 

Reimplemented in BCP_parameter_set< BCP_tm_par >.

Definition at line 187 of file BCP_tm_param.hpp.


The documentation for this struct was generated from the following file:
Generated on Sun Nov 14 14:12:18 2010 for Coin-All by  doxygen 1.4.7