Eclipse SUMO 1.14.1 のインストール(Windows 上)
SUMO は,さまざまな形態のオブジェクト(車両,公共交通機関,歩行者)の交通シミュレーションを行う.
- 経路探索
- 交通流の可視化
- 道路ネットワークなどのネットワーク情報のインポート
などの機能がある. 次のアプリから構成される.
- SUMO: command line simulation
- GUISIM: simulation with a graphical user interface
- NETCONVERT: network importer
先人に感謝
前準備
Visual Studio 2022 Build Toolsとランタイムのインストール
管理者権限でコマンドプロンプトを起動(手順:Windowsキーまたはスタートメニュー > cmd と入力 > 右クリック > 「管理者として実行」)し、以下を実行する。管理者権限は、wingetの--scope machineオプションでシステム全体にソフトウェアをインストールするために必要である。
REM Visual Studio 2022 Build Toolsとランタイムのインストール
winget install --scope machine Microsoft.VisualStudio.2022.BuildTools Microsoft.VCRedist.2015+.x64
set VS_INSTALLER="C:\Program Files (x86)\Microsoft Visual Studio\Installer\setup.exe"
set VS_PATH="C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools"
REM C++開発ワークロードのインストール
%VS_INSTALLER% modify --installPath %VS_PATH% ^
--add Microsoft.VisualStudio.Workload.VCTools ^
--add Microsoft.VisualStudio.Component.VC.Tools.x86.x64 ^
--add Microsoft.VisualStudio.Component.Windows11SDK.22621 ^
--includeRecommended --quiet --norestart
Python 3.12 のインストール
インストール済みの場合は実行不要。
管理者権限でコマンドプロンプトを起動(手順:Windowsキーまたはスタートメニュー > cmd と入力 > 右クリック > 「管理者として実行」)し、以下を実行する。管理者権限は、wingetの--scope machineオプションでシステム全体にソフトウェアをインストールするために必要である。
REM Python をシステム領域にインストール
winget install --scope machine --id Python.Python.3.12 -e --silent
REM Python のパス設定
set "PYTHON_PATH=C:\Program Files\Python312"
set "PYTHON_SCRIPTS_PATH=C:\Program Files\Python312\Scripts"
echo "%PATH%" | find /i "%PYTHON_PATH%" >nul
if errorlevel 1 setx PATH "%PATH%;%PYTHON_PATH%" /M >nul
echo "%PATH%" | find /i "%PYTHON_SCRIPTS_PATH%" >nul
if errorlevel 1 setx PATH "%PATH%;%PYTHON_SCRIPTS_PATH%" /M >nul
【関連する外部ページ】
Python の公式ページ: https://www.python.org/
AI エディタ Windsurf のインストール
Pythonプログラムの編集・実行には、AI エディタの利用を推奨する。ここでは,Windsurfのインストールを説明する。
管理者権限でコマンドプロンプトを起動(手順:Windowsキーまたはスタートメニュー > cmd と入力 > 右クリック > 「管理者として実行」)し、以下を実行して、Windsurfをシステム全体にインストールする。管理者権限は、wingetの--scope machineオプションでシステム全体にソフトウェアをインストールするために必要となる。
winget install --scope machine Codeium.Windsurf -e --silent
【関連する外部ページ】
Windsurf の公式ページ: https://windsurf.com/
Gitのインストール
管理者権限でコマンドプロンプトを起動(手順:Windowsキーまたはスタートメニュー > cmd と入力 > 右クリック > 「管理者として実行」)し、以下を実行する。管理者権限は、wingetの--scope machineオプションでシステム全体にソフトウェアをインストールするために必要となる。
REM Git をシステム領域にインストール
winget install --scope machine --id Git.Git -e --silent
REM Git のパス設定
set "GIT_PATH=C:\Program Files\Git\cmd"
if exist "%GIT_PATH%" (
echo "%PATH%" | find /i "%GIT_PATH%" >nul
if errorlevel 1 setx PATH "%PATH%;%GIT_PATH%" /M >nul
)
CMakeのインストール
管理者権限でコマンドプロンプトを起動(手順:Windowsキーまたはスタートメニュー > cmd と入力 > 右クリック > 「管理者として実行」)し、以下を実行する。管理者権限は、wingetの--scope machineオプションでシステム全体にソフトウェアをインストールするために必要となる。
REM CMake をシステム領域にインストール
winget install --scope machine --id Kitware.CMake -e --silent
REM CMake のパス設定
set "GMAKE_PATH=C:\Program Files\CMake\bin"
if exist "%GMAKE_PATH%" (
echo "%PATH%" | find /i "%GMAKE_PATH%" >nul
if errorlevel 1 setx PATH "%PATH%;%GMAKE_PATH%" /M >nul
)
Eclipse SUMO のインストール(ソースコードを使用)(Windows 上)
チュートリアルを含む全機能をインストール.
公式サイトで Windows 版のバイナリも配布されているが,そちらを使うと, チュートリアルを使えるようにするのが面倒そうだったので, ソースコードから最新版をインストールする.
- Windows で,管理者権限でコマンドプロンプトを起動(手順:Windowsキーまたはスタートメニュー >
cmd
と入力 > 右クリック > 「管理者として実行」)。.コマンドプロンプトを管理者として実行: 別ページ »で説明
- 前提ソフトウエアのダウンロード
Eclipse SUMO のインストールに必要な前提ソフトウエアがダウンロードされる(ダウンロードしたものは,あとで,Eclipse SUMO のインストールに使用される).
mkdir c:\Librerias cd c:\Librerias rmdir /s /q SUMOLibraries git clone --recursive https://github.com/DLR-TS/SUMOLibraries
- Eclipse SUMO のソースコードのダウンロード,ファイルの調整
ファイルの調整は,インストール時のエラーを回避するためのもの
cd /d c:%HOMEPATH% rmdir /s /q sumo git clone --recursive https://github.com/eclipse/sumo mkdir %HOMEPATH%\sumo\cmake copy c:\Librerias\SUMOLibraries\proj-9.0.0\cmake\proj_config.cmake.in %HOMEPATH%\sumo\cmake
- インストール
チュートリアルを動かしてみる(書きかけ)
- シミュレーション定義ファイル(道路のノードやエッジ,車両等の経路など): .xml 形式のファイル
- シミュレーション設定ファイル: .sumcfg形式のファイル
- シミュレーション出力ファイル: .dump 形式のファイル
quickstart
- docs\tutorial\quickstart\data のファイルを確認
- ノード(節)が記述されたファイル quickstart.node.xml の確認
nodes タグと node タグを使用
- エッジ(枝)が記述されたファイル quickstart.edg.xml の確認
edges タグと edge タグを使用
- ルート(車両等の移動体の経路)が記述されたファイル quickstart.rou.xml の確認
routes タグ, vType タグ,routeタグ,vehicleタグを使用
- コマンドでシミュレーションを実行.
次のコマンドを実行.
sumo -c quickstart.sumocfg --netstate-dump quickstart.dump
- シミュレーション出力ファイルであるquickstart.dumpができる.
※ SUMOに付属しているtraceExporter.py を用いて,ファイル変換できる
次の手順は ns-2/ns-3 形式に変換している例
sumo -c .\quickstart.sumocfg --fcd-output sumoTrace.xml python 'C:\Program Files (x86)\DLR\Sumo\tools\traceExporter.py' --fcd-input .\sumoTrace.xml --ns2mobility-output ns2mobility.tcl
- sumo-gui -c quickstart.sumocfgを実行
- 実行ボタン
ノード(節),エッジ(枝),ルート(車両等の経路),シミュレーション設定ファイルの例
Hello
<nodes>
<node id="1" x="-250.0" y="0.0" />
<node id="2" x="+250.0" y="0.0" />
<node id="3" x="+251.0" y="0.0" />
</nodes>
<edges>
<edge from="1" id="1to2" to="2" />
<edge from="2" id="out" to="3" />
</edges>
<routes>
<vType accel="1.0" decel="5.0" id="Car" length="2.0" maxSpeed="100.0" sigma="0.0" />
<route id="route0" edges="1to2 out"/>
<vehicle depart="1" id="veh0" route="route0" type="Car" />
</routes>
<configuration>
<input>
<net-file value="hello.net.xml"/>
<route-files value="hello.rou.xml"/>
</input>
<time>
<begin value="0"/>
<end value="10000"/>
</time>
</configuration>
実行
sumo -c quickstart.sumocfg --netstate-dump quickstart.dump sumo-gui -c quickstart.sumocfg