Quintiq file version 2.0
|
#parent: #root
|
Method HandleInfeasible (MathematicalProgram program, LibOpt_Task task) as LibOpt_Scope
|
{
|
Description:
|
[*
|
Handle the infeasible result of the `MathematicalProgram` here.
|
When overriding this, the provided rollback KPI will not get worse.
|
*]
|
TextBody:
|
[*
|
// To be overridden. Handle the result of the mathematical program here.
|
// When overriding this, the rollback KPI will not get worse.
|
|
message := '';
|
remark := program.Remark();
|
|
if( remark = LibOpt_SuboptimizerMP::MPRemark_Infeasible() )
|
{
|
message := Translations::LibOpt_SuboptimizerMP_Infeasible( this.Name() );
|
}
|
else if( remark = LibOpt_SuboptimizerMP::MPRemark_TimeLimitExceeded() )
|
{
|
message := Translations::LibOpt_SuboptimizerMP_InfeasibleDueToTime( this.Name() );
|
}
|
else
|
{
|
message := Translations::LibOpt_SuboptimizerMP_InfeasibleRemark( this.Name(), remark );
|
}
|
|
error( message );
|
|
return task.Scope();
|
*]
|
}
|