help-glpk
[Top][All Lists]

## Re: [Help-glpk] multi-objectives function

 From: Meketon, Marc Subject: Re: [Help-glpk] multi-objectives function Date: Tue, 9 Oct 2012 05:49:29 -0500

The A=1, B=1 solution is the solution that finds the most equalized set of variables.  If that is what you want, then one way is to minimize the absolute value of the deviations around the average of the variables.

For example, instead of A, B (and to slightly generalize this), suppose you have a set N and variables

var x{N} >= 0;

Also suppose that you want to find the solution that has as many of the x’s the same as possible.  Use three more sets of variables:

var r_plus{N} >=0;

var r_neg{N} >=0;

var x_mean;

s.t. Calculate_Average_x:  x_mean = (sum{j in N} x[j])/card(N);

s.t. EqualizeValues{j in N}: r_plus[j] – r_neg[j] = x[j] – x_mean;

Then in your objective function, add in a term that penalizes the absolute deviation of the x’s around their average:

minimize some_objective:

[your other terms in the objective function] +

99*sum{j in N} (r_plus[j] + r_neg[j]);

The “99” is a penalty – you would need to modify this penalty to see whether the solutions you are achieving are the ones that you desire.

-Marc

Sent: Tuesday, October 09, 2012 2:53 AM
Subject: [Help-glpk] multi-objectives function

 Hello everyone, I would like to know if it is possible to maximize several objectives. I mean, if i would like to maximize two variables (A and B) and i have three solutions for which the sum is maximized: A=0 and B =2 A=2 and B =0 A=1 and B =1 In the three above cases the sum A+B is equal to 2, so all solutions are the best ones, but i would like to get the third solution (A=1 and B=1) because this solution maximize both values of A and B (not only one of them).  .  Will someone help? Thank you Esma

This e-mail and any attachments may be confidential or legally privileged. If you received this message in error or are not the intended recipient, you should destroy the e-mail message and any attachments or copies, and you are prohibited from retaining, distributing, disclosing or using any information contained herein. Please inform us of the erroneous delivery by return e-mail. Thank you for your cooperation.