# Digital Twin Visualization
為模擬器提供視覺化解決方案。
## Options
1. Nvidia Omniverse
2. AWS IoT TwinMaker
3. AnyLogic
4. FlexSim
5. three.js
## Pros & Cons
### Nvidia Omniverse
#### Demo

#### Pros
1. 仿真度高
2. 支援即時協作 (建築設計、3D建模、流程設計)
3. 支援其他平台工具 (建模、物理引擎等)
4. AI Driven (可用 AI 建模,P.S. 我看文件有這個東西,但我還沒試過)
5. 有免費方案
#### Cons
1. 複雜,很複雜
2. 硬體要求高,很高
3. 學習成本高
4. 相對新的平台,公開的資源不是那麼多
### AWS IoT TwinMaker
#### Demo

#### Pros
1. 與 AWS 生態整合
2. 可與 Grafana 整合 (戰情室)
3. 學習成本未知 (應該比 omniverse 低,但還沒試過)
#### Cons
1. 跟 AWS 生態整合
2. 有限的公開資源
3. 必須連網
4. 沒有免費
### AnyLogic
#### Demo

#### Pros
1. 彈性的設計模式 (discrete-event, agent-based and system dynamics)
2. 有很多公開的資源可存取
3. 可與 Java 整合
#### Cons
1. 免費方案無法製作較大的模型
2. 視覺較簡單,沒有辦法建置太複雜的 3D 模型
3. 沒有 ASRS 模型範例
### FlexSim
#### Demo

#### Pros
1. 跟 AnyLogic 差不多,適用情境比較廣(不限於物流)
2. 有 ASRS 模型
#### Cons
1. 應該比 AnyLogic 貴
2. 不可與 Java 整合
### ProModel
#### Demo

#### Pros
1. 使用者介面看起來比較好看
2. 與 AutoCAD 整合程度較高?
(AutoDesk App Store 有 ProModel for AutoCAD® Edition 可以下載)
可能就不用匯出匯入的方式整合到模擬器中
3. 可以產出統計報表

#### Cons
1. 沒辦法下載試用版試用看看,風險比較大
2. 沒有免費版
3. 只有支援 Windows
4. 中文社群討論度較低
5. 自己要寫腳本好像只支援 C, C++, Delphi, Visual Basic.

6. 資料庫不確定可不可以串接 postgresql,他有寫支援 SQL database,但是沒寫到底支援哪些,有哪些 driver 有內建也沒有寫清楚。
### three.js
#### Demo

#### Pros
1. 根據資料純粹做視覺化呈現
2. 高度客製化樣式
3. 與 in-house 模擬器 bundle
#### Cons
1. 額外投入前端人力資源
2. 每個倉庫可能都要投入開發成本
### 結論
以上的方案大致分為三個類型:
1. Digital Twin: 不僅限於流程模擬,包含整個環境變數、IoT資訊等都可以一併整合的完整 Digital Twin。
2. 流程模擬器: 專注在流程的模擬,幫助使用者評估不同流程或參數對效益最大化的影響,進而做出最佳決策。
3. 純視覺化: 不在乎任何模擬的邏輯,專注於根據資料呈現可視化畫面。
---
Digital Twin 基本上費用太高不考慮,純視覺化可能需要投入大量的前端資源也不考慮。
各家的流程模擬器 (AnyLogic、ProModel、FlexSim),其實主要差異都不大。
1. 如果是 IT 負責主導:AnyLogic > ProModel > FlexSIm。
AnyLogic 支援 Java 腳本,我們在開發上會比較熟悉,且經過測試可串接 postgresql。只是畫面的美觀就取決於其他部門可提供的模板會長怎樣。ProModel 我覺得不確定性比較大,但如果有機會先問代理的業務一些問題解決部分疑慮的話 (可不可以串接 postgresql、有沒有支援離散事件仿真等),可以考慮。
2. 如果是其他部門負責主導:ProModel > AnyLogic > FlexSim。
AutoCAD 內支援的 ProModel 套件可以讓其他部門直接在 AutoCAD 內建構模擬的流程,可能甚至不需要與現在開發的模擬器串接資料。前提是其他部門願意花人力跟資源去學習這套工具,IT 是作為輔助或顧問的角色。