Akıllı seyahat eden satıcılar var mı?


12

Şaka bir yana, neredeyse gezici bir satıcı problemi (TSP) olan bir yönlendirme problemim oldu :

  • başlangıç ​​noktası tanımlandı
  • bitiş noktası başlangıç ​​noktasıyla çakışıyor
  • her düğüm ziyaret edilmelidir
  • toplam maliyet en aza indirilmelidir

İki yıl önce TSP'nin mükemmel bir eşleşme olacağını düşündüm, bu yüzden tsp_solveConcorde ve bazı örnek verileri yayınladım . Neyse ki, TSP'nin en kısa yolunun gerçek en kısa yol olmadığı hemen belliydi , çünkü sorun, düğümlerin tam olarak bir kez ziyaret edilmesini gerektirerek daha kolay hale getirildi . Bu resim , hesaplanan çözümün optimizasyonunda sadece bir adımlık manuel bir denemedir ve zaten kullanılan en uzun kenarın mesafesinden tasarruf sağlar.

Haritalama / izleme sitelerinin alt kümelerine en uygun yolları bulmaya çalıştığımda sorun yeniden ortaya çıktı. Konum ve yol ağı verileri hem oldukça doğru hem de hassastır, bu nedenle böyle bir egzersiz mantıklıdır.

TSP'nin genellemelerine baktım, ancak uygun bir algoritma bulamadım. Minimum yayılan ağaçlar dallardan dönüşü hesaba katmaz (buradaki ilk çözüm 3 daha fazladır). Anladığım kadarıyla, en kısa yol problemi sonunda sadece iki düğüme önem verir ve optimal yoldan olanlar dışarıda bırakılır. Araç yönlendirme probleminin özel bir durumu en uygun gibi görünüyor, ancak doğrudan olmayan yolları dikkate alıp almadığını bilmiyorum.

Sorum: Bu tür bir sorun (aile) için yerleşik bir isim, tanım var mı? Çözmek için hangi algoritmayı ve aracı kullanırdınız?

İşlemsel olarak ağır olacağından eminim, ancak hem genel (sonsuz kaynaklar) hem de pratik cevaplarla ilgileniyorum.


Grafik teorisine baktınız mı?
nagytech

Yukarıdaki Wikipedia bağlantıları kadar ve birkaç bağlantı daha derin. Uni'de sadece önemsiz LP ve karar teorisi yaptık.
lynxlynxlynx

Yanıtlar:


4

Bu TSP . Üçgen eşitsizliğini tatmin etmediği için geçerli bir mesafe metriği tanımlamadınız: A'dan C'ye ve B'den A'ya C'ye belirtilen mesafeden daha kısa bir rota varsa, A'dan C'ye belirtilen mesafe oldukça basit, yanlış. Çözüm, A'dan C'ye kadar olan uzunluğu A'dan C'ye kadar tüm rotaların en kısa uzunluğu olarak ayarlayarak mesafe matrisini güncellemektir.


Harika, bu oldukça kolay. Küçük grafikler için, muhtemelen yeni mesafe matrisini önceden hesaplamak için bile değmez, ancak bunun yerine anında yapmak gerekir.
lynxlynxlynx
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.