I am working on Pure LP problem with around 3 Million Constraints and I am currently using objective function with different weights. But to improve run time I am hoping to explore DoCPLEX multi- objective import "ObjectiveSense". Before implementation I wanted to understand how this solve works.
For Example:
My Objective Function is Maximize(-1000B -100C +10A -D -0.1E) Using Multi- Objective it is: ObjectiveSense.Maximize, [-B,A,-C,-D,-E], priorities=[5, 4, 3, 2, 1])
The one of the problem with weights is if 10A gets B1000 (which can be possible in few case) then A gets prioritized over B
Does Multi-Objective prevents this situation? Will it strictly prioritize B over all?
in https://developer.ibm.com/docloud/blog/2019/03/12/multiobjective-optimization-for-lp-and-mip-in-cplex/
you may read
With priorities you get hierarchical KPIs so a less important KPI even with a huge value won t get more important than a less important KPI
Let me share a tiny example out of the zoo example:
which gives