Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
HakoniwaDesign
Search
Takashi Mori
March 19, 2024
Technology
1
98
HakoniwaDesign
この資料では、箱庭の全体設計情報を整理しています。
- アーキテクチャ
- 箱庭アセット
- アーキテクチャ詳細
- ネットワーク構成とインフラストラクチャ
Takashi Mori
March 19, 2024
Tweet
Share
More Decks by Takashi Mori
See All by Takashi Mori
HakoniwaPythonAsset
tmori
2
130
HakoniwaUnityAsset
tmori
1
65
HakoniwaOverview
tmori
1
290
HakoniwaUnity
tmori
1
140
HakoniwaUnityAR
tmori
1
53
HakoniwaTutorialUnity
tmori
1
62
HakoniwaPdu
tmori
1
70
複数ロボットシミュレーション環境・箱庭 STAMP/STPAでの活用
tmori
1
300
Mastering Drone Simulation with Hakoniwa: Step-by-Step Guide
tmori
2
2.8k
Other Decks in Technology
See All in Technology
進化の早すぎる生成 AI と向き合う
satohjohn
0
310
プロダクト負債と歩む持続可能なサービスを育てるための挑戦
sansantech
PRO
1
1.1k
レガシーで硬直したテーブル設計から変更容易で柔軟なテーブル設計にする
red_frasco
4
650
AIで加速する次世代のBill Oneアーキテクチャ〜成長の先にある軌道修正〜
sansantech
PRO
1
140
Bedrock のコスト監視設計
fohte
2
250
小規模チームによる衛星管制システムの開発とスケーラビリティの実現
sankichi92
0
160
DDD x Microservice Architecture : Findy Architecture Conf 2025
syobochim
13
6.5k
Pandocでmd→pptx便利すぎワロタwww
meow_noisy
2
1k
SRE視点で振り返るメルカリのアーキテクチャ変遷と普遍的な考え
foostan
2
2.9k
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
9.7k
雲勉LT_Amazon Bedrock AgentCoreを知りAIエージェントに入門しよう!
ymae
2
230
IaC を使いたくないけどポリシー管理をどうにかしたい
kazzpapa3
1
180
Featured
See All Featured
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Statistics for Hackers
jakevdp
799
230k
YesSQL, Process and Tooling at Scale
rocio
174
15k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.8k
How GitHub (no longer) Works
holman
316
140k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8.1k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
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