I'm looking for an up to date list of publicly available multiobjective optimization software. I found a few websites with lists of software, but there's indication of how recent they are. I also found 'Multiobjective Optimization Software' by Silvia Poles, Mariana Vassileva, and Daisuke Sasaki in Lecture Notes in Computer Science, 2008. It doesn't look like there is anything in COINOR for multiobjective optimization. Personally, I'm interested in multiobjective combinatorial problems but a list of any software would probably be useful for someone. Commercial software with an academic license is also useful. asked 14 Aug '11, 16:28 Luis de la T...
showing 5 of 9
show 4 more comments

If you want to use traditional MODM methods, which usually integrates objective functions such as weighted methods, global criterion, or goal programming, you might consult "Survey of multiobjective optimization methods for engineering" by Marler and Arora. In addition, you might refer to "Multiple Criteria Decision Making" by Zeleny for a classic textbook. Usually, these methods could be implemented via available single objectivebased optimization software such as CPLEX and Gurobi. However, if you need to solve largescale combinatorial optimization problems, I recommend using a free metaheuristic framework such as ParadisEOMOEO which includes various methods such as MOGA, NSGA, and NSGAII. For getting more familiar with these methods, see "MultiObjective Optimization Using Evolutionary Algorithms" by Deb. The downside of the traditional methods is that they usually give you a single Paretooptimal solution (unless you run them multiple time with various weights or use a method like econstraint). However, multiobjective metaheuristics could give multiple Paretooptimal solutions as they are usually designed to find a Pareto set. answered 15 Aug '11, 11:32 Ehsan ♦ Thanks! ParadisEOMOEO looks interesting. I was hoping to find something that implemented some of these evolutionary algorithms
(15 Aug '11, 11:36)
Luis de la T...

Ted Ralph's SYMPHONY MIP code has a biobjective solver https://projects.coinor.org/SYMPHONY answered 14 Aug '11, 17:47 Matthew Salt... ♦ 
What's the definition of multiobjective objective? Is ROADDEF multiobjective since it has more than 1 soft constraint? Or is it more than just summing the weight of multiple constraints?
Multiobjective literally means that there are multiple objectives. This is a distinct concept from constraints. An example might be a business wanting to maximize profit, while also maximizing customer satisfaction. Either objective could be maximized easily, but there is probably no single solution that maximizes both. There are lots of ways of modelling and dealing with multiobjective problems, for example creating a new objective that includes both the others weighted appropriately, finding a Paretooptimal solution, turning one objective into constraints, etc...
Sorry  I purposely kept it vague because there are so many different approaches to problems with multiple objectives. I would agree with @DC Woods' definition. I expect that specialized software focuses on methods that try to approximate the Pareto front, but this can be done through a lot of methods.
Very interesting stuff :) In my Planner implementations, I've done "weighted appropriately" and "turning one objective into constraints" regularly in the past. The "Pareto" one is interesting, but pretty easy to solve with a custom
ScoreDefinition
, that splits it's softScore into * levels. So it replacesint softScore
with aTreeMap<int level, int sofScore>
. I'd definitely need to make an example with that. Is there a canonical Pareto use case?@Geoffrey De Smet: Maybe, I understood your method incorrectly, but it seems having a similar idea to global critertion and econstraint (i.e. the softScore and leveling ideas). I think this method might fail to work with problems having a weakly nondominated solution space. I've experienced the failure of these two methods against a biobjective SCND problem in which one of the objectives has multiple optima for different levels of the other objective function value. In such cases, I suggest using NSGAII or similar methods.
Finally, would you please elaborate more on "Canonical Pareto"?
I'm not sure there is a canonical Pareto example. The use case is really if you want to see all of the possible solutions that are optimal in the Pareto sense. The Wikipedia example is nice  "one is trying to maximize the strength of a machine component and minimize the production cost". The difficulty of calculating the Pareto front and then using it in some practical application is that you get so many alternative solutions. How do you end up picking one of them in practice? It may simply be useful to know that you can find a solution that does 'well' in some or all of your objectives.
@Luis de la Torre: Thnaks for your answer. Actually, I understand the concept of Pareto optimality. However, my question was more about the term "Canonical Pareto". In fact, here was the first time I heard this term. In addition, a quick search in google didn't help. If your search for it along "multiobjective optimization", goolge returns only 6 results (apparently, this term is more common in the field of robot motion planning).
@Ehsan with a canonical Pareto example, I meant a canonical example of Pareto, not an example of canonical Pareto. It's a parsing problem :)
@Geoffrey De Smet: Thanks for the clarification. Many examples for Pareto efficiency use cases comes to mind. One is the example given by @Luis de la Torre. For anther one, consider a production planning model which tries to minimize total production, inventory, and human resources costs. Now if you want to simultaneously level human resource usage, these objectives are in conflict with each other. Another example is minimizing costs while maximizing service level which is applicable in many contexts such as scheduling and supply chain management.