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
300
PAX SAPIENTICA
guinpen98
December 02, 2023
Tweet
Share
More Decks by guinpen98
See All by guinpen98
iSign
guinpen98
0
65
異世界tapple
guinpen98
0
81
Fish Troop
guinpen98
0
94
Operation R
guinpen98
0
71
One Librarian
guinpen98
0
170
Other Decks in Programming
See All in Programming
Pythonスレッドとは結局何なのか? CPython実装から見るNoGIL時代の変化
curekoshimizu
4
1.3k
Serena MCPのすすめ
wadakatu
4
900
AIで開発生産性を上げる個人とチームの取り組み
taniigo
0
130
CSC305 Lecture 01
javiergs
PRO
1
400
iOSエンジニア向けの英語学習アプリを作る!
yukawashouhei
0
180
開発者への寄付をアプリ内課金として実装する時の気の使いどころ
ski
0
350
Goで実践するドメイン駆動開発 AIと歩み始めた新規プロダクト開発の現在地
imkaoru
4
660
AIエージェント時代における TypeScriptスキーマ駆動開発の新たな役割
bicstone
4
1.5k
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
140
overlayPreferenceValue で実現する ピュア SwiftUI な AdMob ネイティブ広告
uhucream
0
110
クラシルを支える技術と組織
rakutek
0
190
monorepo の Go テストをはやくした〜い!~最小の依存解決への道のり~ / faster-testing-of-monorepos
convto
2
400
Featured
See All Featured
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.2k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.2k
A better future with KSS
kneath
239
17k
Rails Girls Zürich Keynote
gr2m
95
14k
YesSQL, Process and Tooling at Scale
rocio
173
14k
BBQ
matthewcrist
89
9.8k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
6.1k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.6k
Docker and Python
trallard
46
3.6k
Statistics for Hackers
jakevdp
799
220k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
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