0

インデックス setAと別の setがdimあり、変数を定義する必要があります。変数は、A の各メンバーに対して、1から始まり、1 から始まります。x[i,j]iAj<= dim[A]

set A := { 11 .. 20}; dim := {<11>1, <12>3, <13>1, <14>1, <15>5, <16>1, <17>2, <18>1, <19>1, <20>3};

たとえば、上記では、次のようになります。

x[11,1], x[12,1], x[12,2], x[12,3], x[13,1], x[14,1], ...

私は次のようなことができます:

set B := { 1 .. maxDim)}; var x[A *B]; ここでmaxDimは の最大数ですdim。多くの余分な変数を作成せずにこれを行うにはどうすればよいですか?

4

2 に答える 2

1

いくつかの調査の後、私は解決策を見つけました。これはうまくいくと思います:

var x[ <i, j> in A*B with j <= dim[i]];

于 2016-08-23T02:38:29.250 に答える