最適な歩道の建設に関するQGISとpgRoutingを使用したモンテカルロシミュレーション


17

私は空間分析に慣れていないので、以下に概説するように、私が試みているプロジェクトの一般的な方向性に感謝します(最初から始めています)。

目標:ほとんどの世帯を中央ビジネス地区(CBD)に接続するために、故郷に2000フィートの歩道を設置するのに最適な場所を見つけること。既存の構造(世帯)、道路、歩道(既に設置済み)を示すシェープファイルがあります。

ここに私の提案された解決策/思考プロセスがあります:

  1. インプレースの歩道ネットワークを、重み(距離)で接続されたノードのデータベースに変換します。すべての交差点をクリックして、QGIS(または他のプログラム)でこれを直接行う方法はありますか?
  2. pgRoutingなどのルーティング機能を使用して、中央ビジネス地区から1.2マイル以内にある世帯数(緯度経度のポイントまたはポリゴンなど)を計算します。これが基本ケースの「世帯アクセス」値になります。
  3. 道路レイヤーをガイドとして使用して、さらに2000フィート(たとえば10フィートのセグメント)の歩道をランダムに歩道レイヤーに配置します。これは、任意の数の新しい歩道を構築することと同等です。
  4. (1)のように新しい歩行者ネットワークを使用してノードと重みを再計算し、次に(2)のようにCBDから1.2マイル以内にある世帯の数を再計算します。追加の歩道で増加するはずです。追加の歩道の場所と関連する「世帯アクセス」値をファイル(スプレッドシートなど)に保存します。
  5. モンテカルロシミュレーションと同様に、ステップ(3)と(4)を10000回繰り返します。データポイントの10000セットを使用して、CBDから1.2マイル以内の世帯数を最大化する歩道配置場所を選択します。

この思考プロセスは現実的に聞こえますか?誰か提案はありますか?

-QGISとRのいくつかの組み合わせを使用してこれを達成したいのですが、目標を達成するためにPostGISやPython(または他の何か)を学ぶことは自由です。


1
代わりに、遺伝的アルゴリズムを検討することをお勧めします。これは、ほとんど説明したプロセスです。遺伝的アルゴリズムをサポートするPythonライブラリがあると確信しています。
クリス

1
Rには遺伝的アルゴリズムライブラリもあるようです。
クリス

6
それは大きな問題です。ただし、200個の10フィートの歩道セグメントのほとんどのランダムな配置は、他の何かに接続しません。このようなガイドのない方法で最適に近い場所に来ることはありません。(a)そのような問題を事前に特定し、(b)利用可能な解決方法の最大限の範囲を維持できるように、問題を抽象的に(データ構造やプログラミング環境とは無関係に)定式化する方法に最初の考えを集中することをお勧めしますか?特定の解決方法を提案するのは時期尚早のようです。
whuber

2
時期尚早?私は同意しない。実際、上記で概説した思考プロセスは1つのアプローチです。ブレーンストーミングに焦点を合わせ、有益なフィードバックが得られることを期待しています。とはいうものの、私は利用可能なあらゆる方法の解決策を受け入れています。常に物事をつなぐような方法で歩道が配置されるようにセグメントを制約することは、実装が簡単で、解決策を見つけるのに役立ちます。提案をありがとう。
バハ

6
さて、少しバックアップして、ランダム化のものを忘れた場合、頭に浮かぶ種類の質問は次のとおりです。*これはどのような最適化問題ですか?どのようなプロパティがありますか?(たとえば、直線性、凸性、準凸性など)。*デュアルなどの同等の製剤がありますか?*グラフの特性やペナルティ関数など、それを表す別の方法はありますか?例として、1つのデュアル定式化は、特定の人口にサービスを提供する歩道の全長最小化することです。 これは、動的プログラミングソリューションを示唆している可能性があります。
whuber

回答:


1

あなたはExcelでソルバー拡張機能を利用したいかもしれません、私はライナープログラミングで数回それを使用しました。

以下は、ソルバーを使用したLPのクラッシュコースのリンクです。

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


2
これはいいアイデアで、小さなおもちゃの問題で遊ぶのに役立つかもしれません。残念ながら、Excelはこのタスクに対応していません。処理するには大きすぎる問題に加えて、Excelで接続制約をコーディングすることは非常に困難です。歩道が実際に人々をCBDに接続していることを確認する必要があります。
whuber
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.