Задача на оптимизацию: на плоскости задано множество точек (датчики); предложите геометрический критерий и метод построения точки, минимизирующей суммарное взвешенное расстояние до них, и обсудите связь с центром масс и медианой Ферма
Задана система датчиков в точках xi∈R2x_i\in\mathbb R^2xi∈R2 с положительными весами wi>0w_i>0wi>0. Требуется найти точку x∈R2x\in\mathbb R^2x∈R2, минимизирующую суммарное взвешенное расстояние f(x)=∑iwi∥x−xi∥.
f(x)=\sum_i w_i\|x-x_i\|. f(x)=i∑wi∥x−xi∥. Геометрический критерий (условие равновесия) - Внутренняя точка-минимум x∉{xi}x\notin\{x_i\}x∈/{xi} удовлетворяет уравнению равновесия векторов сил ∑iwix−xi∥x−xi∥=0.
\sum_i w_i\frac{x-x_i}{\|x-x_i\|}=0. i∑wi∥x−xi∥x−xi=0.
Это означает, что векторы от искомой точки к датчикам, нормированные и умноженные на веса, компенсируют друг друга. - Если оптимум совпадает с некоторым датчиком xjx_jxj, то субградиентное условие даёт критерий ∥∑i≠jwixj−xi∥xj−xi∥∥≤wj.
\Big\|\sum_{i\ne j} w_i\frac{x_j-x_i}{\|x_j-x_i\|}\Big\|\le w_j. i=j∑wi∥xj−xi∥xj−xi≤wj. Свойства - Функция fff выпукла; при том, если точки не лежат на одной прямой, минимум единственен. - Вырожденные частные случаи: - Для трёх точек и равных весов: если все углы треугольника меньше 120∘120^\circ120∘, оптимум — точка Ферма (Торричелли), образующая углы 120∘120^\circ120∘ между лучами к вершинам; если есть угол ≥120∘\ge 120^\circ≥120∘, оптимум — соответствующая вершина. - Для точек на одной прямой задача сводится к одномерному случаю; оптимум — взвешенная медиана, минимизирующая сумму модулей отклонений. - Центр масс xˉ=∑iwixi∑iwi\bar x=\dfrac{\sum_i w_i x_i}{\sum_i w_i}xˉ=∑iwi∑iwixi минимизирует сумму взвешенных квадратов расстояний ∑iwi∥x−xi∥2\sum_i w_i\|x-x_i\|^2∑iwi∥x−xi∥2, но не сумму модулей; поэтому центр масс — не решение данной задачи в общем случае. Методы построения / вычисления - Итеративный метод Вайцфельда (Weiszfeld): x(k+1)=∑iwixi∥x(k)−xi∥∑iwi1∥x(k)−xi∥.
x^{(k+1)}=\frac{\sum_i w_i\frac{x_i}{\|x^{(k)}-x_i\|}}{\sum_i w_i\frac{1}{\|x^{(k)}-x_i\|}}. x(k+1)=∑iwi∥x(k)−xi∥1∑iwi∥x(k)−xi∥xi.
При достижении x(k)=xjx^{(k)}=x_jx(k)=xj требуется модификация (избежать деления на ноль) или проверка субградиентного условия; модифицированные версии обеспечивают сходимость к глобальному минимуму для положительных весов (при обычных условиях). - Альтернативы: градиентные/субградиентные методы, методы выпуклой оптимизации и геометрические построения для малого числа точек (для трёх точек — классические геометрические конструкции точки Ферма). Краткое заключение - Геометрический критерий: в точке минимума векторная сумма взвешенных единичных векторов к датчикам равна нулю (или выполняется указанная неравенство при совпадении с датчиком). - Практический метод: итерация Вайцфельда с обработкой вырожденных случаев; задача выпукла, решение обычно единственно и вычисляется эффективно.
f(x)=∑iwi∥x−xi∥. f(x)=\sum_i w_i\|x-x_i\|.
f(x)=i∑ wi ∥x−xi ∥.
Геометрический критерий (условие равновесия)
- Внутренняя точка-минимум x∉{xi}x\notin\{x_i\}x∈/{xi } удовлетворяет уравнению равновесия векторов сил
∑iwix−xi∥x−xi∥=0. \sum_i w_i\frac{x-x_i}{\|x-x_i\|}=0.
i∑ wi ∥x−xi ∥x−xi =0. Это означает, что векторы от искомой точки к датчикам, нормированные и умноженные на веса, компенсируют друг друга.
- Если оптимум совпадает с некоторым датчиком xjx_jxj , то субградиентное условие даёт критерий
∥∑i≠jwixj−xi∥xj−xi∥∥≤wj. \Big\|\sum_{i\ne j} w_i\frac{x_j-x_i}{\|x_j-x_i\|}\Big\|\le w_j.
i=j∑ wi ∥xj −xi ∥xj −xi ≤wj .
Свойства
- Функция fff выпукла; при том, если точки не лежат на одной прямой, минимум единственен.
- Вырожденные частные случаи:
- Для трёх точек и равных весов: если все углы треугольника меньше 120∘120^\circ120∘, оптимум — точка Ферма (Торричелли), образующая углы 120∘120^\circ120∘ между лучами к вершинам; если есть угол ≥120∘\ge 120^\circ≥120∘, оптимум — соответствующая вершина.
- Для точек на одной прямой задача сводится к одномерному случаю; оптимум — взвешенная медиана, минимизирующая сумму модулей отклонений.
- Центр масс xˉ=∑iwixi∑iwi\bar x=\dfrac{\sum_i w_i x_i}{\sum_i w_i}xˉ=∑i wi ∑i wi xi минимизирует сумму взвешенных квадратов расстояний ∑iwi∥x−xi∥2\sum_i w_i\|x-x_i\|^2∑i wi ∥x−xi ∥2, но не сумму модулей; поэтому центр масс — не решение данной задачи в общем случае.
Методы построения / вычисления
- Итеративный метод Вайцфельда (Weiszfeld):
x(k+1)=∑iwixi∥x(k)−xi∥∑iwi1∥x(k)−xi∥. x^{(k+1)}=\frac{\sum_i w_i\frac{x_i}{\|x^{(k)}-x_i\|}}{\sum_i w_i\frac{1}{\|x^{(k)}-x_i\|}}.
x(k+1)=∑i wi ∥x(k)−xi ∥1 ∑i wi ∥x(k)−xi ∥xi . При достижении x(k)=xjx^{(k)}=x_jx(k)=xj требуется модификация (избежать деления на ноль) или проверка субградиентного условия; модифицированные версии обеспечивают сходимость к глобальному минимуму для положительных весов (при обычных условиях).
- Альтернативы: градиентные/субградиентные методы, методы выпуклой оптимизации и геометрические построения для малого числа точек (для трёх точек — классические геометрические конструкции точки Ферма).
Краткое заключение
- Геометрический критерий: в точке минимума векторная сумма взвешенных единичных векторов к датчикам равна нулю (или выполняется указанная неравенство при совпадении с датчиком).
- Практический метод: итерация Вайцфельда с обработкой вырожденных случаев; задача выпукла, решение обычно единственно и вычисляется эффективно.