In multi-objective optimization, several potentially conflicting objective functions need to be optimized. Instead of one optimal solution, we look for the set of so called non-dominated solutions. An important subset is the set of non-dominated extreme points. Finding it is a computationally hard problem in general. While solvers for similar problems exist, there are none known for multi-objective mixed integer linear programs (MOMILPs) or multi-objective mixed integer quadratically constrained quadratic programs (MOMIQCQPs). We present PaMILO, the first solver for finding non-dominated extreme points of MOMILPs and MOMIQCQPs. It can be found on github under github.com/FritzBo/PaMILO. PaMILO provides an easy-to-use interface and is implemented in C++17. It solves occurring subproblems employing either CPLEX or Gurobi. PaMILO adapts the Dual-Benson algorithm for multi-objective linear programming (MOLP). As it was previously only defined for MOLPs, we describe how it can be adapted for MOMILPs, MOMIQCQPs and even more problem classes in the future.
翻译:在多目标优化中,需要优化多个潜在的冲突目标函数。我们需要寻找多个非支配解而不是一个最佳解。非支配极端点的集合是一个重要的子集。一般来说,找到它是一个计算复杂的问题。虽然已经存在类似问题的求解器,但对于多目标混合整数线性规划(MOMILP)或多目标混合整数二次约束二次规划(MOMIQCQP)等问题还没有人知晓。我们提出了PaMILO,这是一个用于寻找MOMILP和MOMIQCQP的非支配极端点的求解器。你可以在github.com/FritzBo/PaMILO上找到它。PaMILO提供了一个易于使用的接口,采用 C++17 实现。它解决出现的子问题,采用 CPLEX 或 Gurobi 对其进行求解。PaMILO调整了多目标线性规划(MOLP)中的Dual-Benson 算法。因为它以前只用于MOLP,所以我们描述了它如何适用于MOMILP、MOMIQCQP,甚至是未来更多的问题类。