对多目标问题求解
解释如何对多目标问题求解。
CPLEX 多目标优化算法按优先级值降序方式对目标进行排序。 如果若干目标的优先级相同,那么使用提供的加权属性将这些目标混合在单个目标中。 因此,CPLEX 会构建一个目标(或混合目标)排序表,每个目标都有一个唯一优先级。 接着,CPLEX 可以继续按此字典序查找最小解(或最大解)。
要获得此解,请以分层方式按优先级值降序排序依次对每个目标进行优化。 找到目标(或混合目标)的最优解后,对于剩余的(较低优先级)目标,CPLEX 仅将先前(较高优先级)已优化目标的最优解视为解。 所有解法值(包括主变量和对偶变量、降低的成本以及主可行性状态和对偶可行性状态)都对应于已求解的最后一个子问题的解法。
AbsTol 和 RelTol 这两个属性用于放宽范围,要求在每个步骤中,在先前优化问题的最优解范围内对目标进行优化。 更确切地说,AbsTol 和 RelTol 会在绝对项和相对项中为每个目标指定其最优值所允许的最大偏差。 但是,目标松弛的含义取决于多目标问题为 LP 还是 MIP。
MIP
相对偏差或绝对偏差整合到关联目标上的约束中。 对于这些值,保留其缺省值 0 意味着将下一次优化限制为仅考虑来自先前优化的最优设置的解。
LP
对于 LP,CPLEX 使用通常更快的方法,此类方法涉及缩减成本固定,以强制实施字典序多目标优化。 这样会改变绝对容差和相对容差的含义。 绝对容差定义缩减成本阈值,关联 LP 解析中高于该阈值的非基本变量将固定在其所在的界限。 该值通常是相对较小的值,如优化容错(其缺省值为 1e-6)。 它用于定义有意义的值,以便在多目标模型上下文中定义显著的缩减成本(不同于优化容错针对单一 LP 解析定义的有意义的缩减成本)。 根据此解释,相对容差不含任何有意义的定义,并且不予使用。