7.6 資源供給量クラスResourceCapacity
各資源の利用可能限界値を意味する資源供給量クラスは,ResourceCapacity
で表現されます.資源集合が引数resource
で,スケジューリング全体の期間を表す期間集合が引数timeStep
で表現されます.どちらの引数も必要です.
次の例では,資源集合R
,期間集合T
に対する資源供給量cap
を定義しています.
Set R; // 資源集合 Set T; // 期間集合 ResourceCapacity cap(resource = R, timeStep = T);
次の例では,期間0から10に対して,資源a, bはいずれも毎日1だけ利用可能であることを記述しています.期間集合は0始まりの集合でなければなりません.
Set R = "a b"; // 資源集合 Set T = "0 .. 10"; // 期間集合 Element j(set = T); ResourceCapacity cap(resource = R, timeStep = T); cap["a", j] = 1, 1 <= j <= 10; cap["b", j] = 1, 1 <= j <= 10;
資源供給量の初期設定値は0です.
資源供給量には重みを設定する事ができます.重みは引数weight
で与えます.次の例では,一律に重み10を設定しています.
Set R; // 資源集合 Set T; // 期間集合 ResourceCapacity cap(resource = R, timeStep = T, weight = 10);
引数weight
には定数Parameter
を与える事もできます.次の例では,資源aに対する資源供給量には重み10を,資源bに対する資源供給量には重み20を与えています.
Set R = "a b"; // 資源集合 Set T = "0 .. 10"; // 期間集合 Element i(set = R); Element j(set = T); Parameter w(index = i); w["a"] = 10; w["b"] = 20; ResourceCapacity cap(resource = R, timeStep = T, weight = w[i]);
上に戻る