[リポート]Game worlds to real worlds: Simulation at scale with AWS #reinvent #GAM202

概要

3D creation tools are well known for creating immersive game worlds that transport players into other dimensions. In this session, explore how developers are using this same technology to simulate virtual environments and study outcomes that would be too difficult, dangerous, or expensive to evaluate in the real world. Learn how Lockheed Martin and CAE used AWS, Unity, and Unreal to create massive-scale simulations of real-world environments with millions of dynamic objects to increase situational readiness for scenarios ranging from natural disasters to cyber threats.

SPEAKERS

  • Maurizio Martinovic

  • West Tanis

SESSION LEVEL

200 - Intermediate

内容

アジェンダ

 

現実のような仮想世界で、百万オブジェクトを模擬、追跡し、リアルタイムで複数ユーザーに観察、インタラクト可能なシミュレーションを作りたいです。

 

問題を分割してみると:

  • 百万独特なオブジェクトを模擬、追跡する
  • 現実のように設定した仮想世界
  • 複数ユーザーに観察、インタラクト可能

これを見て難しいと思いますが、面白いことでもあり、ちょっと考えるとなんかゲームと似ている気がしますね?

 

まず、シミュレーションとはなんですか?
シミュレーションとは、一定の時間内モデルの変化です。
じゃモデルとはなんですか?
モデルは何種類があります:

  • リアル環境を想定した飛行機テストのような物理的なモデル
  • 天気を推測することのようなモデル
  • 数学的なモデル
  • エージェントがベースとしたモデル(AI)

なんのためにシミュレーションしますか?現実的にできないことをテストしてみたいからです。
具体的に言ってみると:
- アジャイル的にな開発をしたい
- 似たような本物で模擬するより、シミュレーションの方が速いです
- 危ないことでもテストできる
- 制御可能
- 初期値によって、それぞれの結果が出ます
- コストが低い

 

シミュレーションはどう作りますか?ゲームを参考して作ればいいと思われます。

 

アマゾンが開発したNew Worldというゲームを例として:
キャラクターを操作し、鶏を狩る場合。キャラクターと鶏の位置、スピード、矢を放つタイミングなどでクラウドで計算され、鶏に当たったかどうかが判断されます。これが現実のようなシミュレーションの一つです。

そういうシミュレーションを作ることは非常に難しいと思われるかもしれませんが、Lumberyard、Unreal Engine、Unityのようなゲームエンジンを使って、例としたゲームのようなシミュレーションを作ることはそこまで難しくないです。

 

ゲームエンジンは軍事模擬、自動運転、技術トレニング(工事、医療など)に運用されるようになっています。
さっきシミュレーションを実現するための複数ユーザーに観察、インタラクト可能という問題点がゲームエンジンで解決されます。

Here MapsCesiumがゲームエンジンに使える地形データを提供しているので、これでさっきの現実のように設定した仮想世界との課題も解決できました。

最後百万独特なオブジェクトを模擬、追跡するという課題はAWSで解決します。

 

San Franciscoに地震したら復興すること(物資運輸)を模擬します。

Lockheed Martin社のデータベースをAmazon RDSに移行し、一部Amazon EC2インスタンスを模擬サーバークラスターとし、もう一部は観察データをクライアントに送ります。

 

Unreal EngineとCesiumの組合でシミュレーション都市でも作られた。

 

今後こういう風に現実の複製物でも作れるかもしれません。

 

それでコロナのようなウイルス感染経路模擬することにも運用できます。

 

自動運転は実際にテストすることは効率が悪いので、リアルを模倣した仮想世界でもテストできるではないでしょうか。

 

このセミナー最初に言ったシミュレーションは成功だと言えます。

 

以上です。