1

xセットに分割する必要があるn個の要素があり、各セットは正確にk = 4個の要素を保持する必要があります。

要素の各ペアが同じセットを 1 回だけ共有するという制約を使用して、考えられるすべてのパーティションを見つける必要があります。

したがって、[1 2 3 4] [5 6 7 8] [...] で開始すると、連続するすべてのパーティションが [1 2 XX] や [XX 1 3] などを保持することはできません。セットは順不同です。

この問題に近いのは、第 2 種スターリング数です。ただし、それらは任意のサイズのセットの問題のみを解決します。

例: 32 匹のマウスを 8 つのケージ (1 つのケージに 4 匹) に入れることができます。マウスは、別のマウスに 2 回会わないようにケージ間で回転させる必要があります。どのくらいの頻度でこれを行うことができますか?また、構成はどのようなものですか?

4

2 に答える 2

2

これが「社会的ゴルファー問題」の一例です。Warwick Harvey は以前、さまざまなサイズの問題に対する解決策をまとめたページ ( http://www.cs.st-andrews.ac.uk/~wh/golf/ ) を持っていましたが、現在は機能していないようです。あなたの場合の答えは 10 回転であることが判明しましたが、実際の構成が何であるかはわかりません。ただし、ここに 9 回転のソリューションがあります: http://www.cs.st-andrews.ac.uk/~ianm/CSPLib//prob/prob010/solution

一般的な n と k の未解決問題です。

于 2010-09-13T19:04:37.747 に答える
1

問題の説明 (「考えられるすべてのパーティション」) は混乱を招きます。

用語を修正しましょう (同意する場合) :パーティション( ) は、それぞれk=4 要素を持つx のボックス内のn 要素pの特定の (そして完全な) 分布です。(混乱を避けるために、'set' の代わりに 'box' という用語を使用します) (ところで、この定義を受け入れる場合は、「連続したパーティション」についてのフレーズを言い換える必要があることに注意してください。意味がありません)。

P ={p1,p2 ...}次に、すべての可能なパーティションのセットを呼び出しましょう。ここで、P のいくつかのサブセットに関心があります (それぞれを「パーティションの適切なセット」と呼ぶ場合があります)。PSOF は、特定のプロパティを持つパーティションのセットです。同じ要素のペアを同じボックスにマップする 2 つのパーティションはありません。(最大であるというプロパティを追加することもできます。ルールに違反せずに別のパーティションを追加することはできません)。

今、あなたが望むかどうかは明らかではありません:

  • これらの PSOF の 1 つを持つことができる (最大で) パーティションの数を数えます (すべての PSOF が同じカーディナリティを持っているかどうかは明確ではありません - おそらく)
  • それらの PSOF の 1 つのパーティションを見つけるアルゴリズム。
  • PSOF の数を数えます。
  • それぞれのパーティションで可能なすべての PSOF を見つけるアルゴリズム。

私にはどれも簡単に思えません。(申し訳ありませんが、これは回答ではなく説明であることは知っていますが、コメントに収まりませんでした)

于 2010-07-04T23:51:26.043 に答える