# Is there a work around to use gamultiobj with linear constraints and binary variables?

3 views (last 30 days)

Show older comments

Steffen Kuehl
on 14 Sep 2016

Commented: Steffen Kuehl
on 16 Sep 2016

Hi,

I'm trying to minimize a linear and several quadratic functions with gamultiobj like the following:

y(8)= ((Befaehiger(:,2).*VF2(8,:)') .* x')'*(1+ (VF1(8,:)'.*x')' * FCM*0.1)'-0.23;

y(9)= x*Befaehiger(:,1);

Befaehiger,FCM, VF1 and VF2 are arrays. x are the binary variables.

My optimization problem has also linear inequality constraints.

Unfortunately my variables are binary. So when using 'PopulationType','bitstring' constraints are not supported. Setting variables as integers (intcon), combined with using bounds 0 and 1 is, also not possible with gamultiobj.

Does someone know a way to use gamultiobj (or another way) to minimize these functions with binary variables?

Thank you for reading

Steffen

##### 4 Comments

Brendan Hamm
on 14 Sep 2016

### Accepted Answer

Brendan Hamm
on 15 Sep 2016

I was thinking if the problem was not too large we could directly compute all 2^n possibilities. Obviously this is not something we would want to do. So, I looked into Walter's suggestion and was able to implement a smaller example.

The implementation I created is not guaranteed to work well with large problems as there is the possibility of having to re-sample data many times to satisfy the constraints. You would likely need to implement some specific re-sampling which is more probable to produce constraint satisfying points.

Please see the attached files. The main file is PopExample.m.

Up-voting Walter for his suggestion.

### More Answers (1)

Walter Roberson
on 14 Sep 2016

##### 4 Comments

### See Also

### Categories

### Products

### Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!