私の問題はこれです:
私は人々のリストを持っています。各人は特定の数の Facebook のいいねを持っています。これらの人々を N 個のグループに分割し、各グループのすべてのメンバーが少なくとも 1 つの「いいね」を共有するようにします (つまり、このグループの全員が Daft Punk が好きです)。グループは 3 人または 4 人以外のサイズにすることはできず、グループに属さない人の数を最小限に抑えたいと考えています。(ただし、不一致の人をさらに最小限に抑えることができるという意味であれば、固定サイズのルールを破ってもかまいません)
ビンパッキングとクリークを調べるように言われましたが、それらは私の問題にはまったく適していません。
以前の質問を検索すると、属性に基づいて入力データをセットに分類する このようなものは機能するように見えますが、グループのすべてのメンバーには複数の値 (いいね! の配列) があります。また、除外される人の数が最小限に抑えられるかどうかもわかりません。
前もって感謝します!