УДК 514.753
(х,У) є R210 < х < B,0 < y < A}
МЕТОД РЕГУЛЯРНОГО ПОКРЫТИЯ ПРЯМОУГОЛЬНОЙ ОБЛАСТИ КРУГАМИ ЗАДАННОГО РАДИУСА
ПАНКРАТОВ А.В., ПАЦУКВ.Н.,
РОМАНОВА ТЕ, АНТОШКИН А.А._______________
Рассматривается задача покрытия прямоугольной области минимальным числом кругов заданного радиуса. Строится математическая модель задачи как задачи решетчатого покрытия. Приводятся свойства функции цели. Предлагается метод решения задачи. Представлены тестовые примеры.
Рассмотрим задачу покрытия [1] в следующей постановке. Пусть задано множество
T=jТуТ^,...,Т^ кругов радиуса R и прямоугольник P длины B и ширины A . Необходимо покрыть область P минимальным числом кругов из множества T при соблюдении ряда дополнительных ограничений на взаимное положение кругов и на их положение относительно границы прямоугольника P.
Теоретико-множественная модель задачи покрытия имеет вид:
P=№. (і)
1=1
Условие (1) описывает покрытие области P кругами. В этом случае каждая точка области P принадлежит хотя бы одному из кругов Т , Т2 ,..., Tn .
Математическую модель поставленной задачи при отсутствии дополнительных ограничений можно представить в виде:
max min p(t,, p) < R , (2)
peP ieIn
где p(ti, p) — расстояние между точками tj и p; p=(px, Py) є P; tl=(xl,yi ) - центр i-го круга; /„={1, 2,, n}.
Подобные задачи возникают, например, при обеспечении пожарной безопасности помещений, когда необходимо разместить пожарные извещатели таким образом, чтобы каждая точка защищаемого помещения контролировалась хотя бы одним прибором. Особенности прикладных задач покрытия областей произвольной геометрической формы кругами заданного радиуса в системах автоматической противопожарной защиты подробно изложены в работе [2].
В нормативной литературе, например [3], приводится ряд ограничений на положение пожарных извещателей. Эти ограничения, применительно к задаче (1), могут быть сведены к следующим геометрическим ограничениям:
— расстояние от любой точки области
до центра хотя бы одного круга Ti є Т должно быть не более R* < R .
Тогда (2) примет вид:
maxminp(t., p) < R*. (3)
peP ieIn ? \~V
—центры кругов, покрывающих область P, должны принадлежать области P и, более того, находиться на расстоянии не менее чем rдо frP , т.е.
ti є P*, I=1,2,...,n, (4)
где p* = {(х, y) є R2 |r < х < B - r, r < y < A - r} , frP — граница области P;
— центры любых двух кругов должны находиться на расстоянии не меньшем 2r , т.е.:
p(ti,tj) > 2r , i, j = 1,2,, n. (5)
Очевидно, что условие (3) введено для повышения надежности системы пожарной безопасности. А наличие условий (4) и (5) объясняется тем, что пожарный извещатель — реальный физический объект, имеющий конкретные размеры. При моделировании задачи он может быть адекватно представлен кругом радиуса г. Непосредственно из (2) и (3) вытекает, что условие (3) эквивалентно условию покрытия прямоугольной области P кругами радиуса R*. Таким образом, математическую модель задачи можно представить в следующем виде:
n ^ min, (6)
max minp(ti, p) < R* peP ieIn ’ (7)
p(ti, tj) > 2r , (8)
ti є P*, In = (1,2,...,n} . (9)
Рассмотрим задачу (6)-(7).
Не теряя общности, полагаем, что неподвижная система координат XOYсвязана с прямоугольником P, при этом сторона длины A принадлежит оси OY, сторона длины B принадлежит оси OX, а левый нижний угол прямоугольника совпадает с началом системы координат.
Известно [4], что оптимальное покрытие плоскости кругами достигается при так называемом регулярном или решетчатом покрытии. Поэтому естествен -ным является использование регулярного покрытия и для задачи покрытия прямоугольника кругами.
Поскольку решетки и решетчатые укладки являются основой решения поставленной задачи, рассмотрим эти понятия подробнее.
50
РИ, 2002, № 1
Определение 1. Множество векторов
г = na1 + ma2 , n, me Z, (10)
где a1 =(a1x, a1y), a2 =(a2x, a2y) — линейно-независимы, называется решеткой [5] с базисом a1, a2 и обозначается L= л (a1, a2); Z — множество целых чисел, л — оператор, отображающий множество пар векторов в множество семейств вида (10).
Определение 2. Покрытие {г у}, ij е Z плоскости кругами г ij= т (ia1+/a2)= г (0,0) + ia1 + ja2, ij є Z , называется решетчатым (одинарным) покрытием кругом г (0,0), выполненным по базису (a1,a2) решетки L= (a1 ,a2), где г (0,0) — круг г с центром в точке (0,0). Обозначим такое покрытие (г , L).
Если рассматривать решетчатые покрытия прямоугольника или любой ограниченной области, то в отличие от всей плоскости при оценке “качества” такого покрытия необходимо учитывать границу покрываемой области. Решетчатое покрытие, оптимальное для плоскости, в общем случае не является оптимальным для прямоугольника.
Решетчатое покрытие (г ,L) определяется векторами a1 =(a1x, a1y) и a2 =(a2x, a2y). Ограничимся в дальнейшем рассмотрением случая, когда один из этих векторов параллелен одной из сторон прямоугольника P , т.е. выполняется одно из условий:
a1x =0, (11)
a1y =0, (12)
a2x =0, (13)
a2y =0. (14)
Произведем декомпозицию задачи покрытия (6)-(9) на четыре задачи, отличающиеся присутствием одного из ограничений (11)-(14). Следует заметить, что в силу симметрии области покрытия решение задачи (6)-(9) при выполнении условий (11), (12) совпадает с ее решением при выполнении условий (13), (14).
В дальнейшем, в связи с однотипностью решений достаточно ограничиться рассмотрением решения только одной из задач, например, при выполнении условия (11).
При выполнении условия (11) на вектор ai накладывается ограничение: 0<a1y < R.
Замечание. Строго говоря, система ограничений на a1 имеет вид: a1x=0, —2R<a1y <2R. Но решение для случая 0<a1y<2R может быть получено при решении задачи с ограничением (12). Решение задачи для случая, когда a1x=0, —2R < a1y < 0, может быть получено путем трансляции из решения задачи (6)-(9) с ограничениями (13), (14).
Функция цели задачи регулярного покрытия прямоугольника P кругами из множества Tзависит от векторов базиса решетки a1 и a2, от вектора t1 трансляции решетки относительно прямоугольника р , от размеров A, B прямоугольника P и
диаметра 2R круга T є т , і є In.
Функция цели обладает следующими очевидными свойствами: ограничена, неотрицательна, кусочнопостоянна, целочисленна, кроме того, является периодической по t1 по направлениям a1, a2 и их линейным целочисленным комбинациям.
Зависимость результата от параметров весьма нетривиальна и представима очень громоздкими выражениями. Эти функции сложно записать в явном виде и, тем более, вычислить производные. С другой стороны, рассматриваемые функции кусочно-постоянные и имеют область допустимых значений, представляющую собой множество целых чисел небольшой мощности. Таким образом, для поиска оптимального решения достаточно рассмотреть дискретный набор значений параметров при условии, что хотя бы один из них попадет в каждый из участков постоянного значения функции цели. При этом, поскольку определение значения функции цели требует небольших вычислительных затрат, может быть выбран достаточно малый шаг изменения параметров и, следовательно, в качестве приближенного метода решения данной задачи целесообразно использовать метод наложения сетки на область допустимых решений, в узлах которой ищется решение. Предполагается равномерное расположение узлов.
На рис. 1 приводится тестовый пример решения задачи (6)-(8) покрытия прямоугольника размеров A = 100, B = 100 кругами радиуса R =6.5 при использовании метода регулярного покрытия. Значение функции цели равно 104 .
Перейдем теперь к рассмотрению задачи секционно-регулярного покрытия прямоугольника кругами. Решение поставленной задачи сводится к решению двух задач покрытия прямоугольника вертикально и горизонтально расположенными секциями прямоугольной формы. Поскольку задачи совпадают по постановке, ограничимся в дальнейшем рассмотрением первой из них.
Функция цели этой задачи обладает теми же свойствами, что и функция цели задачи регулярного покрытия прямоугольника, исключая периодичность. Кроме того, зависимость результата от
РИ, 2002, № 1
51
параметров сложна и трудно формализуема. Это приводит к необходимости использования приближенных методов для решения задачи. Например, применение метода наложения сетки на области допустимых решений позволяет осуществить двухэтапное решение задачи секционно-регулярного покрытия:
— решение ряда задач однородного регулярного раскроя секций размеров A х hk методом, изложенным выше;
— выбор оптимальной комбинации секций.
При этом из кусочной постоянности и ограниченности функции цели вытекает, что для каждого целого числа k =1,2,...,N(P), где N(P) — решение задачи регулярного покрытия всего прямоугольника P, может быть выбран параметр hk такой, что регулярное покрытие секции размеров A х hk содержит не более k кругов, а любая секция размеров
A х h*, h* > hk — более чем k кругов. Таким образом, множество всех таких значений hk задает сетку с переменным шагом, использование которой при решении задачи по приведенной выше схеме обеспечивает ее оптимальное решение по заданным параметрам разбиения прямоугольника на секции.
Из приведенных выше рассуждений вытекает, что на первом этапе следует решить ряд обратных задач регулярного покрытия. А именно, для заданного числа кругов требуется определить максимально возможный размер секции, покрываемый заданным количеством кругов. Следует отметить, что при решении задачи регулярного покрытия всего прямоугольника Рданным методом все эти решения могут быть получены в качестве промежуточных результатов.
Перейдем теперь к решению задачи выбора оптимального набора секций. По своей постановке она аналогична известной одномерной задаче о ранце [6], если интерпретировать количество кругов k , размещенных в секции, как вес элемента, а значение hk — как длину элемента. Однако функция цели в этом случае нетрадиционна, а именно: необходимо найти набор элементов минимального веса, обеспечивающих переполнение или, по крайней мере, полное заполнение ранца.
Характерная особенность этой задачи, обусловившая метод ее решения, состоит в том, что набор возможных весов ранца ограничен подмножеством натуральных чисел от 1 до ^включительно, причем значение M не велико. Для решения этой задачи был использован метод динамического программирования.
На рис. 2 приводится тестовый пример решения задачи (6)-(8) покрытия прямоугольника размеров A = 100, B = 100 кругами радиуса R =6.5 при использовании метода секционно-регулярного покрытия. Значение функции цели равно 103.
Сравнительный анализ результатов, полученных при решении задачи (6)-(9) методом нерегулярного покрытия [7] и методом, предложенным в данной статье (при тех же исходных данных), позволяет сделать вывод о том, что метод регулярного покрытия значительно улучшает значение функции цели.
Литература: 1. Стоян Ю.Г., Яковлев С.В. Математические модели и оптимизационные методы геометрического проектирования.Киев: Наук. думка, 1986.268 с. 2. Антошкин А.А., Комяк В.М., Романова Т.Е., Шеховцов С.Б. Особенности построения математической модели задачи покрытия в системах автоматической противопожарной защиты// Радиоэлектроника и информатика. 2001. №1. С. 35 - 39. 3. ДБН В.2.5-13-98 Пожарная автоматика зданий и сооружений/ Госстрой Украины. Киев, 1999. С. 19-20, 71-72 . 4. Toth L. Fejes Lagerungen in der Ebene, auf der Kugel und in Raum, Grundl Math. Wiss., 65. Berlin: Springer, 1953. 260 p. 5. Роджерс К.А. Укладки и покрытия. М.: Мир, 1968. 134 с.
6. Корбут А.А., Финкельштейн Ю.Ю. Дискретное программирование. М.: Наука, 1969. 368 с. 7. Антошкин А.А., Панкратов А.В., Пацук В.Н., Романова Т.Е., Шеховцов С.Б. Задача покрытия прямоугольной области кругами заданного радиуса // Радиоэлектроника и информатика. 2001. №. 3. С. 38 — 41.
Поступила в редколлегию 13.10.2001
Рецензент: д-р техн. наук Гиль Н.И.
Панкратов Александр Владимирович, канд. техн. наук, научный сотрудник отдела математического моделирования и оптимального проектирования Института проблем машиностроения НАН Украины им. А.Н. Подгорного. Адрес: Украина, 61046, Харьков, ул. Пожарского, 2/10, тел. (0572) 95-95-36.
Пацук Владимир Николаевич, канд. техн. наук, старший научный сотрудник отдела математического моделирования и оптимального проектирования Института проблем машиностроения НАН Украины им. А.Н. Подгорного. Адрес: Украина, 61046, Харьков, ул. Пожарского, 2/10, тел. (0572) 95 95 36.
Романова Татьяна Евгеньевна, канд. физ.-мат. наук, старший научный сотрудник отдела математического моделирования и оптимального проектирования Института проблем машиностроения НАН Украины им. А.Н. Подгорного. Адрес: Украина, 61046, Харьков, ул. Пожарского, 2/10, тел. (0572) 95-95-36.
Антошкин Алексей Анатольевич, адъюнкт кафедры пожарной автоматики и связи Академии пожарной безопасности Украины. Адрес: Украина, 61023, Харьков, ул. Чернышевского, 94, тел. (0572) 40-20-35.
52
РИ, 2002, № 1