正方形の直交ポリゴンをタイリングする


12

直交多角形(辺が軸に平行な多角形)が与えられた場合、和集合が多角形に等しい内部で分離した正方形の最小セットを見つけたいです。

次のようなわずかに異なる問題への参照をいくつか見つけました。

私は、最小限のアルゴリズムを探していますタイリング正方形


うーん、これはNP困難だと想像できます。私は何かを定式化しようとします。
リアルツスロー

1
許可された穴がある最小化バージョンはNP-Hardですが、単純に接続された直交ポリゴン(つまり、穴がない)の場合、多項式アルゴリズムを使用します。ただし、問題のサイズが整数であり、実際に最小カバーではなく最小カバーを意味する場合、この場合、多項式アルゴリズムが可能です。
パーハム

うーん、最小の正方形が合理的に配置され、合理的なサイズになるという証拠が必要です。またはさらに、入力が整数サイズで整数位置の場合、最小二乗も同様になります(SATに減らすため)。直感的に、これは真実だと推測しますが、それを証明するアイデアはありますか?
リアルツスロー

@MahmoudAlimohamadi:正方形の直線ポリゴン(穴のある場合とない場合)のタイリングの問題が研究されている(そして解決されている)論文のタイトル/著者を提供できますか。
Vor

2
ところで、私はあなたがミニム意味想定しumの代わりにミニムのアル
リアルツスロー

回答:


15

私はこの問題がNP困難であることを、 ます。平面-3-土


からの削減 平面-3-土

いくつかの基本的なガジェット

ガジェットは、回路で使用するゲートを構築できるジオメトリの内部構成であり、これを削減します ます。平面-3-土

4X3-ガジェット

このガジェットには、2つの有効な最小正方形パーティション状態があります

ここに画像の説明を入力してください         ここに画像の説明を入力してください         ここに画像の説明を入力してください

4X3-ガジェットを残しました。中央と右: 2つの可能な最小二乗パーティション状態

5X4-ガジェット

このガジェットは、4X3-gadgetとまったく同じで、寸法が大きくなっています。

ここに画像の説明を入力してください         ここに画像の説明を入力してください         ここに画像の説明を入力してください

A 5X4-ガジェット中央と右: 2つの可能な最小二乗パーティション状態

エンドポイントガジェット

エンドポイント・ガジェットが ある5X4-ガジェットゲートのエンドポイント/ピンとして頻繁に使用されます。エンドポイントの2つの状態のうち1つはtrue、もう1つはfalseと評価できます。エンドポイントは、1つをとして、もう1つをFとして、2つの端をマークします。大きな正方形で覆われている端は、端点の値です。TF

ここに画像の説明を入力してください

左:エンドポイントガジェットのワイヤフレーム。中央:真の値のエンドポイント。右:誤った値のエンドポイント。

i-wireガジェット

I-ワイヤガジェットは、の略です含意ワイヤー

ルール:

  • I-ワイヤガジェットは、以上の長さの奇数長の矩形から成るとの幅222
  • I-ワイヤガジェットを持つことはできません最小平方パーティション状態、一方の側から押し出さを、他の、またはどちら。I-ワイヤこの第3の状態では、呼び出されなければならないローカルunconstrainted3

例:

ここに画像の説明を入力してください

図7:長さ7、幅2i-wireガジェット72

使用方法は次のとおりです。

ここに画像の説明を入力してください         ここに画像の説明を入力してください

図8,9左: 2つのエンドポイント間のワイヤフレームi-wire正しい:連合。

現在、一方のエンドポイントが適切な状態にある場合、もう一方のエンドポイントをプッシュ位置に強制します。例:

ここに画像の説明を入力してください         ここに画像の説明を入力してください

左:正方形のパーティション図。左のスイッチがダウンしている場合、すべての四角形をi-wireに「押し込み」、最後に他のスイッチ(エンドポイント)を押します右:正方形のパーティション図。左のエンドポイントは、「プッシュ」すべて正方形ダウン、フルであるI-線、および軍エンドポイント左には「アップ」します。

A¬BAB

ただし、これにより制約のない場合が残ります。

ここに画像の説明を入力してください

2つのi-wireを組み合わせると、双方向の含意、本質的にブール(不)等式を得ることができます。

ここに画像の説明を入力してください         ここに画像の説明を入力してください

そのため、2つのi-wireは、回路のように完全な等式関係を保持できます。実際、それ回路です。これらのペアを使用して、使用可能なワイヤを構築します。

i-wireガジェットは、寄与しますl12+2

i-wiresは必要に応じて方向付けできます。

ワイヤー

