私はあなたが行のiと列next [i]の行列cの整数を取り出すc [i、next [i]]にあるように、総和制約を投稿する方法を知っていると思います。問題はnext [i]が変数なので、(Java)配列に直接アクセスすることはできません。あなたは要素の制約(つまり、minizincでもある)を使用する必要があり
:
/**
* Creates an element constraint: value = table[index]
*
* @param value an integer variable taking its value in table
* @param table an array of integer values
* @param index an integer variable representing the value of value in table
*/
default Constraint element(IntVar value, int[] table, IntVar index)
を使用すると、マトリックスと連携して、あなたはそれぞれの行のためにそれを行うし、それらの上に合計を掲示する必要があります。
Javaでは、配列セルは0からn-1まで(minizincは1からnまで)アクセスされるため、モデルを適切に更新するか、オフセットを使用する必要があるかもしれません。
希望これは
https://www.cosling.com/
を支援します