SaMD (プログラム医療機器)

SaMD (プログラム医療機器) とは?

SaMD (プログラム医療機器) とは医療機器ハードウェアに組み込むことなく、医療機能を果たすソフトウェアです。SaMD を使用すると、病状や病気の診断、管理、治療を促進させることができます。ケアの一部を自動化しつつ、質の向上と時間の節約につながります。モバイルアプリ、仮想ネットワーク、病院のサーバー、その他のプラットフォームで使用可能です。

SaMD の例

SaMD の一般的な使用例では、患者データのデータベースおよびデータのパターン検出アルゴリズムに基づくソフトウェアを使用して、医師が診断を行います。これらのパターンにより、医師は、病歴に関する自らの知識のみを頼りにする場合に比べ、より標的を絞った治療を提案できるようになります。

SaMD の他の例には、以下があります。

  • モバイル機器で 3 軸加速度計を使用して、震えなどの生理的パラメーターを測るアプリ
  • 病状を診断するための放射線診断 (X 線、MRI、超音波など) で使用されるデスクトップ ソフトウェア
  • 患者のバイタルサインをリアルタイムで遠隔モニタリングするためのクラウドソフトウェア (睡眠モニタリング、血糖モニタリング、呼吸モニタリング、心臓モニタリングなど)。

SaMD 向け MATLAB および Simulink の使用

MATLAB® と Simulink® は、IEC 82304 や IEC 62304 などの業界の規制や規格に準拠しながら、SaMD アプリケーションを開発するための、完全な機能を備えたワークフローをサポートします。MATLAB と Simulink は SaMD 開発の各段階で使用することができます。たとえば、患者データの探索と解析、アルゴリズムの開発、アルゴリズムの検証と妥当性確認、さらに、これらのアルゴリズムを直接モバイルデバイス用のアプリケーションとして、またはクラウド上に、あるいは病院システムの Web ダッシュボードとして展開および統合する段階で使用できます。

SaMD アルゴリズムの統合と展開

SaMD には、多くの場合、AI、信号処理、コンピューター ビジョン、無線通信などの分野のアルゴリズムが含まれています。MATLAB と Simulink により、生体信号、医用画像、医療データを使用して、このようなマルチドメインの SaMD アルゴリズムを開発できます。これらのアルゴリズムを、無償のスタンドアロン C、C++、CUDA® コードに自動で変換したり、C/C++ 共有ライブラリ、.NET アセンブリ、Java® クラス、Python® パッケージ、Docker® コンテナーベース マイクロサービスに組み込んだりすることができます。これらのコンポーネントをカスタム アプリケーションと統合して、デスクトップ、クラウド、エンタープライズ システムに展開できます。

SaMD の検証と妥当性確認

検証と妥当性確認 (V&V) の作業は、開発サイクル全体を通して行われます。アルゴリズム開発中に作成した V&V フレームワークは、統合および展開の段階にも拡張されます。これにより、規制遵守に必要な V&V 文書のほとんどが自動生成され、品質と安全性を損なうことなく、製品開発サイクルを加速できます。

MATLAB と、Hadoop や AWS EKS といったデータソースとの関係性を示す SaMD の図。

MATLAB と DevOps の技術に基づく遠隔患者健康モニタリング SaMD アーキテクチャ。

参考: MATLAB Test, MATLAB Coder, MATLAB Compiler SDK, GPU Coder, MATLAB による AI (人工知能), クラウドでの MATLAB の使用, 医療機器開発, FDA ソフトウェア妥当性確認, IEC 62304