Bound Tolerance Problem

  • 11 November 2022
  • 3 replies


We are students and we have an error message that we cannot understand.

We know that 500 is the parameter DemOp2 for j=1 (the 1st month).

We tried everything we could to solve the problem to have a solution but nothing works.

If anyone could help us, we would be infinitely grateful.

Thank you so much.


Best answer by mohansx 11 November 2022, 17:30

View original

3 replies

Userlevel 5
Badge +5

I think it is just a problem with how the constraint is written with mismatching indexes.


Constraint CDemOp2(i, j) has a definition DProd(i|i=2, j) = DemOp2(j)


The mismatch is between CDemOp2(i, j) and DProd(i|i=2, j)

When i=1 and j=1, the condition i|i=2 will be false (it will be true only when i = 2), so the constraint definition will essentially be 0 = DemOp2(1), which is the error you are seeing.


What is the logic behind DProd(i|i=2, j) ? Your current constraint essentially models

CDemOp2(j) with definition DProd(2, j) = DemOp2(j)

Userlevel 6
Badge +6

My assumption is that you want to limit the constraint domain to only generating constraints where i=2. You can do this by defining the index domain of CDemOp2 as

    (i, j)|(i=2)

and the definition then as

   DProd(i, j) = DemOp2(j)

Now there are only constraints generated for i=2 and all j.

Thanks everybody !! 

We found our problem 


Didn't find what you were looking for? Try searching on our documentation pages:

AIMMS Developer & PRO | AIMMS How-To | AIMMS SC Navigator