Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
20220629oolt
Search
株式会社レヴィ
June 30, 2022
Research
0
110
20220629oolt
株式会社レヴィ
June 30, 2022
Tweet
Share
More Decks by 株式会社レヴィ
See All by 株式会社レヴィ
2024-06-25 ソフトウェア設計における思考と学び方を考える 〜増田さんの思考を構造的に見える化してみる〜
levii
4
1k
株式会社レヴィ会社紹介
levii
0
230
Sample-se-one-day-training
levii
0
820
SocSys34-Balus
levii
0
110
20230323TechDLT-vol9
levii
0
400
levii-buzzword-2022
levii
0
380
FIT2022_levii
levii
0
690
20220915modelingLT
levii
4
820
20220910SSDM
levii
0
720
Other Decks in Research
See All in Research
DPUを用いたマルチタスクDNN表情認識システムのFPGA実装
takuto_andtt
0
120
研究を支える拡張性の高い ワークフローツールの提案 / Proposal of highly expandable workflow tools to support research
linyows
0
360
Introduction of NII S. Koyama's Lab (AY2025)
skoyamalab
0
160
ナレッジプロデューサーとしてのミドルマネージャー支援 - MIMIGURI「知識創造室」の事例の考察 -
chiemitaki
0
250
SATソルバを用いた複数パス間の制約を満足する経路計算手法 / A Path Calculation Method Satisfying Constraints between Multiple Paths Using SAT Solver
nttcom
0
120
Batch Processing Algorithm for Elliptic Curve Operations and Its AVX-512 Implementation
herumi
0
130
A Segment Anything Model based weakly supervised learning method for crop mapping using Sentinel-2 time series images
satai
3
180
한국어 오픈소스 거대 언어 모델의 가능성: 새로운 시대의 언어 이해와 생성
inureyes
PRO
0
270
BtoB プロダクトにおけるインサイトマネジメントの必要性 現場ドリブンなカミナシがインサイトマネジメントに取り組むワケ / Why field-driven Kaminashi is working on insight management
kaminashi
1
360
LLM 시대의 Compliance: Safety & Security
huffon
0
630
PostgreSQLにおける分散トレーシングの現在 - 第50回PostgreSQLアンカンファレンス
seinoyu
0
290
移動ビッグデータに基づく地理情報の埋め込みベクトル化
tam1110
0
270
Featured
See All Featured
The Cult of Friendly URLs
andyhume
78
6.3k
Raft: Consensus for Rubyists
vanstee
137
6.8k
Mobile First: as difficult as doing things right
swwweet
223
9.5k
Rails Girls Zürich Keynote
gr2m
94
13k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
Practical Orchestrator
shlominoach
187
10k
Designing for humans not robots
tammielis
250
25k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
40
2k
KATA
mclloyd
29
14k
Music & Morning Musume
bryan
46
6.4k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
135
33k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.4k
Transcript
研究用シミュレーションにおける オブジェクト指向 2022.6.29 オブジェクト指向 LT会 vol.4 miure https://m-miura.jp/
Copyright levii Inc. All rights reserved. 自己紹介 三浦 政司 (みうら
まさし) JAXA宇宙科学研究所 宇宙飛翔工学研究系 准教授 深宇宙探査技術実証機(DESTINY+)プロジェクトチーム 株式会社レヴィ 共同創業者/システムデザイン研究所所長 専門分野 • 制御工学 :分散協調制御、飛翔体誘導制御 • システム工学:システム設計論、システムモデリング • システム科学:エージェントベースシミュレーションなど 好きなこと • 蟻コロニーの飼育 • 自転車 • コミック m-miura.jp 菌類からロケットまで 複雑なものならなんでも 扱う雑食系研究者
発表概要 (自分の)研究用シミュレーションとオブジェクト指向の関わりについて 2つの視点からライトに紹介します。つまり、二本立てです。 ① ABMとOOの考え方が似ているという話 研究で使っているAgent-Based Modeling/Simulationという手法の考え方が オブジェクト指向パラダイムととても良く似ている(or
同じ)ということに 気づいたので紹介します。どちらかと言うと研究紹介です。 ② 研究用シミュレータをOOでつくってみたという話 研究で使うシミュレーションコードがいろいろ不便だったので、 オブジェクト指向で捉え直してオブジェクト指向っぽくつくってみました。
① ABMとOOの考え方が似ているという話
複雑な現象 = 創発的な現象 創発性:相互作用によって個々の要素の性質や振る舞いからは 直接説明することのできない全体的な性質や振る舞いが生じること。 各要素の個々の振る舞いを 理解できても… 要素間に相互作用があると振る舞いの 予測・理解が難しい場合がある(創発性) <創発性は社会現象や自然現象の中にたくさんある>
例:交通渋滞、流行、不況/好況(経済)、蟻の行列、鳥の群れ行動、
エージェントベースアプローチ • 創発性を伴う現象を理解・予測するためのアプローチの一つ • 現象を多数のエージェントの集合とその相互作用で記述する 定められたルールに従って自律的に 行動・意思決定・学習する要素 • エージェント同士の相互作用 •
エージェント-環境間の相互作用
エージェントベースモデルとシミュレーション Agent-Based Model (ABM) :エージェントベースアプローチで構築したモデル Agent-Based Simulation (ABS):ABMをコンピュータ上で動作させて現象を再現
例)サメ-小魚モデル 小魚 近くのサメから逃げる サメ 近くの小魚を追いかける 近くのサメから逃げる
例)サメ-小魚モデル 500 10 500 10 3 97 +視力アップ 創発現象 個々のエージェントモデルからは導き出せな
い全体の特徴的な振る舞い 10 2 小魚 近くのサメから逃げる サメ 近くの小魚を追いかける 近くのサメから逃げる
解説記事も公開しています https://www.jstage.jst.go.jp/article/isciesci/61/5/61_169/_pdf/-char/ja
どこが似ている?/違う? エージェントベースアプローチ オブジェクト指向パラダイム • 「このエージェントはどんな行動をするの?」「何を しっているの?」を考えることが出発点。 • 個々のエージェントが行動ルールとデータを
持っている。 • エージェントは他のエージェントや環境と 相互作用する • 複雑な現象を理解したり予測したりするために現象 をどう捉えるか?のパラダイム • 「このオブジェクトに何を任せる?」「このオブジェクトは何 を知っている?」を考えるのが出発点。 • 個々のオブジェクトが手続きとデータを持っている。 • オブジェクトは、メッセージを通して他の オブジェクトと相互作用する • 複雑さに対処するために、 業務・情報・処理をどう捉えるか?のパラダイム
エージェントベースシミュレーションを用いた研究の例 電力系統の分散型需給制御に関する研究 M.Miura, Y.Tokunaga, K.Sakurama(2016) 小売企業の空間的競争に関する研究 H.Shiroishi, M.Miura (2018) チェーン組織のガバナンスに関する研究
H.Shiroishi, M.Miura (2021)
エージェントベースシミュレーションを用いた研究の例 木材腐朽菌の菌種間競争に関する研究:Y.Fukasawa, M.Miura (2022)
モデル(ver1)の全体像 非公開
環境と環境変数 • 環境は有機物資源が分布する格子状の 2次元空間 • 各セルには初期状態で特定の量の資源が 分布 • 主な環境変数(各セルが値を持つ変数) ◦
資源量 ◦ 阻害物質量 ◦ 生長投資量 ◦ 占有状態(空、菌1、菌2) 例)資源量:10.8 菌1が分泌した阻害物質量:0.8 菌2が分泌した阻害物質量:0 占有状態:菌1 非公開
エージェント • 菌糸エージェントは空間のセル上に 配置され、生成・消滅はするが移動は しない • 主なエージェント変数 (各エージェントが値を持つ変数) ◦ 位置(座標)
◦ 炭素量 ◦ 炭素要求度 ◦ 炭素配分戦略変数 など 例)炭素量:5.32 炭素要求度:0.25 炭素配分戦略変数:0.8 非公開
エージェントの行動ルール:ステップ行動の全体 自身が位置する セルから資源を 獲得 隣接セルの占有 状態と配分戦略 から炭素配分を 決定 隣接セルへの 生長投資
(炭素消費) 自身が位置する セルに阻害物質 を生成 (炭素消費) 呼吸による炭素 を消費 隣接セルの占有 状態と炭素量か ら炭素要求度を 算出 隣接セルの同種 菌と自身の炭素 要求度から受け 渡し量を決定 隣接セルの同種 菌に炭素を受け 渡す(もしくは 受け取る) 非公開
エージェントの行動ルール:生成(生長)と炭素運搬 生成 • あるセル上の生長投資量がしきい値を超えると 菌糸エージェントが生成される • 周囲のセル上の阻害物質(競争相手が分泌したもの)が 多いほどしきい値が大きくなる(=生成しにくくなる) 炭素運搬 •
各菌糸エージェントは「炭素要求度」を計算する • 炭素要求度は次のような場合に大きくなる ◦ 隣接セルに競争相手がいる場合 ◦ 隣接セルが空いている場合 ◦ 自身の保持する炭素量が少ない場合 • 隣接セルの同種菌と自身の要求度の差に応じて 炭素を受け渡す 0.04 0.13 0.81 0.08 0.23 0.21 0.09 0.34 0.74 0.81 青い菌糸の生成には 0.13+0.81+0.23の 阻害物質の影響を受ける 要求度が低いほうから高い方へ と炭素が受け渡される 非公開
アラン・ケイも言っている I thought of objects being like biological cells and/or
individual computers on a network, only able to communicate with messages. さながら生物の細胞、もしくはネットワーク上の銘々のコン ピュータ、それらはただメッセージによってコミュニケーショ ンする存在、僕はオブジェクトをそう考えている
② 研究用シミュレータをOOでつくってみたという話
研究用シミュレータ • 変化が激しい ◦ 研究は仮説検証の繰り返し ◦ 議論するとシミュレーションモデルがすぐに変わる ◦ 見たいデータやカットがすぐに変わる •
いろいろ使うから流用したい ◦ 菌のシミュレーション ◦ 組織のシミュレーション ◦ ロケットのシミュレーション • 便利に業務を行いたい ◦ 研究者から見たら研究 = 業務 ◦ 業務とプログラム構成をつなげることで わかりやすくしたい
研究用シミュレータのオブジェクト指向にチャレンジ:続きはBalusで
宣伝
Copyright levii Inc. All rights reserved. 対話型モデリングツール:Balus® • 素早く簡単にビューやシステムモデルを構築 •
チームメンバやステークホルダが対話しながら システムモデリング • 自動構造化やファシリテート支援などの 高度な機能(実装作業中)
https://levii.co.jp/ Balus モデル
Copyright levii Inc. All rights reserved. システム思考で課題を見える化!レヴィ無料相談会はじめました 詳細&申込:https://levii.co.jp/services/pages/free-consultation/
Copyright levii Inc. All rights reserved. レヴィについて 株式会社レヴィは「複雑さの中に価値と面白さを見つけよう」をミッションに掲げ、 価値あるシステムの創造や複雑な問題の解決にチャレンジする人・チームを支援する サービスを展開しています。
Webサイト : https://levii.co.jp/ お問い合わせ:
[email protected]
@levii_sdl @levii.inc