The Mixed Integer Linear Programming Solver

Node Log

The following information about the status of the branch-and-bound algorithm is printed in the node log:

Node

indicates the sequence number of the current node in the search tree.

Active

indicates the current number of active nodes in the branch-and-bound tree.

Sols

indicates the number of feasible solutions found so far.

BestInteger

indicates the best upper bound (assuming minimization) found so far.

BestBound

indicates the best lower bound (assuming minimization) found so far.

Gap

indicates the relative gap between BestInteger and BestBound, displayed as a percentage. If the relative gap is larger than 1,000, then the absolute gap is displayed. If no active nodes remain, the value of Gap is 0.

Time

indicates the elapsed real time.

The LOGFREQ= option can be used to control the amount of information printed in the node log. By default a new entry is included in the log at the first node, at the last node, and at 100-node intervals. A new entry is also included each time a better integer solution is found. The LOGFREQ= option enables you to change the interval between entries in the node log. Figure 8.3 shows a sample node log.

Figure 8.3: Sample Node Log

NOTE: Problem generation will use 4 threads.                                    
NOTE: The problem has 10 variables (0 free, 0 fixed).                           
NOTE: The problem has 0 binary and 10 integer variables.                        
NOTE: The problem has 2 linear constraints (2 LE, 0 EQ, 0 GE, 0 range).         
NOTE: The problem has 20 linear constraint coefficients.                        
NOTE: The problem has 0 nonlinear constraints (0 LE, 0 EQ, 0 GE, 0 range).      
NOTE: The OPTMODEL presolver is disabled for linear problems.                   
NOTE: The MILP presolver value AUTOMATIC is applied.                            
NOTE: The MILP presolver removed 2 variables and 0 constraints.                 
NOTE: The MILP presolver removed 4 constraint coefficients.                     
NOTE: The MILP presolver modified 0 constraint coefficients.                    
NOTE: The presolved problem has 8 variables, 2 constraints, and 16 constraint   
      coefficients.                                                             
NOTE: The MILP solver is called.                                                
NOTE: The parallel Branch and Cut algorithm is used.                            
NOTE: The Branch and Cut algorithm is using up to 4 threads.                    
          Node  Active    Sols    BestInteger      BestBound      Gap    Time   
             0       1       3     85.0000000    158.0000000   46.20%       0   
             0       1       3     85.0000000     88.0955497    3.51%       0   
             0       1       3     85.0000000     88.0955497    3.51%       0   
             0       1       3     85.0000000     88.0955497    3.51%       0   
NOTE: The MILP presolver is applied again.                                      
             0       1       3     85.0000000     88.0955497    3.51%       0   
             0       1       3     85.0000000     88.0626822    3.48%       0   
             0       1       3     85.0000000     87.8820655    3.28%       0   
             0       1       3     85.0000000     87.8539763    3.25%       0   
             0       1       3     85.0000000     87.7208690    3.10%       0   
             0       1       3     85.0000000     87.7180302    3.10%       0   
             0       1       3     85.0000000     87.7133502    3.09%       0   
             0       1       3     85.0000000     87.7128245    3.09%       0   
NOTE: The MILP solver added 2 cuts with 8 cut coefficients at the root.         
             3       1       4     86.0000000     87.3854749    1.59%       0   
             4       0       5     87.0000000     87.0000000    0.00%       0   
NOTE: Optimal.                                                                  
NOTE: Objective = 87.