システムとモデリング

modelica, Julia, Design Structure Matrix, SysML, 他モデリング全般について。

modelicaでタイマー設定のヒーターをモデリングする

物理モデリングに優れた言語modelicaを使用して物理モデルと制御モデルが一体になったシミュレーションをします。 今回は以下の例題を参考にしながらすすめていきます。 mbe.modelica.university 以下のような制御をシミュレーションしてみます。 高温(温度…

Open ModelicaをJuliaで操作する

久々にOpen Modelicaに手を出してみました。 今回はJuliaを使ってOpen Modelicaを操作してシミュレーションする試みです。 今年になってOpen ModlicaのJulia APIが開発されために可能になりました。 www.openmodelica.org 手順 パッケージOMJuliaを使用しま…

Plotly で Design Structure Matrix を描画する。

久々にDesign Structure Matrixの記事になります。 今までDesign Structure Matrixの描画にはGadfly.jlパッケージのヒートマップ機能を使用していました。 例としては以下のようなものになります。 ただこの描画方法ですとDSMの要素の有無を色でしか表現でき…

リスク分析の大局メモ

最近リスクマネジメント系の本を読んだので、これを基にリスク分析の概況をまとめてみたいと思います。 Risk Analysis: Assessing Uncertainties Beyond Expected Values and Probabilities作者: Terje Aven出版社/メーカー: Wiley発売日: 2008/05/19メディ…

最近読んだ本のまとめ

ブログを更新するのが久々になってしまいました。 DSMのパッケージを作成して以降、しばらくインプットに専念していました。 主にシステム関係の本を読んでいましたので、軽く紹介していきたいと思います。 組込みエンジニアの教科書 組込みエンジニアの教科…

Juliaパッケージ DesignStructureMatrix.jlを制作して公式パッケージにするまで

Design Structure Matrix ( DSM )関係の関数を集めたJuliaパッケージDesignStructureMatrix.jlを公開しました。 github.com 現時点の内容としては DSMの描画 DSMのシーケンシング DSMのクラスタリング が利用できます。詳細はREADMEを御覧ください。 今回、J…

Gadfly.jlでDesign Structure Matrixを描画する。

今まではDesign Structure Matrixの描画にSeaborn.jlを使用してきました。 otepipi.hatenablog.com ただSeaborn.jlはPython環境がないと使用できない点、日本語に対応していない点が不満でしたので、描画をGadfly.jlに乗り換えたいと思います。 Gadfly.jlで…

『ピクサーの制作パイプライン』をDSMでモデリングする

DSM

Twitterのタイムラインに以下のようなつぶやきが流れてきました。 #ピクサー展 にきたら、PMを経験した人なら吐き気をもよおしそうなプロジェクト進行の図を見つけてしまった pic.twitter.com/5Z1IMSLyLo— りょかち (@ryokachii) 2019年6月1日 ピクサー映画…

Juliaで可到達行列をレベル分けして並び替える

Design Structure Matrixのシーケンシング関連の記事です。今回の内容は以下の記事をJuliaで自動化したものになります。 otepipi.hatenablog.com 可到達行列を並び替えて下三角行列に近い形にします。 並べ替える前の可到達行列は以下のような形になります。…

Juliaで可到達行列を求める

DSM(DesignStructureMatrix)のシーケンシングに必要なDSMの可到達行列をJuliaのプログラムで求めてみます。 可到達行列とは 以下のスライドの説明がわかりやすいと思います。 http://ise.me.tut.ac.jp/lectures/decision-making/DSS12-2.pdf DSMの隣接行列A…

ISMを勉強することによりDSMへの理解を深める

浅学ながらISM(Interpretive Structural Modeling)という手法を最近知りました。この方法は主に社会システムに用いられる手法で、要素間の関係を多階層有向グラフで表現するものです。 参考となるWEBサイトは以下のようなものになるかと思います。 https:/…

可到達行列法のアルゴリズム

DSM

DSMのシーケンシングアルゴリズムの1つである可到達行列法について勉強してみます。 シーケンシングアルゴリズムについては↓の記事で解説して います。 otepipi.hatenablog.com 参考にした資料 Warfield, J. N. (1973). Binary Matrices in System Modeling…

DSMのシーケンシングアルゴリズム

DSM

DSM(DesignStructureMatrix)のクラスタリングが一段落しましたので、次はシーケンシングについて勉強していきたいと思います。 シーケンシングとは プロセスについてのDSMに用いられる分析手法で、DSMの要素を並び替えることでDSMを下三角行列に近づけ、フィ…

DSMをJuliaでクラスタリングし、自動で整列させる

前回の記事の続きです。 otepipi.hatenablog.com 前回はJuliaでDSMのクラスタリングのみしましたが、今回はそのクラスタリング結果に基づいてDSMを並べ替えるところまでやります。 実装 実装したコードは以下のようになりました。 using LinearAlgebra using…

DSMをJuliaのクラスタリングプログラムで整理する。

今回はDSM(Design Structure Matrix)のクラスタリングコードをJuliaで実装してみます。 クラスタリングアルゴリズムについては下記記事を参照してください。 otepipi.hatenablog.com 実際には以下の記事の擬似コードをJuliaで実装し直したものになります。 o…

DSMクラスタリングアルゴリズムの擬似コード

DSM

DSM(Design Structure Matrix)のクラスタリングプログラムについて、前回そのアルゴリズムを紹介しましたが、学術論文からアルゴリズムの擬似コードを見つけたので参考として掲載したいと思います。 前回の記事は以下 otepipi.hatenablog.com 擬似コード 出…

MatlabのクラスタリングプログラムでDSMを整理する

今回は以下のサイトで公開されているMatlabのクラスタリングプログラムを使用してDSMをクラスタリングしてみます。 MATLAB Macro for Clustering DSMsdsmweborg.wordpress.com またこのプログラムを作った背景や詳しい内容は下記pdfにあります。 http:/…

DSMの情報収集に役立つサイト

DSM

DSM(Design Structure Matrix)の情報を集める上でおすすめのサイトを紹介致します。 といっても2つしかないですが……DSMは情報が少なすぎますね。むしろこちらから役立つ情報を発信していきたいと思います。 dsmweborg DSMの概要から商用ツールの解説まで、…

DSMを置換行列で並べ替える

前回の記事で行列を並べ替える置換行列を勉強しましたが、これをDSM(Design Structure Matrix)に応用してみます。 otepipi.hatenablog.com 例題 以下のDSMを対角線上に非ゼロ要素が集まるように行列演算で並べ替えます。 また、今回のDSMの隣接行列は以下の…

DSMに必要な数学:行列で行列を置換する

DSM

今回はDSM(Design Structure Matrix)の活用に必要な行列の並べ替えについて実施してみます。 DSMについては以下の記事を参照してください。 otepipi.hatenablog.com 行列の並べ替え DSMでは分析過程で行列の並べ替えを行います。 例えば上のようなDSMを次の…

DSM(Design Structure Matrix)の概略

DSM

今回は設計手法の1つであるDSM(Design Structure Matrix)について概略をまとめてみます。 他、Design Structure Matrixについての記事は以下 otepipi.hatenablog.com またこの記事は以下を大いに参考にしています。 デザイン・ストラクチャー・マトリクス D…

Metis.jlでグラフを分割する

今回はJuliaのパッケージMetis.jlでグラフを分割してみます。 github.com 以下の隣接行列からなるグラフを2つに分割してみます。 A=[0 1 0 0 1 1 0; 0 0 0 1 0 0 1; 0 1 0 1 0 0 1; 0 1 1 0 1 0 1; 0 0 0 1 0 1 0; 1 0 0 0 1 0 0; 0 1 1 1 0 0 0] Metis.par…

ビジネスモデル図解とCVCA(Customer Value Chain Analysis)を比較する

最近書店で『ビジネスモデル2.0図鑑』をよく見かけます。大変な良書のようです。 ビジネスモデル2.0図鑑 作者: 近藤哲朗 出版社/メーカー: KADOKAWA 発売日: 2018/09/29 メディア: 単行本 この商品を含むブログ (2件) を見る ビジネスモデル図解は製品設計手…

Juliaでスケールフリー・ネットワークの生成と可視化

前々回Juliaでランダムネットワークを生成しましたが、今回はスケールフリー・ネットワークを生成してみます。 otepipi.hatenablog.com スケールフリーネットワークとは ノードの次数分布がべき則で近似できるネットワークのことです。 一方、以前紹介したラ…

DSM・ネットワーク・グラフ理論関係 読んだ本まとめ

今回は最近読んだDSM・ネットワーク関係、グラフ理論関係の本をまとめていきます。 備忘録的な内容になりますのでご容赦ください。 DSM関係 事の発端は設計手法・プロジェクトマネジメント手法の一種であるデザインストラクチャーマトリックス法(Design Str…

Juliaでランダム・ネットワークを生成して可視化する

この記事は以下の大著を大いに参考にしています。 いつか書評記事を書きたいですね。 ネットワーク科学: ひと・もの・ことの関係性をデータから解き明かす新しいアプローチ作者: アルバート・ラズロバラバシ,Albert‐L´aszl´o Barab´asi,池田裕一,井上寛康,谷…

ポケモン ネットワーク分析で新タイプの相性を考える試み

前回に引き続きポケモンを題材にします。 前回それぞれのタイプの優秀さを比較して、それなりに格差があることがわかりました。 今回は『新タイプ』を追加して格差をやわらげることを考えてみたいと思います。 前回の記事は以下 otepipi.hatenablog.com 前回…

最も優秀なタイプは?ポケモンのタイプ相性をネットワーク分析する。

グラフ理論・ネットワーク分析の勉強も進んできたのでそれらを応用して、ポケモンのタイプ相性をネットワーク分析してみたいと思います。 隣接行列の作成 ネットワークをプロットする基になる隣接行列を作成します。 まず、ポケモンの公式サイトからタイプ相…

グラフ理論の用語集

Design Structure Matrixを調べているうちに、これの理解にはグラフ理論の勉強が必須と思うようになりましたので以下の本を通読しました。 グラフ理論入門作者: R.J.ウィルソン,Robin J. Wilson,西関隆夫,西関裕子出版社/メーカー: 近代科学社発売日: 2001/1…

DSM-Design Structure MatrixをJulia言語のheatmap(by Seaborn)で描画&ネットワーク可視化(by GraphPlot)

前回はDSM(Design Structure Matrix)をMatlabのheatmapで描画し、さらにネットワーク可視化を行いましたが、今回はJulia言語でそれをやってみます。 前回の記事は以下 otepipi.hatenablog.com heatmapでDSMの可視化 wikipediaのDSM例を描画します。 今回、…