2024年11月21日木曜日

行制約 パターン制約と不等式制約のDay集合の違い

 よく間違える記述の例です。

不等式制約では、「今月」をDay集合とすることが多いです。制約中の「今月」の定義を見るには、マウスMiddleボタン(ホイールボタン)をクリックすると出てきます。

ちゃんと、今月になっていることが分かります。


一方パターン制約の場合は、「今月」にしてしまうと、先月からの続きの部分を無視してしまうことになるのでまずいです。


下の例では、6連続勤務禁止のパターンで、先月部26日からの5日間が、正しく動くためには必要ですが、先月部2日間のみとなっており、指定を間違えていることが分かります。


修正するには、「制約開始日5日前から」にすればよいのですが、面倒なときは、「自動設定」にしてしまいます。(この段階では、空白集合になってしまいます。ごめんなさい)


求解してプロジェクトを保存後再ロードすると、正しく置き換わります。


しかし、Day集合が意図通りになっていません。「表示開始日」が先月2日間分になっていることが原因です。


最大パターン分になるように「表示開始日」を修正します。


ようやく、正しく動くようになりました。

まとめ
1)制約を書くとき、Day集合、グループ集合について、集合を確認します。
2)制約を書いた後、一つ書いたら、直ぐに求解して動作を確認します。
3)行制約パターン⇒「今月自動」の活用



0 件のコメント:

コメントを投稿