Work-around for multi-objective optimization #614
-
Hi all, the documentation notes that the UP does not support multi-objective optimization. Is that note up-to-date? I would benefit from being able to minimize action cost and then the makespan, in a If I cannot use multiple metrics, is there any modeling work-around to being able to do that? Best, |
Beta Was this translation helpful? Give feedback.
Replies: 2 comments 8 replies
-
Dear Nicola, one straightforward proposition is to consider the linear combination So any planner that can optimize arbitrary linear functions should be useable. TAMER does optimize each of your functions but it is not clear to me what metric expressions are well supported. You can find about the technique above in the book by Miettinen "Nonlinear Multiobjective Optimization", Springer, 1999. I can provide more detailed bib ref later. EDIT: added mathematical property and explanation |
Beta Was this translation helpful? Give feedback.
-
Hello again, The precise reference to the book I mentioned above is Kaisa Miettinen. Nonlinear multiobjective optimization. International series in operations research & management science , volume 12. 1998. Springer Science+Business Media. I mentioned the method in Chapter 3, "A Posteriori Methods," section 3.1. Note that when the optimization problem is a Linear Program, doing "proper" search on the surrogate objective (what Miettinen calls an "a posterior" method) requires solving a linearly constrained quadratic problem. Miettinen attributes the origins of this method to these references, which may be easier to access but perhaps not aligned with contemporary theory and practice in optimization Gass S., Saaty T., The Computational Algorithm for the Parametric Objective Function, Zadeh L., Optimality and Non-Scalar- Valued Performance Criteria, There are ways to proceed with general planning problems that cannot be efficiently captured by linear constraints. However, this discussion would be off-topic for this forum. Good hunting, Miquel. |
Beta Was this translation helpful? Give feedback.
Well, this method is more general as it is meant to construct pareto-optimal solutions in the case where there is no hierarchisation between several objective functions (pareto optimization). In @nicola-gigante 's case however, makespan is only used as a tie-breaker among solutions with optimal action-costs (lexicographic optimization).
@nicola-gigante yes in this case the documentation is lagging a bit behind. I did not put it forward immediately as I wanted to have it battle-tested before publicizing it. I am now confident that is correct, modulo some limitation in the kind of expressions that would be supported, such as multiplications (in these cases however, the planner should give y…