Initializing help system before first use

# repairinfeas

Purpose
Relaxing bounds to repair infeasibility.
Synopsis
`procedure repairinfeas(alrp:array(linctr) of real, agrp:array(linctr) of real, albp:array(mpvar) of real, aubp:array(mpvar) of real)`
`procedure repairinfeas(alrp:array(linctr) of real, agrp:array(linctr) of real, albp:array(mpvar) of real, aubp:array(mpvar) of real, phs2:string, delta:real,optfg:string)`
`procedure repairinfeas(flags:string, lrp:real, grp:real, lbp:real, ubp:real, delta:real)`
`procedure repairinfeas(flags:string)`
`procedure repairinfeas(alrp:array(linctr) of real, agrp:array(linctr) of real, albp:array(mpvar) of real, aubp:array(mpvar) of real,alrb:array(linctr) of real,agrb:array(linctr) of real,albb:array(mpvar) of real,aubb:array(mpvar) of real,phs2:string,delta:real,optfg:string)`
Arguments

alrp | Array of preferences for relaxing the less or equal side of row
agrp | Array of preferences for relaxing the greater or equal side of row
albp | Array of preferences for relaxing lower bounds
aubp | Array of preferences for relaxing upper bounds
alrb | Array of upper bounds to be imposed on the amount of relaxation allowed for the less or equal side of row
agrb | Array of upper bounds to be imposed on the amount of relaxation allowed for the greater or equal side of row
albb | Array of upper bounds to be imposed on the amount of relaxation allowed for lower bounds
aubb | Array of upper bounds to be imposed on the amount of relaxation allowed for upper bounds
phs2 | A 1-character string controling the second phase optimization
lrp | Preference for relaxing the less or equal side of row
grp | Preference for relaxing the greater or equal side of row
lbp | Preference for relaxing lower bounds
ubp | Preference for relaxing upper bounds
delta | Relaxation multiplier for the second phase-1
flags | A 3-character string defining the p/o/g flags
optfg | Flags to be passed to the optimizer

Further information
1. This routine is an interface to the Optimizer functions XPRSrepairweightedinfeas and XPRSrepairinfeas. Please refer to the Xpress Optimizer Reference Manual for further details.
2. The 2 first forms call the Optimizer routine XPRSrepairweightedinfeas. Missing preferences are treated as 0; the default value for phs2 is "d" and the default value for delta is 0.001.
3. The third and fourth forms call the Optimizer routine XPRSrepairinfeas. If flags is not specified (empty string), a default value of "cog" is used. If preferences and delta are not given, all preferences are set to 1 and delta is 0.001.
4. The last form calls the Optimizer routine XPRSrepairweightedinfeasbounds, allowing to bound the amount of relaxation applied on a per row or bound basis. Only positive bounds are applied; a zero or negative bound is ignored and the amount of relaxation allowed for the corresponding row or bound is not limited. The effect of a zero bound on a row or bound would be equivalent with not relaxing it, and can be achieved by setting its preference array value to zero instead, or not including it in the preference arrays. The default value for phs2 is "d".
5. Negative preferences translate to quadratic penalties applied for the corresponding rows or bounds.
Module
mmxprs
Parent Topic Procedures and functions

© 2001-2026 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.