0
$\begingroup$

my task is to find a solution for a multiobjective optimization problem, which has two objectives. I'm solving this with a genetic algorithm by using a fitness function, which works fine. My question is of theoretical nature: Doesn't using a fitness function lead to ignoring the multiobjective problem? Because then, the only value we try to optimize is the fitness - one value.

Does research address this problem in any ways? If yes I would be thankful for some references. If this is just not correctly thought I'm sorry.

Thank you in advance.

$\endgroup$

1 Answer 1

0
$\begingroup$

There are two general approaches to dealing with multiple objectives. One is to scalarize the objectives with some function f(x,y) that takes the two objective values and produces one number that you optimize. It sounds like that's what you're doing, and you're correct, you'll only get one solution that's tailored to however your function f(x,y) weighed the importance of the objectives. You can then vary that function to produce different trade-off solutions if you want though. That's one approach to getting multiple different candidate solutions.

The other is to directly deal with the multiple objective values. Now your fitness function doesn't return a number -- it returns a tuple of some sort with one value for each of your objectives. Your algorithm now needs to impose some partial ordering on those sets of returned values so that in the end, it returns not just one solution, but a set of solutions that satisfy some property -- typically that the solutions are Pareto non-dominated.

The key difference is what you're asking the algorithm to do each time you run it. In the first case, it returns one solution. It's up to you to decide if you need multiple solutions, and if so, how to change your weighting function so that a second run gives you a second, different solution. The second type of algorithm is trying to return a full set of Pareto optimal solutions each time you run it, which is good, but these algorithms can be harder to deal with in some ways as well. The field of study you're looking for here is going to be something like "Multiobjective Evolutionary Algorithms". Early popular examples include things like NSGA-II and SPEA2. More recent approaches include things like MOEA/D.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.