Яка очікувана довжина найкоротшого гамільтонового шляху у випадково вибраних точках з плоскої сітки?


9

k різні точки вибираються випадковим чином з a p×qсітка. (Очевидноkp×q і це задане постійне число.) З них будується повний зважений графік k точки такі, що вага краю між вершиною i і вершина j дорівнює манхеттенській відстані двох вершин на вихідній сітці.

Я шукаю ефективний спосіб розрахунку очікуваної довжини найкоротшого (мінімальної загальної ваги) гамільтонівського шляху, що проходить через ціkвузли. Точніше, такі наївні підходи не бажані:

Обчислення точної довжини шляху для всіх комбінацій k вузлів та отримання очікуваної довжини.

Обчислення приблизної довжини шляху для всіх комбінацій k вузлів, використовуючи основну евристику використання дерева мінімального розміру, що дає помилку до 50%. (Краще евристика з меншою кількістю помилок може бути корисною)


В даний час немає надій на ефективний алгоритм, оскільки невзважена гамільтонова проблема шляху на площинній сітці не є повною NP.
Мохаммед Аль-Туркстані

Якщо ви говорите про гамільтонову стежку, чи замислюєтесь ви про гамільтонову стежку з найменшою вагою (ака. Проблема мандрівного продавця)?
a3nm

@ MohammadAl-Turkistany твердість HAM PATH не обов'язково є перешкодою, оскільки ОП - лише оцінка випадкових точок.
Суреш Венкат

@ a3nm так, і я це виправив.
Суреш Венкат

Що не так у обчисленні точної тривалості туру для багатьох випадкових зразків kбалів та знаходження очікування та стандартного відхилення? Скільки вам потрібноk,p,qбути?
Пітер Шор

Відповіді:


6

Якщо припустити, що p і qдосить великі, можна було б очікувати, що очікувана довжина в основному буде залежати від щільності, з деяким терміном корекції залежно від периметра. Отже, це було б до першого порядку функцією наступної форми.

L(pqk)1/2f(k/pq)+(p+q)g(k/pq).

Тепер ви можете використовувати експерименти над проблемами меншого розміру, щоб зрозуміти, що f і gє. По-перше, оцінитиf, ви хочете робити експерименти на вибірці без меж: найпростіший спосіб зробити це - використовувати a p×pсітка з лівим боком з'єднана правою, а верхня - донизу, утворюючи торус. Оцінитиg, ви можете використовувати експерименти на p×q сітка.

Для оцінки потрібно вирішити (точно або приблизно) відносно великі TSP, оскільки чим більше ви використовуєте для оцінки, тим кращі будуть ваші результати. Ви можете використовувати евристику, яка становить декілька відсотків, або точний TSP-код. Дивіться тут для деякої гарної евристики. TSP-вирішитель Concorde Білла Кука знайде точний оптимум для досить великих випадків (це найкращий доступний код TSP), і його можна буде безкоштовно використовувати для академічних досліджень.


Використовуючи термінологію від TSPLIB , я шукав SOP не TSP. Множення наE[L] розраховано для TSP по (k1)/kдає верхню межу для СОП. На жаль, вирішувач Concorde TSP не обробляє SOP, і я не зміг знайти жодного рішення для SOP в Інтернеті.
Джавад

Я припускаю для розрахунку E[L], випадків яких більше Lі менше LРосія розподіляється порівну E[L], тож можна придумати конструктивний підхід до пошуку домовленостей k балів у сітці, що (можливо, приблизно) дає E[L]. Пошук такої домовленості, очевидно, різко знизить вартість обчислення.
Джавад

Я також не зовсім зрозумів причину коефіцієнта k2. Чому так не повинно бутиk2/(pq)? Як змінюється ця формулювання наближення для менших значеньp і q?
Джавад

@Javad: Добре запитання. Я помилявся, бо я якось думавk2моменти, коли я написав свою відповідь. Коефіцієнт випливає з мого припущення, щоp×q сітка має одиницю довжини ребер, тому вся область має розмір p×q. Середній край повинен бути довжиниθ(pq/k), і є k країв, тож якщо хочете f щоб залишатися приблизно постійним, перший термін повинен бути pqkf(k/pq).
Пітер Шор

Для k106, різниця між довжиною TSP і довжиною SOP повинна бути майже незначною.
Пітер Шор
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.