LSStatistics Class¶

class
localsolver.
LSStatistics
¶ Statistics of the search. The statistics are useful for evaluating the quality of your model. Indeed, your model is suited for LocalSolver (and more generally for local search) if the percentage of accepted moves is larger than 1 % with an annealing level equal to 0. The larger the percentage of accepted moves, the larger the diversification of the search, the better the convergence toward highquality solutions. If the number of accepted moves is too low, we suggests you to relax some constraints of the model (goal programming) or to augment the annealing level. A fine modeling is much preferable to a fine tuning of the search, both for effectiveness and for robustness.
Summary¶
running_time 
Running time in seconds. 
nb_iterations 
Number of iterations. 
nb_moves 
Number of attempted moves. 
nb_accepted_moves 
Number of accepted moves. 
nb_improving_moves 
Number of improving moves. 
nb_rejected_moves 
Number of rejected moves. 
nb_infeasible_moves 
Number of infeasible moves. 
percent_accepted_moves 
Percentage of accepted moves relative to the number of moves. 
percent_improving_moves 
Percentage of improving moves relative to the number of moves. 
percent_rejected_moves 
Percentage of rejected moves relative to the number of moves. 
percent_infeasible_moves 
Percentage of infeasible moves relative to the number of moves. 
info 
Useful info about the search. 
get_running_time 
Gets the running time in seconds. 
get_nb_iterations 
Gets the number of iterations. 
get_nb_moves 
Gets the number of (attempted) moves. 
get_nb_accepted_moves 
Gets the number of accepted moves. 
get_nb_improving_moves 
Gets the number of accepted moves having improved the cost of the current solution. 
get_nb_rejected_moves 
Gets the number of rejected moves. 
get_nb_infeasible_moves 
Gets the number of moves leading to infeasible solutions. 
get_percent_accepted_moves 
Gives the percentage of accepted moves relative to the number of moves. 
get_percent_improving_moves 
Gives the percentage of improving moves relative to the number of moves. 
get_percent_rejected_moves 
Gives the percentage of rejected moves relative to the number of moves. 
get_percent_infeasible_moves 
Gives the percentage of infeasible moves relative to the number of moves. 
get_info 
Returns useful info about the search while running. 
__str__ 
Returns a string representation of the statistics. 
Instance methods¶

LSStatistics.
get_running_time
()¶ Gets the running time in seconds. Note that is the “real” time spent (and not only the CPU or system time). Only allowed in states
LSState.PAUSED
orLSState.STOPPED
.You can also use the shortcut member
running_time
Returns: Running time in seconds Return type: int

LSStatistics.
get_nb_iterations
()¶ Gets the number of iterations. Only allowed in states
LSState.PAUSED
orLSState.STOPPED
.You can also use the shortcut member
nb_iterations
Returns: Number of iterations. Return type: int

LSStatistics.
get_nb_moves
()¶ Gets the number of (attempted) moves. This corresponds to the number of explored solutions (feasible or infeasible). Only allowed in states
LSState.PAUSED
orLSState.STOPPED
.You can also use the shortcut member
nb_moves
Returns: Number of (attempted) moves. Return type: int

LSStatistics.
get_nb_accepted_moves
()¶ Gets the number of accepted moves. Only allowed in states
LSState.PAUSED
orLSState.STOPPED
.You can also use the shortcut member
nb_accepted_moves
Returns: Number of accepted moves. Return type: int

LSStatistics.
get_nb_improving_moves
()¶ Gets the number of accepted moves having improved the cost of the current solution. Improving moves are a part of accepted moves. Only allowed in states
LSState.PAUSED
orLSState.STOPPED
.Returns: Number of improving moves. Return type: int

LSStatistics.
get_nb_rejected_moves
()¶ Gets the number of rejected moves. Only allowed in states
LSState.PAUSED
orLSState.STOPPED
.You can also use the shortcut member
nb_rejected_moves
Returns: Number of rejected moves. Return type: int

LSStatistics.
get_nb_infeasible_moves
()¶ Gets the number of moves leading to infeasible solutions. Infeasible moves are a part of rejected moves. Only allowed in states
LSState.PAUSED
orLSState.STOPPED
.You can also use the shortcut member
nb_infeasible_moves
Returns: Number of infeasible moves. Return type: int

