Originally posted by: meletis13forever
I have changed my code like this:
Here is the .mod file:
{string} Users=...;
tuple Userdata{
int SubcBR1;
int SubcBR2;
int SubcBR3;
int SubcBR4;
int TargetBR;
}
Userdata User
Users=...;
dvar int+ UserSubc
Users;
maximize
sum(i in Users)
(User[i].SubcBR1 * UserSubc[i]+
User[i].SubcBR2 * UserSubc[i]+
User[i].SubcBR3 * UserSubc[i]+
User[i].SubcBR4 * UserSubc[i]) * ln(User[i].TargetBR);
subject to{
forall(i in Users)
UserSubc[i]<=User[i].TargetBR;
}
And here is the .dat file:
Users = { "user1", "user2", "user3", "user4" };
User = #[
user1 : < 64, 256, 128, 64, 256 >,
user2 : < 64, 64, 128, 128, 128 >,
user3 : < 256, 128, 64, 64, 256 >,
user4 : < 64, 256, 64, 128, 128 >
]#;
I want to write one more constraint in the .mod file.
One subcarrier can be assingned only on one user-the same subcarrier can not be assigned to two or more users.Can you help me?
#DecisionOptimization#MathematicalProgramming-General