以下のMATSimのplans.xmlの内容を説明して下さい。

以下のMATSimのplans.xmlの内容を説明して下さい。

<?xml version="1.0" ?>
<!DOCTYPE plans SYSTEM "http://www.matsim.org/files/dtd/plans_v4.dtd">
<plans xml:lang="de-CH">
  <person id="1">
	<plan>
      <act type="h" link="1" end_time="06:00" />
      <leg mode="car">
      </leg>
  
      <act type="w" link="10" dur="00:00:10" />
      <leg mode="walk">
      </leg>
	  
      <act type="w" link="11" dur="00:00:05" />
	  
      <leg mode="car">
		<!-- ここは書かない(MATSim に任せる) -->
      </leg>
	  
      <act type="h" link="11" />
	</plan>
  </person>

  <person id="2">
	<plan>
      <act type="h" link="10" end_time="06:00" />
      <leg mode="car">
		<route> </route>
      </leg>
	  
      <act type="w" link="11" dur="00:00:10" />
	  
      <leg mode="walk">
		<route> </route>
      </leg>
	  
      <act type="w" link="100" dur="00:00:05" />
	  
      <leg mode="car">
		<!-- ここは書かない(MATSim に任せる) -->
      </leg>
	  
      <act type="h" link="11" />
	</plan>
  </person>


</plans>

以下は、提示された MATSim の plans.xml の内容を、構造・意味・挙動の3点から整理して説明する。


1. ファイル全体の位置づけ

<!DOCTYPE plans SYSTEM "http://www.matsim.org/files/dtd/plans_v4.dtd">
<plans xml:lang="de-CH">
  • plans.xmlエージェント(person)ごとの行動計画(plan) を定義する入力ファイル

  • plans_v4.dtd に準拠した古典的な MATSim フォーマット

  • xml:lang="de-CH" は言語指定であり、シミュレーション挙動には影響しない


2. 基本構造(共通)

<person id="X">
  <plan>
    <act ... />
    <leg mode="..." />
    <act ... />
    ...
  </plan>
</person>
  • person
    → エージェント(個人)

  • plan
    → その人の1日の行動シーケンス

  • act(activity)
    → 滞在行動(自宅、職場など)

  • leg
    → 活動間の移動

  • act と leg は必ず交互に出現する


3. person id="1" の行動計画

(1) 最初の自宅活動

<act type="h" link="1" end_time="06:00" />
  • type="h"
    → home(自宅)

  • link="1"
    → network.xml の link id=1 上で活動

  • end_time="06:00"
    → 06:00 に出発


(2) 自宅 → 職場(車)

<leg mode="car">
</leg>
  • 移動手段:car

  • <route> が書かれていない
    MATSim が network.xml と travel time を使って経路を自動生成


(3) 職場活動①

<act type="w" link="10" dur="00:00:10" />
  • type="w":work(職場)

  • link="10"

  • dur="00:00:10"
    10秒だけ滞在

  • end_time ではなく dur が指定されている点に注意
    → 開始時刻+滞在時間で終了時刻が決まる


(4) 徒歩移動

<leg mode="walk">
</leg>
  • 徒歩移動

  • 経路は MATSim が内部で処理
    (多くの場合、距離÷歩行速度の単純計算


(5) 職場活動②(短時間)

<act type="w" link="11" dur="00:00:05" />
  • 別リンク(11)での職場活動

  • 滞在時間は 5秒


(6) 再び車移動(経路指定なし)

<leg mode="car">
  <!-- ここは書かない(MATSim に任せる) -->
</leg>
  • 車移動

  • 経路は再計算対象

  • replanning が有効なら、反復ごとに経路が変わりうる


(7) 帰宅

<act type="h" link="11" />
  • 自宅活動(終了時刻なし)

  • シミュレーション終了まで滞在


4. person id="2" の行動計画の特徴

person 2 は、person 1 と似ているが、route タグが明示的に存在する点が重要。


(1) 車移動(空の route)

<leg mode="car">
  <route> </route>
</leg>
  • <route> タグは存在するが中身は空

  • この場合:

    • 初期状態では意味のある経路情報はない

    • MATSim は 初回の routing で上書きする

  • 実質的には <route> を書かない場合とほぼ同等


(2) 徒歩移動(空 route)

<leg mode="walk">
  <route> </route>
</leg>
  • 徒歩でも route を書けるが、

    • 多くのケースで MATSim は 詳細なリンク列を保持しない

    • travel time は内部計算


(3) 行動リンクの違い

<act type="w" link="100" dur="00:00:05" />
  • person 1 とは異なるリンク構成

  • network 上での空間的な差異を与えている


5. この plans.xml が意味する「本質」

(1) これは OD を完全に固定した計画ではない

  • 出発時刻・滞在時間・モードは指定されている

  • しかし:

    • 経路(link 列)は未確定

    • travel time はシミュレーション中に決定


(2) walk leg の扱い

  • 多くの場合:

    • network を厳密に辿らない

    • link ベースの距離計算 or 直線近似

  • そのため:

    • 正確な歩行経路ログは events.xml に残らないことが多い


(3) RCM / 共時空間解析への影響

  • act の linktime は明示されている
    滞在の共時性は評価可能

  • leg(特に walk)の詳細な軌跡は失われやすい
    移動中の「出会い」解析には不向き


6. まとめ(要点)

  • この plans.xml は
    「行動の骨格だけを与え、移動の詳細は MATSim に委ねる」 設計

  • route を書かない/空にするのは一般的

  • 車移動はネットワークに基づくが
    徒歩移動は簡略化される

  • 接触機会を「活動滞在ベース」で評価する用途向き

  • 移動中の微細な接触解析には構造的制約がある

 

未分類

Posted by ebata