Hi all, tried to declare a new set with index d. Aimms complained that index d was already used BUT it is not used anywhere in aimms. I just can’t find any sets with index d. Tried also index s; same complaint from aimms. I opened another similar project and I was able to create sets with indices d and a. Not sure what’s happening. Any suggestions would be appreciated
thanks
nick
Page 1 / 1
Hi, @Nick .
If you press “Ctrl + F”, search for “d”, the button “Declaration...” becomes enabled?
If so, just click on it and you’ll find which identifier it is referencing:
Hope it helps.
Hi, thanks very much. it worked - i had a variable labelled as “d” so wasnt aware that i cannot declare an index with the the letter “d” as well. it seems that names of variables (or parameters) and indexation of sets are related
Hi, @Nick . Great! Yes, they are.
Hi @Nick,
to give some extra context: all identifiers in AIMMS need to have a unique names; this holds for a parameter, a variable, a constraint, a database table etc. An index is also considered an identifier and needs a unique name so it can be referenced as such.
We recommend using clear Variable names such as Transport, InventoryLevel etc. Sets have names as Depots, Customers etc with respective indices d of Depots and c of Customers. Then the variables will become Transport(d,c) and InventoryLevel(d), a parameter could be Demand(c) and a constraint DeliverDemand(d): sum(d, Transport(d,c)>=Demand(c).