もりまる

ソフトウェアの作成を行っています。

もりまる

ソフトウェアの作成を行っています。

最近の記事

無料で使える交通流シミュレータSUMOを使ってみました。

オープンソースの交通流シミュレータSUMOを使ってみました。 openstreetmapのデータからシミュレーションネットワークを自動生成したりする機能もあるのですが、今回は手動で道路ネットワークを作成する基本的な使い方で試してみました。 1.インストール下記のサイトからSUMOをダウンロードして、インストールします。 特に難しいことはありません。 2.道路ネットワークの作成道路構造を定義する道路ネットワークを作成するには、”netedit”を起動します。 左側通行の道

    • Pythonで駐車場シミュレーション

      Pythonを使って駐車場シミュレーションを作ってみました。 駐車場といっても色々ありますが、今回は自走式の立体駐車場でフラット式といわれるタイプで、各階に向かう車路を簡易に再現したもので、駐車マスまでは再現してません。 よくショッピングモールなどで見かけるタイプです。下の階から順に駐車していく様子を再現します。ちなみにフラットタイプは駐車階が名前のとおり、平になっているタイプです。床が傾斜していて螺旋状の車路の両脇に駐車マスがあるのは、連続傾床式というもので、今回、対象

      • Rubyを使ったcsvデータの簡単な抽出

        大容量のcsvデータから必要な部分だけ取り出すRubyのプログラムを作ってみました。エクセルでは扱いにくい大容量のcsvデータの中から必要な部分だけを取り出すものです。 サンプルとして交通事故統計情報のデータを使ってみました。下記の警察庁のHPから2019年分のデータをダウンロードできます。 https://www.npa.go.jp/publications/statistics/koutsuu/opendata/index_opendata.html 対象としたのは

        • ダイクストラ法による交通配分プログラム

          ダイクストラ法による交通配分プログラムです。プログラム言語はRubyを使用しています。 道路の末端から発生したOD交通量を最短経路で道路上に配分します。交差点を示す各ノードにもコストを設定していて、直進に比べて、右折、左折は時間がかかるなどの設定もできるようにしています。最短経路に1回配分するだけなので需要配分になります。 リンク上でQV曲線を設定して、交通量を分割して配分するようにすれば分割配分のプログラムになりますが、今回はそこまではやってません。実行はコマンドプロン