Initializing help system before first use

XPRSinterrupt

Purpose
Interrupts the Optimizer algorithms.
Topic area
Synopsis
int XPRS_CC XPRSinterrupt(XPRSprob prob, int reason);
Arguments
prob 
The current problem.
reason 
The reason for stopping. Possible reasons are:
XPRS_STOP_NONE 
do not stop;
XPRS_STOP_TIMELIMIT 
time limit hit;
XPRS_STOP_WORKLIMIT 
work limit hit;
XPRS_STOP_CTRLC 
control C hit;
XPRS_STOP_NODELIMIT 
node limit hit;
XPRS_STOP_ITERLIMIT 
iteration limit hit;
XPRS_STOP_MIPGAP 
MIP gap is sufficiently small;
XPRS_STOP_SOLLIMIT 
solution limit hit;
XPRS_STOP_USER 
user interrupt;
XPRS_STOP_NEXTOBJECTIVE 
stop the current solve, but continue with solving the next objective (see below);
>= 1000 
user defined value.
Example
Further information
1. The XPRSinterrupt 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 XPRSinterrupt 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.