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
PAX SAPIENTICA
Search
guinpen98
December 02, 2023
Programming
0
220
PAX SAPIENTICA
guinpen98
December 02, 2023
Tweet
Share
More Decks by guinpen98
See All by guinpen98
iSign
guinpen98
0
48
異世界tapple
guinpen98
0
73
Fish Troop
guinpen98
0
77
Operation R
guinpen98
0
68
One Librarian
guinpen98
0
130
Other Decks in Programming
See All in Programming
React 19でお手軽にCSS-in-JSを自作する
yukukotani
5
550
QA環境で誰でも自由自在に現在時刻を操って検証できるようにした話
kalibora
1
130
create_tableをしただけなのに〜囚われのuuid編〜
daisukeshinoku
0
340
Kaigi on Railsに初参加したら、その日にLT登壇が決定した件について
tama50505
0
140
毎日13時間もかかるバッチ処理をたった3日で60%短縮するためにやったこと
sho_ssk_
1
520
선언형 UI에서의 상태관리
l2hyunwoo
0
260
Alba: Why, How and What's So Interesting
okuramasafumi
0
110
令和7年版 あなたが使ってよいフロントエンド機能とは
mugi_uno
8
3.7k
GitHub CopilotでTypeScriptの コード生成するワザップ
starfish719
26
5.9k
月刊 競技プログラミングをお仕事に役立てるには
terryu16
1
1.2k
2025.01.17_Sansan × DMM.swift
riofujimon
2
390
HTML/CSS超絶浅い説明
yuki0329
0
180
Featured
See All Featured
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
GitHub's CSS Performance
jonrohan
1030
460k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
27
1.5k
Producing Creativity
orderedlist
PRO
343
39k
YesSQL, Process and Tooling at Scale
rocio
170
14k
How to Ace a Technical Interview
jacobian
276
23k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
950
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Fashionably flexible responsive web design (full day workshop)
malarkey
406
66k
Documentation Writing (for coders)
carmenintech
67
4.5k
Embracing the Ebb and Flow
colly
84
4.5k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Transcript
⽂献学・考古学・⼈類学データを⽤いた 歴史上の事象を分析・推定するための エージェントシミュレーションGISの開発
はじめに 歴史は⼈々の⾏動の積み重ねで成り⽴っている ⼈々の⾏動の仮説と推定に エージェントベースシミュレーション(以下,ABS ) という⼿法が⽤いられている
ABSとは エージェントを⽤いた仮想実験(シミュレーション) ⽇本ではマルチエージェントシミュレーション(MAS)と 呼ばれることが多い 「マルチエージェントシステム」や 「エージェントベースモデル」等の似た⽤語がある
エージェントとは
None
先⾏研究 歴史上の事象を分析したABSによる先⾏研究では 坂平(2014)による弥⽣時代の農耕⽂化の主体性の検討や 光辻(2015)による幕末動乱期の統治制度動態モデルの 構築等があげられる
ABSとGISの関係 ABSは地理空間上でエージェントの動態を可視化 そのため,地理情報システム(GIS)と相性が良い ABSとGISの双⽅の機能を持ったソフトウェアがあれば 多くの地理オープンデータを⼊⼒変数として読み込め 歴史的事象の検証や推定の裏付けに使⽤できる
既製品の問題点 しかし,既製品ではABSとGISの双⽅の機能を持ち 歴史的事象の分析に適したソフトウェアは少ない 歴史的事象の分析のためのABSとGISの双⽅の機能を持つ ソフトウェアがあれば,考古学研究において シミュレーションを⽤いる敷居が低くなり 新たな発⾒につながることが期待される
既製品の問題点 しかし,既製品のABSでは歴史研究のハードルが⾼い 例えば,構造計画研究所が提供するABSの artisoc では 地理情報の取込等,中級者向けの操作を⾏う必要がある また artisoc は歴史に特化していないため暦の表⽰や 編年の管理など実装が複雑で難しくなりやすい点が多い
その他の問題 artisoc は Closed Source な有料のソフトウェアであり QGIS のようなオープンソースソフトウェア(OSS)ではない ABSのソフトウェアでOSSなのはいくつか存在するが ⽇本でも⼀定の利⽤者がいるQGISと違い
ほとんど知名度がなく artisoc ⼀強となっている ⽇本製でABS・GISの機能を持つOSSがあるのが望ましい
OSS推奨の理由 オープンソースソフトウェア(OSS)が望ましい理由 ⾮公開ソースのソフトウェアはサポートが終了すると 新しいOSで動かなくなる可能性がある 考古学では50年前の⽂献を参照することもあり サポートが打ち切られてしまうと 数⼗年後以降の⼈が同⼀条件で試せない可能性が⾼い
OSS推奨の理由 今後、デジタル化が進みソースコード付きの論⽂や 3Dデータ付きの報告書がより多く出る可能性がある 100年後の⼈も動かせるような環境整備が必要 考古学におけるABS&GISはOSSである必要性が⾼い
既製品の問題点 オープンソースのGISであるQGISではプラグインを ⽤いることによってシミュレーションの機能を追加できる しかし,ABSの機能を既存のGISに追加するのは 実装コストも⾼く処理性能上の問題がある ABS は基本的に処理が重いためGISにABSを実装するより ABSの上にGISを実装するほうが簡単
実装の問題点 ABSの機能とGISの機能の⽐較では ABSの⽅が処理負荷が⾼いため,ABSを基盤に GISの機能を追加していくのが望ましい 近年,WebGISが流⾏っているがWebアプリでは ABSに必要な速度を出すのが難しい(出来なくはない) そのため⾼速に動作するソフトウェアが望ましい
新規OSSの開発 そこで,本研究では歴史的事象の分析のための ABSとGISの双⽅の機能を持つソフトウェアを開発する 時間情報,空間情報,シミュレーションの3つの機能を 持つ汎⽤性・拡張性の⾼いソフトウェアを⽬指す
本研究で開発した 歴史的事象の分析のための エージェントベースシミュレータの紹介
PAX SAPIENTICA ⽂献学・考古学・⼈類学データを⽤いた ABS & GIS 各国・各時代の暦表⽰機能や各時代の環境復元機能を持つ XYZ タイルや地物を⾃由に追加することが可能
PAX SAPIENTICA オープンソース 無償で提供 コードのLicense CC0 https://github.com/ AsPJT/PAX_SAPIENTICA
None
7世紀の地図 ◆ 時代ごとの地物を表⽰ ・ 建築済みの不動産 - 古墳等 ・ 当時の地名 ‒
令制国等 ・ 当時の国境線 ・ 当時の国道
ABS の機能に関して ABS の機能に関しては次の発表と内容が重複するため この発表では開発した ABS の解説は省いた 歴史 GIS の解説を中⼼に進めていった
実装 QGISと同様に⾼速で実績の多い「C++」を⽤いて実装 Webアプリと同様にどの媒体でも動く製品を⽬指す GUI の他に CUI 環境も充実させている (地理データの画像変換などGUIが不要な処理で便利)
サポート環境 Windows・macOS・Linux・iOS・Android対応を⽬指す CUIはどの環境でも動作するように設計 コンパイラはgcc・clang・msvcをサポート ⾔語はC++17を使⽤・後にC++20や23を視野に⼊れている
描画フレームワーク GUI はQGISで⽤いられている Qt の使⽤を考えた,しかし 実装の追加と試作を最優先で進めたかったため ⾼速・記述が簡単な OpenSiv3D を⽤いている https://siv3d.github.io
www.qt.io
時間情報の扱い 歴史データは⽂献学・考古学・⼈類学等のデータがある ⽂献学では暦,考古学では編年(相対年代), ⼈類学では較正年代や ybp が⽤いられている これらの年代を統合して表⽰する機能があると望ましい 今回は暦に偏っていたが,今後の機能追加で 時間情報をうまく扱えるようにしたい
環境復元 また地理的環境は時代によって変化するため 時代ごとの環境を復元する機能があると より精密な分析・推定が可能である よって,年代と環境復元の機能を併せて導⼊する
⼈物の位置の可視化 ⼈物の位置を可視化 することもできる 可視化することで 歴史学習に利⽤できる
最後に 初期状態から全世界の標⾼や傾斜データを⼊れており 各国・各時代の暦データも⼊れている ABS ができた ⽇本だけでなく,あらゆる地域と時代に対応しており 汎⽤性の⾼いABS&GISソフトウェアを開発した 今後の機能追加により更に便利なソフトウェアを⽬指す
PAX SAPIENTICA ⽂献学・考古学・⼈類学データを⽤いた ABS & GIS 各国・各時代の暦表⽰機能や各時代の環境復元機能を持つ オープンソース・無償・ソースコードのLicenseはCC0