Чому очевидні «жадібні» варіанти не спрацьовують
Зрозумілою першою інстинкцією є ранжування кожного об’єкта розташування за величиною попиту, який він може обслуговувати, а потім просто вибір найкращих p об’єктів. Це призводить до невдачі, оскільки ігнорує конкуренцію між об’єктами за одні й ті самі точки попиту. Якщо два найкращі ранжовані об’єкти розташовані біля одного щільного кластеру попиту, вибір обох є марним, оскільки один з них витрачається на надмірне обслуговування, а інший регіон карти залишається повністю нездоровим. У реальності, коли об’єкт відкривається, попит поблизу призначається йому, і будь-який інший об’єкт, який конкурує за той самий попит, більше не потребує існування. Це означає, що цінність додавання об’єкта на певному місці не є фіксованою кількістю, яку можна обчислити ізольовано; це залежить від того, які інші об’єкти вже були обрані. Два середнього класу об’єктів, які разом покривають доповнюючі регіони, можуть перемогти два місцеві чудові об’єкти, які перекриваються. Це взаємозалежність між виборами, яка робить проблему розташування об’єктів справді комбінаторною оптимізацією, а не простим сортуванням, і тому цій галузі потрібні формальні функції цілей та спеціалізовані алгоритми, а не однопрохідне ранжування.
Об'єктивність p-медіан: Мінімізація середньої відстаті подорожі
Найбільш поширене формулювання – задача про p-медіани. Вона передбачає набір точок попиту, кожна з яких має вагу w_i, що представляє собою обсяг попиту, який виникає там (населення, обсяг замовлень, кількість транспортних засобів), та набір кандидатів для розташування об’єктів. Мета полягає у виборі точно p з цих локацій для відкриття так, щоб загальна вартість подорожей була якомога меншою. Формально, якщо d(i, найближчий відкритий об'єкт) позначає відстань від точки попиту i до будь-якого з відкритих об’єктів, найближчого до неї, то об’єктив є наступним: мінімізувати суму по всіх точках попиту i ваги w_i, помножені на d(i, найближчий відкритий об'єкт). Кожна точка попиту обслуговується її єдиним найближчим відкритим об’єктом, а об’єктив p-медіан складає всі ці зважені відстані та намагається зробити їх суму якомога меншою. Це фундаментально об'єктив середнього випадку, орієнтований на ефективність: це природний вибір, коли вас турбує мінімізація загальної вартості або загального часу подорожі в системі, наприклад, у мережі розподілу, де кожен пройдений миль коштує грошей, або в роздрібній мережі, що намагається мінімізувати сукупну подорож клієнтів. Корисним ментальним моделлю є те, що об’єкти p-медіан згуртуються навколо центрів маси щільних кластерів попиту, оскільки обслуговування великої кількості зваженого попиту на короткій середній відстані робить суму ще меншою, ніж обслуговування кількох віддалених, слабо зважених точок добре.
Об'єкт p-Center: Мінімізація Найгіршого Випадку
Дуже інший, але не менш важливий підхід – задача p-центру. Замість мінімізації загальної або середньої відстані, вона мінімізує максимальну відстань, яку має подолати будь-яка точка попиту, щоб дістатися до найближчого відкритого об’єкту. Формально: мінімізувати максимум, для всіх точок попиту i, відстані d(i, найближчий відкритий об'єкт). Де p-медіан задає питання в масштабі системи (скільки загального транспорту потрібно цьому мережі), p-центр ставить питання про найгірший випадок (який є найбільшим часом, який будь-кому доведеться чекати або подолати, у найменш зручному випадку). Це розрізнення має величезне значення на практиці. Для оптимізації витрат на доставку в складському господарстві важлива середня вартість, тому p-медіан є правильним інструментом. Але при розміщенні пожежних станцій або пунктів швидкої допомоги ніхто не хоче жити тим домом, який, у середньому, добре обслуговується системою, але випадково знаходиться на недопустимо великій відстані від будь-якого об’єкту. Планувальник надзвичайних ситуацій піклується про час найгіршого випадку, а не про міжопераційний середній час, що безпосередньо контролюється p-центром. Це робить p-центр природним каркасом, коли метою є справедливість або гарантований рівень обслуговування, а не загальна ефективність, і ці дві формулювання можуть справді відрізнятися щодо того, де розміщувати об’єкти: оптимальне рішення p-медіана може залишити одну віддалену точку попиту погано обслугованою, навіть якщо досягнуто чудової середньої вартості системи, що є точно тим результатом, який запобігає розв'язка p-центру.
NP-складність та практичні евристики
Обидва p-median і p-center є NP-складними в загальному випадку: кількість способів вибрати p об'єктів з n кандидатів місць зростає комбінаторно (комбінації n по p), і не існує відомого алгоритму, який би знаходив гарантовано оптимальне рішення за час, що масштабується розумно зі збільшенням задачі. Навіть помірні інстанції з кількома сотнями кандидатів місць та десятками об'єктів для розміщення можуть мати більше можливих комбінацій, ніж атомів, які можна порахувати силою. Саме тому практичне розташування об’єктів покладається на евристики, які швидко знаходять дуже хороші, хоча й не підтверджені оптимальні рішення. Поширений підхід – це жадібний побудова з локальним пошуком: починати, додаючи об'єкти один за одним, кожен раз вибираючи той кандидат на місцезнаходження, що найбільше зменшує об’єктну функцію, враховуючи вже розміщені об’єкти, потім покращувати результат за допомогою рухів заміни, які намагаються замінити відкритий об'єкт закритою кандидатурою та зберігати заміну, якщо вона покращує об’єктну функцію, повторюючи це до тих пір, поки не залишиться корисних замін. Ще одна сім’я евристик черпає натхнення з алгоритму Ллойда з кластеризації k-means: чергувати призначення кожної точки вимоги найближчому поточно відкритому об'єкту та переміщення кожного об'єкта до точки (або кандидата на місцезнаходження), яка найкраще обслуговує точки вимоги, які зараз призначені йому, повторюючи цей цикл «ремаркування та переміщення» до тих пір, поки призначення не стабілізуються. Жоден з цих підходів не гарантує справжнього оптимуму, і обидва можуть застрягати в локально гарному, але глобально неоптимальному розташуванні, тому практикуючі експерти часто запускають їх з кількох випадкових початкових конфігурацій та зберігають найкращий результат, знайдений, обмінюючи доказ оптимальності на рішення, яке є достатньо хорошим, достатньо швидким і стійким у практиці.
Практичні застосування
Розташування об'єктів зустрічається скрізь, де обмежена кількість фізичних ресурсів повинна обслуговувати розсіяне населення. Планування мережі зарядних станцій для електромобілів використовує моделі p-median, щоб визначити, де розмістити фіксовану кількість зарядних станцій вздовж трас або в місті, щоб мінімізувати загальну подорож автомобіля, а деякі планувальники додають обмеження p-center, щоб гарантувати, що жоден водій у сільській місцевості ніколи не буде далеко від найближчого зарядного пристрою. Розміщення складів і дистрибуційних центрів є класичним застосуванням p-median: розд продавці та логістичні компанії обирають кілька місць розташування складів з багатьох кандидатів, щоб мінімізувати загальну вагову відстань доставки до всіх своїх клієнтів або магазинів, що безпосередньо призводить до зниження витрат на паливо та швидшого середнього часу доставки. Розташування служб екстреної допомоги, включаючи пожежні частини, депо швидкої медичної допомоги та запаси для ліквідації надзвичайних ситуацій, значною мірою спирається на p-center, оскільки регулятори та планувальники зазвичай піклуються про гарантування максимального часу відповіді до кожного району, а не лише мінімізацію середнього значення по всьому місту. У багатьох реальних розгортаннях поєднуються обидва підходи: спочатку використовується обмеження p-center, щоб гарантувати, що кожен пункт знаходиться на відстані, прийнятній для нього, від об'єкта, а потім використовується об'єктив p-median, щоб вибрати конкрельну конфігурацію з усіх тих, які задовольняють цьому гарантії, яка мінімізує загальні витрати.
Часті запитання
Яка різниця між p-median та p-центром в одне речення?
p-median мінімізує загальну (або середню) зважену відстань від усіх точок попиту до найближчого відкритого об’єкту, сприяючи загальній системній ефективності, тоді як p-центр мінімізує найгіршу випадкову відстань, яку має подолати будь-яка точка попиту, забезпечуючи справедливість та гарантовані рівні обслуговування.
Чому я не можу просто вибрати p місць із найбільшим попитом поруч?
Оскільки об’єкти конкурують за один і той самий попит. Якщо два найкращі рейтингові об’єкти розташовані біля одного щільного кластеру, відкриття обох марнує об’єкт на перекривається покриття, тоді як інша область залишається не обслугованою. Значення об’єкту залежить від того, скільки інших об’єктів вже відкрито, тому проблему потрібно вирішувати спільно, а не окремо ранжувати об’єкти.
Чи розв’язується задача про розташування об’єктів точно?
Для малих або помірних розмірів інстанцій – так; розв’язувачі на основі цілочисельного програмування можуть знайти та підтвердити справді оптимальне рішення, використовуючи техніки, такі як branch and bound. Але зі збільшенням кількості кандидатів на об’єкти та кількості об’єктів p, пошуковий простір експоненційно зростає комбінаторно, і точні методи стають занадто повільними, тому для великих реальних мереж використовуються жадібний конструювання, локальні пошукові заміни та евристика Lloyd’а.
Як це пов'язано з кластеризацією k-середніх?
Вони близькі родичі. K-means також призначає точки найближчому до k центрів кластерів і переміщує кожен центр, щоб краще обслуговувати свої призначені точки, що відображає евристику relabel-and-relocate, яка використовується для розташування об’єктів. Ключова відмінність полягає в тому, що k-means дозволяє кластерному центру знаходитися будь-де у неперервному просторі, тоді як розташування об’єктів зазвичай обмежує об’єкти фіксованим, дискретним набором кандидатів.
Чи можуть ваги та відстані представляти речі, інші ніж фізична географія?
Так. Хоча розташування об’єктів зазвичай ілюструється географічними картами, однакові математичні методи застосовуються до будь-якого набору з поняттям точок попиту, кандидатів на місця та відстані або вартості між ними, включаючи розміщення серверів у комп'ютерній мережі для мінімізації затримки, вибір місць розташування складів у логістичних мережах або навіть вибір невеликої кількості репрезентативних прикладів у завданнях узагальнення даних.
Спробуйте наживо
Усе, що вище, працює прямо у вашому браузері — відкрийте The Facility Location Problem: Where to Place Resources for Maximum Coverage і змінюйте параметри під час роботи. Нічого не встановлюється, нічого не завантажується на сервер, уся модель живе в одній вкладці.
▶ Відкрити симуляцію The Facility Location Problem: Where to Place Resources for Maximum Coverage