おそらく割当問題に属すると思う問題についてアドバイスを下さい
3375要素ある集合A、15要素ある集合Bがあります。
制約1
・集合Aの各要素をひとつの集合Bの要素に対応付けます。
制約2
・集合Bの各要素を225個の集合Aの要素と対応付けます。
制約3
・Aの要素aに対して、それぞれ決まった1~10個の要素Bと対応付けが可能です。
これらの制約を満たす対応付けが「存在するかどうか」を判定するアルゴリズムが欲しいと思っていますが、どなたか、解説ページ、教科書、ライブラリ等をご紹介頂ければ幸いです。ライブラリの場合、C++, R, pythonだと助かります。SIMPLEのように完全に商用の言語はごめんなさい(SIMPLEで可能なのは分かっています)。なお、実際に運用する際には、制約3が割と厳しめ(対応付け可能な要素の平均は2程度)なので、遺伝的アルゴリズムや乱択アルゴリズムなど、近似解を求めるタイプのアルゴリズムは不適合です。
組み合わせ最適化の問題としては基本的なものだと思いますが、生憎この分野には詳しくありませんので、よろしくお願いいたします。
----以下補足----
入力は、集合A、集合B、制約3の対応付け可能な組み合わせの集合
(ただし、集合A・集合Bは不変)
出力は、制約を満たす分類が可能か否かのBoolean
なお、3375=15^3, 225=15^2 です。
回答2件
あなたの回答
tips
プレビュー