Purpose
Interrupts the Optimizer algorithms.
Topic area
Solution Process
Synopsis
problem.interrupt(reason=xpress.enums.StopType.USER)
Argument
|
reason
|
The reason for stopping. Possible reasons are:
|
xpress.StopType.NONE
|
do not stop;
|
|
xpress.StopType.TIMELIMIT
|
time limit hit;
|
|
xpress.StopType.WORKLIMIT
|
work limit hit;
|
|
xpress.StopType.CTRLC
|
control C hit;
|
|
xpress.StopType.NODELIMIT
|
node limit hit;
|
|
xpress.StopType.ITERLIMIT
|
iteration limit hit;
|
|
xpress.StopType.MIPGAP
|
MIP gap is sufficiently small;
|
|
xpress.StopType.SOLLIMIT
|
solution limit hit;
|
|
xpress.StopType.USER
|
user interrupt;
|
|
xpress.StopType.NEXTOBJECTIVE
|
stop the current solve, but continue with solving the next objective (see below);
|
|
>= 1000
|
user defined value.
|
|
Further information
1. The
problem.interrupt command can be called from any callback.
2. The range of values below 1000 is reserved for future extension. The behavior of the function is undefined if
reason is smaller than 1000 and not one of the values listed above.
3. When solving a multi-objective problem, calling
problem.interrupt with
NEXTOBJECTIVE instructs the Optimizer to accept the current solution and proceed with solving the next objective. For example, this can be used in the
checktime callback to implement a different time limit for each objective. If no solution has been found, no objective fixing will take place. The
SOLVESTATUS attribute reflects the status of the final solve: in particular, if the final objective was solved to optimality then
SOLVESTATUS will be
COMPLETED, even if earlier objectives were interrupted. If a single-objective solve, or the final solve of a multi-objective problem, is interrupted with status
NEXTOBJECTIVE, then
SOLVESTATUS will be
INTERRUPTED and
STOPSTATUS will be
NEXTOBJECTIVE.
Related topics
None.
© 2001-2025 Fair Isaac Corporation. All rights reserved. This documentation is the
property of Fair Isaac Corporation (“FICO”). Receipt or possession of this documentation does not
convey rights to disclose, reproduce, make derivative works, use, or allow others to use it except
solely for internal evaluation purposes to determine whether to purchase a license to the software
described in this documentation, or as otherwise set forth in a written software license agreement
between you and FICO (or a FICO affiliate). Use of this documentation and the software described in
it must conform strictly to the foregoing permitted uses, and no other use is permitted.