Düzlemsel bir ızgaradan rastgele seçilen noktalarda en kısa hamilton yolunun beklenen uzunluğu nedir?


9

k farklı noktalar bir ızgarasından rastgele seçilir . (Açıkça ve verilen sabit bir sayıdır.) Bu k noktalarından, köşe i ve köşe j arasındaki kenarın ağırlığı , orijinal ızgaradaki iki köşenin Manhattan mesafesine eşit olacak şekilde tam ağırlıklı bir grafik oluşturulur. .p×qkp×qkij

Bu k düğümlerinden geçen en kısa (minimum toplam ağırlık) hamilton yolunun beklenen uzunluğunu hesaplamak için etkili bir yol arıyorum . Daha kesin olarak, aşağıdaki saf yaklaşımlar arzu edilmez:k

Tüm düğümlerin kombinasyonları için kesin yol uzunluğunun hesaplanması ve beklenen uzunluğu türetilmesi.

Tüm düğümlerin kombinasyonları için yaklaşık yol uzunluğunun,% 50'ye kadar hata veren minimum yayılma ağacını kullanmanın temel buluşsal yöntemini kullanarak hesaplanması. (Daha az hatayla daha iyi bir sezgisel tarama yardımcı olabilir)


Şu anda, düzlemsel ızgaradaki ağırlıksız Hamilton yolu problemi NP-tam olduğundan verimli algoritma için umut yoktur.
Muhammed Al-Türkistan

Hamilton yolundan bahsederken, en küçük ağırlığa sahip hamilton yolundan mı bahsediyorsunuz?
a3nm

@ Muhammed-Türkistan'da HAM PATH'ın sertliği mutlaka bir engel değildir, çünkü OP sadece rastgele noktalar için bir tahmindir.
Suresh Venkat

@ a3nm evet, ve ben düzelttim.
Suresh Venkat

Birçok rastgele noktası örneği için tam tur uzunluğunu hesaplamak ve beklentiyi ve standart sapmayı bulmakta sorun nedir? olmak için ne kadar büyük ihtiyacınız var ? kk,p,q
Peter Shor

Yanıtlar:


6

ve oldukça büyük olduğu varsayılarak , beklenen uzunluğun esas olarak yoğunluğa bağlı olacağı ve çevreye bağlı olarak bazı düzeltme terimleri olacağı beklenebilir. Bu nedenle, ilk sıraya göre, aşağıdaki formun bir işlevi olacaktır.pq

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

Şimdi, ve ne olduğunu bulmak için daha küçük boyutlu problemler üzerinde deneyler kullanabilirsiniz . İlk olarak, tahmin etmek için, sınırsız bir örnek üzerinde deneyler yapmak istersiniz: bunu yapmanın en kolay yolu , sol tarafı sağa ve üst kısmı alta bağlı olarak bir ızgarası kullanmaktır. torus. Tahmin etmek , bir denemeleri kullanabilir ızgara.fgfp×pgp×q

Tahmin için, nispeten büyük TSP'leri çözmeniz gerekir (tam olarak veya yaklaşık olarak), çünkü tahmin için kullandıklarınız ne kadar büyük olursa, sonuçlarınız o kadar iyi olacaktır. Yüzde birkaç içinde gelen buluşsal yöntemleri ya da tam TSP kodunu kullanabilirsiniz. Bazı iyi buluşsal yöntemler için buraya bakın . Bill Cook'un Concorde TSP çözücüsü, oldukça büyük örnekler için en uygun olanı bulur (mevcut en iyi TSP kodu) ve akademik araştırmalar için ücretsiz olarak kullanılabilir.


TSPLIB terminolojisini kullanarak TSP değil SOP arıyordum. Çarpma ile TSP için hesaplanan bir üst SOP gitmekte verir. Maalesef, Concorde TSP çözücü SOP'leri işlemiyor ve çevrimiçi olarak herhangi bir SOP çözücü bulamadım. E[L](k1)/k
Javad

Sanırım hesaplamak için , daha büyük ler ve daha küçük ler olan vakalar etrafında eşit olarak dağılmıştır , bu yüzden ızgaradaki noktalarının düzenini bulmak için yapıcı bir yaklaşım ortaya çıkabilir ki (belki yaklaşık olarak) verir . Bu tür bir düzenlemenin bulunması, açık bir şekilde hesaplama maliyetini önemli ölçüde azaltacaktır. E[L]LLE[L]kE[L]
Javad

Ayrıca katsayının nedenini tam olarak anlamadım k2. Neden olmasınk2/(pq)? Bu yaklaşık formülasyon, daha küçük değerler için nasıl değişir?p ve q?
Javad

@Javad: Güzel soru. Yanılmışım, çünkü bir şekilde düşünüyordumk2cevabımı yazdığımda puan verdim. Katsayı,p×q ızgara birim uzunluk kenarlarına sahiptir, bu nedenle tüm bölge boyuttadır p×q. Ortalama kenar uzunluğunda olmalıdırθ(pq/k)ve var k kenarları, yani isterseniz f kabaca sabit kalmak için ilk terim pqkf(k/pq).
Peter Shor

İçin k106, TSP uzunluğu ile SOP uzunluğu arasındaki fark neredeyse göz ardı edilebilir olmalıdır.
Peter Shor
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.