2023,江端さんの技術メモ

Select文を使って、選んだ要素だけをcsvファイルにエクスポートする方法 (これから頻用しそう)

agent_db=# \copy (select * from agent_track where agent_id = 100) to test.csv with CSV;
最初の'\"が重要

最初はエクスポートです。

Microsoft Windows [Version 10.0.19044.2486]
(c) Microsoft Corporation. All rights reserved.
C:\Users\ebata>psql -U postgres -h 192.168.0.23 -p 15432
Password for user postgres:
psql (13.4, server 12.5 (Debian 12.5-1.pgdg100+1))
Type "help" for help.
postgres=# \c agent_db
psql (13.4, server 12.5 (Debian 12.5-1.pgdg100+1))
You are now connected to database "agent_db" as user "postgres".
agent_db=# \copy user_list to 'testtest.csv' WITH CSV DELIMITER ',';
COPY 20
agent_db=#
C:\Users\ebata に、testtest.csv ができています。
カラム名が必要な場合は、こちら(大抵の場合必要)。
agent_db=# \copy user_list to 'testtest.csv' WITH CSV HEADER;
次にインポートです。
以下のcsvファイルをインポートします。ファイル名はkai_20220522holyday18.csvです。
id,age,type,departure_name,departure_number,departure_lat,departure_lng,arrival_name,arrival_number,arrival_lat,arrival_lng
0,43,resident,,,34.173408,131.470684,,,34.155862,131.501246
1,24,resident,,,34.179449,131.482543,,,34.164116,131.471791
2,42,resident,,,34.168739,131.470768,,,34.160989,131.491124
3,21,resident,,,34.169494,131.469934,,,34.173498,131.471351
4,58,resident,,,34.185295,131.47414,,,34.191481,131.49456
5,48,resident,,,34.150778,131.480747,,,34.16536,131.471872
6,56,resident,,,34.16536,131.471872,,,34.174066,131.479312
7,73,resident,,,34.155731,131.500845,,,34.16776,131.472831
8,47,resident,,,34.167237,131.471785,,,34.155775,131.476531
9,21,resident,,,34.154931,131.50468,,,34.156678,131.49581
10,37,resident,,,34.16727,131.472899,,,34.171253,131.471177
11,40,resident,,,34.147241,131.474921,,,34.150675,131.486268
12,67,resident,,,34.173683,131.476347,,,34.173643,131.471027
13,28,resident,,,34.183079,131.484303,,,34.174245,131.474592
14,46,resident,,,34.146154,131.472711,,,34.159611,131.491548
15,25,resident,,,34.162497,131.489283,,,34.147212,131.475984
次に、テーブルをクリアにします。
agent_db=# delete from user_list;
DELETE 36
agent_db=# select * from user_list;
id | age | type | departure_name | departure_number | departure_lat | departure_lng | arrival_name | arrival_number | arrival_lat | arrival_lng
----+-----+------+----------------+------------------+---------------+---------------+--------------+----------------+-------------+-------------
(0 rows)
として、
agent_db=# \copy user_list from 'kai_20220522holyday18.csv' delimiter ',' csv header;
でインポートが完了します。
一応、確認します。
agent_db=# select * from user_list;
id | age | type | departure_name | departure_number | departure_lat | departure_lng | arrival_name | arrival_number | arrival_lat | arrival_lng
----+-----+----------+----------------+------------------+---------------+---------------+--------------+----------------+-------------+-------------
0 | 43 | resident | | | 34.173408 | 131.470684 | | | 34.155862 | 131.501246
1 | 24 | resident | | | 34.179449 | 131.482543 | | | 34.164116 | 131.471791
2 | 42 | resident | | | 34.168739 | 131.470768 | | | 34.160989 | 131.491124
3 | 21 | resident | | | 34.169494 | 131.469934 | | | 34.173498 | 131.471351
4 | 58 | resident | | | 34.185295 | 131.47414 | | | 34.191481 | 131.49456
5 | 48 | resident | | | 34.150778 | 131.480747 | | | 34.16536 | 131.471872
6 | 56 | resident | | | 34.16536 | 131.471872 | | | 34.174066 | 131.479312
7 | 73 | resident | | | 34.155731 | 131.500845 | | | 34.16776 | 131.472831
8 | 47 | resident | | | 34.167237 | 131.471785 | | | 34.155775 | 131.476531
9 | 21 | resident | | | 34.154931 | 131.50468 | | | 34.156678 | 131.49581
10 | 37 | resident | | | 34.16727 | 131.472899 | | | 34.171253 | 131.471177
11 | 40 | resident | | | 34.147241 | 131.474921 | | | 34.150675 | 131.486268
12 | 67 | resident | | | 34.173683 | 131.476347 | | | 34.173643 | 131.471027
13 | 28 | resident | | | 34.183079 | 131.484303 | | | 34.174245 | 131.474592
14 | 46 | resident | | | 34.146154 | 131.472711 | | | 34.159611 | 131.491548
15 | 25 | resident | | | 34.162497 | 131.489283 | | | 34.147212 | 131.475984
(16 rows)

