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. Larger is the percentage of accepted moves, larger is the diversification of the search, better is the convergence toward high-quality 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¶
GetLocalSolver |
Returns the LocalSolver object associated to these statistics. |
GetRunningTime |
Gets the running time in seconds. |
GetNbIterations |
Gets the number of iterations. |
GetNbMoves |
Gets the number of (attempted) moves. |
GetNbAcceptedMoves |
Gets the number of accepted moves. |
GetNbImprovingMoves |
Gets the number of accepted moves having improved the cost of the current solution. |
GetNbRejectedMoves |
Gets the number of rejected moves. |
GetNbInfeasibleMoves |
Gets the number of moves leading to infeasible solutions. |
GetPercentAcceptedMoves |
Gives the percentage of accepted moves relative to the number of moves. |
GetPercentImprovingMoves |
Gives the percentage of improving moves relative to the number of moves. |
GetPercentRejectedMoves |
Gives the percentage of rejected moves relative to the number of moves. |
GetPercentInfeasibleMoves |
Gives the percentage of infeasible moves relative to the number of moves. |
GetInfo |
Returns useful info about the search while running. |
ToString |
Returns a string representation of the statistics. |
Instance methods¶
-
LocalSolver
GetLocalSolver
()¶ Returns the LocalSolver object associated to these statistics.
Returns: LocalSolver object
-
int
GetRunningTime
()¶ 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
Plaused
orStopped
.Returns: Running time in seconds.
-
long
GetNbMoves
()¶ Gets the number of (attempted) moves. This corresponds to the number of explored solutions (feasible or infeasible). Only allowed in states
Paused
orStopped
.Returns: Number of (attempted) moves.
-
long
GetNbAcceptedMoves
()¶ Gets the number of accepted moves. Only allowed in states
Paused
orStopped
.Returns: Number of accepted moves.
-
long
GetNbImprovingMoves
()¶ 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
Paused
orStopped
.Returns: Number of improving moves.
-
long
GetNbRejectedMoves
()¶ Gets the number of rejected moves. Only allowed in states
Paused
orStopped
.Returns: Number of rejected moves.
-
long
GetNbInfeasibleMoves
()¶ Gets the number of moves leading to infeasible solutions. Infeasible moves are a part of rejected moves. Only allowed in states
Paused
orStopped
.Returns: Number of infeasible moves.
-
double
GetPercentAcceptedMoves
()¶ Gives the percentage of accepted moves relative to the number of moves. Only allowed in states
Paused
orStopped
.Returns: Percentage of accepted moves.
-
double
GetPercentImprovingMoves
()¶ Gives the percentage of improving moves relative to the number of moves. Only allowed in states
Paused
orStopped
.Returns: Percentage of improving moves.
-
double
GetPercentRejectedMoves
()¶ Gives the percentage of rejected moves relative to the number of moves. Only allowed in states
Paused
orStopped
.Returns: Percentage of rejected moves.
-
double
GetPercentInfeasibleMoves
()¶ Gives the percentage of infeasible moves relative to the number of moves. Only allowed in states
Paused
orStopped
.Returns: Percentage of infeasible moves.
-
string
GetInfo
()¶ Returns useful info about the search while running. Only allowed if the solver has been started at least once. Only allowed in states
Paused
orStopped
. 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.