CPXXgetdblqualityCPXgetdblquality

例程 CPXXgetdblquality/CPXgetdblquality 用于访问关于问题当前解的质量的双精度值信息。

int  CPXXgetdblquality( CPXCENVptr 环境, CPXCLPptr lp, double * 质量_p, int 什么 )

int  CPXgetdblquality( CPXCENVptr 环境, CPXCLPptr lp, double * 质量_p, int 什么 )

描述

例程 CPXXgetdblquality/CPXgetdblquality 用于访问关于问题当前解的质量的双精度值信息。

解(虽然不一定是可行或最优解)必须在 CPLEX 问题对象中可用于任何质量测量(Kappa 统计除外)。 您可以在缺少解的情况下查询 Kappa 统计,但是以下条件必须满足:

  • 必须使用单纯形法优化器来对子问题求解。
  • 必须打开参数MIP kappa 计算(也称为 "MIPKappaStats或 "CPXPARAM_MIP_Strategy_KappaStats)。
  • 在分支裁剪过程中,CPLEX 已经至少处理了一个 LP 基底。

否则,CPLEX 将返回错误 CPXERR_NO_KAPPASTATS,从而指定没有 kappa 统计可用。

最大边界不可行性识别最大边界违规。 最大界限违规可能有助于确定无可行解的问题的原因。 如果最大边界违规超过可行性容错的量较小,那么可能可以通过增大可行性容错来获取问题的可行解法。 如果问题为最佳,那么最大界限违规将指出不会导致问题不可行地终止的可行性容差最小设置。

The quality values are returned in the double variable pointed to by the argument quality_p.

有关质量符号的文档,请参阅 "解决方案质量符号 CPLEX 可调用库(C API)",其中列出了符号,并提供了可调用库(C API)参考手册中每个符号的进一步文档链接。

参数

env
一个指向 CPXXopenCPLEX/CPXopenCPLEX 例程所返回 CPLEX 环境的指针。
lp
一个指向 CPXXcreateprob/CPXcreateprob 所返回 CPLEX 问题对象的指针。
quality_p
指向 double 变量的指针,该变量用于存储所请求的质量值。 如果发生错误,那么质量值保持不变。
what
一个符号常量,用于指定要检索的质量值。 一个解决方案的可能质量值列于 "CPLEX 可调用库(C API)的解决方案质量符号和 "可调用库参考手册中。

返回

如果此例程成功,那么会返回 0,而如果发生错误,那么会返回非零。 如果发生错误,那么质量值保持不变。

示例


status = CPXgetdblquality (env, lp, &max_x, CPX_MAX_X);