I have the following decision variable Xbmt ...(I have a few similar of them, some continuous and some binary)
Originally declared as :
dvar float+ Xbmt[PitBlocks][Plants][TimePeriods];
But now for some of the PitBlocks and some time periods I want to define this decision variable as 0.[or rather exclude them, as the number of variables have grown extremely large leading OPL to crash]. Those time periods for which I want to set the decision variable as 0 are defined in a tuple nullVariables. It has block id (same as PitBlocks), and it has time_period (same as TimePeriod). Hence I want something like below. But I cannot declare the decision variable twice. I need it 0 only for those ids in the nullVariable set.
dvar float+ Xbmt[NullVariablesSet.block_id][Plants][NullVariablesSet.time_period] in 0..0;
How can this be achieved where some of Xbmt indices from NullVariableSet are removed by setting as 0 while the rest remain as continuous decision variables.
The nullVariable set looks below while the complete PitBlock list is a more exhaustive one and TimePeriods are 1 to 5 :
block_id time_period
P14 1
P15 1
P16 1
P17 1
P27 1
P29 1
...and so on
P247 1
P247 2
P247 3
Note : I have posted this before but probably my explanation there of what I want to achieve wasnt good enough. Is it possible to pre-assign values to decision variables in CPLEX OPL