Re: [問題] 用最少數量個正方形 框住所有的點

作者: DJWS (...)   2016-03-31 13:23:51
※ 引述《dominicx (on my own)》之銘言:
: 2D空間中
: 有N個已知座標(X,Y)的點
: 正方形的邊長度固定為M
: 求計算出最少需要幾個正方形把所有點框選進去?
先聲明我沒做文獻調查
這個問題可以用 set cover problem 來解決(我不清楚是否有複雜度更低的方法)
問題轉換方式如下
1. [duality]
正方形的範圍相對收縮,點的範圍相對擴張,原問題變成:
2D空間中,有N個已知中心點的正方形,求最少需要幾個點(圖釘)可以釘到所有正方形?
2. [discretization]
正方形有兩條垂直線,N個正方形有2N條垂直線,最多切出2N+1個區域
正方形有兩條水平線,N個正方形有2N條水平線,最多切出2N+1個區域
水平垂直都考慮,最多切出(2N+1)^2塊區域
然後,每塊區域頂多只需要一個圖釘
3. [set cover problem]
依序窮舉每一塊區域
看看一塊區域釘上圖釘,可以釘到那些正方形,原問題變成:
選擇其中幾個區域釘圖釘,可以釘到所有正方形
作者: FRAXIS (喔喔)   2016-04-01 08:46:00
這問題也可以變成 clique cover
作者: DJWS (...)   2016-04-01 10:32:00
(2N+1)^2個區域當做點。若屬於同一個正方形,就連一條邊。接下來還可以繼續推文說 這問題也可以變成3-SAT

Links booklink

Contact Us: admin [ a t ] ucptt.com