ソリューション
ソフトウェア
その他・お知らせ
本文までスキップする

Pythonとの連携強化と3D Model Analyzerの実装

 

皆さま、こんにちは。
IDAJの清水です。

昨今、デジタルトランスフォーメーション(DX)推進がキーワードとなり、業種業界問わずデジタル技術による様々な変革が迫られています。弊社が取り扱うCAEソフトウェアも、設計現場で利用されることが当たり前になり、現在はCAE専任者だけではなく、幅広い多種多様なお立場の方にご利用いただいています。

本記事では、DX推進に貢献するmodeFRONTIERVOLTAのいくつかの最新情報をご紹介したいと思います。

多目的ロバスト設計最適化支援ツール「modeFRONTIER」

ESTECO社は、Pythonとの親和性向上を目的として「Python Eco-System」という開発方針を示しています。これまでも、CPythonノードの実装や、modeFRONTIERインストールモジュールへのPython実行環境のバンドルといった、Python連携に関する機能を拡充してきました。その上で、「Python Eco-System」では、デザインスペース、応答曲面(サロゲートモデル)アルゴリズム、最適化アルゴリズム(スケジューラ)の機能において、Pythonを用いた拡張ができるようになります。

1.pyCONSOLE

modeFRONTIER 2021 R1でリリースしたpyCONSOLEはデザインスペース上の操作をPythonスクリプトで行えるようにする機能であり、modeFRONTIERのバージョンアップに合わせて拡張されています。また、Pythonのライブラリを用いてより幅広い分析ツールを利用できるのも特徴です。

下記のように、pyCONSOLEを起動後に現れるウィンドウ右部にPythonスクリプトを記述し、デザインスペース上のテーブルデータにアクセスしてテーブル操作やチャートを作成します。実行結果は、ウィンドウ左部に出力されます。

pyCONSOLEのウィンドウ

pyCONSOLEのウィンドウ

 

デザインテーブルのデータをnumpyやpandas形式に変換し、matplotlibを用いてチャートを描画することができます。他にもscikit-learnやPyTorchといった機械学習・深層学習ライブラリを活用して、modeFRONTIER上でのポスト処理の実行が可能です。

matplotlibチャート

matplotlibチャート

 

modeFRONTIER 2022 R3からは、デザインスペース上の各種チャートもpyCONSOLEから作成できるようになりました。以下は、Pythonスクリプトを用いてバブルチャートを自動で作成した例です。チャートは、テーブル名と変数名のみ指定すれば作成できます。また、チャートのレイアウトをXML形式で指定できますので、複数のテーブルに対して同じチャートを作成する際に重宝します。

modeFRONTIER 2023 R1に実装されたpyCONSOLE 1.4.0では、応答曲面の出力値や精度指標の取得、Pythonコードでの外部出力など、デザインスペースで作成した応答曲面を操作することが可能になりましたので応用範囲が広がりました。

Pythonスクリプトと作成したチャート

Pythonスクリプトと作成したチャート

 

2.pyRSM

pyRSMは、modeFRONTIER 2022 R2で追加された機能で、従来のRSM生成アルゴリズムに加えて、Pythonスクリプトを用いることで、独自の応答曲面アルゴリズムを実装することができます。また、様々なPythonの機械学習ライブラリを、modeFRONTIERの応答曲面として利用することが可能です。

スクリプトでは”train”と”evaluate”という2つの関数を実装します。train関数は、modeFRONTIERのデータセットを使用して応答曲面をトレーニングする関数で、与えられたデータセットを学習し、適切な内部パラメータを計算して決定します。evaluate関数は、train関数で学習したモデルに基づいて応答曲面の出力値を計算する関数で、あるデザインが与えられた際に応答曲面の予測出力値を返します。この2つの関数に合わせれば、外部ライブラリを活用する形であってもpyRSMとして利用することが可能です。

pyRSMの編集ウィンドウ(scikit-learnのGaussian ProcessをpyRSMとして実装)

pyRSMの編集ウィンドウ(scikit-learnのGaussian ProcessをpyRSMとして実装)

 

pyRSMで作成された応答曲面は、通常の応答曲面と同様に各種チャートを作成できます。例えば、modeFRONTIER上で応答曲面を扱う際は、RSM距離チャートやファンクションプロットチャート等をよく作成しますが、pyRSMで作成した応答曲面に対しても同様に作成することができます。以下は、上記で作成した応答曲面をRSM3Dマップチャートで表示したものです。

他にも、modeFRONTIERで作成した応答曲面をエクスポートする際の出力形式として新たにPythonコードが加わっています。既存の応答曲面を含め、modeFRONTIERで作成した応答曲面の活用先としてPythonが加わり、ますますPythonとの親和性が向上しています。

pyRSMで作成した応答曲面をRSM3Dマップチャートで表示したもの

pyRSMで作成した応答曲面をRSM3Dマップチャートで表示したもの

 

3.pySCHEDULER

pySCHEDULERはmodeFRONTIER 2023 R1で追加された最新機能で、modeFRONTIERに搭載されていた最適化アルゴリズムに加えて、Pythonの外部ライブラリにある各種最適化アルゴリズムが使用できるようになりました。今後の最適化問題に対して、別案の“処方箋”となる最適化アルゴリズムが適用できます。

