Задача про розміщення об'єктів
Зада́ча про розмі́щення об'є́ктів, відома також як ана́ліз розташува́ння обла́днання або зада́ча k-це́нтра — це гілка дослідження операцій і обчислювальної геометрії, яка досліджує оптимальне розташування об'єктів з метою мінімізувати ціни перевезень з урахуванням таких обмежень, як розміщення небезпечних матеріалів поблизу житла та об'єктів конкурентів. Ці методи також знаходять застосування у кластерному аналізі.
Проста задача про розміщення об'єктів — це задача Вебера, в якій розміщується один об'єкт з метою мінімізації зваженої суми відстаней до заданої множини точок. Складніші завдання цієї дисципліни виникають за обмежень на розміщення об'єктів і за використання складніших критеріїв оптимізації.
У базовому формулюванні задача про розміщення об'єктів складається з потенційних точок забудови L, де об'єкти можуть бути створені, і точок D, які слід обслужити. Мета — вибрати підмножину F точок розміщення об'єктів з метою мінімізувати суму відстаней від кожної точки обслуговування до найближчого обслуговувального об'єкта, плюс суму вартостей розміщення об'єктів.
Задачу про розміщення об'єктів на загальних графах NP-складно розв'язати оптимально, зведенням, наприклад, від задачі про покриття множини. Розроблено кілька алгоритмів для задач про розміщення об'єктів і багатьох варіантів цієї задачі.
Без припущень про властивості відстаней між клієнтами та місцями розташування об'єктів (зокрема, без допущення, що відстань задовольняє нерівність трикутника), задача відома як неметри́чна зада́ча про розмі́щення об'є́ктів і її можна апроксимувати з множником O (log n)[1]. Множник тісний, що випливає зі зведення зі збереженням апроксимації[en] із задачі покриття множини.
Якщо ми припускаємо, що відстані між клієнтами та місцями розміщення об'єктів неорієнтовані й задовольняють нерівність трикутника, ми говоримо про задачу метри́чного розмі́щення об'є́ктів (МРО). МРО залишається NP-складною задачею і її важко апроксимувати зі множником, кращим ніж 1,463[2]. На даний час кращий апроксимаційний алгоритм має коефіцієнт 1,488[3].
Мініма́ксна зада́ча про розмі́щення об'є́ктів шукає розміщення, яке мінімізує максимальні відстані до місць розміщення, де відстань від деякої точки до місць розміщення — це відстань від точки до найближчого місця розміщення. Формальне визначення таке: Якщо задано множину точок P ⊂ ℝd, потрібно знайти множину точок S ⊂ ℝd, |S| = k, таку, що значення maxp ∈ P(minq ∈ S(d(p, q))) буде мінімальним.
У разі евклідової метрики при k = 1 задача відома як задача про найменшу обмежувальну сферу або задача про 1-центр. Вивчення задачі простежується щонайменше до 1860 року, див. докладніше в статті «Обмежувальна сфера».
Доведено, що точне розв'язання задачі k-центра є NP-складним[4][5][6]. Виявлено, що апроксимація задачі буде теж NP-складною, якщо похибка мала. Рівень похибки в апроксимаційному алгоритмі вимірюється коефіцієнтом апроксимації, який визначається як відношення апроксимованого розв'язку до оптимального. Доведено, що апроксимація задачі k-центра є NP-складною, якщо коефіцієнт апроксимації менший, ніж 1,822 (для розмірності 2)[7] або 2 (для розмірності >2)[6].
Точний розв'язок
Існують алгоритми, що дають точний розв'язок задачі. Один із таких алгоритмів дає розв'язок за час [8][9].
Апроксимація 1 + ε
Апроксимація 1 + ε знаходить розв'язок з апроксимаційним коефіцієнтом, що не перевершує 1 + ε. Така апроксимація NP-складна у випадку довільного ε. Запропоновано підхід, заснований на концепції базового набору[en], зі складністю виконання [10]. Доступний альтернативний алгоритм, що також ґрунтується на базових наборах. Він працює за час [11]. Автор стверджує, що час роботи значно менший від часу гіршого випадку і існує можливість розв'язати деякі задачі в разі малих k (приміром, k < 5).
Виділення віддалених точок
Через складність задачі, непрактично шукати точний розв'язок або близьку апроксимацію. Замість цього для великих k широко використовують апроксимацію з коефіцієнтом 2. Ця апроксимація відома під назвою «Алгоритм виділення віддалених точок» (ВВТ = англ. Farthest-point clustering, FPC) або як алгоритм обходу «спочатку дальній»[en][6]. Алгоритм досить простий: вибираємо як центр довільну точку множини, знаходимо найдальшу з решти множини і вважаємо її наступним центром. Продовжуємо процес, поки не наберемо k центрів.
Легко бачити, що алгоритм працює за лінійний час. Оскільки доведено, що апроксимація з коефіцієнтом, меншим від 2, NP-складна, ВВТ вважають кращою апроксимацією.
Пізніше за допомогою техніки рамкової декомпозиції часову складність виконання покращено до O(n log k)[7].
Задача максимі́нного розмі́щення об'є́ктів шукає розміщення, яке максимізує мінімальні відстані до сторін. У випадку евклідової метрики задача відома як задача про найбільшу порожню сферу. Плоский випадок (найбільшого порожнього кола) можна розв'язати за час Θ(n \log n)[12][13].
Вільно поширюване програмне забезпечення для розв'язування задач розміщення об'єктів
[ред. | ред. код]Назва (за абеткою) |
Ліцензія | Мова API | Коротка інформація |
---|---|---|---|
FLP Spreadsheet Solver | Creative Commons Attribution 4.0 International License | Система на основі Microsoft Excel і VBA з відкритим кодом для розв'язування задачі про розміщення об'єктів із посиланням на ГІС загального доступу (посилання). Відео уроки [Архівовано 15 березня 2022 у Wayback Machine.] [14]. | |
ODL Studio | LGPL | Обмежений кластерний компонент в ODL Studio розв'язує задачу про P-медіану (розміщення з мінімізацією зваженої суми відстаней). Програма включає плани розміщення, звіти та завантаження/вивантаження в Excel. (Уроки з ODL Studio [Архівовано 12 квітня 2022 у Wayback Machine.]) | |
SITATION | freeware | Може розв'язувати задачі п'яти класів: P-медіана, P-центр, покриття множинами, максимальне покриття і задача з фіксованими витратами без обмеження пропускної здатності[1] [Архівовано 28 березня 2022 у Wayback Machine.][14]. |
- Центр графа
- Квадратична задача про призначення
- Алгоритм Дейкстри
- Розташування об'єктів (конкурентна гра)[en]
- ↑ Hochbaum, 1982, с. 148–162.
- ↑ Guha, Khuller, 1999, с. 228.
- ↑ Li, 2011, с. 77–88.
- ↑ Fowler, Paterson, Tanimoto, 1981, с. 133–137.
- ↑ Megiddo, Tamir, 1982, с. 194–197.
- ↑ а б в Gonzalez, 1985, с. 293–306.
- ↑ а б Feder, Greene, 1988, с. 434–444.
- ↑ Hwang, Lee, Chang, 1993, с. 1–22.
- ↑ Hwang, Chang, Lee, 1993, с. 398–423.
- ↑ Bādoiu, Har-Peled, Indyk, 2002, с. 250–257.
- ↑ Kumar & Kumar, 2010.
- ↑ Препарата и Шеймос, 1989.
- ↑ Toussaint, 1983, с. 347–358.
- ↑ а б Csoke, 2015.
- Препарата Ф., Шеймос М. . Вычислительная геометрия: Введение. — М. : Мир, 1989. — ISBN 5-03-001041-6. Архівовано з джерела 15 березня 2022
- Bādoiu M., Har-Peled S., Indyk P. . Approximate clustering via core-sets // Proceedings of the thirty-fourth annual ACM symposium on Theory of Computing. — 2002. — 26 грудня. — С. 250–257. Архівовано з джерела 4 березня 2016. Процитовано 15 березня 2022.
- Csoke M. [2] — Governors State University, 2015. Архівовано з джерела 22 серпня 2020
- Feder T., Greene D. . Optimal algorithms for approximate clustering // Proceedings of the twentieth annual ACM symposium on Theory of Computing. — 1988. — 26 грудня. — С. 434–444. Архівовано з джерела 7 травня 2021. Процитовано 15 березня 2022.
- Fowler R. J., Paterson M. S., Tanimoto S. L. . Optimal packing and covering in the plane are NP-complete // Information Processing Letters. — 1981. — Т. 12 (26 грудня). — С. 133–137. — DOI: .
- Gonzalez T. . Clustering to minimize the maximum intercluster distance // Theoretical Computer Science. — 1985. — Т. 38 (26 грудня). — С. 293–306. — DOI: . Архівовано з джерела 24 січня 2013.
- Guha S., Khuller S. . Greedy Strikes Back: Improved Facility Location Algorithms // Journal of Algorithms. — 1999. — Т. 31 (26 грудня). — С. 228. — DOI: .
- Hochbaum D. S. . Heuristics for the fixed cost median problem // Mathematical Programming. — 1982. — Т. 22 (26 грудня). — С. 148–162. — DOI: .
- Hwang R. Z., Lee R. C. T., Chang R. C. . The slab dividing approach to solve the Euclidean p-center problem // Algorithmica. — 1993. — Т. 9, no. 1 (26 грудня). — С. 1–22. — DOI: . Архівовано з джерела 15 березня 2022. Процитовано 15 березня 2022.
- Hwang R. Z., Chang R. C., Lee R. C. T. . The generalized searching over separators strategy to solve some NP-Hard problems in subexponential time // Algorithmica. — 1993. — Т. 9, no. 4 (26 грудня). — С. 398–423. — DOI: . Архівовано з джерела 15 березня 2022. Процитовано 15 березня 2022.
- Kumar P., Kumar P. . Almost optimal solutions to k-clustering problems // International Journal of Computational Geometry & Applications. — 2010. — Т. 20, no. 4 (26 грудня). Архівовано з джерела 28 серпня 2010. Процитовано 15 березня 2022.
- Li Shi. . A 1.488. Approximation Algorithm for the Uncapacitated Facility Location Problem // Automata, Languages and Programming. — Lecture Notes in Computer Science. — 2011. — Т. 6756. — P. 77–88. — ISBN 978-3-642-22011-1. — DOI:
- Megiddo N., Tamir A. . On the complexity of locating linear facilities in the plane // Operations Research Letters. — 1982. — Т. 1, no. 5 (26 грудня). — С. 194–197. — DOI: . Архівовано з джерела 7 грудня 2012. Процитовано 15 березня 2022.
- Toussaint G. T. . Computing largest empty circles with location constraints // International Journal of Computer and Information Sciences. — 1983. — Т. 12, no. 5 (26 грудня). — С. 347–358.
- INFORMS section on location analysis [Архівовано 24 лютого 2012 у Wayback Machine.], професійна спільнота з вивчення проблем розміщення.
- Бібліографія щодо задач розміщення, зібрана Тревором Гале, яка містить понад 3400 статей.
- Бібліотека алгоритмів розміщення
- Утиліта для розміщення виробництва (у вебваріанті).
- Оптимізатор розміщення виробництва [Архівовано 5 квітня 2022 у Wayback Machine.], заснований на MATLAB, засіб для розв'язування задач розміщення виробництва.