シミュレーションでいくつかのアクションを実行する方法として、Python で TRACI を使用して Sumo でシミュレーションを実行しようとしています。私がやっていることは、基本的に netconvert を使用してマップの一部を抽出することです。
netconvert --keep-edges.in-boundary minX,minY,maxX,maxY -s large.net.xml -o small.net.xml
したがって、基本的には元のネット(large.net.xml)で評価を実行しようとしています。シミュレーションのある時点で、オプションを使用して、元のシミュレーションから小さなネットワーク(small.net.xml)に車両を転送します。
conn2.vehicle.add(vehID='0',routeID='R0',depart=time,departPos=conn1.vehicle.getLanePosition('0'),departSpeed=conn1.vehicle.getSpeed('0'))
ここで、time は元のシミュレーション (conn1) のシミュレーション時間です。これにより、シミュレーション conn1 で車両が取得され、conn2 (small.net.xml を使用したシミュレーション) でその車両が conn1 とまったく同じ位置で開始されますが、トリミングされたネットワークは、その車線を車両と見なしてサイズが異なるようです。少し違う位置からスタート。車線のサイズのこれらの変更を回避する方法はありますか? conn2 の同じ元のネットワークに車両を転送してこれを試してみましたが、目的の位置に表示されます。