For details about the methodology we refer to:
Kalyanmoy Deb and Mohamed Abouhawwash. An optimality theory-based proximity measure for set-based multiobjective optimization. IEEE Trans. Evolutionary Computation, 20(4):515–528, 2016. URL: https://doi.org/10.1109/TEVC.2015.2483590, doi:10.1109/TEVC.2015.2483590.
Kalyanmoy Deb, Mohamed Abouhawwash, and Haitham Seada. A computationally fast convergence measure and implementation for single-, multiple-, and many-objective optimization. IEEE Trans. Emerging Topics in Comput. Intellig., 1(4):280–293, 2017. URL: https://doi.org/10.1109/TETCI.2017.2719707 doi:10.1109/TETCI.2017.2719707.
Original Paper Submitted to IEEE Transactions on Emerging Topics in Computational Intelligence. KKTPM Calculator an Open Source Software (OSS) implementation of all Karush Kuhn Tucker Proximity Measure approximations. KKTPM Calculator is developed in Java and provided under Apache License Version 2.0. Give yourself a kick-start by reading the Quick Start Guide.
KKTPM Calculator provides an easy interface through which practitioners can make use of the new metric without delving into the intricacies of proofs and calculations. It can be used to calculate all the four approximations (direct, projected, adjusted and approximate) along with the corresponding set of Lagrange multipliers at a specific point.
The library supports both low and high levels of interactions. On the low level, users can call the library directly from their Java codes, provide it with the already calculated objectives, constraints and gradients (of both objectives and constraints). The library then uses these values to calculate Lagrange multipliers and the required KKTPM approximation. On the high level, users can provide KKTPM Calculator with the mathematical formulas of all objectives, constraints and gradients along with the coordinates of the designated point in x-space. KKTPM Calculator compiles these formulas into objects at runtime and evaluates them at the designated point. Then, the library continues with the aforementioned low level procedure.
To further simplify high level interactions, KKTPM Calculator supports XML-based input. Users can encapsulate the whole optimization problem description in an XML file and feed it directly to the library. The specific XML format used to create this input file is governed by our schema found here. See a sample XML input file below.