LSStatistics.
get_percent_accepted_moves
()¶ Gives the percentage of accepted moves relative to the number of moves. Only allowed in states
LSState.PAUSED
orLSState.STOPPED
.You can also use the shortcut member
percent_accepted_moves
Returns: Percentage of accepted moves. Return type: double

LSStatistics.
get_percent_improving_moves
()¶ Gives the percentage of improving moves relative to the number of moves. Only allowed in states
LSState.PAUSED
orLSState.STOPPED
.You can also use the shortcut member
percent_improving_moves
Returns: Percentage of improving moves. Return type: double

LSStatistics.
get_percent_rejected_moves
()¶ Gives the percentage of rejected moves relative to the number of moves. Only allowed in states
LSState.PAUSED
orLSState.STOPPED
.You can also use the shortcut member
percent_rejected_moves
Returns: Percentage of rejected moves. Return type: double

LSStatistics.
get_percent_infeasible_moves
()¶ Gives the percentage of infeasible moves relative to the number of moves. Only allowed in states
LSState.PAUSED
orLSState.STOPPED
.You can also use the shortcut member
percent_infeasible_moves
Returns: Percentage of infeasible moves. Return type: double

LSStatistics.
get_info
()¶ Returns useful info about the search while running. Only allowed if the solver has been started at least once. Only allowed in states
LSState.PAUSED
orLSState.STOPPED
. Useful for debugging or logging purposes.Here are some explanations about the output string:
 “mov” corresponds to the number of moves performed.
 “inf” corresponds to the percentage of infeasible moves.
 “acc” corresponds to the percentage of accepted moves.
 “imp” corresponds to the number of improving moves.
Returns: Info about the search while running. Return type: str
Instance attributes¶
All get/set
methods have their attribute counterpart. You can use them as
shortcuts to improve the readability or your models and codes.

LSStatistics.
running_time
¶ Running time in seconds. This attribute is readonly. It is a shortcut for
get_running_time()
.

LSStatistics.
nb_iterations
¶ Number of iterations. This attribute is readonly. It is a shortcut for
get_nb_iterations()
.

LSStatistics.
nb_moves
¶ Number of attempted moves. This attribute is readonly. It is a shortcut for
get_nb_moves()
.

LSStatistics.
nb_accepted_moves
¶ Number of accepted moves. This attribute is readonly. It is a shortcut for
get_nb_accepted_moves()
.

LSStatistics.
nb_improving_moves
¶ Number of improving moves. This attribute is readonly. It is a shortcut for
get_nb_improving_moves()
.

LSStatistics.
nb_rejected_moves
¶ Number of rejected moves. This attribute is readonly. It is a shortcut for
get_nb_rejected_moves()
.

LSStatistics.
nb_infeasible_moves
¶ Number of infeasible moves. This attribute is readonly. It is a shortcut for
get_nb_infeasible_moves()
.

LSStatistics.
percent_accepted_moves
¶ Percentage of accepted moves relative to the number of moves. This attribute is readonly. It is a shortcut for
get_percent_accepted_moves()
.

LSStatistics.
percent_improving_moves
¶ Percentage of improving moves relative to the number of moves. This attribute is readonly. It is a shortcut for
get_percent_improving_moves()
.

LSStatistics.
percent_rejected_moves
¶ Percentage of rejected moves relative to the number of moves. This attribute is readonly. It is a shortcut for
get_percent_rejected_moves()
.

LSStatistics.
percent_infeasible_moves
¶ Percentage of infeasible moves relative to the number of moves. This attribute is readonly. It is a shortcut for
get_percent_infeasible_moves()
.

LSStatistics.
info
¶ Useful info about the search. This attribute is readonly. It is a shortcut for
get_info()
.
Special operators and methods¶

LSStatistics.
__str__
()¶ Returns a string representation of the statistics. Only allowed in states
LSState.PAUSED
orLSState.STOPPED
. Useful for debugging or logging purposes.Returns: String representation. Return type: str