EdgeTech+2023のTOPPERSブースで箱庭の紹介をしてきました。
ただ、箱庭のチャレンジ範囲はとても広く、20分の枠で全てを語るには時間が足りません…。
そこで、今回のブログでは、語りたかったけど語りきれなかったところをお話ししたいと思います。
それは、STAMP/STPAの安全分析での箱庭の活用についてです。
背景
SWEST25で、株式会社チェンジビジョンの久保秋さんと一緒に「複数ロボットシミュレーションのSTAMP/STPAでの活用― STAMP/STPA本の題材を箱庭で実験してみた」というタイトルでインタラクティブセッションに参加してきました(その時のブログはこちら)。
この時は、デモがメインでしたが、もう少しその背景・意図を説明したいと思います。
下図が、その背景となる課題の構造を描いたものです。
まず、AI/IoTのような複雑なシステムの安全性分析の課題として、伝統的な因果関係に基づく安全分析手法では、十分にリスクを評価・対策することが困難となったいたことが背景にあると思います。特に、人間との相互作用を考慮に入れた分析も重要です。
この課題への対応策として、STAMP/STPAという安全分析手法が有力視されており、この手法では、システム全体の構造と機能を明らかにし、機能間の相互作用に着目して、隠れたリスクや脅威を明らかにすることができます。
しかしながら、STAMP/STPAは新しい手法であるため、その導入や教育にはハードルが存在します。また、分析段階では頭の中で考えたことを言葉にするだけではイメージが伝わりづらい、実際の動作をイメージしづらいといった課題があると思います。
新しい分析スタイル
下図がそれらの課題に対する新しい分析スタイルの提案内容です。
新しいアプローチとして、安全分析支援ツールとシミュレーションを融合した新しい開発スタイルを提案しています。
この組み合わせにより、安全分析の効率と精度を大幅に向上させることが期待されます。
安全分析支援ツールを利用することで、分析対象システムの構造を手軽にモデル化し直感的に理解できるようにし、分析モデル/ガイドワードから安全分析シナリオの抽出作業を支援します。
また、分析モデル/ガイドワードからハザード要因を検討する際には、考えらえる要因をシミュレーション環境で設定し、アクシデントのイメージを客観的に分析者の間で共有することができるようになりますので、そこから新しい気づきなどが得られることが期待できます。
安全分析支援ツール
今回のSTPA分析には、チェンジビジョンさんのastah* System Safetyという製品を使っています。自動車、航空宇宙、ロボットなど、複雑かつ安全性が要求されるシステム開発現場向けの、MBSE+安全分析支援ツールです。
STAMP/STPA関連の機能としては、IPAのSTAMP Workbenchの拡張となっていて、ハイパーリンクや検索、比較・マージなどに対応しています。SysMLで記述したシステムのモデルとSTPAのモデルの相互変換や同期など連携ができるのが特徴です。
ちなみに、40日間お試しいただけますので興味がある方はぜひお試しください。
今回の安全分析モデルの例はこちらです。
シミュレーション
そして、シミュレーション環境では、手軽にシミュレーションを可能にする「箱庭」を使っています。
今回のシステム構成としては、情報処理推進機構(IPA)で公開されている「はじめてのSTAMP/STPA」のシステム構成と同じものを使っています。
そして、その構成をLEGO MINDSTORMSのロボットを使って、箱庭上で再現しています(下図)。
さらに、分析シナリオに応じたモデル・ロジック定義には、Pythonプログラムで以下の機能を提供しています。
- Pythonプログラムで各モデルのロジックを定義
- 分析シナリオに応じて、モデルのロジックやセンシング・タイミング等を変更
このシミュレーション構成におけるアーキテクチャは下図の通りです。
箱庭の実験風景
そして、箱庭を使った安全分析シナリオの実験風景は下図の通りです。
箱庭上で、分析シナリオで発生するイベントや環境要因を設定し、シミュレーションを実行します。そして、このようなシミュレーションを実行することで、以下の効果が期待されます。
- 想定アクシデントをリアルに体感
- 様々なアイディアの創発
- ブレストの活性化
デモ
こちらの動画は、以下のアクシデントをシミュレーションしたものです。
アクシデント:遮断桿が下りる前に列車が踏切を通過してしまった
このようにシミュレーションすることで、イメージの共有は簡単にできますし、言葉だけでは伝えきれないところの気づきが出てくる可能性が高まると考えています。
なお、本動画は、株式会社チェンジビジョンの上馬さんに作成いただきました。ご協力いただき、感謝申し上げます。
メリット・デメリット
シミュレーションを使用メリットとしては、以下が挙げられます。
- 具体性・透明性の向上
- 抽象的なガイドワードやUCAを具体的なシナリオや状況に落とし込むことが容易になる
- →漠然とした想像ではなく、具体的なシナリオとシミュレーション結果をもとにした議論ができる
- 見落としの減少
- 現実の動作環境や条件を模倣し、実際のシステム動作を詳細に検証可能
- →単なる頭の中の想像や考慮もれを減少できる
- 共有とコミュニケーション
- 関係者間のコミュニケーションが効果的になる
- 技術的背景が異なる関係者間でも、視覚的なモデルやシミュレーション結果をもとにした議論ができる
- リアルタイムのフィードバック
- 設計変更や仮定の変更をリアルタイムに反映させ、その影響をすぐに確認できる
一方で、デメリットとしては以下が挙げられます。
- 時間とコスト
- 初期コスト/維持コスト
- 学習曲線
- シミュレーション向けの作業は増える
- 過度な信頼
- 完璧さの錯覚
- モデリングやシミュレーション精度面の制限
- ツールやシミュレーションのバグ
サマリ
安全分析支援ツールとシミュレーションを利用した新しい分析スタイルをサマリすると下図の通りです。
この新しい分析スタイルには、メリットもあれば、デメリットもあります。ただ、デメリットばかりに目を奪われて、メリットを享受できないのはもったいないのではないかなと思います。
道具に過度な信頼を置くのではなく、人間の脳細胞を活性化させ、思考や洞察を刺激する道具として利用することで、さまざまなシチュエーションを検討しやすくなると思います。そして、箱庭は、人間の創造性を加速させる環境になれることを目指しています。
最後に
このような内容を本当はお伝えしたかったのですが、この場を借りてお話しさせていただきました。なお、この内容は「第5回 AI/IoTシステム安全性シンポジウム」にて発表させていただく予定です。もしご興味ありましたら、ぜひご視聴ください。
コメントを残す