Clear Filters
Clear Filters

Optimization problem with integer variables

1 view (last 30 days)
I have a nXn matrix M of integers with values 1...k. All the occurrences of values in M can be counted using hist(). My constraint is as follows : non of the occurrences of each value in M should not exceed a certain bound c. How do I define such constraint using intlinprog ?

Accepted Answer

Torsten
Torsten on 29 Mar 2017
Let x(i,j,l) (1<=i,j<=n, 1<=l<=k) a binary variable which is 1 if the element at position (i,j) equals l, 0 else.
Then the constraints are
sum_i sum_j x(i,j,l) <= c for 1<=l<=k
0 <= x(i,j,l) <= 1
x(i,j,l) integer.
Best wishes
Torsten.
  3 Comments
Torsten
Torsten on 30 Mar 2017
Edited: Torsten on 30 Mar 2017
It's not clear to me what you are aiming at in the end.
Do you want to generate all possible (nxn) matrices M with integer values from 1 to k as coefficients which satisfy the constraint you mention ?
Best wishes
Torsten.
Aviram Zilberman
Aviram Zilberman on 31 Mar 2017
I need to do the following : 1. position k transmitters in a binary vector x of length n s.t x(i)=1 if a transmitter is located in position i and 0 otherwise. Given 2. Given a binary matrix A(nXn) of receivers s.t A(i,j)=1 if a receiver is located in position(i,j) and 0 otherwise. 3. each receiver is matched with an exclusive transmitter, s.t each transmitter is matched with up to c receivers. The optimization function is : find a match between receivers and transmitters, and a placement for the k transmitters s.t the total distance between transmitters and receivers is minimal.
Thanks for your generous help !

Sign in to comment.

More Answers (0)

Categories

Find more on Linear Programming and Mixed-Integer Linear Programming in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!