ワイヤは一対で構成I-ワイヤ同じに接続され、ゲートの各エンドポイントです。

  • I-ワイヤは赤と緑に着色されています。
  • 3
  • 各ゲートピンには緑と赤の接点があります。ワイヤを正しく接続する必要があります。
  • 不変の規則: 1つの i-wireは他の i-wireとは反対の方向にプッシュされ、各ゲートはこれを想定し、これを特定します(特に明記しない限り)。
  • 各ワイヤには双方向の意味が含まれているため、回路内のワイヤのようにゲートからゲートへ値を伝達します。
  • すべてのワイヤは、両端でゲートに接続する必要があります。。これに失敗すると、私が説明するいくつかのゲートの仮定と、上記の不変の規則が台無しになります。ただし、リードの両端にエンドポイントがある ゲートは安全です。ゲートを台無しにすることを心配せずに、これらのエンドポイントに浮遊線を接続できます。
  • ワイヤは、接続先の回路へのリード線を含め、奇数長でなければなりません。ただし、偶数長のワイヤを奇数長にすることができる奇数スキップゲートについて以下に説明します。

写真

ここに画像の説明を入力してください

上:ワイヤー

ここに画像の説明を入力してください        ここに画像の説明を入力してください

左と右:二つの可能な最小限平方パーティションの状態ワイヤー。ワイヤーがこの長さだけの場合、右または左にシフトすることができず、1つの正方形を小さな断片に分割する必要があることに注意してください。

ワイヤは必要に応じて方向付けできます。

ベンドゲートワイヤーを曲げる

ここに画像の説明を入力してください       ここに画像の説明を入力してください

左:ワイヤフレームビュー。右:ユニオンビュー。

4X3-gadgetの使用に注意してください。赤いリードを奇数の長さに修正するために使用されます。

ベンドの2つの可能な最小正方形パーティション状態は次のとおりです。

ここに画像の説明を入力してください         ここに画像の説明を入力してください

左と右:曲げワイヤの2つの可能な最小二乗正方形分割状態

ゲートは必要に応じて方向を変えることができます。明らかに、このゲートをミラーリングして、他の方向に機能させることができます。

ワイヤーをゆがめる

ワイヤーを簡単にシフトできます。ワイヤフレームの図:

ここに画像の説明を入力してください

名前付き値ゲート

名前-値ゲートは本質的に一つのワイヤコンタクトとゲートとしてエンドポイントです。

ここに画像の説明を入力してください

odd-skip-gateワイヤーをスキップする奇数

奇数の長さのワイヤしか持っていないことが不便な場合があります。例えば:

ここに画像の説明を入力してください

ご覧のとおり、この少しの拡張は少し面倒です。4X3-gateを使用した対応するソリューションは次のとおりです。

ここに画像の説明を入力してください

したがって、これをゲートに変えると、(ワイヤフレームで)奇数スキップゲートが得られます。

ここに画像の説明を入力してください

ゲートは必要に応じて方向を変えることができます。

ツイストゲートワイヤーをねじる

場合によっては、ゲートで使用するために間違った側に赤と黒のiワイヤーがあります。この場合、赤と黒のiワイヤーをねじるために、ツイストゲートが提供されます。を反対側ます。

ワイヤフレームの図:

ここに画像の説明を入力してください

それが機能することを確信してください:

ここに画像の説明を入力してください         ここに画像の説明を入力してください

A

ゲートは必要に応じて方向を変えることができます。

split-gateワイヤーを分割する

ワイヤー、ワイヤーフレームの分割:

ここに画像の説明を入力してください

それが機能することを確信してください:

ここに画像の説明を入力してください

A

ここに画像の説明を入力してください

A

注:スプリッターに出入りするすべてのワイヤーは絶対に必要です不変を維持するためにどこかにエンドポイントに接続するがあります。または、スプリッターのリードのペアのそれぞれにエンドポイントを追加できます。

ゲートは必要に応じて方向を変えることができます。

非ゲート

notゲートはワイヤを受け取り、逆の意味を持つワイヤを出力します。それは、基本的にはツイストゲートです。ただし、ワイヤの色のラベルを変更します。ない-ゲート次のようになります。

ここに画像の説明を入力してください

そして、2つの可能な状態のビュー:

ここに画像の説明を入力してください         ここに画像の説明を入力してください

ゲートは必要に応じて方向を変えることができます。

節ゲート

以下のため句ゲート、我々は最初に紹介句-ガジェットを

ここに画像の説明を入力してください

3異なる最小正方形パーティション状態

これがゲートの外観です。

3

