Skip to main content
Solved

Unread Parameter in AIMMS

  • 23 May 2024
  • 3 replies
  • 47 views

Hello, I have a question regarding AIMMS. I plan to do lab scheduling that will assign classes to a lab venue at a time. Each class will be taught by a different demonstrator, which I already specified in the parameter (Demo_Lab) as shown in the picture. However, whenever I included it in a constraint named Demo_Gap with an index domain (l,t), AIMMS did not follow the Demo_Lab parameter. AIMMS gave the results with a demonstrator randomly assigned to any class (you can refer to the final image). May I know how this is possible to happen? 

The parameter
The data.

 

The demo gap constraint
The result shows AIMMS just assign demo to any classes without consider the mentioned parameter 

 

3 replies

Badge +2

Since AIMMS could not read the Demo_Lab parameter in Demo_Gap constraint, I added one more constraint which shown below. Then, only AIMMS could read the parameter and gave the results like I intended to do.

 

Userlevel 5
Badge +4

Hi @sarah rohaizad. If Demo_Lab(c,l) equals 0 then X(c,l,t,v) and X(c,l,t+1,v) will not be included in the Demo_Gap constraint and therefore they will not be limited/restricted by this constraint. In other words, the Demo_Gap constraint only defines a limitation/restriction for those X(c,l,t,v) for which Demo_Lab(c,l) equals 1.

Please note that if you want X(c,l,t,v) to be 0 whenever Demo_Lab(c,l) equals 0 then you could change the index domain of the variable X(c,l,t,v) into: (c,l,t,v) | Demo_Lab(c,l) . (But your constraint AssignDemo already enforces X(c,l,t,v) to be 0 whenever Demo_Lab(c,l) equals 0.)

Badge +2

I understand now. Thank you.

Reply


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

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