Cplex Syntax to model a proportion constraint
<p>I am having difficulty with the syntax (and possibly logic) of modelling a proportion constraint in Cplex:</p>

<p>Here is the content of my .dat file:</p>

<pre><code>nPaper = 3;
nWoods = 3;

SalesPrice = [60, 75, 40]; 
PurcPrice = [50, 40, 30];
ProdCost = [4, 2.8, 2.8]
Demand = [4000, 3800, 3500];
minWood1 = [0.6, 0.65, 0.3];
minWood2 = [0.3, 0.25, 0.4];
</code></pre>

<p>and part of the model file:</p>

<pre><code>int nPaper =...;
int nWood =...;

range Paper = 1..nPaper;
range Wood = 1..nWood;

float SalesPrice[Paper] =...;
float PurcPrice[Wood] =...;
float ProdCost[Paper] =...;
float Demand[Paper] =...;
float minSteel[Paper] =...;
float minBronze[Paper] =...;

dvar float+ Blend[Wood][Paper];

dexpr float Revenue= sum(j in Paper) SalesPrice[j]*(sum(i in Wood) Blend[i] [j]);
dexpr float PurchaseCost= sum(j in Wood) PurcPrice[j]*(sum(i in Paper) Blend[j][i]);
dexpr float ProductionCost = sum(j in Paper) ProdCost[j]*(sum(i in Wood) Blend[i][j]);
dexpr float Profit = Revenue - PurchaseCost - ProductionCost;

maximize Profit;

subject to {
  forall (j in Paper)
    sum(i in Wood) Blend[i][j]== Demand[j];
</code></pre>

<p>Problem Constraints: As you can see in the data, there is a minimum Wood value (minWood) for each Paper type that is being produced. The constraint I am trying to add is to specify the minimum proportion for 1 particular wood type (represented in vector minWood1) when mixed with the other two wood types to make paper [j]. </p>

<p>In other words, what I've tried to state is: For paper 1, the proportion of wood 1 should be minWood and then also continue to specify other proportions as per the vector.</p>

<pre><code>forall (j in Paper)
     sum(i in Wood)minWood1 &gt;= minWood1;

forall (j in Paper)
     sum(i in Wood)minWood2 &gt;= minWood2;}
</code></pre>

<p>Any assistance would be greatly appreciated.</p>