説明:

  1. で開始 句ガジェットから矢印に従ってください。
  2. 矢印のない線は、回路の一部であることを意味しますが、ゲートによって強制的に状態にされることはありません。
  3. 節ガジェットの状態により、エンドポイントの1つがtrueになります

3-CNF句に必要なものです。

ゲートは必要に応じて方向を変えることができます。

削減

Φバツ平面-3-土

Φバツ=nCC={バツjバツkバツl}

視覚資料(元の資料:Terrain GuardingはNP-Hard(PDF)、tikzで再現):

ここに画像の説明を入力してください

次に:

  1. バツバツバツ¬バツ
  2. not-gateを使用してゲートを互いに接続し、論理的に互いの値を無効にします。
  3. 変数のゲートのポリゴンを、平面埋め込みの位置に配置します。
  4. 句ごとに、句ゲートを配置しますに、plane-embeddingの節の位置に節を配置します。
  5. 上記のゲートを使用して、すべての変数を句に接続します。
  6. 最小二乗分割アルゴリズムを実行する結果として生じるゲートのすべてのポリゴン(回路全体)の和集合に対してを。
  7. アルゴリズムがすべてのゲートの最小平方パーティション状態サイズの合計を返す場合(共有コーナーを減算)、それは充足可能です。満たされない場合、制約されたガジェットを強制的に小さな正方形に分割し、回路を分割するために必要な正方形の数を増やします。

なぜ機能するのか

  • 各ガジェットには、最小の正方形パーティション状態サイズがあります。つまり、そのガジェットの最小正方形パーティションは特定のサイズです。
  • 一部のガジェットには、このサイズの状態がいくつかあります。これらの状態はそれぞれ有効な最小二乗区画です。
  • ガジェットがコーナーでのみ結合されている場合、ガジェットの最小正方形パーティション状態の合計は* minimUM-square-partition-stateのままですのままです。これを直感的に見ることができます。コーナーで参加しても、他のガジェットの正方形と拡大/接続するための十分なスペースが確保されません。
  • コーナーでガジェットを組み合わせることは減少させないながら、総最小二乗パーティションサイズを、それがない関連し、それぞれ、他とのガジェットを制約します。
  • 上記のゲートを使用すると、状態を十分に制約できるため、論理式が満たされない場合、1つ以上のガジェットがさらに小さな正方形に分割し最小正方形パーティションサイズを大きくする必要があります

グラフソース

imgur urlの「s」、「m」、「l」のサフィックスを削除することで、より大きな画像を表示することもできます。たとえば、あなたはこのの拡大画像を参照することができhttp://i.stack.imgur.com/6CKlGs.jpgをに行くことによって http://i.stack.imgur.com/6CKlG.jpg。の前に「s」がないことに注意してください.jpg


3
うわー、それは絶対に印象的です。残念ながら、私は削減をチェックするほど賢くはありませんが、あなたの言葉を受け入れます:)ありがとう!
エレルシーガルハレビ

1
したがって、タイル張りの状況は、カバーリングの状況とは逆です。カバーリングでは、正方形のカバーは多項式であり、長方形のカバーはNP困難です。
エレルシーガルハレビ

試してみて、私が使用するガジェットが実際に最低限の二乗されていることを証明するためにいくつかのフォローアップの質問:3X2矩形の最小平方パーティションが3つのマスを持っていることを証明する方法 | ほぼ正方形の長方形の最小正方形パーティションは何ですか?| 4x3および5x4の長方形の最小正方形パーティション
レアルツスロー

8

私が共著した古い論文は、被覆問題が穴のない多角形の多項式であり、穴のあるNP完全であることを確立しています。キーとなるグラフは和音であることを示しました。注意:アルゴリズムは数が多項式ですN 多角形の単位正方形の ON3/2

「正方形で直交ポリゴンをカバーする。」LJ AupperleとHE Con​​nとJM KeilとJoseph O'Rourke。 手続き 第26回アラートン会議 コミュニケーション。制御計算 、pp。97-106、1988。(PDFスキャンをダウンロードするためのリンク

ただし、結果のカバーには、重なり合う正方形が含まれる場合があります。正方形を重ねることができないタイルを探しているので、問題はまったく同じではありません。


笑私は、製剤を通じて途中でした:( cs.SE.へようこそけれども非常に興味深い。!の
Realzなスロー

2
私が正しく理解していれば、このペーパーでは正方形が重なり合うことができます(つまり、カバーの問題です)。四角が重なり合わない場合に興味があります(つまり、パーティション分割/タイル分割の問題)。
エレルシーガルハレビ

@ErelSegalHalevi:ああ、すみません、あなたの質問を注意深く読んでいませんでした。
ジョセフ・オルーク

2
ああ、私は続けます:D
Realz Slaw
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.