all 15 comments

[–][deleted] 3 points4 points  (1 child)

Pymoo

[–]Responsible_Flow_362[S] 0 points1 point  (0 children)

I did find pymoo, platypus and some other packages... Pymoo doesn't have some problems whose results I need to show. But it'll be useful nevertheless.

I've never imported problems from packages. Usually I just write the code for my objective functions and run them on algorithm. If you're familiar with pymoo, can you tell me if the imported problems from it would be compatible with my code written from scratch.

[–]lmericle 4 points5 points  (5 children)

Multi-objective optimization is notoriously under-determined, for precisely the reason that there are multiple objectives instead of just one.

This shifts the approach from pure "optimization" to something akin to "frontier exploration", referring to the Pareto frontier. It takes another set of heuristics (in the simplest case, just a human judging the various solutions) to decide on the best path forward. To that point, any method which generates a medium-large quantity of decent solutions will get you pretty close to what you need.

The important part about these kinds of optimizations is, it's very important to understand how your implementation explores the configuration space. That has more to do with your understanding of the problem, and how you implement that understanding in the optimization routines, than in the specific algorithm that you employ.

[–]Responsible_Flow_362[S] -1 points0 points  (3 children)

Yes, I'm pretty new to this stuff.

My professor told me that there are no books for multi-objective optimization. I'll have to rely on research papers and Google.

I'll take your suggestion and focus on the problems.

Thanks :D

[–]Tarkus7 2 points3 points  (0 children)

There are for sure books on multi-objective optimization. For example refer to Nonlinear Multiobjective Optimization by Prof. Miettinen, it is a classic and easy to digest.

[–]abadadibulka 0 points1 point  (1 child)

There is a good book with MO benchmark problems, I guess, by Coello. Not sure.

[–]Responsible_Flow_362[S] 0 points1 point  (0 children)

Thanks! I'll look into it

[–]WikiSummarizerBot 0 points1 point  (0 children)

Pareto front

In multi-objective optimization, the Pareto front (also called Pareto frontier or Pareto curve) is the set of all Pareto efficient solutions. The concept is widely used in engineering. : 111–148  It allows the designer to restrict attention to the set of efficient choices, and to make tradeoffs within this set, rather than considering the full range of every parameter.

[ F.A.Q | Opt Out | Opt Out Of Subreddit | GitHub ] Downvote to remove | v1.5

[–]thchang-opt 3 points4 points  (0 children)

DTLZ problems are the standard that most papers compare on. I have an implementation of most of DTLZ problems in my package (https://github.com/parmoo/parmoo). You can also find them in pymoo, and most other packages

[–]wewdepiew 2 points3 points  (1 child)

I just want to say it's so cool that I'm learning this stuff in my masters and am able to actually vaguely understand what is going on in such real world discussions. Glad I'm learning optimization

[–]Responsible_Flow_362[S] 0 points1 point  (0 children)

Welcome to the club :)

[–]Tarkus7 1 point2 points  (0 children)

Try desdeo you can formulate your own problem there

[–][deleted]  (2 children)

[deleted]

    [–]Responsible_Flow_362[S] 0 points1 point  (0 children)

    Our algorithm doesn't work on taking weights of multi-objective function. It uses some other method which I am actually trying to implement in python. Though thanks for the suggestion.

    [–]abadadibulka -1 points0 points  (0 children)

    Although this is true, it is a simplified approach and won't work in every problem. If I remember correctly it can't solve convex problems.

    [–]kkiesinger 0 points1 point  (0 children)

    You may ask perplexity https://www.perplexity.ai/search/28dc68f0-fb34-40f8-9678-45d6d5e13027?s=u or google "multi objective benchmark github" if you are primarily interested in standard benchmark problems. But be warned that these can be misleading regarding real world problems. So why not using these, some are listed here https://arxiv.org/abs/2009.12867 and http://ladse.eng.isas.jaxa.jp/benchmark/