•  Gurobi Staff

Hi Hernani,

What is the exact error you are getting? Could you post the code you have used so far to implement this constraint?

Best regards,
Jaromił

•    Hi Jaromil,

My apologize I though I copy the code to the post. Here is how I coded the constraint,

model.addConstrs(    quicksum(        x[u, v, i, 0] * math.log(1 - r_u[u]) + x[m, v, i, k] * math.log(1 - r_u[m])        for m in U        for k in range(K)        if u != m    )    <= math.log(1 - R_v[v])    for v in V    for i in range(C_u[u]))
Regards,
Hernani
•  Gurobi Staff

Hi Hernani,

I suppose $$r_u$$ refers to a Gurobi variable. In this case, you cannot simply apply the logarithm to this variable and then use the result in a constraint. You first need to add auxiliary variables to capture these logs and then use those variables in the final constraint.

I hope that helps.

Cheers,
Matthias

•    Hi Matthias,

Sorry I did not make it clear but the decision variables are x_uvik, r_u[u] and r_u[m] and R_v[v] are constants.

Regards,

Hernani

•    Dear all,

I have this constraint (2) where x_uvik is binary decision variable and r_u, r_m and R_v are parameters to the problem. I coded the problem as follow: But when I run my program with this constraint I get the model is unfeasible unable to retrieve attribute X. Could you please point me the right direction to solve this.

for v in V:
constraint = LinExpr()
constraint1 = LinExpr()
for u in U:
for i in range(C_u[u]):
for m in U:
for j in range(C_u[m]):
if (u!=m):
for k in range(K):
model.addConstr( constraint + constraint1 <=math.log(1-R_v[v]))
Regards,
Hernani
•  Gurobi Staff

Hi Hernani,

You could try to solve the IIS of this model to figure out what might be the cause of the infeasibility:
Model.computeIIS() (gurobi.com)

Cheers,
Matthias

•    Hi Matthias,

Thank you for quick response, regarding to the code of the constraint for your experience it seems correct or there is any suggestion you would like to share.

Regards,

Hernani

•    The mathematical description seems to encode $$|V|*\sum_u C_u$$ constraints, but it looks like you are only creating $$|V|$$ constraints. Could that be the problem?