2012-02-05 3 views
1

나는 14 x 14km의 사각형을 가지고 있습니다. 그리고 나는 그 지역의 30 %가 될 때까지 원이 인접한 원과 중첩 될 수 있다고 가정하고 그들 주위에 반경 1km의 233 개의 원을 놓아야합니다. 또한 덮개가없는 공간이 없어야합니다. 현재 서클의 무작위 정렬을 사용하는 내 matlab 코드는 약 135 개의 서클을 생성 할 수 있습니다. 아무도 알고리즘을 제안하거나이를 달성 할 수있는 방법을 제안 할 수 있습니까? 미리 감사드립니다.사각형 내부의 원 : 알고리즘

+0

* 적어도 * 233 또는 * exactly * 233? –

+0

어떻게 공간을 찾아 낼 수 있습니까? 경계를 떠나지 않고 모서리에 원을 포장 할 수 없기 때문에 모서리에 약간의 공간이 있어야한다고 생각합니다. – templatetypedef

+0

@ IgnacioVazquez-Abrams 혼란을 가져 주어서 죄송합니다. 그것의 정확히 233. – user679460

답변

0

196 평방 킬로미터의 공간 안에 731 평방 킬로미터의 면적을 가진 원을 배치하도록 요청했습니다. 심지어 30 % 중복을 허용하더라도, 이것은 불가능합니다.

즉, 밀도가 높은 서클을 찾으려면 6 각형 패킹을 시작하는 것이 좋습니다. 벌집을 생각해보십시오. 또는 그림을 보려면 http://mathworld.wolfram.com/CirclePacking.html을 참조하십시오.

관련 문제