Optimum kaldırım yapısında QGIS ve pgRouting kullanarak Monte Carlo simülasyonu


17

Mekansal analiz konusunda yeniyim ve denediğim bir proje için aşağıda özetlenen bazı genel yönleri takdir ediyorum (sıfırdan başlıyorum).

HEDEF: En çok hane halkını Merkezi İş Bölgesi'ne (CBD) bağlamak için memleketimde 2000 metrelik kaldırımlar kurmak için en iyi yerleri bulmak , burada "bağlı", MİA'ya 1,9 km mesafede. Mevcut yapıları (hane halkı), yolları ve kaldırımları (önceden kurulmuş) gösteren şekil dosyalarımız var.

İşte benim önerdiğim çözüm / düşünce süreci:

  1. Yerinde kaldırım ağını, ağırlıklar (mesafeler) ile bağlı bir düğüm veritabanına dönüştürün. Tüm kavşaklara tıklayarak bunu doğrudan QGIS'de (veya başka bir programda) yapmanın bir yolu var mı?
  2. PgRouting veya başka bir şeyin yönlendirme yeteneklerini kullanarak Merkezi İş Bölgesi'ne 1,9 km mesafedeki hane sayısını (örn. Enlemesine uzun nokta veya çokgen) hesaplayın. Bu temel durum "hanehalkı erişimi" değeri olacaktır.
  3. Yol katmanını bir kılavuz olarak kullanarak, kaldırım katmanına rasgele ek bir 2000 feet (örneğin, 10 ayak segmentinde) yerleştirin. Bu, keyfi olarak bir sürü yeni kaldırım inşa etmeye eşdeğerdir.
  4. (1) 'deki gibi yeni yaya ağını kullanarak düğümleri ve ağırlıkları yeniden hesaplayın ve sonra (2)' de olduğu gibi şimdi MİA'nın 1,2 mil yakınında bulunan hane sayısını yeniden hesaplayın. Ek kaldırımlar ile artmalıdır. Ek kaldırımların konumlarını ve ilişkili "ev erişimi" değerini bir dosyaya (örn. Elektronik tablo) kaydedin.
  5. Monte Carlo simülasyonuna benzer şekilde (3) ve (4) adımlarını 10000 kez tekrarlayın. 10000 veri noktası setini kullanarak, CBD'ye 1,2 mil içinde hanehalkı sayısını en üst düzeye çıkaran kaldırım yerleşim yerlerini seçin.

Bu düşünce süreci gerçekçi görünüyor mu? Kimsenin önerisi var mı?

- Bunu QGIS ve R'nin bir kombinasyonunu kullanarak gerçekleştirmek istiyorum, ancak hedefe ulaşmak için PostGIS ve / veya Python (veya başka bir şey) öğrenmeye açıkım.


1
Bunun yerine genetik bir algoritmayı düşünmek isteyebilirsiniz. Neredeyse tanımladığınız süreç bu. Genetik algoritmaları destekleyen python kütüphaneleri olduğundan eminim.
Chris

1
Görünüşe göre R'nin de genetik algoritma kütüphaneleri var.
Chris

6
Harika bir problem. Bununla birlikte, 200 10 'kaldırım segmentlerinin çoğu rastgele yerleşimi başka hiçbir şeye bağlanmaz; böylesi bir şekilde en uygun yere yakın bir yere gelmeyeceksiniz. İlk düşüncelerinizi sorunun soyut olarak nasıl formüle edileceğine (herhangi bir veri yapısından veya programlama ortamından bağımsız olarak) odaklanmanızı önerebilir miyim? Belirli bir çözüm yöntemi önermiş gibi görünüyor.
whuber

2
Erken? Katılmıyorum. Aslında, yukarıda özetlenen düşünce süreci bir yaklaşımdır; Herhangi bir beyin fırtınasına odaklanacağını ve faydalı geri bildirimle sonuçlanacağını umuyorum. Bununla birlikte, mevcut en kapsamlı çözüm yöntemlerine açık olduğumu söyledi. Segmentleri, kaldırımların her zaman bir şeyleri birbirine bağlayacak şekilde yerleştirilecek şekilde sınırlamak, uygulanması kolay olacak ve bir çözüm bulmaya yardımcı olacaktır. Önerin için teşekkürler.
baha-kev

6
Peki, biraz yedeklerseniz ve rasgeleleştirmeyi unutursanız, akla gelen soru türleri şunlardır: * Bu ne tür bir optimizasyon problemi? Hangi özellikleri var? (Örneğin, doğrusallık, dışbükeylik, yarı konveksite, vb.). * Dual gibi eşdeğer formülasyonları var mı? * Grafiklerin özellikleri veya ceza fonksiyonları gibi onu temsil etmenin alternatif yolları var mı? Örnek olarak, bir ikili formülasyon, belirli bir popülasyona hizmet eden kaldırımların toplam uzunluğunu en aza indirmek olacaktır . Bu dinamik bir programlama çözümü önerebilir.
whuber

Yanıtlar:


1

Excel'de Çözücü uzantısını kullanmak isteyebilirsiniz, astar programlamasında birkaç kez kullandım.

İşte Solver kullanarak LP'deki bir çarpışma rotasında bir bağlantı:

http://www.economicsnetwork.ac.uk/cheer/ch9_3/ch9_3p07.htm


2
Güzel bir fikir ve küçük oyuncak problemleriyle oynamak için yararlı olabilir. Ne yazık ki, Excel bu göreve hazır değil. İşlemesi için çok büyük bir sorun olmasının yanı sıra, Excel'deki bağlantı kısıtlamalarını kodlamak yasak olacaktır: kaldırımların insanları CBD'ye gerçekten bağladığından emin olmalısınız!
whuber
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.