変数 x[i][j][k] を使用して問題をモデル化したい。
リファレンス マニュアルのどこにも、サイズが 1 次元を超える変数を作成する方法についての言及はありません。
変数 x[i][j][k] を使用して問題をモデル化したい。
リファレンス マニュアルのどこにも、サイズが 1 次元を超える変数を作成する方法についての言及はありません。
このスニペットは、[0,1]に3つのインデックス付き連続変数x、x [i][j][t]を作成する例を示しています。
IloNumVar[][][] x = new IloNumVar[numNodes][numNodes][numDays];
for(int i = 0; i < numNodes; i++)
{
for(int j = 0; j < numNodes; j++)
{
//cplex is an instance of class IloCplex
x[i][j] = cplex.numVarArray(numDays, 0, 1);
}
}
多次元モデリングは非常に日常的です。
また、IBM の「Modeling with IBM ILOG CPLEX CP Optimizer – Practical Scheduling Examples」は、実際に開始するのに非常に適した場所です。多くの多次元の例がありますが、ほとんどは OPL と同様であり、使用する必要はありません。
そして、これは 2 次元を使用する完全な例です。 具体的には、変数 nutrPerFood には次元として i と j の両方があります。
// nutrPerFood[i][j] nutrition amount of nutrient i in food j
double[][] nutrPerFood;
そして、あなたはそれを呼び出すときにそれを使用しますIloMPModeler
このチュートリアルは、さまざまな Ilog 呼び出しに慣れるのにも役立ちます。
それが役立つことを願っています。