УДК 519.85
РЕШЕНИЕ ОДНОГО КЛАССА
ЗАДАЧ НАЗНАЧЕНИЯ ГЕОМЕТРИЧЕСКИХ ОБЪЕКТОВ
Е.Ю.Стоян, И.Ю.Тарасов
г. Харьков, ул
Клочковская,333, тел: 330-05 94
Пусть
имеется область размещения и n геометрических объектов
,
, с заданными
формами и метрическими характеристиками. Каждому объекту соответствует
внутренняя точка, которую назовем полюсом объекта. Области размещения
принадлежат n точек
. Требуется таким
образом разместить объекты
, в области
, совмещая их
полюса с точками
, чтобы суммарная
площадь попарных пересечений объектов и площадь той
части объектов, которые не принадлежат
, была минимальной. В
дальнейшем объект
, установленный на
место
, обозначим через
.
Рассмотрим математическую
постановку описанной задачи. Введем булевы переменные:
Для каждого объекта и каждого места
определим меру
(площадь) части объекта
, не
принадлежащей области
:
.
Кроме того, для объекта , назначенного на место
, и объекта
, назначенного на место
, определим меру их
пересечения:
.
Объекты на места будем назначать
таким образом, чтобы минимизировать следующую функцию:
(1)
при следующих ограничениях на переменные;
2J (2)
Смысл этих ограничений
заключается в том, что на каждое место назначается только один объект и каждый
объект может быть установлен только на одно место.
Для простоты дальнейшего
изложения метода решения задачи (1)-(2) осуществим следующие преобразования.
Вместо переменных , будем рассматривать
вектор
- целая часть числа t . Множество всех таких векторов
обозначим
. Очевидно, что
все точки множества
и только они
удовлетворяют системе
В результате проведенных
преобразований можно сформулировать следующую задачу:
(5)
(6)
J (7)
(8)
где
(9)
Представляет интерес
преобразование целевой функции к выпуклому
виду, т.е. построение такой выпуклой функции
, которая в
точках множества
совпадает с
. Такое преобразование дня квадратичной функции может быть
проведено на основе следующих справедливых для точек и множества соотношений:
(10)
(11)
Очевидно, что в правых частях
приведенных соотношении - выпуклые
функции. Тогда целевая функция вида (5)
при замене (10)-(11) после преобразований также выпукла. Заметим, что в функции
вида (5)
коэффициенты , в связи, с чем при
преобразовании к выпуклому виду используется лишь соотношение (10). Однако для преобразования к выпуклому
виду квадратичной функции общего вида необходимы оба соотношения (10) и (11).
Целевая функция (5) может быть записана в следующей форме:
,
где - симметричная матрица квадратичной
части функции
;
- вектор линейной части функции
• Осуществим
преобразование
к выпуклому виду. Имеем
При пересечении гиперплоскостей (6), (7) с n-сферой (9) образуется гиперсфера размерностью S=q-2n-1. Опишем способ проведения вышеупомянутой
редукции размерности задачи. Обозначим
Осуществив ортогонализацию матрицы , получим матрицу V . Обозначим
.
В результате проведенного
преобразования булевы векторы имеют размерность S=q-2n-1, а ограничения
(6)-(7) исключаются.
Перенесем центр сферы S в начало
координат евклидова пространства. Для этого проведем замену переменных задачи.
Обозначим . В результате последних преобразований математическая
постановка задачи будет иметь следующий вид:
(12)
(13)
(14)
где A - положительно определенная симметричная
матрица
Опишем метод решения задачи (12)-(14). Определим вначале минимум функции F(Z) на сфере s , задаваемой теперь соотношением (14).
Составим функцию Лагранжа задачи (12)-(13):
Минимум F(z) на сфере может быть найден из следующей
системы:
Из первого уравнения системы имеем
Пусть - собственные
значения, а
- соответствующие им
собственные векторы. Тогда если
не принадлежит спектру
матрицы A , то
(15)
(16)
где
Соотношение (16) представляет собой уравнение с одним
неизвестным . Нетрудно видеть, что на каждом из промежутков
функция
выпукла. Решив уравнение (16) на каждом из промежутков
одним из
известных численных методов,
получим не более 2S корней
. При этом
Вычислив функцию F(Z) при каждом , определим минимальное
значение функции и корень
, при котором
оно достигается. Подставив
в (13), определим
. Таким образом, F(Z) достигает
минимума на сфере S в точке
. Рассмотрим
компоненты вектора
. Среди них
выберем те
, для которых не
выполняются ограничения -неравенства
задачи (12). (Заметим, что если все
удовлетворяют ограничениям - неравенствам
задачи (12), то
- ее решение). Зафиксировав
переменные, мы тем самым понизим размерность задачи на число зафиксированных
компонент. После преобразования функции цели и ограничений в соответствии с
проведенным понижением размерности задачи мы получаем задачу, аналогичную (12), в пространстве меньшей размерности.
Понижая таким образом на каждом шаге размерность задачи, ми не более чем за. s шагов получим
вектор
, дающий
приближенное решение задачи (12).
Осуществив обратное преобразование, найдем
где
. Таким образом,
- приближенное решение
задачи о назначении указанных объектов на зафиксированные места.
Был
проведен вычислительный эксперимент, в ходе которого при решении различных
задач описанным методом в большинстве случаев было получено оптимальное
решение.