2
$\begingroup$

I want to solve a problem that results in this general objective function which I want to maximize:

$$a\cdot x_1+b\cdot x_2-c\cdot x_3-d\cdot x_4+e\cdot x_5$$

When I write out in full this objective function I get

\begin{align} &a\cdot x_{11}+a\cdot x_{12}+a\cdot x_{13}+\cdots+a\cdot x_{1m}+ \\ &b\cdot x_{21}+b\cdot x_{22}+b\cdot x_{23}+\cdots+b\cdot x_{2n}- \\ &c\cdot x_{31}-c\cdot x_{32}-c\cdot x_{33}+\cdots-c\cdot x_{3o}- \\ &d\cdot x_{41}-d\cdot x_{42}-d\cdot x_{43}+\cdots-d\cdot x_{4p}+ \\ &e\cdot x_{51}+e\cdot x_{52}+e\cdot x_{53}+\cdots+e\cdot x_{5q} \end{align}

And with the coefficients I'm struggling, because I don't know how I should set them. Perhaps out of the task I could say coefficient $a$ is twice as important as $b$ - and as a consequence $2\cdot a=b$. And sometimes I simply can guess so $c=0.01$...

Is there a technique that helps me determine that my coefficients are set proper? In such a way that I don't set coefficients that dominate the results - like $e=10^5$.

I really hope that trial and error is not the only answer. But when it's the only appropriate choice then your strategy of setting coefficients would be very nice to know.

Many thanks for any coefficients tuning suggestions in advance!

$\endgroup$
5
$\begingroup$

When defining multiple components in an objective function, you should take care of a couple of items:

  • All elements (i.e.e $a \cdot x_1$, $b\cdot x_2$ etc.) should have the same unit. This sounds obvious, but I have seen adding kg and seconds together.
  • Whenever possible, I would always normalize the sum of the coefficients to 1, so that you can think of them as percentages, i.e.

$$a + b + c + d + e = 1$$

But in general, if you don't have a clear view, you will not get around experimenting around and seeing what provides the solution you "like" best.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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