원으로 간단한 다각형 덮기


10

간단한 다각형 와 정수 k 가 있다고 가정하십시오 . 작은 반경을 찾기위한 몇 가지 기존의 접근 방식은 무엇입니까 r에 내가 커버 할 수 있도록 S를 함께 K의 반경의 원 R ? r 이 고정되어 있고 최소화하고 싶 습니까?SkrSkrr ?k

답변:


11

k- 센터 클러스터링 알고리즘을 사용하십시오 : http://goo.gl/pLiEO의 4.2 절을 참조하십시오 .

슬라이딩 그리드를 사용하여 1 + eps 근사 알고리즘을 얻을 수 있습니다.

Feder and Greene의 작업으로 인해 문제가 NP-Hard라고 가정하는 것이 당연합니다.


1
이것이 슬라이딩 그리드가 제공하는 것입니다.
Sariel Har-Peled

답변 주셔서 감사합니다. 슬라이딩 그리드에 어느 정도 익숙합니다. 포인트 시나리오에서는 각 디스크의 경계에 두 개의 포인트가 있고 셀을 덮을 디스크의 수가 제한되어 있기 때문에 그리드의 각 셀에서 커버링 문제를 최적으로 해결할 수 있다는 사실에 결정적으로 의존합니다. 따라서 그것은 무차별적인 힘을 해결할 수 있습니다. 그러나 다각형을 설정할 때 하나의 그리드 셀에서 문제를 최적으로 해결하는 방법을 알 수 없습니다. 이것에 대한 힌트를 제공해 주시겠습니까?
101011

슬라이딩 그리드는 그리드 셀 내부에서 솔루션 크기가 작음을 의미합니다. 그런 다음 다른 알고리즘을 사용하여 각 그리드 셀 내부의 문제를 해결해야합니다 (보통 정확하게). 여기에 대해 생각할 수있는 다른 방법이 있습니다. 다각형을 매우 조밀하게 샘플링 한 다음 샘플에 대한 문제를 해결하십시오 ... 예,이 작업을 수행하는 방법에 대한 정확한 세부 사항은 상당히 고통 스러울 수 있습니다. 가장자리가 n 인 다각형을 사용하면 최적의 솔루션 크기가 k라는 것을 알 수 있습니다. 이 경우 문제를 정확하게 해결하는 방법을 알고 있습니까?
Sariel Har

다시 감사합니다. 더 많은 생각을 한 후에도 k를 알고 있더라도 k 개의 디스크로 다각형을 최적으로 덮는 방법을 여전히 모릅니다. 불연속적인 특성이 거의 없다는 사실로 인해 솔기가 실제로 어렵습니다. 샘플링 접근 방식 : 샘플링 후 샘플링 된 부분 만 커버 하시겠습니까? 그런 다음 빈 공간을 메우기 위해 많은 디스크를 낭비하는 문제가 발생하지 않습니까?
101011

1
사각형을 고려하십시오. N = O ( k / ϵ )의 경우 격자로 덮으십시오 . 이러한 모든 점을 커버하는 k 개의 디스크가 반경의 ϵ 분율로 각 디스크를 확장 한 후 전체 사각형을 덮는다는 것을 쉽게 증명할 수 있습니다 . 다각형의 경우 삼각형을 삼각형으로 만들고 각 삼각형마다 위와 같이 격자를 만듭니다 (이는 약간의주의가 필요하지만 특별히 어렵지는 않습니다). 이 포인트 세트를 모두 합치면 동일한 보증을받습니다. 이는 k- 센터 클러스터링의 코어 셋 구성과 유사합니다. ×=영형(케이/ϵ)ϵ
Sariel Har

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.