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
HakoniwaDesign
Search
Takashi Mori
March 19, 2024
Technology
120
1
Share
HakoniwaDesign
この資料では、箱庭の全体設計情報を整理しています。
- アーキテクチャ
- 箱庭アセット
- アーキテクチャ詳細
- ネットワーク構成とインフラストラクチャ
Takashi Mori
March 19, 2024
More Decks by Takashi Mori
See All by Takashi Mori
HakoniwaPythonAsset
tmori
2
160
HakoniwaUnityAsset
tmori
1
85
HakoniwaOverview
tmori
1
310
HakoniwaUnity
tmori
1
160
HakoniwaUnityAR
tmori
1
74
HakoniwaTutorialUnity
tmori
1
85
HakoniwaPdu
tmori
1
97
複数ロボットシミュレーション環境・箱庭 STAMP/STPAでの活用
tmori
1
340
Mastering Drone Simulation with Hakoniwa: Step-by-Step Guide
tmori
2
3k
Other Decks in Technology
See All in Technology
昔話で振り返るAWSの歩み ~S3誕生から20年、クラウドはどう進化したのか~
nrinetcom
PRO
0
140
Zephyr(RTOS)でARMとRISC-Vのコア間通信をしてみた
iotengineer22
0
120
MIX AUDIO EN BROADCAST
ralpherick
0
140
ThetaOS - A Mythical Machine comes Alive
aslander
0
240
BFCacheを活用して無限スクロールのUX を改善した話
apple_yagi
0
140
遊びで始めたNew Relic MCP、気づいたらChatOpsなオブザーバビリティボットができてました/From New Relic MCP to a ChatOps Observability Bot
aeonpeople
1
150
Sansanの認証基盤を支えるアーキテクチャとその振り返り
sansantech
PRO
1
150
AI時代のシステム開発者の仕事_20260328
sengtor
0
320
Kubernetesの「隠れメモリ消費」によるNode共倒れと、Request適正化という処方箋
g0xu
0
170
OpenClawでPM業務を自動化
knishioka
2
370
Network Firewall Proxyで 自前プロキシを消し去ることができるのか
gusandayo
0
170
不確実性と戦いながら見積もりを作成するプロセス/mitsumori-process
hirodragon112
1
180
Featured
See All Featured
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
210
Measuring & Analyzing Core Web Vitals
bluesmoon
9
800
Paper Plane (Part 1)
katiecoart
PRO
0
6.3k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
140
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
1
1.5k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
140
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
1.9k
WCS-LA-2024
lcolladotor
0
510
Building the Perfect Custom Keyboard
takai
2
720
Context Engineering - Making Every Token Count
addyosmani
9
790
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
170
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
10k
Transcript
箱庭(Hakoniwa) Design 合同会社箱庭ラボ 森崇
はじめに • この資料では、箱庭の全体設計情報を整理しています。 • アーキテクチャ • 箱庭アセット • アーキテクチャ詳細 •
ネットワーク構成とインフラストラクチャ 2
アーキテクチャ • 箱庭アーキテクチャの概要 • 箱庭アーキテクチャの説明 3
箱庭アーキテクチャの概要 4
箱庭アーキテクチャの説明 • 箱庭の中核をなす機能(箱庭コア機能)は、⾮常にシンプルで、以下の4 つに集約されます。 • スケジューリング(Scheduling) • 同期・通信(Synchronization & Communication)
• 時間管理(Time Management) • アセット管理(Asset Management) • 箱庭コア機能の利⽤者は「箱庭アセット」であり、箱庭のAPIを呼び出して箱 庭の機能を呼び出しする構成です。 5
箱庭アセット(1/2) • 箱庭アセット定義 • 『箱庭のAPIを利⽤して作成された再利⽤可能なアプリケーション』 • 箱庭アセットの分類︓ • 被制御対象 •
ロボット、ドローン、信号機、踏切、電⾞、⾞などなど • 制御プログラム • 被制御対象を制御するためのプログラムであり、様々な⾔語で開発されたプログラム (Python, C/C++, Rust, Ruby, Elixir,..) • シミュレータ • 被制御対象向けのシミュレータ(Unity, Unreal Engine, Gazebo, PyBullet など) • 制御プログラム向けのシミュレータ(マイコンシミュレータAthrillなど) 6
箱庭アセット(2/3) • シミュレーション⾃動化機能 • 箱庭のAPIには、シミュレーションを実⾏、停⽌、リセットする機能があります。 • これらの機能を利⽤する、以下のような⾃動化機能が実現できます。 • ロボットの強化学習(アクション→評価→再実⾏を繰り返す) •
物理シミュレーションを含めた全体結合テスト⾃動実⾏(CI/CD環境として) • ビジュアライズ機能 • 箱庭アセットとして、Unity等を利⽤すれば被制御対象であるロボット等を容易に可視 化できます。また、制御プログラムとの間の通信データは、箱庭の通信データ(PDU) を参照することで、データの流れを可視化できます。 • さらに、そのデータをROS2のデータとしても可視化できるようになります。 7
箱庭アセット(3/3) • さらなる応⽤機能 • 箱庭の上では、様々な制御プログラムを利⽤できますので、 • 箱庭アセットの可能性はとても広いと考えています。 • 特に、Pythonはその応⽤範囲は広く、AIとの連携が期待できます。 •
例えば、Python上でAIエージェントを作成して、 • 箱庭APIを使ってシミュレーション連携させるようなことも容易に実現できます。 8
アーキテクチャ詳細 9 • 箱庭アーキテクチャの詳細レベルのビューは下図のとおりです。
ネットワーク構成とインフラストラクチャ • ネットワークの基本構成 • インフラストラクチャの基本構成 • 構成パターン • 構成適⽤例 •
Windows WSL2の構成例 10
ネットワークの基本構成 11
インフラストラクチャの基本構成 • ネットワークの基本構成図にある Computer は、以下の3パターンあります。 • Personal Computer • Docker
Container • Embedded Device(Raspberry PI や mROS 2 サポート対応機器など) • また、OSのパターンとしては、以下があります。 • Windows/WSL2 • MacOS(Intel) • MacOS(AppleSilicon) • Ubuntu 12
構成パターン • 箱庭では、さまざまな構成でのシミュレーションを可能にします。 • ただ、物理シミュレータとしてUnityを利⽤する場合は、Unityと箱庭との構成可能なパターンに制約があります。 • 以下、構成可能なパターンと、Unityと箱庭との間の通信⽅式(制御向け通信とPDU通信)をマトリクスで⽰します。 13
Windows WSL2の構成例 14 https://github.com/toppers/hakoniwa-document/blob/main/architecture/examples/README-win.md
ネイティブ向けの構成例(Mac/Linux/Windows) 15