2023,江端さんの技術メモ

何度やっても、エージェントが湯田温泉駅の北口に出てこないので、QGISを立ち上げて、OpenStreetMap(OSM)のノードを調べみたら、原因が分かりました。

湯田温泉駅のサイクルステーションにもっとも近いノードが、駅の南口側にあるので、ここにキャッチされて、エージェントが南口側に集合してしまっていました。

# 湯田温泉駅周辺のノードが少なすぎる (山口駅は、比較的沢山のノードがあるのに)

OSMデータの改竄(https://booth.pm/ja/items/3943484)という手もあるが、ちょっと手間がかかりすぎるので、取り敢えず、目的地を上の図の206号線の終端に移動することで対応しようと思っています。

 

 

 

2023,江端さんの技術メモ

第3章: スコアリングの詳細
第4章: MATSimの設定について
第5章: 利用可能な機能とその使用方法
第6章: MATSimのデータコンテナ
第7章: MATSimの初期入力の生成
第8章: MATSim JOSMNetworkエディタ
第9章 シンガポールにおけるMap-to-MapMatchingエディタ
第10章 ネットワークエディターの貢献
第11章: QSim
第12章 信号と車線
第13章 駐車場
第14章:電気自動車
第15章: ロードプライシング
第16章:MATSimによる公共交通のモデル化
第17章:「ミニバス」の貢献度
第18章 バス路線図マッチングの半自動化ツール
第19章 新しい動的イベントベースの公共交通ルータ
第20章 マトリックスベースの白金ルータ
第21章 "マルチモーダル "への貢献
第22章 カーシェアリング
第23章 カーシェアリング ダイナミックトランスポートサービス
第24章 貨物輸送 貨物輸送
第25章 貨物輸送 ワゴンシム
第26章 旅日記から読み解く貨物連鎖
第27章: デスティネーション・イノベーション
第28章 共同意思決定
第29章 ソクネトゲン
第30章: 日帰りリプランニング
第31章: MATSimエージェントを賢くする信念・願望・意図
第32章: CaDyTS: 動的トラフィックシミュレーションのキャリブレーション
第33章 セノゾンビア
第34章: OTFVis: MATSimのオープンソースビジュアライザー
第35章: アクセシビリティ
第36章: 排出ガスモデリング
第37章: MATSimを用いたインタラクティブな解析と意思決定支援
第38章: 「解析」の貢献
第39章: MATSimにおけるマルチモデリング。PSim
第40章: その他の計算性能に関する経験
第41章 避難計画 統合的アプローチ
第42章 都市シミュレーション MATSim4都市シム
第43章 廃止されたモジュール
第44章:組織 開発プロセス、コード構造、そして
第45章: 自分自身の拡張機能を書き、貢献する方法
第46章 MATSimの歴史
第47章 エージェントベースのトラフィックアサインメント
第48章: モンテカルロエンジンとしてのMATSim
第49章: MATSimにおける選択モデル
第50章: 運動学的波動の待ち行列表現
第51章:MATSimによる便益・費用に関するミクロ経済学的解釈
第52章 シナリオの概要
第53章:ベルリンI: BVGシナリオ
第54章 ベルリンII CEMDAP-MATSim-Cadytsシナリオ
第55章:スイス
第56章:チューリッヒ
第57章: シンガポール
第58章: ミュンヘン
第59章 スーフォールズ
第60章:アリアガ
第61章: 保定 家庭用新型ユーティリティの実証実験ケーススタディ
第62章 バルセロナ
第63章:ベルギー 河川洪水の経済的影響を評価するための推計フレームワークにおけるMATSimの利用
第64章:ブリュッセル
第65章:カラカス
第66章 コトブス 交通信号シミュレーション
第67章 ダブリン ダブリン
第68章 ヨーロッパの航空・鉄道輸送
第69章:ハウテン州
第70章: ドイツ
第71章:ハンブルク・ヴィルヘルムスブルク
第72章: ジョインビル
第73章: ロンドン ロンドン
第74章: ネルソン・マンデラ・ベイ
第75章: ニューヨーク
第76回:パダン パダン
第77章:パダン パトナ
第78章: フィリピン フィリピンにおけるエージェントベースの交通シミュレーションモデル
第79章: ポズナン
第80章: キト首都圏
第81章:ロッテルダム ロッテルダム 公共交通機関のレベニュー・マネジメント
第82章:サマラ
第83章: サンフランシスコ・ベイエリア スマートベイ・プロジェクト-コネクテッド
第84章 サンティアゴ・デ・チリ
第85章 シアトル地域
第86章: ソウル
第87章 上海
第88章: ソチ
第89章: ストックホルム
第90章:タンパ(フロリダ州 都市内移動の高解像度シミュレーションとその結果
第91章:テルアビブ
第92章:東京 ハイパーパスを用いた車両移動のシミュレーションと移動時間の信頼性に与える影響
第93章: トロント
第94章:トロント トロンハイム
第95章:ヤラウォンガとモルワラ。オーストラリア・ビクトリア州における需要対応型交通システム
第96章:横浜 MATSimのレジリエントな都市設計への応用
第97章: 研究の方向性


Chapter 3: A Closer Look at Scoring
Chapter 4: More About Configuring MATSim
Chapter 5: Available Functionality and How to Use It
Chapter 6: MATSim Data Containers
Chapter 7: Generation of the Initial MATSim Input
Chapter 8: MATSim JOSMNetwork Editor
Chapter 9: Map-to-MapMatching Editors in Singapore
Chapter 10: The Network Editor Contribution
Chapter 11: QSim
Chapter 12: Traffic Signals and Lanes
Chapter 13: Parking
Chapter 14: Electric Vehicles
Chapter 15: Road Pricing
Chapter 16: Modeling Public Transport with MATSim
Chapter 17: The "Minibus" Contribution
Chapter 18: Semi-Automatic Tool for Bus Route Map Matching
Chapter 19: New Dynamic Events-Based Public Transport Router
Chapter 20: Matrix-Based pt router
Chapter 21: The "Multi-Modal" Contribution
Chapter 22: Car Sharing
Chapter 23: Dynamic Transport Services
Chapter 24: Freight Traffic
Chapter 25: WagonSim
Chapter 26: freight Chains From Travel Diaries
Chapter 27: Destination Innovation
Chapter 28: Joint Decisions
Chapter 29: Socnetgen
Chapter 30: Within-Day Replanning
Chapter 31: Making MATSim Agents Smarter with the Belief-Desire-Intention
Chapter 32: CaDyTS: Calibration of Dynamic Traffic Simulations
Chapter 33: Senozon Via
Chapter 34: OTFVis: MATSim's Open-Source Visualizer
Chapter 35: Accessibility
Chapter 36: Emission Modeling
Chapter 37: Interactive Analysis and Decision Support with MATSim
Chapter 38: The "Analysis" Contribution
Chapter 39: Multi-Modeling in MATSim: PSim
Chapter 40: Other Experiences with Computational Performance
Chapter 41: Evacuation Planning: An Integrated Approach
Chapter 42: MATSim4 Urban Sim
Chapter 43: DiscontinuedModules
Chapter 44: Organization: Development Process, Code Structure and
Chapter 45: How toWrite Your Own Extensions and Possibly Contribute
Chapter 46: Some History of MATSim
Chapter 47: Agent-Based Traffic Assignment
Chapter 48: MATSim as aMonte-Carlo Engine
Chapter 49: Choice Models in MATSim
Chapter 50: Queueing Representation of Kinematic Waves
Chapter 51: Microeconomic Interpretation of MATSim for Benefit-Cost
Chapter 52: Scenarios Overview
Chapter 53: Berlin I: BVG Scenario
Chapter 54: Berlin II: CEMDAP-MATSim-Cadyts Scenario
Chapter 55: Switzerland
Chapter 56: Zuurich
Chapter 57: Singapore
Chapter 58: Munich
Chapter 59: Sioux Falls
Chapter 60: Aliaga
Chapter 61: Baoding: A Case Study for Testing a New Household Utility
Chapter 62: Barcelona
Chapter 63: Belgium: The Use of MATSim within an Estimation Framework for Assessing Economic Impacts of River Floods
Chapter 64: Brussels
Chapter 65: Caracas
Chapter 66: Cottbus: Traffic Signal Simulation
Chapter 67: Dublin
Chapter 68: European Air - and Rail-Transport
Chapter 69: Gauteng
Chapter 70: Germany
Chapter 71: HamburgWilhelmsburg
Chapter 72: Joinville
Chapter 73: London
Chapter 74: NelsonMandela Bay
Chapter 75: New York City
Chapter 76: Padang
Chapter 77: Patna
Chapter 78: The Philippines: Agent-Based Transport SimulationModel for
Chapter 79: Poznan
Chapter 80: QuitoMetropolitan District
Chapter 81: Rotterdam: Revenue Management in Public Transportation with
Chapter 82: Samara
Chapter 83: San Francisco Bay Area: The SmartBay Project - Connected
Chapter 84: Santiago de Chile
Chapter 85: Seattle Region
Chapter 86: Seoul
Chapter 87: Shanghai
Chapter 88: Sochi
Chapter 89: Stockholm
Chapter 90: Tampa, Florida: High-Resolution Simulation of Urban Travel and
Chapter 91: Tel Aviv
Chapter 92: Tokyo: Simulating Hyperpath-Based Vehicle Navigations and its Impact on Travel Time Reliability
Chapter 93: Toronto
Chapter 94: Trondheim
Chapter 95: Yarrawonga andMulwala: Demand-Responsive Transportation in Regional Victoria, Australia
Chapter 96: Yokohama: MATSim Application for Resilient Urban Design
Chapter 97: Research Avenues

2023,江端さんの技術メモ

MATSimに関する情報が、これほどまでに少ないとは知りませんでした ―― 特に、日本語の情報が絶無に近いです。

このドタバタ(失敗メモ)については、こちらに記載しています。

https://wp2.kobore.net/%e6%b1%9f%e7%ab%af%e3%81%95%e3%82%93%e3%81%ae%e6%8a%80%e8%a1%93%e3%83%a1%e3%83%a2/8471/

本来なら、大晦日の日に完了しているはずのメモのリリースが今日(2023年1月3日)になってしまいました。

「MATSimのシミュレーションが動いているところまで確認する」のメモ


多くの交通システムの研究に携わる人が、MATSimを最初に触って動かすときの一助になれば、幸いです。

江端

 

 

2023,江端さんの技術メモ

http://www.kobore.net/diary_techno/?date=20190119

に、

  • Windowsの環境変数を引き継ぐのであれば、"msys2_shell.cmd"の中にある、"rem set MSYS2_PATH_TYPE=inherit"のremを外す

と書きましたが、上手く動きませんでした。

MSYS2 で PATH が引き継がれない

の、引き継ぎたいときは Windows の環境変数で MSYS2_PATH_TYPE に inherit を設定するとよい。

を頼りにして、設定してみました。

システム環境変数の設定では動きませんでしたが、ユーザ環境変数に設定したら動くようになったようです。

以上

2023,江端さんの技術メモ

Windowsのバージョンを上げる度に、メニューインターフェースを変えてくるMicrosoft社に、今さら腹を立てても仕方がない、と諦めています。

慣れなくてはならないのです。『ついていけない』と思った瞬間、「ジジイ」が確定します ―― シュレーディンガーのジジイです。

それはさておき。

Windows10→11のインターフェースの変化は大き過ぎて、ストレスが多いので、残念ですが、変更ツールに手を出してしまいました。

【決定版】使いにくい Wndows11 を Windows10風に戻す【Explorer Patcher for Windows11

を拝見して、力付くで直しました。

私の場合、OS(Windows11)は、https://github.com/valinet/ExplorerPatcher のインストールを邪魔されましたが、そこは、力づくで落しました(説明面倒なので省略)

で、

の画面から、以下の設定をしました(面倒なので全部コピペ)

以上