pySCHEDULERでは”send_design”関数を実行することで、modeFRONTIERのワークフローが実行できます。このとき、ワークフローで設定した同時並列実行数を上限として計算が投入され、同時並列実行数に空きがなければ、空きができるまで自動で待機するようになります。並列実行のために複雑なプログラムを書く必要はありません。

pySCHEDULERの編集ウィンドウ

pySCHEDULERの編集ウィンドウ

 

他にも、デザインが制約条件に違反していないかを予めチェックしてから実際の計算を実行するといった仕組みづくりなど、pySCHEDULERに実装された様々な関数を利用して、既にmodeFRONTIERに実装されている最適化アルゴリズムと同じく様々な工夫を施すことができます。

また、直交表のような特殊なDOEテーブルを自動で生成して計算を行うことができます。これまではExcel等でデザインデータを作成してからmodeFRONTIERに手動で取り込む必要がありましたが、pySCHEDULER上でデザインを自動生成することで、その手間もなくなりました。

実装したスケジューラを用いて最適化を実行

実装したスケジューラを用いて最適化を実行

最適化エンタープライズソリューション「VOLTA」

VOLTAは、modeFRONTIERの開発元であるESTECO社が開発した、SPDMSimulation Process and Data Management)を実現するプラットフォームです。Webベーステクノロジーによって、誰もがどこからでもアクセスすることができ、ファイル・データの管理、シミュレーションプロセスの実行、最適化の実行、結果分析が可能で、役割を明確化した上で協調設計を実現します。このVOLTAも継続的な開発によって、ユーザーエクスペリエンスが年々向上、最新のアップデートでは、意思決定の加速に繋がる機能が追加されました。

1.3D Model Analyzer

意思決定には、最適化対象の数値だけでなく解析結果全体の情報が必要になることが多いかと思います。例えば、構造解析の解析結果のコンターマップを細かく確認し、最大応力が発生している箇所以外に余計な力が掛かっていないかを確認するといったケースです。

modeFRONTIERのデザインスペースやVOLTAの結果処理画面(VOLTA Advisor)で解析結果全体の情報を見るには、これまでは結果画面のスクリーンショットで比較する、いわば画像ベースでの確認しかできませんでしたが、VOLTA 2023 R1から追加された機能「3D Model Analyzer」で、CADファイルや結果ファイルをそのままVOLTA Advisor上で読み込み、モデルを拡大・回転させて、形状やスカラー結果を確認することが可能になりました。解析ソフトウェアのGUIを立ち上げずともモデルの詳細な確認ができますので、VOLTA Advisor上で意思決定を完結させやすく、意思決定の加速も期待できます。

ここからは、3D Model Analyzerの主な3つの機能について簡単にご説明します。

 (1)スカラー結果の閲覧

モデルやパーツのスカラー結果を表示し、表示する値の範囲の指定、指定範囲外の値の色の選択、カラースケールの選択、色の凡例レベルの数を定義します。

スカラー結果の閲覧

スカラー結果の閲覧

 

3Dモデルをダッシュボード上の散布図チャートと同期させることができます。また散布図上のデザインをクリックすると、3Dモデルに切り替わります。

散布図チャートとの同期

散布図チャートとの同期

 

(2)カッティングプレーンの作成・閲覧

モデルの断面を表示し、その中のスカラー結果を表示させます。複数のカッティングプレーンを作成してモデルの断面を表示し、カッティングプレーンを操作してモデルを探索することができます。また、パーツはそれぞれ色分けすることも可能です。

カッティングプレーンの作成・閲覧

カッティングプレーンの作成・閲覧

 

(3)外観のカスタマイズ

カラーピッカーを使用したモデル・パーツの色付けや、異なる描画スタイルを適用できます。また、モデルのパーツの不透明度を変更すると、不要なパーツを隠したり、必要なパーツを強調することができます。

外観のカスタマイズ

外観のカスタマイズ

【3D Model Analyzerで表示できるファイルの拡張子】

ABAQUS (.fil)、ABAQUS Input Interface (.inp)

ANSYS (.rfl .rst .rth)

CGNS (.cgns)

Ideas UNV (.unv)

Femap (.neu)

NASTRAN (.dat .op2)

STL files (.stl)

VTF (.vtf)、VTFx (.vtfx))

 

2.アカウント情報の保存・SSO認証でのログイン

VOLTA 2023 R1より、modeFRONTIER の[オプション]で VOLTA アカウント情報を設定・保存できるようになりました。任意の数のアカウントを保存でき、アカウントを選択してパスワードを入力するとVOLTA にログインできます。また、従来のユーザー名とパスワード方式に加えて、シングルサインオン (SSO) 認証を利用することも可能です。

 

modeFRONTIERVOLTAは今後もアップデートを続け、意思決定の加速・業務効率化などの観点から皆様のご業務を強力にバックアップしたいと考えております。機能や適用方法などにご不明な点がございましたらお気軽にご相談ください。

 

■オンラインでの技術相談、お打合せ、技術サポートなどを承っています。下記までお気軽にお問い合わせください。ご連絡をお待ちしています。

Webからのお問い合わせはこちら

E-mail:info@idaj.co.jp

TEL: 045-683-1990